summaryrefslogtreecommitdiffhomepage
path: root/docs/assets/ts.worker-Brk6wN3W.js
diff options
context:
space:
mode:
Diffstat (limited to 'docs/assets/ts.worker-Brk6wN3W.js')
-rw-r--r--docs/assets/ts.worker-Brk6wN3W.js51334
1 files changed, 51334 insertions, 0 deletions
diff --git a/docs/assets/ts.worker-Brk6wN3W.js b/docs/assets/ts.worker-Brk6wN3W.js
new file mode 100644
index 0000000..bfde632
--- /dev/null
+++ b/docs/assets/ts.worker-Brk6wN3W.js
@@ -0,0 +1,51334 @@
+(function(){"use strict";var m1e,_1e,h1e,g1e;class L7e{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(v){setTimeout(()=>{throw v.stack?vM.isErrorNoTelemetry(v)?new vM(v.message+`
+
+`+v.stack):new Error(v.message+`
+
+`+v.stack):v},0)}}emit(v){this.listeners.forEach(T=>{T(v)})}onUnexpectedError(v){this.unexpectedErrorHandler(v),this.emit(v)}onUnexpectedExternalError(v){this.unexpectedErrorHandler(v)}}const k7e=new L7e;function _6(g){w7e(g)||k7e.onUnexpectedError(g)}function Kbe(g){if(g instanceof Error){const{name:v,message:T}=g,W=g.stacktrace||g.stack;return{$isError:!0,name:v,message:T,stack:W,noTelemetry:vM.isErrorNoTelemetry(g)}}return g}const Ote="Canceled";function w7e(g){return g instanceof O7e?!0:g instanceof Error&&g.name===Ote&&g.message===Ote}class O7e extends Error{constructor(){super(Ote),this.name=this.message}}class vM extends Error{constructor(v){super(v),this.name="CodeExpectedError"}static fromError(v){if(v instanceof vM)return v;const T=new vM;return T.message=v.message,T.stack=v.stack,T}static isErrorNoTelemetry(v){return v.name==="CodeExpectedError"}}class Ay extends Error{constructor(v){super(v||"An unexpected bug occurred."),Object.setPrototypeOf(this,Ay.prototype)}}function W7e(g,v){const T=this;let W=!1,X;return function(){return W||(W=!0,X=g.apply(T,arguments)),X}}var LB;(function(g){function v(Gr){return Gr&&typeof Gr=="object"&&typeof Gr[Symbol.iterator]=="function"}g.is=v;const T=Object.freeze([]);function W(){return T}g.empty=W;function*X(Gr){yield Gr}g.single=X;function ue(Gr){return v(Gr)?Gr:X(Gr)}g.wrap=ue;function Re(Gr){return Gr||T}g.from=Re;function*Be(Gr){for(let Bi=Gr.length-1;Bi>=0;Bi--)yield Gr[Bi]}g.reverse=Be;function it(Gr){return!Gr||Gr[Symbol.iterator]().next().done===!0}g.isEmpty=it;function Me(Gr){return Gr[Symbol.iterator]().next().value}g.first=Me;function Ue(Gr,Bi){let Uo=0;for(const Nr of Gr)if(Bi(Nr,Uo++))return!0;return!1}g.some=Ue;function Bt(Gr,Bi){for(const Uo of Gr)if(Bi(Uo))return Uo}g.find=Bt;function*Ut(Gr,Bi){for(const Uo of Gr)Bi(Uo)&&(yield Uo)}g.filter=Ut;function*dn(Gr,Bi){let Uo=0;for(const Nr of Gr)yield Bi(Nr,Uo++)}g.map=dn;function*Pr(Gr,Bi){let Uo=0;for(const Nr of Gr)yield*Bi(Nr,Uo++)}g.flatMap=Pr;function*yi(...Gr){for(const Bi of Gr)yield*Bi}g.concat=yi;function co(Gr,Bi,Uo){let Nr=Uo;for(const Ca of Gr)Nr=Bi(Nr,Ca);return Nr}g.reduce=co;function*Zn(Gr,Bi,Uo=Gr.length){for(Bi<0&&(Bi+=Gr.length),Uo<0?Uo+=Gr.length:Uo>Gr.length&&(Uo=Gr.length);Bi<Uo;Bi++)yield Gr[Bi]}g.slice=Zn;function An(Gr,Bi=Number.POSITIVE_INFINITY){const Uo=[];if(Bi===0)return[Uo,Gr];const Nr=Gr[Symbol.iterator]();for(let Ca=0;Ca<Bi;Ca++){const Sc=Nr.next();if(Sc.done)return[Uo,g.empty()];Uo.push(Sc.value)}return[Uo,{[Symbol.iterator](){return Nr}}]}g.consume=An;async function Oo(Gr){const Bi=[];for await(const Uo of Gr)Bi.push(Uo);return Promise.resolve(Bi)}g.asyncToArray=Oo})(LB||(LB={}));function Hbt(g){return g}function qbt(g,v){}function Xbe(g){if(LB.is(g)){const v=[];for(const T of g)if(T)try{T.dispose()}catch(W){v.push(W)}if(v.length===1)throw v[0];if(v.length>1)throw new AggregateError(v,"Encountered errors while disposing of store");return Array.isArray(g)?[]:g}else if(g)return g.dispose(),g}function F7e(...g){return kB(()=>Xbe(g))}function kB(g){return{dispose:W7e(()=>{g()})}}const tG=class tG{constructor(){this._toDispose=new Set,this._isDisposed=!1}dispose(){this._isDisposed||(this._isDisposed=!0,this.clear())}get isDisposed(){return this._isDisposed}clear(){if(this._toDispose.size!==0)try{Xbe(this._toDispose)}finally{this._toDispose.clear()}}add(v){if(!v)return v;if(v===this)throw new Error("Cannot register a disposable on itself!");return this._isDisposed?tG.DISABLE_DISPOSED_WARNING||console.warn(new Error("Trying to add a disposable to a DisposableStore that has already been disposed of. The added object will be leaked!").stack):this._toDispose.add(v),v}deleteAndLeak(v){v&&this._toDispose.has(v)&&this._toDispose.delete(v)}};tG.DISABLE_DISPOSED_WARNING=!1;let h6=tG;const Tne=class Tne{constructor(){this._store=new h6,this._store}dispose(){this._store.dispose()}_register(v){if(v===this)throw new Error("Cannot register a disposable on itself!");return this._store.add(v)}};Tne.None=Object.freeze({dispose(){}});let yM=Tne;const PM=class PM{constructor(v){this.element=v,this.next=PM.Undefined,this.prev=PM.Undefined}};PM.Undefined=new PM(void 0);let pp=PM;class z7e{constructor(){this._first=pp.Undefined,this._last=pp.Undefined,this._size=0}get size(){return this._size}isEmpty(){return this._first===pp.Undefined}clear(){let v=this._first;for(;v!==pp.Undefined;){const T=v.next;v.prev=pp.Undefined,v.next=pp.Undefined,v=T}this._first=pp.Undefined,this._last=pp.Undefined,this._size=0}unshift(v){return this._insert(v,!1)}push(v){return this._insert(v,!0)}_insert(v,T){const W=new pp(v);if(this._first===pp.Undefined)this._first=W,this._last=W;else if(T){const ue=this._last;this._last=W,W.prev=ue,ue.next=W}else{const ue=this._first;this._first=W,W.next=ue,ue.prev=W}this._size+=1;let X=!1;return()=>{X||(X=!0,this._remove(W))}}shift(){if(this._first!==pp.Undefined){const v=this._first.element;return this._remove(this._first),v}}pop(){if(this._last!==pp.Undefined){const v=this._last.element;return this._remove(this._last),v}}_remove(v){if(v.prev!==pp.Undefined&&v.next!==pp.Undefined){const T=v.prev;T.next=v.next,v.next.prev=T}else v.prev===pp.Undefined&&v.next===pp.Undefined?(this._first=pp.Undefined,this._last=pp.Undefined):v.next===pp.Undefined?(this._last=this._last.prev,this._last.next=pp.Undefined):v.prev===pp.Undefined&&(this._first=this._first.next,this._first.prev=pp.Undefined);this._size-=1}*[Symbol.iterator](){let v=this._first;for(;v!==pp.Undefined;)yield v.element,v=v.next}}const B7e=globalThis.performance&&typeof globalThis.performance.now=="function";class wB{static create(v){return new wB(v)}constructor(v){this._now=B7e&&v===!1?Date.now:globalThis.performance.now.bind(globalThis.performance),this._startTime=this._now(),this._stopTime=-1}stop(){this._stopTime=this._now()}reset(){this._startTime=this._now(),this._stopTime=-1}elapsed(){return this._stopTime!==-1?this._stopTime-this._startTime:this._now()-this._startTime}}var OB;(function(g){g.None=()=>yM.None;function v(Vo,wt){return Ut(Vo,()=>{},0,void 0,!0,void 0,wt)}g.defer=v;function T(Vo){return(wt,Ia=null,eo)=>{let ia=!1,Pi;return Pi=Vo(rc=>{if(!ia)return Pi?Pi.dispose():ia=!0,wt.call(Ia,rc)},null,eo),ia&&Pi.dispose(),Pi}}g.once=T;function W(Vo,wt){return g.once(g.filter(Vo,wt))}g.onceIf=W;function X(Vo,wt,Ia){return Ue((eo,ia=null,Pi)=>Vo(rc=>eo.call(ia,wt(rc)),null,Pi),Ia)}g.map=X;function ue(Vo,wt,Ia){return Ue((eo,ia=null,Pi)=>Vo(rc=>{wt(rc),eo.call(ia,rc)},null,Pi),Ia)}g.forEach=ue;function Re(Vo,wt,Ia){return Ue((eo,ia=null,Pi)=>Vo(rc=>wt(rc)&&eo.call(ia,rc),null,Pi),Ia)}g.filter=Re;function Be(Vo){return Vo}g.signal=Be;function it(...Vo){return(wt,Ia=null,eo)=>{const ia=F7e(...Vo.map(Pi=>Pi(rc=>wt.call(Ia,rc))));return Bt(ia,eo)}}g.any=it;function Me(Vo,wt,Ia,eo){let ia=Ia;return X(Vo,Pi=>(ia=wt(ia,Pi),ia),eo)}g.reduce=Me;function Ue(Vo,wt){let Ia;const eo={onWillAddFirstListener(){Ia=Vo(ia.fire,ia)},onDidRemoveLastListener(){Ia==null||Ia.dispose()}},ia=new Qb(eo);return wt==null||wt.add(ia),ia.event}function Bt(Vo,wt){return wt instanceof Array?wt.push(Vo):wt&&wt.add(Vo),Vo}function Ut(Vo,wt,Ia=100,eo=!1,ia=!1,Pi,rc){let Qp,vm,RE,Hi=0,Pg;const C6={leakWarningThreshold:Pi,onWillAddFirstListener(){Qp=Vo(Rv=>{Hi++,vm=wt(vm,Rv),eo&&!RE&&(n0.fire(vm),vm=void 0),Pg=()=>{const P6=vm;vm=void 0,RE=void 0,(!eo||Hi>1)&&n0.fire(P6),Hi=0},typeof Ia=="number"?(clearTimeout(RE),RE=setTimeout(Pg,Ia)):RE===void 0&&(RE=0,queueMicrotask(Pg))})},onWillRemoveListener(){ia&&Hi>0&&(Pg==null||Pg())},onDidRemoveLastListener(){Pg=void 0,Qp.dispose()}},n0=new Qb(C6);return rc==null||rc.add(n0),n0.event}g.debounce=Ut;function dn(Vo,wt=0,Ia){return g.debounce(Vo,(eo,ia)=>eo?(eo.push(ia),eo):[ia],wt,void 0,!0,void 0,Ia)}g.accumulate=dn;function Pr(Vo,wt=(eo,ia)=>eo===ia,Ia){let eo=!0,ia;return Re(Vo,Pi=>{const rc=eo||!wt(Pi,ia);return eo=!1,ia=Pi,rc},Ia)}g.latch=Pr;function yi(Vo,wt,Ia){return[g.filter(Vo,wt,Ia),g.filter(Vo,eo=>!wt(eo),Ia)]}g.split=yi;function co(Vo,wt=!1,Ia=[],eo){let ia=Ia.slice(),Pi=Vo(vm=>{ia?ia.push(vm):Qp.fire(vm)});eo&&eo.add(Pi);const rc=()=>{ia==null||ia.forEach(vm=>Qp.fire(vm)),ia=null},Qp=new Qb({onWillAddFirstListener(){Pi||(Pi=Vo(vm=>Qp.fire(vm)),eo&&eo.add(Pi))},onDidAddFirstListener(){ia&&(wt?setTimeout(rc):rc())},onDidRemoveLastListener(){Pi&&Pi.dispose(),Pi=null}});return eo&&eo.add(Qp),Qp.event}g.buffer=co;function Zn(Vo,wt){return(eo,ia,Pi)=>{const rc=wt(new Oo);return Vo(function(Qp){const vm=rc.evaluate(Qp);vm!==An&&eo.call(ia,vm)},void 0,Pi)}}g.chain=Zn;const An=Symbol("HaltChainable");class Oo{constructor(){this.steps=[]}map(wt){return this.steps.push(wt),this}forEach(wt){return this.steps.push(Ia=>(wt(Ia),Ia)),this}filter(wt){return this.steps.push(Ia=>wt(Ia)?Ia:An),this}reduce(wt,Ia){let eo=Ia;return this.steps.push(ia=>(eo=wt(eo,ia),eo)),this}latch(wt=(Ia,eo)=>Ia===eo){let Ia=!0,eo;return this.steps.push(ia=>{const Pi=Ia||!wt(ia,eo);return Ia=!1,eo=ia,Pi?ia:An}),this}evaluate(wt){for(const Ia of this.steps)if(wt=Ia(wt),wt===An)break;return wt}}function Gr(Vo,wt,Ia=eo=>eo){const eo=(...Qp)=>rc.fire(Ia(...Qp)),ia=()=>Vo.on(wt,eo),Pi=()=>Vo.removeListener(wt,eo),rc=new Qb({onWillAddFirstListener:ia,onDidRemoveLastListener:Pi});return rc.event}g.fromNodeEventEmitter=Gr;function Bi(Vo,wt,Ia=eo=>eo){const eo=(...Qp)=>rc.fire(Ia(...Qp)),ia=()=>Vo.addEventListener(wt,eo),Pi=()=>Vo.removeEventListener(wt,eo),rc=new Qb({onWillAddFirstListener:ia,onDidRemoveLastListener:Pi});return rc.event}g.fromDOMEventEmitter=Bi;function Uo(Vo){return new Promise(wt=>T(Vo)(wt))}g.toPromise=Uo;function Nr(Vo){const wt=new Qb;return Vo.then(Ia=>{wt.fire(Ia)},()=>{wt.fire(void 0)}).finally(()=>{wt.dispose()}),wt.event}g.fromPromise=Nr;function Ca(Vo,wt){return Vo(Ia=>wt.fire(Ia))}g.forward=Ca;function Sc(Vo,wt,Ia){return wt(Ia),Vo(eo=>wt(eo))}g.runAndSubscribe=Sc;class au{constructor(wt,Ia){this._observable=wt,this._counter=0,this._hasChanged=!1;const eo={onWillAddFirstListener:()=>{wt.addObserver(this),this._observable.reportChanges()},onDidRemoveLastListener:()=>{wt.removeObserver(this)}};this.emitter=new Qb(eo),Ia&&Ia.add(this.emitter)}beginUpdate(wt){this._counter++}handlePossibleChange(wt){}handleChange(wt,Ia){this._hasChanged=!0}endUpdate(wt){this._counter--,this._counter===0&&(this._observable.reportChanges(),this._hasChanged&&(this._hasChanged=!1,this.emitter.fire(this._observable.get())))}}function nr(Vo,wt){return new au(Vo,wt).emitter.event}g.fromObservable=nr;function Xs(Vo){return(wt,Ia,eo)=>{let ia=0,Pi=!1;const rc={beginUpdate(){ia++},endUpdate(){ia--,ia===0&&(Vo.reportChanges(),Pi&&(Pi=!1,wt.call(Ia)))},handlePossibleChange(){},handleChange(){Pi=!0}};Vo.addObserver(rc),Vo.reportChanges();const Qp={dispose(){Vo.removeObserver(rc)}};return eo instanceof h6?eo.add(Qp):Array.isArray(eo)&&eo.push(Qp),Qp}}g.fromObservableLight=Xs})(OB||(OB={}));const MM=class MM{constructor(v){this.listenerCount=0,this.invocationCount=0,this.elapsedOverall=0,this.durations=[],this.name=`${v}_${MM._idPool++}`,MM.all.add(this)}start(v){this._stopWatch=new wB,this.listenerCount=v}stop(){if(this._stopWatch){const v=this._stopWatch.elapsed();this.durations.push(v),this.elapsedOverall+=v,this.invocationCount+=1,this._stopWatch=void 0}}};MM.all=new Set,MM._idPool=0;let Wte=MM,G7e=-1;const nG=class nG{constructor(v,T,W=(nG._idPool++).toString(16).padStart(3,"0")){this._errorHandler=v,this.threshold=T,this.name=W,this._warnCountdown=0}dispose(){var v;(v=this._stacks)==null||v.clear()}check(v,T){const W=this.threshold;if(W<=0||T<W)return;this._stacks||(this._stacks=new Map);const X=this._stacks.get(v.value)||0;if(this._stacks.set(v.value,X+1),this._warnCountdown-=1,this._warnCountdown<=0){this._warnCountdown=W*.5;const[ue,Re]=this.getMostFrequentStack(),Be=`[${this.name}] potential listener LEAK detected, having ${T} listeners already. MOST frequent listener (${Re}):`;console.warn(Be),console.warn(ue);const it=new V7e(Be,ue);this._errorHandler(it)}return()=>{const ue=this._stacks.get(v.value)||0;this._stacks.set(v.value,ue-1)}}getMostFrequentStack(){if(!this._stacks)return;let v,T=0;for(const[W,X]of this._stacks)(!v||T<X)&&(v=[W,X],T=X);return v}};nG._idPool=1;let Fte=nG;class zte{static create(){const v=new Error;return new zte(v.stack??"")}constructor(v){this.value=v}print(){console.warn(this.value.split(`
+`).slice(2).join(`
+`))}}class V7e extends Error{constructor(v,T){super(v),this.name="ListenerLeakError",this.stack=T}}class j7e extends Error{constructor(v,T){super(v),this.name="ListenerRefusalError",this.stack=T}}class Bte{constructor(v){this.value=v}}const U7e=2;class Qb{constructor(v){var T,W,X,ue;this._size=0,this._options=v,this._leakageMon=(T=this._options)!=null&&T.leakWarningThreshold?new Fte((v==null?void 0:v.onListenerError)??_6,((W=this._options)==null?void 0:W.leakWarningThreshold)??G7e):void 0,this._perfMon=(X=this._options)!=null&&X._profName?new Wte(this._options._profName):void 0,this._deliveryQueue=(ue=this._options)==null?void 0:ue.deliveryQueue}dispose(){var v,T,W,X;this._disposed||(this._disposed=!0,((v=this._deliveryQueue)==null?void 0:v.current)===this&&this._deliveryQueue.reset(),this._listeners&&(this._listeners=void 0,this._size=0),(W=(T=this._options)==null?void 0:T.onDidRemoveLastListener)==null||W.call(T),(X=this._leakageMon)==null||X.dispose())}get event(){return this._event??(this._event=(v,T,W)=>{var Be,it,Me,Ue,Bt;if(this._leakageMon&&this._size>this._leakageMon.threshold**2){const Ut=`[${this._leakageMon.name}] REFUSES to accept new listeners because it exceeded its threshold by far (${this._size} vs ${this._leakageMon.threshold})`;console.warn(Ut);const dn=this._leakageMon.getMostFrequentStack()??["UNKNOWN stack",-1],Pr=new j7e(`${Ut}. HINT: Stack shows most frequent listener (${dn[1]}-times)`,dn[0]);return(((Be=this._options)==null?void 0:Be.onListenerError)||_6)(Pr),yM.None}if(this._disposed)return yM.None;T&&(v=v.bind(T));const X=new Bte(v);let ue;this._leakageMon&&this._size>=Math.ceil(this._leakageMon.threshold*.2)&&(X.stack=zte.create(),ue=this._leakageMon.check(X.stack,this._size+1)),this._listeners?this._listeners instanceof Bte?(this._deliveryQueue??(this._deliveryQueue=new H7e),this._listeners=[this._listeners,X]):this._listeners.push(X):((Me=(it=this._options)==null?void 0:it.onWillAddFirstListener)==null||Me.call(it,this),this._listeners=X,(Bt=(Ue=this._options)==null?void 0:Ue.onDidAddFirstListener)==null||Bt.call(Ue,this)),this._size++;const Re=kB(()=>{ue==null||ue(),this._removeListener(X)});return W instanceof h6?W.add(Re):Array.isArray(W)&&W.push(Re),Re}),this._event}_removeListener(v){var ue,Re,Be,it;if((Re=(ue=this._options)==null?void 0:ue.onWillRemoveListener)==null||Re.call(ue,this),!this._listeners)return;if(this._size===1){this._listeners=void 0,(it=(Be=this._options)==null?void 0:Be.onDidRemoveLastListener)==null||it.call(Be,this),this._size=0;return}const T=this._listeners,W=T.indexOf(v);if(W===-1)throw console.log("disposed?",this._disposed),console.log("size?",this._size),console.log("arr?",JSON.stringify(this._listeners)),new Error("Attempted to dispose unknown listener");this._size--,T[W]=void 0;const X=this._deliveryQueue.current===this;if(this._size*U7e<=T.length){let Me=0;for(let Ue=0;Ue<T.length;Ue++)T[Ue]?T[Me++]=T[Ue]:X&&(this._deliveryQueue.end--,Me<this._deliveryQueue.i&&this._deliveryQueue.i--);T.length=Me}}_deliver(v,T){var X;if(!v)return;const W=((X=this._options)==null?void 0:X.onListenerError)||_6;if(!W){v.value(T);return}try{v.value(T)}catch(ue){W(ue)}}_deliverQueue(v){const T=v.current._listeners;for(;v.i<v.end;)this._deliver(T[v.i++],v.value);v.reset()}fire(v){var T,W,X,ue;if((T=this._deliveryQueue)!=null&&T.current&&(this._deliverQueue(this._deliveryQueue),(W=this._perfMon)==null||W.stop()),(X=this._perfMon)==null||X.start(this._size),this._listeners)if(this._listeners instanceof Bte)this._deliver(this._listeners,v);else{const Re=this._deliveryQueue;Re.enqueue(this,v,this._listeners.length),this._deliverQueue(Re)}(ue=this._perfMon)==null||ue.stop()}hasListeners(){return this._size>0}}class H7e{constructor(){this.i=-1,this.end=0}enqueue(v,T,W){this.i=0,this.end=W,this.current=v,this.value=T}reset(){this.i=this.end,this.current=void 0,this.value=void 0}}function q7e(){return globalThis._VSCODE_NLS_MESSAGES}function Ybe(){return globalThis._VSCODE_NLS_LANGUAGE}const J7e=Ybe()==="pseudo"||typeof document<"u"&&document.location&&document.location.hash.indexOf("pseudo=true")>=0;function $be(g,v){let T;return v.length===0?T=g:T=g.replace(/\{(\d+)\}/g,(W,X)=>{const ue=X[0],Re=v[ue];let Be=W;return typeof Re=="string"?Be=Re:(typeof Re=="number"||typeof Re=="boolean"||Re===void 0||Re===null)&&(Be=String(Re)),Be}),J7e&&(T="["+T.replace(/[aouei]/g,"$&$&")+"]"),T}function Qd(g,v,...T){return $be(typeof g=="number"?K7e(g,v):v,T)}function K7e(g,v){var W;const T=(W=q7e())==null?void 0:W[g];if(typeof T!="string"){if(typeof v=="string")return v;throw new Error(`!!! NLS MISSING: ${g} !!!`)}return T}const bM="en";let Gte=!1,Vte=!1,jte=!1,Qbe=!1,Ute=!1,WB,Hte=bM,Zbe=bM,X7e,SE;const _A=globalThis;let ah;typeof _A.vscode<"u"&&typeof _A.vscode.process<"u"?ah=_A.vscode.process:typeof process<"u"&&typeof((m1e=process==null?void 0:process.versions)==null?void 0:m1e.node)=="string"&&(ah=process);const Y7e=typeof((_1e=ah==null?void 0:ah.versions)==null?void 0:_1e.electron)=="string"&&(ah==null?void 0:ah.type)==="renderer";if(typeof ah=="object"){Gte=ah.platform==="win32",Vte=ah.platform==="darwin",jte=ah.platform==="linux",jte&&ah.env.SNAP&&ah.env.SNAP_REVISION,ah.env.CI||ah.env.BUILD_ARTIFACTSTAGINGDIRECTORY,WB=bM,Hte=bM;const g=ah.env.VSCODE_NLS_CONFIG;if(g)try{const v=JSON.parse(g);WB=v.userLocale,Zbe=v.osLocale,Hte=v.resolvedLanguage||bM,X7e=(h1e=v.languagePack)==null?void 0:h1e.translationsConfigFile}catch{}Qbe=!0}else typeof navigator=="object"&&!Y7e?(SE=navigator.userAgent,Gte=SE.indexOf("Windows")>=0,Vte=SE.indexOf("Macintosh")>=0,(SE.indexOf("Macintosh")>=0||SE.indexOf("iPad")>=0||SE.indexOf("iPhone")>=0)&&navigator.maxTouchPoints&&navigator.maxTouchPoints>0,jte=SE.indexOf("Linux")>=0,(SE==null?void 0:SE.indexOf("Mobi"))>=0,Ute=!0,Hte=Ybe()||bM,WB=navigator.language.toLowerCase(),Zbe=WB):console.error("Unable to resolve platform.");const g6=Gte,$7e=Vte,Q7e=Qbe,Z7e=Ute,e5e=Ute&&typeof _A.importScripts=="function"?_A.origin:void 0,sS=SE,t5e=typeof _A.postMessage=="function"&&!_A.importScripts;(()=>{if(t5e){const g=[];_A.addEventListener("message",T=>{if(T.data&&T.data.vscodeScheduleAsyncWork)for(let W=0,X=g.length;W<X;W++){const ue=g[W];if(ue.id===T.data.vscodeScheduleAsyncWork){g.splice(W,1),ue.callback();return}}});let v=0;return T=>{const W=++v;g.push({id:W,callback:T}),_A.postMessage({vscodeScheduleAsyncWork:W},"*")}}return g=>setTimeout(g)})();const n5e=!!(sS&&sS.indexOf("Chrome")>=0);sS&&sS.indexOf("Firefox")>=0,!n5e&&sS&&sS.indexOf("Safari")>=0,sS&&sS.indexOf("Edg/")>=0,sS&&sS.indexOf("Android")>=0;function r5e(g){return g}class i5e{constructor(v,T){this.lastCache=void 0,this.lastArgKey=void 0,typeof v=="function"?(this._fn=v,this._computeKey=r5e):(this._fn=T,this._computeKey=v.getCacheKey)}get(v){const T=this._computeKey(v);return this.lastArgKey!==T&&(this.lastArgKey=T,this.lastCache=this._fn(v)),this.lastCache}}class e0e{constructor(v){this.executor=v,this._didRun=!1}get value(){if(!this._didRun)try{this._value=this.executor()}catch(v){this._error=v}finally{this._didRun=!0}if(this._error)throw this._error;return this._value}get rawValue(){return this._value}}function o5e(g){return g.replace(/[\\\{\}\*\+\?\|\^\$\.\[\]\(\)]/g,"\\$&")}function a5e(g){return g.split(/\r\n|\r|\n/)}function s5e(g){for(let v=0,T=g.length;v<T;v++){const W=g.charCodeAt(v);if(W!==32&&W!==9)return v}return-1}function l5e(g,v=g.length-1){for(let T=v;T>=0;T--){const W=g.charCodeAt(T);if(W!==32&&W!==9)return T}return-1}function t0e(g){return g>=65&&g<=90}function FB(g){return 55296<=g&&g<=56319}function qte(g){return 56320<=g&&g<=57343}function n0e(g,v){return(g-55296<<10)+(v-56320)+65536}function c5e(g,v,T){const W=g.charCodeAt(T);if(FB(W)&&T+1<v){const X=g.charCodeAt(T+1);if(qte(X))return n0e(W,X)}return W}const u5e=/^[\t\n\r\x20-\x7E]*$/;function d5e(g){return u5e.test(g)}const cS=class cS{static getInstance(v){return cS.cache.get(Array.from(v))}static getLocales(){return cS._locales.value}constructor(v){this.confusableDictionary=v}isAmbiguous(v){return this.confusableDictionary.has(v)}getPrimaryConfusable(v){return this.confusableDictionary.get(v)}getConfusableCodePoints(){return new Set(this.confusableDictionary.keys())}};cS.ambiguousCharacterData=new e0e(()=>JSON.parse('{"_common":[8232,32,8233,32,5760,32,8192,32,8193,32,8194,32,8195,32,8196,32,8197,32,8198,32,8200,32,8201,32,8202,32,8287,32,8199,32,8239,32,2042,95,65101,95,65102,95,65103,95,8208,45,8209,45,8210,45,65112,45,1748,45,8259,45,727,45,8722,45,10134,45,11450,45,1549,44,1643,44,8218,44,184,44,42233,44,894,59,2307,58,2691,58,1417,58,1795,58,1796,58,5868,58,65072,58,6147,58,6153,58,8282,58,1475,58,760,58,42889,58,8758,58,720,58,42237,58,451,33,11601,33,660,63,577,63,2429,63,5038,63,42731,63,119149,46,8228,46,1793,46,1794,46,42510,46,68176,46,1632,46,1776,46,42232,46,1373,96,65287,96,8219,96,8242,96,1370,96,1523,96,8175,96,65344,96,900,96,8189,96,8125,96,8127,96,8190,96,697,96,884,96,712,96,714,96,715,96,756,96,699,96,701,96,700,96,702,96,42892,96,1497,96,2036,96,2037,96,5194,96,5836,96,94033,96,94034,96,65339,91,10088,40,10098,40,12308,40,64830,40,65341,93,10089,41,10099,41,12309,41,64831,41,10100,123,119060,123,10101,125,65342,94,8270,42,1645,42,8727,42,66335,42,5941,47,8257,47,8725,47,8260,47,9585,47,10187,47,10744,47,119354,47,12755,47,12339,47,11462,47,20031,47,12035,47,65340,92,65128,92,8726,92,10189,92,10741,92,10745,92,119311,92,119355,92,12756,92,20022,92,12034,92,42872,38,708,94,710,94,5869,43,10133,43,66203,43,8249,60,10094,60,706,60,119350,60,5176,60,5810,60,5120,61,11840,61,12448,61,42239,61,8250,62,10095,62,707,62,119351,62,5171,62,94015,62,8275,126,732,126,8128,126,8764,126,65372,124,65293,45,120784,50,120794,50,120804,50,120814,50,120824,50,130034,50,42842,50,423,50,1000,50,42564,50,5311,50,42735,50,119302,51,120785,51,120795,51,120805,51,120815,51,120825,51,130035,51,42923,51,540,51,439,51,42858,51,11468,51,1248,51,94011,51,71882,51,120786,52,120796,52,120806,52,120816,52,120826,52,130036,52,5070,52,71855,52,120787,53,120797,53,120807,53,120817,53,120827,53,130037,53,444,53,71867,53,120788,54,120798,54,120808,54,120818,54,120828,54,130038,54,11474,54,5102,54,71893,54,119314,55,120789,55,120799,55,120809,55,120819,55,120829,55,130039,55,66770,55,71878,55,2819,56,2538,56,2666,56,125131,56,120790,56,120800,56,120810,56,120820,56,120830,56,130040,56,547,56,546,56,66330,56,2663,57,2920,57,2541,57,3437,57,120791,57,120801,57,120811,57,120821,57,120831,57,130041,57,42862,57,11466,57,71884,57,71852,57,71894,57,9082,97,65345,97,119834,97,119886,97,119938,97,119990,97,120042,97,120094,97,120146,97,120198,97,120250,97,120302,97,120354,97,120406,97,120458,97,593,97,945,97,120514,97,120572,97,120630,97,120688,97,120746,97,65313,65,119808,65,119860,65,119912,65,119964,65,120016,65,120068,65,120120,65,120172,65,120224,65,120276,65,120328,65,120380,65,120432,65,913,65,120488,65,120546,65,120604,65,120662,65,120720,65,5034,65,5573,65,42222,65,94016,65,66208,65,119835,98,119887,98,119939,98,119991,98,120043,98,120095,98,120147,98,120199,98,120251,98,120303,98,120355,98,120407,98,120459,98,388,98,5071,98,5234,98,5551,98,65314,66,8492,66,119809,66,119861,66,119913,66,120017,66,120069,66,120121,66,120173,66,120225,66,120277,66,120329,66,120381,66,120433,66,42932,66,914,66,120489,66,120547,66,120605,66,120663,66,120721,66,5108,66,5623,66,42192,66,66178,66,66209,66,66305,66,65347,99,8573,99,119836,99,119888,99,119940,99,119992,99,120044,99,120096,99,120148,99,120200,99,120252,99,120304,99,120356,99,120408,99,120460,99,7428,99,1010,99,11429,99,43951,99,66621,99,128844,67,71922,67,71913,67,65315,67,8557,67,8450,67,8493,67,119810,67,119862,67,119914,67,119966,67,120018,67,120174,67,120226,67,120278,67,120330,67,120382,67,120434,67,1017,67,11428,67,5087,67,42202,67,66210,67,66306,67,66581,67,66844,67,8574,100,8518,100,119837,100,119889,100,119941,100,119993,100,120045,100,120097,100,120149,100,120201,100,120253,100,120305,100,120357,100,120409,100,120461,100,1281,100,5095,100,5231,100,42194,100,8558,68,8517,68,119811,68,119863,68,119915,68,119967,68,120019,68,120071,68,120123,68,120175,68,120227,68,120279,68,120331,68,120383,68,120435,68,5024,68,5598,68,5610,68,42195,68,8494,101,65349,101,8495,101,8519,101,119838,101,119890,101,119942,101,120046,101,120098,101,120150,101,120202,101,120254,101,120306,101,120358,101,120410,101,120462,101,43826,101,1213,101,8959,69,65317,69,8496,69,119812,69,119864,69,119916,69,120020,69,120072,69,120124,69,120176,69,120228,69,120280,69,120332,69,120384,69,120436,69,917,69,120492,69,120550,69,120608,69,120666,69,120724,69,11577,69,5036,69,42224,69,71846,69,71854,69,66182,69,119839,102,119891,102,119943,102,119995,102,120047,102,120099,102,120151,102,120203,102,120255,102,120307,102,120359,102,120411,102,120463,102,43829,102,42905,102,383,102,7837,102,1412,102,119315,70,8497,70,119813,70,119865,70,119917,70,120021,70,120073,70,120125,70,120177,70,120229,70,120281,70,120333,70,120385,70,120437,70,42904,70,988,70,120778,70,5556,70,42205,70,71874,70,71842,70,66183,70,66213,70,66853,70,65351,103,8458,103,119840,103,119892,103,119944,103,120048,103,120100,103,120152,103,120204,103,120256,103,120308,103,120360,103,120412,103,120464,103,609,103,7555,103,397,103,1409,103,119814,71,119866,71,119918,71,119970,71,120022,71,120074,71,120126,71,120178,71,120230,71,120282,71,120334,71,120386,71,120438,71,1292,71,5056,71,5107,71,42198,71,65352,104,8462,104,119841,104,119945,104,119997,104,120049,104,120101,104,120153,104,120205,104,120257,104,120309,104,120361,104,120413,104,120465,104,1211,104,1392,104,5058,104,65320,72,8459,72,8460,72,8461,72,119815,72,119867,72,119919,72,120023,72,120179,72,120231,72,120283,72,120335,72,120387,72,120439,72,919,72,120494,72,120552,72,120610,72,120668,72,120726,72,11406,72,5051,72,5500,72,42215,72,66255,72,731,105,9075,105,65353,105,8560,105,8505,105,8520,105,119842,105,119894,105,119946,105,119998,105,120050,105,120102,105,120154,105,120206,105,120258,105,120310,105,120362,105,120414,105,120466,105,120484,105,618,105,617,105,953,105,8126,105,890,105,120522,105,120580,105,120638,105,120696,105,120754,105,1110,105,42567,105,1231,105,43893,105,5029,105,71875,105,65354,106,8521,106,119843,106,119895,106,119947,106,119999,106,120051,106,120103,106,120155,106,120207,106,120259,106,120311,106,120363,106,120415,106,120467,106,1011,106,1112,106,65322,74,119817,74,119869,74,119921,74,119973,74,120025,74,120077,74,120129,74,120181,74,120233,74,120285,74,120337,74,120389,74,120441,74,42930,74,895,74,1032,74,5035,74,5261,74,42201,74,119844,107,119896,107,119948,107,120000,107,120052,107,120104,107,120156,107,120208,107,120260,107,120312,107,120364,107,120416,107,120468,107,8490,75,65323,75,119818,75,119870,75,119922,75,119974,75,120026,75,120078,75,120130,75,120182,75,120234,75,120286,75,120338,75,120390,75,120442,75,922,75,120497,75,120555,75,120613,75,120671,75,120729,75,11412,75,5094,75,5845,75,42199,75,66840,75,1472,108,8739,73,9213,73,65512,73,1633,108,1777,73,66336,108,125127,108,120783,73,120793,73,120803,73,120813,73,120823,73,130033,73,65321,73,8544,73,8464,73,8465,73,119816,73,119868,73,119920,73,120024,73,120128,73,120180,73,120232,73,120284,73,120336,73,120388,73,120440,73,65356,108,8572,73,8467,108,119845,108,119897,108,119949,108,120001,108,120053,108,120105,73,120157,73,120209,73,120261,73,120313,73,120365,73,120417,73,120469,73,448,73,120496,73,120554,73,120612,73,120670,73,120728,73,11410,73,1030,73,1216,73,1493,108,1503,108,1575,108,126464,108,126592,108,65166,108,65165,108,1994,108,11599,73,5825,73,42226,73,93992,73,66186,124,66313,124,119338,76,8556,76,8466,76,119819,76,119871,76,119923,76,120027,76,120079,76,120131,76,120183,76,120235,76,120287,76,120339,76,120391,76,120443,76,11472,76,5086,76,5290,76,42209,76,93974,76,71843,76,71858,76,66587,76,66854,76,65325,77,8559,77,8499,77,119820,77,119872,77,119924,77,120028,77,120080,77,120132,77,120184,77,120236,77,120288,77,120340,77,120392,77,120444,77,924,77,120499,77,120557,77,120615,77,120673,77,120731,77,1018,77,11416,77,5047,77,5616,77,5846,77,42207,77,66224,77,66321,77,119847,110,119899,110,119951,110,120003,110,120055,110,120107,110,120159,110,120211,110,120263,110,120315,110,120367,110,120419,110,120471,110,1400,110,1404,110,65326,78,8469,78,119821,78,119873,78,119925,78,119977,78,120029,78,120081,78,120185,78,120237,78,120289,78,120341,78,120393,78,120445,78,925,78,120500,78,120558,78,120616,78,120674,78,120732,78,11418,78,42208,78,66835,78,3074,111,3202,111,3330,111,3458,111,2406,111,2662,111,2790,111,3046,111,3174,111,3302,111,3430,111,3664,111,3792,111,4160,111,1637,111,1781,111,65359,111,8500,111,119848,111,119900,111,119952,111,120056,111,120108,111,120160,111,120212,111,120264,111,120316,111,120368,111,120420,111,120472,111,7439,111,7441,111,43837,111,959,111,120528,111,120586,111,120644,111,120702,111,120760,111,963,111,120532,111,120590,111,120648,111,120706,111,120764,111,11423,111,4351,111,1413,111,1505,111,1607,111,126500,111,126564,111,126596,111,65259,111,65260,111,65258,111,65257,111,1726,111,64428,111,64429,111,64427,111,64426,111,1729,111,64424,111,64425,111,64423,111,64422,111,1749,111,3360,111,4125,111,66794,111,71880,111,71895,111,66604,111,1984,79,2534,79,2918,79,12295,79,70864,79,71904,79,120782,79,120792,79,120802,79,120812,79,120822,79,130032,79,65327,79,119822,79,119874,79,119926,79,119978,79,120030,79,120082,79,120134,79,120186,79,120238,79,120290,79,120342,79,120394,79,120446,79,927,79,120502,79,120560,79,120618,79,120676,79,120734,79,11422,79,1365,79,11604,79,4816,79,2848,79,66754,79,42227,79,71861,79,66194,79,66219,79,66564,79,66838,79,9076,112,65360,112,119849,112,119901,112,119953,112,120005,112,120057,112,120109,112,120161,112,120213,112,120265,112,120317,112,120369,112,120421,112,120473,112,961,112,120530,112,120544,112,120588,112,120602,112,120646,112,120660,112,120704,112,120718,112,120762,112,120776,112,11427,112,65328,80,8473,80,119823,80,119875,80,119927,80,119979,80,120031,80,120083,80,120187,80,120239,80,120291,80,120343,80,120395,80,120447,80,929,80,120504,80,120562,80,120620,80,120678,80,120736,80,11426,80,5090,80,5229,80,42193,80,66197,80,119850,113,119902,113,119954,113,120006,113,120058,113,120110,113,120162,113,120214,113,120266,113,120318,113,120370,113,120422,113,120474,113,1307,113,1379,113,1382,113,8474,81,119824,81,119876,81,119928,81,119980,81,120032,81,120084,81,120188,81,120240,81,120292,81,120344,81,120396,81,120448,81,11605,81,119851,114,119903,114,119955,114,120007,114,120059,114,120111,114,120163,114,120215,114,120267,114,120319,114,120371,114,120423,114,120475,114,43847,114,43848,114,7462,114,11397,114,43905,114,119318,82,8475,82,8476,82,8477,82,119825,82,119877,82,119929,82,120033,82,120189,82,120241,82,120293,82,120345,82,120397,82,120449,82,422,82,5025,82,5074,82,66740,82,5511,82,42211,82,94005,82,65363,115,119852,115,119904,115,119956,115,120008,115,120060,115,120112,115,120164,115,120216,115,120268,115,120320,115,120372,115,120424,115,120476,115,42801,115,445,115,1109,115,43946,115,71873,115,66632,115,65331,83,119826,83,119878,83,119930,83,119982,83,120034,83,120086,83,120138,83,120190,83,120242,83,120294,83,120346,83,120398,83,120450,83,1029,83,1359,83,5077,83,5082,83,42210,83,94010,83,66198,83,66592,83,119853,116,119905,116,119957,116,120009,116,120061,116,120113,116,120165,116,120217,116,120269,116,120321,116,120373,116,120425,116,120477,116,8868,84,10201,84,128872,84,65332,84,119827,84,119879,84,119931,84,119983,84,120035,84,120087,84,120139,84,120191,84,120243,84,120295,84,120347,84,120399,84,120451,84,932,84,120507,84,120565,84,120623,84,120681,84,120739,84,11430,84,5026,84,42196,84,93962,84,71868,84,66199,84,66225,84,66325,84,119854,117,119906,117,119958,117,120010,117,120062,117,120114,117,120166,117,120218,117,120270,117,120322,117,120374,117,120426,117,120478,117,42911,117,7452,117,43854,117,43858,117,651,117,965,117,120534,117,120592,117,120650,117,120708,117,120766,117,1405,117,66806,117,71896,117,8746,85,8899,85,119828,85,119880,85,119932,85,119984,85,120036,85,120088,85,120140,85,120192,85,120244,85,120296,85,120348,85,120400,85,120452,85,1357,85,4608,85,66766,85,5196,85,42228,85,94018,85,71864,85,8744,118,8897,118,65366,118,8564,118,119855,118,119907,118,119959,118,120011,118,120063,118,120115,118,120167,118,120219,118,120271,118,120323,118,120375,118,120427,118,120479,118,7456,118,957,118,120526,118,120584,118,120642,118,120700,118,120758,118,1141,118,1496,118,71430,118,43945,118,71872,118,119309,86,1639,86,1783,86,8548,86,119829,86,119881,86,119933,86,119985,86,120037,86,120089,86,120141,86,120193,86,120245,86,120297,86,120349,86,120401,86,120453,86,1140,86,11576,86,5081,86,5167,86,42719,86,42214,86,93960,86,71840,86,66845,86,623,119,119856,119,119908,119,119960,119,120012,119,120064,119,120116,119,120168,119,120220,119,120272,119,120324,119,120376,119,120428,119,120480,119,7457,119,1121,119,1309,119,1377,119,71434,119,71438,119,71439,119,43907,119,71919,87,71910,87,119830,87,119882,87,119934,87,119986,87,120038,87,120090,87,120142,87,120194,87,120246,87,120298,87,120350,87,120402,87,120454,87,1308,87,5043,87,5076,87,42218,87,5742,120,10539,120,10540,120,10799,120,65368,120,8569,120,119857,120,119909,120,119961,120,120013,120,120065,120,120117,120,120169,120,120221,120,120273,120,120325,120,120377,120,120429,120,120481,120,5441,120,5501,120,5741,88,9587,88,66338,88,71916,88,65336,88,8553,88,119831,88,119883,88,119935,88,119987,88,120039,88,120091,88,120143,88,120195,88,120247,88,120299,88,120351,88,120403,88,120455,88,42931,88,935,88,120510,88,120568,88,120626,88,120684,88,120742,88,11436,88,11613,88,5815,88,42219,88,66192,88,66228,88,66327,88,66855,88,611,121,7564,121,65369,121,119858,121,119910,121,119962,121,120014,121,120066,121,120118,121,120170,121,120222,121,120274,121,120326,121,120378,121,120430,121,120482,121,655,121,7935,121,43866,121,947,121,8509,121,120516,121,120574,121,120632,121,120690,121,120748,121,1199,121,4327,121,71900,121,65337,89,119832,89,119884,89,119936,89,119988,89,120040,89,120092,89,120144,89,120196,89,120248,89,120300,89,120352,89,120404,89,120456,89,933,89,978,89,120508,89,120566,89,120624,89,120682,89,120740,89,11432,89,1198,89,5033,89,5053,89,42220,89,94019,89,71844,89,66226,89,119859,122,119911,122,119963,122,120015,122,120067,122,120119,122,120171,122,120223,122,120275,122,120327,122,120379,122,120431,122,120483,122,7458,122,43923,122,71876,122,66293,90,71909,90,65338,90,8484,90,8488,90,119833,90,119885,90,119937,90,119989,90,120041,90,120197,90,120249,90,120301,90,120353,90,120405,90,120457,90,918,90,120493,90,120551,90,120609,90,120667,90,120725,90,5059,90,42204,90,71849,90,65282,34,65284,36,65285,37,65286,38,65290,42,65291,43,65294,46,65295,47,65296,48,65297,49,65298,50,65299,51,65300,52,65301,53,65302,54,65303,55,65304,56,65305,57,65308,60,65309,61,65310,62,65312,64,65316,68,65318,70,65319,71,65324,76,65329,81,65330,82,65333,85,65334,86,65335,87,65343,95,65346,98,65348,100,65350,102,65355,107,65357,109,65358,110,65361,113,65362,114,65364,116,65365,117,65367,119,65370,122,65371,123,65373,125,119846,109],"_default":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"cs":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"de":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"es":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"fr":[65374,126,65306,58,65281,33,8216,96,8245,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"it":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ja":[8211,45,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65292,44,65307,59],"ko":[8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pl":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"pt-BR":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"qps-ploc":[160,32,8211,45,65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"ru":[65374,126,65306,58,65281,33,8216,96,8217,96,8245,96,180,96,12494,47,305,105,921,73,1009,112,215,120,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"tr":[160,32,8211,45,65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65288,40,65289,41,65292,44,65307,59,65311,63],"zh-hans":[65374,126,65306,58,65281,33,8245,96,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65288,40,65289,41],"zh-hant":[8211,45,65374,126,180,96,12494,47,1047,51,1073,54,1072,97,1040,65,1068,98,1042,66,1089,99,1057,67,1077,101,1045,69,1053,72,305,105,1050,75,921,73,1052,77,1086,111,1054,79,1009,112,1088,112,1056,80,1075,114,1058,84,215,120,1093,120,1061,88,1091,121,1059,89,65283,35,65307,59]}')),cS.cache=new i5e({getCacheKey:JSON.stringify},v=>{function T(Ue){const Bt=new Map;for(let Ut=0;Ut<Ue.length;Ut+=2)Bt.set(Ue[Ut],Ue[Ut+1]);return Bt}function W(Ue,Bt){const Ut=new Map(Ue);for(const[dn,Pr]of Bt)Ut.set(dn,Pr);return Ut}function X(Ue,Bt){if(!Ue)return Bt;const Ut=new Map;for(const[dn,Pr]of Ue)Bt.has(dn)&&Ut.set(dn,Pr);return Ut}const ue=cS.ambiguousCharacterData.value;let Re=v.filter(Ue=>!Ue.startsWith("_")&&Ue in ue);Re.length===0&&(Re=["_default"]);let Be;for(const Ue of Re){const Bt=T(ue[Ue]);Be=X(Be,Bt)}const it=T(ue._common),Me=W(it,Be);return new cS(Me)}),cS._locales=new e0e(()=>Object.keys(cS.ambiguousCharacterData.value).filter(v=>!v.startsWith("_")));let v6=cS;const LM=class LM{static getRawData(){return JSON.parse("[9,10,11,12,13,32,127,160,173,847,1564,4447,4448,6068,6069,6155,6156,6157,6158,7355,7356,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8234,8235,8236,8237,8238,8239,8287,8288,8289,8290,8291,8292,8293,8294,8295,8296,8297,8298,8299,8300,8301,8302,8303,10240,12288,12644,65024,65025,65026,65027,65028,65029,65030,65031,65032,65033,65034,65035,65036,65037,65038,65039,65279,65440,65520,65521,65522,65523,65524,65525,65526,65527,65528,65532,78844,119155,119156,119157,119158,119159,119160,119161,119162,917504,917505,917506,917507,917508,917509,917510,917511,917512,917513,917514,917515,917516,917517,917518,917519,917520,917521,917522,917523,917524,917525,917526,917527,917528,917529,917530,917531,917532,917533,917534,917535,917536,917537,917538,917539,917540,917541,917542,917543,917544,917545,917546,917547,917548,917549,917550,917551,917552,917553,917554,917555,917556,917557,917558,917559,917560,917561,917562,917563,917564,917565,917566,917567,917568,917569,917570,917571,917572,917573,917574,917575,917576,917577,917578,917579,917580,917581,917582,917583,917584,917585,917586,917587,917588,917589,917590,917591,917592,917593,917594,917595,917596,917597,917598,917599,917600,917601,917602,917603,917604,917605,917606,917607,917608,917609,917610,917611,917612,917613,917614,917615,917616,917617,917618,917619,917620,917621,917622,917623,917624,917625,917626,917627,917628,917629,917630,917631,917760,917761,917762,917763,917764,917765,917766,917767,917768,917769,917770,917771,917772,917773,917774,917775,917776,917777,917778,917779,917780,917781,917782,917783,917784,917785,917786,917787,917788,917789,917790,917791,917792,917793,917794,917795,917796,917797,917798,917799,917800,917801,917802,917803,917804,917805,917806,917807,917808,917809,917810,917811,917812,917813,917814,917815,917816,917817,917818,917819,917820,917821,917822,917823,917824,917825,917826,917827,917828,917829,917830,917831,917832,917833,917834,917835,917836,917837,917838,917839,917840,917841,917842,917843,917844,917845,917846,917847,917848,917849,917850,917851,917852,917853,917854,917855,917856,917857,917858,917859,917860,917861,917862,917863,917864,917865,917866,917867,917868,917869,917870,917871,917872,917873,917874,917875,917876,917877,917878,917879,917880,917881,917882,917883,917884,917885,917886,917887,917888,917889,917890,917891,917892,917893,917894,917895,917896,917897,917898,917899,917900,917901,917902,917903,917904,917905,917906,917907,917908,917909,917910,917911,917912,917913,917914,917915,917916,917917,917918,917919,917920,917921,917922,917923,917924,917925,917926,917927,917928,917929,917930,917931,917932,917933,917934,917935,917936,917937,917938,917939,917940,917941,917942,917943,917944,917945,917946,917947,917948,917949,917950,917951,917952,917953,917954,917955,917956,917957,917958,917959,917960,917961,917962,917963,917964,917965,917966,917967,917968,917969,917970,917971,917972,917973,917974,917975,917976,917977,917978,917979,917980,917981,917982,917983,917984,917985,917986,917987,917988,917989,917990,917991,917992,917993,917994,917995,917996,917997,917998,917999]")}static getData(){return this._data||(this._data=new Set(LM.getRawData())),this._data}static isInvisibleCharacter(v){return LM.getData().has(v)}static get codePoints(){return LM.getData()}};LM._data=void 0;let y6=LM;var r0e={};let EM;const Jte=globalThis.vscode;if(typeof Jte<"u"&&typeof Jte.process<"u"){const g=Jte.process;EM={get platform(){return g.platform},get arch(){return g.arch},get env(){return g.env},cwd(){return g.cwd()}}}else typeof process<"u"&&typeof((g1e=process==null?void 0:process.versions)==null?void 0:g1e.node)=="string"?EM={get platform(){return process.platform},get arch(){return process.arch},get env(){return r0e},cwd(){return r0e.VSCODE_CWD||process.cwd()}}:EM={get platform(){return g6?"win32":$7e?"darwin":"linux"},get arch(){},get env(){return{}},cwd(){return"/"}};const zB=EM.cwd,p5e=EM.env,f5e=EM.platform,m5e=65,_5e=97,h5e=90,g5e=122,Nx=46,T_=47,Iv=92,Cx=58,v5e=63;class i0e extends Error{constructor(v,T,W){let X;typeof T=="string"&&T.indexOf("not ")===0?(X="must not be",T=T.replace(/^not /,"")):X="must be";const ue=v.indexOf(".")!==-1?"property":"argument";let Re=`The "${v}" ${ue} ${X} of type ${T}`;Re+=`. Received type ${typeof W}`,super(Re),this.code="ERR_INVALID_ARG_TYPE"}}function y5e(g,v){if(g===null||typeof g!="object")throw new i0e(v,"Object",g)}function Sf(g,v){if(typeof g!="string")throw new i0e(v,"string",g)}const hA=f5e==="win32";function Ul(g){return g===T_||g===Iv}function Kte(g){return g===T_}function Px(g){return g>=m5e&&g<=h5e||g>=_5e&&g<=g5e}function BB(g,v,T,W){let X="",ue=0,Re=-1,Be=0,it=0;for(let Me=0;Me<=g.length;++Me){if(Me<g.length)it=g.charCodeAt(Me);else{if(W(it))break;it=T_}if(W(it)){if(!(Re===Me-1||Be===1))if(Be===2){if(X.length<2||ue!==2||X.charCodeAt(X.length-1)!==Nx||X.charCodeAt(X.length-2)!==Nx){if(X.length>2){const Ue=X.lastIndexOf(T);Ue===-1?(X="",ue=0):(X=X.slice(0,Ue),ue=X.length-1-X.lastIndexOf(T)),Re=Me,Be=0;continue}else if(X.length!==0){X="",ue=0,Re=Me,Be=0;continue}}v&&(X+=X.length>0?`${T}..`:"..",ue=2)}else X.length>0?X+=`${T}${g.slice(Re+1,Me)}`:X=g.slice(Re+1,Me),ue=Me-Re-1;Re=Me,Be=0}else it===Nx&&Be!==-1?++Be:Be=-1}return X}function b5e(g){return g?`${g[0]==="."?"":"."}${g}`:""}function o0e(g,v){y5e(v,"pathObject");const T=v.dir||v.root,W=v.base||`${v.name||""}${b5e(v.ext)}`;return T?T===v.root?`${T}${W}`:`${T}${g}${W}`:W}const Jh={resolve(...g){let v="",T="",W=!1;for(let X=g.length-1;X>=-1;X--){let ue;if(X>=0){if(ue=g[X],Sf(ue,`paths[${X}]`),ue.length===0)continue}else v.length===0?ue=zB():(ue=p5e[`=${v}`]||zB(),(ue===void 0||ue.slice(0,2).toLowerCase()!==v.toLowerCase()&&ue.charCodeAt(2)===Iv)&&(ue=`${v}\\`));const Re=ue.length;let Be=0,it="",Me=!1;const Ue=ue.charCodeAt(0);if(Re===1)Ul(Ue)&&(Be=1,Me=!0);else if(Ul(Ue))if(Me=!0,Ul(ue.charCodeAt(1))){let Bt=2,Ut=Bt;for(;Bt<Re&&!Ul(ue.charCodeAt(Bt));)Bt++;if(Bt<Re&&Bt!==Ut){const dn=ue.slice(Ut,Bt);for(Ut=Bt;Bt<Re&&Ul(ue.charCodeAt(Bt));)Bt++;if(Bt<Re&&Bt!==Ut){for(Ut=Bt;Bt<Re&&!Ul(ue.charCodeAt(Bt));)Bt++;(Bt===Re||Bt!==Ut)&&(it=`\\\\${dn}\\${ue.slice(Ut,Bt)}`,Be=Bt)}}}else Be=1;else Px(Ue)&&ue.charCodeAt(1)===Cx&&(it=ue.slice(0,2),Be=2,Re>2&&Ul(ue.charCodeAt(2))&&(Me=!0,Be=3));if(it.length>0)if(v.length>0){if(it.toLowerCase()!==v.toLowerCase())continue}else v=it;if(W){if(v.length>0)break}else if(T=`${ue.slice(Be)}\\${T}`,W=Me,Me&&v.length>0)break}return T=BB(T,!W,"\\",Ul),W?`${v}\\${T}`:`${v}${T}`||"."},normalize(g){Sf(g,"path");const v=g.length;if(v===0)return".";let T=0,W,X=!1;const ue=g.charCodeAt(0);if(v===1)return Kte(ue)?"\\":g;if(Ul(ue))if(X=!0,Ul(g.charCodeAt(1))){let Be=2,it=Be;for(;Be<v&&!Ul(g.charCodeAt(Be));)Be++;if(Be<v&&Be!==it){const Me=g.slice(it,Be);for(it=Be;Be<v&&Ul(g.charCodeAt(Be));)Be++;if(Be<v&&Be!==it){for(it=Be;Be<v&&!Ul(g.charCodeAt(Be));)Be++;if(Be===v)return`\\\\${Me}\\${g.slice(it)}\\`;Be!==it&&(W=`\\\\${Me}\\${g.slice(it,Be)}`,T=Be)}}}else T=1;else Px(ue)&&g.charCodeAt(1)===Cx&&(W=g.slice(0,2),T=2,v>2&&Ul(g.charCodeAt(2))&&(X=!0,T=3));let Re=T<v?BB(g.slice(T),!X,"\\",Ul):"";return Re.length===0&&!X&&(Re="."),Re.length>0&&Ul(g.charCodeAt(v-1))&&(Re+="\\"),W===void 0?X?`\\${Re}`:Re:X?`${W}\\${Re}`:`${W}${Re}`},isAbsolute(g){Sf(g,"path");const v=g.length;if(v===0)return!1;const T=g.charCodeAt(0);return Ul(T)||v>2&&Px(T)&&g.charCodeAt(1)===Cx&&Ul(g.charCodeAt(2))},join(...g){if(g.length===0)return".";let v,T;for(let ue=0;ue<g.length;++ue){const Re=g[ue];Sf(Re,"path"),Re.length>0&&(v===void 0?v=T=Re:v+=`\\${Re}`)}if(v===void 0)return".";let W=!0,X=0;if(typeof T=="string"&&Ul(T.charCodeAt(0))){++X;const ue=T.length;ue>1&&Ul(T.charCodeAt(1))&&(++X,ue>2&&(Ul(T.charCodeAt(2))?++X:W=!1))}if(W){for(;X<v.length&&Ul(v.charCodeAt(X));)X++;X>=2&&(v=`\\${v.slice(X)}`)}return Jh.normalize(v)},relative(g,v){if(Sf(g,"from"),Sf(v,"to"),g===v)return"";const T=Jh.resolve(g),W=Jh.resolve(v);if(T===W||(g=T.toLowerCase(),v=W.toLowerCase(),g===v))return"";let X=0;for(;X<g.length&&g.charCodeAt(X)===Iv;)X++;let ue=g.length;for(;ue-1>X&&g.charCodeAt(ue-1)===Iv;)ue--;const Re=ue-X;let Be=0;for(;Be<v.length&&v.charCodeAt(Be)===Iv;)Be++;let it=v.length;for(;it-1>Be&&v.charCodeAt(it-1)===Iv;)it--;const Me=it-Be,Ue=Re<Me?Re:Me;let Bt=-1,Ut=0;for(;Ut<Ue;Ut++){const Pr=g.charCodeAt(X+Ut);if(Pr!==v.charCodeAt(Be+Ut))break;Pr===Iv&&(Bt=Ut)}if(Ut!==Ue){if(Bt===-1)return W}else{if(Me>Ue){if(v.charCodeAt(Be+Ut)===Iv)return W.slice(Be+Ut+1);if(Ut===2)return W.slice(Be+Ut)}Re>Ue&&(g.charCodeAt(X+Ut)===Iv?Bt=Ut:Ut===2&&(Bt=3)),Bt===-1&&(Bt=0)}let dn="";for(Ut=X+Bt+1;Ut<=ue;++Ut)(Ut===ue||g.charCodeAt(Ut)===Iv)&&(dn+=dn.length===0?"..":"\\..");return Be+=Bt,dn.length>0?`${dn}${W.slice(Be,it)}`:(W.charCodeAt(Be)===Iv&&++Be,W.slice(Be,it))},toNamespacedPath(g){if(typeof g!="string"||g.length===0)return g;const v=Jh.resolve(g);if(v.length<=2)return g;if(v.charCodeAt(0)===Iv){if(v.charCodeAt(1)===Iv){const T=v.charCodeAt(2);if(T!==v5e&&T!==Nx)return`\\\\?\\UNC\\${v.slice(2)}`}}else if(Px(v.charCodeAt(0))&&v.charCodeAt(1)===Cx&&v.charCodeAt(2)===Iv)return`\\\\?\\${v}`;return g},dirname(g){Sf(g,"path");const v=g.length;if(v===0)return".";let T=-1,W=0;const X=g.charCodeAt(0);if(v===1)return Ul(X)?g:".";if(Ul(X)){if(T=W=1,Ul(g.charCodeAt(1))){let Be=2,it=Be;for(;Be<v&&!Ul(g.charCodeAt(Be));)Be++;if(Be<v&&Be!==it){for(it=Be;Be<v&&Ul(g.charCodeAt(Be));)Be++;if(Be<v&&Be!==it){for(it=Be;Be<v&&!Ul(g.charCodeAt(Be));)Be++;if(Be===v)return g;Be!==it&&(T=W=Be+1)}}}}else Px(X)&&g.charCodeAt(1)===Cx&&(T=v>2&&Ul(g.charCodeAt(2))?3:2,W=T);let ue=-1,Re=!0;for(let Be=v-1;Be>=W;--Be)if(Ul(g.charCodeAt(Be))){if(!Re){ue=Be;break}}else Re=!1;if(ue===-1){if(T===-1)return".";ue=T}return g.slice(0,ue)},basename(g,v){v!==void 0&&Sf(v,"suffix"),Sf(g,"path");let T=0,W=-1,X=!0,ue;if(g.length>=2&&Px(g.charCodeAt(0))&&g.charCodeAt(1)===Cx&&(T=2),v!==void 0&&v.length>0&&v.length<=g.length){if(v===g)return"";let Re=v.length-1,Be=-1;for(ue=g.length-1;ue>=T;--ue){const it=g.charCodeAt(ue);if(Ul(it)){if(!X){T=ue+1;break}}else Be===-1&&(X=!1,Be=ue+1),Re>=0&&(it===v.charCodeAt(Re)?--Re===-1&&(W=ue):(Re=-1,W=Be))}return T===W?W=Be:W===-1&&(W=g.length),g.slice(T,W)}for(ue=g.length-1;ue>=T;--ue)if(Ul(g.charCodeAt(ue))){if(!X){T=ue+1;break}}else W===-1&&(X=!1,W=ue+1);return W===-1?"":g.slice(T,W)},extname(g){Sf(g,"path");let v=0,T=-1,W=0,X=-1,ue=!0,Re=0;g.length>=2&&g.charCodeAt(1)===Cx&&Px(g.charCodeAt(0))&&(v=W=2);for(let Be=g.length-1;Be>=v;--Be){const it=g.charCodeAt(Be);if(Ul(it)){if(!ue){W=Be+1;break}continue}X===-1&&(ue=!1,X=Be+1),it===Nx?T===-1?T=Be:Re!==1&&(Re=1):T!==-1&&(Re=-1)}return T===-1||X===-1||Re===0||Re===1&&T===X-1&&T===W+1?"":g.slice(T,X)},format:o0e.bind(null,"\\"),parse(g){Sf(g,"path");const v={root:"",dir:"",base:"",ext:"",name:""};if(g.length===0)return v;const T=g.length;let W=0,X=g.charCodeAt(0);if(T===1)return Ul(X)?(v.root=v.dir=g,v):(v.base=v.name=g,v);if(Ul(X)){if(W=1,Ul(g.charCodeAt(1))){let Bt=2,Ut=Bt;for(;Bt<T&&!Ul(g.charCodeAt(Bt));)Bt++;if(Bt<T&&Bt!==Ut){for(Ut=Bt;Bt<T&&Ul(g.charCodeAt(Bt));)Bt++;if(Bt<T&&Bt!==Ut){for(Ut=Bt;Bt<T&&!Ul(g.charCodeAt(Bt));)Bt++;Bt===T?W=Bt:Bt!==Ut&&(W=Bt+1)}}}}else if(Px(X)&&g.charCodeAt(1)===Cx){if(T<=2)return v.root=v.dir=g,v;if(W=2,Ul(g.charCodeAt(2))){if(T===3)return v.root=v.dir=g,v;W=3}}W>0&&(v.root=g.slice(0,W));let ue=-1,Re=W,Be=-1,it=!0,Me=g.length-1,Ue=0;for(;Me>=W;--Me){if(X=g.charCodeAt(Me),Ul(X)){if(!it){Re=Me+1;break}continue}Be===-1&&(it=!1,Be=Me+1),X===Nx?ue===-1?ue=Me:Ue!==1&&(Ue=1):ue!==-1&&(Ue=-1)}return Be!==-1&&(ue===-1||Ue===0||Ue===1&&ue===Be-1&&ue===Re+1?v.base=v.name=g.slice(Re,Be):(v.name=g.slice(Re,ue),v.base=g.slice(Re,Be),v.ext=g.slice(ue,Be))),Re>0&&Re!==W?v.dir=g.slice(0,Re-1):v.dir=v.root,v},sep:"\\",delimiter:";",win32:null,posix:null},E5e=(()=>{if(hA){const g=/\\/g;return()=>{const v=zB().replace(g,"/");return v.slice(v.indexOf("/"))}}return()=>zB()})(),Kh={resolve(...g){let v="",T=!1;for(let W=g.length-1;W>=-1&&!T;W--){const X=W>=0?g[W]:E5e();Sf(X,`paths[${W}]`),X.length!==0&&(v=`${X}/${v}`,T=X.charCodeAt(0)===T_)}return v=BB(v,!T,"/",Kte),T?`/${v}`:v.length>0?v:"."},normalize(g){if(Sf(g,"path"),g.length===0)return".";const v=g.charCodeAt(0)===T_,T=g.charCodeAt(g.length-1)===T_;return g=BB(g,!v,"/",Kte),g.length===0?v?"/":T?"./":".":(T&&(g+="/"),v?`/${g}`:g)},isAbsolute(g){return Sf(g,"path"),g.length>0&&g.charCodeAt(0)===T_},join(...g){if(g.length===0)return".";let v;for(let T=0;T<g.length;++T){const W=g[T];Sf(W,"path"),W.length>0&&(v===void 0?v=W:v+=`/${W}`)}return v===void 0?".":Kh.normalize(v)},relative(g,v){if(Sf(g,"from"),Sf(v,"to"),g===v||(g=Kh.resolve(g),v=Kh.resolve(v),g===v))return"";const T=1,W=g.length,X=W-T,ue=1,Re=v.length-ue,Be=X<Re?X:Re;let it=-1,Me=0;for(;Me<Be;Me++){const Bt=g.charCodeAt(T+Me);if(Bt!==v.charCodeAt(ue+Me))break;Bt===T_&&(it=Me)}if(Me===Be)if(Re>Be){if(v.charCodeAt(ue+Me)===T_)return v.slice(ue+Me+1);if(Me===0)return v.slice(ue+Me)}else X>Be&&(g.charCodeAt(T+Me)===T_?it=Me:Me===0&&(it=0));let Ue="";for(Me=T+it+1;Me<=W;++Me)(Me===W||g.charCodeAt(Me)===T_)&&(Ue+=Ue.length===0?"..":"/..");return`${Ue}${v.slice(ue+it)}`},toNamespacedPath(g){return g},dirname(g){if(Sf(g,"path"),g.length===0)return".";const v=g.charCodeAt(0)===T_;let T=-1,W=!0;for(let X=g.length-1;X>=1;--X)if(g.charCodeAt(X)===T_){if(!W){T=X;break}}else W=!1;return T===-1?v?"/":".":v&&T===1?"//":g.slice(0,T)},basename(g,v){v!==void 0&&Sf(v,"ext"),Sf(g,"path");let T=0,W=-1,X=!0,ue;if(v!==void 0&&v.length>0&&v.length<=g.length){if(v===g)return"";let Re=v.length-1,Be=-1;for(ue=g.length-1;ue>=0;--ue){const it=g.charCodeAt(ue);if(it===T_){if(!X){T=ue+1;break}}else Be===-1&&(X=!1,Be=ue+1),Re>=0&&(it===v.charCodeAt(Re)?--Re===-1&&(W=ue):(Re=-1,W=Be))}return T===W?W=Be:W===-1&&(W=g.length),g.slice(T,W)}for(ue=g.length-1;ue>=0;--ue)if(g.charCodeAt(ue)===T_){if(!X){T=ue+1;break}}else W===-1&&(X=!1,W=ue+1);return W===-1?"":g.slice(T,W)},extname(g){Sf(g,"path");let v=-1,T=0,W=-1,X=!0,ue=0;for(let Re=g.length-1;Re>=0;--Re){const Be=g.charCodeAt(Re);if(Be===T_){if(!X){T=Re+1;break}continue}W===-1&&(X=!1,W=Re+1),Be===Nx?v===-1?v=Re:ue!==1&&(ue=1):v!==-1&&(ue=-1)}return v===-1||W===-1||ue===0||ue===1&&v===W-1&&v===T+1?"":g.slice(v,W)},format:o0e.bind(null,"/"),parse(g){Sf(g,"path");const v={root:"",dir:"",base:"",ext:"",name:""};if(g.length===0)return v;const T=g.charCodeAt(0)===T_;let W;T?(v.root="/",W=1):W=0;let X=-1,ue=0,Re=-1,Be=!0,it=g.length-1,Me=0;for(;it>=W;--it){const Ue=g.charCodeAt(it);if(Ue===T_){if(!Be){ue=it+1;break}continue}Re===-1&&(Be=!1,Re=it+1),Ue===Nx?X===-1?X=it:Me!==1&&(Me=1):X!==-1&&(Me=-1)}if(Re!==-1){const Ue=ue===0&&T?1:ue;X===-1||Me===0||Me===1&&X===Re-1&&X===ue+1?v.base=v.name=g.slice(Ue,Re):(v.name=g.slice(Ue,X),v.base=g.slice(Ue,Re),v.ext=g.slice(X,Re))}return ue>0?v.dir=g.slice(0,ue-1):T&&(v.dir="/"),v},sep:"/",delimiter:":",win32:null,posix:null};Kh.win32=Jh.win32=Jh,Kh.posix=Jh.posix=Kh,hA?Jh.normalize:Kh.normalize;const S5e=hA?Jh.join:Kh.join;hA?Jh.resolve:Kh.resolve,hA?Jh.relative:Kh.relative,hA?Jh.dirname:Kh.dirname,hA?Jh.basename:Kh.basename,hA?Jh.extname:Kh.extname,hA?Jh.sep:Kh.sep;const T5e=/^\w[\w\d+.-]*$/,A5e=/^\//,I5e=/^\/\//;function x5e(g,v){if(!g.scheme&&v)throw new Error(`[UriError]: Scheme is missing: {scheme: "", authority: "${g.authority}", path: "${g.path}", query: "${g.query}", fragment: "${g.fragment}"}`);if(g.scheme&&!T5e.test(g.scheme))throw new Error("[UriError]: Scheme contains illegal characters.");if(g.path){if(g.authority){if(!A5e.test(g.path))throw new Error('[UriError]: If a URI contains an authority component, then the path component must either be empty or begin with a slash ("/") character')}else if(I5e.test(g.path))throw new Error('[UriError]: If a URI does not contain an authority component, then the path cannot begin with two slash characters ("//")')}}function R5e(g,v){return!g&&!v?"file":g}function D5e(g,v){switch(g){case"https":case"http":case"file":v?v[0]!==TE&&(v=TE+v):v=TE;break}return v}const Od="",TE="/",N5e=/^(([^:/?#]+?):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?/;class xv{static isUri(v){return v instanceof xv?!0:v?typeof v.authority=="string"&&typeof v.fragment=="string"&&typeof v.path=="string"&&typeof v.query=="string"&&typeof v.scheme=="string"&&typeof v.fsPath=="string"&&typeof v.with=="function"&&typeof v.toString=="function":!1}constructor(v,T,W,X,ue,Re=!1){typeof v=="object"?(this.scheme=v.scheme||Od,this.authority=v.authority||Od,this.path=v.path||Od,this.query=v.query||Od,this.fragment=v.fragment||Od):(this.scheme=R5e(v,Re),this.authority=T||Od,this.path=D5e(this.scheme,W||Od),this.query=X||Od,this.fragment=ue||Od,x5e(this,Re))}get fsPath(){return Xte(this,!1)}with(v){if(!v)return this;let{scheme:T,authority:W,path:X,query:ue,fragment:Re}=v;return T===void 0?T=this.scheme:T===null&&(T=Od),W===void 0?W=this.authority:W===null&&(W=Od),X===void 0?X=this.path:X===null&&(X=Od),ue===void 0?ue=this.query:ue===null&&(ue=Od),Re===void 0?Re=this.fragment:Re===null&&(Re=Od),T===this.scheme&&W===this.authority&&X===this.path&&ue===this.query&&Re===this.fragment?this:new SM(T,W,X,ue,Re)}static parse(v,T=!1){const W=N5e.exec(v);return W?new SM(W[2]||Od,GB(W[4]||Od),GB(W[5]||Od),GB(W[7]||Od),GB(W[9]||Od),T):new SM(Od,Od,Od,Od,Od)}static file(v){let T=Od;if(g6&&(v=v.replace(/\\/g,TE)),v[0]===TE&&v[1]===TE){const W=v.indexOf(TE,2);W===-1?(T=v.substring(2),v=TE):(T=v.substring(2,W),v=v.substring(W)||TE)}return new SM("file",T,v,Od,Od)}static from(v,T){return new SM(v.scheme,v.authority,v.path,v.query,v.fragment,T)}static joinPath(v,...T){if(!v.path)throw new Error("[UriError]: cannot call joinPath on URI without path");let W;return g6&&v.scheme==="file"?W=xv.file(Jh.join(Xte(v,!0),...T)).path:W=Kh.join(v.path,...T),v.with({path:W})}toString(v=!1){return Yte(this,v)}toJSON(){return this}static revive(v){if(v){if(v instanceof xv)return v;{const T=new SM(v);return T._formatted=v.external??null,T._fsPath=v._sep===a0e?v.fsPath??null:null,T}}else return v}}const a0e=g6?1:void 0;class SM extends xv{constructor(){super(...arguments),this._formatted=null,this._fsPath=null}get fsPath(){return this._fsPath||(this._fsPath=Xte(this,!1)),this._fsPath}toString(v=!1){return v?Yte(this,!0):(this._formatted||(this._formatted=Yte(this,!1)),this._formatted)}toJSON(){const v={$mid:1};return this._fsPath&&(v.fsPath=this._fsPath,v._sep=a0e),this._formatted&&(v.external=this._formatted),this.path&&(v.path=this.path),this.scheme&&(v.scheme=this.scheme),this.authority&&(v.authority=this.authority),this.query&&(v.query=this.query),this.fragment&&(v.fragment=this.fragment),v}}const s0e={58:"%3A",47:"%2F",63:"%3F",35:"%23",91:"%5B",93:"%5D",64:"%40",33:"%21",36:"%24",38:"%26",39:"%27",40:"%28",41:"%29",42:"%2A",43:"%2B",44:"%2C",59:"%3B",61:"%3D",32:"%20"};function l0e(g,v,T){let W,X=-1;for(let ue=0;ue<g.length;ue++){const Re=g.charCodeAt(ue);if(Re>=97&&Re<=122||Re>=65&&Re<=90||Re>=48&&Re<=57||Re===45||Re===46||Re===95||Re===126||v&&Re===47||T&&Re===91||T&&Re===93||T&&Re===58)X!==-1&&(W+=encodeURIComponent(g.substring(X,ue)),X=-1),W!==void 0&&(W+=g.charAt(ue));else{W===void 0&&(W=g.substr(0,ue));const Be=s0e[Re];Be!==void 0?(X!==-1&&(W+=encodeURIComponent(g.substring(X,ue)),X=-1),W+=Be):X===-1&&(X=ue)}}return X!==-1&&(W+=encodeURIComponent(g.substring(X))),W!==void 0?W:g}function C5e(g){let v;for(let T=0;T<g.length;T++){const W=g.charCodeAt(T);W===35||W===63?(v===void 0&&(v=g.substr(0,T)),v+=s0e[W]):v!==void 0&&(v+=g[T])}return v!==void 0?v:g}function Xte(g,v){let T;return g.authority&&g.path.length>1&&g.scheme==="file"?T=`//${g.authority}${g.path}`:g.path.charCodeAt(0)===47&&(g.path.charCodeAt(1)>=65&&g.path.charCodeAt(1)<=90||g.path.charCodeAt(1)>=97&&g.path.charCodeAt(1)<=122)&&g.path.charCodeAt(2)===58?v?T=g.path.substr(1):T=g.path[1].toLowerCase()+g.path.substr(2):T=g.path,g6&&(T=T.replace(/\//g,"\\")),T}function Yte(g,v){const T=v?C5e:l0e;let W="",{scheme:X,authority:ue,path:Re,query:Be,fragment:it}=g;if(X&&(W+=X,W+=":"),(ue||X==="file")&&(W+=TE,W+=TE),ue){let Me=ue.indexOf("@");if(Me!==-1){const Ue=ue.substr(0,Me);ue=ue.substr(Me+1),Me=Ue.lastIndexOf(":"),Me===-1?W+=T(Ue,!1,!1):(W+=T(Ue.substr(0,Me),!1,!1),W+=":",W+=T(Ue.substr(Me+1),!1,!0)),W+="@"}ue=ue.toLowerCase(),Me=ue.lastIndexOf(":"),Me===-1?W+=T(ue,!1,!0):(W+=T(ue.substr(0,Me),!1,!0),W+=ue.substr(Me))}if(Re){if(Re.length>=3&&Re.charCodeAt(0)===47&&Re.charCodeAt(2)===58){const Me=Re.charCodeAt(1);Me>=65&&Me<=90&&(Re=`/${String.fromCharCode(Me+32)}:${Re.substr(3)}`)}else if(Re.length>=2&&Re.charCodeAt(1)===58){const Me=Re.charCodeAt(0);Me>=65&&Me<=90&&(Re=`${String.fromCharCode(Me+32)}:${Re.substr(2)}`)}W+=T(Re,!0,!1)}return Be&&(W+="?",W+=T(Be,!1,!1)),it&&(W+="#",W+=v?it:l0e(it,!1,!1)),W}function c0e(g){try{return decodeURIComponent(g)}catch{return g.length>3?g.substr(0,3)+c0e(g.substr(3)):g}}const u0e=/(%[0-9A-Za-z][0-9A-Za-z])+/g;function GB(g){return g.match(u0e)?g.replace(u0e,v=>c0e(v)):g}var Mx;(function(g){g.inMemory="inmemory",g.vscode="vscode",g.internal="private",g.walkThrough="walkThrough",g.walkThroughSnippet="walkThroughSnippet",g.http="http",g.https="https",g.file="file",g.mailto="mailto",g.untitled="untitled",g.data="data",g.command="command",g.vscodeRemote="vscode-remote",g.vscodeRemoteResource="vscode-remote-resource",g.vscodeManagedRemoteResource="vscode-managed-remote-resource",g.vscodeUserData="vscode-userdata",g.vscodeCustomEditor="vscode-custom-editor",g.vscodeNotebookCell="vscode-notebook-cell",g.vscodeNotebookCellMetadata="vscode-notebook-cell-metadata",g.vscodeNotebookCellMetadataDiff="vscode-notebook-cell-metadata-diff",g.vscodeNotebookCellOutput="vscode-notebook-cell-output",g.vscodeNotebookCellOutputDiff="vscode-notebook-cell-output-diff",g.vscodeNotebookMetadata="vscode-notebook-metadata",g.vscodeInteractiveInput="vscode-interactive-input",g.vscodeSettings="vscode-settings",g.vscodeWorkspaceTrust="vscode-workspace-trust",g.vscodeTerminal="vscode-terminal",g.vscodeChatCodeBlock="vscode-chat-code-block",g.vscodeChatCodeCompareBlock="vscode-chat-code-compare-block",g.vscodeChatSesssion="vscode-chat-editor",g.webviewPanel="webview-panel",g.vscodeWebview="vscode-webview",g.extension="extension",g.vscodeFileResource="vscode-file",g.tmp="tmp",g.vsls="vsls",g.vscodeSourceControl="vscode-scm",g.commentsInput="comment",g.codeSetting="code-setting",g.outputChannel="output"})(Mx||(Mx={}));const P5e="tkn";class M5e{constructor(){this._hosts=Object.create(null),this._ports=Object.create(null),this._connectionTokens=Object.create(null),this._preferredWebSchema="http",this._delegate=null,this._serverRootPath="/"}setPreferredWebSchema(v){this._preferredWebSchema=v}get _remoteResourcesPath(){return Kh.join(this._serverRootPath,Mx.vscodeRemoteResource)}rewrite(v){if(this._delegate)try{return this._delegate(v)}catch(Be){return _6(Be),v}const T=v.authority;let W=this._hosts[T];W&&W.indexOf(":")!==-1&&W.indexOf("[")===-1&&(W=`[${W}]`);const X=this._ports[T],ue=this._connectionTokens[T];let Re=`path=${encodeURIComponent(v.path)}`;return typeof ue=="string"&&(Re+=`&${P5e}=${encodeURIComponent(ue)}`),xv.from({scheme:Z7e?this._preferredWebSchema:Mx.vscodeRemoteResource,authority:`${W}:${X}`,path:this._remoteResourcesPath,query:Re})}}const L5e=new M5e,k5e="vscode-app",R6=class R6{asBrowserUri(v){const T=this.toUri(v);return this.uriToBrowserUri(T)}uriToBrowserUri(v){return v.scheme===Mx.vscodeRemote?L5e.rewrite(v):v.scheme===Mx.file&&(Q7e||e5e===`${Mx.vscodeFileResource}://${R6.FALLBACK_AUTHORITY}`)?v.with({scheme:Mx.vscodeFileResource,authority:v.authority||R6.FALLBACK_AUTHORITY,query:null,fragment:null}):v}toUri(v,T){if(xv.isUri(v))return v;if(globalThis._VSCODE_FILE_ROOT){const W=globalThis._VSCODE_FILE_ROOT;if(/^\w[\w\d+.-]*:\/\//.test(W))return xv.joinPath(xv.parse(W,!0),v);const X=S5e(W,v);return xv.file(X)}return xv.parse(T.toUrl(v))}};R6.FALLBACK_AUTHORITY=k5e;let $te=R6;const d0e=new $te;var p0e;(function(g){const v=new Map([["1",{"Cross-Origin-Opener-Policy":"same-origin"}],["2",{"Cross-Origin-Embedder-Policy":"require-corp"}],["3",{"Cross-Origin-Opener-Policy":"same-origin","Cross-Origin-Embedder-Policy":"require-corp"}]]);g.CoopAndCoep=Object.freeze(v.get("3"));const T="vscode-coi";function W(ue){let Re;typeof ue=="string"?Re=new URL(ue).searchParams:ue instanceof URL?Re=ue.searchParams:xv.isUri(ue)&&(Re=new URL(ue.toString(!0)).searchParams);const Be=Re==null?void 0:Re.get(T);if(Be)return v.get(Be)}g.getHeadersFromQuery=W;function X(ue,Re,Be){if(!globalThis.crossOriginIsolated)return;const it=Re&&Be?"3":Be?"2":"1";ue instanceof URLSearchParams?ue.set(T,it):ue[T]=it}g.addSearchParam=X})(p0e||(p0e={}));const Qte="default",w5e="$initialize";class O5e{constructor(v,T,W,X,ue){this.vsWorker=v,this.req=T,this.channel=W,this.method=X,this.args=ue,this.type=0}}class f0e{constructor(v,T,W,X){this.vsWorker=v,this.seq=T,this.res=W,this.err=X,this.type=1}}class W5e{constructor(v,T,W,X,ue){this.vsWorker=v,this.req=T,this.channel=W,this.eventName=X,this.arg=ue,this.type=2}}class F5e{constructor(v,T,W){this.vsWorker=v,this.req=T,this.event=W,this.type=3}}class z5e{constructor(v,T){this.vsWorker=v,this.req=T,this.type=4}}class B5e{constructor(v){this._workerId=-1,this._handler=v,this._lastSentReq=0,this._pendingReplies=Object.create(null),this._pendingEmitters=new Map,this._pendingEvents=new Map}setWorkerId(v){this._workerId=v}sendMessage(v,T,W){const X=String(++this._lastSentReq);return new Promise((ue,Re)=>{this._pendingReplies[X]={resolve:ue,reject:Re},this._send(new O5e(this._workerId,X,v,T,W))})}listen(v,T,W){let X=null;const ue=new Qb({onWillAddFirstListener:()=>{X=String(++this._lastSentReq),this._pendingEmitters.set(X,ue),this._send(new W5e(this._workerId,X,v,T,W))},onDidRemoveLastListener:()=>{this._pendingEmitters.delete(X),this._send(new z5e(this._workerId,X)),X=null}});return ue.event}handleMessage(v){!v||!v.vsWorker||this._workerId!==-1&&v.vsWorker!==this._workerId||this._handleMessage(v)}createProxyToRemoteChannel(v,T){const W={get:(X,ue)=>(typeof ue=="string"&&!X[ue]&&(_0e(ue)?X[ue]=Re=>this.listen(v,ue,Re):m0e(ue)?X[ue]=this.listen(v,ue,void 0):ue.charCodeAt(0)===36&&(X[ue]=async(...Re)=>(await(T==null?void 0:T()),this.sendMessage(v,ue,Re)))),X[ue])};return new Proxy(Object.create(null),W)}_handleMessage(v){switch(v.type){case 1:return this._handleReplyMessage(v);case 0:return this._handleRequestMessage(v);case 2:return this._handleSubscribeEventMessage(v);case 3:return this._handleEventMessage(v);case 4:return this._handleUnsubscribeEventMessage(v)}}_handleReplyMessage(v){if(!this._pendingReplies[v.seq]){console.warn("Got reply to unknown seq");return}const T=this._pendingReplies[v.seq];if(delete this._pendingReplies[v.seq],v.err){let W=v.err;v.err.$isError&&(W=new Error,W.name=v.err.name,W.message=v.err.message,W.stack=v.err.stack),T.reject(W);return}T.resolve(v.res)}_handleRequestMessage(v){const T=v.req;this._handler.handleMessage(v.channel,v.method,v.args).then(X=>{this._send(new f0e(this._workerId,T,X,void 0))},X=>{X.detail instanceof Error&&(X.detail=Kbe(X.detail)),this._send(new f0e(this._workerId,T,void 0,Kbe(X)))})}_handleSubscribeEventMessage(v){const T=v.req,W=this._handler.handleEvent(v.channel,v.eventName,v.arg)(X=>{this._send(new F5e(this._workerId,T,X))});this._pendingEvents.set(T,W)}_handleEventMessage(v){if(!this._pendingEmitters.has(v.req)){console.warn("Got event for unknown req");return}this._pendingEmitters.get(v.req).fire(v.event)}_handleUnsubscribeEventMessage(v){if(!this._pendingEvents.has(v.req)){console.warn("Got unsubscribe for unknown req");return}this._pendingEvents.get(v.req).dispose(),this._pendingEvents.delete(v.req)}_send(v){const T=[];if(v.type===0)for(let W=0;W<v.args.length;W++)v.args[W]instanceof ArrayBuffer&&T.push(v.args[W]);else v.type===1&&v.res instanceof ArrayBuffer&&T.push(v.res);this._handler.sendMessage(v,T)}}function m0e(g){return g[0]==="o"&&g[1]==="n"&&t0e(g.charCodeAt(2))}function _0e(g){return/^onDynamic/.test(g)&&t0e(g.charCodeAt(9))}class G5e{constructor(v,T){this._localChannels=new Map,this._remoteChannels=new Map,this._requestHandlerFactory=T,this._requestHandler=null,this._protocol=new B5e({sendMessage:(W,X)=>{v(W,X)},handleMessage:(W,X,ue)=>this._handleMessage(W,X,ue),handleEvent:(W,X,ue)=>this._handleEvent(W,X,ue)})}onmessage(v){this._protocol.handleMessage(v)}_handleMessage(v,T,W){if(v===Qte&&T===w5e)return this.initialize(W[0],W[1],W[2]);const X=v===Qte?this._requestHandler:this._localChannels.get(v);if(!X)return Promise.reject(new Error(`Missing channel ${v} on worker thread`));if(typeof X[T]!="function")return Promise.reject(new Error(`Missing method ${T} on worker thread channel ${v}`));try{return Promise.resolve(X[T].apply(X,W))}catch(ue){return Promise.reject(ue)}}_handleEvent(v,T,W){const X=v===Qte?this._requestHandler:this._localChannels.get(v);if(!X)throw new Error(`Missing channel ${v} on worker thread`);if(_0e(T)){const ue=X[T].call(X,W);if(typeof ue!="function")throw new Error(`Missing dynamic event ${T} on request handler.`);return ue}if(m0e(T)){const ue=X[T];if(typeof ue!="function")throw new Error(`Missing event ${T} on request handler.`);return ue}throw new Error(`Malformed event name ${T}`)}getChannel(v){if(!this._remoteChannels.has(v)){const T=this._protocol.createProxyToRemoteChannel(v);this._remoteChannels.set(v,T)}return this._remoteChannels.get(v)}async initialize(v,T,W){if(this._protocol.setWorkerId(v),this._requestHandlerFactory){this._requestHandler=this._requestHandlerFactory(this);return}return T&&(typeof T.baseUrl<"u"&&delete T.baseUrl,typeof T.paths<"u"&&typeof T.paths.vs<"u"&&delete T.paths.vs,typeof T.trustedTypesPolicy<"u"&&delete T.trustedTypesPolicy,T.catchError=!0,globalThis.require.config(T)),import(`${d0e.asBrowserUri(`${W}.js`).toString(!0)}`).then(ue=>{if(this._requestHandler=ue.create(this),!this._requestHandler)throw new Error("No RequestHandler!")})}}class Lx{constructor(v,T,W,X){this.originalStart=v,this.originalLength=T,this.modifiedStart=W,this.modifiedLength=X}getOriginalEnd(){return this.originalStart+this.originalLength}getModifiedEnd(){return this.modifiedStart+this.modifiedLength}}function h0e(g,v){return(v<<5)-v+g|0}function V5e(g,v){v=h0e(149417,v);for(let T=0,W=g.length;T<W;T++)v=h0e(g.charCodeAt(T),v);return v}function Zte(g,v,T=32){const W=T-v,X=~((1<<W)-1);return(g<<v|(X&g)>>>W)>>>0}function g0e(g,v=0,T=g.byteLength,W=0){for(let X=0;X<T;X++)g[v+X]=W}function j5e(g,v,T="0"){for(;g.length<v;)g=T+g;return g}function b6(g,v=32){return g instanceof ArrayBuffer?Array.from(new Uint8Array(g)).map(T=>T.toString(16).padStart(2,"0")).join(""):j5e((g>>>0).toString(16),v/4)}const rG=class rG{constructor(){this._h0=1732584193,this._h1=4023233417,this._h2=2562383102,this._h3=271733878,this._h4=3285377520,this._buff=new Uint8Array(67),this._buffDV=new DataView(this._buff.buffer),this._buffLen=0,this._totalLen=0,this._leftoverHighSurrogate=0,this._finished=!1}update(v){const T=v.length;if(T===0)return;const W=this._buff;let X=this._buffLen,ue=this._leftoverHighSurrogate,Re,Be;for(ue!==0?(Re=ue,Be=-1,ue=0):(Re=v.charCodeAt(0),Be=0);;){let it=Re;if(FB(Re))if(Be+1<T){const Me=v.charCodeAt(Be+1);qte(Me)?(Be++,it=n0e(Re,Me)):it=65533}else{ue=Re;break}else qte(Re)&&(it=65533);if(X=this._push(W,X,it),Be++,Be<T)Re=v.charCodeAt(Be);else break}this._buffLen=X,this._leftoverHighSurrogate=ue}_push(v,T,W){return W<128?v[T++]=W:W<2048?(v[T++]=192|(W&1984)>>>6,v[T++]=128|(W&63)>>>0):W<65536?(v[T++]=224|(W&61440)>>>12,v[T++]=128|(W&4032)>>>6,v[T++]=128|(W&63)>>>0):(v[T++]=240|(W&1835008)>>>18,v[T++]=128|(W&258048)>>>12,v[T++]=128|(W&4032)>>>6,v[T++]=128|(W&63)>>>0),T>=64&&(this._step(),T-=64,this._totalLen+=64,v[0]=v[64],v[1]=v[65],v[2]=v[66]),T}digest(){return this._finished||(this._finished=!0,this._leftoverHighSurrogate&&(this._leftoverHighSurrogate=0,this._buffLen=this._push(this._buff,this._buffLen,65533)),this._totalLen+=this._buffLen,this._wrapUp()),b6(this._h0)+b6(this._h1)+b6(this._h2)+b6(this._h3)+b6(this._h4)}_wrapUp(){this._buff[this._buffLen++]=128,g0e(this._buff,this._buffLen),this._buffLen>56&&(this._step(),g0e(this._buff));const v=8*this._totalLen;this._buffDV.setUint32(56,Math.floor(v/4294967296),!1),this._buffDV.setUint32(60,v%4294967296,!1),this._step()}_step(){const v=rG._bigBlock32,T=this._buffDV;for(let Bt=0;Bt<64;Bt+=4)v.setUint32(Bt,T.getUint32(Bt,!1),!1);for(let Bt=64;Bt<320;Bt+=4)v.setUint32(Bt,Zte(v.getUint32(Bt-12,!1)^v.getUint32(Bt-32,!1)^v.getUint32(Bt-56,!1)^v.getUint32(Bt-64,!1),1),!1);let W=this._h0,X=this._h1,ue=this._h2,Re=this._h3,Be=this._h4,it,Me,Ue;for(let Bt=0;Bt<80;Bt++)Bt<20?(it=X&ue|~X&Re,Me=1518500249):Bt<40?(it=X^ue^Re,Me=1859775393):Bt<60?(it=X&ue|X&Re|ue&Re,Me=2400959708):(it=X^ue^Re,Me=3395469782),Ue=Zte(W,5)+it+Be+Me+v.getUint32(Bt*4,!1)&4294967295,Be=Re,Re=ue,ue=Zte(X,30),X=W,W=Ue;this._h0=this._h0+W&4294967295,this._h1=this._h1+X&4294967295,this._h2=this._h2+ue&4294967295,this._h3=this._h3+Re&4294967295,this._h4=this._h4+Be&4294967295}};rG._bigBlock32=new DataView(new ArrayBuffer(320));let v0e=rG;class y0e{constructor(v){this.source=v}getElements(){const v=this.source,T=new Int32Array(v.length);for(let W=0,X=v.length;W<X;W++)T[W]=v.charCodeAt(W);return T}}function U5e(g,v,T){return new kx(new y0e(g),new y0e(v)).ComputeDiff(T).changes}class TM{static Assert(v,T){if(!v)throw new Error(T)}}class AM{static Copy(v,T,W,X,ue){for(let Re=0;Re<ue;Re++)W[X+Re]=v[T+Re]}static Copy2(v,T,W,X,ue){for(let Re=0;Re<ue;Re++)W[X+Re]=v[T+Re]}}class b0e{constructor(){this.m_changes=[],this.m_originalStart=1073741824,this.m_modifiedStart=1073741824,this.m_originalCount=0,this.m_modifiedCount=0}MarkNextChange(){(this.m_originalCount>0||this.m_modifiedCount>0)&&this.m_changes.push(new Lx(this.m_originalStart,this.m_originalCount,this.m_modifiedStart,this.m_modifiedCount)),this.m_originalCount=0,this.m_modifiedCount=0,this.m_originalStart=1073741824,this.m_modifiedStart=1073741824}AddOriginalElement(v,T){this.m_originalStart=Math.min(this.m_originalStart,v),this.m_modifiedStart=Math.min(this.m_modifiedStart,T),this.m_originalCount++}AddModifiedElement(v,T){this.m_originalStart=Math.min(this.m_originalStart,v),this.m_modifiedStart=Math.min(this.m_modifiedStart,T),this.m_modifiedCount++}getChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes}getReverseChanges(){return(this.m_originalCount>0||this.m_modifiedCount>0)&&this.MarkNextChange(),this.m_changes.reverse(),this.m_changes}}class kx{constructor(v,T,W=null){this.ContinueProcessingPredicate=W,this._originalSequence=v,this._modifiedSequence=T;const[X,ue,Re]=kx._getElements(v),[Be,it,Me]=kx._getElements(T);this._hasStrings=Re&&Me,this._originalStringElements=X,this._originalElementsOrHash=ue,this._modifiedStringElements=Be,this._modifiedElementsOrHash=it,this.m_forwardHistory=[],this.m_reverseHistory=[]}static _isStringArray(v){return v.length>0&&typeof v[0]=="string"}static _getElements(v){const T=v.getElements();if(kx._isStringArray(T)){const W=new Int32Array(T.length);for(let X=0,ue=T.length;X<ue;X++)W[X]=V5e(T[X],0);return[T,W,!0]}return T instanceof Int32Array?[[],T,!1]:[[],new Int32Array(T),!1]}ElementsAreEqual(v,T){return this._originalElementsOrHash[v]!==this._modifiedElementsOrHash[T]?!1:this._hasStrings?this._originalStringElements[v]===this._modifiedStringElements[T]:!0}ElementsAreStrictEqual(v,T){if(!this.ElementsAreEqual(v,T))return!1;const W=kx._getStrictElement(this._originalSequence,v),X=kx._getStrictElement(this._modifiedSequence,T);return W===X}static _getStrictElement(v,T){return typeof v.getStrictElement=="function"?v.getStrictElement(T):null}OriginalElementsAreEqual(v,T){return this._originalElementsOrHash[v]!==this._originalElementsOrHash[T]?!1:this._hasStrings?this._originalStringElements[v]===this._originalStringElements[T]:!0}ModifiedElementsAreEqual(v,T){return this._modifiedElementsOrHash[v]!==this._modifiedElementsOrHash[T]?!1:this._hasStrings?this._modifiedStringElements[v]===this._modifiedStringElements[T]:!0}ComputeDiff(v){return this._ComputeDiff(0,this._originalElementsOrHash.length-1,0,this._modifiedElementsOrHash.length-1,v)}_ComputeDiff(v,T,W,X,ue){const Re=[!1];let Be=this.ComputeDiffRecursive(v,T,W,X,Re);return ue&&(Be=this.PrettifyChanges(Be)),{quitEarly:Re[0],changes:Be}}ComputeDiffRecursive(v,T,W,X,ue){for(ue[0]=!1;v<=T&&W<=X&&this.ElementsAreEqual(v,W);)v++,W++;for(;T>=v&&X>=W&&this.ElementsAreEqual(T,X);)T--,X--;if(v>T||W>X){let Bt;return W<=X?(TM.Assert(v===T+1,"originalStart should only be one more than originalEnd"),Bt=[new Lx(v,0,W,X-W+1)]):v<=T?(TM.Assert(W===X+1,"modifiedStart should only be one more than modifiedEnd"),Bt=[new Lx(v,T-v+1,W,0)]):(TM.Assert(v===T+1,"originalStart should only be one more than originalEnd"),TM.Assert(W===X+1,"modifiedStart should only be one more than modifiedEnd"),Bt=[]),Bt}const Re=[0],Be=[0],it=this.ComputeRecursionPoint(v,T,W,X,Re,Be,ue),Me=Re[0],Ue=Be[0];if(it!==null)return it;if(!ue[0]){const Bt=this.ComputeDiffRecursive(v,Me,W,Ue,ue);let Ut=[];return ue[0]?Ut=[new Lx(Me+1,T-(Me+1)+1,Ue+1,X-(Ue+1)+1)]:Ut=this.ComputeDiffRecursive(Me+1,T,Ue+1,X,ue),this.ConcatenateChanges(Bt,Ut)}return[new Lx(v,T-v+1,W,X-W+1)]}WALKTRACE(v,T,W,X,ue,Re,Be,it,Me,Ue,Bt,Ut,dn,Pr,yi,co,Zn,An){let Oo=null,Gr=null,Bi=new b0e,Uo=T,Nr=W,Ca=dn[0]-co[0]-X,Sc=-1073741824,au=this.m_forwardHistory.length-1;do{const nr=Ca+v;nr===Uo||nr<Nr&&Me[nr-1]<Me[nr+1]?(Bt=Me[nr+1],Pr=Bt-Ca-X,Bt<Sc&&Bi.MarkNextChange(),Sc=Bt,Bi.AddModifiedElement(Bt+1,Pr),Ca=nr+1-v):(Bt=Me[nr-1]+1,Pr=Bt-Ca-X,Bt<Sc&&Bi.MarkNextChange(),Sc=Bt-1,Bi.AddOriginalElement(Bt,Pr+1),Ca=nr-1-v),au>=0&&(Me=this.m_forwardHistory[au],v=Me[0],Uo=1,Nr=Me.length-1)}while(--au>=-1);if(Oo=Bi.getReverseChanges(),An[0]){let nr=dn[0]+1,Xs=co[0]+1;if(Oo!==null&&Oo.length>0){const Vo=Oo[Oo.length-1];nr=Math.max(nr,Vo.getOriginalEnd()),Xs=Math.max(Xs,Vo.getModifiedEnd())}Gr=[new Lx(nr,Ut-nr+1,Xs,yi-Xs+1)]}else{Bi=new b0e,Uo=Re,Nr=Be,Ca=dn[0]-co[0]-it,Sc=1073741824,au=Zn?this.m_reverseHistory.length-1:this.m_reverseHistory.length-2;do{const nr=Ca+ue;nr===Uo||nr<Nr&&Ue[nr-1]>=Ue[nr+1]?(Bt=Ue[nr+1]-1,Pr=Bt-Ca-it,Bt>Sc&&Bi.MarkNextChange(),Sc=Bt+1,Bi.AddOriginalElement(Bt+1,Pr+1),Ca=nr+1-ue):(Bt=Ue[nr-1],Pr=Bt-Ca-it,Bt>Sc&&Bi.MarkNextChange(),Sc=Bt,Bi.AddModifiedElement(Bt+1,Pr+1),Ca=nr-1-ue),au>=0&&(Ue=this.m_reverseHistory[au],ue=Ue[0],Uo=1,Nr=Ue.length-1)}while(--au>=-1);Gr=Bi.getChanges()}return this.ConcatenateChanges(Oo,Gr)}ComputeRecursionPoint(v,T,W,X,ue,Re,Be){let it=0,Me=0,Ue=0,Bt=0,Ut=0,dn=0;v--,W--,ue[0]=0,Re[0]=0,this.m_forwardHistory=[],this.m_reverseHistory=[];const Pr=T-v+(X-W),yi=Pr+1,co=new Int32Array(yi),Zn=new Int32Array(yi),An=X-W,Oo=T-v,Gr=v-W,Bi=T-X,Nr=(Oo-An)%2===0;co[An]=v,Zn[Oo]=T,Be[0]=!1;for(let Ca=1;Ca<=Pr/2+1;Ca++){let Sc=0,au=0;Ue=this.ClipDiagonalBound(An-Ca,Ca,An,yi),Bt=this.ClipDiagonalBound(An+Ca,Ca,An,yi);for(let Xs=Ue;Xs<=Bt;Xs+=2){Xs===Ue||Xs<Bt&&co[Xs-1]<co[Xs+1]?it=co[Xs+1]:it=co[Xs-1]+1,Me=it-(Xs-An)-Gr;const Vo=it;for(;it<T&&Me<X&&this.ElementsAreEqual(it+1,Me+1);)it++,Me++;if(co[Xs]=it,it+Me>Sc+au&&(Sc=it,au=Me),!Nr&&Math.abs(Xs-Oo)<=Ca-1&&it>=Zn[Xs])return ue[0]=it,Re[0]=Me,Vo<=Zn[Xs]&&Ca<=1448?this.WALKTRACE(An,Ue,Bt,Gr,Oo,Ut,dn,Bi,co,Zn,it,T,ue,Me,X,Re,Nr,Be):null}const nr=(Sc-v+(au-W)-Ca)/2;if(this.ContinueProcessingPredicate!==null&&!this.ContinueProcessingPredicate(Sc,nr))return Be[0]=!0,ue[0]=Sc,Re[0]=au,nr>0&&Ca<=1448?this.WALKTRACE(An,Ue,Bt,Gr,Oo,Ut,dn,Bi,co,Zn,it,T,ue,Me,X,Re,Nr,Be):(v++,W++,[new Lx(v,T-v+1,W,X-W+1)]);Ut=this.ClipDiagonalBound(Oo-Ca,Ca,Oo,yi),dn=this.ClipDiagonalBound(Oo+Ca,Ca,Oo,yi);for(let Xs=Ut;Xs<=dn;Xs+=2){Xs===Ut||Xs<dn&&Zn[Xs-1]>=Zn[Xs+1]?it=Zn[Xs+1]-1:it=Zn[Xs-1],Me=it-(Xs-Oo)-Bi;const Vo=it;for(;it>v&&Me>W&&this.ElementsAreEqual(it,Me);)it--,Me--;if(Zn[Xs]=it,Nr&&Math.abs(Xs-An)<=Ca&&it<=co[Xs])return ue[0]=it,Re[0]=Me,Vo>=co[Xs]&&Ca<=1448?this.WALKTRACE(An,Ue,Bt,Gr,Oo,Ut,dn,Bi,co,Zn,it,T,ue,Me,X,Re,Nr,Be):null}if(Ca<=1447){let Xs=new Int32Array(Bt-Ue+2);Xs[0]=An-Ue+1,AM.Copy2(co,Ue,Xs,1,Bt-Ue+1),this.m_forwardHistory.push(Xs),Xs=new Int32Array(dn-Ut+2),Xs[0]=Oo-Ut+1,AM.Copy2(Zn,Ut,Xs,1,dn-Ut+1),this.m_reverseHistory.push(Xs)}}return this.WALKTRACE(An,Ue,Bt,Gr,Oo,Ut,dn,Bi,co,Zn,it,T,ue,Me,X,Re,Nr,Be)}PrettifyChanges(v){for(let T=0;T<v.length;T++){const W=v[T],X=T<v.length-1?v[T+1].originalStart:this._originalElementsOrHash.length,ue=T<v.length-1?v[T+1].modifiedStart:this._modifiedElementsOrHash.length,Re=W.originalLength>0,Be=W.modifiedLength>0;for(;W.originalStart+W.originalLength<X&&W.modifiedStart+W.modifiedLength<ue&&(!Re||this.OriginalElementsAreEqual(W.originalStart,W.originalStart+W.originalLength))&&(!Be||this.ModifiedElementsAreEqual(W.modifiedStart,W.modifiedStart+W.modifiedLength));){const Me=this.ElementsAreStrictEqual(W.originalStart,W.modifiedStart);if(this.ElementsAreStrictEqual(W.originalStart+W.originalLength,W.modifiedStart+W.modifiedLength)&&!Me)break;W.originalStart++,W.modifiedStart++}const it=[null];if(T<v.length-1&&this.ChangesOverlap(v[T],v[T+1],it)){v[T]=it[0],v.splice(T+1,1),T--;continue}}for(let T=v.length-1;T>=0;T--){const W=v[T];let X=0,ue=0;if(T>0){const Bt=v[T-1];X=Bt.originalStart+Bt.originalLength,ue=Bt.modifiedStart+Bt.modifiedLength}const Re=W.originalLength>0,Be=W.modifiedLength>0;let it=0,Me=this._boundaryScore(W.originalStart,W.originalLength,W.modifiedStart,W.modifiedLength);for(let Bt=1;;Bt++){const Ut=W.originalStart-Bt,dn=W.modifiedStart-Bt;if(Ut<X||dn<ue||Re&&!this.OriginalElementsAreEqual(Ut,Ut+W.originalLength)||Be&&!this.ModifiedElementsAreEqual(dn,dn+W.modifiedLength))break;const yi=(Ut===X&&dn===ue?5:0)+this._boundaryScore(Ut,W.originalLength,dn,W.modifiedLength);yi>Me&&(Me=yi,it=Bt)}W.originalStart-=it,W.modifiedStart-=it;const Ue=[null];if(T>0&&this.ChangesOverlap(v[T-1],v[T],Ue)){v[T-1]=Ue[0],v.splice(T,1),T++;continue}}if(this._hasStrings)for(let T=1,W=v.length;T<W;T++){const X=v[T-1],ue=v[T],Re=ue.originalStart-X.originalStart-X.originalLength,Be=X.originalStart,it=ue.originalStart+ue.originalLength,Me=it-Be,Ue=X.modifiedStart,Bt=ue.modifiedStart+ue.modifiedLength,Ut=Bt-Ue;if(Re<5&&Me<20&&Ut<20){const dn=this._findBetterContiguousSequence(Be,Me,Ue,Ut,Re);if(dn){const[Pr,yi]=dn;(Pr!==X.originalStart+X.originalLength||yi!==X.modifiedStart+X.modifiedLength)&&(X.originalLength=Pr-X.originalStart,X.modifiedLength=yi-X.modifiedStart,ue.originalStart=Pr+Re,ue.modifiedStart=yi+Re,ue.originalLength=it-ue.originalStart,ue.modifiedLength=Bt-ue.modifiedStart)}}}return v}_findBetterContiguousSequence(v,T,W,X,ue){if(T<ue||X<ue)return null;const Re=v+T-ue+1,Be=W+X-ue+1;let it=0,Me=0,Ue=0;for(let Bt=v;Bt<Re;Bt++)for(let Ut=W;Ut<Be;Ut++){const dn=this._contiguousSequenceScore(Bt,Ut,ue);dn>0&&dn>it&&(it=dn,Me=Bt,Ue=Ut)}return it>0?[Me,Ue]:null}_contiguousSequenceScore(v,T,W){let X=0;for(let ue=0;ue<W;ue++){if(!this.ElementsAreEqual(v+ue,T+ue))return 0;X+=this._originalStringElements[v+ue].length}return X}_OriginalIsBoundary(v){return v<=0||v>=this._originalElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._originalStringElements[v])}_OriginalRegionIsBoundary(v,T){if(this._OriginalIsBoundary(v)||this._OriginalIsBoundary(v-1))return!0;if(T>0){const W=v+T;if(this._OriginalIsBoundary(W-1)||this._OriginalIsBoundary(W))return!0}return!1}_ModifiedIsBoundary(v){return v<=0||v>=this._modifiedElementsOrHash.length-1?!0:this._hasStrings&&/^\s*$/.test(this._modifiedStringElements[v])}_ModifiedRegionIsBoundary(v,T){if(this._ModifiedIsBoundary(v)||this._ModifiedIsBoundary(v-1))return!0;if(T>0){const W=v+T;if(this._ModifiedIsBoundary(W-1)||this._ModifiedIsBoundary(W))return!0}return!1}_boundaryScore(v,T,W,X){const ue=this._OriginalRegionIsBoundary(v,T)?1:0,Re=this._ModifiedRegionIsBoundary(W,X)?1:0;return ue+Re}ConcatenateChanges(v,T){const W=[];if(v.length===0||T.length===0)return T.length>0?T:v;if(this.ChangesOverlap(v[v.length-1],T[0],W)){const X=new Array(v.length+T.length-1);return AM.Copy(v,0,X,0,v.length-1),X[v.length-1]=W[0],AM.Copy(T,1,X,v.length,T.length-1),X}else{const X=new Array(v.length+T.length);return AM.Copy(v,0,X,0,v.length),AM.Copy(T,0,X,v.length,T.length),X}}ChangesOverlap(v,T,W){if(TM.Assert(v.originalStart<=T.originalStart,"Left change is not less than or equal to right change"),TM.Assert(v.modifiedStart<=T.modifiedStart,"Left change is not less than or equal to right change"),v.originalStart+v.originalLength>=T.originalStart||v.modifiedStart+v.modifiedLength>=T.modifiedStart){const X=v.originalStart;let ue=v.originalLength;const Re=v.modifiedStart;let Be=v.modifiedLength;return v.originalStart+v.originalLength>=T.originalStart&&(ue=T.originalStart+T.originalLength-v.originalStart),v.modifiedStart+v.modifiedLength>=T.modifiedStart&&(Be=T.modifiedStart+T.modifiedLength-v.modifiedStart),W[0]=new Lx(X,ue,Re,Be),!0}else return W[0]=null,!1}ClipDiagonalBound(v,T,W,X){if(v>=0&&v<X)return v;const ue=W,Re=X-W-1,Be=T%2===0;if(v<0){const it=ue%2===0;return Be===it?0:1}else{const it=Re%2===0;return Be===it?X-1:X-2}}}class rd{constructor(v,T){this.lineNumber=v,this.column=T}with(v=this.lineNumber,T=this.column){return v===this.lineNumber&&T===this.column?this:new rd(v,T)}delta(v=0,T=0){return this.with(this.lineNumber+v,this.column+T)}equals(v){return rd.equals(this,v)}static equals(v,T){return!v&&!T?!0:!!v&&!!T&&v.lineNumber===T.lineNumber&&v.column===T.column}isBefore(v){return rd.isBefore(this,v)}static isBefore(v,T){return v.lineNumber<T.lineNumber?!0:T.lineNumber<v.lineNumber?!1:v.column<T.column}isBeforeOrEqual(v){return rd.isBeforeOrEqual(this,v)}static isBeforeOrEqual(v,T){return v.lineNumber<T.lineNumber?!0:T.lineNumber<v.lineNumber?!1:v.column<=T.column}static compare(v,T){const W=v.lineNumber|0,X=T.lineNumber|0;if(W===X){const ue=v.column|0,Re=T.column|0;return ue-Re}return W-X}clone(){return new rd(this.lineNumber,this.column)}toString(){return"("+this.lineNumber+","+this.column+")"}static lift(v){return new rd(v.lineNumber,v.column)}static isIPosition(v){return v&&typeof v.lineNumber=="number"&&typeof v.column=="number"}toJSON(){return{lineNumber:this.lineNumber,column:this.column}}}class ys{constructor(v,T,W,X){v>W||v===W&&T>X?(this.startLineNumber=W,this.startColumn=X,this.endLineNumber=v,this.endColumn=T):(this.startLineNumber=v,this.startColumn=T,this.endLineNumber=W,this.endColumn=X)}isEmpty(){return ys.isEmpty(this)}static isEmpty(v){return v.startLineNumber===v.endLineNumber&&v.startColumn===v.endColumn}containsPosition(v){return ys.containsPosition(this,v)}static containsPosition(v,T){return!(T.lineNumber<v.startLineNumber||T.lineNumber>v.endLineNumber||T.lineNumber===v.startLineNumber&&T.column<v.startColumn||T.lineNumber===v.endLineNumber&&T.column>v.endColumn)}static strictContainsPosition(v,T){return!(T.lineNumber<v.startLineNumber||T.lineNumber>v.endLineNumber||T.lineNumber===v.startLineNumber&&T.column<=v.startColumn||T.lineNumber===v.endLineNumber&&T.column>=v.endColumn)}containsRange(v){return ys.containsRange(this,v)}static containsRange(v,T){return!(T.startLineNumber<v.startLineNumber||T.endLineNumber<v.startLineNumber||T.startLineNumber>v.endLineNumber||T.endLineNumber>v.endLineNumber||T.startLineNumber===v.startLineNumber&&T.startColumn<v.startColumn||T.endLineNumber===v.endLineNumber&&T.endColumn>v.endColumn)}strictContainsRange(v){return ys.strictContainsRange(this,v)}static strictContainsRange(v,T){return!(T.startLineNumber<v.startLineNumber||T.endLineNumber<v.startLineNumber||T.startLineNumber>v.endLineNumber||T.endLineNumber>v.endLineNumber||T.startLineNumber===v.startLineNumber&&T.startColumn<=v.startColumn||T.endLineNumber===v.endLineNumber&&T.endColumn>=v.endColumn)}plusRange(v){return ys.plusRange(this,v)}static plusRange(v,T){let W,X,ue,Re;return T.startLineNumber<v.startLineNumber?(W=T.startLineNumber,X=T.startColumn):T.startLineNumber===v.startLineNumber?(W=T.startLineNumber,X=Math.min(T.startColumn,v.startColumn)):(W=v.startLineNumber,X=v.startColumn),T.endLineNumber>v.endLineNumber?(ue=T.endLineNumber,Re=T.endColumn):T.endLineNumber===v.endLineNumber?(ue=T.endLineNumber,Re=Math.max(T.endColumn,v.endColumn)):(ue=v.endLineNumber,Re=v.endColumn),new ys(W,X,ue,Re)}intersectRanges(v){return ys.intersectRanges(this,v)}static intersectRanges(v,T){let W=v.startLineNumber,X=v.startColumn,ue=v.endLineNumber,Re=v.endColumn;const Be=T.startLineNumber,it=T.startColumn,Me=T.endLineNumber,Ue=T.endColumn;return W<Be?(W=Be,X=it):W===Be&&(X=Math.max(X,it)),ue>Me?(ue=Me,Re=Ue):ue===Me&&(Re=Math.min(Re,Ue)),W>ue||W===ue&&X>Re?null:new ys(W,X,ue,Re)}equalsRange(v){return ys.equalsRange(this,v)}static equalsRange(v,T){return!v&&!T?!0:!!v&&!!T&&v.startLineNumber===T.startLineNumber&&v.startColumn===T.startColumn&&v.endLineNumber===T.endLineNumber&&v.endColumn===T.endColumn}getEndPosition(){return ys.getEndPosition(this)}static getEndPosition(v){return new rd(v.endLineNumber,v.endColumn)}getStartPosition(){return ys.getStartPosition(this)}static getStartPosition(v){return new rd(v.startLineNumber,v.startColumn)}toString(){return"["+this.startLineNumber+","+this.startColumn+" -> "+this.endLineNumber+","+this.endColumn+"]"}setEndPosition(v,T){return new ys(this.startLineNumber,this.startColumn,v,T)}setStartPosition(v,T){return new ys(v,T,this.endLineNumber,this.endColumn)}collapseToStart(){return ys.collapseToStart(this)}static collapseToStart(v){return new ys(v.startLineNumber,v.startColumn,v.startLineNumber,v.startColumn)}collapseToEnd(){return ys.collapseToEnd(this)}static collapseToEnd(v){return new ys(v.endLineNumber,v.endColumn,v.endLineNumber,v.endColumn)}delta(v){return new ys(this.startLineNumber+v,this.startColumn,this.endLineNumber+v,this.endColumn)}static fromPositions(v,T=v){return new ys(v.lineNumber,v.column,T.lineNumber,T.column)}static lift(v){return v?new ys(v.startLineNumber,v.startColumn,v.endLineNumber,v.endColumn):null}static isIRange(v){return v&&typeof v.startLineNumber=="number"&&typeof v.startColumn=="number"&&typeof v.endLineNumber=="number"&&typeof v.endColumn=="number"}static areIntersectingOrTouching(v,T){return!(v.endLineNumber<T.startLineNumber||v.endLineNumber===T.startLineNumber&&v.endColumn<T.startColumn||T.endLineNumber<v.startLineNumber||T.endLineNumber===v.startLineNumber&&T.endColumn<v.startColumn)}static areIntersecting(v,T){return!(v.endLineNumber<T.startLineNumber||v.endLineNumber===T.startLineNumber&&v.endColumn<=T.startColumn||T.endLineNumber<v.startLineNumber||T.endLineNumber===v.startLineNumber&&T.endColumn<=v.startColumn)}static compareRangesUsingStarts(v,T){if(v&&T){const ue=v.startLineNumber|0,Re=T.startLineNumber|0;if(ue===Re){const Be=v.startColumn|0,it=T.startColumn|0;if(Be===it){const Me=v.endLineNumber|0,Ue=T.endLineNumber|0;if(Me===Ue){const Bt=v.endColumn|0,Ut=T.endColumn|0;return Bt-Ut}return Me-Ue}return Be-it}return ue-Re}return(v?1:0)-(T?1:0)}static compareRangesUsingEnds(v,T){return v.endLineNumber===T.endLineNumber?v.endColumn===T.endColumn?v.startLineNumber===T.startLineNumber?v.startColumn-T.startColumn:v.startLineNumber-T.startLineNumber:v.endColumn-T.endColumn:v.endLineNumber-T.endLineNumber}static spansMultipleLines(v){return v.endLineNumber>v.startLineNumber}toJSON(){return this}}function E0e(g){return g<0?0:g>255?255:g|0}function IM(g){return g<0?0:g>4294967295?4294967295:g|0}class ene{constructor(v){const T=E0e(v);this._defaultValue=T,this._asciiMap=ene._createAsciiMap(T),this._map=new Map}static _createAsciiMap(v){const T=new Uint8Array(256);return T.fill(v),T}set(v,T){const W=E0e(T);v>=0&&v<256?this._asciiMap[v]=W:this._map.set(v,W)}get(v){return v>=0&&v<256?this._asciiMap[v]:this._map.get(v)||this._defaultValue}clear(){this._asciiMap.fill(this._defaultValue),this._map.clear()}}class H5e{constructor(v,T,W){const X=new Uint8Array(v*T);for(let ue=0,Re=v*T;ue<Re;ue++)X[ue]=W;this._data=X,this.rows=v,this.cols=T}get(v,T){return this._data[v*this.cols+T]}set(v,T,W){this._data[v*this.cols+T]=W}}class q5e{constructor(v){let T=0,W=0;for(let ue=0,Re=v.length;ue<Re;ue++){const[Be,it,Me]=v[ue];it>T&&(T=it),Be>W&&(W=Be),Me>W&&(W=Me)}T++,W++;const X=new H5e(W,T,0);for(let ue=0,Re=v.length;ue<Re;ue++){const[Be,it,Me]=v[ue];X.set(Be,it,Me)}this._states=X,this._maxCharCode=T}nextState(v,T){return T<0||T>=this._maxCharCode?0:this._states.get(v,T)}}let tne=null;function J5e(){return tne===null&&(tne=new q5e([[1,104,2],[1,72,2],[1,102,6],[1,70,6],[2,116,3],[2,84,3],[3,116,4],[3,84,4],[4,112,5],[4,80,5],[5,115,9],[5,83,9],[5,58,10],[6,105,7],[6,73,7],[7,108,8],[7,76,8],[8,101,9],[8,69,9],[9,58,10],[10,47,11],[11,47,12]])),tne}let E6=null;function K5e(){if(E6===null){E6=new ene(0);const g=` <>'"、。。、,.:;‘〈「『〔([{「」}])〕』」〉’`~…`;for(let T=0;T<g.length;T++)E6.set(g.charCodeAt(T),1);const v=".,;:";for(let T=0;T<v.length;T++)E6.set(v.charCodeAt(T),2)}return E6}class VB{static _createLink(v,T,W,X,ue){let Re=ue-1;do{const Be=T.charCodeAt(Re);if(v.get(Be)!==2)break;Re--}while(Re>X);if(X>0){const Be=T.charCodeAt(X-1),it=T.charCodeAt(Re);(Be===40&&it===41||Be===91&&it===93||Be===123&&it===125)&&Re--}return{range:{startLineNumber:W,startColumn:X+1,endLineNumber:W,endColumn:Re+2},url:T.substring(X,Re+1)}}static computeLinks(v,T=J5e()){const W=K5e(),X=[];for(let ue=1,Re=v.getLineCount();ue<=Re;ue++){const Be=v.getLineContent(ue),it=Be.length;let Me=0,Ue=0,Bt=0,Ut=1,dn=!1,Pr=!1,yi=!1,co=!1;for(;Me<it;){let Zn=!1;const An=Be.charCodeAt(Me);if(Ut===13){let Oo;switch(An){case 40:dn=!0,Oo=0;break;case 41:Oo=dn?0:1;break;case 91:yi=!0,Pr=!0,Oo=0;break;case 93:yi=!1,Oo=Pr?0:1;break;case 123:co=!0,Oo=0;break;case 125:Oo=co?0:1;break;case 39:case 34:case 96:Bt===An?Oo=1:Bt===39||Bt===34||Bt===96?Oo=0:Oo=1;break;case 42:Oo=Bt===42?1:0;break;case 124:Oo=Bt===124?1:0;break;case 32:Oo=yi?0:1;break;default:Oo=W.get(An)}Oo===1&&(X.push(VB._createLink(W,Be,ue,Ue,Me)),Zn=!0)}else if(Ut===12){let Oo;An===91?(Pr=!0,Oo=0):Oo=W.get(An),Oo===1?Zn=!0:Ut=13}else Ut=T.nextState(Ut,An),Ut===0&&(Zn=!0);Zn&&(Ut=1,dn=!1,Pr=!1,co=!1,Ue=Me+1,Bt=An),Me++}Ut===13&&X.push(VB._createLink(W,Be,ue,Ue,it))}return X}}function X5e(g){return!g||typeof g.getLineCount!="function"||typeof g.getLineContent!="function"?[]:VB.computeLinks(g)}const iG=class iG{constructor(){this._defaultValueSet=[["true","false"],["True","False"],["Private","Public","Friend","ReadOnly","Partial","Protected","WriteOnly"],["public","protected","private"]]}navigateValueSet(v,T,W,X,ue){if(v&&T){const Re=this.doNavigateValueSet(T,ue);if(Re)return{range:v,value:Re}}if(W&&X){const Re=this.doNavigateValueSet(X,ue);if(Re)return{range:W,value:Re}}return null}doNavigateValueSet(v,T){const W=this.numberReplace(v,T);return W!==null?W:this.textReplace(v,T)}numberReplace(v,T){const W=Math.pow(10,v.length-(v.lastIndexOf(".")+1));let X=Number(v);const ue=parseFloat(v);return!isNaN(X)&&!isNaN(ue)&&X===ue?X===0&&!T?null:(X=Math.floor(X*W),X+=T?W:-W,String(X/W)):null}textReplace(v,T){return this.valueSetsReplace(this._defaultValueSet,v,T)}valueSetsReplace(v,T,W){let X=null;for(let ue=0,Re=v.length;X===null&&ue<Re;ue++)X=this.valueSetReplace(v[ue],T,W);return X}valueSetReplace(v,T,W){let X=v.indexOf(T);return X>=0?(X+=W?1:-1,X<0?X=v.length-1:X%=v.length,v[X]):null}};iG.INSTANCE=new iG;let nne=iG;const S0e=Object.freeze(function(g,v){const T=setTimeout(g.bind(v),0);return{dispose(){clearTimeout(T)}}});var jB;(function(g){function v(T){return T===g.None||T===g.Cancelled||T instanceof UB?!0:!T||typeof T!="object"?!1:typeof T.isCancellationRequested=="boolean"&&typeof T.onCancellationRequested=="function"}g.isCancellationToken=v,g.None=Object.freeze({isCancellationRequested:!1,onCancellationRequested:OB.None}),g.Cancelled=Object.freeze({isCancellationRequested:!0,onCancellationRequested:S0e})})(jB||(jB={}));class UB{constructor(){this._isCancelled=!1,this._emitter=null}cancel(){this._isCancelled||(this._isCancelled=!0,this._emitter&&(this._emitter.fire(void 0),this.dispose()))}get isCancellationRequested(){return this._isCancelled}get onCancellationRequested(){return this._isCancelled?S0e:(this._emitter||(this._emitter=new Qb),this._emitter.event)}dispose(){this._emitter&&(this._emitter.dispose(),this._emitter=null)}}class Y5e{constructor(v){this._token=void 0,this._parentListener=void 0,this._parentListener=v&&v.onCancellationRequested(this.cancel,this)}get token(){return this._token||(this._token=new UB),this._token}cancel(){this._token?this._token instanceof UB&&this._token.cancel():this._token=jB.Cancelled}dispose(v=!1){var T;v&&this.cancel(),(T=this._parentListener)==null||T.dispose(),this._token?this._token instanceof UB&&this._token.dispose():this._token=jB.None}}class rne{constructor(){this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(v,T){this._keyCodeToStr[v]=T,this._strToKeyCode[T.toLowerCase()]=v}keyCodeToStr(v){return this._keyCodeToStr[v]}strToKeyCode(v){return this._strToKeyCode[v.toLowerCase()]||0}}const HB=new rne,ine=new rne,one=new rne,$5e=new Array(230),Q5e=Object.create(null),Z5e=Object.create(null);(function(){const g="",v=[[1,0,"None",0,"unknown",0,"VK_UNKNOWN",g,g],[1,1,"Hyper",0,g,0,g,g,g],[1,2,"Super",0,g,0,g,g,g],[1,3,"Fn",0,g,0,g,g,g],[1,4,"FnLock",0,g,0,g,g,g],[1,5,"Suspend",0,g,0,g,g,g],[1,6,"Resume",0,g,0,g,g,g],[1,7,"Turbo",0,g,0,g,g,g],[1,8,"Sleep",0,g,0,"VK_SLEEP",g,g],[1,9,"WakeUp",0,g,0,g,g,g],[0,10,"KeyA",31,"A",65,"VK_A",g,g],[0,11,"KeyB",32,"B",66,"VK_B",g,g],[0,12,"KeyC",33,"C",67,"VK_C",g,g],[0,13,"KeyD",34,"D",68,"VK_D",g,g],[0,14,"KeyE",35,"E",69,"VK_E",g,g],[0,15,"KeyF",36,"F",70,"VK_F",g,g],[0,16,"KeyG",37,"G",71,"VK_G",g,g],[0,17,"KeyH",38,"H",72,"VK_H",g,g],[0,18,"KeyI",39,"I",73,"VK_I",g,g],[0,19,"KeyJ",40,"J",74,"VK_J",g,g],[0,20,"KeyK",41,"K",75,"VK_K",g,g],[0,21,"KeyL",42,"L",76,"VK_L",g,g],[0,22,"KeyM",43,"M",77,"VK_M",g,g],[0,23,"KeyN",44,"N",78,"VK_N",g,g],[0,24,"KeyO",45,"O",79,"VK_O",g,g],[0,25,"KeyP",46,"P",80,"VK_P",g,g],[0,26,"KeyQ",47,"Q",81,"VK_Q",g,g],[0,27,"KeyR",48,"R",82,"VK_R",g,g],[0,28,"KeyS",49,"S",83,"VK_S",g,g],[0,29,"KeyT",50,"T",84,"VK_T",g,g],[0,30,"KeyU",51,"U",85,"VK_U",g,g],[0,31,"KeyV",52,"V",86,"VK_V",g,g],[0,32,"KeyW",53,"W",87,"VK_W",g,g],[0,33,"KeyX",54,"X",88,"VK_X",g,g],[0,34,"KeyY",55,"Y",89,"VK_Y",g,g],[0,35,"KeyZ",56,"Z",90,"VK_Z",g,g],[0,36,"Digit1",22,"1",49,"VK_1",g,g],[0,37,"Digit2",23,"2",50,"VK_2",g,g],[0,38,"Digit3",24,"3",51,"VK_3",g,g],[0,39,"Digit4",25,"4",52,"VK_4",g,g],[0,40,"Digit5",26,"5",53,"VK_5",g,g],[0,41,"Digit6",27,"6",54,"VK_6",g,g],[0,42,"Digit7",28,"7",55,"VK_7",g,g],[0,43,"Digit8",29,"8",56,"VK_8",g,g],[0,44,"Digit9",30,"9",57,"VK_9",g,g],[0,45,"Digit0",21,"0",48,"VK_0",g,g],[1,46,"Enter",3,"Enter",13,"VK_RETURN",g,g],[1,47,"Escape",9,"Escape",27,"VK_ESCAPE",g,g],[1,48,"Backspace",1,"Backspace",8,"VK_BACK",g,g],[1,49,"Tab",2,"Tab",9,"VK_TAB",g,g],[1,50,"Space",10,"Space",32,"VK_SPACE",g,g],[0,51,"Minus",88,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[0,52,"Equal",86,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[0,53,"BracketLeft",92,"[",219,"VK_OEM_4","[","OEM_4"],[0,54,"BracketRight",94,"]",221,"VK_OEM_6","]","OEM_6"],[0,55,"Backslash",93,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,56,"IntlHash",0,g,0,g,g,g],[0,57,"Semicolon",85,";",186,"VK_OEM_1",";","OEM_1"],[0,58,"Quote",95,"'",222,"VK_OEM_7","'","OEM_7"],[0,59,"Backquote",91,"`",192,"VK_OEM_3","`","OEM_3"],[0,60,"Comma",87,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[0,61,"Period",89,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[0,62,"Slash",90,"/",191,"VK_OEM_2","/","OEM_2"],[1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",g,g],[1,64,"F1",59,"F1",112,"VK_F1",g,g],[1,65,"F2",60,"F2",113,"VK_F2",g,g],[1,66,"F3",61,"F3",114,"VK_F3",g,g],[1,67,"F4",62,"F4",115,"VK_F4",g,g],[1,68,"F5",63,"F5",116,"VK_F5",g,g],[1,69,"F6",64,"F6",117,"VK_F6",g,g],[1,70,"F7",65,"F7",118,"VK_F7",g,g],[1,71,"F8",66,"F8",119,"VK_F8",g,g],[1,72,"F9",67,"F9",120,"VK_F9",g,g],[1,73,"F10",68,"F10",121,"VK_F10",g,g],[1,74,"F11",69,"F11",122,"VK_F11",g,g],[1,75,"F12",70,"F12",123,"VK_F12",g,g],[1,76,"PrintScreen",0,g,0,g,g,g],[1,77,"ScrollLock",84,"ScrollLock",145,"VK_SCROLL",g,g],[1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",g,g],[1,79,"Insert",19,"Insert",45,"VK_INSERT",g,g],[1,80,"Home",14,"Home",36,"VK_HOME",g,g],[1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",g,g],[1,82,"Delete",20,"Delete",46,"VK_DELETE",g,g],[1,83,"End",13,"End",35,"VK_END",g,g],[1,84,"PageDown",12,"PageDown",34,"VK_NEXT",g,g],[1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",g],[1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",g],[1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",g],[1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",g],[1,89,"NumLock",83,"NumLock",144,"VK_NUMLOCK",g,g],[1,90,"NumpadDivide",113,"NumPad_Divide",111,"VK_DIVIDE",g,g],[1,91,"NumpadMultiply",108,"NumPad_Multiply",106,"VK_MULTIPLY",g,g],[1,92,"NumpadSubtract",111,"NumPad_Subtract",109,"VK_SUBTRACT",g,g],[1,93,"NumpadAdd",109,"NumPad_Add",107,"VK_ADD",g,g],[1,94,"NumpadEnter",3,g,0,g,g,g],[1,95,"Numpad1",99,"NumPad1",97,"VK_NUMPAD1",g,g],[1,96,"Numpad2",100,"NumPad2",98,"VK_NUMPAD2",g,g],[1,97,"Numpad3",101,"NumPad3",99,"VK_NUMPAD3",g,g],[1,98,"Numpad4",102,"NumPad4",100,"VK_NUMPAD4",g,g],[1,99,"Numpad5",103,"NumPad5",101,"VK_NUMPAD5",g,g],[1,100,"Numpad6",104,"NumPad6",102,"VK_NUMPAD6",g,g],[1,101,"Numpad7",105,"NumPad7",103,"VK_NUMPAD7",g,g],[1,102,"Numpad8",106,"NumPad8",104,"VK_NUMPAD8",g,g],[1,103,"Numpad9",107,"NumPad9",105,"VK_NUMPAD9",g,g],[1,104,"Numpad0",98,"NumPad0",96,"VK_NUMPAD0",g,g],[1,105,"NumpadDecimal",112,"NumPad_Decimal",110,"VK_DECIMAL",g,g],[0,106,"IntlBackslash",97,"OEM_102",226,"VK_OEM_102",g,g],[1,107,"ContextMenu",58,"ContextMenu",93,g,g,g],[1,108,"Power",0,g,0,g,g,g],[1,109,"NumpadEqual",0,g,0,g,g,g],[1,110,"F13",71,"F13",124,"VK_F13",g,g],[1,111,"F14",72,"F14",125,"VK_F14",g,g],[1,112,"F15",73,"F15",126,"VK_F15",g,g],[1,113,"F16",74,"F16",127,"VK_F16",g,g],[1,114,"F17",75,"F17",128,"VK_F17",g,g],[1,115,"F18",76,"F18",129,"VK_F18",g,g],[1,116,"F19",77,"F19",130,"VK_F19",g,g],[1,117,"F20",78,"F20",131,"VK_F20",g,g],[1,118,"F21",79,"F21",132,"VK_F21",g,g],[1,119,"F22",80,"F22",133,"VK_F22",g,g],[1,120,"F23",81,"F23",134,"VK_F23",g,g],[1,121,"F24",82,"F24",135,"VK_F24",g,g],[1,122,"Open",0,g,0,g,g,g],[1,123,"Help",0,g,0,g,g,g],[1,124,"Select",0,g,0,g,g,g],[1,125,"Again",0,g,0,g,g,g],[1,126,"Undo",0,g,0,g,g,g],[1,127,"Cut",0,g,0,g,g,g],[1,128,"Copy",0,g,0,g,g,g],[1,129,"Paste",0,g,0,g,g,g],[1,130,"Find",0,g,0,g,g,g],[1,131,"AudioVolumeMute",117,"AudioVolumeMute",173,"VK_VOLUME_MUTE",g,g],[1,132,"AudioVolumeUp",118,"AudioVolumeUp",175,"VK_VOLUME_UP",g,g],[1,133,"AudioVolumeDown",119,"AudioVolumeDown",174,"VK_VOLUME_DOWN",g,g],[1,134,"NumpadComma",110,"NumPad_Separator",108,"VK_SEPARATOR",g,g],[0,135,"IntlRo",115,"ABNT_C1",193,"VK_ABNT_C1",g,g],[1,136,"KanaMode",0,g,0,g,g,g],[0,137,"IntlYen",0,g,0,g,g,g],[1,138,"Convert",0,g,0,g,g,g],[1,139,"NonConvert",0,g,0,g,g,g],[1,140,"Lang1",0,g,0,g,g,g],[1,141,"Lang2",0,g,0,g,g,g],[1,142,"Lang3",0,g,0,g,g,g],[1,143,"Lang4",0,g,0,g,g,g],[1,144,"Lang5",0,g,0,g,g,g],[1,145,"Abort",0,g,0,g,g,g],[1,146,"Props",0,g,0,g,g,g],[1,147,"NumpadParenLeft",0,g,0,g,g,g],[1,148,"NumpadParenRight",0,g,0,g,g,g],[1,149,"NumpadBackspace",0,g,0,g,g,g],[1,150,"NumpadMemoryStore",0,g,0,g,g,g],[1,151,"NumpadMemoryRecall",0,g,0,g,g,g],[1,152,"NumpadMemoryClear",0,g,0,g,g,g],[1,153,"NumpadMemoryAdd",0,g,0,g,g,g],[1,154,"NumpadMemorySubtract",0,g,0,g,g,g],[1,155,"NumpadClear",131,"Clear",12,"VK_CLEAR",g,g],[1,156,"NumpadClearEntry",0,g,0,g,g,g],[1,0,g,5,"Ctrl",17,"VK_CONTROL",g,g],[1,0,g,4,"Shift",16,"VK_SHIFT",g,g],[1,0,g,6,"Alt",18,"VK_MENU",g,g],[1,0,g,57,"Meta",91,"VK_COMMAND",g,g],[1,157,"ControlLeft",5,g,0,"VK_LCONTROL",g,g],[1,158,"ShiftLeft",4,g,0,"VK_LSHIFT",g,g],[1,159,"AltLeft",6,g,0,"VK_LMENU",g,g],[1,160,"MetaLeft",57,g,0,"VK_LWIN",g,g],[1,161,"ControlRight",5,g,0,"VK_RCONTROL",g,g],[1,162,"ShiftRight",4,g,0,"VK_RSHIFT",g,g],[1,163,"AltRight",6,g,0,"VK_RMENU",g,g],[1,164,"MetaRight",57,g,0,"VK_RWIN",g,g],[1,165,"BrightnessUp",0,g,0,g,g,g],[1,166,"BrightnessDown",0,g,0,g,g,g],[1,167,"MediaPlay",0,g,0,g,g,g],[1,168,"MediaRecord",0,g,0,g,g,g],[1,169,"MediaFastForward",0,g,0,g,g,g],[1,170,"MediaRewind",0,g,0,g,g,g],[1,171,"MediaTrackNext",124,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",g,g],[1,172,"MediaTrackPrevious",125,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",g,g],[1,173,"MediaStop",126,"MediaStop",178,"VK_MEDIA_STOP",g,g],[1,174,"Eject",0,g,0,g,g,g],[1,175,"MediaPlayPause",127,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",g,g],[1,176,"MediaSelect",128,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",g,g],[1,177,"LaunchMail",129,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",g,g],[1,178,"LaunchApp2",130,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",g,g],[1,179,"LaunchApp1",0,g,0,"VK_MEDIA_LAUNCH_APP1",g,g],[1,180,"SelectTask",0,g,0,g,g,g],[1,181,"LaunchScreenSaver",0,g,0,g,g,g],[1,182,"BrowserSearch",120,"BrowserSearch",170,"VK_BROWSER_SEARCH",g,g],[1,183,"BrowserHome",121,"BrowserHome",172,"VK_BROWSER_HOME",g,g],[1,184,"BrowserBack",122,"BrowserBack",166,"VK_BROWSER_BACK",g,g],[1,185,"BrowserForward",123,"BrowserForward",167,"VK_BROWSER_FORWARD",g,g],[1,186,"BrowserStop",0,g,0,"VK_BROWSER_STOP",g,g],[1,187,"BrowserRefresh",0,g,0,"VK_BROWSER_REFRESH",g,g],[1,188,"BrowserFavorites",0,g,0,"VK_BROWSER_FAVORITES",g,g],[1,189,"ZoomToggle",0,g,0,g,g,g],[1,190,"MailReply",0,g,0,g,g,g],[1,191,"MailForward",0,g,0,g,g,g],[1,192,"MailSend",0,g,0,g,g,g],[1,0,g,114,"KeyInComposition",229,g,g,g],[1,0,g,116,"ABNT_C2",194,"VK_ABNT_C2",g,g],[1,0,g,96,"OEM_8",223,"VK_OEM_8",g,g],[1,0,g,0,g,0,"VK_KANA",g,g],[1,0,g,0,g,0,"VK_HANGUL",g,g],[1,0,g,0,g,0,"VK_JUNJA",g,g],[1,0,g,0,g,0,"VK_FINAL",g,g],[1,0,g,0,g,0,"VK_HANJA",g,g],[1,0,g,0,g,0,"VK_KANJI",g,g],[1,0,g,0,g,0,"VK_CONVERT",g,g],[1,0,g,0,g,0,"VK_NONCONVERT",g,g],[1,0,g,0,g,0,"VK_ACCEPT",g,g],[1,0,g,0,g,0,"VK_MODECHANGE",g,g],[1,0,g,0,g,0,"VK_SELECT",g,g],[1,0,g,0,g,0,"VK_PRINT",g,g],[1,0,g,0,g,0,"VK_EXECUTE",g,g],[1,0,g,0,g,0,"VK_SNAPSHOT",g,g],[1,0,g,0,g,0,"VK_HELP",g,g],[1,0,g,0,g,0,"VK_APPS",g,g],[1,0,g,0,g,0,"VK_PROCESSKEY",g,g],[1,0,g,0,g,0,"VK_PACKET",g,g],[1,0,g,0,g,0,"VK_DBE_SBCSCHAR",g,g],[1,0,g,0,g,0,"VK_DBE_DBCSCHAR",g,g],[1,0,g,0,g,0,"VK_ATTN",g,g],[1,0,g,0,g,0,"VK_CRSEL",g,g],[1,0,g,0,g,0,"VK_EXSEL",g,g],[1,0,g,0,g,0,"VK_EREOF",g,g],[1,0,g,0,g,0,"VK_PLAY",g,g],[1,0,g,0,g,0,"VK_ZOOM",g,g],[1,0,g,0,g,0,"VK_NONAME",g,g],[1,0,g,0,g,0,"VK_PA1",g,g],[1,0,g,0,g,0,"VK_OEM_CLEAR",g,g]],T=[],W=[];for(const X of v){const[ue,Re,Be,it,Me,Ue,Bt,Ut,dn]=X;if(W[Re]||(W[Re]=!0,Q5e[Be]=Re,Z5e[Be.toLowerCase()]=Re),!T[it]){if(T[it]=!0,!Me)throw new Error(`String representation missing for key code ${it} around scan code ${Be}`);HB.define(it,Me),ine.define(it,Ut||Me),one.define(it,dn||Ut||Me)}Ue&&($5e[Ue]=it)}})();var T0e;(function(g){function v(Be){return HB.keyCodeToStr(Be)}g.toString=v;function T(Be){return HB.strToKeyCode(Be)}g.fromString=T;function W(Be){return ine.keyCodeToStr(Be)}g.toUserSettingsUS=W;function X(Be){return one.keyCodeToStr(Be)}g.toUserSettingsGeneral=X;function ue(Be){return ine.strToKeyCode(Be)||one.strToKeyCode(Be)}g.fromUserSettings=ue;function Re(Be){if(Be>=98&&Be<=113)return null;switch(Be){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return HB.keyCodeToStr(Be)}g.toElectronAccelerator=Re})(T0e||(T0e={}));function eze(g,v){const T=(v&65535)<<16>>>0;return(g|T)>>>0}class Iy extends ys{constructor(v,T,W,X){super(v,T,W,X),this.selectionStartLineNumber=v,this.selectionStartColumn=T,this.positionLineNumber=W,this.positionColumn=X}toString(){return"["+this.selectionStartLineNumber+","+this.selectionStartColumn+" -> "+this.positionLineNumber+","+this.positionColumn+"]"}equalsSelection(v){return Iy.selectionsEqual(this,v)}static selectionsEqual(v,T){return v.selectionStartLineNumber===T.selectionStartLineNumber&&v.selectionStartColumn===T.selectionStartColumn&&v.positionLineNumber===T.positionLineNumber&&v.positionColumn===T.positionColumn}getDirection(){return this.selectionStartLineNumber===this.startLineNumber&&this.selectionStartColumn===this.startColumn?0:1}setEndPosition(v,T){return this.getDirection()===0?new Iy(this.startLineNumber,this.startColumn,v,T):new Iy(v,T,this.startLineNumber,this.startColumn)}getPosition(){return new rd(this.positionLineNumber,this.positionColumn)}getSelectionStart(){return new rd(this.selectionStartLineNumber,this.selectionStartColumn)}setStartPosition(v,T){return this.getDirection()===0?new Iy(v,T,this.endLineNumber,this.endColumn):new Iy(this.endLineNumber,this.endColumn,v,T)}static fromPositions(v,T=v){return new Iy(v.lineNumber,v.column,T.lineNumber,T.column)}static fromRange(v,T){return T===0?new Iy(v.startLineNumber,v.startColumn,v.endLineNumber,v.endColumn):new Iy(v.endLineNumber,v.endColumn,v.startLineNumber,v.startColumn)}static liftSelection(v){return new Iy(v.selectionStartLineNumber,v.selectionStartColumn,v.positionLineNumber,v.positionColumn)}static selectionsArrEqual(v,T){if(v&&!T||!v&&T)return!1;if(!v&&!T)return!0;if(v.length!==T.length)return!1;for(let W=0,X=v.length;W<X;W++)if(!this.selectionsEqual(v[W],T[W]))return!1;return!0}static isISelection(v){return v&&typeof v.selectionStartLineNumber=="number"&&typeof v.selectionStartColumn=="number"&&typeof v.positionLineNumber=="number"&&typeof v.positionColumn=="number"}static createWithDirection(v,T,W,X,ue){return ue===0?new Iy(v,T,W,X):new Iy(W,X,v,T)}}function tze(g){return typeof g=="string"}const A0e=Object.create(null);function Ie(g,v){if(tze(v)){const T=A0e[v];if(T===void 0)throw new Error(`${g} references an unknown codicon: ${v}`);v=T}return A0e[g]=v,{id:g}}const nze={add:Ie("add",6e4),plus:Ie("plus",6e4),gistNew:Ie("gist-new",6e4),repoCreate:Ie("repo-create",6e4),lightbulb:Ie("lightbulb",60001),lightBulb:Ie("light-bulb",60001),repo:Ie("repo",60002),repoDelete:Ie("repo-delete",60002),gistFork:Ie("gist-fork",60003),repoForked:Ie("repo-forked",60003),gitPullRequest:Ie("git-pull-request",60004),gitPullRequestAbandoned:Ie("git-pull-request-abandoned",60004),recordKeys:Ie("record-keys",60005),keyboard:Ie("keyboard",60005),tag:Ie("tag",60006),gitPullRequestLabel:Ie("git-pull-request-label",60006),tagAdd:Ie("tag-add",60006),tagRemove:Ie("tag-remove",60006),person:Ie("person",60007),personFollow:Ie("person-follow",60007),personOutline:Ie("person-outline",60007),personFilled:Ie("person-filled",60007),gitBranch:Ie("git-branch",60008),gitBranchCreate:Ie("git-branch-create",60008),gitBranchDelete:Ie("git-branch-delete",60008),sourceControl:Ie("source-control",60008),mirror:Ie("mirror",60009),mirrorPublic:Ie("mirror-public",60009),star:Ie("star",60010),starAdd:Ie("star-add",60010),starDelete:Ie("star-delete",60010),starEmpty:Ie("star-empty",60010),comment:Ie("comment",60011),commentAdd:Ie("comment-add",60011),alert:Ie("alert",60012),warning:Ie("warning",60012),search:Ie("search",60013),searchSave:Ie("search-save",60013),logOut:Ie("log-out",60014),signOut:Ie("sign-out",60014),logIn:Ie("log-in",60015),signIn:Ie("sign-in",60015),eye:Ie("eye",60016),eyeUnwatch:Ie("eye-unwatch",60016),eyeWatch:Ie("eye-watch",60016),circleFilled:Ie("circle-filled",60017),primitiveDot:Ie("primitive-dot",60017),closeDirty:Ie("close-dirty",60017),debugBreakpoint:Ie("debug-breakpoint",60017),debugBreakpointDisabled:Ie("debug-breakpoint-disabled",60017),debugHint:Ie("debug-hint",60017),terminalDecorationSuccess:Ie("terminal-decoration-success",60017),primitiveSquare:Ie("primitive-square",60018),edit:Ie("edit",60019),pencil:Ie("pencil",60019),info:Ie("info",60020),issueOpened:Ie("issue-opened",60020),gistPrivate:Ie("gist-private",60021),gitForkPrivate:Ie("git-fork-private",60021),lock:Ie("lock",60021),mirrorPrivate:Ie("mirror-private",60021),close:Ie("close",60022),removeClose:Ie("remove-close",60022),x:Ie("x",60022),repoSync:Ie("repo-sync",60023),sync:Ie("sync",60023),clone:Ie("clone",60024),desktopDownload:Ie("desktop-download",60024),beaker:Ie("beaker",60025),microscope:Ie("microscope",60025),vm:Ie("vm",60026),deviceDesktop:Ie("device-desktop",60026),file:Ie("file",60027),fileText:Ie("file-text",60027),more:Ie("more",60028),ellipsis:Ie("ellipsis",60028),kebabHorizontal:Ie("kebab-horizontal",60028),mailReply:Ie("mail-reply",60029),reply:Ie("reply",60029),organization:Ie("organization",60030),organizationFilled:Ie("organization-filled",60030),organizationOutline:Ie("organization-outline",60030),newFile:Ie("new-file",60031),fileAdd:Ie("file-add",60031),newFolder:Ie("new-folder",60032),fileDirectoryCreate:Ie("file-directory-create",60032),trash:Ie("trash",60033),trashcan:Ie("trashcan",60033),history:Ie("history",60034),clock:Ie("clock",60034),folder:Ie("folder",60035),fileDirectory:Ie("file-directory",60035),symbolFolder:Ie("symbol-folder",60035),logoGithub:Ie("logo-github",60036),markGithub:Ie("mark-github",60036),github:Ie("github",60036),terminal:Ie("terminal",60037),console:Ie("console",60037),repl:Ie("repl",60037),zap:Ie("zap",60038),symbolEvent:Ie("symbol-event",60038),error:Ie("error",60039),stop:Ie("stop",60039),variable:Ie("variable",60040),symbolVariable:Ie("symbol-variable",60040),array:Ie("array",60042),symbolArray:Ie("symbol-array",60042),symbolModule:Ie("symbol-module",60043),symbolPackage:Ie("symbol-package",60043),symbolNamespace:Ie("symbol-namespace",60043),symbolObject:Ie("symbol-object",60043),symbolMethod:Ie("symbol-method",60044),symbolFunction:Ie("symbol-function",60044),symbolConstructor:Ie("symbol-constructor",60044),symbolBoolean:Ie("symbol-boolean",60047),symbolNull:Ie("symbol-null",60047),symbolNumeric:Ie("symbol-numeric",60048),symbolNumber:Ie("symbol-number",60048),symbolStructure:Ie("symbol-structure",60049),symbolStruct:Ie("symbol-struct",60049),symbolParameter:Ie("symbol-parameter",60050),symbolTypeParameter:Ie("symbol-type-parameter",60050),symbolKey:Ie("symbol-key",60051),symbolText:Ie("symbol-text",60051),symbolReference:Ie("symbol-reference",60052),goToFile:Ie("go-to-file",60052),symbolEnum:Ie("symbol-enum",60053),symbolValue:Ie("symbol-value",60053),symbolRuler:Ie("symbol-ruler",60054),symbolUnit:Ie("symbol-unit",60054),activateBreakpoints:Ie("activate-breakpoints",60055),archive:Ie("archive",60056),arrowBoth:Ie("arrow-both",60057),arrowDown:Ie("arrow-down",60058),arrowLeft:Ie("arrow-left",60059),arrowRight:Ie("arrow-right",60060),arrowSmallDown:Ie("arrow-small-down",60061),arrowSmallLeft:Ie("arrow-small-left",60062),arrowSmallRight:Ie("arrow-small-right",60063),arrowSmallUp:Ie("arrow-small-up",60064),arrowUp:Ie("arrow-up",60065),bell:Ie("bell",60066),bold:Ie("bold",60067),book:Ie("book",60068),bookmark:Ie("bookmark",60069),debugBreakpointConditionalUnverified:Ie("debug-breakpoint-conditional-unverified",60070),debugBreakpointConditional:Ie("debug-breakpoint-conditional",60071),debugBreakpointConditionalDisabled:Ie("debug-breakpoint-conditional-disabled",60071),debugBreakpointDataUnverified:Ie("debug-breakpoint-data-unverified",60072),debugBreakpointData:Ie("debug-breakpoint-data",60073),debugBreakpointDataDisabled:Ie("debug-breakpoint-data-disabled",60073),debugBreakpointLogUnverified:Ie("debug-breakpoint-log-unverified",60074),debugBreakpointLog:Ie("debug-breakpoint-log",60075),debugBreakpointLogDisabled:Ie("debug-breakpoint-log-disabled",60075),briefcase:Ie("briefcase",60076),broadcast:Ie("broadcast",60077),browser:Ie("browser",60078),bug:Ie("bug",60079),calendar:Ie("calendar",60080),caseSensitive:Ie("case-sensitive",60081),check:Ie("check",60082),checklist:Ie("checklist",60083),chevronDown:Ie("chevron-down",60084),chevronLeft:Ie("chevron-left",60085),chevronRight:Ie("chevron-right",60086),chevronUp:Ie("chevron-up",60087),chromeClose:Ie("chrome-close",60088),chromeMaximize:Ie("chrome-maximize",60089),chromeMinimize:Ie("chrome-minimize",60090),chromeRestore:Ie("chrome-restore",60091),circleOutline:Ie("circle-outline",60092),circle:Ie("circle",60092),debugBreakpointUnverified:Ie("debug-breakpoint-unverified",60092),terminalDecorationIncomplete:Ie("terminal-decoration-incomplete",60092),circleSlash:Ie("circle-slash",60093),circuitBoard:Ie("circuit-board",60094),clearAll:Ie("clear-all",60095),clippy:Ie("clippy",60096),closeAll:Ie("close-all",60097),cloudDownload:Ie("cloud-download",60098),cloudUpload:Ie("cloud-upload",60099),code:Ie("code",60100),collapseAll:Ie("collapse-all",60101),colorMode:Ie("color-mode",60102),commentDiscussion:Ie("comment-discussion",60103),creditCard:Ie("credit-card",60105),dash:Ie("dash",60108),dashboard:Ie("dashboard",60109),database:Ie("database",60110),debugContinue:Ie("debug-continue",60111),debugDisconnect:Ie("debug-disconnect",60112),debugPause:Ie("debug-pause",60113),debugRestart:Ie("debug-restart",60114),debugStart:Ie("debug-start",60115),debugStepInto:Ie("debug-step-into",60116),debugStepOut:Ie("debug-step-out",60117),debugStepOver:Ie("debug-step-over",60118),debugStop:Ie("debug-stop",60119),debug:Ie("debug",60120),deviceCameraVideo:Ie("device-camera-video",60121),deviceCamera:Ie("device-camera",60122),deviceMobile:Ie("device-mobile",60123),diffAdded:Ie("diff-added",60124),diffIgnored:Ie("diff-ignored",60125),diffModified:Ie("diff-modified",60126),diffRemoved:Ie("diff-removed",60127),diffRenamed:Ie("diff-renamed",60128),diff:Ie("diff",60129),diffSidebyside:Ie("diff-sidebyside",60129),discard:Ie("discard",60130),editorLayout:Ie("editor-layout",60131),emptyWindow:Ie("empty-window",60132),exclude:Ie("exclude",60133),extensions:Ie("extensions",60134),eyeClosed:Ie("eye-closed",60135),fileBinary:Ie("file-binary",60136),fileCode:Ie("file-code",60137),fileMedia:Ie("file-media",60138),filePdf:Ie("file-pdf",60139),fileSubmodule:Ie("file-submodule",60140),fileSymlinkDirectory:Ie("file-symlink-directory",60141),fileSymlinkFile:Ie("file-symlink-file",60142),fileZip:Ie("file-zip",60143),files:Ie("files",60144),filter:Ie("filter",60145),flame:Ie("flame",60146),foldDown:Ie("fold-down",60147),foldUp:Ie("fold-up",60148),fold:Ie("fold",60149),folderActive:Ie("folder-active",60150),folderOpened:Ie("folder-opened",60151),gear:Ie("gear",60152),gift:Ie("gift",60153),gistSecret:Ie("gist-secret",60154),gist:Ie("gist",60155),gitCommit:Ie("git-commit",60156),gitCompare:Ie("git-compare",60157),compareChanges:Ie("compare-changes",60157),gitMerge:Ie("git-merge",60158),githubAction:Ie("github-action",60159),githubAlt:Ie("github-alt",60160),globe:Ie("globe",60161),grabber:Ie("grabber",60162),graph:Ie("graph",60163),gripper:Ie("gripper",60164),heart:Ie("heart",60165),home:Ie("home",60166),horizontalRule:Ie("horizontal-rule",60167),hubot:Ie("hubot",60168),inbox:Ie("inbox",60169),issueReopened:Ie("issue-reopened",60171),issues:Ie("issues",60172),italic:Ie("italic",60173),jersey:Ie("jersey",60174),json:Ie("json",60175),kebabVertical:Ie("kebab-vertical",60176),key:Ie("key",60177),law:Ie("law",60178),lightbulbAutofix:Ie("lightbulb-autofix",60179),linkExternal:Ie("link-external",60180),link:Ie("link",60181),listOrdered:Ie("list-ordered",60182),listUnordered:Ie("list-unordered",60183),liveShare:Ie("live-share",60184),loading:Ie("loading",60185),location:Ie("location",60186),mailRead:Ie("mail-read",60187),mail:Ie("mail",60188),markdown:Ie("markdown",60189),megaphone:Ie("megaphone",60190),mention:Ie("mention",60191),milestone:Ie("milestone",60192),gitPullRequestMilestone:Ie("git-pull-request-milestone",60192),mortarBoard:Ie("mortar-board",60193),move:Ie("move",60194),multipleWindows:Ie("multiple-windows",60195),mute:Ie("mute",60196),noNewline:Ie("no-newline",60197),note:Ie("note",60198),octoface:Ie("octoface",60199),openPreview:Ie("open-preview",60200),package:Ie("package",60201),paintcan:Ie("paintcan",60202),pin:Ie("pin",60203),play:Ie("play",60204),run:Ie("run",60204),plug:Ie("plug",60205),preserveCase:Ie("preserve-case",60206),preview:Ie("preview",60207),project:Ie("project",60208),pulse:Ie("pulse",60209),question:Ie("question",60210),quote:Ie("quote",60211),radioTower:Ie("radio-tower",60212),reactions:Ie("reactions",60213),references:Ie("references",60214),refresh:Ie("refresh",60215),regex:Ie("regex",60216),remoteExplorer:Ie("remote-explorer",60217),remote:Ie("remote",60218),remove:Ie("remove",60219),replaceAll:Ie("replace-all",60220),replace:Ie("replace",60221),repoClone:Ie("repo-clone",60222),repoForcePush:Ie("repo-force-push",60223),repoPull:Ie("repo-pull",60224),repoPush:Ie("repo-push",60225),report:Ie("report",60226),requestChanges:Ie("request-changes",60227),rocket:Ie("rocket",60228),rootFolderOpened:Ie("root-folder-opened",60229),rootFolder:Ie("root-folder",60230),rss:Ie("rss",60231),ruby:Ie("ruby",60232),saveAll:Ie("save-all",60233),saveAs:Ie("save-as",60234),save:Ie("save",60235),screenFull:Ie("screen-full",60236),screenNormal:Ie("screen-normal",60237),searchStop:Ie("search-stop",60238),server:Ie("server",60240),settingsGear:Ie("settings-gear",60241),settings:Ie("settings",60242),shield:Ie("shield",60243),smiley:Ie("smiley",60244),sortPrecedence:Ie("sort-precedence",60245),splitHorizontal:Ie("split-horizontal",60246),splitVertical:Ie("split-vertical",60247),squirrel:Ie("squirrel",60248),starFull:Ie("star-full",60249),starHalf:Ie("star-half",60250),symbolClass:Ie("symbol-class",60251),symbolColor:Ie("symbol-color",60252),symbolConstant:Ie("symbol-constant",60253),symbolEnumMember:Ie("symbol-enum-member",60254),symbolField:Ie("symbol-field",60255),symbolFile:Ie("symbol-file",60256),symbolInterface:Ie("symbol-interface",60257),symbolKeyword:Ie("symbol-keyword",60258),symbolMisc:Ie("symbol-misc",60259),symbolOperator:Ie("symbol-operator",60260),symbolProperty:Ie("symbol-property",60261),wrench:Ie("wrench",60261),wrenchSubaction:Ie("wrench-subaction",60261),symbolSnippet:Ie("symbol-snippet",60262),tasklist:Ie("tasklist",60263),telescope:Ie("telescope",60264),textSize:Ie("text-size",60265),threeBars:Ie("three-bars",60266),thumbsdown:Ie("thumbsdown",60267),thumbsup:Ie("thumbsup",60268),tools:Ie("tools",60269),triangleDown:Ie("triangle-down",60270),triangleLeft:Ie("triangle-left",60271),triangleRight:Ie("triangle-right",60272),triangleUp:Ie("triangle-up",60273),twitter:Ie("twitter",60274),unfold:Ie("unfold",60275),unlock:Ie("unlock",60276),unmute:Ie("unmute",60277),unverified:Ie("unverified",60278),verified:Ie("verified",60279),versions:Ie("versions",60280),vmActive:Ie("vm-active",60281),vmOutline:Ie("vm-outline",60282),vmRunning:Ie("vm-running",60283),watch:Ie("watch",60284),whitespace:Ie("whitespace",60285),wholeWord:Ie("whole-word",60286),window:Ie("window",60287),wordWrap:Ie("word-wrap",60288),zoomIn:Ie("zoom-in",60289),zoomOut:Ie("zoom-out",60290),listFilter:Ie("list-filter",60291),listFlat:Ie("list-flat",60292),listSelection:Ie("list-selection",60293),selection:Ie("selection",60293),listTree:Ie("list-tree",60294),debugBreakpointFunctionUnverified:Ie("debug-breakpoint-function-unverified",60295),debugBreakpointFunction:Ie("debug-breakpoint-function",60296),debugBreakpointFunctionDisabled:Ie("debug-breakpoint-function-disabled",60296),debugStackframeActive:Ie("debug-stackframe-active",60297),circleSmallFilled:Ie("circle-small-filled",60298),debugStackframeDot:Ie("debug-stackframe-dot",60298),terminalDecorationMark:Ie("terminal-decoration-mark",60298),debugStackframe:Ie("debug-stackframe",60299),debugStackframeFocused:Ie("debug-stackframe-focused",60299),debugBreakpointUnsupported:Ie("debug-breakpoint-unsupported",60300),symbolString:Ie("symbol-string",60301),debugReverseContinue:Ie("debug-reverse-continue",60302),debugStepBack:Ie("debug-step-back",60303),debugRestartFrame:Ie("debug-restart-frame",60304),debugAlt:Ie("debug-alt",60305),callIncoming:Ie("call-incoming",60306),callOutgoing:Ie("call-outgoing",60307),menu:Ie("menu",60308),expandAll:Ie("expand-all",60309),feedback:Ie("feedback",60310),gitPullRequestReviewer:Ie("git-pull-request-reviewer",60310),groupByRefType:Ie("group-by-ref-type",60311),ungroupByRefType:Ie("ungroup-by-ref-type",60312),account:Ie("account",60313),gitPullRequestAssignee:Ie("git-pull-request-assignee",60313),bellDot:Ie("bell-dot",60314),debugConsole:Ie("debug-console",60315),library:Ie("library",60316),output:Ie("output",60317),runAll:Ie("run-all",60318),syncIgnored:Ie("sync-ignored",60319),pinned:Ie("pinned",60320),githubInverted:Ie("github-inverted",60321),serverProcess:Ie("server-process",60322),serverEnvironment:Ie("server-environment",60323),pass:Ie("pass",60324),issueClosed:Ie("issue-closed",60324),stopCircle:Ie("stop-circle",60325),playCircle:Ie("play-circle",60326),record:Ie("record",60327),debugAltSmall:Ie("debug-alt-small",60328),vmConnect:Ie("vm-connect",60329),cloud:Ie("cloud",60330),merge:Ie("merge",60331),export:Ie("export",60332),graphLeft:Ie("graph-left",60333),magnet:Ie("magnet",60334),notebook:Ie("notebook",60335),redo:Ie("redo",60336),checkAll:Ie("check-all",60337),pinnedDirty:Ie("pinned-dirty",60338),passFilled:Ie("pass-filled",60339),circleLargeFilled:Ie("circle-large-filled",60340),circleLarge:Ie("circle-large",60341),circleLargeOutline:Ie("circle-large-outline",60341),combine:Ie("combine",60342),gather:Ie("gather",60342),table:Ie("table",60343),variableGroup:Ie("variable-group",60344),typeHierarchy:Ie("type-hierarchy",60345),typeHierarchySub:Ie("type-hierarchy-sub",60346),typeHierarchySuper:Ie("type-hierarchy-super",60347),gitPullRequestCreate:Ie("git-pull-request-create",60348),runAbove:Ie("run-above",60349),runBelow:Ie("run-below",60350),notebookTemplate:Ie("notebook-template",60351),debugRerun:Ie("debug-rerun",60352),workspaceTrusted:Ie("workspace-trusted",60353),workspaceUntrusted:Ie("workspace-untrusted",60354),workspaceUnknown:Ie("workspace-unknown",60355),terminalCmd:Ie("terminal-cmd",60356),terminalDebian:Ie("terminal-debian",60357),terminalLinux:Ie("terminal-linux",60358),terminalPowershell:Ie("terminal-powershell",60359),terminalTmux:Ie("terminal-tmux",60360),terminalUbuntu:Ie("terminal-ubuntu",60361),terminalBash:Ie("terminal-bash",60362),arrowSwap:Ie("arrow-swap",60363),copy:Ie("copy",60364),personAdd:Ie("person-add",60365),filterFilled:Ie("filter-filled",60366),wand:Ie("wand",60367),debugLineByLine:Ie("debug-line-by-line",60368),inspect:Ie("inspect",60369),layers:Ie("layers",60370),layersDot:Ie("layers-dot",60371),layersActive:Ie("layers-active",60372),compass:Ie("compass",60373),compassDot:Ie("compass-dot",60374),compassActive:Ie("compass-active",60375),azure:Ie("azure",60376),issueDraft:Ie("issue-draft",60377),gitPullRequestClosed:Ie("git-pull-request-closed",60378),gitPullRequestDraft:Ie("git-pull-request-draft",60379),debugAll:Ie("debug-all",60380),debugCoverage:Ie("debug-coverage",60381),runErrors:Ie("run-errors",60382),folderLibrary:Ie("folder-library",60383),debugContinueSmall:Ie("debug-continue-small",60384),beakerStop:Ie("beaker-stop",60385),graphLine:Ie("graph-line",60386),graphScatter:Ie("graph-scatter",60387),pieChart:Ie("pie-chart",60388),bracket:Ie("bracket",60175),bracketDot:Ie("bracket-dot",60389),bracketError:Ie("bracket-error",60390),lockSmall:Ie("lock-small",60391),azureDevops:Ie("azure-devops",60392),verifiedFilled:Ie("verified-filled",60393),newline:Ie("newline",60394),layout:Ie("layout",60395),layoutActivitybarLeft:Ie("layout-activitybar-left",60396),layoutActivitybarRight:Ie("layout-activitybar-right",60397),layoutPanelLeft:Ie("layout-panel-left",60398),layoutPanelCenter:Ie("layout-panel-center",60399),layoutPanelJustify:Ie("layout-panel-justify",60400),layoutPanelRight:Ie("layout-panel-right",60401),layoutPanel:Ie("layout-panel",60402),layoutSidebarLeft:Ie("layout-sidebar-left",60403),layoutSidebarRight:Ie("layout-sidebar-right",60404),layoutStatusbar:Ie("layout-statusbar",60405),layoutMenubar:Ie("layout-menubar",60406),layoutCentered:Ie("layout-centered",60407),target:Ie("target",60408),indent:Ie("indent",60409),recordSmall:Ie("record-small",60410),errorSmall:Ie("error-small",60411),terminalDecorationError:Ie("terminal-decoration-error",60411),arrowCircleDown:Ie("arrow-circle-down",60412),arrowCircleLeft:Ie("arrow-circle-left",60413),arrowCircleRight:Ie("arrow-circle-right",60414),arrowCircleUp:Ie("arrow-circle-up",60415),layoutSidebarRightOff:Ie("layout-sidebar-right-off",60416),layoutPanelOff:Ie("layout-panel-off",60417),layoutSidebarLeftOff:Ie("layout-sidebar-left-off",60418),blank:Ie("blank",60419),heartFilled:Ie("heart-filled",60420),map:Ie("map",60421),mapHorizontal:Ie("map-horizontal",60421),foldHorizontal:Ie("fold-horizontal",60421),mapFilled:Ie("map-filled",60422),mapHorizontalFilled:Ie("map-horizontal-filled",60422),foldHorizontalFilled:Ie("fold-horizontal-filled",60422),circleSmall:Ie("circle-small",60423),bellSlash:Ie("bell-slash",60424),bellSlashDot:Ie("bell-slash-dot",60425),commentUnresolved:Ie("comment-unresolved",60426),gitPullRequestGoToChanges:Ie("git-pull-request-go-to-changes",60427),gitPullRequestNewChanges:Ie("git-pull-request-new-changes",60428),searchFuzzy:Ie("search-fuzzy",60429),commentDraft:Ie("comment-draft",60430),send:Ie("send",60431),sparkle:Ie("sparkle",60432),insert:Ie("insert",60433),mic:Ie("mic",60434),thumbsdownFilled:Ie("thumbsdown-filled",60435),thumbsupFilled:Ie("thumbsup-filled",60436),coffee:Ie("coffee",60437),snake:Ie("snake",60438),game:Ie("game",60439),vr:Ie("vr",60440),chip:Ie("chip",60441),piano:Ie("piano",60442),music:Ie("music",60443),micFilled:Ie("mic-filled",60444),repoFetch:Ie("repo-fetch",60445),copilot:Ie("copilot",60446),lightbulbSparkle:Ie("lightbulb-sparkle",60447),robot:Ie("robot",60448),sparkleFilled:Ie("sparkle-filled",60449),diffSingle:Ie("diff-single",60450),diffMultiple:Ie("diff-multiple",60451),surroundWith:Ie("surround-with",60452),share:Ie("share",60453),gitStash:Ie("git-stash",60454),gitStashApply:Ie("git-stash-apply",60455),gitStashPop:Ie("git-stash-pop",60456),vscode:Ie("vscode",60457),vscodeInsiders:Ie("vscode-insiders",60458),codeOss:Ie("code-oss",60459),runCoverage:Ie("run-coverage",60460),runAllCoverage:Ie("run-all-coverage",60461),coverage:Ie("coverage",60462),githubProject:Ie("github-project",60463),mapVertical:Ie("map-vertical",60464),foldVertical:Ie("fold-vertical",60464),mapVerticalFilled:Ie("map-vertical-filled",60465),foldVerticalFilled:Ie("fold-vertical-filled",60465),goToSearch:Ie("go-to-search",60466),percentage:Ie("percentage",60467),sortPercentage:Ie("sort-percentage",60467),attach:Ie("attach",60468)},rze={dialogError:Ie("dialog-error","error"),dialogWarning:Ie("dialog-warning","warning"),dialogInfo:Ie("dialog-info","info"),dialogClose:Ie("dialog-close","close"),treeItemExpanded:Ie("tree-item-expanded","chevron-down"),treeFilterOnTypeOn:Ie("tree-filter-on-type-on","list-filter"),treeFilterOnTypeOff:Ie("tree-filter-on-type-off","list-selection"),treeFilterClear:Ie("tree-filter-clear","close"),treeItemLoading:Ie("tree-item-loading","loading"),menuSelection:Ie("menu-selection","check"),menuSubmenu:Ie("menu-submenu","chevron-right"),menuBarMore:Ie("menubar-more","more"),scrollbarButtonLeft:Ie("scrollbar-button-left","triangle-left"),scrollbarButtonRight:Ie("scrollbar-button-right","triangle-right"),scrollbarButtonUp:Ie("scrollbar-button-up","triangle-up"),scrollbarButtonDown:Ie("scrollbar-button-down","triangle-down"),toolBarMore:Ie("toolbar-more","more"),quickInputBack:Ie("quick-input-back","arrow-left"),dropDownButton:Ie("drop-down-button",60084),symbolCustomColor:Ie("symbol-customcolor",60252),exportIcon:Ie("export",60332),workspaceUnspecified:Ie("workspace-unspecified",60355),newLine:Ie("newline",60394),thumbsDownFilled:Ie("thumbsdown-filled",60435),thumbsUpFilled:Ie("thumbsup-filled",60436),gitFetch:Ie("git-fetch",60445),lightbulbSparkleAutofix:Ie("lightbulb-sparkle-autofix",60447),debugBreakpointPending:Ie("debug-breakpoint-pending",60377)},_s={...nze,...rze};class I0e{constructor(){this._tokenizationSupports=new Map,this._factories=new Map,this._onDidChange=new Qb,this.onDidChange=this._onDidChange.event,this._colorMap=null}handleChange(v){this._onDidChange.fire({changedLanguages:v,changedColorMap:!1})}register(v,T){return this._tokenizationSupports.set(v,T),this.handleChange([v]),kB(()=>{this._tokenizationSupports.get(v)===T&&(this._tokenizationSupports.delete(v),this.handleChange([v]))})}get(v){return this._tokenizationSupports.get(v)||null}registerFactory(v,T){var X;(X=this._factories.get(v))==null||X.dispose();const W=new ize(this,v,T);return this._factories.set(v,W),kB(()=>{const ue=this._factories.get(v);!ue||ue!==W||(this._factories.delete(v),ue.dispose())})}async getOrCreate(v){const T=this.get(v);if(T)return T;const W=this._factories.get(v);return!W||W.isResolved?null:(await W.resolve(),this.get(v))}isResolved(v){if(this.get(v))return!0;const W=this._factories.get(v);return!!(!W||W.isResolved)}setColorMap(v){this._colorMap=v,this._onDidChange.fire({changedLanguages:Array.from(this._tokenizationSupports.keys()),changedColorMap:!0})}getColorMap(){return this._colorMap}getDefaultBackground(){return this._colorMap&&this._colorMap.length>2?this._colorMap[2]:null}}class ize extends yM{get isResolved(){return this._isResolved}constructor(v,T,W){super(),this._registry=v,this._languageId=T,this._factory=W,this._isDisposed=!1,this._resolvePromise=null,this._isResolved=!1}dispose(){this._isDisposed=!0,super.dispose()}async resolve(){return this._resolvePromise||(this._resolvePromise=this._create()),this._resolvePromise}async _create(){const v=await this._factory.tokenizationSupport;this._isResolved=!0,v&&!this._isDisposed&&this._register(this._registry.register(this._languageId,v))}}class oze{constructor(v,T,W){this.offset=v,this.type=T,this.language=W,this._tokenBrand=void 0}toString(){return"("+this.offset+", "+this.type+")"}}var x0e;(function(g){g[g.Increase=0]="Increase",g[g.Decrease=1]="Decrease"})(x0e||(x0e={}));var R0e;(function(g){const v=new Map;v.set(0,_s.symbolMethod),v.set(1,_s.symbolFunction),v.set(2,_s.symbolConstructor),v.set(3,_s.symbolField),v.set(4,_s.symbolVariable),v.set(5,_s.symbolClass),v.set(6,_s.symbolStruct),v.set(7,_s.symbolInterface),v.set(8,_s.symbolModule),v.set(9,_s.symbolProperty),v.set(10,_s.symbolEvent),v.set(11,_s.symbolOperator),v.set(12,_s.symbolUnit),v.set(13,_s.symbolValue),v.set(15,_s.symbolEnum),v.set(14,_s.symbolConstant),v.set(15,_s.symbolEnum),v.set(16,_s.symbolEnumMember),v.set(17,_s.symbolKeyword),v.set(27,_s.symbolSnippet),v.set(18,_s.symbolText),v.set(19,_s.symbolColor),v.set(20,_s.symbolFile),v.set(21,_s.symbolReference),v.set(22,_s.symbolCustomColor),v.set(23,_s.symbolFolder),v.set(24,_s.symbolTypeParameter),v.set(25,_s.account),v.set(26,_s.issues);function T(ue){let Re=v.get(ue);return Re||(console.info("No codicon found for CompletionItemKind "+ue),Re=_s.symbolProperty),Re}g.toIcon=T;const W=new Map;W.set("method",0),W.set("function",1),W.set("constructor",2),W.set("field",3),W.set("variable",4),W.set("class",5),W.set("struct",6),W.set("interface",7),W.set("module",8),W.set("property",9),W.set("event",10),W.set("operator",11),W.set("unit",12),W.set("value",13),W.set("constant",14),W.set("enum",15),W.set("enum-member",16),W.set("enumMember",16),W.set("keyword",17),W.set("snippet",27),W.set("text",18),W.set("color",19),W.set("file",20),W.set("reference",21),W.set("customcolor",22),W.set("folder",23),W.set("type-parameter",24),W.set("typeParameter",24),W.set("account",25),W.set("issue",26);function X(ue,Re){let Be=W.get(ue);return typeof Be>"u"&&!Re&&(Be=9),Be}g.fromString=X})(R0e||(R0e={}));var D0e;(function(g){g[g.Automatic=0]="Automatic",g[g.Explicit=1]="Explicit"})(D0e||(D0e={}));var N0e;(function(g){g[g.Automatic=0]="Automatic",g[g.PasteAs=1]="PasteAs"})(N0e||(N0e={}));var C0e;(function(g){g[g.Invoke=1]="Invoke",g[g.TriggerCharacter=2]="TriggerCharacter",g[g.ContentChange=3]="ContentChange"})(C0e||(C0e={}));var P0e;(function(g){g[g.Text=0]="Text",g[g.Read=1]="Read",g[g.Write=2]="Write"})(P0e||(P0e={})),Qd("Array","array"),Qd("Boolean","boolean"),Qd("Class","class"),Qd("Constant","constant"),Qd("Constructor","constructor"),Qd("Enum","enumeration"),Qd("EnumMember","enumeration member"),Qd("Event","event"),Qd("Field","field"),Qd("File","file"),Qd("Function","function"),Qd("Interface","interface"),Qd("Key","key"),Qd("Method","method"),Qd("Module","module"),Qd("Namespace","namespace"),Qd("Null","null"),Qd("Number","number"),Qd("Object","object"),Qd("Operator","operator"),Qd("Package","package"),Qd("Property","property"),Qd("String","string"),Qd("Struct","struct"),Qd("TypeParameter","type parameter"),Qd("Variable","variable");var M0e;(function(g){const v=new Map;v.set(0,_s.symbolFile),v.set(1,_s.symbolModule),v.set(2,_s.symbolNamespace),v.set(3,_s.symbolPackage),v.set(4,_s.symbolClass),v.set(5,_s.symbolMethod),v.set(6,_s.symbolProperty),v.set(7,_s.symbolField),v.set(8,_s.symbolConstructor),v.set(9,_s.symbolEnum),v.set(10,_s.symbolInterface),v.set(11,_s.symbolFunction),v.set(12,_s.symbolVariable),v.set(13,_s.symbolConstant),v.set(14,_s.symbolString),v.set(15,_s.symbolNumber),v.set(16,_s.symbolBoolean),v.set(17,_s.symbolArray),v.set(18,_s.symbolObject),v.set(19,_s.symbolKey),v.set(20,_s.symbolNull),v.set(21,_s.symbolEnumMember),v.set(22,_s.symbolStruct),v.set(23,_s.symbolEvent),v.set(24,_s.symbolOperator),v.set(25,_s.symbolTypeParameter);function T(W){let X=v.get(W);return X||(console.info("No codicon found for SymbolKind "+W),X=_s.symbolProperty),X}g.toIcon=T})(M0e||(M0e={}));const t0=class t0{static fromValue(v){switch(v){case"comment":return t0.Comment;case"imports":return t0.Imports;case"region":return t0.Region}return new t0(v)}constructor(v){this.value=v}};t0.Comment=new t0("comment"),t0.Imports=new t0("imports"),t0.Region=new t0("region");let L0e=t0;var k0e;(function(g){g[g.AIGenerated=1]="AIGenerated"})(k0e||(k0e={}));var w0e;(function(g){g[g.Invoke=0]="Invoke",g[g.Automatic=1]="Automatic"})(w0e||(w0e={}));var O0e;(function(g){function v(T){return!T||typeof T!="object"?!1:typeof T.id=="string"&&typeof T.title=="string"}g.is=v})(O0e||(O0e={}));var W0e;(function(g){g[g.Type=1]="Type",g[g.Parameter=2]="Parameter"})(W0e||(W0e={})),new I0e,new I0e;var F0e;(function(g){g[g.Invoke=0]="Invoke",g[g.Automatic=1]="Automatic"})(F0e||(F0e={}));var z0e;(function(g){g[g.Unknown=0]="Unknown",g[g.Disabled=1]="Disabled",g[g.Enabled=2]="Enabled"})(z0e||(z0e={}));var B0e;(function(g){g[g.Invoke=1]="Invoke",g[g.Auto=2]="Auto"})(B0e||(B0e={}));var G0e;(function(g){g[g.None=0]="None",g[g.KeepWhitespace=1]="KeepWhitespace",g[g.InsertAsSnippet=4]="InsertAsSnippet"})(G0e||(G0e={}));var V0e;(function(g){g[g.Method=0]="Method",g[g.Function=1]="Function",g[g.Constructor=2]="Constructor",g[g.Field=3]="Field",g[g.Variable=4]="Variable",g[g.Class=5]="Class",g[g.Struct=6]="Struct",g[g.Interface=7]="Interface",g[g.Module=8]="Module",g[g.Property=9]="Property",g[g.Event=10]="Event",g[g.Operator=11]="Operator",g[g.Unit=12]="Unit",g[g.Value=13]="Value",g[g.Constant=14]="Constant",g[g.Enum=15]="Enum",g[g.EnumMember=16]="EnumMember",g[g.Keyword=17]="Keyword",g[g.Text=18]="Text",g[g.Color=19]="Color",g[g.File=20]="File",g[g.Reference=21]="Reference",g[g.Customcolor=22]="Customcolor",g[g.Folder=23]="Folder",g[g.TypeParameter=24]="TypeParameter",g[g.User=25]="User",g[g.Issue=26]="Issue",g[g.Snippet=27]="Snippet"})(V0e||(V0e={}));var j0e;(function(g){g[g.Deprecated=1]="Deprecated"})(j0e||(j0e={}));var U0e;(function(g){g[g.Invoke=0]="Invoke",g[g.TriggerCharacter=1]="TriggerCharacter",g[g.TriggerForIncompleteCompletions=2]="TriggerForIncompleteCompletions"})(U0e||(U0e={}));var H0e;(function(g){g[g.EXACT=0]="EXACT",g[g.ABOVE=1]="ABOVE",g[g.BELOW=2]="BELOW"})(H0e||(H0e={}));var q0e;(function(g){g[g.NotSet=0]="NotSet",g[g.ContentFlush=1]="ContentFlush",g[g.RecoverFromMarkers=2]="RecoverFromMarkers",g[g.Explicit=3]="Explicit",g[g.Paste=4]="Paste",g[g.Undo=5]="Undo",g[g.Redo=6]="Redo"})(q0e||(q0e={}));var J0e;(function(g){g[g.LF=1]="LF",g[g.CRLF=2]="CRLF"})(J0e||(J0e={}));var K0e;(function(g){g[g.Text=0]="Text",g[g.Read=1]="Read",g[g.Write=2]="Write"})(K0e||(K0e={}));var X0e;(function(g){g[g.None=0]="None",g[g.Keep=1]="Keep",g[g.Brackets=2]="Brackets",g[g.Advanced=3]="Advanced",g[g.Full=4]="Full"})(X0e||(X0e={}));var Y0e;(function(g){g[g.acceptSuggestionOnCommitCharacter=0]="acceptSuggestionOnCommitCharacter",g[g.acceptSuggestionOnEnter=1]="acceptSuggestionOnEnter",g[g.accessibilitySupport=2]="accessibilitySupport",g[g.accessibilityPageSize=3]="accessibilityPageSize",g[g.ariaLabel=4]="ariaLabel",g[g.ariaRequired=5]="ariaRequired",g[g.autoClosingBrackets=6]="autoClosingBrackets",g[g.autoClosingComments=7]="autoClosingComments",g[g.screenReaderAnnounceInlineSuggestion=8]="screenReaderAnnounceInlineSuggestion",g[g.autoClosingDelete=9]="autoClosingDelete",g[g.autoClosingOvertype=10]="autoClosingOvertype",g[g.autoClosingQuotes=11]="autoClosingQuotes",g[g.autoIndent=12]="autoIndent",g[g.automaticLayout=13]="automaticLayout",g[g.autoSurround=14]="autoSurround",g[g.bracketPairColorization=15]="bracketPairColorization",g[g.guides=16]="guides",g[g.codeLens=17]="codeLens",g[g.codeLensFontFamily=18]="codeLensFontFamily",g[g.codeLensFontSize=19]="codeLensFontSize",g[g.colorDecorators=20]="colorDecorators",g[g.colorDecoratorsLimit=21]="colorDecoratorsLimit",g[g.columnSelection=22]="columnSelection",g[g.comments=23]="comments",g[g.contextmenu=24]="contextmenu",g[g.copyWithSyntaxHighlighting=25]="copyWithSyntaxHighlighting",g[g.cursorBlinking=26]="cursorBlinking",g[g.cursorSmoothCaretAnimation=27]="cursorSmoothCaretAnimation",g[g.cursorStyle=28]="cursorStyle",g[g.cursorSurroundingLines=29]="cursorSurroundingLines",g[g.cursorSurroundingLinesStyle=30]="cursorSurroundingLinesStyle",g[g.cursorWidth=31]="cursorWidth",g[g.disableLayerHinting=32]="disableLayerHinting",g[g.disableMonospaceOptimizations=33]="disableMonospaceOptimizations",g[g.domReadOnly=34]="domReadOnly",g[g.dragAndDrop=35]="dragAndDrop",g[g.dropIntoEditor=36]="dropIntoEditor",g[g.emptySelectionClipboard=37]="emptySelectionClipboard",g[g.experimentalWhitespaceRendering=38]="experimentalWhitespaceRendering",g[g.extraEditorClassName=39]="extraEditorClassName",g[g.fastScrollSensitivity=40]="fastScrollSensitivity",g[g.find=41]="find",g[g.fixedOverflowWidgets=42]="fixedOverflowWidgets",g[g.folding=43]="folding",g[g.foldingStrategy=44]="foldingStrategy",g[g.foldingHighlight=45]="foldingHighlight",g[g.foldingImportsByDefault=46]="foldingImportsByDefault",g[g.foldingMaximumRegions=47]="foldingMaximumRegions",g[g.unfoldOnClickAfterEndOfLine=48]="unfoldOnClickAfterEndOfLine",g[g.fontFamily=49]="fontFamily",g[g.fontInfo=50]="fontInfo",g[g.fontLigatures=51]="fontLigatures",g[g.fontSize=52]="fontSize",g[g.fontWeight=53]="fontWeight",g[g.fontVariations=54]="fontVariations",g[g.formatOnPaste=55]="formatOnPaste",g[g.formatOnType=56]="formatOnType",g[g.glyphMargin=57]="glyphMargin",g[g.gotoLocation=58]="gotoLocation",g[g.hideCursorInOverviewRuler=59]="hideCursorInOverviewRuler",g[g.hover=60]="hover",g[g.inDiffEditor=61]="inDiffEditor",g[g.inlineSuggest=62]="inlineSuggest",g[g.inlineEdit=63]="inlineEdit",g[g.letterSpacing=64]="letterSpacing",g[g.lightbulb=65]="lightbulb",g[g.lineDecorationsWidth=66]="lineDecorationsWidth",g[g.lineHeight=67]="lineHeight",g[g.lineNumbers=68]="lineNumbers",g[g.lineNumbersMinChars=69]="lineNumbersMinChars",g[g.linkedEditing=70]="linkedEditing",g[g.links=71]="links",g[g.matchBrackets=72]="matchBrackets",g[g.minimap=73]="minimap",g[g.mouseStyle=74]="mouseStyle",g[g.mouseWheelScrollSensitivity=75]="mouseWheelScrollSensitivity",g[g.mouseWheelZoom=76]="mouseWheelZoom",g[g.multiCursorMergeOverlapping=77]="multiCursorMergeOverlapping",g[g.multiCursorModifier=78]="multiCursorModifier",g[g.multiCursorPaste=79]="multiCursorPaste",g[g.multiCursorLimit=80]="multiCursorLimit",g[g.occurrencesHighlight=81]="occurrencesHighlight",g[g.overviewRulerBorder=82]="overviewRulerBorder",g[g.overviewRulerLanes=83]="overviewRulerLanes",g[g.padding=84]="padding",g[g.pasteAs=85]="pasteAs",g[g.parameterHints=86]="parameterHints",g[g.peekWidgetDefaultFocus=87]="peekWidgetDefaultFocus",g[g.placeholder=88]="placeholder",g[g.definitionLinkOpensInPeek=89]="definitionLinkOpensInPeek",g[g.quickSuggestions=90]="quickSuggestions",g[g.quickSuggestionsDelay=91]="quickSuggestionsDelay",g[g.readOnly=92]="readOnly",g[g.readOnlyMessage=93]="readOnlyMessage",g[g.renameOnType=94]="renameOnType",g[g.renderControlCharacters=95]="renderControlCharacters",g[g.renderFinalNewline=96]="renderFinalNewline",g[g.renderLineHighlight=97]="renderLineHighlight",g[g.renderLineHighlightOnlyWhenFocus=98]="renderLineHighlightOnlyWhenFocus",g[g.renderValidationDecorations=99]="renderValidationDecorations",g[g.renderWhitespace=100]="renderWhitespace",g[g.revealHorizontalRightPadding=101]="revealHorizontalRightPadding",g[g.roundedSelection=102]="roundedSelection",g[g.rulers=103]="rulers",g[g.scrollbar=104]="scrollbar",g[g.scrollBeyondLastColumn=105]="scrollBeyondLastColumn",g[g.scrollBeyondLastLine=106]="scrollBeyondLastLine",g[g.scrollPredominantAxis=107]="scrollPredominantAxis",g[g.selectionClipboard=108]="selectionClipboard",g[g.selectionHighlight=109]="selectionHighlight",g[g.selectOnLineNumbers=110]="selectOnLineNumbers",g[g.showFoldingControls=111]="showFoldingControls",g[g.showUnused=112]="showUnused",g[g.snippetSuggestions=113]="snippetSuggestions",g[g.smartSelect=114]="smartSelect",g[g.smoothScrolling=115]="smoothScrolling",g[g.stickyScroll=116]="stickyScroll",g[g.stickyTabStops=117]="stickyTabStops",g[g.stopRenderingLineAfter=118]="stopRenderingLineAfter",g[g.suggest=119]="suggest",g[g.suggestFontSize=120]="suggestFontSize",g[g.suggestLineHeight=121]="suggestLineHeight",g[g.suggestOnTriggerCharacters=122]="suggestOnTriggerCharacters",g[g.suggestSelection=123]="suggestSelection",g[g.tabCompletion=124]="tabCompletion",g[g.tabIndex=125]="tabIndex",g[g.unicodeHighlighting=126]="unicodeHighlighting",g[g.unusualLineTerminators=127]="unusualLineTerminators",g[g.useShadowDOM=128]="useShadowDOM",g[g.useTabStops=129]="useTabStops",g[g.wordBreak=130]="wordBreak",g[g.wordSegmenterLocales=131]="wordSegmenterLocales",g[g.wordSeparators=132]="wordSeparators",g[g.wordWrap=133]="wordWrap",g[g.wordWrapBreakAfterCharacters=134]="wordWrapBreakAfterCharacters",g[g.wordWrapBreakBeforeCharacters=135]="wordWrapBreakBeforeCharacters",g[g.wordWrapColumn=136]="wordWrapColumn",g[g.wordWrapOverride1=137]="wordWrapOverride1",g[g.wordWrapOverride2=138]="wordWrapOverride2",g[g.wrappingIndent=139]="wrappingIndent",g[g.wrappingStrategy=140]="wrappingStrategy",g[g.showDeprecated=141]="showDeprecated",g[g.inlayHints=142]="inlayHints",g[g.editorClassName=143]="editorClassName",g[g.pixelRatio=144]="pixelRatio",g[g.tabFocusMode=145]="tabFocusMode",g[g.layoutInfo=146]="layoutInfo",g[g.wrappingInfo=147]="wrappingInfo",g[g.defaultColorDecorators=148]="defaultColorDecorators",g[g.colorDecoratorsActivatedOn=149]="colorDecoratorsActivatedOn",g[g.inlineCompletionsAccessibilityVerbose=150]="inlineCompletionsAccessibilityVerbose"})(Y0e||(Y0e={}));var $0e;(function(g){g[g.TextDefined=0]="TextDefined",g[g.LF=1]="LF",g[g.CRLF=2]="CRLF"})($0e||($0e={}));var Q0e;(function(g){g[g.LF=0]="LF",g[g.CRLF=1]="CRLF"})(Q0e||(Q0e={}));var Z0e;(function(g){g[g.Left=1]="Left",g[g.Center=2]="Center",g[g.Right=3]="Right"})(Z0e||(Z0e={}));var eEe;(function(g){g[g.Increase=0]="Increase",g[g.Decrease=1]="Decrease"})(eEe||(eEe={}));var tEe;(function(g){g[g.None=0]="None",g[g.Indent=1]="Indent",g[g.IndentOutdent=2]="IndentOutdent",g[g.Outdent=3]="Outdent"})(tEe||(tEe={}));var nEe;(function(g){g[g.Both=0]="Both",g[g.Right=1]="Right",g[g.Left=2]="Left",g[g.None=3]="None"})(nEe||(nEe={}));var rEe;(function(g){g[g.Type=1]="Type",g[g.Parameter=2]="Parameter"})(rEe||(rEe={}));var iEe;(function(g){g[g.Automatic=0]="Automatic",g[g.Explicit=1]="Explicit"})(iEe||(iEe={}));var oEe;(function(g){g[g.Invoke=0]="Invoke",g[g.Automatic=1]="Automatic"})(oEe||(oEe={}));var ane;(function(g){g[g.DependsOnKbLayout=-1]="DependsOnKbLayout",g[g.Unknown=0]="Unknown",g[g.Backspace=1]="Backspace",g[g.Tab=2]="Tab",g[g.Enter=3]="Enter",g[g.Shift=4]="Shift",g[g.Ctrl=5]="Ctrl",g[g.Alt=6]="Alt",g[g.PauseBreak=7]="PauseBreak",g[g.CapsLock=8]="CapsLock",g[g.Escape=9]="Escape",g[g.Space=10]="Space",g[g.PageUp=11]="PageUp",g[g.PageDown=12]="PageDown",g[g.End=13]="End",g[g.Home=14]="Home",g[g.LeftArrow=15]="LeftArrow",g[g.UpArrow=16]="UpArrow",g[g.RightArrow=17]="RightArrow",g[g.DownArrow=18]="DownArrow",g[g.Insert=19]="Insert",g[g.Delete=20]="Delete",g[g.Digit0=21]="Digit0",g[g.Digit1=22]="Digit1",g[g.Digit2=23]="Digit2",g[g.Digit3=24]="Digit3",g[g.Digit4=25]="Digit4",g[g.Digit5=26]="Digit5",g[g.Digit6=27]="Digit6",g[g.Digit7=28]="Digit7",g[g.Digit8=29]="Digit8",g[g.Digit9=30]="Digit9",g[g.KeyA=31]="KeyA",g[g.KeyB=32]="KeyB",g[g.KeyC=33]="KeyC",g[g.KeyD=34]="KeyD",g[g.KeyE=35]="KeyE",g[g.KeyF=36]="KeyF",g[g.KeyG=37]="KeyG",g[g.KeyH=38]="KeyH",g[g.KeyI=39]="KeyI",g[g.KeyJ=40]="KeyJ",g[g.KeyK=41]="KeyK",g[g.KeyL=42]="KeyL",g[g.KeyM=43]="KeyM",g[g.KeyN=44]="KeyN",g[g.KeyO=45]="KeyO",g[g.KeyP=46]="KeyP",g[g.KeyQ=47]="KeyQ",g[g.KeyR=48]="KeyR",g[g.KeyS=49]="KeyS",g[g.KeyT=50]="KeyT",g[g.KeyU=51]="KeyU",g[g.KeyV=52]="KeyV",g[g.KeyW=53]="KeyW",g[g.KeyX=54]="KeyX",g[g.KeyY=55]="KeyY",g[g.KeyZ=56]="KeyZ",g[g.Meta=57]="Meta",g[g.ContextMenu=58]="ContextMenu",g[g.F1=59]="F1",g[g.F2=60]="F2",g[g.F3=61]="F3",g[g.F4=62]="F4",g[g.F5=63]="F5",g[g.F6=64]="F6",g[g.F7=65]="F7",g[g.F8=66]="F8",g[g.F9=67]="F9",g[g.F10=68]="F10",g[g.F11=69]="F11",g[g.F12=70]="F12",g[g.F13=71]="F13",g[g.F14=72]="F14",g[g.F15=73]="F15",g[g.F16=74]="F16",g[g.F17=75]="F17",g[g.F18=76]="F18",g[g.F19=77]="F19",g[g.F20=78]="F20",g[g.F21=79]="F21",g[g.F22=80]="F22",g[g.F23=81]="F23",g[g.F24=82]="F24",g[g.NumLock=83]="NumLock",g[g.ScrollLock=84]="ScrollLock",g[g.Semicolon=85]="Semicolon",g[g.Equal=86]="Equal",g[g.Comma=87]="Comma",g[g.Minus=88]="Minus",g[g.Period=89]="Period",g[g.Slash=90]="Slash",g[g.Backquote=91]="Backquote",g[g.BracketLeft=92]="BracketLeft",g[g.Backslash=93]="Backslash",g[g.BracketRight=94]="BracketRight",g[g.Quote=95]="Quote",g[g.OEM_8=96]="OEM_8",g[g.IntlBackslash=97]="IntlBackslash",g[g.Numpad0=98]="Numpad0",g[g.Numpad1=99]="Numpad1",g[g.Numpad2=100]="Numpad2",g[g.Numpad3=101]="Numpad3",g[g.Numpad4=102]="Numpad4",g[g.Numpad5=103]="Numpad5",g[g.Numpad6=104]="Numpad6",g[g.Numpad7=105]="Numpad7",g[g.Numpad8=106]="Numpad8",g[g.Numpad9=107]="Numpad9",g[g.NumpadMultiply=108]="NumpadMultiply",g[g.NumpadAdd=109]="NumpadAdd",g[g.NUMPAD_SEPARATOR=110]="NUMPAD_SEPARATOR",g[g.NumpadSubtract=111]="NumpadSubtract",g[g.NumpadDecimal=112]="NumpadDecimal",g[g.NumpadDivide=113]="NumpadDivide",g[g.KEY_IN_COMPOSITION=114]="KEY_IN_COMPOSITION",g[g.ABNT_C1=115]="ABNT_C1",g[g.ABNT_C2=116]="ABNT_C2",g[g.AudioVolumeMute=117]="AudioVolumeMute",g[g.AudioVolumeUp=118]="AudioVolumeUp",g[g.AudioVolumeDown=119]="AudioVolumeDown",g[g.BrowserSearch=120]="BrowserSearch",g[g.BrowserHome=121]="BrowserHome",g[g.BrowserBack=122]="BrowserBack",g[g.BrowserForward=123]="BrowserForward",g[g.MediaTrackNext=124]="MediaTrackNext",g[g.MediaTrackPrevious=125]="MediaTrackPrevious",g[g.MediaStop=126]="MediaStop",g[g.MediaPlayPause=127]="MediaPlayPause",g[g.LaunchMediaPlayer=128]="LaunchMediaPlayer",g[g.LaunchMail=129]="LaunchMail",g[g.LaunchApp2=130]="LaunchApp2",g[g.Clear=131]="Clear",g[g.MAX_VALUE=132]="MAX_VALUE"})(ane||(ane={}));var sne;(function(g){g[g.Hint=1]="Hint",g[g.Info=2]="Info",g[g.Warning=4]="Warning",g[g.Error=8]="Error"})(sne||(sne={}));var lne;(function(g){g[g.Unnecessary=1]="Unnecessary",g[g.Deprecated=2]="Deprecated"})(lne||(lne={}));var aEe;(function(g){g[g.Inline=1]="Inline",g[g.Gutter=2]="Gutter"})(aEe||(aEe={}));var sEe;(function(g){g[g.Normal=1]="Normal",g[g.Underlined=2]="Underlined"})(sEe||(sEe={}));var lEe;(function(g){g[g.UNKNOWN=0]="UNKNOWN",g[g.TEXTAREA=1]="TEXTAREA",g[g.GUTTER_GLYPH_MARGIN=2]="GUTTER_GLYPH_MARGIN",g[g.GUTTER_LINE_NUMBERS=3]="GUTTER_LINE_NUMBERS",g[g.GUTTER_LINE_DECORATIONS=4]="GUTTER_LINE_DECORATIONS",g[g.GUTTER_VIEW_ZONE=5]="GUTTER_VIEW_ZONE",g[g.CONTENT_TEXT=6]="CONTENT_TEXT",g[g.CONTENT_EMPTY=7]="CONTENT_EMPTY",g[g.CONTENT_VIEW_ZONE=8]="CONTENT_VIEW_ZONE",g[g.CONTENT_WIDGET=9]="CONTENT_WIDGET",g[g.OVERVIEW_RULER=10]="OVERVIEW_RULER",g[g.SCROLLBAR=11]="SCROLLBAR",g[g.OVERLAY_WIDGET=12]="OVERLAY_WIDGET",g[g.OUTSIDE_EDITOR=13]="OUTSIDE_EDITOR"})(lEe||(lEe={}));var cEe;(function(g){g[g.AIGenerated=1]="AIGenerated"})(cEe||(cEe={}));var uEe;(function(g){g[g.Invoke=0]="Invoke",g[g.Automatic=1]="Automatic"})(uEe||(uEe={}));var dEe;(function(g){g[g.TOP_RIGHT_CORNER=0]="TOP_RIGHT_CORNER",g[g.BOTTOM_RIGHT_CORNER=1]="BOTTOM_RIGHT_CORNER",g[g.TOP_CENTER=2]="TOP_CENTER"})(dEe||(dEe={}));var pEe;(function(g){g[g.Left=1]="Left",g[g.Center=2]="Center",g[g.Right=4]="Right",g[g.Full=7]="Full"})(pEe||(pEe={}));var fEe;(function(g){g[g.Word=0]="Word",g[g.Line=1]="Line",g[g.Suggest=2]="Suggest"})(fEe||(fEe={}));var mEe;(function(g){g[g.Left=0]="Left",g[g.Right=1]="Right",g[g.None=2]="None",g[g.LeftOfInjectedText=3]="LeftOfInjectedText",g[g.RightOfInjectedText=4]="RightOfInjectedText"})(mEe||(mEe={}));var _Ee;(function(g){g[g.Off=0]="Off",g[g.On=1]="On",g[g.Relative=2]="Relative",g[g.Interval=3]="Interval",g[g.Custom=4]="Custom"})(_Ee||(_Ee={}));var hEe;(function(g){g[g.None=0]="None",g[g.Text=1]="Text",g[g.Blocks=2]="Blocks"})(hEe||(hEe={}));var gEe;(function(g){g[g.Smooth=0]="Smooth",g[g.Immediate=1]="Immediate"})(gEe||(gEe={}));var vEe;(function(g){g[g.Auto=1]="Auto",g[g.Hidden=2]="Hidden",g[g.Visible=3]="Visible"})(vEe||(vEe={}));var cne;(function(g){g[g.LTR=0]="LTR",g[g.RTL=1]="RTL"})(cne||(cne={}));var yEe;(function(g){g.Off="off",g.OnCode="onCode",g.On="on"})(yEe||(yEe={}));var bEe;(function(g){g[g.Invoke=1]="Invoke",g[g.TriggerCharacter=2]="TriggerCharacter",g[g.ContentChange=3]="ContentChange"})(bEe||(bEe={}));var EEe;(function(g){g[g.File=0]="File",g[g.Module=1]="Module",g[g.Namespace=2]="Namespace",g[g.Package=3]="Package",g[g.Class=4]="Class",g[g.Method=5]="Method",g[g.Property=6]="Property",g[g.Field=7]="Field",g[g.Constructor=8]="Constructor",g[g.Enum=9]="Enum",g[g.Interface=10]="Interface",g[g.Function=11]="Function",g[g.Variable=12]="Variable",g[g.Constant=13]="Constant",g[g.String=14]="String",g[g.Number=15]="Number",g[g.Boolean=16]="Boolean",g[g.Array=17]="Array",g[g.Object=18]="Object",g[g.Key=19]="Key",g[g.Null=20]="Null",g[g.EnumMember=21]="EnumMember",g[g.Struct=22]="Struct",g[g.Event=23]="Event",g[g.Operator=24]="Operator",g[g.TypeParameter=25]="TypeParameter"})(EEe||(EEe={}));var SEe;(function(g){g[g.Deprecated=1]="Deprecated"})(SEe||(SEe={}));var TEe;(function(g){g[g.Hidden=0]="Hidden",g[g.Blink=1]="Blink",g[g.Smooth=2]="Smooth",g[g.Phase=3]="Phase",g[g.Expand=4]="Expand",g[g.Solid=5]="Solid"})(TEe||(TEe={}));var AEe;(function(g){g[g.Line=1]="Line",g[g.Block=2]="Block",g[g.Underline=3]="Underline",g[g.LineThin=4]="LineThin",g[g.BlockOutline=5]="BlockOutline",g[g.UnderlineThin=6]="UnderlineThin"})(AEe||(AEe={}));var IEe;(function(g){g[g.AlwaysGrowsWhenTypingAtEdges=0]="AlwaysGrowsWhenTypingAtEdges",g[g.NeverGrowsWhenTypingAtEdges=1]="NeverGrowsWhenTypingAtEdges",g[g.GrowsOnlyWhenTypingBefore=2]="GrowsOnlyWhenTypingBefore",g[g.GrowsOnlyWhenTypingAfter=3]="GrowsOnlyWhenTypingAfter"})(IEe||(IEe={}));var xEe;(function(g){g[g.None=0]="None",g[g.Same=1]="Same",g[g.Indent=2]="Indent",g[g.DeepIndent=3]="DeepIndent"})(xEe||(xEe={}));const kM=class kM{static chord(v,T){return eze(v,T)}};kM.CtrlCmd=2048,kM.Shift=1024,kM.Alt=512,kM.WinCtrl=256;let une=kM;function aze(){return{editor:void 0,languages:void 0,CancellationTokenSource:Y5e,Emitter:Qb,KeyCode:ane,KeyMod:une,Position:rd,Range:ys,Selection:Iy,SelectionDirection:cne,MarkerSeverity:sne,MarkerTag:lne,Uri:xv,Token:oze}}const D6=class D6{static getChannel(v){return v.getChannel(D6.CHANNEL_NAME)}static setChannel(v,T){v.setChannel(D6.CHANNEL_NAME,T)}};D6.CHANNEL_NAME="editorWorkerHost";let dne=D6;var REe;class sze{constructor(){this[REe]="LinkedMap",this._map=new Map,this._head=void 0,this._tail=void 0,this._size=0,this._state=0}clear(){this._map.clear(),this._head=void 0,this._tail=void 0,this._size=0,this._state++}isEmpty(){return!this._head&&!this._tail}get size(){return this._size}get first(){var v;return(v=this._head)==null?void 0:v.value}get last(){var v;return(v=this._tail)==null?void 0:v.value}has(v){return this._map.has(v)}get(v,T=0){const W=this._map.get(v);if(W)return T!==0&&this.touch(W,T),W.value}set(v,T,W=0){let X=this._map.get(v);if(X)X.value=T,W!==0&&this.touch(X,W);else{switch(X={key:v,value:T,next:void 0,previous:void 0},W){case 0:this.addItemLast(X);break;case 1:this.addItemFirst(X);break;case 2:this.addItemLast(X);break;default:this.addItemLast(X);break}this._map.set(v,X),this._size++}return this}delete(v){return!!this.remove(v)}remove(v){const T=this._map.get(v);if(T)return this._map.delete(v),this.removeItem(T),this._size--,T.value}shift(){if(!this._head&&!this._tail)return;if(!this._head||!this._tail)throw new Error("Invalid list");const v=this._head;return this._map.delete(v.key),this.removeItem(v),this._size--,v.value}forEach(v,T){const W=this._state;let X=this._head;for(;X;){if(T?v.bind(T)(X.value,X.key,this):v(X.value,X.key,this),this._state!==W)throw new Error("LinkedMap got modified during iteration.");X=X.next}}keys(){const v=this,T=this._state;let W=this._head;const X={[Symbol.iterator](){return X},next(){if(v._state!==T)throw new Error("LinkedMap got modified during iteration.");if(W){const ue={value:W.key,done:!1};return W=W.next,ue}else return{value:void 0,done:!0}}};return X}values(){const v=this,T=this._state;let W=this._head;const X={[Symbol.iterator](){return X},next(){if(v._state!==T)throw new Error("LinkedMap got modified during iteration.");if(W){const ue={value:W.value,done:!1};return W=W.next,ue}else return{value:void 0,done:!0}}};return X}entries(){const v=this,T=this._state;let W=this._head;const X={[Symbol.iterator](){return X},next(){if(v._state!==T)throw new Error("LinkedMap got modified during iteration.");if(W){const ue={value:[W.key,W.value],done:!1};return W=W.next,ue}else return{value:void 0,done:!0}}};return X}[(REe=Symbol.toStringTag,Symbol.iterator)](){return this.entries()}trimOld(v){if(v>=this.size)return;if(v===0){this.clear();return}let T=this._head,W=this.size;for(;T&&W>v;)this._map.delete(T.key),T=T.next,W--;this._head=T,this._size=W,T&&(T.previous=void 0),this._state++}trimNew(v){if(v>=this.size)return;if(v===0){this.clear();return}let T=this._tail,W=this.size;for(;T&&W>v;)this._map.delete(T.key),T=T.previous,W--;this._tail=T,this._size=W,T&&(T.next=void 0),this._state++}addItemFirst(v){if(!this._head&&!this._tail)this._tail=v;else if(this._head)v.next=this._head,this._head.previous=v;else throw new Error("Invalid list");this._head=v,this._state++}addItemLast(v){if(!this._head&&!this._tail)this._head=v;else if(this._tail)v.previous=this._tail,this._tail.next=v;else throw new Error("Invalid list");this._tail=v,this._state++}removeItem(v){if(v===this._head&&v===this._tail)this._head=void 0,this._tail=void 0;else if(v===this._head){if(!v.next)throw new Error("Invalid list");v.next.previous=void 0,this._head=v.next}else if(v===this._tail){if(!v.previous)throw new Error("Invalid list");v.previous.next=void 0,this._tail=v.previous}else{const T=v.next,W=v.previous;if(!T||!W)throw new Error("Invalid list");T.previous=W,W.next=T}v.next=void 0,v.previous=void 0,this._state++}touch(v,T){if(!this._head||!this._tail)throw new Error("Invalid list");if(!(T!==1&&T!==2)){if(T===1){if(v===this._head)return;const W=v.next,X=v.previous;v===this._tail?(X.next=void 0,this._tail=X):(W.previous=X,X.next=W),v.previous=void 0,v.next=this._head,this._head.previous=v,this._head=v,this._state++}else if(T===2){if(v===this._tail)return;const W=v.next,X=v.previous;v===this._head?(W.previous=void 0,this._head=W):(W.previous=X,X.next=W),v.next=void 0,v.previous=this._tail,this._tail.next=v,this._tail=v,this._state++}}}toJSON(){const v=[];return this.forEach((T,W)=>{v.push([W,T])}),v}fromJSON(v){this.clear();for(const[T,W]of v)this.set(T,W)}}class lze extends sze{constructor(v,T=1){super(),this._limit=v,this._ratio=Math.min(Math.max(0,T),1)}get limit(){return this._limit}set limit(v){this._limit=v,this.checkTrim()}get(v,T=2){return super.get(v,T)}peek(v){return super.get(v,0)}set(v,T){return super.set(v,T,2),this}checkTrim(){this.size>this._limit&&this.trim(Math.round(this._limit*this._ratio))}}class cze extends lze{constructor(v,T=1){super(v,T)}trim(v){this.trimOld(v)}set(v,T){return super.set(v,T),this.checkTrim(),this}}class uze{constructor(){this.map=new Map}add(v,T){let W=this.map.get(v);W||(W=new Set,this.map.set(v,W)),W.add(T)}delete(v,T){const W=this.map.get(v);W&&(W.delete(T),W.size===0&&this.map.delete(v))}forEach(v,T){const W=this.map.get(v);W&&W.forEach(T)}get(v){const T=this.map.get(v);return T||new Set}}new cze(10);function dze(g){let v=[];for(;Object.prototype!==g;)v=v.concat(Object.getOwnPropertyNames(g)),g=Object.getPrototypeOf(g);return v}function DEe(g){const v=[];for(const T of dze(g))typeof g[T]=="function"&&v.push(T);return v}function pze(g,v){const T=X=>function(){const ue=Array.prototype.slice.call(arguments,0);return v(X,ue)},W={};for(const X of g)W[X]=T(X);return W}var NEe;(function(g){g[g.Left=1]="Left",g[g.Center=2]="Center",g[g.Right=4]="Right",g[g.Full=7]="Full"})(NEe||(NEe={}));var CEe;(function(g){g[g.Left=1]="Left",g[g.Center=2]="Center",g[g.Right=3]="Right"})(CEe||(CEe={}));var PEe;(function(g){g[g.Both=0]="Both",g[g.Right=1]="Right",g[g.Left=2]="Left",g[g.None=3]="None"})(PEe||(PEe={}));function fze(g,v,T,W,X){if(W===0)return!0;const ue=v.charCodeAt(W-1);if(g.get(ue)!==0||ue===13||ue===10)return!0;if(X>0){const Re=v.charCodeAt(W);if(g.get(Re)!==0)return!0}return!1}function mze(g,v,T,W,X){if(W+X===T)return!0;const ue=v.charCodeAt(W+X);if(g.get(ue)!==0||ue===13||ue===10)return!0;if(X>0){const Re=v.charCodeAt(W+X-1);if(g.get(Re)!==0)return!0}return!1}function _ze(g,v,T,W,X){return fze(g,v,T,W,X)&&mze(g,v,T,W,X)}class hze{constructor(v,T){this._wordSeparators=v,this._searchRegex=T,this._prevMatchStartIndex=-1,this._prevMatchLength=0}reset(v){this._searchRegex.lastIndex=v,this._prevMatchStartIndex=-1,this._prevMatchLength=0}next(v){const T=v.length;let W;do{if(this._prevMatchStartIndex+this._prevMatchLength===T||(W=this._searchRegex.exec(v),!W))return null;const X=W.index,ue=W[0].length;if(X===this._prevMatchStartIndex&&ue===this._prevMatchLength){if(ue===0){c5e(v,T,this._searchRegex.lastIndex)>65535?this._searchRegex.lastIndex+=2:this._searchRegex.lastIndex+=1;continue}return null}if(this._prevMatchStartIndex=X,this._prevMatchLength=ue,!this._wordSeparators||_ze(this._wordSeparators,v,T,X,ue))return W}while(W);return null}}function gze(g,v="Unreachable"){throw new Error(v)}function qB(g){if(!g()){debugger;g(),_6(new Ay("Assertion Failed"))}}function MEe(g,v){let T=0;for(;T<g.length-1;){const W=g[T],X=g[T+1];if(!v(W,X))return!1;T++}return!0}const vze="`~!@#$%^&*()-=+[{]}\\|;:'\",.<>/?";function yze(g=""){let v="(-?\\d*\\.\\d\\w*)|([^";for(const T of vze)g.indexOf(T)>=0||(v+="\\"+T);return v+="\\s]+)",new RegExp(v,"g")}const LEe=yze();function kEe(g){let v=LEe;if(g&&g instanceof RegExp)if(g.global)v=g;else{let T="g";g.ignoreCase&&(T+="i"),g.multiline&&(T+="m"),g.unicode&&(T+="u"),v=new RegExp(g.source,T)}return v.lastIndex=0,v}const wEe=new z7e;wEe.unshift({maxLen:1e3,windowSize:15,timeBudget:150});function pne(g,v,T,W,X){if(v=kEe(v),X||(X=LB.first(wEe)),T.length>X.maxLen){let Me=g-X.maxLen/2;return Me<0?Me=0:W+=Me,T=T.substring(Me,g+X.maxLen/2),pne(g,v,T,W,X)}const ue=Date.now(),Re=g-1-W;let Be=-1,it=null;for(let Me=1;!(Date.now()-ue>=X.timeBudget);Me++){const Ue=Re-X.windowSize*Me;v.lastIndex=Math.max(0,Ue);const Bt=bze(v,T,Re,Be);if(!Bt&&it||(it=Bt,Ue<=0))break;Be=Ue}if(it){const Me={word:it[0],startColumn:W+1+it.index,endColumn:W+1+it.index+it[0].length};return v.lastIndex=0,Me}return null}function bze(g,v,T,W){let X;for(;X=g.exec(v);){const ue=X.index||0;if(ue<=T&&g.lastIndex>=T)return X;if(W>0&&ue>W)return null}return null}class Eze{static computeUnicodeHighlights(v,T,W){const X=W?W.startLineNumber:1,ue=W?W.endLineNumber:v.getLineCount(),Re=new OEe(T),Be=Re.getCandidateCodePoints();let it;Be==="allNonBasicAscii"?it=new RegExp("[^\\t\\n\\r\\x20-\\x7E]","g"):it=new RegExp(`${Sze(Array.from(Be))}`,"g");const Me=new hze(null,it),Ue=[];let Bt=!1,Ut,dn=0,Pr=0,yi=0;e:for(let co=X,Zn=ue;co<=Zn;co++){const An=v.getLineContent(co),Oo=An.length;Me.reset(0);do if(Ut=Me.next(An),Ut){let Gr=Ut.index,Bi=Ut.index+Ut[0].length;if(Gr>0){const Sc=An.charCodeAt(Gr-1);FB(Sc)&&Gr--}if(Bi+1<Oo){const Sc=An.charCodeAt(Bi-1);FB(Sc)&&Bi++}const Uo=An.substring(Gr,Bi);let Nr=pne(Gr+1,LEe,An,0);Nr&&Nr.endColumn<=Gr+1&&(Nr=null);const Ca=Re.shouldHighlightNonBasicASCII(Uo,Nr?Nr.word:null);if(Ca!==0){if(Ca===3?dn++:Ca===2?Pr++:Ca===1?yi++:gze(),Ue.length>=1e3){Bt=!0;break e}Ue.push(new ys(co,Gr+1,co,Bi+1))}}while(Ut)}return{ranges:Ue,hasMore:Bt,ambiguousCharacterCount:dn,invisibleCharacterCount:Pr,nonBasicAsciiCharacterCount:yi}}static computeUnicodeHighlightReason(v,T){const W=new OEe(T);switch(W.shouldHighlightNonBasicASCII(v,null)){case 0:return null;case 2:return{kind:1};case 3:{const ue=v.codePointAt(0),Re=W.ambiguousCharacters.getPrimaryConfusable(ue),Be=v6.getLocales().filter(it=>!v6.getInstance(new Set([...T.allowedLocales,it])).isAmbiguous(ue));return{kind:0,confusableWith:String.fromCodePoint(Re),notAmbiguousInLocales:Be}}case 1:return{kind:2}}}}function Sze(g,v){return`[${o5e(g.map(W=>String.fromCodePoint(W)).join(""))}]`}class OEe{constructor(v){this.options=v,this.allowedCodePoints=new Set(v.allowedCodePoints),this.ambiguousCharacters=v6.getInstance(new Set(v.allowedLocales))}getCandidateCodePoints(){if(this.options.nonBasicASCII)return"allNonBasicAscii";const v=new Set;if(this.options.invisibleCharacters)for(const T of y6.codePoints)WEe(String.fromCodePoint(T))||v.add(T);if(this.options.ambiguousCharacters)for(const T of this.ambiguousCharacters.getConfusableCodePoints())v.add(T);for(const T of this.allowedCodePoints)v.delete(T);return v}shouldHighlightNonBasicASCII(v,T){const W=v.codePointAt(0);if(this.allowedCodePoints.has(W))return 0;if(this.options.nonBasicASCII)return 1;let X=!1,ue=!1;if(T)for(const Re of T){const Be=Re.codePointAt(0),it=d5e(Re);X=X||it,!it&&!this.ambiguousCharacters.isAmbiguous(Be)&&!y6.isInvisibleCharacter(Be)&&(ue=!0)}return!X&&ue?0:this.options.invisibleCharacters&&!WEe(v)&&y6.isInvisibleCharacter(W)?2:this.options.ambiguousCharacters&&this.ambiguousCharacters.isAmbiguous(W)?3:0}}function WEe(g){return g===" "||g===`
+`||g===" "}class JB{constructor(v,T,W){this.changes=v,this.moves=T,this.hitTimeout=W}}class Tze{constructor(v,T){this.lineRangeMapping=v,this.changes=T}}class Mc{static addRange(v,T){let W=0;for(;W<T.length&&T[W].endExclusive<v.start;)W++;let X=W;for(;X<T.length&&T[X].start<=v.endExclusive;)X++;if(W===X)T.splice(W,0,v);else{const ue=Math.min(v.start,T[W].start),Re=Math.max(v.endExclusive,T[X-1].endExclusive);T.splice(W,X-W,new Mc(ue,Re))}}static tryCreate(v,T){if(!(v>T))return new Mc(v,T)}static ofLength(v){return new Mc(0,v)}static ofStartAndLength(v,T){return new Mc(v,v+T)}constructor(v,T){if(this.start=v,this.endExclusive=T,v>T)throw new Ay(`Invalid range: ${this.toString()}`)}get isEmpty(){return this.start===this.endExclusive}delta(v){return new Mc(this.start+v,this.endExclusive+v)}deltaStart(v){return new Mc(this.start+v,this.endExclusive)}deltaEnd(v){return new Mc(this.start,this.endExclusive+v)}get length(){return this.endExclusive-this.start}toString(){return`[${this.start}, ${this.endExclusive})`}contains(v){return this.start<=v&&v<this.endExclusive}join(v){return new Mc(Math.min(this.start,v.start),Math.max(this.endExclusive,v.endExclusive))}intersect(v){const T=Math.max(this.start,v.start),W=Math.min(this.endExclusive,v.endExclusive);if(T<=W)return new Mc(T,W)}intersects(v){const T=Math.max(this.start,v.start),W=Math.min(this.endExclusive,v.endExclusive);return T<W}isBefore(v){return this.endExclusive<=v.start}isAfter(v){return this.start>=v.endExclusive}slice(v){return v.slice(this.start,this.endExclusive)}substring(v){return v.substring(this.start,this.endExclusive)}clip(v){if(this.isEmpty)throw new Ay(`Invalid clipping range: ${this.toString()}`);return Math.max(this.start,Math.min(this.endExclusive-1,v))}clipCyclic(v){if(this.isEmpty)throw new Ay(`Invalid clipping range: ${this.toString()}`);return v<this.start?this.endExclusive-(this.start-v)%this.length:v>=this.endExclusive?this.start+(v-this.start)%this.length:v}forEach(v){for(let T=this.start;T<this.endExclusive;T++)v(T)}}function xM(g,v){const T=S6(g,v);return T===-1?void 0:g[T]}function S6(g,v,T=0,W=g.length){let X=T,ue=W;for(;X<ue;){const Re=Math.floor((X+ue)/2);v(g[Re])?X=Re+1:ue=Re}return X-1}function Aze(g,v){const T=fne(g,v);return T===g.length?void 0:g[T]}function fne(g,v,T=0,W=g.length){let X=T,ue=W;for(;X<ue;){const Re=Math.floor((X+ue)/2);v(g[Re])?ue=Re:X=Re+1}return X}const oG=class oG{constructor(v){this._array=v,this._findLastMonotonousLastIdx=0}findLastMonotonous(v){if(oG.assertInvariants){if(this._prevFindLastPredicate){for(const W of this._array)if(this._prevFindLastPredicate(W)&&!v(W))throw new Error("MonotonousArray: current predicate must be weaker than (or equal to) the previous predicate.")}this._prevFindLastPredicate=v}const T=S6(this._array,v,this._findLastMonotonousLastIdx);return this._findLastMonotonousLastIdx=T+1,T===-1?void 0:this._array[T]}};oG.assertInvariants=!1;let KB=oG;class Fl{static fromRangeInclusive(v){return new Fl(v.startLineNumber,v.endLineNumber+1)}static joinMany(v){if(v.length===0)return[];let T=new lS(v[0].slice());for(let W=1;W<v.length;W++)T=T.getUnion(new lS(v[W].slice()));return T.ranges}static join(v){if(v.length===0)throw new Ay("lineRanges cannot be empty");let T=v[0].startLineNumber,W=v[0].endLineNumberExclusive;for(let X=1;X<v.length;X++)T=Math.min(T,v[X].startLineNumber),W=Math.max(W,v[X].endLineNumberExclusive);return new Fl(T,W)}static ofLength(v,T){return new Fl(v,v+T)}static deserialize(v){return new Fl(v[0],v[1])}constructor(v,T){if(v>T)throw new Ay(`startLineNumber ${v} cannot be after endLineNumberExclusive ${T}`);this.startLineNumber=v,this.endLineNumberExclusive=T}contains(v){return this.startLineNumber<=v&&v<this.endLineNumberExclusive}get isEmpty(){return this.startLineNumber===this.endLineNumberExclusive}delta(v){return new Fl(this.startLineNumber+v,this.endLineNumberExclusive+v)}deltaLength(v){return new Fl(this.startLineNumber,this.endLineNumberExclusive+v)}get length(){return this.endLineNumberExclusive-this.startLineNumber}join(v){return new Fl(Math.min(this.startLineNumber,v.startLineNumber),Math.max(this.endLineNumberExclusive,v.endLineNumberExclusive))}toString(){return`[${this.startLineNumber},${this.endLineNumberExclusive})`}intersect(v){const T=Math.max(this.startLineNumber,v.startLineNumber),W=Math.min(this.endLineNumberExclusive,v.endLineNumberExclusive);if(T<=W)return new Fl(T,W)}intersectsStrict(v){return this.startLineNumber<v.endLineNumberExclusive&&v.startLineNumber<this.endLineNumberExclusive}overlapOrTouch(v){return this.startLineNumber<=v.endLineNumberExclusive&&v.startLineNumber<=this.endLineNumberExclusive}equals(v){return this.startLineNumber===v.startLineNumber&&this.endLineNumberExclusive===v.endLineNumberExclusive}toInclusiveRange(){return this.isEmpty?null:new ys(this.startLineNumber,1,this.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER)}toExclusiveRange(){return new ys(this.startLineNumber,1,this.endLineNumberExclusive,1)}mapToLineArray(v){const T=[];for(let W=this.startLineNumber;W<this.endLineNumberExclusive;W++)T.push(v(W));return T}forEach(v){for(let T=this.startLineNumber;T<this.endLineNumberExclusive;T++)v(T)}serialize(){return[this.startLineNumber,this.endLineNumberExclusive]}includes(v){return this.startLineNumber<=v&&v<this.endLineNumberExclusive}toOffsetRange(){return new Mc(this.startLineNumber-1,this.endLineNumberExclusive-1)}}class lS{constructor(v=[]){this._normalizedRanges=v}get ranges(){return this._normalizedRanges}addRange(v){if(v.length===0)return;const T=fne(this._normalizedRanges,X=>X.endLineNumberExclusive>=v.startLineNumber),W=S6(this._normalizedRanges,X=>X.startLineNumber<=v.endLineNumberExclusive)+1;if(T===W)this._normalizedRanges.splice(T,0,v);else if(T===W-1){const X=this._normalizedRanges[T];this._normalizedRanges[T]=X.join(v)}else{const X=this._normalizedRanges[T].join(this._normalizedRanges[W-1]).join(v);this._normalizedRanges.splice(T,W-T,X)}}contains(v){const T=xM(this._normalizedRanges,W=>W.startLineNumber<=v);return!!T&&T.endLineNumberExclusive>v}intersects(v){const T=xM(this._normalizedRanges,W=>W.startLineNumber<v.endLineNumberExclusive);return!!T&&T.endLineNumberExclusive>v.startLineNumber}getUnion(v){if(this._normalizedRanges.length===0)return v;if(v._normalizedRanges.length===0)return this;const T=[];let W=0,X=0,ue=null;for(;W<this._normalizedRanges.length||X<v._normalizedRanges.length;){let Re=null;if(W<this._normalizedRanges.length&&X<v._normalizedRanges.length){const Be=this._normalizedRanges[W],it=v._normalizedRanges[X];Be.startLineNumber<it.startLineNumber?(Re=Be,W++):(Re=it,X++)}else W<this._normalizedRanges.length?(Re=this._normalizedRanges[W],W++):(Re=v._normalizedRanges[X],X++);ue===null?ue=Re:ue.endLineNumberExclusive>=Re.startLineNumber?ue=new Fl(ue.startLineNumber,Math.max(ue.endLineNumberExclusive,Re.endLineNumberExclusive)):(T.push(ue),ue=Re)}return ue!==null&&T.push(ue),new lS(T)}subtractFrom(v){const T=fne(this._normalizedRanges,Re=>Re.endLineNumberExclusive>=v.startLineNumber),W=S6(this._normalizedRanges,Re=>Re.startLineNumber<=v.endLineNumberExclusive)+1;if(T===W)return new lS([v]);const X=[];let ue=v.startLineNumber;for(let Re=T;Re<W;Re++){const Be=this._normalizedRanges[Re];Be.startLineNumber>ue&&X.push(new Fl(ue,Be.startLineNumber)),ue=Be.endLineNumberExclusive}return ue<v.endLineNumberExclusive&&X.push(new Fl(ue,v.endLineNumberExclusive)),new lS(X)}toString(){return this._normalizedRanges.map(v=>v.toString()).join(", ")}getIntersection(v){const T=[];let W=0,X=0;for(;W<this._normalizedRanges.length&&X<v._normalizedRanges.length;){const ue=this._normalizedRanges[W],Re=v._normalizedRanges[X],Be=ue.intersect(Re);Be&&!Be.isEmpty&&T.push(Be),ue.endLineNumberExclusive<Re.endLineNumberExclusive?W++:X++}return new lS(T)}getWithDelta(v){return new lS(this._normalizedRanges.map(T=>T.delta(v)))}}const Ox=class Ox{static betweenPositions(v,T){return v.lineNumber===T.lineNumber?new Ox(0,T.column-v.column):new Ox(T.lineNumber-v.lineNumber,T.column-1)}static ofRange(v){return Ox.betweenPositions(v.getStartPosition(),v.getEndPosition())}static ofText(v){let T=0,W=0;for(const X of v)X===`
+`?(T++,W=0):W++;return new Ox(T,W)}constructor(v,T){this.lineCount=v,this.columnCount=T}isGreaterThanOrEqualTo(v){return this.lineCount!==v.lineCount?this.lineCount>v.lineCount:this.columnCount>=v.columnCount}createRange(v){return this.lineCount===0?new ys(v.lineNumber,v.column,v.lineNumber,v.column+this.columnCount):new ys(v.lineNumber,v.column,v.lineNumber+this.lineCount,this.columnCount+1)}addToPosition(v){return this.lineCount===0?new rd(v.lineNumber,v.column+this.columnCount):new rd(v.lineNumber+this.lineCount,this.columnCount+1)}toString(){return`${this.lineCount},${this.columnCount}`}};Ox.zero=new Ox(0,0);let FEe=Ox;class Ize{constructor(v,T){this.range=v,this.text=T}toSingleEditOperation(){return{range:this.range,text:this.text}}}class Zb{static inverse(v,T,W){const X=[];let ue=1,Re=1;for(const it of v){const Me=new Zb(new Fl(ue,it.original.startLineNumber),new Fl(Re,it.modified.startLineNumber));Me.modified.isEmpty||X.push(Me),ue=it.original.endLineNumberExclusive,Re=it.modified.endLineNumberExclusive}const Be=new Zb(new Fl(ue,T+1),new Fl(Re,W+1));return Be.modified.isEmpty||X.push(Be),X}static clip(v,T,W){const X=[];for(const ue of v){const Re=ue.original.intersect(T),Be=ue.modified.intersect(W);Re&&!Re.isEmpty&&Be&&!Be.isEmpty&&X.push(new Zb(Re,Be))}return X}constructor(v,T){this.original=v,this.modified=T}toString(){return`{${this.original.toString()}->${this.modified.toString()}}`}flip(){return new Zb(this.modified,this.original)}join(v){return new Zb(this.original.join(v.original),this.modified.join(v.modified))}toRangeMapping(){const v=this.original.toInclusiveRange(),T=this.modified.toInclusiveRange();if(v&&T)return new AE(v,T);if(this.original.startLineNumber===1||this.modified.startLineNumber===1){if(!(this.modified.startLineNumber===1&&this.original.startLineNumber===1))throw new Ay("not a valid diff");return new AE(new ys(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new ys(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1))}else return new AE(new ys(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),new ys(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER,this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER))}toRangeMapping2(v,T){if(zEe(this.original.endLineNumberExclusive,v)&&zEe(this.modified.endLineNumberExclusive,T))return new AE(new ys(this.original.startLineNumber,1,this.original.endLineNumberExclusive,1),new ys(this.modified.startLineNumber,1,this.modified.endLineNumberExclusive,1));if(!this.original.isEmpty&&!this.modified.isEmpty)return new AE(ys.fromPositions(new rd(this.original.startLineNumber,1),RM(new rd(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),v)),ys.fromPositions(new rd(this.modified.startLineNumber,1),RM(new rd(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),T)));if(this.original.startLineNumber>1&&this.modified.startLineNumber>1)return new AE(ys.fromPositions(RM(new rd(this.original.startLineNumber-1,Number.MAX_SAFE_INTEGER),v),RM(new rd(this.original.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),v)),ys.fromPositions(RM(new rd(this.modified.startLineNumber-1,Number.MAX_SAFE_INTEGER),T),RM(new rd(this.modified.endLineNumberExclusive-1,Number.MAX_SAFE_INTEGER),T)));throw new Ay}}function RM(g,v){if(g.lineNumber<1)return new rd(1,1);if(g.lineNumber>v.length)return new rd(v.length,v[v.length-1].length+1);const T=v[g.lineNumber-1];return g.column>T.length+1?new rd(g.lineNumber,T.length+1):g}function zEe(g,v){return g>=1&&g<=v.length}class gA extends Zb{static fromRangeMappings(v){const T=Fl.join(v.map(X=>Fl.fromRangeInclusive(X.originalRange))),W=Fl.join(v.map(X=>Fl.fromRangeInclusive(X.modifiedRange)));return new gA(T,W,v)}constructor(v,T,W){super(v,T),this.innerChanges=W}flip(){var v;return new gA(this.modified,this.original,(v=this.innerChanges)==null?void 0:v.map(T=>T.flip()))}withInnerChangesFromLineRanges(){return new gA(this.original,this.modified,[this.toRangeMapping()])}}class AE{static assertSorted(v){for(let T=1;T<v.length;T++){const W=v[T-1],X=v[T];if(!(W.originalRange.getEndPosition().isBeforeOrEqual(X.originalRange.getStartPosition())&&W.modifiedRange.getEndPosition().isBeforeOrEqual(X.modifiedRange.getStartPosition())))throw new Ay("Range mappings must be sorted")}}constructor(v,T){this.originalRange=v,this.modifiedRange=T}toString(){return`{${this.originalRange.toString()}->${this.modifiedRange.toString()}}`}flip(){return new AE(this.modifiedRange,this.originalRange)}toTextEdit(v){const T=v.getValueOfRange(this.modifiedRange);return new Ize(this.originalRange,T)}}const xze=3;class Rze{computeDiff(v,T,W){var it;const ue=new Cze(v,T,{maxComputationTime:W.maxComputationTimeMs,shouldIgnoreTrimWhitespace:W.ignoreTrimWhitespace,shouldComputeCharChanges:!0,shouldMakePrettyDiff:!0,shouldPostProcessCharChanges:!0}).computeDiff(),Re=[];let Be=null;for(const Me of ue.changes){let Ue;Me.originalEndLineNumber===0?Ue=new Fl(Me.originalStartLineNumber+1,Me.originalStartLineNumber+1):Ue=new Fl(Me.originalStartLineNumber,Me.originalEndLineNumber+1);let Bt;Me.modifiedEndLineNumber===0?Bt=new Fl(Me.modifiedStartLineNumber+1,Me.modifiedStartLineNumber+1):Bt=new Fl(Me.modifiedStartLineNumber,Me.modifiedEndLineNumber+1);let Ut=new gA(Ue,Bt,(it=Me.charChanges)==null?void 0:it.map(dn=>new AE(new ys(dn.originalStartLineNumber,dn.originalStartColumn,dn.originalEndLineNumber,dn.originalEndColumn),new ys(dn.modifiedStartLineNumber,dn.modifiedStartColumn,dn.modifiedEndLineNumber,dn.modifiedEndColumn))));Be&&(Be.modified.endLineNumberExclusive===Ut.modified.startLineNumber||Be.original.endLineNumberExclusive===Ut.original.startLineNumber)&&(Ut=new gA(Be.original.join(Ut.original),Be.modified.join(Ut.modified),Be.innerChanges&&Ut.innerChanges?Be.innerChanges.concat(Ut.innerChanges):void 0),Re.pop()),Re.push(Ut),Be=Ut}return qB(()=>MEe(Re,(Me,Ue)=>Ue.original.startLineNumber-Me.original.endLineNumberExclusive===Ue.modified.startLineNumber-Me.modified.endLineNumberExclusive&&Me.original.endLineNumberExclusive<Ue.original.startLineNumber&&Me.modified.endLineNumberExclusive<Ue.modified.startLineNumber)),new JB(Re,[],ue.quitEarly)}}function BEe(g,v,T,W){return new kx(g,v,T).ComputeDiff(W)}let GEe=class{constructor(v){const T=[],W=[];for(let X=0,ue=v.length;X<ue;X++)T[X]=mne(v[X],1),W[X]=_ne(v[X],1);this.lines=v,this._startColumns=T,this._endColumns=W}getElements(){const v=[];for(let T=0,W=this.lines.length;T<W;T++)v[T]=this.lines[T].substring(this._startColumns[T]-1,this._endColumns[T]-1);return v}getStrictElement(v){return this.lines[v]}getStartLineNumber(v){return v+1}getEndLineNumber(v){return v+1}createCharSequence(v,T,W){const X=[],ue=[],Re=[];let Be=0;for(let it=T;it<=W;it++){const Me=this.lines[it],Ue=v?this._startColumns[it]:1,Bt=v?this._endColumns[it]:Me.length+1;for(let Ut=Ue;Ut<Bt;Ut++)X[Be]=Me.charCodeAt(Ut-1),ue[Be]=it+1,Re[Be]=Ut,Be++;!v&&it<W&&(X[Be]=10,ue[Be]=it+1,Re[Be]=Me.length+1,Be++)}return new Dze(X,ue,Re)}};class Dze{constructor(v,T,W){this._charCodes=v,this._lineNumbers=T,this._columns=W}toString(){return"["+this._charCodes.map((v,T)=>(v===10?"\\n":String.fromCharCode(v))+`-(${this._lineNumbers[T]},${this._columns[T]})`).join(", ")+"]"}_assertIndex(v,T){if(v<0||v>=T.length)throw new Error("Illegal index")}getElements(){return this._charCodes}getStartLineNumber(v){return v>0&&v===this._lineNumbers.length?this.getEndLineNumber(v-1):(this._assertIndex(v,this._lineNumbers),this._lineNumbers[v])}getEndLineNumber(v){return v===-1?this.getStartLineNumber(v+1):(this._assertIndex(v,this._lineNumbers),this._charCodes[v]===10?this._lineNumbers[v]+1:this._lineNumbers[v])}getStartColumn(v){return v>0&&v===this._columns.length?this.getEndColumn(v-1):(this._assertIndex(v,this._columns),this._columns[v])}getEndColumn(v){return v===-1?this.getStartColumn(v+1):(this._assertIndex(v,this._columns),this._charCodes[v]===10?1:this._columns[v]+1)}}class DM{constructor(v,T,W,X,ue,Re,Be,it){this.originalStartLineNumber=v,this.originalStartColumn=T,this.originalEndLineNumber=W,this.originalEndColumn=X,this.modifiedStartLineNumber=ue,this.modifiedStartColumn=Re,this.modifiedEndLineNumber=Be,this.modifiedEndColumn=it}static createFromDiffChange(v,T,W){const X=T.getStartLineNumber(v.originalStart),ue=T.getStartColumn(v.originalStart),Re=T.getEndLineNumber(v.originalStart+v.originalLength-1),Be=T.getEndColumn(v.originalStart+v.originalLength-1),it=W.getStartLineNumber(v.modifiedStart),Me=W.getStartColumn(v.modifiedStart),Ue=W.getEndLineNumber(v.modifiedStart+v.modifiedLength-1),Bt=W.getEndColumn(v.modifiedStart+v.modifiedLength-1);return new DM(X,ue,Re,Be,it,Me,Ue,Bt)}}function Nze(g){if(g.length<=1)return g;const v=[g[0]];let T=v[0];for(let W=1,X=g.length;W<X;W++){const ue=g[W],Re=ue.originalStart-(T.originalStart+T.originalLength),Be=ue.modifiedStart-(T.modifiedStart+T.modifiedLength);Math.min(Re,Be)<xze?(T.originalLength=ue.originalStart+ue.originalLength-T.originalStart,T.modifiedLength=ue.modifiedStart+ue.modifiedLength-T.modifiedStart):(v.push(ue),T=ue)}return v}class T6{constructor(v,T,W,X,ue){this.originalStartLineNumber=v,this.originalEndLineNumber=T,this.modifiedStartLineNumber=W,this.modifiedEndLineNumber=X,this.charChanges=ue}static createFromDiffResult(v,T,W,X,ue,Re,Be){let it,Me,Ue,Bt,Ut;if(T.originalLength===0?(it=W.getStartLineNumber(T.originalStart)-1,Me=0):(it=W.getStartLineNumber(T.originalStart),Me=W.getEndLineNumber(T.originalStart+T.originalLength-1)),T.modifiedLength===0?(Ue=X.getStartLineNumber(T.modifiedStart)-1,Bt=0):(Ue=X.getStartLineNumber(T.modifiedStart),Bt=X.getEndLineNumber(T.modifiedStart+T.modifiedLength-1)),Re&&T.originalLength>0&&T.originalLength<20&&T.modifiedLength>0&&T.modifiedLength<20&&ue()){const dn=W.createCharSequence(v,T.originalStart,T.originalStart+T.originalLength-1),Pr=X.createCharSequence(v,T.modifiedStart,T.modifiedStart+T.modifiedLength-1);if(dn.getElements().length>0&&Pr.getElements().length>0){let yi=BEe(dn,Pr,ue,!0).changes;Be&&(yi=Nze(yi)),Ut=[];for(let co=0,Zn=yi.length;co<Zn;co++)Ut.push(DM.createFromDiffChange(yi[co],dn,Pr))}}return new T6(it,Me,Ue,Bt,Ut)}}class Cze{constructor(v,T,W){this.shouldComputeCharChanges=W.shouldComputeCharChanges,this.shouldPostProcessCharChanges=W.shouldPostProcessCharChanges,this.shouldIgnoreTrimWhitespace=W.shouldIgnoreTrimWhitespace,this.shouldMakePrettyDiff=W.shouldMakePrettyDiff,this.originalLines=v,this.modifiedLines=T,this.original=new GEe(v),this.modified=new GEe(T),this.continueLineDiff=VEe(W.maxComputationTime),this.continueCharDiff=VEe(W.maxComputationTime===0?0:Math.min(W.maxComputationTime,5e3))}computeDiff(){if(this.original.lines.length===1&&this.original.lines[0].length===0)return this.modified.lines.length===1&&this.modified.lines[0].length===0?{quitEarly:!1,changes:[]}:{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:1,modifiedStartLineNumber:1,modifiedEndLineNumber:this.modified.lines.length,charChanges:void 0}]};if(this.modified.lines.length===1&&this.modified.lines[0].length===0)return{quitEarly:!1,changes:[{originalStartLineNumber:1,originalEndLineNumber:this.original.lines.length,modifiedStartLineNumber:1,modifiedEndLineNumber:1,charChanges:void 0}]};const v=BEe(this.original,this.modified,this.continueLineDiff,this.shouldMakePrettyDiff),T=v.changes,W=v.quitEarly;if(this.shouldIgnoreTrimWhitespace){const Be=[];for(let it=0,Me=T.length;it<Me;it++)Be.push(T6.createFromDiffResult(this.shouldIgnoreTrimWhitespace,T[it],this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges));return{quitEarly:W,changes:Be}}const X=[];let ue=0,Re=0;for(let Be=-1,it=T.length;Be<it;Be++){const Me=Be+1<it?T[Be+1]:null,Ue=Me?Me.originalStart:this.originalLines.length,Bt=Me?Me.modifiedStart:this.modifiedLines.length;for(;ue<Ue&&Re<Bt;){const Ut=this.originalLines[ue],dn=this.modifiedLines[Re];if(Ut!==dn){{let Pr=mne(Ut,1),yi=mne(dn,1);for(;Pr>1&&yi>1;){const co=Ut.charCodeAt(Pr-2),Zn=dn.charCodeAt(yi-2);if(co!==Zn)break;Pr--,yi--}(Pr>1||yi>1)&&this._pushTrimWhitespaceCharChange(X,ue+1,1,Pr,Re+1,1,yi)}{let Pr=_ne(Ut,1),yi=_ne(dn,1);const co=Ut.length+1,Zn=dn.length+1;for(;Pr<co&&yi<Zn;){const An=Ut.charCodeAt(Pr-1),Oo=Ut.charCodeAt(yi-1);if(An!==Oo)break;Pr++,yi++}(Pr<co||yi<Zn)&&this._pushTrimWhitespaceCharChange(X,ue+1,Pr,co,Re+1,yi,Zn)}}ue++,Re++}Me&&(X.push(T6.createFromDiffResult(this.shouldIgnoreTrimWhitespace,Me,this.original,this.modified,this.continueCharDiff,this.shouldComputeCharChanges,this.shouldPostProcessCharChanges)),ue+=Me.originalLength,Re+=Me.modifiedLength)}return{quitEarly:W,changes:X}}_pushTrimWhitespaceCharChange(v,T,W,X,ue,Re,Be){if(this._mergeTrimWhitespaceCharChange(v,T,W,X,ue,Re,Be))return;let it;this.shouldComputeCharChanges&&(it=[new DM(T,W,T,X,ue,Re,ue,Be)]),v.push(new T6(T,T,ue,ue,it))}_mergeTrimWhitespaceCharChange(v,T,W,X,ue,Re,Be){const it=v.length;if(it===0)return!1;const Me=v[it-1];return Me.originalEndLineNumber===0||Me.modifiedEndLineNumber===0?!1:Me.originalEndLineNumber===T&&Me.modifiedEndLineNumber===ue?(this.shouldComputeCharChanges&&Me.charChanges&&Me.charChanges.push(new DM(T,W,T,X,ue,Re,ue,Be)),!0):Me.originalEndLineNumber+1===T&&Me.modifiedEndLineNumber+1===ue?(Me.originalEndLineNumber=T,Me.modifiedEndLineNumber=ue,this.shouldComputeCharChanges&&Me.charChanges&&Me.charChanges.push(new DM(T,W,T,X,ue,Re,ue,Be)),!0):!1}}function mne(g,v){const T=s5e(g);return T===-1?v:T+1}function _ne(g,v){const T=l5e(g);return T===-1?v:T+2}function VEe(g){if(g===0)return()=>!0;const v=Date.now();return()=>Date.now()-v<g}function Pze(g,v,T=(W,X)=>W===X){if(g===v)return!0;if(!g||!v||g.length!==v.length)return!1;for(let W=0,X=g.length;W<X;W++)if(!T(g[W],v[W]))return!1;return!0}function*Mze(g,v){let T,W;for(const X of g)W!==void 0&&v(W,X)?T.push(X):(T&&(yield T),T=[X]),W=X;T&&(yield T)}function Lze(g,v){for(let T=0;T<=g.length;T++)v(T===0?void 0:g[T-1],T===g.length?void 0:g[T])}function kze(g,v){for(let T=0;T<g.length;T++)v(T===0?void 0:g[T-1],g[T],T+1===g.length?void 0:g[T+1])}function wze(g,v){for(const T of v)g.push(T)}var hne;(function(g){function v(ue){return ue<0}g.isLessThan=v;function T(ue){return ue<=0}g.isLessThanOrEqual=T;function W(ue){return ue>0}g.isGreaterThan=W;function X(ue){return ue===0}g.isNeitherLessOrGreaterThan=X,g.greaterThan=1,g.lessThan=-1,g.neitherLessOrGreaterThan=0})(hne||(hne={}));function XB(g,v){return(T,W)=>v(g(T),g(W))}const YB=(g,v)=>g-v;function Oze(g){return(v,T)=>-g(v,T)}const wM=class wM{constructor(v){this.iterate=v}toArray(){const v=[];return this.iterate(T=>(v.push(T),!0)),v}filter(v){return new wM(T=>this.iterate(W=>v(W)?T(W):!0))}map(v){return new wM(T=>this.iterate(W=>T(v(W))))}findLast(v){let T;return this.iterate(W=>(v(W)&&(T=W),!0)),T}findLastMaxBy(v){let T,W=!0;return this.iterate(X=>((W||hne.isGreaterThan(v(X,T)))&&(W=!1,T=X),!0)),T}};wM.empty=new wM(v=>{});let jEe=wM;class vA{static trivial(v,T){return new vA([new $p(Mc.ofLength(v.length),Mc.ofLength(T.length))],!1)}static trivialTimedOut(v,T){return new vA([new $p(Mc.ofLength(v.length),Mc.ofLength(T.length))],!0)}constructor(v,T){this.diffs=v,this.hitTimeout=T}}class $p{static invert(v,T){const W=[];return Lze(v,(X,ue)=>{W.push($p.fromOffsetPairs(X?X.getEndExclusives():yA.zero,ue?ue.getStarts():new yA(T,(X?X.seq2Range.endExclusive-X.seq1Range.endExclusive:0)+T)))}),W}static fromOffsetPairs(v,T){return new $p(new Mc(v.offset1,T.offset1),new Mc(v.offset2,T.offset2))}static assertSorted(v){let T;for(const W of v){if(T&&!(T.seq1Range.endExclusive<=W.seq1Range.start&&T.seq2Range.endExclusive<=W.seq2Range.start))throw new Ay("Sequence diffs must be sorted");T=W}}constructor(v,T){this.seq1Range=v,this.seq2Range=T}swap(){return new $p(this.seq2Range,this.seq1Range)}toString(){return`${this.seq1Range} <-> ${this.seq2Range}`}join(v){return new $p(this.seq1Range.join(v.seq1Range),this.seq2Range.join(v.seq2Range))}delta(v){return v===0?this:new $p(this.seq1Range.delta(v),this.seq2Range.delta(v))}deltaStart(v){return v===0?this:new $p(this.seq1Range.deltaStart(v),this.seq2Range.deltaStart(v))}deltaEnd(v){return v===0?this:new $p(this.seq1Range.deltaEnd(v),this.seq2Range.deltaEnd(v))}intersect(v){const T=this.seq1Range.intersect(v.seq1Range),W=this.seq2Range.intersect(v.seq2Range);if(!(!T||!W))return new $p(T,W)}getStarts(){return new yA(this.seq1Range.start,this.seq2Range.start)}getEndExclusives(){return new yA(this.seq1Range.endExclusive,this.seq2Range.endExclusive)}}const JN=class JN{constructor(v,T){this.offset1=v,this.offset2=T}toString(){return`${this.offset1} <-> ${this.offset2}`}delta(v){return v===0?this:new JN(this.offset1+v,this.offset2+v)}equals(v){return this.offset1===v.offset1&&this.offset2===v.offset2}};JN.zero=new JN(0,0),JN.max=new JN(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER);let yA=JN;const aG=class aG{isValid(){return!0}};aG.instance=new aG;let A6=aG;class Wze{constructor(v){if(this.timeout=v,this.startTime=Date.now(),this.valid=!0,v<=0)throw new Ay("timeout must be positive")}isValid(){if(!(Date.now()-this.startTime<this.timeout)&&this.valid){this.valid=!1;debugger}return this.valid}}class gne{constructor(v,T){this.width=v,this.height=T,this.array=[],this.array=new Array(v*T)}get(v,T){return this.array[v+T*this.width]}set(v,T,W){this.array[v+T*this.width]=W}}function vne(g){return g===32||g===9}const N6=class N6{static getKey(v){let T=this.chrKeys.get(v);return T===void 0&&(T=this.chrKeys.size,this.chrKeys.set(v,T)),T}constructor(v,T,W){this.range=v,this.lines=T,this.source=W,this.histogram=[];let X=0;for(let ue=v.startLineNumber-1;ue<v.endLineNumberExclusive-1;ue++){const Re=T[ue];for(let it=0;it<Re.length;it++){X++;const Me=Re[it],Ue=N6.getKey(Me);this.histogram[Ue]=(this.histogram[Ue]||0)+1}X++;const Be=N6.getKey(`
+`);this.histogram[Be]=(this.histogram[Be]||0)+1}this.totalCount=X}computeSimilarity(v){let T=0;const W=Math.max(this.histogram.length,v.histogram.length);for(let X=0;X<W;X++)T+=Math.abs((this.histogram[X]??0)-(v.histogram[X]??0));return 1-T/(this.totalCount+v.totalCount)}};N6.chrKeys=new Map;let $B=N6;class Fze{compute(v,T,W=A6.instance,X){if(v.length===0||T.length===0)return vA.trivial(v,T);const ue=new gne(v.length,T.length),Re=new gne(v.length,T.length),Be=new gne(v.length,T.length);for(let Pr=0;Pr<v.length;Pr++)for(let yi=0;yi<T.length;yi++){if(!W.isValid())return vA.trivialTimedOut(v,T);const co=Pr===0?0:ue.get(Pr-1,yi),Zn=yi===0?0:ue.get(Pr,yi-1);let An;v.getElement(Pr)===T.getElement(yi)?(Pr===0||yi===0?An=0:An=ue.get(Pr-1,yi-1),Pr>0&&yi>0&&Re.get(Pr-1,yi-1)===3&&(An+=Be.get(Pr-1,yi-1)),An+=X?X(Pr,yi):1):An=-1;const Oo=Math.max(co,Zn,An);if(Oo===An){const Gr=Pr>0&&yi>0?Be.get(Pr-1,yi-1):0;Be.set(Pr,yi,Gr+1),Re.set(Pr,yi,3)}else Oo===co?(Be.set(Pr,yi,0),Re.set(Pr,yi,1)):Oo===Zn&&(Be.set(Pr,yi,0),Re.set(Pr,yi,2));ue.set(Pr,yi,Oo)}const it=[];let Me=v.length,Ue=T.length;function Bt(Pr,yi){(Pr+1!==Me||yi+1!==Ue)&&it.push(new $p(new Mc(Pr+1,Me),new Mc(yi+1,Ue))),Me=Pr,Ue=yi}let Ut=v.length-1,dn=T.length-1;for(;Ut>=0&&dn>=0;)Re.get(Ut,dn)===3?(Bt(Ut,dn),Ut--,dn--):Re.get(Ut,dn)===1?Ut--:dn--;return Bt(-1,-1),it.reverse(),new vA(it,!1)}}class UEe{compute(v,T,W=A6.instance){if(v.length===0||T.length===0)return vA.trivial(v,T);const X=v,ue=T;function Re(yi,co){for(;yi<X.length&&co<ue.length&&X.getElement(yi)===ue.getElement(co);)yi++,co++;return yi}let Be=0;const it=new zze;it.set(0,Re(0,0));const Me=new Bze;Me.set(0,it.get(0)===0?null:new HEe(null,0,0,it.get(0)));let Ue=0;e:for(;;){if(Be++,!W.isValid())return vA.trivialTimedOut(X,ue);const yi=-Math.min(Be,ue.length+Be%2),co=Math.min(Be,X.length+Be%2);for(Ue=yi;Ue<=co;Ue+=2){const Zn=Ue===co?-1:it.get(Ue+1),An=Ue===yi?-1:it.get(Ue-1)+1,Oo=Math.min(Math.max(Zn,An),X.length),Gr=Oo-Ue;if(Oo>X.length||Gr>ue.length)continue;const Bi=Re(Oo,Gr);it.set(Ue,Bi);const Uo=Oo===Zn?Me.get(Ue+1):Me.get(Ue-1);if(Me.set(Ue,Bi!==Oo?new HEe(Uo,Oo,Gr,Bi-Oo):Uo),it.get(Ue)===X.length&&it.get(Ue)-Ue===ue.length)break e}}let Bt=Me.get(Ue);const Ut=[];let dn=X.length,Pr=ue.length;for(;;){const yi=Bt?Bt.x+Bt.length:0,co=Bt?Bt.y+Bt.length:0;if((yi!==dn||co!==Pr)&&Ut.push(new $p(new Mc(yi,dn),new Mc(co,Pr))),!Bt)break;dn=Bt.x,Pr=Bt.y,Bt=Bt.prev}return Ut.reverse(),new vA(Ut,!1)}}class HEe{constructor(v,T,W,X){this.prev=v,this.x=T,this.y=W,this.length=X}}class zze{constructor(){this.positiveArr=new Int32Array(10),this.negativeArr=new Int32Array(10)}get(v){return v<0?(v=-v-1,this.negativeArr[v]):this.positiveArr[v]}set(v,T){if(v<0){if(v=-v-1,v>=this.negativeArr.length){const W=this.negativeArr;this.negativeArr=new Int32Array(W.length*2),this.negativeArr.set(W)}this.negativeArr[v]=T}else{if(v>=this.positiveArr.length){const W=this.positiveArr;this.positiveArr=new Int32Array(W.length*2),this.positiveArr.set(W)}this.positiveArr[v]=T}}}class Bze{constructor(){this.positiveArr=[],this.negativeArr=[]}get(v){return v<0?(v=-v-1,this.negativeArr[v]):this.positiveArr[v]}set(v,T){v<0?(v=-v-1,this.negativeArr[v]=T):this.positiveArr[v]=T}}class QB{constructor(v,T,W){this.lines=v,this.range=T,this.considerWhitespaceChanges=W,this.elements=[],this.firstElementOffsetByLineIdx=[],this.lineStartOffsets=[],this.trimmedWsLengthsByLineIdx=[],this.firstElementOffsetByLineIdx.push(0);for(let X=this.range.startLineNumber;X<=this.range.endLineNumber;X++){let ue=v[X-1],Re=0;X===this.range.startLineNumber&&this.range.startColumn>1&&(Re=this.range.startColumn-1,ue=ue.substring(Re)),this.lineStartOffsets.push(Re);let Be=0;if(!W){const Me=ue.trimStart();Be=ue.length-Me.length,ue=Me.trimEnd()}this.trimmedWsLengthsByLineIdx.push(Be);const it=X===this.range.endLineNumber?Math.min(this.range.endColumn-1-Re-Be,ue.length):ue.length;for(let Me=0;Me<it;Me++)this.elements.push(ue.charCodeAt(Me));X<this.range.endLineNumber&&(this.elements.push(10),this.firstElementOffsetByLineIdx.push(this.elements.length))}}toString(){return`Slice: "${this.text}"`}get text(){return this.getText(new Mc(0,this.length))}getText(v){return this.elements.slice(v.start,v.endExclusive).map(T=>String.fromCharCode(T)).join("")}getElement(v){return this.elements[v]}get length(){return this.elements.length}getBoundaryScore(v){const T=JEe(v>0?this.elements[v-1]:-1),W=JEe(v<this.elements.length?this.elements[v]:-1);if(T===7&&W===8)return 0;if(T===8)return 150;let X=0;return T!==W&&(X+=10,T===0&&W===1&&(X+=1)),X+=qEe(T),X+=qEe(W),X}translateOffset(v,T="right"){const W=S6(this.firstElementOffsetByLineIdx,ue=>ue<=v),X=v-this.firstElementOffsetByLineIdx[W];return new rd(this.range.startLineNumber+W,1+this.lineStartOffsets[W]+X+(X===0&&T==="left"?0:this.trimmedWsLengthsByLineIdx[W]))}translateRange(v){const T=this.translateOffset(v.start,"right"),W=this.translateOffset(v.endExclusive,"left");return W.isBefore(T)?ys.fromPositions(W,W):ys.fromPositions(T,W)}findWordContaining(v){if(v<0||v>=this.elements.length||!yne(this.elements[v]))return;let T=v;for(;T>0&&yne(this.elements[T-1]);)T--;let W=v;for(;W<this.elements.length&&yne(this.elements[W]);)W++;return new Mc(T,W)}countLinesIn(v){return this.translateOffset(v.endExclusive).lineNumber-this.translateOffset(v.start).lineNumber}isStronglyEqual(v,T){return this.elements[v]===this.elements[T]}extendToFullLines(v){const T=xM(this.firstElementOffsetByLineIdx,X=>X<=v.start)??0,W=Aze(this.firstElementOffsetByLineIdx,X=>v.endExclusive<=X)??this.elements.length;return new Mc(T,W)}}function yne(g){return g>=97&&g<=122||g>=65&&g<=90||g>=48&&g<=57}const Gze={0:0,1:0,2:0,3:10,4:2,5:30,6:3,7:10,8:10};function qEe(g){return Gze[g]}function JEe(g){return g===10?8:g===13?7:vne(g)?6:g>=97&&g<=122?0:g>=65&&g<=90?1:g>=48&&g<=57?2:g===-1?3:g===44||g===59?5:4}function Vze(g,v,T,W,X,ue){let{moves:Re,excludedChanges:Be}=Uze(g,v,T,ue);if(!ue.isValid())return[];const it=g.filter(Ue=>!Be.has(Ue)),Me=Hze(it,W,X,v,T,ue);return wze(Re,Me),Re=qze(Re),Re=Re.filter(Ue=>{const Bt=Ue.original.toOffsetRange().slice(v).map(dn=>dn.trim());return Bt.join(`
+`).length>=15&&jze(Bt,dn=>dn.length>=2)>=2}),Re=Jze(g,Re),Re}function jze(g,v){let T=0;for(const W of g)v(W)&&T++;return T}function Uze(g,v,T,W){const X=[],ue=g.filter(it=>it.modified.isEmpty&&it.original.length>=3).map(it=>new $B(it.original,v,it)),Re=new Set(g.filter(it=>it.original.isEmpty&&it.modified.length>=3).map(it=>new $B(it.modified,T,it))),Be=new Set;for(const it of ue){let Me=-1,Ue;for(const Bt of Re){const Ut=it.computeSimilarity(Bt);Ut>Me&&(Me=Ut,Ue=Bt)}if(Me>.9&&Ue&&(Re.delete(Ue),X.push(new Zb(it.range,Ue.range)),Be.add(it.source),Be.add(Ue.source)),!W.isValid())return{moves:X,excludedChanges:Be}}return{moves:X,excludedChanges:Be}}function Hze(g,v,T,W,X,ue){const Re=[],Be=new uze;for(const Ut of g)for(let dn=Ut.original.startLineNumber;dn<Ut.original.endLineNumberExclusive-2;dn++){const Pr=`${v[dn-1]}:${v[dn+1-1]}:${v[dn+2-1]}`;Be.add(Pr,{range:new Fl(dn,dn+3)})}const it=[];g.sort(XB(Ut=>Ut.modified.startLineNumber,YB));for(const Ut of g){let dn=[];for(let Pr=Ut.modified.startLineNumber;Pr<Ut.modified.endLineNumberExclusive-2;Pr++){const yi=`${T[Pr-1]}:${T[Pr+1-1]}:${T[Pr+2-1]}`,co=new Fl(Pr,Pr+3),Zn=[];Be.forEach(yi,({range:An})=>{for(const Gr of dn)if(Gr.originalLineRange.endLineNumberExclusive+1===An.endLineNumberExclusive&&Gr.modifiedLineRange.endLineNumberExclusive+1===co.endLineNumberExclusive){Gr.originalLineRange=new Fl(Gr.originalLineRange.startLineNumber,An.endLineNumberExclusive),Gr.modifiedLineRange=new Fl(Gr.modifiedLineRange.startLineNumber,co.endLineNumberExclusive),Zn.push(Gr);return}const Oo={modifiedLineRange:co,originalLineRange:An};it.push(Oo),Zn.push(Oo)}),dn=Zn}if(!ue.isValid())return[]}it.sort(Oze(XB(Ut=>Ut.modifiedLineRange.length,YB)));const Me=new lS,Ue=new lS;for(const Ut of it){const dn=Ut.modifiedLineRange.startLineNumber-Ut.originalLineRange.startLineNumber,Pr=Me.subtractFrom(Ut.modifiedLineRange),yi=Ue.subtractFrom(Ut.originalLineRange).getWithDelta(dn),co=Pr.getIntersection(yi);for(const Zn of co.ranges){if(Zn.length<3)continue;const An=Zn,Oo=Zn.delta(-dn);Re.push(new Zb(Oo,An)),Me.addRange(An),Ue.addRange(Oo)}}Re.sort(XB(Ut=>Ut.original.startLineNumber,YB));const Bt=new KB(g);for(let Ut=0;Ut<Re.length;Ut++){const dn=Re[Ut],Pr=Bt.findLastMonotonous(Uo=>Uo.original.startLineNumber<=dn.original.startLineNumber),yi=xM(g,Uo=>Uo.modified.startLineNumber<=dn.modified.startLineNumber),co=Math.max(dn.original.startLineNumber-Pr.original.startLineNumber,dn.modified.startLineNumber-yi.modified.startLineNumber),Zn=Bt.findLastMonotonous(Uo=>Uo.original.startLineNumber<dn.original.endLineNumberExclusive),An=xM(g,Uo=>Uo.modified.startLineNumber<dn.modified.endLineNumberExclusive),Oo=Math.max(Zn.original.endLineNumberExclusive-dn.original.endLineNumberExclusive,An.modified.endLineNumberExclusive-dn.modified.endLineNumberExclusive);let Gr;for(Gr=0;Gr<co;Gr++){const Uo=dn.original.startLineNumber-Gr-1,Nr=dn.modified.startLineNumber-Gr-1;if(Uo>W.length||Nr>X.length||Me.contains(Nr)||Ue.contains(Uo)||!KEe(W[Uo-1],X[Nr-1],ue))break}Gr>0&&(Ue.addRange(new Fl(dn.original.startLineNumber-Gr,dn.original.startLineNumber)),Me.addRange(new Fl(dn.modified.startLineNumber-Gr,dn.modified.startLineNumber)));let Bi;for(Bi=0;Bi<Oo;Bi++){const Uo=dn.original.endLineNumberExclusive+Bi,Nr=dn.modified.endLineNumberExclusive+Bi;if(Uo>W.length||Nr>X.length||Me.contains(Nr)||Ue.contains(Uo)||!KEe(W[Uo-1],X[Nr-1],ue))break}Bi>0&&(Ue.addRange(new Fl(dn.original.endLineNumberExclusive,dn.original.endLineNumberExclusive+Bi)),Me.addRange(new Fl(dn.modified.endLineNumberExclusive,dn.modified.endLineNumberExclusive+Bi))),(Gr>0||Bi>0)&&(Re[Ut]=new Zb(new Fl(dn.original.startLineNumber-Gr,dn.original.endLineNumberExclusive+Bi),new Fl(dn.modified.startLineNumber-Gr,dn.modified.endLineNumberExclusive+Bi)))}return Re}function KEe(g,v,T){if(g.trim()===v.trim())return!0;if(g.length>300&&v.length>300)return!1;const X=new UEe().compute(new QB([g],new ys(1,1,1,g.length),!1),new QB([v],new ys(1,1,1,v.length),!1),T);let ue=0;const Re=$p.invert(X.diffs,g.length);for(const Ue of Re)Ue.seq1Range.forEach(Bt=>{vne(g.charCodeAt(Bt))||ue++});function Be(Ue){let Bt=0;for(let Ut=0;Ut<g.length;Ut++)vne(Ue.charCodeAt(Ut))||Bt++;return Bt}const it=Be(g.length>v.length?g:v);return ue/it>.6&&it>10}function qze(g){if(g.length===0)return g;g.sort(XB(T=>T.original.startLineNumber,YB));const v=[g[0]];for(let T=1;T<g.length;T++){const W=v[v.length-1],X=g[T],ue=X.original.startLineNumber-W.original.endLineNumberExclusive,Re=X.modified.startLineNumber-W.modified.endLineNumberExclusive;if(ue>=0&&Re>=0&&ue+Re<=2){v[v.length-1]=W.join(X);continue}v.push(X)}return v}function Jze(g,v){const T=new KB(g);return v=v.filter(W=>{const X=T.findLastMonotonous(Be=>Be.original.startLineNumber<W.original.endLineNumberExclusive)||new Zb(new Fl(1,1),new Fl(1,1)),ue=xM(g,Be=>Be.modified.startLineNumber<W.modified.endLineNumberExclusive);return X!==ue}),v}function XEe(g,v,T){let W=T;return W=YEe(g,v,W),W=YEe(g,v,W),W=Kze(g,v,W),W}function YEe(g,v,T){if(T.length===0)return T;const W=[];W.push(T[0]);for(let ue=1;ue<T.length;ue++){const Re=W[W.length-1];let Be=T[ue];if(Be.seq1Range.isEmpty||Be.seq2Range.isEmpty){const it=Be.seq1Range.start-Re.seq1Range.endExclusive;let Me;for(Me=1;Me<=it&&!(g.getElement(Be.seq1Range.start-Me)!==g.getElement(Be.seq1Range.endExclusive-Me)||v.getElement(Be.seq2Range.start-Me)!==v.getElement(Be.seq2Range.endExclusive-Me));Me++);if(Me--,Me===it){W[W.length-1]=new $p(new Mc(Re.seq1Range.start,Be.seq1Range.endExclusive-it),new Mc(Re.seq2Range.start,Be.seq2Range.endExclusive-it));continue}Be=Be.delta(-Me)}W.push(Be)}const X=[];for(let ue=0;ue<W.length-1;ue++){const Re=W[ue+1];let Be=W[ue];if(Be.seq1Range.isEmpty||Be.seq2Range.isEmpty){const it=Re.seq1Range.start-Be.seq1Range.endExclusive;let Me;for(Me=0;Me<it&&!(!g.isStronglyEqual(Be.seq1Range.start+Me,Be.seq1Range.endExclusive+Me)||!v.isStronglyEqual(Be.seq2Range.start+Me,Be.seq2Range.endExclusive+Me));Me++);if(Me===it){W[ue+1]=new $p(new Mc(Be.seq1Range.start+it,Re.seq1Range.endExclusive),new Mc(Be.seq2Range.start+it,Re.seq2Range.endExclusive));continue}Me>0&&(Be=Be.delta(Me))}X.push(Be)}return W.length>0&&X.push(W[W.length-1]),X}function Kze(g,v,T){if(!g.getBoundaryScore||!v.getBoundaryScore)return T;for(let W=0;W<T.length;W++){const X=W>0?T[W-1]:void 0,ue=T[W],Re=W+1<T.length?T[W+1]:void 0,Be=new Mc(X?X.seq1Range.endExclusive+1:0,Re?Re.seq1Range.start-1:g.length),it=new Mc(X?X.seq2Range.endExclusive+1:0,Re?Re.seq2Range.start-1:v.length);ue.seq1Range.isEmpty?T[W]=$Ee(ue,g,v,Be,it):ue.seq2Range.isEmpty&&(T[W]=$Ee(ue.swap(),v,g,it,Be).swap())}return T}function $Ee(g,v,T,W,X){let Re=1;for(;g.seq1Range.start-Re>=W.start&&g.seq2Range.start-Re>=X.start&&T.isStronglyEqual(g.seq2Range.start-Re,g.seq2Range.endExclusive-Re)&&Re<100;)Re++;Re--;let Be=0;for(;g.seq1Range.start+Be<W.endExclusive&&g.seq2Range.endExclusive+Be<X.endExclusive&&T.isStronglyEqual(g.seq2Range.start+Be,g.seq2Range.endExclusive+Be)&&Be<100;)Be++;if(Re===0&&Be===0)return g;let it=0,Me=-1;for(let Ue=-Re;Ue<=Be;Ue++){const Bt=g.seq2Range.start+Ue,Ut=g.seq2Range.endExclusive+Ue,dn=g.seq1Range.start+Ue,Pr=v.getBoundaryScore(dn)+T.getBoundaryScore(Bt)+T.getBoundaryScore(Ut);Pr>Me&&(Me=Pr,it=Ue)}return g.delta(it)}function Xze(g,v,T){const W=[];for(const X of T){const ue=W[W.length-1];if(!ue){W.push(X);continue}X.seq1Range.start-ue.seq1Range.endExclusive<=2||X.seq2Range.start-ue.seq2Range.endExclusive<=2?W[W.length-1]=new $p(ue.seq1Range.join(X.seq1Range),ue.seq2Range.join(X.seq2Range)):W.push(X)}return W}function Yze(g,v,T){const W=$p.invert(T,g.length),X=[];let ue=new yA(0,0);function Re(it,Me){if(it.offset1<ue.offset1||it.offset2<ue.offset2)return;const Ue=g.findWordContaining(it.offset1),Bt=v.findWordContaining(it.offset2);if(!Ue||!Bt)return;let Ut=new $p(Ue,Bt);const dn=Ut.intersect(Me);let Pr=dn.seq1Range.length,yi=dn.seq2Range.length;for(;W.length>0;){const co=W[0];if(!(co.seq1Range.intersects(Ut.seq1Range)||co.seq2Range.intersects(Ut.seq2Range)))break;const An=g.findWordContaining(co.seq1Range.start),Oo=v.findWordContaining(co.seq2Range.start),Gr=new $p(An,Oo),Bi=Gr.intersect(co);if(Pr+=Bi.seq1Range.length,yi+=Bi.seq2Range.length,Ut=Ut.join(Gr),Ut.seq1Range.endExclusive>=co.seq1Range.endExclusive)W.shift();else break}Pr+yi<(Ut.seq1Range.length+Ut.seq2Range.length)*2/3&&X.push(Ut),ue=Ut.getEndExclusives()}for(;W.length>0;){const it=W.shift();it.seq1Range.isEmpty||(Re(it.getStarts(),it),Re(it.getEndExclusives().delta(-1),it))}return $ze(T,X)}function $ze(g,v){const T=[];for(;g.length>0||v.length>0;){const W=g[0],X=v[0];let ue;W&&(!X||W.seq1Range.start<X.seq1Range.start)?ue=g.shift():ue=v.shift(),T.length>0&&T[T.length-1].seq1Range.endExclusive>=ue.seq1Range.start?T[T.length-1]=T[T.length-1].join(ue):T.push(ue)}return T}function Qze(g,v,T){let W=T;if(W.length===0)return W;let X=0,ue;do{ue=!1;const Re=[W[0]];for(let Be=1;Be<W.length;Be++){let Ue=function(Ut,dn){const Pr=new Mc(Me.seq1Range.endExclusive,it.seq1Range.start);return g.getText(Pr).replace(/\s/g,"").length<=4&&(Ut.seq1Range.length+Ut.seq2Range.length>5||dn.seq1Range.length+dn.seq2Range.length>5)};const it=W[Be],Me=Re[Re.length-1];Ue(Me,it)?(ue=!0,Re[Re.length-1]=Re[Re.length-1].join(it)):Re.push(it)}W=Re}while(X++<10&&ue);return W}function Zze(g,v,T){let W=T;if(W.length===0)return W;let X=0,ue;do{ue=!1;const Be=[W[0]];for(let it=1;it<W.length;it++){let Bt=function(dn,Pr){const yi=new Mc(Ue.seq1Range.endExclusive,Me.seq1Range.start);if(g.countLinesIn(yi)>5||yi.length>500)return!1;const Zn=g.getText(yi).trim();if(Zn.length>20||Zn.split(/\r\n|\r|\n/).length>1)return!1;const An=g.countLinesIn(dn.seq1Range),Oo=dn.seq1Range.length,Gr=v.countLinesIn(dn.seq2Range),Bi=dn.seq2Range.length,Uo=g.countLinesIn(Pr.seq1Range),Nr=Pr.seq1Range.length,Ca=v.countLinesIn(Pr.seq2Range),Sc=Pr.seq2Range.length,au=2*40+50;function nr(Xs){return Math.min(Xs,au)}return Math.pow(Math.pow(nr(An*40+Oo),1.5)+Math.pow(nr(Gr*40+Bi),1.5),1.5)+Math.pow(Math.pow(nr(Uo*40+Nr),1.5)+Math.pow(nr(Ca*40+Sc),1.5),1.5)>(au**1.5)**1.5*1.3};const Me=W[it],Ue=Be[Be.length-1];Bt(Ue,Me)?(ue=!0,Be[Be.length-1]=Be[Be.length-1].join(Me)):Be.push(Me)}W=Be}while(X++<10&&ue);const Re=[];return kze(W,(Be,it,Me)=>{let Ue=it;function Bt(Zn){return Zn.length>0&&Zn.trim().length<=3&&it.seq1Range.length+it.seq2Range.length>100}const Ut=g.extendToFullLines(it.seq1Range),dn=g.getText(new Mc(Ut.start,it.seq1Range.start));Bt(dn)&&(Ue=Ue.deltaStart(-dn.length));const Pr=g.getText(new Mc(it.seq1Range.endExclusive,Ut.endExclusive));Bt(Pr)&&(Ue=Ue.deltaEnd(Pr.length));const yi=$p.fromOffsetPairs(Be?Be.getEndExclusives():yA.zero,Me?Me.getStarts():yA.max),co=Ue.intersect(yi);Re.length>0&&co.getStarts().equals(Re[Re.length-1].getEndExclusives())?Re[Re.length-1]=Re[Re.length-1].join(co):Re.push(co)}),Re}class QEe{constructor(v,T){this.trimmedHash=v,this.lines=T}getElement(v){return this.trimmedHash[v]}get length(){return this.trimmedHash.length}getBoundaryScore(v){const T=v===0?0:ZEe(this.lines[v-1]),W=v===this.lines.length?0:ZEe(this.lines[v]);return 1e3-(T+W)}getText(v){return this.lines.slice(v.start,v.endExclusive).join(`
+`)}isStronglyEqual(v,T){return this.lines[v]===this.lines[T]}}function ZEe(g){let v=0;for(;v<g.length&&(g.charCodeAt(v)===32||g.charCodeAt(v)===9);)v++;return v}class e9e{constructor(){this.dynamicProgrammingDiffing=new Fze,this.myersDiffingAlgorithm=new UEe}computeDiff(v,T,W){if(v.length<=1&&Pze(v,T,(Bi,Uo)=>Bi===Uo))return new JB([],[],!1);if(v.length===1&&v[0].length===0||T.length===1&&T[0].length===0)return new JB([new gA(new Fl(1,v.length+1),new Fl(1,T.length+1),[new AE(new ys(1,1,v.length,v[v.length-1].length+1),new ys(1,1,T.length,T[T.length-1].length+1))])],[],!1);const X=W.maxComputationTimeMs===0?A6.instance:new Wze(W.maxComputationTimeMs),ue=!W.ignoreTrimWhitespace,Re=new Map;function Be(Bi){let Uo=Re.get(Bi);return Uo===void 0&&(Uo=Re.size,Re.set(Bi,Uo)),Uo}const it=v.map(Bi=>Be(Bi.trim())),Me=T.map(Bi=>Be(Bi.trim())),Ue=new QEe(it,v),Bt=new QEe(Me,T),Ut=Ue.length+Bt.length<1700?this.dynamicProgrammingDiffing.compute(Ue,Bt,X,(Bi,Uo)=>v[Bi]===T[Uo]?T[Uo].length===0?.1:1+Math.log(1+T[Uo].length):.99):this.myersDiffingAlgorithm.compute(Ue,Bt,X);let dn=Ut.diffs,Pr=Ut.hitTimeout;dn=XEe(Ue,Bt,dn),dn=Qze(Ue,Bt,dn);const yi=[],co=Bi=>{if(ue)for(let Uo=0;Uo<Bi;Uo++){const Nr=Zn+Uo,Ca=An+Uo;if(v[Nr]!==T[Ca]){const Sc=this.refineDiff(v,T,new $p(new Mc(Nr,Nr+1),new Mc(Ca,Ca+1)),X,ue);for(const au of Sc.mappings)yi.push(au);Sc.hitTimeout&&(Pr=!0)}}};let Zn=0,An=0;for(const Bi of dn){qB(()=>Bi.seq1Range.start-Zn===Bi.seq2Range.start-An);const Uo=Bi.seq1Range.start-Zn;co(Uo),Zn=Bi.seq1Range.endExclusive,An=Bi.seq2Range.endExclusive;const Nr=this.refineDiff(v,T,Bi,X,ue);Nr.hitTimeout&&(Pr=!0);for(const Ca of Nr.mappings)yi.push(Ca)}co(v.length-Zn);const Oo=e1e(yi,v,T);let Gr=[];return W.computeMoves&&(Gr=this.computeMoves(Oo,v,T,it,Me,X,ue)),qB(()=>{function Bi(Nr,Ca){if(Nr.lineNumber<1||Nr.lineNumber>Ca.length)return!1;const Sc=Ca[Nr.lineNumber-1];return!(Nr.column<1||Nr.column>Sc.length+1)}function Uo(Nr,Ca){return!(Nr.startLineNumber<1||Nr.startLineNumber>Ca.length+1||Nr.endLineNumberExclusive<1||Nr.endLineNumberExclusive>Ca.length+1)}for(const Nr of Oo){if(!Nr.innerChanges)return!1;for(const Ca of Nr.innerChanges)if(!(Bi(Ca.modifiedRange.getStartPosition(),T)&&Bi(Ca.modifiedRange.getEndPosition(),T)&&Bi(Ca.originalRange.getStartPosition(),v)&&Bi(Ca.originalRange.getEndPosition(),v)))return!1;if(!Uo(Nr.modified,T)||!Uo(Nr.original,v))return!1}return!0}),new JB(Oo,Gr,Pr)}computeMoves(v,T,W,X,ue,Re,Be){return Vze(v,T,W,X,ue,Re).map(Ue=>{const Bt=this.refineDiff(T,W,new $p(Ue.original.toOffsetRange(),Ue.modified.toOffsetRange()),Re,Be),Ut=e1e(Bt.mappings,T,W,!0);return new Tze(Ue,Ut)})}refineDiff(v,T,W,X,ue){const Be=n9e(W).toRangeMapping2(v,T),it=new QB(v,Be.originalRange,ue),Me=new QB(T,Be.modifiedRange,ue),Ue=it.length+Me.length<500?this.dynamicProgrammingDiffing.compute(it,Me,X):this.myersDiffingAlgorithm.compute(it,Me,X);let Bt=Ue.diffs;return Bt=XEe(it,Me,Bt),Bt=Yze(it,Me,Bt),Bt=Xze(it,Me,Bt),Bt=Zze(it,Me,Bt),{mappings:Bt.map(dn=>new AE(it.translateRange(dn.seq1Range),Me.translateRange(dn.seq2Range))),hitTimeout:Ue.hitTimeout}}}function e1e(g,v,T,W=!1){const X=[];for(const ue of Mze(g.map(Re=>t9e(Re,v,T)),(Re,Be)=>Re.original.overlapOrTouch(Be.original)||Re.modified.overlapOrTouch(Be.modified))){const Re=ue[0],Be=ue[ue.length-1];X.push(new gA(Re.original.join(Be.original),Re.modified.join(Be.modified),ue.map(it=>it.innerChanges[0])))}return qB(()=>!W&&X.length>0&&(X[0].modified.startLineNumber!==X[0].original.startLineNumber||T.length-X[X.length-1].modified.endLineNumberExclusive!==v.length-X[X.length-1].original.endLineNumberExclusive)?!1:MEe(X,(ue,Re)=>Re.original.startLineNumber-ue.original.endLineNumberExclusive===Re.modified.startLineNumber-ue.modified.endLineNumberExclusive&&ue.original.endLineNumberExclusive<Re.original.startLineNumber&&ue.modified.endLineNumberExclusive<Re.modified.startLineNumber)),X}function t9e(g,v,T){let W=0,X=0;g.modifiedRange.endColumn===1&&g.originalRange.endColumn===1&&g.originalRange.startLineNumber+W<=g.originalRange.endLineNumber&&g.modifiedRange.startLineNumber+W<=g.modifiedRange.endLineNumber&&(X=-1),g.modifiedRange.startColumn-1>=T[g.modifiedRange.startLineNumber-1].length&&g.originalRange.startColumn-1>=v[g.originalRange.startLineNumber-1].length&&g.originalRange.startLineNumber<=g.originalRange.endLineNumber+X&&g.modifiedRange.startLineNumber<=g.modifiedRange.endLineNumber+X&&(W=1);const ue=new Fl(g.originalRange.startLineNumber+W,g.originalRange.endLineNumber+1+X),Re=new Fl(g.modifiedRange.startLineNumber+W,g.modifiedRange.endLineNumber+1+X);return new gA(ue,Re,[g])}function n9e(g){return new Zb(new Fl(g.seq1Range.start+1,g.seq1Range.endExclusive+1),new Fl(g.seq2Range.start+1,g.seq2Range.endExclusive+1))}const t1e={getLegacy:()=>new Rze,getDefault:()=>new e9e};function wx(g,v){const T=Math.pow(10,v);return Math.round(g*T)/T}class Jm{constructor(v,T,W,X=1){this._rgbaBrand=void 0,this.r=Math.min(255,Math.max(0,v))|0,this.g=Math.min(255,Math.max(0,T))|0,this.b=Math.min(255,Math.max(0,W))|0,this.a=wx(Math.max(Math.min(1,X),0),3)}static equals(v,T){return v.r===T.r&&v.g===T.g&&v.b===T.b&&v.a===T.a}}class e0{constructor(v,T,W,X){this._hslaBrand=void 0,this.h=Math.max(Math.min(360,v),0)|0,this.s=wx(Math.max(Math.min(1,T),0),3),this.l=wx(Math.max(Math.min(1,W),0),3),this.a=wx(Math.max(Math.min(1,X),0),3)}static equals(v,T){return v.h===T.h&&v.s===T.s&&v.l===T.l&&v.a===T.a}static fromRGBA(v){const T=v.r/255,W=v.g/255,X=v.b/255,ue=v.a,Re=Math.max(T,W,X),Be=Math.min(T,W,X);let it=0,Me=0;const Ue=(Be+Re)/2,Bt=Re-Be;if(Bt>0){switch(Me=Math.min(Ue<=.5?Bt/(2*Ue):Bt/(2-2*Ue),1),Re){case T:it=(W-X)/Bt+(W<X?6:0);break;case W:it=(X-T)/Bt+2;break;case X:it=(T-W)/Bt+4;break}it*=60,it=Math.round(it)}return new e0(it,Me,Ue,ue)}static _hue2rgb(v,T,W){return W<0&&(W+=1),W>1&&(W-=1),W<1/6?v+(T-v)*6*W:W<1/2?T:W<2/3?v+(T-v)*(2/3-W)*6:v}static toRGBA(v){const T=v.h/360,{s:W,l:X,a:ue}=v;let Re,Be,it;if(W===0)Re=Be=it=X;else{const Me=X<.5?X*(1+W):X+W-X*W,Ue=2*X-Me;Re=e0._hue2rgb(Ue,Me,T+1/3),Be=e0._hue2rgb(Ue,Me,T),it=e0._hue2rgb(Ue,Me,T-1/3)}return new Jm(Math.round(Re*255),Math.round(Be*255),Math.round(it*255),ue)}}class NM{constructor(v,T,W,X){this._hsvaBrand=void 0,this.h=Math.max(Math.min(360,v),0)|0,this.s=wx(Math.max(Math.min(1,T),0),3),this.v=wx(Math.max(Math.min(1,W),0),3),this.a=wx(Math.max(Math.min(1,X),0),3)}static equals(v,T){return v.h===T.h&&v.s===T.s&&v.v===T.v&&v.a===T.a}static fromRGBA(v){const T=v.r/255,W=v.g/255,X=v.b/255,ue=Math.max(T,W,X),Re=Math.min(T,W,X),Be=ue-Re,it=ue===0?0:Be/ue;let Me;return Be===0?Me=0:ue===T?Me=((W-X)/Be%6+6)%6:ue===W?Me=(X-T)/Be+2:Me=(T-W)/Be+4,new NM(Math.round(Me*60),it,ue,v.a)}static toRGBA(v){const{h:T,s:W,v:X,a:ue}=v,Re=X*W,Be=Re*(1-Math.abs(T/60%2-1)),it=X-Re;let[Me,Ue,Bt]=[0,0,0];return T<60?(Me=Re,Ue=Be):T<120?(Me=Be,Ue=Re):T<180?(Ue=Re,Bt=Be):T<240?(Ue=Be,Bt=Re):T<300?(Me=Be,Bt=Re):T<=360&&(Me=Re,Bt=Be),Me=Math.round((Me+it)*255),Ue=Math.round((Ue+it)*255),Bt=Math.round((Bt+it)*255),new Jm(Me,Ue,Bt,ue)}}const id=class id{static fromHex(v){return id.Format.CSS.parseHex(v)||id.red}static equals(v,T){return!v&&!T?!0:!v||!T?!1:v.equals(T)}get hsla(){return this._hsla?this._hsla:e0.fromRGBA(this.rgba)}get hsva(){return this._hsva?this._hsva:NM.fromRGBA(this.rgba)}constructor(v){if(v)if(v instanceof Jm)this.rgba=v;else if(v instanceof e0)this._hsla=v,this.rgba=e0.toRGBA(v);else if(v instanceof NM)this._hsva=v,this.rgba=NM.toRGBA(v);else throw new Error("Invalid color ctor argument");else throw new Error("Color needs a value")}equals(v){return!!v&&Jm.equals(this.rgba,v.rgba)&&e0.equals(this.hsla,v.hsla)&&NM.equals(this.hsva,v.hsva)}getRelativeLuminance(){const v=id._relativeLuminanceForComponent(this.rgba.r),T=id._relativeLuminanceForComponent(this.rgba.g),W=id._relativeLuminanceForComponent(this.rgba.b),X=.2126*v+.7152*T+.0722*W;return wx(X,4)}static _relativeLuminanceForComponent(v){const T=v/255;return T<=.03928?T/12.92:Math.pow((T+.055)/1.055,2.4)}isLighter(){return(this.rgba.r*299+this.rgba.g*587+this.rgba.b*114)/1e3>=128}isLighterThan(v){const T=this.getRelativeLuminance(),W=v.getRelativeLuminance();return T>W}isDarkerThan(v){const T=this.getRelativeLuminance(),W=v.getRelativeLuminance();return T<W}lighten(v){return new id(new e0(this.hsla.h,this.hsla.s,this.hsla.l+this.hsla.l*v,this.hsla.a))}darken(v){return new id(new e0(this.hsla.h,this.hsla.s,this.hsla.l-this.hsla.l*v,this.hsla.a))}transparent(v){const{r:T,g:W,b:X,a:ue}=this.rgba;return new id(new Jm(T,W,X,ue*v))}isTransparent(){return this.rgba.a===0}isOpaque(){return this.rgba.a===1}opposite(){return new id(new Jm(255-this.rgba.r,255-this.rgba.g,255-this.rgba.b,this.rgba.a))}makeOpaque(v){if(this.isOpaque()||v.rgba.a!==1)return this;const{r:T,g:W,b:X,a:ue}=this.rgba;return new id(new Jm(v.rgba.r-ue*(v.rgba.r-T),v.rgba.g-ue*(v.rgba.g-W),v.rgba.b-ue*(v.rgba.b-X),1))}toString(){return this._toString||(this._toString=id.Format.CSS.format(this)),this._toString}static getLighterColor(v,T,W){if(v.isLighterThan(T))return v;W=W||.5;const X=v.getRelativeLuminance(),ue=T.getRelativeLuminance();return W=W*(ue-X)/ue,v.lighten(W)}static getDarkerColor(v,T,W){if(v.isDarkerThan(T))return v;W=W||.5;const X=v.getRelativeLuminance(),ue=T.getRelativeLuminance();return W=W*(X-ue)/X,v.darken(W)}};id.white=new id(new Jm(255,255,255,1)),id.black=new id(new Jm(0,0,0,1)),id.red=new id(new Jm(255,0,0,1)),id.blue=new id(new Jm(0,0,255,1)),id.green=new id(new Jm(0,255,0,1)),id.cyan=new id(new Jm(0,255,255,1)),id.lightgrey=new id(new Jm(211,211,211,1)),id.transparent=new id(new Jm(0,0,0,0));let CM=id;(function(g){(function(v){(function(T){function W(dn){return dn.rgba.a===1?`rgb(${dn.rgba.r}, ${dn.rgba.g}, ${dn.rgba.b})`:g.Format.CSS.formatRGBA(dn)}T.formatRGB=W;function X(dn){return`rgba(${dn.rgba.r}, ${dn.rgba.g}, ${dn.rgba.b}, ${+dn.rgba.a.toFixed(2)})`}T.formatRGBA=X;function ue(dn){return dn.hsla.a===1?`hsl(${dn.hsla.h}, ${(dn.hsla.s*100).toFixed(2)}%, ${(dn.hsla.l*100).toFixed(2)}%)`:g.Format.CSS.formatHSLA(dn)}T.formatHSL=ue;function Re(dn){return`hsla(${dn.hsla.h}, ${(dn.hsla.s*100).toFixed(2)}%, ${(dn.hsla.l*100).toFixed(2)}%, ${dn.hsla.a.toFixed(2)})`}T.formatHSLA=Re;function Be(dn){const Pr=dn.toString(16);return Pr.length!==2?"0"+Pr:Pr}function it(dn){return`#${Be(dn.rgba.r)}${Be(dn.rgba.g)}${Be(dn.rgba.b)}`}T.formatHex=it;function Me(dn,Pr=!1){return Pr&&dn.rgba.a===1?g.Format.CSS.formatHex(dn):`#${Be(dn.rgba.r)}${Be(dn.rgba.g)}${Be(dn.rgba.b)}${Be(Math.round(dn.rgba.a*255))}`}T.formatHexA=Me;function Ue(dn){return dn.isOpaque()?g.Format.CSS.formatHex(dn):g.Format.CSS.formatRGBA(dn)}T.format=Ue;function Bt(dn){const Pr=dn.length;if(Pr===0||dn.charCodeAt(0)!==35)return null;if(Pr===7){const yi=16*Ut(dn.charCodeAt(1))+Ut(dn.charCodeAt(2)),co=16*Ut(dn.charCodeAt(3))+Ut(dn.charCodeAt(4)),Zn=16*Ut(dn.charCodeAt(5))+Ut(dn.charCodeAt(6));return new g(new Jm(yi,co,Zn,1))}if(Pr===9){const yi=16*Ut(dn.charCodeAt(1))+Ut(dn.charCodeAt(2)),co=16*Ut(dn.charCodeAt(3))+Ut(dn.charCodeAt(4)),Zn=16*Ut(dn.charCodeAt(5))+Ut(dn.charCodeAt(6)),An=16*Ut(dn.charCodeAt(7))+Ut(dn.charCodeAt(8));return new g(new Jm(yi,co,Zn,An/255))}if(Pr===4){const yi=Ut(dn.charCodeAt(1)),co=Ut(dn.charCodeAt(2)),Zn=Ut(dn.charCodeAt(3));return new g(new Jm(16*yi+yi,16*co+co,16*Zn+Zn))}if(Pr===5){const yi=Ut(dn.charCodeAt(1)),co=Ut(dn.charCodeAt(2)),Zn=Ut(dn.charCodeAt(3)),An=Ut(dn.charCodeAt(4));return new g(new Jm(16*yi+yi,16*co+co,16*Zn+Zn,(16*An+An)/255))}return null}T.parseHex=Bt;function Ut(dn){switch(dn){case 48:return 0;case 49:return 1;case 50:return 2;case 51:return 3;case 52:return 4;case 53:return 5;case 54:return 6;case 55:return 7;case 56:return 8;case 57:return 9;case 97:return 10;case 65:return 10;case 98:return 11;case 66:return 11;case 99:return 12;case 67:return 12;case 100:return 13;case 68:return 13;case 101:return 14;case 69:return 14;case 102:return 15;case 70:return 15}return 0}})(v.CSS||(v.CSS={}))})(g.Format||(g.Format={}))})(CM||(CM={}));function n1e(g){const v=[];for(const T of g){const W=Number(T);(W||W===0&&T.replace(/\s/g,"")!=="")&&v.push(W)}return v}function bne(g,v,T,W){return{red:g/255,blue:T/255,green:v/255,alpha:W}}function I6(g,v){const T=v.index,W=v[0].length;if(!T)return;const X=g.positionAt(T);return{startLineNumber:X.lineNumber,startColumn:X.column,endLineNumber:X.lineNumber,endColumn:X.column+W}}function r9e(g,v){if(!g)return;const T=CM.Format.CSS.parseHex(v);if(T)return{range:g,color:bne(T.rgba.r,T.rgba.g,T.rgba.b,T.rgba.a)}}function r1e(g,v,T){if(!g||v.length!==1)return;const X=v[0].values(),ue=n1e(X);return{range:g,color:bne(ue[0],ue[1],ue[2],T?ue[3]:1)}}function i1e(g,v,T){if(!g||v.length!==1)return;const X=v[0].values(),ue=n1e(X),Re=new CM(new e0(ue[0],ue[1]/100,ue[2]/100,T?ue[3]:1));return{range:g,color:bne(Re.rgba.r,Re.rgba.g,Re.rgba.b,Re.rgba.a)}}function x6(g,v){return typeof g=="string"?[...g.matchAll(v)]:g.findMatches(v)}function i9e(g){const v=[],W=x6(g,/\b(rgb|rgba|hsl|hsla)(\([0-9\s,.\%]*\))|(#)([A-Fa-f0-9]{3})\b|(#)([A-Fa-f0-9]{4})\b|(#)([A-Fa-f0-9]{6})\b|(#)([A-Fa-f0-9]{8})\b/gm);if(W.length>0)for(const X of W){const ue=X.filter(Me=>Me!==void 0),Re=ue[1],Be=ue[2];if(!Be)continue;let it;if(Re==="rgb"){const Me=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*\)$/gm;it=r1e(I6(g,X),x6(Be,Me),!1)}else if(Re==="rgba"){const Me=/^\(\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;it=r1e(I6(g,X),x6(Be,Me),!0)}else if(Re==="hsl"){const Me=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*\)$/gm;it=i1e(I6(g,X),x6(Be,Me),!1)}else if(Re==="hsla"){const Me=/^\(\s*(36[0]|3[0-5][0-9]|[12][0-9][0-9]|[1-9]?[0-9])\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(100|\d{1,2}[.]\d*|\d{1,2})%\s*,\s*(0[.][0-9]+|[.][0-9]+|[01][.]|[01])\s*\)$/gm;it=i1e(I6(g,X),x6(Be,Me),!0)}else Re==="#"&&(it=r9e(I6(g,X),Re+Be));it&&v.push(it)}return v}function o9e(g){return!g||typeof g.getValue!="function"||typeof g.positionAt!="function"?[]:i9e(g)}const o1e=new RegExp("\\bMARK:\\s*(.*)$","d"),a9e=/^-+|-+$/g;function s9e(g,v){var W;let T=[];if(v.findRegionSectionHeaders&&((W=v.foldingRules)!=null&&W.markers)){const X=l9e(g,v);T=T.concat(X)}if(v.findMarkSectionHeaders){const X=c9e(g);T=T.concat(X)}return T}function l9e(g,v){const T=[],W=g.getLineCount();for(let X=1;X<=W;X++){const ue=g.getLineContent(X),Re=ue.match(v.foldingRules.markers.start);if(Re){const Be={startLineNumber:X,startColumn:Re[0].length+1,endLineNumber:X,endColumn:ue.length+1};if(Be.endColumn>Be.startColumn){const it={range:Be,...a1e(ue.substring(Re[0].length)),shouldBeInComments:!1};(it.text||it.hasSeparatorLine)&&T.push(it)}}}return T}function c9e(g){const v=[],T=g.getLineCount();for(let W=1;W<=T;W++){const X=g.getLineContent(W);u9e(X,W,v)}return v}function u9e(g,v,T){o1e.lastIndex=0;const W=o1e.exec(g);if(W){const X=W.indices[1][0]+1,ue=W.indices[1][1]+1,Re={startLineNumber:v,startColumn:X,endLineNumber:v,endColumn:ue};if(Re.endColumn>Re.startColumn){const Be={range:Re,...a1e(W[1]),shouldBeInComments:!0};(Be.text||Be.hasSeparatorLine)&&T.push(Be)}}}function a1e(g){g=g.trim();const v=g.startsWith("-");return g=g.replace(a9e,""),{text:g,hasSeparatorLine:v}}var s1e;(function(g){async function v(W){let X;const ue=await Promise.all(W.map(Re=>Re.then(Be=>Be,Be=>{X||(X=Be)})));if(typeof X<"u")throw X;return ue}g.settled=v;function T(W){return new Promise(async(X,ue)=>{try{await W(X,ue)}catch(Re){ue(Re)}})}g.withAsyncBody=T})(s1e||(s1e={}));const Cg=class Cg{static fromArray(v){return new Cg(T=>{T.emitMany(v)})}static fromPromise(v){return new Cg(async T=>{T.emitMany(await v)})}static fromPromises(v){return new Cg(async T=>{await Promise.all(v.map(async W=>T.emitOne(await W)))})}static merge(v){return new Cg(async T=>{await Promise.all(v.map(async W=>{for await(const X of W)T.emitOne(X)}))})}constructor(v,T){this._state=0,this._results=[],this._error=null,this._onReturn=T,this._onStateChanged=new Qb,queueMicrotask(async()=>{const W={emitOne:X=>this.emitOne(X),emitMany:X=>this.emitMany(X),reject:X=>this.reject(X)};try{await Promise.resolve(v(W)),this.resolve()}catch(X){this.reject(X)}finally{W.emitOne=void 0,W.emitMany=void 0,W.reject=void 0}})}[Symbol.asyncIterator](){let v=0;return{next:async()=>{do{if(this._state===2)throw this._error;if(v<this._results.length)return{done:!1,value:this._results[v++]};if(this._state===1)return{done:!0,value:void 0};await OB.toPromise(this._onStateChanged.event)}while(!0)},return:async()=>{var T;return(T=this._onReturn)==null||T.call(this),{done:!0,value:void 0}}}}static map(v,T){return new Cg(async W=>{for await(const X of v)W.emitOne(T(X))})}map(v){return Cg.map(this,v)}static filter(v,T){return new Cg(async W=>{for await(const X of v)T(X)&&W.emitOne(X)})}filter(v){return Cg.filter(this,v)}static coalesce(v){return Cg.filter(v,T=>!!T)}coalesce(){return Cg.coalesce(this)}static async toPromise(v){const T=[];for await(const W of v)T.push(W);return T}toPromise(){return Cg.toPromise(this)}emitOne(v){this._state===0&&(this._results.push(v),this._onStateChanged.fire())}emitMany(v){this._state===0&&(this._results=this._results.concat(v),this._onStateChanged.fire())}resolve(){this._state===0&&(this._state=1,this._onStateChanged.fire())}reject(v){this._state===0&&(this._state=2,this._error=v,this._onStateChanged.fire())}};Cg.EMPTY=Cg.fromArray([]);let l1e=Cg;class d9e{constructor(v){this.values=v,this.prefixSum=new Uint32Array(v.length),this.prefixSumValidIndex=new Int32Array(1),this.prefixSumValidIndex[0]=-1}insertValues(v,T){v=IM(v);const W=this.values,X=this.prefixSum,ue=T.length;return ue===0?!1:(this.values=new Uint32Array(W.length+ue),this.values.set(W.subarray(0,v),0),this.values.set(W.subarray(v),v+ue),this.values.set(T,v),v-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=v-1),this.prefixSum=new Uint32Array(this.values.length),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(X.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}setValue(v,T){return v=IM(v),T=IM(T),this.values[v]===T?!1:(this.values[v]=T,v-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=v-1),!0)}removeValues(v,T){v=IM(v),T=IM(T);const W=this.values,X=this.prefixSum;if(v>=W.length)return!1;const ue=W.length-v;return T>=ue&&(T=ue),T===0?!1:(this.values=new Uint32Array(W.length-T),this.values.set(W.subarray(0,v),0),this.values.set(W.subarray(v+T),v),this.prefixSum=new Uint32Array(this.values.length),v-1<this.prefixSumValidIndex[0]&&(this.prefixSumValidIndex[0]=v-1),this.prefixSumValidIndex[0]>=0&&this.prefixSum.set(X.subarray(0,this.prefixSumValidIndex[0]+1)),!0)}getTotalSum(){return this.values.length===0?0:this._getPrefixSum(this.values.length-1)}getPrefixSum(v){return v<0?0:(v=IM(v),this._getPrefixSum(v))}_getPrefixSum(v){if(v<=this.prefixSumValidIndex[0])return this.prefixSum[v];let T=this.prefixSumValidIndex[0]+1;T===0&&(this.prefixSum[0]=this.values[0],T++),v>=this.values.length&&(v=this.values.length-1);for(let W=T;W<=v;W++)this.prefixSum[W]=this.prefixSum[W-1]+this.values[W];return this.prefixSumValidIndex[0]=Math.max(this.prefixSumValidIndex[0],v),this.prefixSum[v]}getIndexOf(v){v=Math.floor(v),this.getTotalSum();let T=0,W=this.values.length-1,X=0,ue=0,Re=0;for(;T<=W;)if(X=T+(W-T)/2|0,ue=this.prefixSum[X],Re=ue-this.values[X],v<Re)W=X-1;else if(v>=ue)T=X+1;else break;return new p9e(X,v-Re)}}class p9e{constructor(v,T){this.index=v,this.remainder=T,this._prefixSumIndexOfResultBrand=void 0,this.index=v,this.remainder=T}}class f9e{constructor(v,T,W,X){this._uri=v,this._lines=T,this._eol=W,this._versionId=X,this._lineStarts=null,this._cachedTextValue=null}dispose(){this._lines.length=0}get version(){return this._versionId}getText(){return this._cachedTextValue===null&&(this._cachedTextValue=this._lines.join(this._eol)),this._cachedTextValue}onEvents(v){v.eol&&v.eol!==this._eol&&(this._eol=v.eol,this._lineStarts=null);const T=v.changes;for(const W of T)this._acceptDeleteRange(W.range),this._acceptInsertText(new rd(W.range.startLineNumber,W.range.startColumn),W.text);this._versionId=v.versionId,this._cachedTextValue=null}_ensureLineStarts(){if(!this._lineStarts){const v=this._eol.length,T=this._lines.length,W=new Uint32Array(T);for(let X=0;X<T;X++)W[X]=this._lines[X].length+v;this._lineStarts=new d9e(W)}}_setLineText(v,T){this._lines[v]=T,this._lineStarts&&this._lineStarts.setValue(v,this._lines[v].length+this._eol.length)}_acceptDeleteRange(v){if(v.startLineNumber===v.endLineNumber){if(v.startColumn===v.endColumn)return;this._setLineText(v.startLineNumber-1,this._lines[v.startLineNumber-1].substring(0,v.startColumn-1)+this._lines[v.startLineNumber-1].substring(v.endColumn-1));return}this._setLineText(v.startLineNumber-1,this._lines[v.startLineNumber-1].substring(0,v.startColumn-1)+this._lines[v.endLineNumber-1].substring(v.endColumn-1)),this._lines.splice(v.startLineNumber,v.endLineNumber-v.startLineNumber),this._lineStarts&&this._lineStarts.removeValues(v.startLineNumber,v.endLineNumber-v.startLineNumber)}_acceptInsertText(v,T){if(T.length===0)return;const W=a5e(T);if(W.length===1){this._setLineText(v.lineNumber-1,this._lines[v.lineNumber-1].substring(0,v.column-1)+W[0]+this._lines[v.lineNumber-1].substring(v.column-1));return}W[W.length-1]+=this._lines[v.lineNumber-1].substring(v.column-1),this._setLineText(v.lineNumber-1,this._lines[v.lineNumber-1].substring(0,v.column-1)+W[0]);const X=new Uint32Array(W.length-1);for(let ue=1;ue<W.length;ue++)this._lines.splice(v.lineNumber+ue-1,0,W[ue]),X[ue-1]=W[ue].length+this._eol.length;this._lineStarts&&this._lineStarts.insertValues(v.lineNumber,X)}}class m9e{constructor(){this._models=Object.create(null)}getModel(v){return this._models[v]}getModels(){const v=[];return Object.keys(this._models).forEach(T=>v.push(this._models[T])),v}$acceptNewModel(v){this._models[v.url]=new _9e(xv.parse(v.url),v.lines,v.EOL,v.versionId)}$acceptModelChanged(v,T){if(!this._models[v])return;this._models[v].onEvents(T)}$acceptRemovedModel(v){this._models[v]&&delete this._models[v]}}class _9e extends f9e{get uri(){return this._uri}get eol(){return this._eol}getValue(){return this.getText()}findMatches(v){const T=[];for(let W=0;W<this._lines.length;W++){const X=this._lines[W],ue=this.offsetAt(new rd(W+1,1)),Re=X.matchAll(v);for(const Be of Re)(Be.index||Be.index===0)&&(Be.index=Be.index+ue),T.push(Be)}return T}getLinesContent(){return this._lines.slice(0)}getLineCount(){return this._lines.length}getLineContent(v){return this._lines[v-1]}getWordAtPosition(v,T){const W=pne(v.column,kEe(T),this._lines[v.lineNumber-1],0);return W?new ys(v.lineNumber,W.startColumn,v.lineNumber,W.endColumn):null}words(v){const T=this._lines,W=this._wordenize.bind(this);let X=0,ue="",Re=0,Be=[];return{*[Symbol.iterator](){for(;;)if(Re<Be.length){const it=ue.substring(Be[Re].start,Be[Re].end);Re+=1,yield it}else if(X<T.length)ue=T[X],Be=W(ue,v),Re=0,X+=1;else break}}}getLineWords(v,T){const W=this._lines[v-1],X=this._wordenize(W,T),ue=[];for(const Re of X)ue.push({word:W.substring(Re.start,Re.end),startColumn:Re.start+1,endColumn:Re.end+1});return ue}_wordenize(v,T){const W=[];let X;for(T.lastIndex=0;(X=T.exec(v))&&X[0].length!==0;)W.push({start:X.index,end:X.index+X[0].length});return W}getValueInRange(v){if(v=this._validateRange(v),v.startLineNumber===v.endLineNumber)return this._lines[v.startLineNumber-1].substring(v.startColumn-1,v.endColumn-1);const T=this._eol,W=v.startLineNumber-1,X=v.endLineNumber-1,ue=[];ue.push(this._lines[W].substring(v.startColumn-1));for(let Re=W+1;Re<X;Re++)ue.push(this._lines[Re]);return ue.push(this._lines[X].substring(0,v.endColumn-1)),ue.join(T)}offsetAt(v){return v=this._validatePosition(v),this._ensureLineStarts(),this._lineStarts.getPrefixSum(v.lineNumber-2)+(v.column-1)}positionAt(v){v=Math.floor(v),v=Math.max(0,v),this._ensureLineStarts();const T=this._lineStarts.getIndexOf(v),W=this._lines[T.index].length;return{lineNumber:1+T.index,column:1+Math.min(T.remainder,W)}}_validateRange(v){const T=this._validatePosition({lineNumber:v.startLineNumber,column:v.startColumn}),W=this._validatePosition({lineNumber:v.endLineNumber,column:v.endColumn});return T.lineNumber!==v.startLineNumber||T.column!==v.startColumn||W.lineNumber!==v.endLineNumber||W.column!==v.endColumn?{startLineNumber:T.lineNumber,startColumn:T.column,endLineNumber:W.lineNumber,endColumn:W.column}:v}_validatePosition(v){if(!rd.isIPosition(v))throw new Error("bad position");let{lineNumber:T,column:W}=v,X=!1;if(T<1)T=1,W=1,X=!0;else if(T>this._lines.length)T=this._lines.length,W=this._lines[T-1].length+1,X=!0;else{const ue=this._lines[T-1].length+1;W<1?(W=1,X=!0):W>ue&&(W=ue,X=!0)}return X?{lineNumber:T,column:W}:v}}const sG=class sG{constructor(){this._workerTextModelSyncServer=new m9e}dispose(){}_getModel(v){return this._workerTextModelSyncServer.getModel(v)}_getModels(){return this._workerTextModelSyncServer.getModels()}$acceptNewModel(v){this._workerTextModelSyncServer.$acceptNewModel(v)}$acceptModelChanged(v,T){this._workerTextModelSyncServer.$acceptModelChanged(v,T)}$acceptRemovedModel(v){this._workerTextModelSyncServer.$acceptRemovedModel(v)}async $computeUnicodeHighlights(v,T,W){const X=this._getModel(v);return X?Eze.computeUnicodeHighlights(X,T,W):{ranges:[],hasMore:!1,ambiguousCharacterCount:0,invisibleCharacterCount:0,nonBasicAsciiCharacterCount:0}}async $findSectionHeaders(v,T){const W=this._getModel(v);return W?s9e(W,T):[]}async $computeDiff(v,T,W,X){const ue=this._getModel(v),Re=this._getModel(T);return!ue||!Re?null:ZB.computeDiff(ue,Re,W,X)}static computeDiff(v,T,W,X){const ue=X==="advanced"?t1e.getDefault():t1e.getLegacy(),Re=v.getLinesContent(),Be=T.getLinesContent(),it=ue.computeDiff(Re,Be,W),Me=it.changes.length>0?!1:this._modelsAreIdentical(v,T);function Ue(Bt){return Bt.map(Ut=>{var dn;return[Ut.original.startLineNumber,Ut.original.endLineNumberExclusive,Ut.modified.startLineNumber,Ut.modified.endLineNumberExclusive,(dn=Ut.innerChanges)==null?void 0:dn.map(Pr=>[Pr.originalRange.startLineNumber,Pr.originalRange.startColumn,Pr.originalRange.endLineNumber,Pr.originalRange.endColumn,Pr.modifiedRange.startLineNumber,Pr.modifiedRange.startColumn,Pr.modifiedRange.endLineNumber,Pr.modifiedRange.endColumn])]})}return{identical:Me,quitEarly:it.hitTimeout,changes:Ue(it.changes),moves:it.moves.map(Bt=>[Bt.lineRangeMapping.original.startLineNumber,Bt.lineRangeMapping.original.endLineNumberExclusive,Bt.lineRangeMapping.modified.startLineNumber,Bt.lineRangeMapping.modified.endLineNumberExclusive,Ue(Bt.changes)])}}static _modelsAreIdentical(v,T){const W=v.getLineCount(),X=T.getLineCount();if(W!==X)return!1;for(let ue=1;ue<=W;ue++){const Re=v.getLineContent(ue),Be=T.getLineContent(ue);if(Re!==Be)return!1}return!0}async $computeMoreMinimalEdits(v,T,W){const X=this._getModel(v);if(!X)return T;const ue=[];let Re;T=T.slice(0).sort((it,Me)=>{if(it.range&&Me.range)return ys.compareRangesUsingStarts(it.range,Me.range);const Ue=it.range?0:1,Bt=Me.range?0:1;return Ue-Bt});let Be=0;for(let it=1;it<T.length;it++)ys.getEndPosition(T[Be].range).equals(ys.getStartPosition(T[it].range))?(T[Be].range=ys.fromPositions(ys.getStartPosition(T[Be].range),ys.getEndPosition(T[it].range)),T[Be].text+=T[it].text):(Be++,T[Be]=T[it]);T.length=Be+1;for(let{range:it,text:Me,eol:Ue}of T){if(typeof Ue=="number"&&(Re=Ue),ys.isEmpty(it)&&!Me)continue;const Bt=X.getValueInRange(it);if(Me=Me.replace(/\r\n|\n|\r/g,X.eol),Bt===Me)continue;if(Math.max(Me.length,Bt.length)>ZB._diffLimit){ue.push({range:it,text:Me});continue}const Ut=U5e(Bt,Me,W),dn=X.offsetAt(ys.lift(it).getStartPosition());for(const Pr of Ut){const yi=X.positionAt(dn+Pr.originalStart),co=X.positionAt(dn+Pr.originalStart+Pr.originalLength),Zn={text:Me.substr(Pr.modifiedStart,Pr.modifiedLength),range:{startLineNumber:yi.lineNumber,startColumn:yi.column,endLineNumber:co.lineNumber,endColumn:co.column}};X.getValueInRange(Zn.range)!==Zn.text&&ue.push(Zn)}}return typeof Re=="number"&&ue.push({eol:Re,text:"",range:{startLineNumber:0,startColumn:0,endLineNumber:0,endColumn:0}}),ue}async $computeLinks(v){const T=this._getModel(v);return T?X5e(T):null}async $computeDefaultDocumentColors(v){const T=this._getModel(v);return T?o9e(T):null}async $textualSuggest(v,T,W,X){const ue=new wB,Re=new RegExp(W,X),Be=new Set;e:for(const it of v){const Me=this._getModel(it);if(Me){for(const Ue of Me.words(Re))if(!(Ue===T||!isNaN(Number(Ue)))&&(Be.add(Ue),Be.size>ZB._suggestionsLimit))break e}}return{words:Array.from(Be),duration:ue.elapsed()}}async $computeWordRanges(v,T,W,X){const ue=this._getModel(v);if(!ue)return Object.create(null);const Re=new RegExp(W,X),Be=Object.create(null);for(let it=T.startLineNumber;it<T.endLineNumber;it++){const Me=ue.getLineWords(it,Re);for(const Ue of Me){if(!isNaN(Number(Ue.word)))continue;let Bt=Be[Ue.word];Bt||(Bt=[],Be[Ue.word]=Bt),Bt.push({startLineNumber:it,startColumn:Ue.startColumn,endLineNumber:it,endColumn:Ue.endColumn})}}return Be}async $navigateValueSet(v,T,W,X,ue){const Re=this._getModel(v);if(!Re)return null;const Be=new RegExp(X,ue);T.startColumn===T.endColumn&&(T={startLineNumber:T.startLineNumber,startColumn:T.startColumn,endLineNumber:T.endLineNumber,endColumn:T.endColumn+1});const it=Re.getValueInRange(T),Me=Re.getWordAtPosition({lineNumber:T.startLineNumber,column:T.startColumn},Be);if(!Me)return null;const Ue=Re.getValueInRange(Me);return nne.INSTANCE.navigateValueSet(T,it,Me,Ue,W)}};sG._diffLimit=1e5,sG._suggestionsLimit=1e4;let Ene=sG;class ZB extends Ene{constructor(v,T){super(),this._host=v,this._foreignModuleFactory=T,this._foreignModule=null}async $ping(){return"pong"}$loadForeignModule(v,T,W){const Re={host:pze(W,(Be,it)=>this._host.$fhr(Be,it)),getMirrorModels:()=>this._getModels()};return this._foreignModuleFactory?(this._foreignModule=this._foreignModuleFactory(Re,T),Promise.resolve(DEe(this._foreignModule))):new Promise((Be,it)=>{const Me=Ue=>{this._foreignModule=Ue.create(Re,T),Be(DEe(this._foreignModule))};import(`${d0e.asBrowserUri(`${v}.js`).toString(!0)}`).then(Me).catch(it)})}$fmr(v,T){if(!this._foreignModule||typeof this._foreignModule[v]!="function")return Promise.reject(new Error("Missing requestHandler or method: "+v));try{return Promise.resolve(this._foreignModule[v].apply(this._foreignModule,T))}catch(W){return Promise.reject(W)}}}typeof importScripts=="function"&&(globalThis.monaco=aze());let Sne=!1;function c1e(g){if(Sne)return;Sne=!0;const v=new G5e(T=>{globalThis.postMessage(T)},T=>new ZB(dne.getChannel(T),g));globalThis.onmessage=T=>{v.onmessage(T.data)}}globalThis.onmessage=g=>{Sne||c1e(null)};var HN={};/*!-----------------------------------------------------------------------------
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Version: 0.52.0(f6dc0eb8fce67e57f6036f4769d92c1666cdf546)
+ * Released under the MIT license
+ * https://github.com/microsoft/monaco-editor/blob/main/LICENSE.txt
+ *-----------------------------------------------------------------------------*/var h9e=Object.defineProperty,g9e=(g,v)=>{for(var T in v)h9e(g,T,{get:v[T],enumerable:!0})},u1e={};g9e(u1e,{EndOfLineState:()=>b9e,IndentStyle:()=>S9e,ScriptKind:()=>qN,ScriptTarget:()=>T9e,TokenClass:()=>A9e,createClassifier:()=>v9e,createLanguageService:()=>d1e,displayPartsToString:()=>y9e,flattenDiagnosticMessageText:()=>E9e,typescript:()=>p1e});var IE=void 0,eG={exports:{}},xE=(()=>{var g=Object.defineProperty,v=Object.getOwnPropertyNames,T=(e,t)=>function(){return e&&(t=(0,e[v(e)[0]])(e=0)),t},W=(e,t)=>function(){return t||(0,e[v(e)[0]])((t={exports:{}}).exports,t),t.exports},X=(e,t)=>{for(var r in t)g(e,r,{get:t[r],enumerable:!0})},ue,Re,Be,it=T({"src/compiler/corePublic.ts"(){ue="5.4",Re="5.4.5",Be=(e=>(e[e.LessThan=-1]="LessThan",e[e.EqualTo=0]="EqualTo",e[e.GreaterThan=1]="GreaterThan",e))(Be||{})}});function Me(e){return e?e.length:0}function Ue(e,t){if(e)for(let r=0;r<e.length;r++){const i=t(e[r],r);if(i)return i}}function Bt(e,t){if(e)for(let r=e.length-1;r>=0;r--){const i=t(e[r],r);if(i)return i}}function Ut(e,t){if(e!==void 0)for(let r=0;r<e.length;r++){const i=t(e[r],r);if(i!==void 0)return i}}function dn(e,t){for(const r of e){const i=t(r);if(i!==void 0)return i}}function Pr(e,t,r){let i=r;if(e){let o=0;for(const s of e)i=t(i,s,o),o++}return i}function yi(e,t,r){const i=[];N.assertEqual(e.length,t.length);for(let o=0;o<e.length;o++)i.push(r(e[o],t[o],o));return i}function co(e,t){if(e.length<=1)return e;const r=[];for(let i=0,o=e.length;i<o;i++)i&&r.push(t),r.push(e[i]);return r}function Zn(e,t){if(e){for(let r=0;r<e.length;r++)if(!t(e[r],r))return!1}return!0}function An(e,t,r){if(e!==void 0)for(let i=r??0;i<e.length;i++){const o=e[i];if(t(o,i))return o}}function Oo(e,t,r){if(e!==void 0)for(let i=r??e.length-1;i>=0;i--){const o=e[i];if(t(o,i))return o}}function Gr(e,t,r){if(e===void 0)return-1;for(let i=r??0;i<e.length;i++)if(t(e[i],i))return i;return-1}function Bi(e,t,r){if(e===void 0)return-1;for(let i=r??e.length-1;i>=0;i--)if(t(e[i],i))return i;return-1}function Uo(e,t){for(let r=0;r<e.length;r++){const i=t(e[r],r);if(i)return i}return N.fail()}function Nr(e,t,r=Mv){if(e){for(const i of e)if(r(i,t))return!0}return!1}function Ca(e,t,r=Mv){return e.length===t.length&&e.every((i,o)=>r(i,t[o]))}function Sc(e,t,r){for(let i=r||0;i<e.length;i++)if(Nr(t,e.charCodeAt(i)))return i;return-1}function au(e,t){let r=0;if(e)for(let i=0;i<e.length;i++){const o=e[i];t(o,i)&&r++}return r}function nr(e,t){if(e){const r=e.length;let i=0;for(;i<r&&t(e[i]);)i++;if(i<r){const o=e.slice(0,i);for(i++;i<r;){const s=e[i];t(s)&&o.push(s),i++}return o}}return e}function Xs(e,t){let r=0;for(let i=0;i<e.length;i++)t(e[i],i,e)&&(e[r]=e[i],r++);e.length=r}function Vo(e){e.length=0}function wt(e,t){let r;if(e){r=[];for(let i=0;i<e.length;i++)r.push(t(e[i],i))}return r}function*Ia(e,t){for(const r of e)yield t(r)}function eo(e,t){if(e)for(let r=0;r<e.length;r++){const i=e[r],o=t(i,r);if(i!==o){const s=e.slice(0,r);for(s.push(o),r++;r<e.length;r++)s.push(t(e[r],r));return s}}return e}function ia(e){const t=[];for(const r of e)r&&(To(r)?Jr(t,r):t.push(r));return t}function Pi(e,t){let r;if(e)for(let i=0;i<e.length;i++){const o=t(e[i],i);o&&(To(o)?r=Jr(r,o):r=xn(r,o))}return r||et}function rc(e,t){const r=[];if(e)for(let i=0;i<e.length;i++){const o=t(e[i],i);o&&(To(o)?Jr(r,o):r.push(o))}return r}function*Qp(e,t){for(const r of e){const i=t(r);i&&(yield*i)}}function vm(e,t){let r;if(e)for(let i=0;i<e.length;i++){const o=e[i],s=t(o,i);(r||o!==s||To(s))&&(r||(r=e.slice(0,i)),To(s)?Jr(r,s):r.push(s))}return r||e}function RE(e,t){const r=[];for(let i=0;i<e.length;i++){const o=t(e[i],i);if(o===void 0)return;r.push(o)}return r}function Hi(e,t){const r=[];if(e)for(let i=0;i<e.length;i++){const o=t(e[i],i);o!==void 0&&r.push(o)}return r}function*Pg(e,t){for(const r of e){const i=t(r);i!==void 0&&(yield i)}}function C6(e,t){if(!e)return;const r=new Map;return e.forEach((i,o)=>{const s=t(o,i);if(s!==void 0){const[l,u]=s;l!==void 0&&u!==void 0&&r.set(l,u)}}),r}function n0(e,t,r){if(e.has(t))return e.get(t);const i=r();return e.set(t,i),i}function Rv(e,t){return e.has(t)?!1:(e.add(t),!0)}function*P6(e){yield e}function lG(e,t,r){let i;if(e){i=[];const o=e.length;let s,l,u=0,p=0;for(;u<o;){for(;p<o;){const h=e[p];if(l=t(h,p),p===0)s=l;else if(l!==s)break;p++}if(u<p){const h=r(e.slice(u,p),s,u,p);h&&i.push(h),u=p}s=l,p++}}return i}function Ane(e,t){if(!e)return;const r=new Map;return e.forEach((i,o)=>{const[s,l]=t(o,i);r.set(s,l)}),r}function bt(e,t){if(e)if(t){for(const r of e)if(t(r))return!0}else return e.length>0;return!1}function cG(e,t,r){let i;for(let o=0;o<e.length;o++)t(e[o])?i=i===void 0?o:i:i!==void 0&&(r(i,o),i=void 0);i!==void 0&&r(i,e.length)}function So(e,t){return bt(t)?bt(e)?[...e,...t]:t:e}function x9e(e,t){return t}function OM(e){return e.map(x9e)}function R9e(e,t,r){const i=OM(e);v1e(e,i,r);let o=e[i[0]];const s=[i[0]];for(let l=1;l<i.length;l++){const u=i[l],p=e[u];t(o,p)||(s.push(u),o=p)}return s.sort(),s.map(l=>e[l])}function D9e(e,t){const r=[];for(const i of e)Tf(r,i,t);return r}function DE(e,t,r){return e.length===0?[]:e.length===1?e.slice():r?R9e(e,t,r):D9e(e,t)}function N9e(e,t){if(e.length===0)return et;let r=e[0];const i=[r];for(let o=1;o<e.length;o++){const s=e[o];switch(t(s,r)){case!0:case 0:continue;case-1:return N.fail("Array is unsorted.")}i.push(r=s)}return i}function uG(){return[]}function xy(e,t,r,i){if(e.length===0)return e.push(t),!0;const o=Nv(e,t,nl,r);return o<0?(e.splice(~o,0,t),!0):i?(e.splice(o,0,t),!0):!1}function KN(e,t,r){return N9e(uS(e,t),r||t||Uu)}function M6(e,t){if(e.length<2)return!0;for(let r=1,i=e.length;r<i;r++)if(t(e[r-1],e[r])===1)return!1;return!0}function XN(e,t,r,i){let o=3;if(e.length<2)return o;let s=t(e[0]);for(let l=1,u=e.length;l<u&&o!==0;l++){const p=t(e[l]);o&1&&r(s,p)>0&&(o&=-2),o&2&&i(s,p)>0&&(o&=-3),s=p}return o}function Km(e,t,r=Mv){if(!e||!t)return e===t;if(e.length!==t.length)return!1;for(let i=0;i<e.length;i++)if(!r(e[i],t[i],i))return!1;return!0}function WM(e){let t;if(e)for(let r=0;r<e.length;r++){const i=e[r];(t||!i)&&(t||(t=e.slice(0,r)),i&&t.push(i))}return t||e}function Ine(e,t,r){if(!t||!e||t.length===0||e.length===0)return t;const i=[];e:for(let o=0,s=0;s<t.length;s++){s>0&&N.assertGreaterThanOrEqual(r(t[s],t[s-1]),0);t:for(const l=o;o<e.length;o++)switch(o>l&&N.assertGreaterThanOrEqual(r(e[o],e[o-1]),0),r(t[s],e[o])){case-1:i.push(t[s]);continue e;case 0:continue e;case 1:continue t}}return i}function xn(e,t){return t===void 0?e:e===void 0?[t]:(e.push(t),e)}function Wx(e,t){return e===void 0?t:t===void 0?e:To(e)?To(t)?So(e,t):xn(e,t):To(t)?xn(t,e):[e,t]}function xne(e,t){return t<0?e.length+t:t}function Jr(e,t,r,i){if(t===void 0||t.length===0)return e;if(e===void 0)return t.slice(r,i);r=r===void 0?0:xne(t,r),i=i===void 0?t.length:xne(t,i);for(let o=r;o<i&&o<t.length;o++)t[o]!==void 0&&e.push(t[o]);return e}function Tf(e,t,r){return Nr(e,t,r)?!1:(e.push(t),!0)}function Mg(e,t,r){return e?(Tf(e,t,r),e):[t]}function v1e(e,t,r){t.sort((i,o)=>r(e[i],e[o])||rl(i,o))}function uS(e,t){return e.length===0?e:e.slice().sort(t)}function*dG(e){for(let t=e.length-1;t>=0;t--)yield e[t]}function Dv(e,t){const r=OM(e);return v1e(e,r,t),r.map(i=>e[i])}function pG(e,t,r,i){for(;r<i;){if(e[r]!==t[r])return!1;r++}return!0}function Xc(e){return e===void 0||e.length===0?void 0:e[0]}function L6(e){if(e)for(const t of e)return t}function Ha(e){return N.assert(e.length!==0),e[0]}function fG(e){for(const t of e)return t;N.fail("iterator is empty")}function tl(e){return e===void 0||e.length===0?void 0:e[e.length-1]}function Ya(e){return N.assert(e.length!==0),e[e.length-1]}function sh(e){return e&&e.length===1?e[0]:void 0}function mG(e){return N.checkDefined(sh(e))}function lh(e){return e&&e.length===1?e[0]:e}function _G(e,t,r){const i=e.slice(0);return i[t]=r,i}function Nv(e,t,r,i,o){return bA(e,r(t),r,i,o)}function bA(e,t,r,i,o){if(!bt(e))return-1;let s=o||0,l=e.length-1;for(;s<=l;){const u=s+(l-s>>1),p=r(e[u],u);switch(i(p,t)){case-1:s=u+1;break;case 0:return u;case 1:l=u-1;break}}return~s}function od(e,t,r,i,o){if(e&&e.length>0){const s=e.length;if(s>0){let l=i===void 0||i<0?0:i;const u=o===void 0||l+o>s-1?s-1:l+o;let p;for(arguments.length<=2?(p=e[l],l++):p=r;l<=u;)p=t(p,e[l],l),l++;return p}}return r}function xs(e,t){return Ny.call(e,t)}function k6(e,t){return Ny.call(e,t)?e[t]:void 0}function Xh(e){const t=[];for(const r in e)Ny.call(e,r)&&t.push(r);return t}function y1e(e){const t=[];do{const r=Object.getOwnPropertyNames(e);for(const i of r)Tf(t,i)}while(e=Object.getPrototypeOf(e));return t}function EA(e){const t=[];for(const r in e)Ny.call(e,r)&&t.push(e[r]);return t}function Rne(e,t){const r=new Array(e);for(let i=0;i<e;i++)r[i]=t(i);return r}function zo(e,t){const r=[];for(const i of e)r.push(t?t(i):i);return r}function Fx(e,...t){for(const r of t)if(r!==void 0)for(const i in r)xs(r,i)&&(e[i]=r[i]);return e}function Dne(e,t,r=Mv){if(e===t)return!0;if(!e||!t)return!1;for(const i in e)if(Ny.call(e,i)&&(!Ny.call(t,i)||!r(e[i],t[i])))return!1;for(const i in t)if(Ny.call(t,i)&&!Ny.call(e,i))return!1;return!0}function NE(e,t,r=nl){const i=new Map;for(const o of e){const s=t(o);s!==void 0&&i.set(s,r(o))}return i}function Nne(e,t,r=nl){const i=[];for(const o of e)i[t(o)]=r(o);return i}function FM(e,t,r=nl){const i=Zp();for(const o of e)i.add(t(o),r(o));return i}function YN(e,t,r=nl){return zo(FM(e,t).values(),r)}function w6(e,t){const r={};if(e)for(const i of e){const o=`${t(i)}`;(r[o]??(r[o]=[])).push(i)}return r}function hG(e){const t={};for(const r in e)Ny.call(e,r)&&(t[r]=e[r]);return t}function O6(e,t){const r={};for(const i in t)Ny.call(t,i)&&(r[i]=t[i]);for(const i in e)Ny.call(e,i)&&(r[i]=e[i]);return r}function gG(e,t){for(const r in t)Ny.call(t,r)&&(e[r]=t[r])}function oa(e,t){return t?t.bind(e):void 0}function Zp(){const e=new Map;return e.add=C9e,e.remove=P9e,e}function C9e(e,t){let r=this.get(e);return r?r.push(t):this.set(e,r=[t]),r}function P9e(e,t){const r=this.get(e);r&&(TA(r,t),r.length||this.delete(e))}function zM(e){const t=(e==null?void 0:e.slice())||[];let r=0;function i(){return r===t.length}function o(...l){t.push(...l)}function s(){if(i())throw new Error("Queue is empty");const l=t[r];if(t[r]=void 0,r++,r>100&&r>t.length>>1){const u=t.length-r;t.copyWithin(0,r),t.length=u,r=0}return l}return{enqueue:o,dequeue:s,isEmpty:i}}function vG(e,t){const r=new Map;let i=0;function*o(){for(const l of r.values())To(l)?yield*l:yield l}const s={has(l){const u=e(l);if(!r.has(u))return!1;const p=r.get(u);if(!To(p))return t(p,l);for(const h of p)if(t(h,l))return!0;return!1},add(l){const u=e(l);if(r.has(u)){const p=r.get(u);if(To(p))Nr(p,l,t)||(p.push(l),i++);else{const h=p;t(h,l)||(r.set(u,[h,l]),i++)}}else r.set(u,l),i++;return this},delete(l){const u=e(l);if(!r.has(u))return!1;const p=r.get(u);if(To(p)){for(let h=0;h<p.length;h++)if(t(p[h],l))return p.length===1?r.delete(u):p.length===2?r.set(u,p[1-h]):EG(p,h),i--,!0}else if(t(p,l))return r.delete(u),i--,!0;return!1},clear(){r.clear(),i=0},get size(){return i},forEach(l){for(const u of zo(r.values()))if(To(u))for(const p of u)l(p,p,s);else{const p=u;l(p,p,s)}},keys(){return o()},values(){return o()},*entries(){for(const l of o())yield[l,l]},[Symbol.iterator]:()=>o(),[Symbol.toStringTag]:r[Symbol.toStringTag]};return s}function To(e){return Array.isArray(e)}function SA(e){return To(e)?e:[e]}function Po(e){return typeof e=="string"}function Cv(e){return typeof e=="number"}function ii(e,t){return e!==void 0&&t(e)?e:void 0}function aa(e,t){return e!==void 0&&t(e)?e:N.fail(`Invalid cast. The supplied value ${e} did not pass the test '${N.getFunctionName(t)}'.`)}function $a(e){}function Xm(){return!1}function Pv(){return!0}function r0(){}function nl(e){return e}function Cne(e){return e.toLowerCase()}function ch(e){return Vne.test(e)?e.replace(Vne,Cne):e}function Ko(){throw new Error("Not implemented")}function Td(e){let t;return()=>(e&&(t=e(),e=void 0),t)}function uh(e){const t=new Map;return r=>{const i=`${typeof r}:${r}`;let o=t.get(i);return o===void 0&&!t.has(i)&&(o=e(r),t.set(i,o)),o}}function b1e(e){const t=new WeakMap;return r=>{let i=t.get(r);return i===void 0&&!t.has(r)&&(i=e(r),t.set(r,i)),i}}function Pne(e,t){return(...r)=>{let i=t.get(r);return i===void 0&&!t.has(r)&&(i=e(...r),t.set(r,i)),i}}function E1e(e,t,r,i,o){if(o){const s=[];for(let l=0;l<arguments.length;l++)s[l]=arguments[l];return l=>od(s,(u,p)=>p(u),l)}else return i?s=>i(r(t(e(s)))):r?s=>r(t(e(s))):t?s=>t(e(s)):e?s=>e(s):s=>s}function Mv(e,t){return e===t}function i0(e,t){return e===t||e!==void 0&&t!==void 0&&e.toUpperCase()===t.toUpperCase()}function dS(e,t){return Mv(e,t)}function S1e(e,t){return e===t?0:e===void 0?-1:t===void 0?1:e<t?-1:1}function rl(e,t){return S1e(e,t)}function W6(e,t){return rl(e==null?void 0:e.start,t==null?void 0:t.start)||rl(e==null?void 0:e.length,t==null?void 0:t.length)}function yG(e,t){return od(e,(r,i)=>t(r,i)===-1?r:i)}function F6(e,t){return e===t?0:e===void 0?-1:t===void 0?1:(e=e.toUpperCase(),t=t.toUpperCase(),e<t?-1:e>t?1:0)}function Mne(e,t){return e===t?0:e===void 0?-1:t===void 0?1:(e=e.toLowerCase(),t=t.toLowerCase(),e<t?-1:e>t?1:0)}function Uu(e,t){return S1e(e,t)}function zx(e){return e?F6:Uu}function Lne(){return RG}function kne(e){RG!==e&&(RG=e,jne=void 0)}function BM(e,t){return(jne||(jne=I1e(RG)))(e,t)}function wne(e,t,r,i){return e===t?0:e===void 0?-1:t===void 0?1:i(e[r],t[r])}function Ry(e,t){return rl(e?1:0,t?1:0)}function $N(e,t,r){const i=Math.max(2,Math.floor(e.length*.34));let o=Math.floor(e.length*.4)+1,s;for(const l of t){const u=r(l);if(u!==void 0&&Math.abs(u.length-e.length)<=i){if(u===e||u.length<3&&u.toLowerCase()!==e.toLowerCase())continue;const p=M9e(e,u,o-.1);if(p===void 0)continue;N.assert(p<o),o=p,s=l}}return s}function M9e(e,t,r){let i=new Array(t.length+1),o=new Array(t.length+1);const s=r+.01;for(let u=0;u<=t.length;u++)i[u]=u;for(let u=1;u<=e.length;u++){const p=e.charCodeAt(u-1),h=Math.ceil(u>r?u-r:1),m=Math.floor(t.length>r+u?r+u:t.length);o[0]=u;let b=u;for(let I=1;I<h;I++)o[I]=s;for(let I=h;I<=m;I++){const R=e[u-1].toLowerCase()===t[I-1].toLowerCase()?i[I-1]+.1:i[I-1]+2,M=p===t.charCodeAt(I-1)?i[I-1]:Math.min(i[I]+1,o[I-1]+1,R);o[I]=M,b=Math.min(b,M)}for(let I=m+1;I<=t.length;I++)o[I]=s;if(b>r)return;const A=i;i=o,o=A}const l=i[t.length];return l>r?void 0:l}function Al(e,t,r){const i=e.length-t.length;return i>=0&&(r?i0(e.slice(i),t):e.indexOf(t,i)===i)}function Bx(e,t){return Al(e,t)?e.slice(0,e.length-t.length):e}function One(e,t){return Al(e,t)?e.slice(0,e.length-t.length):void 0}function bG(e){let t=e.length;for(let r=t-1;r>0;r--){let i=e.charCodeAt(r);if(i>=48&&i<=57)do--r,i=e.charCodeAt(r);while(r>0&&i>=48&&i<=57);else if(r>4&&(i===110||i===78)){if(--r,i=e.charCodeAt(r),i!==105&&i!==73||(--r,i=e.charCodeAt(r),i!==109&&i!==77))break;--r,i=e.charCodeAt(r)}else break;if(i!==45&&i!==46)break;t=r}return t===e.length?e:e.slice(0,t)}function Gx(e,t){for(let r=0;r<e.length;r++)if(e[r]===t)return Dy(e,r),!0;return!1}function Dy(e,t){for(let r=t;r<e.length-1;r++)e[r]=e[r+1];e.pop()}function EG(e,t){e[t]=e[e.length-1],e.pop()}function TA(e,t){return L9e(e,r=>r===t)}function L9e(e,t){for(let r=0;r<e.length;r++)if(t(e[r]))return EG(e,r),!0;return!1}function Mu(e){return e?nl:ch}function Wne({prefix:e,suffix:t}){return`${e}*${t}`}function Fne(e,t){return N.assert(z6(e,t)),t.substring(e.prefix.length,t.length-e.suffix.length)}function SG(e,t,r){let i,o=-1;for(const s of e){const l=t(s);z6(l,r)&&l.prefix.length>o&&(o=l.prefix.length,i=s)}return i}function uo(e,t,r){return r?i0(e.slice(0,t.length),t):e.lastIndexOf(t,0)===0}function QN(e,t){return uo(e,t)?e.substr(t.length):e}function TG(e,t,r=nl){return uo(r(e),r(t))?e.substring(t.length):void 0}function z6({prefix:e,suffix:t},r){return r.length>=e.length+t.length&&uo(r,e)&&Al(r,t)}function B6(e,t){return r=>e(r)&&t(r)}function Ym(...e){return(...t)=>{let r;for(const i of e)if(r=i(...t),r)return r;return r}}function G6(e){return(...t)=>!e(...t)}function T1e(e){}function AA(e){return e===void 0?void 0:[e]}function V6(e,t,r,i,o,s){s=s||$a;let l=0,u=0;const p=e.length,h=t.length;let m=!1;for(;l<p&&u<h;){const b=e[l],A=t[u],I=r(b,A);I===-1?(i(b),l++,m=!0):I===1?(o(A),u++,m=!0):(s(A,b),l++,u++)}for(;l<p;)i(e[l++]),m=!0;for(;u<h;)o(t[u++]),m=!0;return m}function zne(e){const t=[];return A1e(e,t,void 0,0),t}function A1e(e,t,r,i){for(const o of e[i]){let s;r?(s=r.slice(),s.push(o)):s=[o],i===e.length-1?t.push(s):A1e(e,t,s,i+1)}}function j6(e,t){if(e){const r=e.length;let i=0;for(;i<r&&t(e[i]);)i++;return e.slice(0,i)}}function Bne(e,t){if(e){const r=e.length;let i=0;for(;i<r&&t(e[i]);)i++;return e.slice(i)}}function AG(){return typeof process<"u"&&!!process.nextTick&&!process.browser&&typeof eG=="object"}var et,U6,Gne,IG,Lv,Ny,Vne,xG,I1e,jne,RG,k9e=T({"src/compiler/core.ts"(){ra(),et=[],U6=new Map,Gne=new Set,IG=(e=>(e[e.None=0]="None",e[e.CaseSensitive=1]="CaseSensitive",e[e.CaseInsensitive=2]="CaseInsensitive",e[e.Both=3]="Both",e))(IG||{}),Lv=Array.prototype.at?(e,t)=>e==null?void 0:e.at(t):(e,t)=>{if(e&&(t=xne(e,t),t<e.length))return e[t]},Ny=Object.prototype.hasOwnProperty,Vne=/[^\u0130\u0131\u00DFa-z0-9\\/:\-_. ]+/g,xG=(e=>(e[e.None=0]="None",e[e.Normal=1]="Normal",e[e.Aggressive=2]="Aggressive",e[e.VeryAggressive=3]="VeryAggressive",e))(xG||{}),I1e=(()=>{return t;function e(r,i,o){if(r===i)return 0;if(r===void 0)return-1;if(i===void 0)return 1;const s=o(r,i);return s<0?-1:s>0?1:0}function t(r){const i=new Intl.Collator(r,{usage:"sort",sensitivity:"variant"}).compare;return(o,s)=>e(o,s,i)}})()}}),DG,N,w9e=T({"src/compiler/debug.ts"(){ra(),ra(),DG=(e=>(e[e.Off=0]="Off",e[e.Error=1]="Error",e[e.Warning=2]="Warning",e[e.Info=3]="Info",e[e.Verbose=4]="Verbose",e))(DG||{}),(e=>{let t=0;e.currentLogLevel=2,e.isDebugging=!1;function r(sn){return e.currentLogLevel<=sn}e.shouldLog=r;function i(sn,tt){e.loggingHost&&r(sn)&&e.loggingHost.log(sn,tt)}function o(sn){i(3,sn)}e.log=o,(sn=>{function tt(hi){i(1,hi)}sn.error=tt;function zt(hi){i(2,hi)}sn.warn=zt;function Rn(hi){i(3,hi)}sn.log=Rn;function li(hi){i(4,hi)}sn.trace=li})(o=e.log||(e.log={}));const s={};function l(){return t}e.getAssertionLevel=l;function u(sn){const tt=t;if(t=sn,sn>tt)for(const zt of Xh(s)){const Rn=s[zt];Rn!==void 0&&e[zt]!==Rn.assertion&&sn>=Rn.level&&(e[zt]=Rn,s[zt]=void 0)}}e.setAssertionLevel=u;function p(sn){return t>=sn}e.shouldAssert=p;function h(sn,tt){return p(sn)?!0:(s[tt]={level:sn,assertion:e[tt]},e[tt]=$a,!1)}function m(sn,tt){const zt=new Error(sn?`Debug Failure. ${sn}`:"Debug Failure.");throw Error.captureStackTrace&&Error.captureStackTrace(zt,tt||m),zt}e.fail=m;function b(sn,tt,zt){return m(`${tt||"Unexpected node."}\r
+Node ${ve(sn.kind)} was unexpected.`,zt||b)}e.failBadSyntaxKind=b;function A(sn,tt,zt,Rn){sn||(tt=tt?`False expression: ${tt}`:"False expression.",zt&&(tt+=`\r
+Verbose Debug Information: `+(typeof zt=="string"?zt:zt())),m(tt,Rn||A))}e.assert=A;function I(sn,tt,zt,Rn,li){if(sn!==tt){const hi=zt?Rn?`${zt} ${Rn}`:zt:"";m(`Expected ${sn} === ${tt}. ${hi}`,li||I)}}e.assertEqual=I;function R(sn,tt,zt,Rn){sn>=tt&&m(`Expected ${sn} < ${tt}. ${zt||""}`,Rn||R)}e.assertLessThan=R;function M(sn,tt,zt){sn>tt&&m(`Expected ${sn} <= ${tt}`,zt||M)}e.assertLessThanOrEqual=M;function C(sn,tt,zt){sn<tt&&m(`Expected ${sn} >= ${tt}`,zt||C)}e.assertGreaterThanOrEqual=C;function O(sn,tt,zt){sn==null&&m(tt,zt||O)}e.assertIsDefined=O;function U(sn,tt,zt){return O(sn,tt,zt||U),sn}e.checkDefined=U;function K(sn,tt,zt){for(const Rn of sn)O(Rn,tt,zt||K)}e.assertEachIsDefined=K;function Z(sn,tt,zt){return K(sn,tt,zt||Z),sn}e.checkEachDefined=Z;function V(sn,tt="Illegal value:",zt){const Rn=typeof sn=="object"&&xs(sn,"kind")&&xs(sn,"pos")?"SyntaxKind: "+ve(sn.kind):JSON.stringify(sn);return m(`${tt} ${Rn}`,zt||V)}e.assertNever=V;function se(sn,tt,zt,Rn){h(1,"assertEachNode")&&A(tt===void 0||Zn(sn,tt),zt||"Unexpected node.",()=>`Node array did not pass test '${oe(tt)}'.`,Rn||se)}e.assertEachNode=se;function G(sn,tt,zt,Rn){h(1,"assertNode")&&A(sn!==void 0&&(tt===void 0||tt(sn)),zt||"Unexpected node.",()=>`Node ${ve(sn==null?void 0:sn.kind)} did not pass test '${oe(tt)}'.`,Rn||G)}e.assertNode=G;function ne(sn,tt,zt,Rn){h(1,"assertNotNode")&&A(sn===void 0||tt===void 0||!tt(sn),zt||"Unexpected node.",()=>`Node ${ve(sn.kind)} should not have passed test '${oe(tt)}'.`,Rn||ne)}e.assertNotNode=ne;function he(sn,tt,zt,Rn){h(1,"assertOptionalNode")&&A(tt===void 0||sn===void 0||tt(sn),zt||"Unexpected node.",()=>`Node ${ve(sn==null?void 0:sn.kind)} did not pass test '${oe(tt)}'.`,Rn||he)}e.assertOptionalNode=he;function ye(sn,tt,zt,Rn){h(1,"assertOptionalToken")&&A(tt===void 0||sn===void 0||sn.kind===tt,zt||"Unexpected node.",()=>`Node ${ve(sn==null?void 0:sn.kind)} was not a '${ve(tt)}' token.`,Rn||ye)}e.assertOptionalToken=ye;function $(sn,tt,zt){h(1,"assertMissingNode")&&A(sn===void 0,tt||"Unexpected node.",()=>`Node ${ve(sn.kind)} was unexpected'.`,zt||$)}e.assertMissingNode=$;function Y(sn){}e.type=Y;function oe(sn){if(typeof sn!="function")return"";if(xs(sn,"name"))return sn.name;{const tt=Function.prototype.toString.call(sn),zt=/^function\s+([\w$]+)\s*\(/.exec(tt);return zt?zt[1]:""}}e.getFunctionName=oe;function fe(sn){return`{ name: ${Vi(sn.escapedName)}; flags: ${At(sn.flags)}; declarations: ${wt(sn.declarations,tt=>ve(tt.kind))} }`}e.formatSymbol=fe;function Ne(sn=0,tt,zt){const Rn=ie(tt);if(sn===0)return Rn.length>0&&Rn[0][0]===0?Rn[0][1]:"0";if(zt){const li=[];let hi=sn;for(const[Qi,Io]of Rn){if(Qi>sn)break;Qi!==0&&Qi&sn&&(li.push(Io),hi&=~Qi)}if(hi===0)return li.join("|")}else for(const[li,hi]of Rn)if(li===sn)return hi;return sn.toString()}e.formatEnum=Ne;const pe=new Map;function ie(sn){const tt=pe.get(sn);if(tt)return tt;const zt=[];for(const li in sn){const hi=sn[li];typeof hi=="number"&&zt.push([hi,li])}const Rn=Dv(zt,(li,hi)=>rl(li[0],hi[0]));return pe.set(sn,Rn),Rn}function ve(sn){return Ne(sn,q6,!1)}e.formatSyntaxKind=ve;function Le(sn){return Ne(sn,o4,!1)}e.formatSnippetKind=Le;function He(sn){return Ne(sn,r4,!1)}e.formatScriptKind=He;function Ee(sn){return Ne(sn,J6,!0)}e.formatNodeFlags=Ee;function De(sn){return Ne(sn,K6,!0)}e.formatModifierFlags=De;function Pe(sn){return Ne(sn,i4,!0)}e.formatTransformFlags=Pe;function We(sn){return Ne(sn,a4,!0)}e.formatEmitFlags=We;function At(sn){return Ne(sn,Z6,!0)}e.formatSymbolFlags=At;function Se(sn){return Ne(sn,e4,!0)}e.formatTypeFlags=Se;function je(sn){return Ne(sn,n4,!0)}e.formatSignatureFlags=je;function at(sn){return Ne(sn,t4,!0)}e.formatObjectFlags=at;function Gt(sn){return Ne(sn,UM,!0)}e.formatFlowFlags=Gt;function vt(sn){return Ne(sn,X6,!0)}e.formatRelationComparisonResult=vt;function $e(sn){return Ne(sn,YF,!0)}e.formatCheckMode=$e;function It(sn){return Ne(sn,$F,!0)}e.formatSignatureCheckMode=It;function tn(sn){return Ne(sn,XF,!0)}e.formatTypeFacts=tn;let rn=!1,Pn;function Xn(sn){"__debugFlowFlags"in sn||Object.defineProperties(sn,{__tsDebuggerDisplay:{value(){const tt=this.flags&2?"FlowStart":this.flags&4?"FlowBranchLabel":this.flags&8?"FlowLoopLabel":this.flags&16?"FlowAssignment":this.flags&32?"FlowTrueCondition":this.flags&64?"FlowFalseCondition":this.flags&128?"FlowSwitchClause":this.flags&256?"FlowArrayMutation":this.flags&512?"FlowCall":this.flags&1024?"FlowReduceLabel":this.flags&1?"FlowUnreachable":"UnknownFlow",zt=this.flags&-2048;return`${tt}${zt?` (${Gt(zt)})`:""}`}},__debugFlowFlags:{get(){return Ne(this.flags,UM,!0)}},__debugToString:{value(){return Ar(this)}}})}function hn(sn){rn&&(typeof Object.setPrototypeOf=="function"?(Pn||(Pn=Object.create(Object.prototype),Xn(Pn)),Object.setPrototypeOf(sn,Pn)):Xn(sn))}e.attachFlowNodeDebugInfo=hn;let Qt;function $t(sn){"__tsDebuggerDisplay"in sn||Object.defineProperties(sn,{__tsDebuggerDisplay:{value(tt){return tt=String(tt).replace(/(?:,[\s\w\d_]+:[^,]+)+\]$/,"]"),`NodeArray ${tt}`}}})}function _i(sn){rn&&(typeof Object.setPrototypeOf=="function"?(Qt||(Qt=Object.create(Array.prototype),$t(Qt)),Object.setPrototypeOf(sn,Qt)):$t(sn))}e.attachNodeArrayDebugInfo=_i;function ao(){if(rn)return;const sn=new WeakMap,tt=new WeakMap;Object.defineProperties(lu.getSymbolConstructor().prototype,{__tsDebuggerDisplay:{value(){const Rn=this.flags&33554432?"TransientSymbol":"Symbol",li=this.flags&-33554433;return`${Rn} '${Sl(this)}'${li?` (${At(li)})`:""}`}},__debugFlags:{get(){return At(this.flags)}}}),Object.defineProperties(lu.getTypeConstructor().prototype,{__tsDebuggerDisplay:{value(){const Rn=this.flags&67359327?`IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName?` (${this.debugIntrinsicName})`:""}`:this.flags&98304?"NullableType":this.flags&384?`LiteralType ${JSON.stringify(this.value)}`:this.flags&2048?`LiteralType ${this.value.negative?"-":""}${this.value.base10Value}n`:this.flags&8192?"UniqueESSymbolType":this.flags&32?"EnumType":this.flags&1048576?"UnionType":this.flags&2097152?"IntersectionType":this.flags&4194304?"IndexType":this.flags&8388608?"IndexedAccessType":this.flags&16777216?"ConditionalType":this.flags&33554432?"SubstitutionType":this.flags&262144?"TypeParameter":this.flags&524288?this.objectFlags&3?"InterfaceType":this.objectFlags&4?"TypeReference":this.objectFlags&8?"TupleType":this.objectFlags&16?"AnonymousType":this.objectFlags&32?"MappedType":this.objectFlags&1024?"ReverseMappedType":this.objectFlags&256?"EvolvingArrayType":"ObjectType":"Type",li=this.flags&524288?this.objectFlags&-1344:0;return`${Rn}${this.symbol?` '${Sl(this.symbol)}'`:""}${li?` (${at(li)})`:""}`}},__debugFlags:{get(){return Se(this.flags)}},__debugObjectFlags:{get(){return this.flags&524288?at(this.objectFlags):""}},__debugTypeToString:{value(){let Rn=sn.get(this);return Rn===void 0&&(Rn=this.checker.typeToString(this),sn.set(this,Rn)),Rn}}}),Object.defineProperties(lu.getSignatureConstructor().prototype,{__debugFlags:{get(){return je(this.flags)}},__debugSignatureToString:{value(){var Rn;return(Rn=this.checker)==null?void 0:Rn.signatureToString(this)}}});const zt=[lu.getNodeConstructor(),lu.getIdentifierConstructor(),lu.getTokenConstructor(),lu.getSourceFileConstructor()];for(const Rn of zt)xs(Rn.prototype,"__debugKind")||Object.defineProperties(Rn.prototype,{__tsDebuggerDisplay:{value(){return`${sl(this)?"GeneratedIdentifier":Ve(this)?`Identifier '${Sr(this)}'`:Ji(this)?`PrivateIdentifier '${Sr(this)}'`:Ma(this)?`StringLiteral ${JSON.stringify(this.text.length<10?this.text:this.text.slice(10)+"...")}`:vp(this)?`NumericLiteral ${this.text}`:YW(this)?`BigIntLiteral ${this.text}n`:gl(this)?"TypeParameterDeclaration":Ao(this)?"ParameterDeclaration":Ml(this)?"ConstructorDeclaration":rf(this)?"GetAccessorDeclaration":bp(this)?"SetAccessorDeclaration":sI(this)?"CallSignatureDeclaration":Jk(this)?"ConstructSignatureDeclaration":t1(this)?"IndexSignatureDeclaration":Kk(this)?"TypePredicateNode":Cf(this)?"TypeReferenceNode":Eh(this)?"FunctionTypeNode":HR(this)?"ConstructorTypeNode":lI(this)?"TypeQueryNode":Ep(this)?"TypeLiteralNode":Xk(this)?"ArrayTypeNode":cI(this)?"TupleTypeNode":tF(this)?"OptionalTypeNode":nF(this)?"RestTypeNode":Qy(this)?"UnionTypeNode":uI(this)?"IntersectionTypeNode":dI(this)?"ConditionalTypeNode":BS(this)?"InferTypeNode":GS(this)?"ParenthesizedTypeNode":Yk(this)?"ThisTypeNode":VS(this)?"TypeOperatorNode":jS(this)?"IndexedAccessTypeNode":JR(this)?"MappedTypeNode":Zy(this)?"LiteralTypeNode":qR(this)?"NamedTupleMember":ug(this)?"ImportTypeNode":ve(this.kind)}${this.flags?` (${Ee(this.flags)})`:""}`}},__debugKind:{get(){return ve(this.kind)}},__debugNodeFlags:{get(){return Ee(this.flags)}},__debugModifierFlags:{get(){return De(hoe(this))}},__debugTransformFlags:{get(){return Pe(this.transformFlags)}},__debugIsParseTreeNode:{get(){return cC(this)}},__debugEmitFlags:{get(){return We(ja(this))}},__debugGetText:{value(li){if($s(this))return"";let hi=tt.get(this);if(hi===void 0){const Qi=Do(this),Io=Qi&&jn(Qi);hi=Io?OE(Io,Qi,li):"",tt.set(this,hi)}return hi}}});rn=!0}e.enableDebugInfo=ao;function Oi(sn){const tt=sn&7;let zt=tt===0?"in out":tt===3?"[bivariant]":tt===2?"in":tt===1?"out":tt===4?"[independent]":"";return sn&8?zt+=" (unmeasurable)":sn&16&&(zt+=" (unreliable)"),zt}e.formatVariance=Oi;class No{__debugToString(){var tt;switch(this.kind){case 3:return((tt=this.debugInfo)==null?void 0:tt.call(this))||"(function mapper)";case 0:return`${this.source.__debugTypeToString()} -> ${this.target.__debugTypeToString()}`;case 1:return yi(this.sources,this.targets||wt(this.sources,()=>"any"),(zt,Rn)=>`${zt.__debugTypeToString()} -> ${typeof Rn=="string"?Rn:Rn.__debugTypeToString()}`).join(", ");case 2:return yi(this.sources,this.targets,(zt,Rn)=>`${zt.__debugTypeToString()} -> ${Rn().__debugTypeToString()}`).join(", ");case 5:case 4:return`m1: ${this.mapper1.__debugToString().split(`
+`).join(`
+ `)}
+m2: ${this.mapper2.__debugToString().split(`
+`).join(`
+ `)}`;default:return V(this)}}}e.DebugTypeMapper=No;function Mn(sn){return e.isDebugging?Object.setPrototypeOf(sn,No.prototype):sn}e.attachDebugPrototypeIfDebug=Mn;function Di(sn){return console.log(Ar(sn))}e.printControlFlowGraph=Di;function Ar(sn){let tt=-1;function zt(L){return L.id||(L.id=tt,tt--),L.id}let Rn;(L=>{L.lr="─",L.ud="│",L.dr="╭",L.dl="╮",L.ul="╯",L.ur="╰",L.udr="├",L.udl="┤",L.dlr="┬",L.ulr="┴",L.udlr="╫"})(Rn||(Rn={}));let li;(L=>{L[L.None=0]="None",L[L.Up=1]="Up",L[L.Down=2]="Down",L[L.Left=4]="Left",L[L.Right=8]="Right",L[L.UpDown=3]="UpDown",L[L.LeftRight=12]="LeftRight",L[L.UpLeft=5]="UpLeft",L[L.UpRight=9]="UpRight",L[L.DownLeft=6]="DownLeft",L[L.DownRight=10]="DownRight",L[L.UpDownLeft=7]="UpDownLeft",L[L.UpDownRight=11]="UpDownRight",L[L.UpLeftRight=13]="UpLeftRight",L[L.DownLeftRight=14]="DownLeftRight",L[L.UpDownLeftRight=15]="UpDownLeftRight",L[L.NoChildren=16]="NoChildren"})(li||(li={}));const hi=2032,Qi=882,Io=Object.create(null),ma=[],Wa=pt(sn,new Set);for(const L of ma)L.text=fn(L.flowNode,L.circular),ot(L);const Sn=Rt(Wa),kn=Ye(Sn);return _t(Wa,0),_n();function qe(L){return!!(L.flags&128)}function mt(L){return!!(L.flags&12)&&!!L.antecedents}function ft(L){return!!(L.flags&hi)}function Ct(L){return!!(L.flags&Qi)}function le(L){const _e=[];for(const J of L.edges)J.source===L&&_e.push(J.target);return _e}function Fe(L){const _e=[];for(const J of L.edges)J.target===L&&_e.push(J.source);return _e}function pt(L,_e){const J=zt(L);let me=Io[J];if(me&&_e.has(L))return me.circular=!0,me={id:-1,flowNode:L,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:"circularity"},ma.push(me),me;if(_e.add(L),!me)if(Io[J]=me={id:J,flowNode:L,edges:[],text:"",lane:-1,endLane:-1,level:-1,circular:!1},ma.push(me),mt(L))for(const Ge of L.antecedents)j(me,Ge,_e);else ft(L)&&j(me,L.antecedent,_e);return _e.delete(L),me}function j(L,_e,J){const me=pt(_e,J),Ge={source:L,target:me};L.edges.push(Ge),me.edges.push(Ge)}function ot(L){if(L.level!==-1)return L.level;let _e=0;for(const J of Fe(L))_e=Math.max(_e,ot(J)+1);return L.level=_e}function Rt(L){let _e=0;for(const J of le(L))_e=Math.max(_e,Rt(J));return _e+1}function Ye(L){const _e=Oe(Array(L),0);for(const J of ma)_e[J.level]=Math.max(_e[J.level],J.text.length);return _e}function _t(L,_e){if(L.lane===-1){L.lane=_e,L.endLane=_e;const J=le(L);for(let me=0;me<J.length;me++){me>0&&_e++;const Ge=J[me];_t(Ge,_e),Ge.endLane>L.endLane&&(_e=Ge.endLane)}L.endLane=_e}}function Vt(L){if(L&2)return"Start";if(L&4)return"Branch";if(L&8)return"Loop";if(L&16)return"Assignment";if(L&32)return"True";if(L&64)return"False";if(L&128)return"SwitchClause";if(L&256)return"ArrayMutation";if(L&512)return"Call";if(L&1024)return"ReduceLabel";if(L&1)return"Unreachable";throw new Error}function vn(L){const _e=jn(L);return OE(_e,L,!1)}function fn(L,_e){let J=Vt(L.flags);if(_e&&(J=`${J}#${zt(L)}`),Ct(L))L.node&&(J+=` (${vn(L.node)})`);else if(qe(L)){const me=[];for(let Ge=L.clauseStart;Ge<L.clauseEnd;Ge++){const ke=L.switchStatement.caseBlock.clauses[Ge];AP(ke)?me.push("default"):me.push(vn(ke.expression))}J+=` (${me.join(", ")})`}return _e==="circularity"?`Circular(${J})`:J}function _n(){const L=kn.length,_e=ma.reduce((Tt,kt)=>Math.max(Tt,kt.lane),0)+1,J=Oe(Array(_e),""),me=kn.map(()=>Array(_e)),Ge=kn.map(()=>Oe(Array(_e),0));for(const Tt of ma){me[Tt.level][Tt.lane]=Tt;const kt=le(Tt);for(let bn=0;bn<kt.length;bn++){const Bn=kt[bn];let Hn=8;Bn.lane===Tt.lane&&(Hn|=4),bn>0&&(Hn|=1),bn<kt.length-1&&(Hn|=2),Ge[Tt.level][Bn.lane]|=Hn}kt.length===0&&(Ge[Tt.level][Tt.lane]|=16);const en=Fe(Tt);for(let bn=0;bn<en.length;bn++){const Bn=en[bn];let Hn=4;bn>0&&(Hn|=1),bn<en.length-1&&(Hn|=2),Ge[Tt.level-1][Bn.lane]|=Hn}}for(let Tt=0;Tt<L;Tt++)for(let kt=0;kt<_e;kt++){const en=Tt>0?Ge[Tt-1][kt]:0,bn=kt>0?Ge[Tt][kt-1]:0;let Bn=Ge[Tt][kt];Bn||(en&8&&(Bn|=12),bn&2&&(Bn|=3),Ge[Tt][kt]=Bn)}for(let Tt=0;Tt<L;Tt++)for(let kt=0;kt<J.length;kt++){const en=Ge[Tt][kt],bn=en&4?"─":" ",Bn=me[Tt][kt];Bn?(ke(kt,Bn.text),Tt<L-1&&(ke(kt," "),ke(kt,Lt(bn,kn[Tt]-Bn.text.length)))):Tt<L-1&&ke(kt,Lt(bn,kn[Tt]+1)),ke(kt,q(en)),ke(kt,en&8&&Tt<L-1&&!me[Tt+1][kt]?"─":" ")}return`
+${J.join(`
+`)}
+`;function ke(Tt,kt){J[Tt]+=kt}}function q(L){switch(L){case 3:return"│";case 12:return"─";case 5:return"╯";case 9:return"╰";case 6:return"╮";case 10:return"╭";case 7:return"┤";case 11:return"├";case 13:return"┴";case 14:return"┬";case 15:return"╫"}return" "}function Oe(L,_e){if(L.fill)L.fill(_e);else for(let J=0;J<L.length;J++)L[J]=_e;return L}function Lt(L,_e){if(L.repeat)return _e>0?L.repeat(_e):"";let J="";for(;J.length<_e;)J+=L;return J}}e.formatControlFlowGraph=Ar})(N||(N={}))}});function x1e(e){const t=D1e.exec(e);if(!t)return;const[,r,i="0",o="0",s="",l=""]=t;if(!(s&&!N1e.test(s))&&!(l&&!P1e.test(l)))return{major:parseInt(r,10),minor:parseInt(i,10),patch:parseInt(o,10),prerelease:s,build:l}}function O9e(e,t){if(e===t)return 0;if(e.length===0)return t.length===0?0:1;if(t.length===0)return-1;const r=Math.min(e.length,t.length);for(let i=0;i<r;i++){const o=e[i],s=t[i];if(o===s)continue;const l=Hne.test(o),u=Hne.test(s);if(l||u){if(l!==u)return l?-1:1;const p=rl(+o,+s);if(p)return p}else{const p=Uu(o,s);if(p)return p}}return rl(e.length,t.length)}function R1e(e){const t=[];for(let r of e.trim().split(L1e)){if(!r)continue;const i=[];r=r.trim();const o=O1e.exec(r);if(o){if(!W9e(o[1],o[2],i))return}else for(const s of r.split(k1e)){const l=W1e.exec(s.trim());if(!l||!F9e(l[1],l[2],i))return}t.push(i)}return t}function Une(e){const t=w1e.exec(e);if(!t)return;const[,r,i="*",o="*",s,l]=t;return{version:new ym(Kf(r)?0:parseInt(r,10),Kf(r)||Kf(i)?0:parseInt(i,10),Kf(r)||Kf(i)||Kf(o)?0:parseInt(o,10),s,l),major:r,minor:i,patch:o}}function W9e(e,t,r){const i=Une(e);if(!i)return!1;const o=Une(t);return o?(Kf(i.major)||r.push(dh(">=",i.version)),Kf(o.major)||r.push(Kf(o.minor)?dh("<",o.version.increment("major")):Kf(o.patch)?dh("<",o.version.increment("minor")):dh("<=",o.version)),!0):!1}function F9e(e,t,r){const i=Une(t);if(!i)return!1;const{version:o,major:s,minor:l,patch:u}=i;if(Kf(s))(e==="<"||e===">")&&r.push(dh("<",ym.zero));else switch(e){case"~":r.push(dh(">=",o)),r.push(dh("<",o.increment(Kf(l)?"major":"minor")));break;case"^":r.push(dh(">=",o)),r.push(dh("<",o.increment(o.major>0||Kf(l)?"major":o.minor>0||Kf(u)?"minor":"patch")));break;case"<":case">=":r.push(Kf(l)||Kf(u)?dh(e,o.with({prerelease:"0"})):dh(e,o));break;case"<=":case">":r.push(Kf(l)?dh(e==="<="?"<":">=",o.increment("major").with({prerelease:"0"})):Kf(u)?dh(e==="<="?"<":">=",o.increment("minor").with({prerelease:"0"})):dh(e,o));break;case"=":case void 0:Kf(l)||Kf(u)?(r.push(dh(">=",o.with({prerelease:"0"}))),r.push(dh("<",o.increment(Kf(l)?"major":"minor").with({prerelease:"0"})))):r.push(dh("=",o));break;default:return!1}return!0}function Kf(e){return e==="*"||e==="x"||e==="X"}function dh(e,t){return{operator:e,operand:t}}function z9e(e,t){if(t.length===0)return!0;for(const r of t)if(B9e(e,r))return!0;return!1}function B9e(e,t){for(const r of t)if(!G9e(e,r.operator,r.operand))return!1;return!0}function G9e(e,t,r){const i=e.compareTo(r);switch(t){case"<":return i<0;case"<=":return i<=0;case">":return i>0;case">=":return i>=0;case"=":return i===0;default:return N.assertNever(t)}}function V9e(e){return wt(e,j9e).join(" || ")||"*"}function j9e(e){return wt(e,U9e).join(" ")}function U9e(e){return`${e.operator}${e.operand}`}var D1e,N1e,C1e,P1e,M1e,Hne,NG,ym,GM,L1e,k1e,w1e,O1e,W1e,H9e=T({"src/compiler/semver.ts"(){ra(),D1e=/^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,N1e=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i,C1e=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)$/i,P1e=/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i,M1e=/^[a-z0-9-]+$/i,Hne=/^(0|[1-9]\d*)$/,NG=class f6{constructor(t,r=0,i=0,o="",s=""){typeof t=="string"&&({major:t,minor:r,patch:i,prerelease:o,build:s}=N.checkDefined(x1e(t),"Invalid version")),N.assert(t>=0,"Invalid argument: major"),N.assert(r>=0,"Invalid argument: minor"),N.assert(i>=0,"Invalid argument: patch");const l=o?To(o)?o:o.split("."):et,u=s?To(s)?s:s.split("."):et;N.assert(Zn(l,p=>C1e.test(p)),"Invalid argument: prerelease"),N.assert(Zn(u,p=>M1e.test(p)),"Invalid argument: build"),this.major=t,this.minor=r,this.patch=i,this.prerelease=l,this.build=u}static tryParse(t){const r=x1e(t);if(!r)return;const{major:i,minor:o,patch:s,prerelease:l,build:u}=r;return new f6(i,o,s,l,u)}compareTo(t){return this===t?0:t===void 0?1:rl(this.major,t.major)||rl(this.minor,t.minor)||rl(this.patch,t.patch)||O9e(this.prerelease,t.prerelease)}increment(t){switch(t){case"major":return new f6(this.major+1,0,0);case"minor":return new f6(this.major,this.minor+1,0);case"patch":return new f6(this.major,this.minor,this.patch+1);default:return N.assertNever(t)}}with(t){const{major:r=this.major,minor:i=this.minor,patch:o=this.patch,prerelease:s=this.prerelease,build:l=this.build}=t;return new f6(r,i,o,s,l)}toString(){let t=`${this.major}.${this.minor}.${this.patch}`;return bt(this.prerelease)&&(t+=`-${this.prerelease.join(".")}`),bt(this.build)&&(t+=`+${this.build.join(".")}`),t}},NG.zero=new NG(0,0,0,["0"]),ym=NG,GM=class x7e{constructor(t){this._alternatives=t?N.checkDefined(R1e(t),"Invalid range spec."):et}static tryParse(t){const r=R1e(t);if(r){const i=new x7e("");return i._alternatives=r,i}}test(t){return typeof t=="string"&&(t=new ym(t)),z9e(t,this._alternatives)}toString(){return V9e(this._alternatives)}},L1e=/\|\|/g,k1e=/\s+/g,w1e=/^([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i,O1e=/^\s*([a-z0-9-+.*]+)\s+-\s+([a-z0-9-+.*]+)\s*$/i,W1e=/^(~|\^|<|<=|>|>=|=)?\s*([a-z0-9-+.*]+)$/i}});function F1e(e,t){return typeof e=="object"&&typeof e.timeOrigin=="number"&&typeof e.mark=="function"&&typeof e.measure=="function"&&typeof e.now=="function"&&typeof e.clearMarks=="function"&&typeof e.clearMeasures=="function"&&typeof t=="function"}function q9e(){if(typeof performance=="object"&&typeof PerformanceObserver=="function"&&F1e(performance,PerformanceObserver))return{shouldWriteNativeEvents:!0,performance,PerformanceObserver}}function J9e(){if(AG())try{const{performance:e,PerformanceObserver:t}=IE("perf_hooks");if(F1e(e,t))return{shouldWriteNativeEvents:!1,performance:e,PerformanceObserver:t}}catch{}}function qne(){return CG}var CG,Jne,Ys,K9e=T({"src/compiler/performanceCore.ts"(){ra(),CG=q9e()||J9e(),Jne=CG==null?void 0:CG.performance,Ys=Jne?()=>Jne.now():Date.now?Date.now:()=>+new Date}}),H6,ad,X9e=T({"src/compiler/perfLogger.ts"(){try{const e=HN.TS_ETW_MODULE_PATH??"./node_modules/@microsoft/typescript-etw";H6=IE(e)}catch{H6=void 0}ad=H6!=null&&H6.logEvent?H6:void 0}});function z1e(e,t,r,i){return e?PG(t,r,i):MG}function PG(e,t,r){let i=0;return{enter:o,exit:s};function o(){++i===1&&il(t)}function s(){--i===0?(il(r),ef(e,t,r)):i<0&&N.fail("enter/exit count does not match.")}}function il(e){if(Vx){const t=ZN.get(e)??0;ZN.set(e,t+1),jx.set(e,Ys()),pS==null||pS.mark(e),typeof onProfilerEvent=="function"&&onProfilerEvent(e)}}function ef(e,t,r){if(Vx){const i=(r!==void 0?jx.get(r):void 0)??Ys(),o=(t!==void 0?jx.get(t):void 0)??Kne,s=Ux.get(e)||0;Ux.set(e,s+(i-o)),pS==null||pS.measure(e,t,r)}}function Y9e(e){return ZN.get(e)||0}function $9e(e){return Ux.get(e)||0}function Q9e(e){Ux.forEach((t,r)=>e(r,t))}function Z9e(e){jx.forEach((t,r)=>e(r))}function eBe(e){e!==void 0?Ux.delete(e):Ux.clear(),pS==null||pS.clearMeasures(e)}function tBe(e){e!==void 0?(ZN.delete(e),jx.delete(e)):(ZN.clear(),jx.clear()),pS==null||pS.clearMarks(e)}function nBe(){return Vx}function rBe(e=gu){var t;return Vx||(Vx=!0,VM||(VM=qne()),VM&&(Kne=VM.performance.timeOrigin,(VM.shouldWriteNativeEvents||(t=e==null?void 0:e.cpuProfilingEnabled)!=null&&t.call(e)||e!=null&&e.debugMode)&&(pS=VM.performance))),!0}function iBe(){Vx&&(jx.clear(),ZN.clear(),Ux.clear(),pS=void 0,Vx=!1)}var VM,pS,MG,Vx,Kne,jx,ZN,Ux,oBe=T({"src/compiler/performance.ts"(){ra(),MG={enter:$a,exit:$a},Vx=!1,Kne=Ys(),jx=new Map,ZN=new Map,Ux=new Map}}),Xne={};X(Xne,{clearMarks:()=>tBe,clearMeasures:()=>eBe,createTimer:()=>PG,createTimerIf:()=>z1e,disable:()=>iBe,enable:()=>rBe,forEachMark:()=>Z9e,forEachMeasure:()=>Q9e,getCount:()=>Y9e,getDuration:()=>$9e,isEnabled:()=>nBe,mark:()=>il,measure:()=>ef,nullTimer:()=>MG});var fS=T({"src/compiler/_namespaces/ts.performance.ts"(){oBe()}}),sr,jM,Yne,$ne,aBe=T({"src/compiler/tracing.ts"(){ra(),fS(),(e=>{let t,r=0,i=0,o;const s=[];let l;const u=[];function p(se,G,ne){if(N.assert(!sr,"Tracing already started"),t===void 0)try{t=IE("fs")}catch(oe){throw new Error(`tracing requires having fs
+(original error: ${oe.message||oe})`)}o=se,s.length=0,l===void 0&&(l=Qr(G,"legend.json")),t.existsSync(G)||t.mkdirSync(G,{recursive:!0});const he=o==="build"?`.${process.pid}-${++r}`:o==="server"?`.${process.pid}`:"",ye=Qr(G,`trace${he}.json`),$=Qr(G,`types${he}.json`);u.push({configFilePath:ne,tracePath:ye,typesPath:$}),i=t.openSync(ye,"w"),sr=e;const Y={cat:"__metadata",ph:"M",ts:1e3*Ys(),pid:1,tid:1};t.writeSync(i,`[
+`+[{name:"process_name",args:{name:"tsc"},...Y},{name:"thread_name",args:{name:"Main"},...Y},{name:"TracingStartedInBrowser",...Y,cat:"disabled-by-default-devtools.timeline"}].map(oe=>JSON.stringify(oe)).join(`,
+`))}e.startTracing=p;function h(){N.assert(sr,"Tracing is not in progress"),N.assert(!!s.length==(o!=="server")),t.writeSync(i,`
+]
+`),t.closeSync(i),sr=void 0,s.length?Z(s):u[u.length-1].typesPath=void 0}e.stopTracing=h;function m(se){o!=="server"&&s.push(se)}e.recordType=m,(se=>{se.Parse="parse",se.Program="program",se.Bind="bind",se.Check="check",se.CheckTypes="checkTypes",se.Emit="emit",se.Session="session"})(e.Phase||(e.Phase={}));function b(se,G,ne){U("I",se,G,ne,'"s":"g"')}e.instant=b;const A=[];function I(se,G,ne,he=!1){he&&U("B",se,G,ne),A.push({phase:se,name:G,args:ne,time:1e3*Ys(),separateBeginAndEnd:he})}e.push=I;function R(se){N.assert(A.length>0),O(A.length-1,1e3*Ys(),se),A.length--}e.pop=R;function M(){const se=1e3*Ys();for(let G=A.length-1;G>=0;G--)O(G,se);A.length=0}e.popAll=M;const C=1e3*10;function O(se,G,ne){const{phase:he,name:ye,args:$,time:Y,separateBeginAndEnd:oe}=A[se];oe?(N.assert(!ne,"`results` are not supported for events with `separateBeginAndEnd`"),U("E",he,ye,$,void 0,G)):C-Y%C<=G-Y&&U("X",he,ye,{...$,results:ne},`"dur":${G-Y}`,Y)}function U(se,G,ne,he,ye,$=1e3*Ys()){o==="server"&&G==="checkTypes"||(il("beginTracing"),t.writeSync(i,`,
+{"pid":1,"tid":1,"ph":"${se}","cat":"${G}","ts":${$},"name":"${ne}"`),ye&&t.writeSync(i,`,${ye}`),he&&t.writeSync(i,`,"args":${JSON.stringify(he)}`),t.writeSync(i,"}"),il("endTracing"),ef("Tracing","beginTracing","endTracing"))}function K(se){const G=jn(se);return G?{path:G.path,start:ne(bs(G,se.pos)),end:ne(bs(G,se.end))}:void 0;function ne(he){return{line:he.line+1,character:he.character+1}}}function Z(se){var G,ne,he,ye,$,Y,oe,fe,Ne,pe,ie,ve,Le,He,Ee,De,Pe,We,At;il("beginDumpTypes");const Se=u[u.length-1].typesPath,je=t.openSync(Se,"w"),at=new Map;t.writeSync(je,"[");const Gt=se.length;for(let vt=0;vt<Gt;vt++){const $e=se[vt],It=$e.objectFlags,tn=$e.aliasSymbol??$e.symbol;let rn;if(It&16|$e.flags&2944)try{rn=(G=$e.checker)==null?void 0:G.typeToString($e)}catch{rn=void 0}let Pn={};if($e.flags&8388608){const Mn=$e;Pn={indexedAccessObjectType:(ne=Mn.objectType)==null?void 0:ne.id,indexedAccessIndexType:(he=Mn.indexType)==null?void 0:he.id}}let Xn={};if(It&4){const Mn=$e;Xn={instantiatedType:(ye=Mn.target)==null?void 0:ye.id,typeArguments:($=Mn.resolvedTypeArguments)==null?void 0:$.map(Di=>Di.id),referenceLocation:K(Mn.node)}}let hn={};if($e.flags&16777216){const Mn=$e;hn={conditionalCheckType:(Y=Mn.checkType)==null?void 0:Y.id,conditionalExtendsType:(oe=Mn.extendsType)==null?void 0:oe.id,conditionalTrueType:((fe=Mn.resolvedTrueType)==null?void 0:fe.id)??-1,conditionalFalseType:((Ne=Mn.resolvedFalseType)==null?void 0:Ne.id)??-1}}let Qt={};if($e.flags&33554432){const Mn=$e;Qt={substitutionBaseType:(pe=Mn.baseType)==null?void 0:pe.id,constraintType:(ie=Mn.constraint)==null?void 0:ie.id}}let $t={};if(It&1024){const Mn=$e;$t={reverseMappedSourceType:(ve=Mn.source)==null?void 0:ve.id,reverseMappedMappedType:(Le=Mn.mappedType)==null?void 0:Le.id,reverseMappedConstraintType:(He=Mn.constraintType)==null?void 0:He.id}}let _i={};if(It&256){const Mn=$e;_i={evolvingArrayElementType:Mn.elementType.id,evolvingArrayFinalType:(Ee=Mn.finalArrayType)==null?void 0:Ee.id}}let ao;const Oi=$e.checker.getRecursionIdentity($e);Oi&&(ao=at.get(Oi),ao||(ao=at.size,at.set(Oi,ao)));const No={id:$e.id,intrinsicName:$e.intrinsicName,symbolName:(tn==null?void 0:tn.escapedName)&&Vi(tn.escapedName),recursionId:ao,isTuple:It&8?!0:void 0,unionTypes:$e.flags&1048576?(De=$e.types)==null?void 0:De.map(Mn=>Mn.id):void 0,intersectionTypes:$e.flags&2097152?$e.types.map(Mn=>Mn.id):void 0,aliasTypeArguments:(Pe=$e.aliasTypeArguments)==null?void 0:Pe.map(Mn=>Mn.id),keyofType:$e.flags&4194304?(We=$e.type)==null?void 0:We.id:void 0,...Pn,...Xn,...hn,...Qt,...$t,..._i,destructuringPattern:K($e.pattern),firstDeclaration:K((At=tn==null?void 0:tn.declarations)==null?void 0:At[0]),flags:N.formatTypeFlags($e.flags).split("|"),display:rn};t.writeSync(je,JSON.stringify(No)),vt<Gt-1&&t.writeSync(je,`,
+`)}t.writeSync(je,`]
+`),t.closeSync(je),il("endDumpTypes"),ef("Dump types","beginDumpTypes","endDumpTypes")}function V(){l&&t.writeFileSync(l,JSON.stringify(u))}e.dumpLegend=V})(jM||(jM={})),Yne=jM.startTracing,$ne=jM.dumpLegend}});function mS(e,t=!0){const r=HM[e.category];return t?r.toLowerCase():r}var q6,J6,K6,LG,X6,Y6,kG,UM,wG,Hx,$6,OG,WG,Q6,FG,zG,BG,GG,VG,jG,UG,HG,qG,JG,KG,Z6,XG,YG,$G,QG,e4,t4,ZG,eV,tV,nV,rV,iV,n4,oV,aV,sV,lV,cV,uV,HM,qx,dV,pV,fV,mV,eC,_V,hV,gV,r4,vV,yV,bV,EV,SV,i4,o4,a4,TV,AV,IV,xV,RV,DV,NV,CV,qM,PV,B1e=T({"src/compiler/types.ts"(){q6=(e=>(e[e.Unknown=0]="Unknown",e[e.EndOfFileToken=1]="EndOfFileToken",e[e.SingleLineCommentTrivia=2]="SingleLineCommentTrivia",e[e.MultiLineCommentTrivia=3]="MultiLineCommentTrivia",e[e.NewLineTrivia=4]="NewLineTrivia",e[e.WhitespaceTrivia=5]="WhitespaceTrivia",e[e.ShebangTrivia=6]="ShebangTrivia",e[e.ConflictMarkerTrivia=7]="ConflictMarkerTrivia",e[e.NonTextFileMarkerTrivia=8]="NonTextFileMarkerTrivia",e[e.NumericLiteral=9]="NumericLiteral",e[e.BigIntLiteral=10]="BigIntLiteral",e[e.StringLiteral=11]="StringLiteral",e[e.JsxText=12]="JsxText",e[e.JsxTextAllWhiteSpaces=13]="JsxTextAllWhiteSpaces",e[e.RegularExpressionLiteral=14]="RegularExpressionLiteral",e[e.NoSubstitutionTemplateLiteral=15]="NoSubstitutionTemplateLiteral",e[e.TemplateHead=16]="TemplateHead",e[e.TemplateMiddle=17]="TemplateMiddle",e[e.TemplateTail=18]="TemplateTail",e[e.OpenBraceToken=19]="OpenBraceToken",e[e.CloseBraceToken=20]="CloseBraceToken",e[e.OpenParenToken=21]="OpenParenToken",e[e.CloseParenToken=22]="CloseParenToken",e[e.OpenBracketToken=23]="OpenBracketToken",e[e.CloseBracketToken=24]="CloseBracketToken",e[e.DotToken=25]="DotToken",e[e.DotDotDotToken=26]="DotDotDotToken",e[e.SemicolonToken=27]="SemicolonToken",e[e.CommaToken=28]="CommaToken",e[e.QuestionDotToken=29]="QuestionDotToken",e[e.LessThanToken=30]="LessThanToken",e[e.LessThanSlashToken=31]="LessThanSlashToken",e[e.GreaterThanToken=32]="GreaterThanToken",e[e.LessThanEqualsToken=33]="LessThanEqualsToken",e[e.GreaterThanEqualsToken=34]="GreaterThanEqualsToken",e[e.EqualsEqualsToken=35]="EqualsEqualsToken",e[e.ExclamationEqualsToken=36]="ExclamationEqualsToken",e[e.EqualsEqualsEqualsToken=37]="EqualsEqualsEqualsToken",e[e.ExclamationEqualsEqualsToken=38]="ExclamationEqualsEqualsToken",e[e.EqualsGreaterThanToken=39]="EqualsGreaterThanToken",e[e.PlusToken=40]="PlusToken",e[e.MinusToken=41]="MinusToken",e[e.AsteriskToken=42]="AsteriskToken",e[e.AsteriskAsteriskToken=43]="AsteriskAsteriskToken",e[e.SlashToken=44]="SlashToken",e[e.PercentToken=45]="PercentToken",e[e.PlusPlusToken=46]="PlusPlusToken",e[e.MinusMinusToken=47]="MinusMinusToken",e[e.LessThanLessThanToken=48]="LessThanLessThanToken",e[e.GreaterThanGreaterThanToken=49]="GreaterThanGreaterThanToken",e[e.GreaterThanGreaterThanGreaterThanToken=50]="GreaterThanGreaterThanGreaterThanToken",e[e.AmpersandToken=51]="AmpersandToken",e[e.BarToken=52]="BarToken",e[e.CaretToken=53]="CaretToken",e[e.ExclamationToken=54]="ExclamationToken",e[e.TildeToken=55]="TildeToken",e[e.AmpersandAmpersandToken=56]="AmpersandAmpersandToken",e[e.BarBarToken=57]="BarBarToken",e[e.QuestionToken=58]="QuestionToken",e[e.ColonToken=59]="ColonToken",e[e.AtToken=60]="AtToken",e[e.QuestionQuestionToken=61]="QuestionQuestionToken",e[e.BacktickToken=62]="BacktickToken",e[e.HashToken=63]="HashToken",e[e.EqualsToken=64]="EqualsToken",e[e.PlusEqualsToken=65]="PlusEqualsToken",e[e.MinusEqualsToken=66]="MinusEqualsToken",e[e.AsteriskEqualsToken=67]="AsteriskEqualsToken",e[e.AsteriskAsteriskEqualsToken=68]="AsteriskAsteriskEqualsToken",e[e.SlashEqualsToken=69]="SlashEqualsToken",e[e.PercentEqualsToken=70]="PercentEqualsToken",e[e.LessThanLessThanEqualsToken=71]="LessThanLessThanEqualsToken",e[e.GreaterThanGreaterThanEqualsToken=72]="GreaterThanGreaterThanEqualsToken",e[e.GreaterThanGreaterThanGreaterThanEqualsToken=73]="GreaterThanGreaterThanGreaterThanEqualsToken",e[e.AmpersandEqualsToken=74]="AmpersandEqualsToken",e[e.BarEqualsToken=75]="BarEqualsToken",e[e.BarBarEqualsToken=76]="BarBarEqualsToken",e[e.AmpersandAmpersandEqualsToken=77]="AmpersandAmpersandEqualsToken",e[e.QuestionQuestionEqualsToken=78]="QuestionQuestionEqualsToken",e[e.CaretEqualsToken=79]="CaretEqualsToken",e[e.Identifier=80]="Identifier",e[e.PrivateIdentifier=81]="PrivateIdentifier",e[e.JSDocCommentTextToken=82]="JSDocCommentTextToken",e[e.BreakKeyword=83]="BreakKeyword",e[e.CaseKeyword=84]="CaseKeyword",e[e.CatchKeyword=85]="CatchKeyword",e[e.ClassKeyword=86]="ClassKeyword",e[e.ConstKeyword=87]="ConstKeyword",e[e.ContinueKeyword=88]="ContinueKeyword",e[e.DebuggerKeyword=89]="DebuggerKeyword",e[e.DefaultKeyword=90]="DefaultKeyword",e[e.DeleteKeyword=91]="DeleteKeyword",e[e.DoKeyword=92]="DoKeyword",e[e.ElseKeyword=93]="ElseKeyword",e[e.EnumKeyword=94]="EnumKeyword",e[e.ExportKeyword=95]="ExportKeyword",e[e.ExtendsKeyword=96]="ExtendsKeyword",e[e.FalseKeyword=97]="FalseKeyword",e[e.FinallyKeyword=98]="FinallyKeyword",e[e.ForKeyword=99]="ForKeyword",e[e.FunctionKeyword=100]="FunctionKeyword",e[e.IfKeyword=101]="IfKeyword",e[e.ImportKeyword=102]="ImportKeyword",e[e.InKeyword=103]="InKeyword",e[e.InstanceOfKeyword=104]="InstanceOfKeyword",e[e.NewKeyword=105]="NewKeyword",e[e.NullKeyword=106]="NullKeyword",e[e.ReturnKeyword=107]="ReturnKeyword",e[e.SuperKeyword=108]="SuperKeyword",e[e.SwitchKeyword=109]="SwitchKeyword",e[e.ThisKeyword=110]="ThisKeyword",e[e.ThrowKeyword=111]="ThrowKeyword",e[e.TrueKeyword=112]="TrueKeyword",e[e.TryKeyword=113]="TryKeyword",e[e.TypeOfKeyword=114]="TypeOfKeyword",e[e.VarKeyword=115]="VarKeyword",e[e.VoidKeyword=116]="VoidKeyword",e[e.WhileKeyword=117]="WhileKeyword",e[e.WithKeyword=118]="WithKeyword",e[e.ImplementsKeyword=119]="ImplementsKeyword",e[e.InterfaceKeyword=120]="InterfaceKeyword",e[e.LetKeyword=121]="LetKeyword",e[e.PackageKeyword=122]="PackageKeyword",e[e.PrivateKeyword=123]="PrivateKeyword",e[e.ProtectedKeyword=124]="ProtectedKeyword",e[e.PublicKeyword=125]="PublicKeyword",e[e.StaticKeyword=126]="StaticKeyword",e[e.YieldKeyword=127]="YieldKeyword",e[e.AbstractKeyword=128]="AbstractKeyword",e[e.AccessorKeyword=129]="AccessorKeyword",e[e.AsKeyword=130]="AsKeyword",e[e.AssertsKeyword=131]="AssertsKeyword",e[e.AssertKeyword=132]="AssertKeyword",e[e.AnyKeyword=133]="AnyKeyword",e[e.AsyncKeyword=134]="AsyncKeyword",e[e.AwaitKeyword=135]="AwaitKeyword",e[e.BooleanKeyword=136]="BooleanKeyword",e[e.ConstructorKeyword=137]="ConstructorKeyword",e[e.DeclareKeyword=138]="DeclareKeyword",e[e.GetKeyword=139]="GetKeyword",e[e.InferKeyword=140]="InferKeyword",e[e.IntrinsicKeyword=141]="IntrinsicKeyword",e[e.IsKeyword=142]="IsKeyword",e[e.KeyOfKeyword=143]="KeyOfKeyword",e[e.ModuleKeyword=144]="ModuleKeyword",e[e.NamespaceKeyword=145]="NamespaceKeyword",e[e.NeverKeyword=146]="NeverKeyword",e[e.OutKeyword=147]="OutKeyword",e[e.ReadonlyKeyword=148]="ReadonlyKeyword",e[e.RequireKeyword=149]="RequireKeyword",e[e.NumberKeyword=150]="NumberKeyword",e[e.ObjectKeyword=151]="ObjectKeyword",e[e.SatisfiesKeyword=152]="SatisfiesKeyword",e[e.SetKeyword=153]="SetKeyword",e[e.StringKeyword=154]="StringKeyword",e[e.SymbolKeyword=155]="SymbolKeyword",e[e.TypeKeyword=156]="TypeKeyword",e[e.UndefinedKeyword=157]="UndefinedKeyword",e[e.UniqueKeyword=158]="UniqueKeyword",e[e.UnknownKeyword=159]="UnknownKeyword",e[e.UsingKeyword=160]="UsingKeyword",e[e.FromKeyword=161]="FromKeyword",e[e.GlobalKeyword=162]="GlobalKeyword",e[e.BigIntKeyword=163]="BigIntKeyword",e[e.OverrideKeyword=164]="OverrideKeyword",e[e.OfKeyword=165]="OfKeyword",e[e.QualifiedName=166]="QualifiedName",e[e.ComputedPropertyName=167]="ComputedPropertyName",e[e.TypeParameter=168]="TypeParameter",e[e.Parameter=169]="Parameter",e[e.Decorator=170]="Decorator",e[e.PropertySignature=171]="PropertySignature",e[e.PropertyDeclaration=172]="PropertyDeclaration",e[e.MethodSignature=173]="MethodSignature",e[e.MethodDeclaration=174]="MethodDeclaration",e[e.ClassStaticBlockDeclaration=175]="ClassStaticBlockDeclaration",e[e.Constructor=176]="Constructor",e[e.GetAccessor=177]="GetAccessor",e[e.SetAccessor=178]="SetAccessor",e[e.CallSignature=179]="CallSignature",e[e.ConstructSignature=180]="ConstructSignature",e[e.IndexSignature=181]="IndexSignature",e[e.TypePredicate=182]="TypePredicate",e[e.TypeReference=183]="TypeReference",e[e.FunctionType=184]="FunctionType",e[e.ConstructorType=185]="ConstructorType",e[e.TypeQuery=186]="TypeQuery",e[e.TypeLiteral=187]="TypeLiteral",e[e.ArrayType=188]="ArrayType",e[e.TupleType=189]="TupleType",e[e.OptionalType=190]="OptionalType",e[e.RestType=191]="RestType",e[e.UnionType=192]="UnionType",e[e.IntersectionType=193]="IntersectionType",e[e.ConditionalType=194]="ConditionalType",e[e.InferType=195]="InferType",e[e.ParenthesizedType=196]="ParenthesizedType",e[e.ThisType=197]="ThisType",e[e.TypeOperator=198]="TypeOperator",e[e.IndexedAccessType=199]="IndexedAccessType",e[e.MappedType=200]="MappedType",e[e.LiteralType=201]="LiteralType",e[e.NamedTupleMember=202]="NamedTupleMember",e[e.TemplateLiteralType=203]="TemplateLiteralType",e[e.TemplateLiteralTypeSpan=204]="TemplateLiteralTypeSpan",e[e.ImportType=205]="ImportType",e[e.ObjectBindingPattern=206]="ObjectBindingPattern",e[e.ArrayBindingPattern=207]="ArrayBindingPattern",e[e.BindingElement=208]="BindingElement",e[e.ArrayLiteralExpression=209]="ArrayLiteralExpression",e[e.ObjectLiteralExpression=210]="ObjectLiteralExpression",e[e.PropertyAccessExpression=211]="PropertyAccessExpression",e[e.ElementAccessExpression=212]="ElementAccessExpression",e[e.CallExpression=213]="CallExpression",e[e.NewExpression=214]="NewExpression",e[e.TaggedTemplateExpression=215]="TaggedTemplateExpression",e[e.TypeAssertionExpression=216]="TypeAssertionExpression",e[e.ParenthesizedExpression=217]="ParenthesizedExpression",e[e.FunctionExpression=218]="FunctionExpression",e[e.ArrowFunction=219]="ArrowFunction",e[e.DeleteExpression=220]="DeleteExpression",e[e.TypeOfExpression=221]="TypeOfExpression",e[e.VoidExpression=222]="VoidExpression",e[e.AwaitExpression=223]="AwaitExpression",e[e.PrefixUnaryExpression=224]="PrefixUnaryExpression",e[e.PostfixUnaryExpression=225]="PostfixUnaryExpression",e[e.BinaryExpression=226]="BinaryExpression",e[e.ConditionalExpression=227]="ConditionalExpression",e[e.TemplateExpression=228]="TemplateExpression",e[e.YieldExpression=229]="YieldExpression",e[e.SpreadElement=230]="SpreadElement",e[e.ClassExpression=231]="ClassExpression",e[e.OmittedExpression=232]="OmittedExpression",e[e.ExpressionWithTypeArguments=233]="ExpressionWithTypeArguments",e[e.AsExpression=234]="AsExpression",e[e.NonNullExpression=235]="NonNullExpression",e[e.MetaProperty=236]="MetaProperty",e[e.SyntheticExpression=237]="SyntheticExpression",e[e.SatisfiesExpression=238]="SatisfiesExpression",e[e.TemplateSpan=239]="TemplateSpan",e[e.SemicolonClassElement=240]="SemicolonClassElement",e[e.Block=241]="Block",e[e.EmptyStatement=242]="EmptyStatement",e[e.VariableStatement=243]="VariableStatement",e[e.ExpressionStatement=244]="ExpressionStatement",e[e.IfStatement=245]="IfStatement",e[e.DoStatement=246]="DoStatement",e[e.WhileStatement=247]="WhileStatement",e[e.ForStatement=248]="ForStatement",e[e.ForInStatement=249]="ForInStatement",e[e.ForOfStatement=250]="ForOfStatement",e[e.ContinueStatement=251]="ContinueStatement",e[e.BreakStatement=252]="BreakStatement",e[e.ReturnStatement=253]="ReturnStatement",e[e.WithStatement=254]="WithStatement",e[e.SwitchStatement=255]="SwitchStatement",e[e.LabeledStatement=256]="LabeledStatement",e[e.ThrowStatement=257]="ThrowStatement",e[e.TryStatement=258]="TryStatement",e[e.DebuggerStatement=259]="DebuggerStatement",e[e.VariableDeclaration=260]="VariableDeclaration",e[e.VariableDeclarationList=261]="VariableDeclarationList",e[e.FunctionDeclaration=262]="FunctionDeclaration",e[e.ClassDeclaration=263]="ClassDeclaration",e[e.InterfaceDeclaration=264]="InterfaceDeclaration",e[e.TypeAliasDeclaration=265]="TypeAliasDeclaration",e[e.EnumDeclaration=266]="EnumDeclaration",e[e.ModuleDeclaration=267]="ModuleDeclaration",e[e.ModuleBlock=268]="ModuleBlock",e[e.CaseBlock=269]="CaseBlock",e[e.NamespaceExportDeclaration=270]="NamespaceExportDeclaration",e[e.ImportEqualsDeclaration=271]="ImportEqualsDeclaration",e[e.ImportDeclaration=272]="ImportDeclaration",e[e.ImportClause=273]="ImportClause",e[e.NamespaceImport=274]="NamespaceImport",e[e.NamedImports=275]="NamedImports",e[e.ImportSpecifier=276]="ImportSpecifier",e[e.ExportAssignment=277]="ExportAssignment",e[e.ExportDeclaration=278]="ExportDeclaration",e[e.NamedExports=279]="NamedExports",e[e.NamespaceExport=280]="NamespaceExport",e[e.ExportSpecifier=281]="ExportSpecifier",e[e.MissingDeclaration=282]="MissingDeclaration",e[e.ExternalModuleReference=283]="ExternalModuleReference",e[e.JsxElement=284]="JsxElement",e[e.JsxSelfClosingElement=285]="JsxSelfClosingElement",e[e.JsxOpeningElement=286]="JsxOpeningElement",e[e.JsxClosingElement=287]="JsxClosingElement",e[e.JsxFragment=288]="JsxFragment",e[e.JsxOpeningFragment=289]="JsxOpeningFragment",e[e.JsxClosingFragment=290]="JsxClosingFragment",e[e.JsxAttribute=291]="JsxAttribute",e[e.JsxAttributes=292]="JsxAttributes",e[e.JsxSpreadAttribute=293]="JsxSpreadAttribute",e[e.JsxExpression=294]="JsxExpression",e[e.JsxNamespacedName=295]="JsxNamespacedName",e[e.CaseClause=296]="CaseClause",e[e.DefaultClause=297]="DefaultClause",e[e.HeritageClause=298]="HeritageClause",e[e.CatchClause=299]="CatchClause",e[e.ImportAttributes=300]="ImportAttributes",e[e.ImportAttribute=301]="ImportAttribute",e[e.AssertClause=300]="AssertClause",e[e.AssertEntry=301]="AssertEntry",e[e.ImportTypeAssertionContainer=302]="ImportTypeAssertionContainer",e[e.PropertyAssignment=303]="PropertyAssignment",e[e.ShorthandPropertyAssignment=304]="ShorthandPropertyAssignment",e[e.SpreadAssignment=305]="SpreadAssignment",e[e.EnumMember=306]="EnumMember",e[e.UnparsedPrologue=307]="UnparsedPrologue",e[e.UnparsedPrepend=308]="UnparsedPrepend",e[e.UnparsedText=309]="UnparsedText",e[e.UnparsedInternalText=310]="UnparsedInternalText",e[e.UnparsedSyntheticReference=311]="UnparsedSyntheticReference",e[e.SourceFile=312]="SourceFile",e[e.Bundle=313]="Bundle",e[e.UnparsedSource=314]="UnparsedSource",e[e.InputFiles=315]="InputFiles",e[e.JSDocTypeExpression=316]="JSDocTypeExpression",e[e.JSDocNameReference=317]="JSDocNameReference",e[e.JSDocMemberName=318]="JSDocMemberName",e[e.JSDocAllType=319]="JSDocAllType",e[e.JSDocUnknownType=320]="JSDocUnknownType",e[e.JSDocNullableType=321]="JSDocNullableType",e[e.JSDocNonNullableType=322]="JSDocNonNullableType",e[e.JSDocOptionalType=323]="JSDocOptionalType",e[e.JSDocFunctionType=324]="JSDocFunctionType",e[e.JSDocVariadicType=325]="JSDocVariadicType",e[e.JSDocNamepathType=326]="JSDocNamepathType",e[e.JSDoc=327]="JSDoc",e[e.JSDocComment=327]="JSDocComment",e[e.JSDocText=328]="JSDocText",e[e.JSDocTypeLiteral=329]="JSDocTypeLiteral",e[e.JSDocSignature=330]="JSDocSignature",e[e.JSDocLink=331]="JSDocLink",e[e.JSDocLinkCode=332]="JSDocLinkCode",e[e.JSDocLinkPlain=333]="JSDocLinkPlain",e[e.JSDocTag=334]="JSDocTag",e[e.JSDocAugmentsTag=335]="JSDocAugmentsTag",e[e.JSDocImplementsTag=336]="JSDocImplementsTag",e[e.JSDocAuthorTag=337]="JSDocAuthorTag",e[e.JSDocDeprecatedTag=338]="JSDocDeprecatedTag",e[e.JSDocClassTag=339]="JSDocClassTag",e[e.JSDocPublicTag=340]="JSDocPublicTag",e[e.JSDocPrivateTag=341]="JSDocPrivateTag",e[e.JSDocProtectedTag=342]="JSDocProtectedTag",e[e.JSDocReadonlyTag=343]="JSDocReadonlyTag",e[e.JSDocOverrideTag=344]="JSDocOverrideTag",e[e.JSDocCallbackTag=345]="JSDocCallbackTag",e[e.JSDocOverloadTag=346]="JSDocOverloadTag",e[e.JSDocEnumTag=347]="JSDocEnumTag",e[e.JSDocParameterTag=348]="JSDocParameterTag",e[e.JSDocReturnTag=349]="JSDocReturnTag",e[e.JSDocThisTag=350]="JSDocThisTag",e[e.JSDocTypeTag=351]="JSDocTypeTag",e[e.JSDocTemplateTag=352]="JSDocTemplateTag",e[e.JSDocTypedefTag=353]="JSDocTypedefTag",e[e.JSDocSeeTag=354]="JSDocSeeTag",e[e.JSDocPropertyTag=355]="JSDocPropertyTag",e[e.JSDocThrowsTag=356]="JSDocThrowsTag",e[e.JSDocSatisfiesTag=357]="JSDocSatisfiesTag",e[e.SyntaxList=358]="SyntaxList",e[e.NotEmittedStatement=359]="NotEmittedStatement",e[e.PartiallyEmittedExpression=360]="PartiallyEmittedExpression",e[e.CommaListExpression=361]="CommaListExpression",e[e.SyntheticReferenceExpression=362]="SyntheticReferenceExpression",e[e.Count=363]="Count",e[e.FirstAssignment=64]="FirstAssignment",e[e.LastAssignment=79]="LastAssignment",e[e.FirstCompoundAssignment=65]="FirstCompoundAssignment",e[e.LastCompoundAssignment=79]="LastCompoundAssignment",e[e.FirstReservedWord=83]="FirstReservedWord",e[e.LastReservedWord=118]="LastReservedWord",e[e.FirstKeyword=83]="FirstKeyword",e[e.LastKeyword=165]="LastKeyword",e[e.FirstFutureReservedWord=119]="FirstFutureReservedWord",e[e.LastFutureReservedWord=127]="LastFutureReservedWord",e[e.FirstTypeNode=182]="FirstTypeNode",e[e.LastTypeNode=205]="LastTypeNode",e[e.FirstPunctuation=19]="FirstPunctuation",e[e.LastPunctuation=79]="LastPunctuation",e[e.FirstToken=0]="FirstToken",e[e.LastToken=165]="LastToken",e[e.FirstTriviaToken=2]="FirstTriviaToken",e[e.LastTriviaToken=7]="LastTriviaToken",e[e.FirstLiteralToken=9]="FirstLiteralToken",e[e.LastLiteralToken=15]="LastLiteralToken",e[e.FirstTemplateToken=15]="FirstTemplateToken",e[e.LastTemplateToken=18]="LastTemplateToken",e[e.FirstBinaryOperator=30]="FirstBinaryOperator",e[e.LastBinaryOperator=79]="LastBinaryOperator",e[e.FirstStatement=243]="FirstStatement",e[e.LastStatement=259]="LastStatement",e[e.FirstNode=166]="FirstNode",e[e.FirstJSDocNode=316]="FirstJSDocNode",e[e.LastJSDocNode=357]="LastJSDocNode",e[e.FirstJSDocTagNode=334]="FirstJSDocTagNode",e[e.LastJSDocTagNode=357]="LastJSDocTagNode",e[e.FirstContextualKeyword=128]="FirstContextualKeyword",e[e.LastContextualKeyword=165]="LastContextualKeyword",e))(q6||{}),J6=(e=>(e[e.None=0]="None",e[e.Let=1]="Let",e[e.Const=2]="Const",e[e.Using=4]="Using",e[e.AwaitUsing=6]="AwaitUsing",e[e.NestedNamespace=8]="NestedNamespace",e[e.Synthesized=16]="Synthesized",e[e.Namespace=32]="Namespace",e[e.OptionalChain=64]="OptionalChain",e[e.ExportContext=128]="ExportContext",e[e.ContainsThis=256]="ContainsThis",e[e.HasImplicitReturn=512]="HasImplicitReturn",e[e.HasExplicitReturn=1024]="HasExplicitReturn",e[e.GlobalAugmentation=2048]="GlobalAugmentation",e[e.HasAsyncFunctions=4096]="HasAsyncFunctions",e[e.DisallowInContext=8192]="DisallowInContext",e[e.YieldContext=16384]="YieldContext",e[e.DecoratorContext=32768]="DecoratorContext",e[e.AwaitContext=65536]="AwaitContext",e[e.DisallowConditionalTypesContext=131072]="DisallowConditionalTypesContext",e[e.ThisNodeHasError=262144]="ThisNodeHasError",e[e.JavaScriptFile=524288]="JavaScriptFile",e[e.ThisNodeOrAnySubNodesHasError=1048576]="ThisNodeOrAnySubNodesHasError",e[e.HasAggregatedChildData=2097152]="HasAggregatedChildData",e[e.PossiblyContainsDynamicImport=4194304]="PossiblyContainsDynamicImport",e[e.PossiblyContainsImportMeta=8388608]="PossiblyContainsImportMeta",e[e.JSDoc=16777216]="JSDoc",e[e.Ambient=33554432]="Ambient",e[e.InWithStatement=67108864]="InWithStatement",e[e.JsonFile=134217728]="JsonFile",e[e.TypeCached=268435456]="TypeCached",e[e.Deprecated=536870912]="Deprecated",e[e.BlockScoped=7]="BlockScoped",e[e.Constant=6]="Constant",e[e.ReachabilityCheckFlags=1536]="ReachabilityCheckFlags",e[e.ReachabilityAndEmitFlags=5632]="ReachabilityAndEmitFlags",e[e.ContextFlags=101441536]="ContextFlags",e[e.TypeExcludesFlags=81920]="TypeExcludesFlags",e[e.PermanentlySetIncrementalFlags=12582912]="PermanentlySetIncrementalFlags",e[e.IdentifierHasExtendedUnicodeEscape=256]="IdentifierHasExtendedUnicodeEscape",e[e.IdentifierIsInJSDocNamespace=4096]="IdentifierIsInJSDocNamespace",e))(J6||{}),K6=(e=>(e[e.None=0]="None",e[e.Public=1]="Public",e[e.Private=2]="Private",e[e.Protected=4]="Protected",e[e.Readonly=8]="Readonly",e[e.Override=16]="Override",e[e.Export=32]="Export",e[e.Abstract=64]="Abstract",e[e.Ambient=128]="Ambient",e[e.Static=256]="Static",e[e.Accessor=512]="Accessor",e[e.Async=1024]="Async",e[e.Default=2048]="Default",e[e.Const=4096]="Const",e[e.In=8192]="In",e[e.Out=16384]="Out",e[e.Decorator=32768]="Decorator",e[e.Deprecated=65536]="Deprecated",e[e.JSDocPublic=8388608]="JSDocPublic",e[e.JSDocPrivate=16777216]="JSDocPrivate",e[e.JSDocProtected=33554432]="JSDocProtected",e[e.JSDocReadonly=67108864]="JSDocReadonly",e[e.JSDocOverride=134217728]="JSDocOverride",e[e.SyntacticOrJSDocModifiers=31]="SyntacticOrJSDocModifiers",e[e.SyntacticOnlyModifiers=65504]="SyntacticOnlyModifiers",e[e.SyntacticModifiers=65535]="SyntacticModifiers",e[e.JSDocCacheOnlyModifiers=260046848]="JSDocCacheOnlyModifiers",e[e.JSDocOnlyModifiers=65536]="JSDocOnlyModifiers",e[e.NonCacheOnlyModifiers=131071]="NonCacheOnlyModifiers",e[e.HasComputedJSDocModifiers=268435456]="HasComputedJSDocModifiers",e[e.HasComputedFlags=536870912]="HasComputedFlags",e[e.AccessibilityModifier=7]="AccessibilityModifier",e[e.ParameterPropertyModifier=31]="ParameterPropertyModifier",e[e.NonPublicAccessibilityModifier=6]="NonPublicAccessibilityModifier",e[e.TypeScriptModifier=28895]="TypeScriptModifier",e[e.ExportDefault=2080]="ExportDefault",e[e.All=131071]="All",e[e.Modifier=98303]="Modifier",e))(K6||{}),LG=(e=>(e[e.None=0]="None",e[e.IntrinsicNamedElement=1]="IntrinsicNamedElement",e[e.IntrinsicIndexedElement=2]="IntrinsicIndexedElement",e[e.IntrinsicElement=3]="IntrinsicElement",e))(LG||{}),X6=(e=>(e[e.None=0]="None",e[e.Succeeded=1]="Succeeded",e[e.Failed=2]="Failed",e[e.Reported=4]="Reported",e[e.ReportsUnmeasurable=8]="ReportsUnmeasurable",e[e.ReportsUnreliable=16]="ReportsUnreliable",e[e.ReportsMask=24]="ReportsMask",e))(X6||{}),Y6=(e=>(e[e.None=0]="None",e[e.Auto=1]="Auto",e[e.Loop=2]="Loop",e[e.Unique=3]="Unique",e[e.Node=4]="Node",e[e.KindMask=7]="KindMask",e[e.ReservedInNestedScopes=8]="ReservedInNestedScopes",e[e.Optimistic=16]="Optimistic",e[e.FileLevel=32]="FileLevel",e[e.AllowNameSubstitution=64]="AllowNameSubstitution",e))(Y6||{}),kG=(e=>(e[e.None=0]="None",e[e.PrecedingLineBreak=1]="PrecedingLineBreak",e[e.PrecedingJSDocComment=2]="PrecedingJSDocComment",e[e.Unterminated=4]="Unterminated",e[e.ExtendedUnicodeEscape=8]="ExtendedUnicodeEscape",e[e.Scientific=16]="Scientific",e[e.Octal=32]="Octal",e[e.HexSpecifier=64]="HexSpecifier",e[e.BinarySpecifier=128]="BinarySpecifier",e[e.OctalSpecifier=256]="OctalSpecifier",e[e.ContainsSeparator=512]="ContainsSeparator",e[e.UnicodeEscape=1024]="UnicodeEscape",e[e.ContainsInvalidEscape=2048]="ContainsInvalidEscape",e[e.HexEscape=4096]="HexEscape",e[e.ContainsLeadingZero=8192]="ContainsLeadingZero",e[e.ContainsInvalidSeparator=16384]="ContainsInvalidSeparator",e[e.BinaryOrOctalSpecifier=384]="BinaryOrOctalSpecifier",e[e.WithSpecifier=448]="WithSpecifier",e[e.StringLiteralFlags=7176]="StringLiteralFlags",e[e.NumericLiteralFlags=25584]="NumericLiteralFlags",e[e.TemplateLiteralLikeFlags=7176]="TemplateLiteralLikeFlags",e[e.IsInvalid=26656]="IsInvalid",e))(kG||{}),UM=(e=>(e[e.Unreachable=1]="Unreachable",e[e.Start=2]="Start",e[e.BranchLabel=4]="BranchLabel",e[e.LoopLabel=8]="LoopLabel",e[e.Assignment=16]="Assignment",e[e.TrueCondition=32]="TrueCondition",e[e.FalseCondition=64]="FalseCondition",e[e.SwitchClause=128]="SwitchClause",e[e.ArrayMutation=256]="ArrayMutation",e[e.Call=512]="Call",e[e.ReduceLabel=1024]="ReduceLabel",e[e.Referenced=2048]="Referenced",e[e.Shared=4096]="Shared",e[e.Label=12]="Label",e[e.Condition=96]="Condition",e))(UM||{}),wG=(e=>(e[e.ExpectError=0]="ExpectError",e[e.Ignore=1]="Ignore",e))(wG||{}),Hx=class{},$6=(e=>(e[e.RootFile=0]="RootFile",e[e.SourceFromProjectReference=1]="SourceFromProjectReference",e[e.OutputFromProjectReference=2]="OutputFromProjectReference",e[e.Import=3]="Import",e[e.ReferenceFile=4]="ReferenceFile",e[e.TypeReferenceDirective=5]="TypeReferenceDirective",e[e.LibFile=6]="LibFile",e[e.LibReferenceDirective=7]="LibReferenceDirective",e[e.AutomaticTypeDirectiveFile=8]="AutomaticTypeDirectiveFile",e))($6||{}),OG=(e=>(e[e.FilePreprocessingReferencedDiagnostic=0]="FilePreprocessingReferencedDiagnostic",e[e.FilePreprocessingFileExplainingDiagnostic=1]="FilePreprocessingFileExplainingDiagnostic",e[e.ResolutionDiagnostics=2]="ResolutionDiagnostics",e))(OG||{}),WG=(e=>(e[e.Js=0]="Js",e[e.Dts=1]="Dts",e))(WG||{}),Q6=(e=>(e[e.Not=0]="Not",e[e.SafeModules=1]="SafeModules",e[e.Completely=2]="Completely",e))(Q6||{}),FG=(e=>(e[e.Success=0]="Success",e[e.DiagnosticsPresent_OutputsSkipped=1]="DiagnosticsPresent_OutputsSkipped",e[e.DiagnosticsPresent_OutputsGenerated=2]="DiagnosticsPresent_OutputsGenerated",e[e.InvalidProject_OutputsSkipped=3]="InvalidProject_OutputsSkipped",e[e.ProjectReferenceCycle_OutputsSkipped=4]="ProjectReferenceCycle_OutputsSkipped",e))(FG||{}),zG=(e=>(e[e.Ok=0]="Ok",e[e.NeedsOverride=1]="NeedsOverride",e[e.HasInvalidOverride=2]="HasInvalidOverride",e))(zG||{}),BG=(e=>(e[e.None=0]="None",e[e.Literal=1]="Literal",e[e.Subtype=2]="Subtype",e))(BG||{}),GG=(e=>(e[e.None=0]="None",e[e.Signature=1]="Signature",e[e.NoConstraints=2]="NoConstraints",e[e.Completions=4]="Completions",e[e.SkipBindingPatterns=8]="SkipBindingPatterns",e))(GG||{}),VG=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.ForbidIndexedAccessSymbolReferences=16]="ForbidIndexedAccessSymbolReferences",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.UseOnlyExternalAliasing=128]="UseOnlyExternalAliasing",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.WriteTypeParametersInQualifiedName=512]="WriteTypeParametersInQualifiedName",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowThisInObjectLiteral=32768]="AllowThisInObjectLiteral",e[e.AllowQualifiedNameInPlaceOfIdentifier=65536]="AllowQualifiedNameInPlaceOfIdentifier",e[e.AllowAnonymousIdentifier=131072]="AllowAnonymousIdentifier",e[e.AllowEmptyUnionOrIntersection=262144]="AllowEmptyUnionOrIntersection",e[e.AllowEmptyTuple=524288]="AllowEmptyTuple",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AllowEmptyIndexInfoType=2097152]="AllowEmptyIndexInfoType",e[e.WriteComputedProps=1073741824]="WriteComputedProps",e[e.AllowNodeModulesRelativePaths=67108864]="AllowNodeModulesRelativePaths",e[e.DoNotIncludeSymbolChain=134217728]="DoNotIncludeSymbolChain",e[e.IgnoreErrors=70221824]="IgnoreErrors",e[e.InObjectTypeLiteral=4194304]="InObjectTypeLiteral",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.InInitialEntityName=16777216]="InInitialEntityName",e))(VG||{}),jG=(e=>(e[e.None=0]="None",e[e.NoTruncation=1]="NoTruncation",e[e.WriteArrayAsGenericType=2]="WriteArrayAsGenericType",e[e.GenerateNamesForShadowedTypeParams=4]="GenerateNamesForShadowedTypeParams",e[e.UseStructuralFallback=8]="UseStructuralFallback",e[e.WriteTypeArgumentsOfSignature=32]="WriteTypeArgumentsOfSignature",e[e.UseFullyQualifiedType=64]="UseFullyQualifiedType",e[e.SuppressAnyReturnType=256]="SuppressAnyReturnType",e[e.MultilineObjectLiterals=1024]="MultilineObjectLiterals",e[e.WriteClassExpressionAsTypeLiteral=2048]="WriteClassExpressionAsTypeLiteral",e[e.UseTypeOfFunction=4096]="UseTypeOfFunction",e[e.OmitParameterModifiers=8192]="OmitParameterModifiers",e[e.UseAliasDefinedOutsideCurrentScope=16384]="UseAliasDefinedOutsideCurrentScope",e[e.UseSingleQuotesForStringLiteralType=268435456]="UseSingleQuotesForStringLiteralType",e[e.NoTypeReduction=536870912]="NoTypeReduction",e[e.OmitThisParameter=33554432]="OmitThisParameter",e[e.AllowUniqueESSymbolType=1048576]="AllowUniqueESSymbolType",e[e.AddUndefined=131072]="AddUndefined",e[e.WriteArrowStyleSignature=262144]="WriteArrowStyleSignature",e[e.InArrayType=524288]="InArrayType",e[e.InElementType=2097152]="InElementType",e[e.InFirstTypeArgument=4194304]="InFirstTypeArgument",e[e.InTypeAlias=8388608]="InTypeAlias",e[e.NodeBuilderFlagsMask=848330095]="NodeBuilderFlagsMask",e))(jG||{}),UG=(e=>(e[e.None=0]="None",e[e.WriteTypeParametersOrArguments=1]="WriteTypeParametersOrArguments",e[e.UseOnlyExternalAliasing=2]="UseOnlyExternalAliasing",e[e.AllowAnyNodeKind=4]="AllowAnyNodeKind",e[e.UseAliasDefinedOutsideCurrentScope=8]="UseAliasDefinedOutsideCurrentScope",e[e.WriteComputedProps=16]="WriteComputedProps",e[e.DoNotIncludeSymbolChain=32]="DoNotIncludeSymbolChain",e))(UG||{}),HG=(e=>(e[e.Accessible=0]="Accessible",e[e.NotAccessible=1]="NotAccessible",e[e.CannotBeNamed=2]="CannotBeNamed",e))(HG||{}),qG=(e=>(e[e.UnionOrIntersection=0]="UnionOrIntersection",e[e.Spread=1]="Spread",e))(qG||{}),JG=(e=>(e[e.This=0]="This",e[e.Identifier=1]="Identifier",e[e.AssertsThis=2]="AssertsThis",e[e.AssertsIdentifier=3]="AssertsIdentifier",e))(JG||{}),KG=(e=>(e[e.Unknown=0]="Unknown",e[e.TypeWithConstructSignatureAndValue=1]="TypeWithConstructSignatureAndValue",e[e.VoidNullableOrNeverType=2]="VoidNullableOrNeverType",e[e.NumberLikeType=3]="NumberLikeType",e[e.BigIntLikeType=4]="BigIntLikeType",e[e.StringLikeType=5]="StringLikeType",e[e.BooleanType=6]="BooleanType",e[e.ArrayLikeType=7]="ArrayLikeType",e[e.ESSymbolType=8]="ESSymbolType",e[e.Promise=9]="Promise",e[e.TypeWithCallSignature=10]="TypeWithCallSignature",e[e.ObjectType=11]="ObjectType",e))(KG||{}),Z6=(e=>(e[e.None=0]="None",e[e.FunctionScopedVariable=1]="FunctionScopedVariable",e[e.BlockScopedVariable=2]="BlockScopedVariable",e[e.Property=4]="Property",e[e.EnumMember=8]="EnumMember",e[e.Function=16]="Function",e[e.Class=32]="Class",e[e.Interface=64]="Interface",e[e.ConstEnum=128]="ConstEnum",e[e.RegularEnum=256]="RegularEnum",e[e.ValueModule=512]="ValueModule",e[e.NamespaceModule=1024]="NamespaceModule",e[e.TypeLiteral=2048]="TypeLiteral",e[e.ObjectLiteral=4096]="ObjectLiteral",e[e.Method=8192]="Method",e[e.Constructor=16384]="Constructor",e[e.GetAccessor=32768]="GetAccessor",e[e.SetAccessor=65536]="SetAccessor",e[e.Signature=131072]="Signature",e[e.TypeParameter=262144]="TypeParameter",e[e.TypeAlias=524288]="TypeAlias",e[e.ExportValue=1048576]="ExportValue",e[e.Alias=2097152]="Alias",e[e.Prototype=4194304]="Prototype",e[e.ExportStar=8388608]="ExportStar",e[e.Optional=16777216]="Optional",e[e.Transient=33554432]="Transient",e[e.Assignment=67108864]="Assignment",e[e.ModuleExports=134217728]="ModuleExports",e[e.All=-1]="All",e[e.Enum=384]="Enum",e[e.Variable=3]="Variable",e[e.Value=111551]="Value",e[e.Type=788968]="Type",e[e.Namespace=1920]="Namespace",e[e.Module=1536]="Module",e[e.Accessor=98304]="Accessor",e[e.FunctionScopedVariableExcludes=111550]="FunctionScopedVariableExcludes",e[e.BlockScopedVariableExcludes=111551]="BlockScopedVariableExcludes",e[e.ParameterExcludes=111551]="ParameterExcludes",e[e.PropertyExcludes=0]="PropertyExcludes",e[e.EnumMemberExcludes=900095]="EnumMemberExcludes",e[e.FunctionExcludes=110991]="FunctionExcludes",e[e.ClassExcludes=899503]="ClassExcludes",e[e.InterfaceExcludes=788872]="InterfaceExcludes",e[e.RegularEnumExcludes=899327]="RegularEnumExcludes",e[e.ConstEnumExcludes=899967]="ConstEnumExcludes",e[e.ValueModuleExcludes=110735]="ValueModuleExcludes",e[e.NamespaceModuleExcludes=0]="NamespaceModuleExcludes",e[e.MethodExcludes=103359]="MethodExcludes",e[e.GetAccessorExcludes=46015]="GetAccessorExcludes",e[e.SetAccessorExcludes=78783]="SetAccessorExcludes",e[e.AccessorExcludes=13247]="AccessorExcludes",e[e.TypeParameterExcludes=526824]="TypeParameterExcludes",e[e.TypeAliasExcludes=788968]="TypeAliasExcludes",e[e.AliasExcludes=2097152]="AliasExcludes",e[e.ModuleMember=2623475]="ModuleMember",e[e.ExportHasLocal=944]="ExportHasLocal",e[e.BlockScoped=418]="BlockScoped",e[e.PropertyOrAccessor=98308]="PropertyOrAccessor",e[e.ClassMember=106500]="ClassMember",e[e.ExportSupportsDefaultModifier=112]="ExportSupportsDefaultModifier",e[e.ExportDoesNotSupportDefaultModifier=-113]="ExportDoesNotSupportDefaultModifier",e[e.Classifiable=2885600]="Classifiable",e[e.LateBindingContainer=6256]="LateBindingContainer",e))(Z6||{}),XG=(e=>(e[e.Numeric=0]="Numeric",e[e.Literal=1]="Literal",e))(XG||{}),YG=(e=>(e[e.None=0]="None",e[e.Instantiated=1]="Instantiated",e[e.SyntheticProperty=2]="SyntheticProperty",e[e.SyntheticMethod=4]="SyntheticMethod",e[e.Readonly=8]="Readonly",e[e.ReadPartial=16]="ReadPartial",e[e.WritePartial=32]="WritePartial",e[e.HasNonUniformType=64]="HasNonUniformType",e[e.HasLiteralType=128]="HasLiteralType",e[e.ContainsPublic=256]="ContainsPublic",e[e.ContainsProtected=512]="ContainsProtected",e[e.ContainsPrivate=1024]="ContainsPrivate",e[e.ContainsStatic=2048]="ContainsStatic",e[e.Late=4096]="Late",e[e.ReverseMapped=8192]="ReverseMapped",e[e.OptionalParameter=16384]="OptionalParameter",e[e.RestParameter=32768]="RestParameter",e[e.DeferredType=65536]="DeferredType",e[e.HasNeverType=131072]="HasNeverType",e[e.Mapped=262144]="Mapped",e[e.StripOptional=524288]="StripOptional",e[e.Unresolved=1048576]="Unresolved",e[e.Synthetic=6]="Synthetic",e[e.Discriminant=192]="Discriminant",e[e.Partial=48]="Partial",e))(YG||{}),$G=(e=>(e.Call="__call",e.Constructor="__constructor",e.New="__new",e.Index="__index",e.ExportStar="__export",e.Global="__global",e.Missing="__missing",e.Type="__type",e.Object="__object",e.JSXAttributes="__jsxAttributes",e.Class="__class",e.Function="__function",e.Computed="__computed",e.Resolving="__resolving__",e.ExportEquals="export=",e.Default="default",e.This="this",e.InstantiationExpression="__instantiationExpression",e.ImportAttributes="__importAttributes",e))($G||{}),QG=(e=>(e[e.None=0]="None",e[e.TypeChecked=1]="TypeChecked",e[e.LexicalThis=2]="LexicalThis",e[e.CaptureThis=4]="CaptureThis",e[e.CaptureNewTarget=8]="CaptureNewTarget",e[e.SuperInstance=16]="SuperInstance",e[e.SuperStatic=32]="SuperStatic",e[e.ContextChecked=64]="ContextChecked",e[e.MethodWithSuperPropertyAccessInAsync=128]="MethodWithSuperPropertyAccessInAsync",e[e.MethodWithSuperPropertyAssignmentInAsync=256]="MethodWithSuperPropertyAssignmentInAsync",e[e.CaptureArguments=512]="CaptureArguments",e[e.EnumValuesComputed=1024]="EnumValuesComputed",e[e.LexicalModuleMergesWithClass=2048]="LexicalModuleMergesWithClass",e[e.LoopWithCapturedBlockScopedBinding=4096]="LoopWithCapturedBlockScopedBinding",e[e.ContainsCapturedBlockScopeBinding=8192]="ContainsCapturedBlockScopeBinding",e[e.CapturedBlockScopedBinding=16384]="CapturedBlockScopedBinding",e[e.BlockScopedBindingInLoop=32768]="BlockScopedBindingInLoop",e[e.NeedsLoopOutParameter=65536]="NeedsLoopOutParameter",e[e.AssignmentsMarked=131072]="AssignmentsMarked",e[e.ContainsConstructorReference=262144]="ContainsConstructorReference",e[e.ConstructorReference=536870912]="ConstructorReference",e[e.ContainsClassWithPrivateIdentifiers=1048576]="ContainsClassWithPrivateIdentifiers",e[e.ContainsSuperPropertyInStaticInitializer=2097152]="ContainsSuperPropertyInStaticInitializer",e[e.InCheckIdentifier=4194304]="InCheckIdentifier",e))(QG||{}),e4=(e=>(e[e.Any=1]="Any",e[e.Unknown=2]="Unknown",e[e.String=4]="String",e[e.Number=8]="Number",e[e.Boolean=16]="Boolean",e[e.Enum=32]="Enum",e[e.BigInt=64]="BigInt",e[e.StringLiteral=128]="StringLiteral",e[e.NumberLiteral=256]="NumberLiteral",e[e.BooleanLiteral=512]="BooleanLiteral",e[e.EnumLiteral=1024]="EnumLiteral",e[e.BigIntLiteral=2048]="BigIntLiteral",e[e.ESSymbol=4096]="ESSymbol",e[e.UniqueESSymbol=8192]="UniqueESSymbol",e[e.Void=16384]="Void",e[e.Undefined=32768]="Undefined",e[e.Null=65536]="Null",e[e.Never=131072]="Never",e[e.TypeParameter=262144]="TypeParameter",e[e.Object=524288]="Object",e[e.Union=1048576]="Union",e[e.Intersection=2097152]="Intersection",e[e.Index=4194304]="Index",e[e.IndexedAccess=8388608]="IndexedAccess",e[e.Conditional=16777216]="Conditional",e[e.Substitution=33554432]="Substitution",e[e.NonPrimitive=67108864]="NonPrimitive",e[e.TemplateLiteral=134217728]="TemplateLiteral",e[e.StringMapping=268435456]="StringMapping",e[e.Reserved1=536870912]="Reserved1",e[e.AnyOrUnknown=3]="AnyOrUnknown",e[e.Nullable=98304]="Nullable",e[e.Literal=2944]="Literal",e[e.Unit=109472]="Unit",e[e.Freshable=2976]="Freshable",e[e.StringOrNumberLiteral=384]="StringOrNumberLiteral",e[e.StringOrNumberLiteralOrUnique=8576]="StringOrNumberLiteralOrUnique",e[e.DefinitelyFalsy=117632]="DefinitelyFalsy",e[e.PossiblyFalsy=117724]="PossiblyFalsy",e[e.Intrinsic=67359327]="Intrinsic",e[e.StringLike=402653316]="StringLike",e[e.NumberLike=296]="NumberLike",e[e.BigIntLike=2112]="BigIntLike",e[e.BooleanLike=528]="BooleanLike",e[e.EnumLike=1056]="EnumLike",e[e.ESSymbolLike=12288]="ESSymbolLike",e[e.VoidLike=49152]="VoidLike",e[e.Primitive=402784252]="Primitive",e[e.DefinitelyNonNullable=470302716]="DefinitelyNonNullable",e[e.DisjointDomains=469892092]="DisjointDomains",e[e.UnionOrIntersection=3145728]="UnionOrIntersection",e[e.StructuredType=3670016]="StructuredType",e[e.TypeVariable=8650752]="TypeVariable",e[e.InstantiableNonPrimitive=58982400]="InstantiableNonPrimitive",e[e.InstantiablePrimitive=406847488]="InstantiablePrimitive",e[e.Instantiable=465829888]="Instantiable",e[e.StructuredOrInstantiable=469499904]="StructuredOrInstantiable",e[e.ObjectFlagsType=3899393]="ObjectFlagsType",e[e.Simplifiable=25165824]="Simplifiable",e[e.Singleton=67358815]="Singleton",e[e.Narrowable=536624127]="Narrowable",e[e.IncludesMask=473694207]="IncludesMask",e[e.IncludesMissingType=262144]="IncludesMissingType",e[e.IncludesNonWideningType=4194304]="IncludesNonWideningType",e[e.IncludesWildcard=8388608]="IncludesWildcard",e[e.IncludesEmptyObject=16777216]="IncludesEmptyObject",e[e.IncludesInstantiable=33554432]="IncludesInstantiable",e[e.IncludesConstrainedTypeVariable=536870912]="IncludesConstrainedTypeVariable",e[e.NotPrimitiveUnion=36323331]="NotPrimitiveUnion",e))(e4||{}),t4=(e=>(e[e.None=0]="None",e[e.Class=1]="Class",e[e.Interface=2]="Interface",e[e.Reference=4]="Reference",e[e.Tuple=8]="Tuple",e[e.Anonymous=16]="Anonymous",e[e.Mapped=32]="Mapped",e[e.Instantiated=64]="Instantiated",e[e.ObjectLiteral=128]="ObjectLiteral",e[e.EvolvingArray=256]="EvolvingArray",e[e.ObjectLiteralPatternWithComputedProperties=512]="ObjectLiteralPatternWithComputedProperties",e[e.ReverseMapped=1024]="ReverseMapped",e[e.JsxAttributes=2048]="JsxAttributes",e[e.JSLiteral=4096]="JSLiteral",e[e.FreshLiteral=8192]="FreshLiteral",e[e.ArrayLiteral=16384]="ArrayLiteral",e[e.PrimitiveUnion=32768]="PrimitiveUnion",e[e.ContainsWideningType=65536]="ContainsWideningType",e[e.ContainsObjectOrArrayLiteral=131072]="ContainsObjectOrArrayLiteral",e[e.NonInferrableType=262144]="NonInferrableType",e[e.CouldContainTypeVariablesComputed=524288]="CouldContainTypeVariablesComputed",e[e.CouldContainTypeVariables=1048576]="CouldContainTypeVariables",e[e.ClassOrInterface=3]="ClassOrInterface",e[e.RequiresWidening=196608]="RequiresWidening",e[e.PropagatingFlags=458752]="PropagatingFlags",e[e.InstantiatedMapped=96]="InstantiatedMapped",e[e.ObjectTypeKindMask=1343]="ObjectTypeKindMask",e[e.ContainsSpread=2097152]="ContainsSpread",e[e.ObjectRestType=4194304]="ObjectRestType",e[e.InstantiationExpressionType=8388608]="InstantiationExpressionType",e[e.IsClassInstanceClone=16777216]="IsClassInstanceClone",e[e.IdenticalBaseTypeCalculated=33554432]="IdenticalBaseTypeCalculated",e[e.IdenticalBaseTypeExists=67108864]="IdenticalBaseTypeExists",e[e.IsGenericTypeComputed=2097152]="IsGenericTypeComputed",e[e.IsGenericObjectType=4194304]="IsGenericObjectType",e[e.IsGenericIndexType=8388608]="IsGenericIndexType",e[e.IsGenericType=12582912]="IsGenericType",e[e.ContainsIntersections=16777216]="ContainsIntersections",e[e.IsUnknownLikeUnionComputed=33554432]="IsUnknownLikeUnionComputed",e[e.IsUnknownLikeUnion=67108864]="IsUnknownLikeUnion",e[e.IsNeverIntersectionComputed=16777216]="IsNeverIntersectionComputed",e[e.IsNeverIntersection=33554432]="IsNeverIntersection",e[e.IsConstrainedTypeVariable=67108864]="IsConstrainedTypeVariable",e))(t4||{}),ZG=(e=>(e[e.Invariant=0]="Invariant",e[e.Covariant=1]="Covariant",e[e.Contravariant=2]="Contravariant",e[e.Bivariant=3]="Bivariant",e[e.Independent=4]="Independent",e[e.VarianceMask=7]="VarianceMask",e[e.Unmeasurable=8]="Unmeasurable",e[e.Unreliable=16]="Unreliable",e[e.AllowsStructuralFallback=24]="AllowsStructuralFallback",e))(ZG||{}),eV=(e=>(e[e.Required=1]="Required",e[e.Optional=2]="Optional",e[e.Rest=4]="Rest",e[e.Variadic=8]="Variadic",e[e.Fixed=3]="Fixed",e[e.Variable=12]="Variable",e[e.NonRequired=14]="NonRequired",e[e.NonRest=11]="NonRest",e))(eV||{}),tV=(e=>(e[e.None=0]="None",e[e.IncludeUndefined=1]="IncludeUndefined",e[e.NoIndexSignatures=2]="NoIndexSignatures",e[e.Writing=4]="Writing",e[e.CacheSymbol=8]="CacheSymbol",e[e.NoTupleBoundsCheck=16]="NoTupleBoundsCheck",e[e.ExpressionPosition=32]="ExpressionPosition",e[e.ReportDeprecated=64]="ReportDeprecated",e[e.SuppressNoImplicitAnyError=128]="SuppressNoImplicitAnyError",e[e.Contextual=256]="Contextual",e[e.Persistent=1]="Persistent",e))(tV||{}),nV=(e=>(e[e.None=0]="None",e[e.StringsOnly=1]="StringsOnly",e[e.NoIndexSignatures=2]="NoIndexSignatures",e[e.NoReducibleCheck=4]="NoReducibleCheck",e))(nV||{}),rV=(e=>(e[e.Component=0]="Component",e[e.Function=1]="Function",e[e.Mixed=2]="Mixed",e))(rV||{}),iV=(e=>(e[e.Call=0]="Call",e[e.Construct=1]="Construct",e))(iV||{}),n4=(e=>(e[e.None=0]="None",e[e.HasRestParameter=1]="HasRestParameter",e[e.HasLiteralTypes=2]="HasLiteralTypes",e[e.Abstract=4]="Abstract",e[e.IsInnerCallChain=8]="IsInnerCallChain",e[e.IsOuterCallChain=16]="IsOuterCallChain",e[e.IsUntypedSignatureInJSFile=32]="IsUntypedSignatureInJSFile",e[e.IsNonInferrable=64]="IsNonInferrable",e[e.IsSignatureCandidateForOverloadFailure=128]="IsSignatureCandidateForOverloadFailure",e[e.PropagatingFlags=167]="PropagatingFlags",e[e.CallChainFlags=24]="CallChainFlags",e))(n4||{}),oV=(e=>(e[e.String=0]="String",e[e.Number=1]="Number",e))(oV||{}),aV=(e=>(e[e.Simple=0]="Simple",e[e.Array=1]="Array",e[e.Deferred=2]="Deferred",e[e.Function=3]="Function",e[e.Composite=4]="Composite",e[e.Merged=5]="Merged",e))(aV||{}),sV=(e=>(e[e.None=0]="None",e[e.NakedTypeVariable=1]="NakedTypeVariable",e[e.SpeculativeTuple=2]="SpeculativeTuple",e[e.SubstituteSource=4]="SubstituteSource",e[e.HomomorphicMappedType=8]="HomomorphicMappedType",e[e.PartialHomomorphicMappedType=16]="PartialHomomorphicMappedType",e[e.MappedTypeConstraint=32]="MappedTypeConstraint",e[e.ContravariantConditional=64]="ContravariantConditional",e[e.ReturnType=128]="ReturnType",e[e.LiteralKeyof=256]="LiteralKeyof",e[e.NoConstraints=512]="NoConstraints",e[e.AlwaysStrict=1024]="AlwaysStrict",e[e.MaxValue=2048]="MaxValue",e[e.PriorityImpliesCombination=416]="PriorityImpliesCombination",e[e.Circularity=-1]="Circularity",e))(sV||{}),lV=(e=>(e[e.None=0]="None",e[e.NoDefault=1]="NoDefault",e[e.AnyDefault=2]="AnyDefault",e[e.SkippedGenericFunction=4]="SkippedGenericFunction",e))(lV||{}),cV=(e=>(e[e.False=0]="False",e[e.Unknown=1]="Unknown",e[e.Maybe=3]="Maybe",e[e.True=-1]="True",e))(cV||{}),uV=(e=>(e[e.None=0]="None",e[e.ExportsProperty=1]="ExportsProperty",e[e.ModuleExports=2]="ModuleExports",e[e.PrototypeProperty=3]="PrototypeProperty",e[e.ThisProperty=4]="ThisProperty",e[e.Property=5]="Property",e[e.Prototype=6]="Prototype",e[e.ObjectDefinePropertyValue=7]="ObjectDefinePropertyValue",e[e.ObjectDefinePropertyExports=8]="ObjectDefinePropertyExports",e[e.ObjectDefinePrototypeProperty=9]="ObjectDefinePrototypeProperty",e))(uV||{}),HM=(e=>(e[e.Warning=0]="Warning",e[e.Error=1]="Error",e[e.Suggestion=2]="Suggestion",e[e.Message=3]="Message",e))(HM||{}),qx=(e=>(e[e.Classic=1]="Classic",e[e.NodeJs=2]="NodeJs",e[e.Node10=2]="Node10",e[e.Node16=3]="Node16",e[e.NodeNext=99]="NodeNext",e[e.Bundler=100]="Bundler",e))(qx||{}),dV=(e=>(e[e.Legacy=1]="Legacy",e[e.Auto=2]="Auto",e[e.Force=3]="Force",e))(dV||{}),pV=(e=>(e[e.FixedPollingInterval=0]="FixedPollingInterval",e[e.PriorityPollingInterval=1]="PriorityPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e[e.UseFsEvents=4]="UseFsEvents",e[e.UseFsEventsOnParentDirectory=5]="UseFsEventsOnParentDirectory",e))(pV||{}),fV=(e=>(e[e.UseFsEvents=0]="UseFsEvents",e[e.FixedPollingInterval=1]="FixedPollingInterval",e[e.DynamicPriorityPolling=2]="DynamicPriorityPolling",e[e.FixedChunkSizePolling=3]="FixedChunkSizePolling",e))(fV||{}),mV=(e=>(e[e.FixedInterval=0]="FixedInterval",e[e.PriorityInterval=1]="PriorityInterval",e[e.DynamicPriority=2]="DynamicPriority",e[e.FixedChunkSize=3]="FixedChunkSize",e))(mV||{}),eC=(e=>(e[e.None=0]="None",e[e.CommonJS=1]="CommonJS",e[e.AMD=2]="AMD",e[e.UMD=3]="UMD",e[e.System=4]="System",e[e.ES2015=5]="ES2015",e[e.ES2020=6]="ES2020",e[e.ES2022=7]="ES2022",e[e.ESNext=99]="ESNext",e[e.Node16=100]="Node16",e[e.NodeNext=199]="NodeNext",e[e.Preserve=200]="Preserve",e))(eC||{}),_V=(e=>(e[e.None=0]="None",e[e.Preserve=1]="Preserve",e[e.React=2]="React",e[e.ReactNative=3]="ReactNative",e[e.ReactJSX=4]="ReactJSX",e[e.ReactJSXDev=5]="ReactJSXDev",e))(_V||{}),hV=(e=>(e[e.Remove=0]="Remove",e[e.Preserve=1]="Preserve",e[e.Error=2]="Error",e))(hV||{}),gV=(e=>(e[e.CarriageReturnLineFeed=0]="CarriageReturnLineFeed",e[e.LineFeed=1]="LineFeed",e))(gV||{}),r4=(e=>(e[e.Unknown=0]="Unknown",e[e.JS=1]="JS",e[e.JSX=2]="JSX",e[e.TS=3]="TS",e[e.TSX=4]="TSX",e[e.External=5]="External",e[e.JSON=6]="JSON",e[e.Deferred=7]="Deferred",e))(r4||{}),vV=(e=>(e[e.ES3=0]="ES3",e[e.ES5=1]="ES5",e[e.ES2015=2]="ES2015",e[e.ES2016=3]="ES2016",e[e.ES2017=4]="ES2017",e[e.ES2018=5]="ES2018",e[e.ES2019=6]="ES2019",e[e.ES2020=7]="ES2020",e[e.ES2021=8]="ES2021",e[e.ES2022=9]="ES2022",e[e.ESNext=99]="ESNext",e[e.JSON=100]="JSON",e[e.Latest=99]="Latest",e))(vV||{}),yV=(e=>(e[e.Standard=0]="Standard",e[e.JSX=1]="JSX",e))(yV||{}),bV=(e=>(e[e.None=0]="None",e[e.Recursive=1]="Recursive",e))(bV||{}),EV=(e=>(e[e.nullCharacter=0]="nullCharacter",e[e.maxAsciiCharacter=127]="maxAsciiCharacter",e[e.lineFeed=10]="lineFeed",e[e.carriageReturn=13]="carriageReturn",e[e.lineSeparator=8232]="lineSeparator",e[e.paragraphSeparator=8233]="paragraphSeparator",e[e.nextLine=133]="nextLine",e[e.space=32]="space",e[e.nonBreakingSpace=160]="nonBreakingSpace",e[e.enQuad=8192]="enQuad",e[e.emQuad=8193]="emQuad",e[e.enSpace=8194]="enSpace",e[e.emSpace=8195]="emSpace",e[e.threePerEmSpace=8196]="threePerEmSpace",e[e.fourPerEmSpace=8197]="fourPerEmSpace",e[e.sixPerEmSpace=8198]="sixPerEmSpace",e[e.figureSpace=8199]="figureSpace",e[e.punctuationSpace=8200]="punctuationSpace",e[e.thinSpace=8201]="thinSpace",e[e.hairSpace=8202]="hairSpace",e[e.zeroWidthSpace=8203]="zeroWidthSpace",e[e.narrowNoBreakSpace=8239]="narrowNoBreakSpace",e[e.ideographicSpace=12288]="ideographicSpace",e[e.mathematicalSpace=8287]="mathematicalSpace",e[e.ogham=5760]="ogham",e[e._=95]="_",e[e.$=36]="$",e[e._0=48]="_0",e[e._1=49]="_1",e[e._2=50]="_2",e[e._3=51]="_3",e[e._4=52]="_4",e[e._5=53]="_5",e[e._6=54]="_6",e[e._7=55]="_7",e[e._8=56]="_8",e[e._9=57]="_9",e[e.a=97]="a",e[e.b=98]="b",e[e.c=99]="c",e[e.d=100]="d",e[e.e=101]="e",e[e.f=102]="f",e[e.g=103]="g",e[e.h=104]="h",e[e.i=105]="i",e[e.j=106]="j",e[e.k=107]="k",e[e.l=108]="l",e[e.m=109]="m",e[e.n=110]="n",e[e.o=111]="o",e[e.p=112]="p",e[e.q=113]="q",e[e.r=114]="r",e[e.s=115]="s",e[e.t=116]="t",e[e.u=117]="u",e[e.v=118]="v",e[e.w=119]="w",e[e.x=120]="x",e[e.y=121]="y",e[e.z=122]="z",e[e.A=65]="A",e[e.B=66]="B",e[e.C=67]="C",e[e.D=68]="D",e[e.E=69]="E",e[e.F=70]="F",e[e.G=71]="G",e[e.H=72]="H",e[e.I=73]="I",e[e.J=74]="J",e[e.K=75]="K",e[e.L=76]="L",e[e.M=77]="M",e[e.N=78]="N",e[e.O=79]="O",e[e.P=80]="P",e[e.Q=81]="Q",e[e.R=82]="R",e[e.S=83]="S",e[e.T=84]="T",e[e.U=85]="U",e[e.V=86]="V",e[e.W=87]="W",e[e.X=88]="X",e[e.Y=89]="Y",e[e.Z=90]="Z",e[e.ampersand=38]="ampersand",e[e.asterisk=42]="asterisk",e[e.at=64]="at",e[e.backslash=92]="backslash",e[e.backtick=96]="backtick",e[e.bar=124]="bar",e[e.caret=94]="caret",e[e.closeBrace=125]="closeBrace",e[e.closeBracket=93]="closeBracket",e[e.closeParen=41]="closeParen",e[e.colon=58]="colon",e[e.comma=44]="comma",e[e.dot=46]="dot",e[e.doubleQuote=34]="doubleQuote",e[e.equals=61]="equals",e[e.exclamation=33]="exclamation",e[e.greaterThan=62]="greaterThan",e[e.hash=35]="hash",e[e.lessThan=60]="lessThan",e[e.minus=45]="minus",e[e.openBrace=123]="openBrace",e[e.openBracket=91]="openBracket",e[e.openParen=40]="openParen",e[e.percent=37]="percent",e[e.plus=43]="plus",e[e.question=63]="question",e[e.semicolon=59]="semicolon",e[e.singleQuote=39]="singleQuote",e[e.slash=47]="slash",e[e.tilde=126]="tilde",e[e.backspace=8]="backspace",e[e.formFeed=12]="formFeed",e[e.byteOrderMark=65279]="byteOrderMark",e[e.tab=9]="tab",e[e.verticalTab=11]="verticalTab",e))(EV||{}),SV=(e=>(e.Ts=".ts",e.Tsx=".tsx",e.Dts=".d.ts",e.Js=".js",e.Jsx=".jsx",e.Json=".json",e.TsBuildInfo=".tsbuildinfo",e.Mjs=".mjs",e.Mts=".mts",e.Dmts=".d.mts",e.Cjs=".cjs",e.Cts=".cts",e.Dcts=".d.cts",e))(SV||{}),i4=(e=>(e[e.None=0]="None",e[e.ContainsTypeScript=1]="ContainsTypeScript",e[e.ContainsJsx=2]="ContainsJsx",e[e.ContainsESNext=4]="ContainsESNext",e[e.ContainsES2022=8]="ContainsES2022",e[e.ContainsES2021=16]="ContainsES2021",e[e.ContainsES2020=32]="ContainsES2020",e[e.ContainsES2019=64]="ContainsES2019",e[e.ContainsES2018=128]="ContainsES2018",e[e.ContainsES2017=256]="ContainsES2017",e[e.ContainsES2016=512]="ContainsES2016",e[e.ContainsES2015=1024]="ContainsES2015",e[e.ContainsGenerator=2048]="ContainsGenerator",e[e.ContainsDestructuringAssignment=4096]="ContainsDestructuringAssignment",e[e.ContainsTypeScriptClassSyntax=8192]="ContainsTypeScriptClassSyntax",e[e.ContainsLexicalThis=16384]="ContainsLexicalThis",e[e.ContainsRestOrSpread=32768]="ContainsRestOrSpread",e[e.ContainsObjectRestOrSpread=65536]="ContainsObjectRestOrSpread",e[e.ContainsComputedPropertyName=131072]="ContainsComputedPropertyName",e[e.ContainsBlockScopedBinding=262144]="ContainsBlockScopedBinding",e[e.ContainsBindingPattern=524288]="ContainsBindingPattern",e[e.ContainsYield=1048576]="ContainsYield",e[e.ContainsAwait=2097152]="ContainsAwait",e[e.ContainsHoistedDeclarationOrCompletion=4194304]="ContainsHoistedDeclarationOrCompletion",e[e.ContainsDynamicImport=8388608]="ContainsDynamicImport",e[e.ContainsClassFields=16777216]="ContainsClassFields",e[e.ContainsDecorators=33554432]="ContainsDecorators",e[e.ContainsPossibleTopLevelAwait=67108864]="ContainsPossibleTopLevelAwait",e[e.ContainsLexicalSuper=134217728]="ContainsLexicalSuper",e[e.ContainsUpdateExpressionForIdentifier=268435456]="ContainsUpdateExpressionForIdentifier",e[e.ContainsPrivateIdentifierInExpression=536870912]="ContainsPrivateIdentifierInExpression",e[e.HasComputedFlags=-2147483648]="HasComputedFlags",e[e.AssertTypeScript=1]="AssertTypeScript",e[e.AssertJsx=2]="AssertJsx",e[e.AssertESNext=4]="AssertESNext",e[e.AssertES2022=8]="AssertES2022",e[e.AssertES2021=16]="AssertES2021",e[e.AssertES2020=32]="AssertES2020",e[e.AssertES2019=64]="AssertES2019",e[e.AssertES2018=128]="AssertES2018",e[e.AssertES2017=256]="AssertES2017",e[e.AssertES2016=512]="AssertES2016",e[e.AssertES2015=1024]="AssertES2015",e[e.AssertGenerator=2048]="AssertGenerator",e[e.AssertDestructuringAssignment=4096]="AssertDestructuringAssignment",e[e.OuterExpressionExcludes=-2147483648]="OuterExpressionExcludes",e[e.PropertyAccessExcludes=-2147483648]="PropertyAccessExcludes",e[e.NodeExcludes=-2147483648]="NodeExcludes",e[e.ArrowFunctionExcludes=-2072174592]="ArrowFunctionExcludes",e[e.FunctionExcludes=-1937940480]="FunctionExcludes",e[e.ConstructorExcludes=-1937948672]="ConstructorExcludes",e[e.MethodOrAccessorExcludes=-2005057536]="MethodOrAccessorExcludes",e[e.PropertyExcludes=-2013249536]="PropertyExcludes",e[e.ClassExcludes=-2147344384]="ClassExcludes",e[e.ModuleExcludes=-1941676032]="ModuleExcludes",e[e.TypeExcludes=-2]="TypeExcludes",e[e.ObjectLiteralExcludes=-2147278848]="ObjectLiteralExcludes",e[e.ArrayLiteralOrCallOrNewExcludes=-2147450880]="ArrayLiteralOrCallOrNewExcludes",e[e.VariableDeclarationListExcludes=-2146893824]="VariableDeclarationListExcludes",e[e.ParameterExcludes=-2147483648]="ParameterExcludes",e[e.CatchClauseExcludes=-2147418112]="CatchClauseExcludes",e[e.BindingPatternExcludes=-2147450880]="BindingPatternExcludes",e[e.ContainsLexicalThisOrSuper=134234112]="ContainsLexicalThisOrSuper",e[e.PropertyNamePropagatingFlags=134234112]="PropertyNamePropagatingFlags",e))(i4||{}),o4=(e=>(e[e.TabStop=0]="TabStop",e[e.Placeholder=1]="Placeholder",e[e.Choice=2]="Choice",e[e.Variable=3]="Variable",e))(o4||{}),a4=(e=>(e[e.None=0]="None",e[e.SingleLine=1]="SingleLine",e[e.MultiLine=2]="MultiLine",e[e.AdviseOnEmitNode=4]="AdviseOnEmitNode",e[e.NoSubstitution=8]="NoSubstitution",e[e.CapturesThis=16]="CapturesThis",e[e.NoLeadingSourceMap=32]="NoLeadingSourceMap",e[e.NoTrailingSourceMap=64]="NoTrailingSourceMap",e[e.NoSourceMap=96]="NoSourceMap",e[e.NoNestedSourceMaps=128]="NoNestedSourceMaps",e[e.NoTokenLeadingSourceMaps=256]="NoTokenLeadingSourceMaps",e[e.NoTokenTrailingSourceMaps=512]="NoTokenTrailingSourceMaps",e[e.NoTokenSourceMaps=768]="NoTokenSourceMaps",e[e.NoLeadingComments=1024]="NoLeadingComments",e[e.NoTrailingComments=2048]="NoTrailingComments",e[e.NoComments=3072]="NoComments",e[e.NoNestedComments=4096]="NoNestedComments",e[e.HelperName=8192]="HelperName",e[e.ExportName=16384]="ExportName",e[e.LocalName=32768]="LocalName",e[e.InternalName=65536]="InternalName",e[e.Indented=131072]="Indented",e[e.NoIndentation=262144]="NoIndentation",e[e.AsyncFunctionBody=524288]="AsyncFunctionBody",e[e.ReuseTempVariableScope=1048576]="ReuseTempVariableScope",e[e.CustomPrologue=2097152]="CustomPrologue",e[e.NoHoisting=4194304]="NoHoisting",e[e.Iterator=8388608]="Iterator",e[e.NoAsciiEscaping=16777216]="NoAsciiEscaping",e))(a4||{}),TV=(e=>(e[e.None=0]="None",e[e.TypeScriptClassWrapper=1]="TypeScriptClassWrapper",e[e.NeverApplyImportHelper=2]="NeverApplyImportHelper",e[e.IgnoreSourceNewlines=4]="IgnoreSourceNewlines",e[e.Immutable=8]="Immutable",e[e.IndirectCall=16]="IndirectCall",e[e.TransformPrivateStaticElements=32]="TransformPrivateStaticElements",e))(TV||{}),AV=(e=>(e[e.Extends=1]="Extends",e[e.Assign=2]="Assign",e[e.Rest=4]="Rest",e[e.Decorate=8]="Decorate",e[e.ESDecorateAndRunInitializers=8]="ESDecorateAndRunInitializers",e[e.Metadata=16]="Metadata",e[e.Param=32]="Param",e[e.Awaiter=64]="Awaiter",e[e.Generator=128]="Generator",e[e.Values=256]="Values",e[e.Read=512]="Read",e[e.SpreadArray=1024]="SpreadArray",e[e.Await=2048]="Await",e[e.AsyncGenerator=4096]="AsyncGenerator",e[e.AsyncDelegator=8192]="AsyncDelegator",e[e.AsyncValues=16384]="AsyncValues",e[e.ExportStar=32768]="ExportStar",e[e.ImportStar=65536]="ImportStar",e[e.ImportDefault=131072]="ImportDefault",e[e.MakeTemplateObject=262144]="MakeTemplateObject",e[e.ClassPrivateFieldGet=524288]="ClassPrivateFieldGet",e[e.ClassPrivateFieldSet=1048576]="ClassPrivateFieldSet",e[e.ClassPrivateFieldIn=2097152]="ClassPrivateFieldIn",e[e.CreateBinding=4194304]="CreateBinding",e[e.SetFunctionName=8388608]="SetFunctionName",e[e.PropKey=16777216]="PropKey",e[e.AddDisposableResourceAndDisposeResources=33554432]="AddDisposableResourceAndDisposeResources",e[e.FirstEmitHelper=1]="FirstEmitHelper",e[e.LastEmitHelper=33554432]="LastEmitHelper",e[e.ForOfIncludes=256]="ForOfIncludes",e[e.ForAwaitOfIncludes=16384]="ForAwaitOfIncludes",e[e.AsyncGeneratorIncludes=6144]="AsyncGeneratorIncludes",e[e.AsyncDelegatorIncludes=26624]="AsyncDelegatorIncludes",e[e.SpreadIncludes=1536]="SpreadIncludes",e))(AV||{}),IV=(e=>(e[e.SourceFile=0]="SourceFile",e[e.Expression=1]="Expression",e[e.IdentifierName=2]="IdentifierName",e[e.MappedTypeParameter=3]="MappedTypeParameter",e[e.Unspecified=4]="Unspecified",e[e.EmbeddedStatement=5]="EmbeddedStatement",e[e.JsxAttributeValue=6]="JsxAttributeValue",e[e.ImportTypeNodeAttributes=7]="ImportTypeNodeAttributes",e))(IV||{}),xV=(e=>(e[e.Parentheses=1]="Parentheses",e[e.TypeAssertions=2]="TypeAssertions",e[e.NonNullAssertions=4]="NonNullAssertions",e[e.PartiallyEmittedExpressions=8]="PartiallyEmittedExpressions",e[e.Assertions=6]="Assertions",e[e.All=15]="All",e[e.ExcludeJSDocTypeAssertion=16]="ExcludeJSDocTypeAssertion",e))(xV||{}),RV=(e=>(e[e.None=0]="None",e[e.InParameters=1]="InParameters",e[e.VariablesHoistedInParameters=2]="VariablesHoistedInParameters",e))(RV||{}),DV=(e=>(e.Prologue="prologue",e.EmitHelpers="emitHelpers",e.NoDefaultLib="no-default-lib",e.Reference="reference",e.Type="type",e.TypeResolutionModeRequire="type-require",e.TypeResolutionModeImport="type-import",e.Lib="lib",e.Prepend="prepend",e.Text="text",e.Internal="internal",e))(DV||{}),NV=(e=>(e[e.None=0]="None",e[e.SingleLine=0]="SingleLine",e[e.MultiLine=1]="MultiLine",e[e.PreserveLines=2]="PreserveLines",e[e.LinesMask=3]="LinesMask",e[e.NotDelimited=0]="NotDelimited",e[e.BarDelimited=4]="BarDelimited",e[e.AmpersandDelimited=8]="AmpersandDelimited",e[e.CommaDelimited=16]="CommaDelimited",e[e.AsteriskDelimited=32]="AsteriskDelimited",e[e.DelimitersMask=60]="DelimitersMask",e[e.AllowTrailingComma=64]="AllowTrailingComma",e[e.Indented=128]="Indented",e[e.SpaceBetweenBraces=256]="SpaceBetweenBraces",e[e.SpaceBetweenSiblings=512]="SpaceBetweenSiblings",e[e.Braces=1024]="Braces",e[e.Parenthesis=2048]="Parenthesis",e[e.AngleBrackets=4096]="AngleBrackets",e[e.SquareBrackets=8192]="SquareBrackets",e[e.BracketsMask=15360]="BracketsMask",e[e.OptionalIfUndefined=16384]="OptionalIfUndefined",e[e.OptionalIfEmpty=32768]="OptionalIfEmpty",e[e.Optional=49152]="Optional",e[e.PreferNewLine=65536]="PreferNewLine",e[e.NoTrailingNewLine=131072]="NoTrailingNewLine",e[e.NoInterveningComments=262144]="NoInterveningComments",e[e.NoSpaceIfEmpty=524288]="NoSpaceIfEmpty",e[e.SingleElement=1048576]="SingleElement",e[e.SpaceAfterList=2097152]="SpaceAfterList",e[e.Modifiers=2359808]="Modifiers",e[e.HeritageClauses=512]="HeritageClauses",e[e.SingleLineTypeLiteralMembers=768]="SingleLineTypeLiteralMembers",e[e.MultiLineTypeLiteralMembers=32897]="MultiLineTypeLiteralMembers",e[e.SingleLineTupleTypeElements=528]="SingleLineTupleTypeElements",e[e.MultiLineTupleTypeElements=657]="MultiLineTupleTypeElements",e[e.UnionTypeConstituents=516]="UnionTypeConstituents",e[e.IntersectionTypeConstituents=520]="IntersectionTypeConstituents",e[e.ObjectBindingPatternElements=525136]="ObjectBindingPatternElements",e[e.ArrayBindingPatternElements=524880]="ArrayBindingPatternElements",e[e.ObjectLiteralExpressionProperties=526226]="ObjectLiteralExpressionProperties",e[e.ImportAttributes=526226]="ImportAttributes",e[e.ImportClauseEntries=526226]="ImportClauseEntries",e[e.ArrayLiteralExpressionElements=8914]="ArrayLiteralExpressionElements",e[e.CommaListElements=528]="CommaListElements",e[e.CallExpressionArguments=2576]="CallExpressionArguments",e[e.NewExpressionArguments=18960]="NewExpressionArguments",e[e.TemplateExpressionSpans=262144]="TemplateExpressionSpans",e[e.SingleLineBlockStatements=768]="SingleLineBlockStatements",e[e.MultiLineBlockStatements=129]="MultiLineBlockStatements",e[e.VariableDeclarationList=528]="VariableDeclarationList",e[e.SingleLineFunctionBodyStatements=768]="SingleLineFunctionBodyStatements",e[e.MultiLineFunctionBodyStatements=1]="MultiLineFunctionBodyStatements",e[e.ClassHeritageClauses=0]="ClassHeritageClauses",e[e.ClassMembers=129]="ClassMembers",e[e.InterfaceMembers=129]="InterfaceMembers",e[e.EnumMembers=145]="EnumMembers",e[e.CaseBlockClauses=129]="CaseBlockClauses",e[e.NamedImportsOrExportsElements=525136]="NamedImportsOrExportsElements",e[e.JsxElementOrFragmentChildren=262144]="JsxElementOrFragmentChildren",e[e.JsxElementAttributes=262656]="JsxElementAttributes",e[e.CaseOrDefaultClauseStatements=163969]="CaseOrDefaultClauseStatements",e[e.HeritageClauseTypes=528]="HeritageClauseTypes",e[e.SourceFileStatements=131073]="SourceFileStatements",e[e.Decorators=2146305]="Decorators",e[e.TypeArguments=53776]="TypeArguments",e[e.TypeParameters=53776]="TypeParameters",e[e.Parameters=2576]="Parameters",e[e.IndexSignatureParameters=8848]="IndexSignatureParameters",e[e.JSDocComment=33]="JSDocComment",e))(NV||{}),CV=(e=>(e[e.None=0]="None",e[e.TripleSlashXML=1]="TripleSlashXML",e[e.SingleLine=2]="SingleLine",e[e.MultiLine=4]="MultiLine",e[e.All=7]="All",e[e.Default=7]="Default",e))(CV||{}),qM={reference:{args:[{name:"types",optional:!0,captureSpan:!0},{name:"lib",optional:!0,captureSpan:!0},{name:"path",optional:!0,captureSpan:!0},{name:"no-default-lib",optional:!0},{name:"resolution-mode",optional:!0}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:!0}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4},jsxfrag:{args:[{name:"factory"}],kind:4},jsximportsource:{args:[{name:"factory"}],kind:4},jsxruntime:{args:[{name:"factory"}],kind:4}},PV=(e=>(e[e.ParseAll=0]="ParseAll",e[e.ParseNone=1]="ParseNone",e[e.ParseForTypeErrors=2]="ParseForTypeErrors",e[e.ParseForTypeInfo=3]="ParseForTypeInfo",e))(PV||{})}});function tC(e){let t=5381;for(let r=0;r<e.length;r++)t=(t<<5)+t+e.charCodeAt(r);return t.toString()}function G1e(){Error.stackTraceLimit<100&&(Error.stackTraceLimit=100)}function IA(e,t){return e.getModifiedTime(t)||Op}function Qne(e){return{250:e.Low,500:e.Medium,2e3:e.High}}function sBe(e){if(!e.getEnvironmentVariable)return;const t=o("TSC_WATCH_POLLINGINTERVAL",s4);c4=s("TSC_WATCH_POLLINGCHUNKSIZE",l4)||c4,KM=s("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",l4)||KM;function r(l,u){return e.getEnvironmentVariable(`${l}_${u.toUpperCase()}`)}function i(l){let u;return p("Low"),p("Medium"),p("High"),u;function p(h){const m=r(l,h);m&&((u||(u={}))[h]=Number(m))}}function o(l,u){const p=i(l);if(p)return h("Low"),h("Medium"),h("High"),!0;return!1;function h(m){u[m]=p[m]||u[m]}}function s(l,u){const p=i(l);return(t||p)&&Qne(p?{...u,...p}:u)}}function V1e(e,t,r,i,o){let s=r;for(let u=t.length;i&&u;l(),u--){const p=t[r];if(p){if(p.isClosed){t[r]=void 0;continue}}else continue;i--;const h=dBe(p,IA(e,p.fileName));if(p.isClosed){t[r]=void 0;continue}o==null||o(p,r,h),t[r]&&(s<r&&(t[s]=p,t[r]=void 0),s++)}return r;function l(){r++,r===t.length&&(s<r&&(t.length=s),r=0,s=0)}}function lBe(e){const t=[],r=[],i=u(250),o=u(500),s=u(2e3);return l;function l(C,O,U){const K={fileName:C,callback:O,unchangedPolls:0,mtime:IA(e,C)};return t.push(K),A(K,U),{close:()=>{K.isClosed=!0,TA(t,K)}}}function u(C){const O=[];return O.pollingInterval=C,O.pollIndex=0,O.pollScheduled=!1,O}function p(C,O){O.pollIndex=m(O,O.pollingInterval,O.pollIndex,c4[O.pollingInterval]),O.length?M(O.pollingInterval):(N.assert(O.pollIndex===0),O.pollScheduled=!1)}function h(C,O){m(r,250,0,r.length),p(C,O),!O.pollScheduled&&r.length&&M(250)}function m(C,O,U,K){return V1e(e,C,U,K,Z);function Z(V,se,G){G?(V.unchangedPolls=0,C!==r&&(C[se]=void 0,I(V))):V.unchangedPolls!==KM[O]?V.unchangedPolls++:C===r?(V.unchangedPolls=1,C[se]=void 0,A(V,250)):O!==2e3&&(V.unchangedPolls++,C[se]=void 0,A(V,O===250?500:2e3))}}function b(C){switch(C){case 250:return i;case 500:return o;case 2e3:return s}}function A(C,O){b(O).push(C),R(O)}function I(C){r.push(C),R(250)}function R(C){b(C).pollScheduled||M(C)}function M(C){b(C).pollScheduled=e.setTimeout(C===250?h:p,C,C===250?"pollLowPollingIntervalQueue":"pollPollingIntervalQueue",b(C))}}function cBe(e,t,r,i){const o=Zp(),s=i?new Map:void 0,l=new Map,u=Mu(t);return p;function p(m,b,A,I){const R=u(m);o.add(R,b).length===1&&s&&s.set(R,r(m)||Op);const M=ai(R)||".",C=l.get(M)||h(ai(m)||".",M,I);return C.referenceCount++,{close:()=>{C.referenceCount===1?(C.close(),l.delete(M)):C.referenceCount--,o.remove(R,b)}}}function h(m,b,A){const I=e(m,1,(R,M)=>{if(!Po(M))return;const C=go(M,m),O=u(C),U=C&&o.get(O);if(U){let K,Z=1;if(s){const V=s.get(O);if(R==="change"&&(K=r(C)||Op,K.getTime()===V.getTime()))return;K||(K=r(C)||Op),s.set(O,K),V===Op?Z=0:K===Op&&(Z=2)}for(const V of U)V(C,Z,K)}},!1,500,A);return I.referenceCount=0,l.set(b,I),I}}function uBe(e){const t=[];let r=0,i;return o;function o(u,p){const h={fileName:u,callback:p,mtime:IA(e,u)};return t.push(h),l(),{close:()=>{h.isClosed=!0,TA(t,h)}}}function s(){i=void 0,r=V1e(e,t,r,c4[250]),l()}function l(){!t.length||i||(i=e.setTimeout(s,2e3,"pollQueue"))}}function j1e(e,t,r,i,o){const l=Mu(t)(r),u=e.get(l);return u?u.callbacks.push(i):e.set(l,{watcher:o((p,h,m)=>{var b;return(b=e.get(l))==null?void 0:b.callbacks.slice().forEach(A=>A(p,h,m))}),callbacks:[i]}),{close:()=>{const p=e.get(l);p&&(!Gx(p.callbacks,i)||p.callbacks.length||(e.delete(l),Mf(p)))}}}function dBe(e,t){const r=e.mtime.getTime(),i=t.getTime();return r!==i?(e.mtime=t,e.callback(e.fileName,MV(r,i),t),!0):!1}function MV(e,t){return e===0?0:t===0?2:1}function JM(e){return nre(e)}function Zne(e){nre=e}function pBe({watchDirectory:e,useCaseSensitiveFileNames:t,getCurrentDirectory:r,getAccessibleSortedChildDirectories:i,fileSystemEntryExists:o,realpath:s,setTimeout:l,clearTimeout:u}){const p=new Map,h=Zp(),m=new Map;let b;const A=zx(!t),I=Mu(t);return(G,ne,he,ye)=>he?R(G,ye,ne):e(G,ne,he,ye);function R(G,ne,he){const ye=I(G);let $=p.get(ye);$?$.refCount++:($={watcher:e(G,oe=>{V(oe,ne)||(ne!=null&&ne.synchronousWatchDirectory?(M(ye,oe),Z(G,ye,ne)):C(G,ye,oe,ne))},!1,ne),refCount:1,childWatches:et},p.set(ye,$),Z(G,ye,ne));const Y=he&&{dirName:G,callback:he};return Y&&h.add(ye,Y),{dirName:G,close:()=>{const oe=N.checkDefined(p.get(ye));Y&&h.remove(ye,Y),oe.refCount--,!oe.refCount&&(p.delete(ye),Mf(oe),oe.childWatches.forEach(Qm))}}}function M(G,ne,he){let ye,$;Po(ne)?ye=ne:$=ne,h.forEach((Y,oe)=>{if(!($&&$.get(oe)===!0)&&(oe===G||uo(G,oe)&&G[oe.length]===al))if($)if(he){const fe=$.get(oe);fe?fe.push(...he):$.set(oe,he.slice())}else $.set(oe,!0);else Y.forEach(({callback:fe})=>fe(ye))})}function C(G,ne,he,ye){const $=p.get(ne);if($&&o(G,1)){O(G,ne,he,ye);return}M(ne,he),K($)}function O(G,ne,he,ye){const $=m.get(ne);$?$.fileNames.push(he):m.set(ne,{dirName:G,options:ye,fileNames:[he]}),b&&(u(b),b=void 0),b=l(U,1e3,"timerToUpdateChildWatches")}function U(){b=void 0,JM(`sysLog:: onTimerToUpdateChildWatches:: ${m.size}`);const G=Ys(),ne=new Map;for(;!b&&m.size;){const ye=m.entries().next();N.assert(!ye.done);const{value:[$,{dirName:Y,options:oe,fileNames:fe}]}=ye;m.delete($);const Ne=Z(Y,$,oe);M($,ne,Ne?void 0:fe)}JM(`sysLog:: invokingWatchers:: Elapsed:: ${Ys()-G}ms:: ${m.size}`),h.forEach((ye,$)=>{const Y=ne.get($);Y&&ye.forEach(({callback:oe,dirName:fe})=>{To(Y)?Y.forEach(oe):oe(fe)})});const he=Ys()-G;JM(`sysLog:: Elapsed:: ${he}ms:: onTimerToUpdateChildWatches:: ${m.size} ${b}`)}function K(G){if(!G)return;const ne=G.childWatches;G.childWatches=et;for(const he of ne)he.close(),K(p.get(I(he.dirName)))}function Z(G,ne,he){const ye=p.get(ne);if(!ye)return!1;let $;const Y=V6(o(G,1)?Hi(i(G),Ne=>{const pe=go(Ne,G);return!V(pe,he)&&A(pe,ga(s(pe)))===0?pe:void 0}):et,ye.childWatches,(Ne,pe)=>A(Ne,pe.dirName),oe,Qm,fe);return ye.childWatches=$||et,Y;function oe(Ne){const pe=R(Ne,he);fe(pe)}function fe(Ne){($||($=[])).push(Ne)}}function V(G,ne){return bt(XM,he=>se(G,he))||U1e(G,ne,t,r)}function se(G,ne){return G.includes(ne)?!0:t?!1:I(G).includes(ne)}}function fBe(e){return(t,r,i)=>e(r===1?"change":"rename","",i)}function mBe(e,t,r){return(i,o,s)=>{i==="rename"?(s||(s=r(e)||Op),t(e,s!==Op?0:2,s)):t(e,1,s)}}function U1e(e,t,r,i){return((t==null?void 0:t.excludeDirectories)||(t==null?void 0:t.excludeFiles))&&(RF(e,t==null?void 0:t.excludeFiles,r,i())||RF(e,t==null?void 0:t.excludeDirectories,r,i()))}function H1e(e,t,r,i,o){return(s,l)=>{if(s==="rename"){const u=l?ga(Qr(e,l)):e;(!l||!U1e(u,r,i,o))&&t(u)}}}function ere({pollingWatchFileWorker:e,getModifiedTime:t,setTimeout:r,clearTimeout:i,fsWatchWorker:o,fileSystemEntryExists:s,useCaseSensitiveFileNames:l,getCurrentDirectory:u,fsSupportsRecursiveFsWatch:p,getAccessibleSortedChildDirectories:h,realpath:m,tscWatchFile:b,useNonPollingWatchers:A,tscWatchDirectory:I,inodeWatching:R,fsWatchWithTimestamp:M,sysLog:C}){const O=new Map,U=new Map,K=new Map;let Z,V,se,G,ne=!1;return{watchFile:he,watchDirectory:fe};function he(Ee,De,Pe,We){We=Y(We,A);const At=N.checkDefined(We.watchFile);switch(At){case 0:return ie(Ee,De,250,void 0);case 1:return ie(Ee,De,Pe,void 0);case 2:return ye()(Ee,De,Pe,void 0);case 3:return $()(Ee,De,void 0,void 0);case 4:return ve(Ee,0,mBe(Ee,De,t),!1,Pe,jw(We));case 5:return se||(se=cBe(ve,l,t,M)),se(Ee,De,Pe,jw(We));default:N.assertNever(At)}}function ye(){return Z||(Z=lBe({getModifiedTime:t,setTimeout:r}))}function $(){return V||(V=uBe({getModifiedTime:t,setTimeout:r}))}function Y(Ee,De){if(Ee&&Ee.watchFile!==void 0)return Ee;switch(b){case"PriorityPollingInterval":return{watchFile:1};case"DynamicPriorityPolling":return{watchFile:2};case"UseFsEvents":return oe(4,1,Ee);case"UseFsEventsWithFallbackDynamicPolling":return oe(4,2,Ee);case"UseFsEventsOnParentDirectory":De=!0;default:return De?oe(5,1,Ee):{watchFile:4}}}function oe(Ee,De,Pe){const We=Pe==null?void 0:Pe.fallbackPolling;return{watchFile:Ee,fallbackPolling:We===void 0?De:We}}function fe(Ee,De,Pe,We){return p?ve(Ee,1,H1e(Ee,De,We,l,u),Pe,500,jw(We)):(G||(G=pBe({useCaseSensitiveFileNames:l,getCurrentDirectory:u,fileSystemEntryExists:s,getAccessibleSortedChildDirectories:h,watchDirectory:Ne,realpath:m,setTimeout:r,clearTimeout:i})),G(Ee,De,Pe,We))}function Ne(Ee,De,Pe,We){N.assert(!Pe);const At=pe(We),Se=N.checkDefined(At.watchDirectory);switch(Se){case 1:return ie(Ee,()=>De(Ee),500,void 0);case 2:return ye()(Ee,()=>De(Ee),500,void 0);case 3:return $()(Ee,()=>De(Ee),void 0,void 0);case 0:return ve(Ee,1,H1e(Ee,De,We,l,u),Pe,500,jw(At));default:N.assertNever(Se)}}function pe(Ee){if(Ee&&Ee.watchDirectory!==void 0)return Ee;switch(I){case"RecursiveDirectoryUsingFsWatchFile":return{watchDirectory:1};case"RecursiveDirectoryUsingDynamicPriorityPolling":return{watchDirectory:2};default:const De=Ee==null?void 0:Ee.fallbackPolling;return{watchDirectory:0,fallbackPolling:De!==void 0?De:void 0}}}function ie(Ee,De,Pe,We){return j1e(O,l,Ee,De,At=>e(Ee,At,Pe,We))}function ve(Ee,De,Pe,We,At,Se){return j1e(We?K:U,l,Ee,Pe,je=>Le(Ee,De,je,We,At,Se))}function Le(Ee,De,Pe,We,At,Se){let je,at;R&&(je=Ee.substring(Ee.lastIndexOf(al)),at=je.slice(al.length));let Gt=s(Ee,De)?$e():rn();return{close:()=>{Gt&&(Gt.close(),Gt=void 0)}};function vt(Pn){Gt&&(C(`sysLog:: ${Ee}:: Changing watcher to ${Pn===$e?"Present":"Missing"}FileSystemEntryWatcher`),Gt.close(),Gt=Pn())}function $e(){if(ne)return C(`sysLog:: ${Ee}:: Defaulting to watchFile`),tn();try{const Pn=(De===1||!M?o:He)(Ee,We,R?It:Pe);return Pn.on("error",()=>{Pe("rename",""),vt(rn)}),Pn}catch(Pn){return ne||(ne=Pn.code==="ENOSPC"),C(`sysLog:: ${Ee}:: Changing to watchFile`),tn()}}function It(Pn,Xn){let hn;if(Xn&&Al(Xn,"~")&&(hn=Xn,Xn=Xn.slice(0,Xn.length-1)),Pn==="rename"&&(!Xn||Xn===at||Al(Xn,je))){const Qt=t(Ee)||Op;hn&&Pe(Pn,hn,Qt),Pe(Pn,Xn,Qt),R?vt(Qt===Op?rn:$e):Qt===Op&&vt(rn)}else hn&&Pe(Pn,hn),Pe(Pn,Xn)}function tn(){return he(Ee,fBe(Pe),At,Se)}function rn(){return he(Ee,(Pn,Xn,hn)=>{Xn===0&&(hn||(hn=t(Ee)||Op),hn!==Op&&(Pe("rename","",hn),vt($e)))},At,Se)}}function He(Ee,De,Pe){let We=t(Ee)||Op;return o(Ee,De,(At,Se,je)=>{At==="change"&&(je||(je=t(Ee)||Op),je.getTime()===We.getTime())||(We=je||t(Ee)||Op,Pe(At,Se,We))})}}function tre(e){const t=e.writeFile;e.writeFile=(r,i,o)=>_U(r,i,!!o,(s,l,u)=>t.call(e,s,l,u),s=>e.createDirectory(s),s=>e.directoryExists(s))}function q1e(e){gu=e}var LV,s4,Op,l4,c4,KM,XM,nre,kV,gu,_Be=T({"src/compiler/sys.ts"(){ra(),LV=(e=>(e[e.Created=0]="Created",e[e.Changed=1]="Changed",e[e.Deleted=2]="Deleted",e))(LV||{}),s4=(e=>(e[e.High=2e3]="High",e[e.Medium=500]="Medium",e[e.Low=250]="Low",e))(s4||{}),Op=new Date(0),l4={Low:32,Medium:64,High:256},c4=Qne(l4),KM=Qne(l4),XM=["/node_modules/.","/.git","/.#"],nre=$a,kV=(e=>(e[e.File=0]="File",e[e.Directory=1]="Directory",e))(kV||{}),gu=(()=>{const e="\uFEFF";function t(){const i=/^native |^\([^)]+\)$|^(internal[\\/]|[a-zA-Z0-9_\s]+(\.js)?$)/,o=IE("fs"),s=IE("path"),l=IE("os");let u;try{u=IE("crypto")}catch{u=void 0}let p,h="./profile.cpuprofile";const m=IE("buffer").Buffer,b=process.platform==="darwin",A=process.platform==="linux"||b,I=l.platform(),R=$(),M=o.realpathSync.native?process.platform==="win32"?We:o.realpathSync.native:o.realpathSync,C=__filename.endsWith("sys.js")?s.join(s.dirname(__dirname),"__fake__.js"):__filename,O=process.platform==="win32"||b,U=Td(()=>process.cwd()),{watchFile:K,watchDirectory:Z}=ere({pollingWatchFileWorker:oe,getModifiedTime:Se,setTimeout,clearTimeout,fsWatchWorker:fe,useCaseSensitiveFileNames:R,getCurrentDirectory:U,fileSystemEntryExists:He,fsSupportsRecursiveFsWatch:O,getAccessibleSortedChildDirectories:vt=>ve(vt).directories,realpath:At,tscWatchFile:HN.TSC_WATCHFILE,useNonPollingWatchers:!!HN.TSC_NONPOLLING_WATCHER,tscWatchDirectory:HN.TSC_WATCHDIRECTORY,inodeWatching:A,fsWatchWithTimestamp:b,sysLog:JM}),V={args:process.argv.slice(2),newLine:l.EOL,useCaseSensitiveFileNames:R,write(vt){process.stdout.write(vt)},getWidthOfTerminal(){return process.stdout.columns},writeOutputIsTTY(){return process.stdout.isTTY},readFile:pe,writeFile:ie,watchFile:K,watchDirectory:Z,resolvePath:vt=>s.resolve(vt),fileExists:Ee,directoryExists:De,getAccessibleFileSystemEntries:ve,createDirectory(vt){if(!V.directoryExists(vt))try{o.mkdirSync(vt)}catch($e){if($e.code!=="EEXIST")throw $e}},getExecutingFilePath(){return C},getCurrentDirectory:U,getDirectories:Pe,getEnvironmentVariable(vt){return HN[vt]||""},readDirectory:Le,getModifiedTime:Se,setModifiedTime:je,deleteFile:at,createHash:u?Gt:tC,createSHA256Hash:u?Gt:void 0,getMemoryUsage(){return global.gc&&global.gc(),process.memoryUsage().heapUsed},getFileSize(vt){try{const $e=se(vt);if($e!=null&&$e.isFile())return $e.size}catch{}return 0},exit(vt){he(()=>process.exit(vt))},enableCPUProfiler:G,disableCPUProfiler:he,cpuProfilingEnabled:()=>!!p||Nr(process.execArgv,"--cpu-prof")||Nr(process.execArgv,"--prof"),realpath:At,debugMode:!!HN.NODE_INSPECTOR_IPC||!!HN.VSCODE_INSPECTOR_OPTIONS||bt(process.execArgv,vt=>/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(vt))||!!process.recordreplay,tryEnableSourceMapsForHost(){try{IE("source-map-support").install()}catch{}},setTimeout,clearTimeout,clearScreen:()=>{process.stdout.write("\x1Bc")},setBlocking:()=>{var vt;const $e=(vt=process.stdout)==null?void 0:vt._handle;$e&&$e.setBlocking&&$e.setBlocking(!0)},bufferFrom:ye,base64decode:vt=>ye(vt,"base64").toString("utf8"),base64encode:vt=>ye(vt).toString("base64"),require:(vt,$e)=>{try{const It=Yse($e,vt,V);return{module:IE(It),modulePath:It,error:void 0}}catch(It){return{module:void 0,modulePath:void 0,error:It}}}};return V;function se(vt){return o.statSync(vt,{throwIfNoEntry:!1})}function G(vt,$e){if(p)return $e(),!1;const It=IE("inspector");if(!It||!It.Session)return $e(),!1;const tn=new It.Session;return tn.connect(),tn.post("Profiler.enable",()=>{tn.post("Profiler.start",()=>{p=tn,h=vt,$e()})}),!0}function ne(vt){let $e=0;const It=new Map,tn=Lu(s.dirname(C)),rn=`file://${ph(tn)===1?"":"/"}${tn}`;for(const Pn of vt.nodes)if(Pn.callFrame.url){const Xn=Lu(Pn.callFrame.url);bm(rn,Xn,R)?Pn.callFrame.url=RA(rn,Xn,rn,Mu(R),!0):i.test(Xn)||(Pn.callFrame.url=(It.has(Xn)?It:It.set(Xn,`external${$e}.js`)).get(Xn),$e++)}return vt}function he(vt){if(p&&p!=="stopping"){const $e=p;return p.post("Profiler.stop",(It,{profile:tn})=>{var rn;if(!It){try{(rn=se(h))!=null&&rn.isDirectory()&&(h=s.join(h,`${new Date().toISOString().replace(/:/g,"-")}+P${process.pid}.cpuprofile`))}catch{}try{o.mkdirSync(s.dirname(h),{recursive:!0})}catch{}o.writeFileSync(h,JSON.stringify(ne(tn)))}p=void 0,$e.disconnect(),vt()}),p="stopping",!0}else return vt(),!1}function ye(vt,$e){return m.from&&m.from!==Int8Array.from?m.from(vt,$e):new m(vt,$e)}function $(){return I==="win32"||I==="win64"?!1:!Ee(Y(__filename))}function Y(vt){return vt.replace(/\w/g,$e=>{const It=$e.toUpperCase();return $e===It?$e.toLowerCase():It})}function oe(vt,$e,It){o.watchFile(vt,{persistent:!0,interval:It},rn);let tn;return{close:()=>o.unwatchFile(vt,rn)};function rn(Pn,Xn){const hn=+Xn.mtime==0||tn===2;if(+Pn.mtime==0){if(hn)return;tn=2}else if(hn)tn=0;else{if(+Pn.mtime==+Xn.mtime)return;tn=1}$e(vt,tn,Pn.mtime)}}function fe(vt,$e,It){return o.watch(vt,O?{persistent:!0,recursive:!!$e}:{persistent:!0},It)}function Ne(vt,$e){let It;try{It=o.readFileSync(vt)}catch{return}let tn=It.length;if(tn>=2&&It[0]===254&&It[1]===255){tn&=-2;for(let rn=0;rn<tn;rn+=2){const Pn=It[rn];It[rn]=It[rn+1],It[rn+1]=Pn}return It.toString("utf16le",2)}return tn>=2&&It[0]===255&&It[1]===254?It.toString("utf16le",2):tn>=3&&It[0]===239&&It[1]===187&&It[2]===191?It.toString("utf8",3):It.toString("utf8")}function pe(vt,$e){var It,tn;(It=ad)==null||It.logStartReadFile(vt);const rn=Ne(vt);return(tn=ad)==null||tn.logStopReadFile(),rn}function ie(vt,$e,It){var tn;(tn=ad)==null||tn.logEvent("WriteFile: "+vt),It&&($e=e+$e);let rn;try{rn=o.openSync(vt,"w"),o.writeSync(rn,$e,void 0,"utf8")}finally{rn!==void 0&&o.closeSync(rn)}}function ve(vt){var $e;($e=ad)==null||$e.logEvent("ReadDir: "+(vt||"."));try{const It=o.readdirSync(vt||".",{withFileTypes:!0}),tn=[],rn=[];for(const Pn of It){const Xn=typeof Pn=="string"?Pn:Pn.name;if(Xn==="."||Xn==="..")continue;let hn;if(typeof Pn=="string"||Pn.isSymbolicLink()){const Qt=Qr(vt,Xn);try{if(hn=se(Qt),!hn)continue}catch{continue}}else hn=Pn;hn.isFile()?tn.push(Xn):hn.isDirectory()&&rn.push(Xn)}return tn.sort(),rn.sort(),{files:tn,directories:rn}}catch{return gW}}function Le(vt,$e,It,tn,rn){return FU(vt,$e,It,tn,R,process.cwd(),rn,ve,At)}function He(vt,$e){const It=Error.stackTraceLimit;Error.stackTraceLimit=0;try{const tn=se(vt);if(!tn)return!1;switch($e){case 0:return tn.isFile();case 1:return tn.isDirectory();default:return!1}}catch{return!1}finally{Error.stackTraceLimit=It}}function Ee(vt){return He(vt,0)}function De(vt){return He(vt,1)}function Pe(vt){return ve(vt).directories.slice()}function We(vt){return vt.length<260?o.realpathSync.native(vt):o.realpathSync(vt)}function At(vt){try{return M(vt)}catch{return vt}}function Se(vt){var $e;const It=Error.stackTraceLimit;Error.stackTraceLimit=0;try{return($e=se(vt))==null?void 0:$e.mtime}catch{return}finally{Error.stackTraceLimit=It}}function je(vt,$e){try{o.utimesSync(vt,$e,$e)}catch{return}}function at(vt){try{return o.unlinkSync(vt)}catch{return}}function Gt(vt){const $e=u.createHash("sha256");return $e.update(vt),$e.digest("hex")}}let r;return AG()&&(r=t()),r&&tre(r),r})(),gu&&gu.getEnvironmentVariable&&(sBe(gu),N.setAssertionLevel(/^development$/i.test(gu.getEnvironmentVariable("NODE_ENV"))?1:0)),gu&&gu.debugMode&&(N.isDebugging=!0)}});function wV(e){return e===47||e===92}function rre(e){return u4(e)<0}function fp(e){return u4(e)>0}function OV(e){const t=u4(e);return t>0&&t===e.length}function nC(e){return u4(e)!==0}function Wp(e){return/^\.\.?($|[\\/])/.test(e)}function WV(e){return!nC(e)&&!Wp(e)}function xA(e){return ic(e).includes(".")}function Il(e,t){return e.length>t.length&&Al(e,t)}function Tc(e,t){for(const r of t)if(Il(e,r))return!0;return!1}function kv(e){return e.length>0&&wV(e.charCodeAt(e.length-1))}function J1e(e){return e>=97&&e<=122||e>=65&&e<=90}function hBe(e,t){const r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){const i=e.charCodeAt(t+2);if(i===97||i===65)return t+3}return-1}function u4(e){if(!e)return 0;const t=e.charCodeAt(0);if(t===47||t===92){if(e.charCodeAt(1)!==t)return 1;const i=e.indexOf(t===47?al:ZM,2);return i<0?e.length:i+1}if(J1e(t)&&e.charCodeAt(1)===58){const i=e.charCodeAt(2);if(i===47||i===92)return 3;if(e.length===2)return 2}const r=e.indexOf(are);if(r!==-1){const i=r+are.length,o=e.indexOf(al,i);if(o!==-1){const s=e.slice(0,r),l=e.slice(i,o);if(s==="file"&&(l===""||l==="localhost")&&J1e(e.charCodeAt(o+1))){const u=hBe(e,o+2);if(u!==-1){if(e.charCodeAt(u)===47)return~(u+1);if(u===e.length)return~u}}return~(o+1)}return~e.length}return 0}function ph(e){const t=u4(e);return t<0?~t:t}function ai(e){e=Lu(e);const t=ph(e);return t===e.length?e:(e=o0(e),e.slice(0,Math.max(t,e.lastIndexOf(al))))}function ic(e,t,r){if(e=Lu(e),ph(e)===e.length)return"";e=o0(e);const o=e.slice(Math.max(ph(e),e.lastIndexOf(al)+1)),s=t!==void 0&&r!==void 0?Jx(o,t,r):void 0;return s?o.slice(0,o.length-s.length):o}function K1e(e,t,r){if(uo(t,".")||(t="."+t),e.length>=t.length&&e.charCodeAt(e.length-t.length)===46){const i=e.slice(e.length-t.length);if(r(i,t))return i}}function gBe(e,t,r){if(typeof t=="string")return K1e(e,t,r)||"";for(const i of t){const o=K1e(e,i,r);if(o)return o}return""}function Jx(e,t,r){if(t)return gBe(o0(e),t,r?i0:dS);const i=ic(e),o=i.lastIndexOf(".");return o>=0?i.substring(o):""}function vBe(e,t){const r=e.substring(0,t),i=e.substring(t).split(al);return i.length&&!tl(i)&&i.pop(),[r,...i]}function zc(e,t=""){return e=Qr(t,e),vBe(e,ph(e))}function Cy(e,t){return e.length===0?"":(e[0]&&Bc(e[0]))+e.slice(1,t).join(al)}function Lu(e){return e.includes("\\")?e.replace($1e,al):e}function _S(e){if(!bt(e))return[];const t=[e[0]];for(let r=1;r<e.length;r++){const i=e[r];if(i&&i!=="."){if(i===".."){if(t.length>1){if(t[t.length-1]!==".."){t.pop();continue}}else if(t[0])continue}t.push(i)}}return t}function Qr(e,...t){e&&(e=Lu(e));for(let r of t)r&&(r=Lu(r),!e||ph(r)!==0?e=r:e=Bc(e)+r);return e}function Py(e,...t){return ga(bt(t)?Qr(e,...t):Lu(e))}function YM(e,t){return _S(zc(e,t))}function go(e,t){return Cy(YM(e,t))}function ga(e){if(e=Lu(e),!p4.test(e))return e;const t=e.replace(/\/\.\//g,"/").replace(/^\.\//,"");if(t!==e&&(e=t,!p4.test(e)))return e;const r=Cy(_S(zc(e)));return r&&kv(e)?Bc(r):r}function yBe(e){return e.length===0?"":e.slice(1).join(al)}function FV(e,t){return yBe(YM(e,t))}function ol(e,t,r){const i=fp(e)?ga(e):go(e,t);return r(i)}function o0(e){return kv(e)?e.substr(0,e.length-1):e}function Bc(e){return kv(e)?e:e+al}function CE(e){return!nC(e)&&!Wp(e)?"./"+e:e}function $M(e,t,r,i){const o=r!==void 0&&i!==void 0?Jx(e,r,i):Jx(e);return o?e.slice(0,e.length-o.length)+(uo(t,".")?t:"."+t):e}function ire(e,t){const r=oq(e);return r?e.slice(0,e.length-r.length)+(uo(t,".")?t:"."+t):$M(e,t)}function ore(e,t,r){if(e===t)return 0;if(e===void 0)return-1;if(t===void 0)return 1;const i=e.substring(0,ph(e)),o=t.substring(0,ph(t)),s=F6(i,o);if(s!==0)return s;const l=e.substring(i.length),u=t.substring(o.length);if(!p4.test(l)&&!p4.test(u))return r(l,u);const p=_S(zc(e)),h=_S(zc(t)),m=Math.min(p.length,h.length);for(let b=1;b<m;b++){const A=r(p[b],h[b]);if(A!==0)return A}return rl(p.length,h.length)}function X1e(e,t){return ore(e,t,Uu)}function Y1e(e,t){return ore(e,t,F6)}function Lg(e,t,r,i){return typeof r=="string"?(e=Qr(r,e),t=Qr(r,t)):typeof r=="boolean"&&(i=r),ore(e,t,zx(i))}function bm(e,t,r,i){if(typeof r=="string"?(e=Qr(r,e),t=Qr(r,t)):typeof r=="boolean"&&(i=r),e===void 0||t===void 0)return!1;if(e===t)return!0;const o=_S(zc(e)),s=_S(zc(t));if(s.length<o.length)return!1;const l=i?i0:dS;for(let u=0;u<o.length;u++)if(!(u===0?i0:l)(o[u],s[u]))return!1;return!0}function zV(e,t,r){const i=r(e),o=r(t);return uo(i,o+"/")||uo(i,o+"\\")}function BV(e,t,r,i){const o=_S(zc(e)),s=_S(zc(t));let l;for(l=0;l<o.length&&l<s.length;l++){const h=i(o[l]),m=i(s[l]);if(!(l===0?i0:r)(h,m))break}if(l===0)return s;const u=s.slice(l),p=[];for(;l<o.length;l++)p.push("..");return["",...p,...u]}function Em(e,t,r){N.assert(ph(e)>0==ph(t)>0,"Paths must either both be absolute or both be relative");const s=BV(e,t,(typeof r=="boolean"?r:!1)?i0:dS,typeof r=="function"?r:nl);return Cy(s)}function rC(e,t,r){return fp(e)?RA(t,e,t,r,!1):e}function QM(e,t,r){return CE(Em(ai(e),t,r))}function RA(e,t,r,i,o){const s=BV(Py(r,e),Py(r,t),dS,i),l=s[0];if(o&&fp(l)){const u=l.charAt(0)===al?"file://":"file:///";s[0]=u+l}return Cy(s)}function Sm(e,t){for(;;){const r=t(e);if(r!==void 0)return r;const i=ai(e);if(i===e)return;e=i}}function d4(e){return Al(e,"/node_modules")}var al,ZM,are,$1e,p4,bBe=T({"src/compiler/path.ts"(){ra(),al="/",ZM="\\",are="://",$1e=/\\/g,p4=/(?:\/\/)|(?:^|\/)\.\.?(?:$|\/)/}});function S(e,t,r,i,o,s,l){return{code:e,category:t,key:r,message:i,reportsUnnecessary:o,elidedInCompatabilityPyramid:s,reportsDeprecated:l}}var f,EBe=T({"src/compiler/diagnosticInformationMap.generated.ts"(){B1e(),f={Unterminated_string_literal:S(1002,1,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:S(1003,1,"Identifier_expected_1003","Identifier expected."),_0_expected:S(1005,1,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:S(1006,1,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),The_parser_expected_to_find_a_1_to_match_the_0_token_here:S(1007,1,"The_parser_expected_to_find_a_1_to_match_the_0_token_here_1007","The parser expected to find a '{1}' to match the '{0}' token here."),Trailing_comma_not_allowed:S(1009,1,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:S(1010,1,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:S(1011,1,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:S(1012,1,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:S(1013,1,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:S(1014,1,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:S(1015,1,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:S(1016,1,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:S(1017,1,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:S(1018,1,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:S(1019,1,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:S(1020,1,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:S(1021,1,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:S(1022,1,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:S(1024,1,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),An_index_signature_cannot_have_a_trailing_comma:S(1025,1,"An_index_signature_cannot_have_a_trailing_comma_1025","An index signature cannot have a trailing comma."),Accessibility_modifier_already_seen:S(1028,1,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:S(1029,1,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:S(1030,1,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_class_elements_of_this_kind:S(1031,1,"_0_modifier_cannot_appear_on_class_elements_of_this_kind_1031","'{0}' modifier cannot appear on class elements of this kind."),super_must_be_followed_by_an_argument_list_or_member_access:S(1034,1,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:S(1035,1,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:S(1036,1,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:S(1038,1,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:S(1039,1,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:S(1040,1,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_here:S(1042,1,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:S(1044,1,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier:S(1046,1,"Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier_1046","Top-level declarations in .d.ts files must start with either a 'declare' or 'export' modifier."),A_rest_parameter_cannot_be_optional:S(1047,1,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:S(1048,1,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:S(1049,1,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:S(1051,1,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:S(1052,1,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:S(1053,1,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:S(1054,1,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:S(1055,1,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:S(1056,1,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:S(1058,1,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:S(1059,1,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:S(1060,1,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:S(1061,1,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:S(1062,1,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:S(1063,1,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0:S(1064,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_wri_1064","The return type of an async function or method must be the global Promise<T> type. Did you mean to write 'Promise<{0}>'?"),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:S(1065,1,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1065","The return type of an async function or method must be the global Promise<T> type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:S(1066,1,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:S(1068,1,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:S(1069,1,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:S(1070,1,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:S(1071,1,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:S(1079,1,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:S(1084,1,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),_0_modifier_cannot_appear_on_a_constructor_declaration:S(1089,1,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:S(1090,1,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:S(1091,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:S(1092,1,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:S(1093,1,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:S(1094,1,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:S(1095,1,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:S(1096,1,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:S(1097,1,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:S(1098,1,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:S(1099,1,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:S(1100,1,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:S(1101,1,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:S(1102,1,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:S(1103,1,"for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1103","'for await' loops are only allowed within async functions and at the top levels of modules."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:S(1104,1,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:S(1105,1,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),The_left_hand_side_of_a_for_of_statement_may_not_be_async:S(1106,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_async_1106","The left-hand side of a 'for...of' statement may not be 'async'."),Jump_target_cannot_cross_function_boundary:S(1107,1,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:S(1108,1,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:S(1109,1,"Expression_expected_1109","Expression expected."),Type_expected:S(1110,1,"Type_expected_1110","Type expected."),Private_field_0_must_be_declared_in_an_enclosing_class:S(1111,1,"Private_field_0_must_be_declared_in_an_enclosing_class_1111","Private field '{0}' must be declared in an enclosing class."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:S(1113,1,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:S(1114,1,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:S(1115,1,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:S(1116,1,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name:S(1117,1,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_1117","An object literal cannot have multiple properties with the same name."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:S(1118,1,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:S(1119,1,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:S(1120,1,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_Use_the_syntax_0:S(1121,1,"Octal_literals_are_not_allowed_Use_the_syntax_0_1121","Octal literals are not allowed. Use the syntax '{0}'."),Variable_declaration_list_cannot_be_empty:S(1123,1,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:S(1124,1,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:S(1125,1,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:S(1126,1,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:S(1127,1,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:S(1128,1,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:S(1129,1,"Statement_expected_1129","Statement expected."),case_or_default_expected:S(1130,1,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:S(1131,1,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:S(1132,1,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:S(1134,1,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:S(1135,1,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:S(1136,1,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:S(1137,1,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:S(1138,1,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:S(1139,1,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:S(1140,1,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:S(1141,1,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:S(1142,1,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:S(1144,1,"or_expected_1144","'{' or ';' expected."),or_JSX_element_expected:S(1145,1,"or_JSX_element_expected_1145","'{' or JSX element expected."),Declaration_expected:S(1146,1,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:S(1147,1,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:S(1148,1,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:S(1149,1,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),_0_declarations_must_be_initialized:S(1155,1,"_0_declarations_must_be_initialized_1155","'{0}' declarations must be initialized."),_0_declarations_can_only_be_declared_inside_a_block:S(1156,1,"_0_declarations_can_only_be_declared_inside_a_block_1156","'{0}' declarations can only be declared inside a block."),Unterminated_template_literal:S(1160,1,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:S(1161,1,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:S(1162,1,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:S(1163,1,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:S(1164,1,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:S(1165,1,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type:S(1166,1,"A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_1166","A computed property name in a class property declaration must have a simple literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:S(1168,1,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:S(1169,1,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:S(1170,1,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:S(1171,1,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:S(1172,1,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:S(1173,1,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:S(1174,1,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:S(1175,1,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:S(1176,1,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:S(1177,1,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:S(1178,1,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:S(1179,1,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:S(1180,1,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:S(1181,1,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:S(1182,1,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:S(1183,1,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:S(1184,1,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:S(1185,1,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:S(1186,1,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:S(1187,1,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:S(1188,1,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:S(1189,1,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:S(1190,1,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:S(1191,1,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:S(1192,1,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:S(1193,1,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:S(1194,1,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),export_Asterisk_does_not_re_export_a_default:S(1195,1,"export_Asterisk_does_not_re_export_a_default_1195","'export *' does not re-export a default."),Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified:S(1196,1,"Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified_1196","Catch clause variable type annotation must be 'any' or 'unknown' if specified."),Catch_clause_variable_cannot_have_an_initializer:S(1197,1,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:S(1198,1,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:S(1199,1,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:S(1200,1,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:S(1202,1,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202",`Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:S(1203,1,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Re_exporting_a_type_when_0_is_enabled_requires_using_export_type:S(1205,1,"Re_exporting_a_type_when_0_is_enabled_requires_using_export_type_1205","Re-exporting a type when '{0}' is enabled requires using 'export type'."),Decorators_are_not_valid_here:S(1206,1,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:S(1207,1,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0:S(1209,1,"Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0_1209","Invalid optional chain from new expression. Did you mean to call '{0}()'?"),Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:S(1210,1,"Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of__1210","Code contained in a class is evaluated in JavaScript's strict mode which does not allow this use of '{0}'. For more information, see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:S(1211,1,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:S(1212,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:S(1213,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:S(1214,1,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:S(1215,1,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:S(1216,1,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:S(1218,1,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Generators_are_not_allowed_in_an_ambient_context:S(1221,1,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:S(1222,1,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:S(1223,1,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:S(1224,1,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:S(1225,1,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:S(1226,1,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:S(1227,1,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:S(1228,1,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:S(1229,1,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:S(1230,1,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:S(1231,1,"An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration_1231","An export assignment must be at the top level of a file or module declaration."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:S(1232,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1232","An import declaration can only be used at the top level of a namespace or module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module:S(1233,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module_1233","An export declaration can only be used at the top level of a namespace or module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:S(1234,1,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module:S(1235,1,"A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module_1235","A namespace declaration is only allowed at the top level of a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:S(1236,1,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:S(1237,1,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:S(1238,1,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:S(1239,1,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:S(1240,1,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:S(1241,1,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:S(1242,1,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:S(1243,1,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:S(1244,1,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:S(1245,1,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:S(1246,1,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:S(1247,1,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:S(1248,1,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:S(1249,1,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:S(1250,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:S(1251,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:S(1252,1,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),Abstract_properties_can_only_appear_within_an_abstract_class:S(1253,1,"Abstract_properties_can_only_appear_within_an_abstract_class_1253","Abstract properties can only appear within an abstract class."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:S(1254,1,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:S(1255,1,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_required_element_cannot_follow_an_optional_element:S(1257,1,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration:S(1258,1,"A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration_1258","A default export must be at the top level of a file or module declaration."),Module_0_can_only_be_default_imported_using_the_1_flag:S(1259,1,"Module_0_can_only_be_default_imported_using_the_1_flag_1259","Module '{0}' can only be default-imported using the '{1}' flag"),Keywords_cannot_contain_escape_characters:S(1260,1,"Keywords_cannot_contain_escape_characters_1260","Keywords cannot contain escape characters."),Already_included_file_name_0_differs_from_file_name_1_only_in_casing:S(1261,1,"Already_included_file_name_0_differs_from_file_name_1_only_in_casing_1261","Already included file name '{0}' differs from file name '{1}' only in casing."),Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module:S(1262,1,"Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module_1262","Identifier expected. '{0}' is a reserved word at the top-level of a module."),Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:S(1263,1,"Declarations_with_initializers_cannot_also_have_definite_assignment_assertions_1263","Declarations with initializers cannot also have definite assignment assertions."),Declarations_with_definite_assignment_assertions_must_also_have_type_annotations:S(1264,1,"Declarations_with_definite_assignment_assertions_must_also_have_type_annotations_1264","Declarations with definite assignment assertions must also have type annotations."),A_rest_element_cannot_follow_another_rest_element:S(1265,1,"A_rest_element_cannot_follow_another_rest_element_1265","A rest element cannot follow another rest element."),An_optional_element_cannot_follow_a_rest_element:S(1266,1,"An_optional_element_cannot_follow_a_rest_element_1266","An optional element cannot follow a rest element."),Property_0_cannot_have_an_initializer_because_it_is_marked_abstract:S(1267,1,"Property_0_cannot_have_an_initializer_because_it_is_marked_abstract_1267","Property '{0}' cannot have an initializer because it is marked abstract."),An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type:S(1268,1,"An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type_1268","An index signature parameter type must be 'string', 'number', 'symbol', or a template literal type."),Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled:S(1269,1,"Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled_1269","Cannot use 'export import' on a type or type-only namespace when '{0}' is enabled."),Decorator_function_return_type_0_is_not_assignable_to_type_1:S(1270,1,"Decorator_function_return_type_0_is_not_assignable_to_type_1_1270","Decorator function return type '{0}' is not assignable to type '{1}'."),Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any:S(1271,1,"Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any_1271","Decorator function return type is '{0}' but is expected to be 'void' or 'any'."),A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled:S(1272,1,"A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_w_1272","A type referenced in a decorated signature must be imported with 'import type' or a namespace import when 'isolatedModules' and 'emitDecoratorMetadata' are enabled."),_0_modifier_cannot_appear_on_a_type_parameter:S(1273,1,"_0_modifier_cannot_appear_on_a_type_parameter_1273","'{0}' modifier cannot appear on a type parameter"),_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias:S(1274,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias_1274","'{0}' modifier can only appear on a type parameter of a class, interface or type alias"),accessor_modifier_can_only_appear_on_a_property_declaration:S(1275,1,"accessor_modifier_can_only_appear_on_a_property_declaration_1275","'accessor' modifier can only appear on a property declaration."),An_accessor_property_cannot_be_declared_optional:S(1276,1,"An_accessor_property_cannot_be_declared_optional_1276","An 'accessor' property cannot be declared optional."),_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class:S(1277,1,"_0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class_1277","'{0}' modifier can only appear on a type parameter of a function, method or class"),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:S(1278,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0_1278","The runtime will invoke the decorator with {1} arguments, but the decorator expects {0}."),The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:S(1279,1,"The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0_1279","The runtime will invoke the decorator with {1} arguments, but the decorator expects at least {0}."),Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement:S(1280,1,"Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to__1280","Namespaces are not allowed in global script files when '{0}' is enabled. If this file is not intended to be a global script, set 'moduleDetection' to 'force' or add an empty 'export {}' statement."),Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead:S(1281,1,"Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead_1281","Cannot access '{0}' from another file without qualification when '{1}' is enabled. Use '{2}' instead."),An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:S(1282,1,"An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers__1282","An 'export =' declaration must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:S(1283,1,"An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolve_1283","An 'export =' declaration must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:S(1284,1,"An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_1284","An 'export default' must reference a value when 'verbatimModuleSyntax' is enabled, but '{0}' only refers to a type."),An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:S(1285,1,"An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_1285","An 'export default' must reference a real value when 'verbatimModuleSyntax' is enabled, but '{0}' resolves to a type-only declaration."),ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:S(1286,1,"ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled_1286","ESM syntax is not allowed in a CommonJS module when 'verbatimModuleSyntax' is enabled."),A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled:S(1287,1,"A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimM_1287","A top-level 'export' modifier cannot be used on value declarations in a CommonJS module when 'verbatimModuleSyntax' is enabled."),An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:S(1288,1,"An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabl_1288","An import alias cannot resolve to a type or type-only declaration when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:S(1289,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1289","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:S(1290,1,"_0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_1290","'{0}' resolves to a type-only declaration and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:S(1291,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1291","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'import type' where '{0}' is imported."),_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default:S(1292,1,"_0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enable_1292","'{0}' resolves to a type and must be marked type-only in this file before re-exporting when '{1}' is enabled. Consider using 'export type { {0} as default }'."),with_statements_are_not_allowed_in_an_async_function_block:S(1300,1,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:S(1308,1,"await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_1308","'await' expressions are only allowed within async functions and at the top levels of modules."),The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level:S(1309,1,"The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level_1309","The current file is a CommonJS module and cannot use 'await' at the top level."),Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern:S(1312,1,"Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_1312","Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern."),The_body_of_an_if_statement_cannot_be_the_empty_statement:S(1313,1,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:S(1314,1,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:S(1315,1,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:S(1316,1,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:S(1317,1,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:S(1318,1,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:S(1319,1,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:S(1320,1,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:S(1321,1,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:S(1322,1,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext:S(1323,1,"Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd__1323","Dynamic imports are only supported when the '--module' flag is set to 'es2020', 'es2022', 'esnext', 'commonjs', 'amd', 'system', 'umd', 'node16', or 'nodenext'."),Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext:S(1324,1,"Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nod_1324","Dynamic imports only support a second argument when the '--module' option is set to 'esnext', 'node16', or 'nodenext'."),Argument_of_dynamic_import_cannot_be_spread_element:S(1325,1,"Argument_of_dynamic_import_cannot_be_spread_element_1325","Argument of dynamic import cannot be spread element."),This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments:S(1326,1,"This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot__1326","This use of 'import' is invalid. 'import()' calls can be written, but they must have parentheses and cannot have type arguments."),String_literal_with_double_quotes_expected:S(1327,1,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:S(1328,1,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:S(1329,1,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:S(1330,1,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:S(1331,1,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:S(1332,1,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:S(1333,1,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:S(1334,1,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:S(1335,1,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead:S(1337,1,"An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_o_1337","An index signature parameter type cannot be a literal type or generic type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:S(1338,1,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:S(1339,1,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:S(1340,1,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Class_constructor_may_not_be_an_accessor:S(1341,1,"Class_constructor_may_not_be_an_accessor_1341","Class constructor may not be an accessor."),The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext:S(1343,1,"The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system__1343","The 'import.meta' meta-property is only allowed when the '--module' option is 'es2020', 'es2022', 'esnext', 'system', 'node16', or 'nodenext'."),A_label_is_not_allowed_here:S(1344,1,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:S(1345,1,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness."),This_parameter_is_not_allowed_with_use_strict_directive:S(1346,1,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:S(1347,1,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:S(1348,1,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:S(1349,1,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:S(1350,3,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal:S(1351,1,"An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal_1351","An identifier or keyword cannot immediately follow a numeric literal."),A_bigint_literal_cannot_use_exponential_notation:S(1352,1,"A_bigint_literal_cannot_use_exponential_notation_1352","A bigint literal cannot use exponential notation."),A_bigint_literal_must_be_an_integer:S(1353,1,"A_bigint_literal_must_be_an_integer_1353","A bigint literal must be an integer."),readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types:S(1354,1,"readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types_1354","'readonly' type modifier is only permitted on array and tuple literal types."),A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals:S(1355,1,"A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array__1355","A 'const' assertions can only be applied to references to enum members, or string, number, boolean, array, or object literals."),Did_you_mean_to_mark_this_function_as_async:S(1356,1,"Did_you_mean_to_mark_this_function_as_async_1356","Did you mean to mark this function as 'async'?"),An_enum_member_name_must_be_followed_by_a_or:S(1357,1,"An_enum_member_name_must_be_followed_by_a_or_1357","An enum member name must be followed by a ',', '=', or '}'."),Tagged_template_expressions_are_not_permitted_in_an_optional_chain:S(1358,1,"Tagged_template_expressions_are_not_permitted_in_an_optional_chain_1358","Tagged template expressions are not permitted in an optional chain."),Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:S(1359,1,"Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here_1359","Identifier expected. '{0}' is a reserved word that cannot be used here."),Type_0_does_not_satisfy_the_expected_type_1:S(1360,1,"Type_0_does_not_satisfy_the_expected_type_1_1360","Type '{0}' does not satisfy the expected type '{1}'."),_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type:S(1361,1,"_0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type_1361","'{0}' cannot be used as a value because it was imported using 'import type'."),_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:S(1362,1,"_0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type_1362","'{0}' cannot be used as a value because it was exported using 'export type'."),A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both:S(1363,1,"A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both_1363","A type-only import can specify a default import or named bindings, but not both."),Convert_to_type_only_export:S(1364,3,"Convert_to_type_only_export_1364","Convert to type-only export"),Convert_all_re_exported_types_to_type_only_exports:S(1365,3,"Convert_all_re_exported_types_to_type_only_exports_1365","Convert all re-exported types to type-only exports"),Split_into_two_separate_import_declarations:S(1366,3,"Split_into_two_separate_import_declarations_1366","Split into two separate import declarations"),Split_all_invalid_type_only_imports:S(1367,3,"Split_all_invalid_type_only_imports_1367","Split all invalid type-only imports"),Class_constructor_may_not_be_a_generator:S(1368,1,"Class_constructor_may_not_be_a_generator_1368","Class constructor may not be a generator."),Did_you_mean_0:S(1369,3,"Did_you_mean_0_1369","Did you mean '{0}'?"),This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error:S(1371,1,"This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set__1371","This import is never used as a value and must use 'import type' because 'importsNotUsedAsValues' is set to 'error'."),await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:S(1375,1,"await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_fi_1375","'await' expressions are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),_0_was_imported_here:S(1376,3,"_0_was_imported_here_1376","'{0}' was imported here."),_0_was_exported_here:S(1377,3,"_0_was_exported_here_1377","'{0}' was exported here."),Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:S(1378,1,"Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_n_1378","Top-level 'await' expressions are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:S(1379,1,"An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type_1379","An import alias cannot reference a declaration that was exported using 'export type'."),An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type:S(1380,1,"An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type_1380","An import alias cannot reference a declaration that was imported using 'import type'."),Unexpected_token_Did_you_mean_or_rbrace:S(1381,1,"Unexpected_token_Did_you_mean_or_rbrace_1381","Unexpected token. Did you mean `{'}'}` or `&rbrace;`?"),Unexpected_token_Did_you_mean_or_gt:S(1382,1,"Unexpected_token_Did_you_mean_or_gt_1382","Unexpected token. Did you mean `{'>'}` or `&gt;`?"),Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:S(1385,1,"Function_type_notation_must_be_parenthesized_when_used_in_a_union_type_1385","Function type notation must be parenthesized when used in a union type."),Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:S(1386,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type_1386","Constructor type notation must be parenthesized when used in a union type."),Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:S(1387,1,"Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1387","Function type notation must be parenthesized when used in an intersection type."),Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:S(1388,1,"Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type_1388","Constructor type notation must be parenthesized when used in an intersection type."),_0_is_not_allowed_as_a_variable_declaration_name:S(1389,1,"_0_is_not_allowed_as_a_variable_declaration_name_1389","'{0}' is not allowed as a variable declaration name."),_0_is_not_allowed_as_a_parameter_name:S(1390,1,"_0_is_not_allowed_as_a_parameter_name_1390","'{0}' is not allowed as a parameter name."),An_import_alias_cannot_use_import_type:S(1392,1,"An_import_alias_cannot_use_import_type_1392","An import alias cannot use 'import type'"),Imported_via_0_from_file_1:S(1393,3,"Imported_via_0_from_file_1_1393","Imported via {0} from file '{1}'"),Imported_via_0_from_file_1_with_packageId_2:S(1394,3,"Imported_via_0_from_file_1_with_packageId_2_1394","Imported via {0} from file '{1}' with packageId '{2}'"),Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:S(1395,3,"Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions_1395","Imported via {0} from file '{1}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:S(1396,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions_1396","Imported via {0} from file '{1}' with packageId '{2}' to import 'importHelpers' as specified in compilerOptions"),Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions:S(1397,3,"Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions_1397","Imported via {0} from file '{1}' to import 'jsx' and 'jsxs' factory functions"),Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:S(1398,3,"Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions_1398","Imported via {0} from file '{1}' with packageId '{2}' to import 'jsx' and 'jsxs' factory functions"),File_is_included_via_import_here:S(1399,3,"File_is_included_via_import_here_1399","File is included via import here."),Referenced_via_0_from_file_1:S(1400,3,"Referenced_via_0_from_file_1_1400","Referenced via '{0}' from file '{1}'"),File_is_included_via_reference_here:S(1401,3,"File_is_included_via_reference_here_1401","File is included via reference here."),Type_library_referenced_via_0_from_file_1:S(1402,3,"Type_library_referenced_via_0_from_file_1_1402","Type library referenced via '{0}' from file '{1}'"),Type_library_referenced_via_0_from_file_1_with_packageId_2:S(1403,3,"Type_library_referenced_via_0_from_file_1_with_packageId_2_1403","Type library referenced via '{0}' from file '{1}' with packageId '{2}'"),File_is_included_via_type_library_reference_here:S(1404,3,"File_is_included_via_type_library_reference_here_1404","File is included via type library reference here."),Library_referenced_via_0_from_file_1:S(1405,3,"Library_referenced_via_0_from_file_1_1405","Library referenced via '{0}' from file '{1}'"),File_is_included_via_library_reference_here:S(1406,3,"File_is_included_via_library_reference_here_1406","File is included via library reference here."),Matched_by_include_pattern_0_in_1:S(1407,3,"Matched_by_include_pattern_0_in_1_1407","Matched by include pattern '{0}' in '{1}'"),File_is_matched_by_include_pattern_specified_here:S(1408,3,"File_is_matched_by_include_pattern_specified_here_1408","File is matched by include pattern specified here."),Part_of_files_list_in_tsconfig_json:S(1409,3,"Part_of_files_list_in_tsconfig_json_1409","Part of 'files' list in tsconfig.json"),File_is_matched_by_files_list_specified_here:S(1410,3,"File_is_matched_by_files_list_specified_here_1410","File is matched by 'files' list specified here."),Output_from_referenced_project_0_included_because_1_specified:S(1411,3,"Output_from_referenced_project_0_included_because_1_specified_1411","Output from referenced project '{0}' included because '{1}' specified"),Output_from_referenced_project_0_included_because_module_is_specified_as_none:S(1412,3,"Output_from_referenced_project_0_included_because_module_is_specified_as_none_1412","Output from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_output_from_referenced_project_specified_here:S(1413,3,"File_is_output_from_referenced_project_specified_here_1413","File is output from referenced project specified here."),Source_from_referenced_project_0_included_because_1_specified:S(1414,3,"Source_from_referenced_project_0_included_because_1_specified_1414","Source from referenced project '{0}' included because '{1}' specified"),Source_from_referenced_project_0_included_because_module_is_specified_as_none:S(1415,3,"Source_from_referenced_project_0_included_because_module_is_specified_as_none_1415","Source from referenced project '{0}' included because '--module' is specified as 'none'"),File_is_source_from_referenced_project_specified_here:S(1416,3,"File_is_source_from_referenced_project_specified_here_1416","File is source from referenced project specified here."),Entry_point_of_type_library_0_specified_in_compilerOptions:S(1417,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_1417","Entry point of type library '{0}' specified in compilerOptions"),Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1:S(1418,3,"Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1_1418","Entry point of type library '{0}' specified in compilerOptions with packageId '{1}'"),File_is_entry_point_of_type_library_specified_here:S(1419,3,"File_is_entry_point_of_type_library_specified_here_1419","File is entry point of type library specified here."),Entry_point_for_implicit_type_library_0:S(1420,3,"Entry_point_for_implicit_type_library_0_1420","Entry point for implicit type library '{0}'"),Entry_point_for_implicit_type_library_0_with_packageId_1:S(1421,3,"Entry_point_for_implicit_type_library_0_with_packageId_1_1421","Entry point for implicit type library '{0}' with packageId '{1}'"),Library_0_specified_in_compilerOptions:S(1422,3,"Library_0_specified_in_compilerOptions_1422","Library '{0}' specified in compilerOptions"),File_is_library_specified_here:S(1423,3,"File_is_library_specified_here_1423","File is library specified here."),Default_library:S(1424,3,"Default_library_1424","Default library"),Default_library_for_target_0:S(1425,3,"Default_library_for_target_0_1425","Default library for target '{0}'"),File_is_default_library_for_target_specified_here:S(1426,3,"File_is_default_library_for_target_specified_here_1426","File is default library for target specified here."),Root_file_specified_for_compilation:S(1427,3,"Root_file_specified_for_compilation_1427","Root file specified for compilation"),File_is_output_of_project_reference_source_0:S(1428,3,"File_is_output_of_project_reference_source_0_1428","File is output of project reference source '{0}'"),File_redirects_to_file_0:S(1429,3,"File_redirects_to_file_0_1429","File redirects to file '{0}'"),The_file_is_in_the_program_because_Colon:S(1430,3,"The_file_is_in_the_program_because_Colon_1430","The file is in the program because:"),for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:S(1431,1,"for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_1431","'for await' loops are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:S(1432,1,"Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_nod_1432","Top-level 'for await' loops are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters:S(1433,1,"Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters_1433","Neither decorators nor modifiers may be applied to 'this' parameters."),Unexpected_keyword_or_identifier:S(1434,1,"Unexpected_keyword_or_identifier_1434","Unexpected keyword or identifier."),Unknown_keyword_or_identifier_Did_you_mean_0:S(1435,1,"Unknown_keyword_or_identifier_Did_you_mean_0_1435","Unknown keyword or identifier. Did you mean '{0}'?"),Decorators_must_precede_the_name_and_all_keywords_of_property_declarations:S(1436,1,"Decorators_must_precede_the_name_and_all_keywords_of_property_declarations_1436","Decorators must precede the name and all keywords of property declarations."),Namespace_must_be_given_a_name:S(1437,1,"Namespace_must_be_given_a_name_1437","Namespace must be given a name."),Interface_must_be_given_a_name:S(1438,1,"Interface_must_be_given_a_name_1438","Interface must be given a name."),Type_alias_must_be_given_a_name:S(1439,1,"Type_alias_must_be_given_a_name_1439","Type alias must be given a name."),Variable_declaration_not_allowed_at_this_location:S(1440,1,"Variable_declaration_not_allowed_at_this_location_1440","Variable declaration not allowed at this location."),Cannot_start_a_function_call_in_a_type_annotation:S(1441,1,"Cannot_start_a_function_call_in_a_type_annotation_1441","Cannot start a function call in a type annotation."),Expected_for_property_initializer:S(1442,1,"Expected_for_property_initializer_1442","Expected '=' for property initializer."),Module_declaration_names_may_only_use_or_quoted_strings:S(1443,1,"Module_declaration_names_may_only_use_or_quoted_strings_1443",`Module declaration names may only use ' or " quoted strings.`),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:S(1444,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedMod_1444","'{0}' is a type and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:S(1446,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveVa_1446","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'preserveValueImports' and 'isolatedModules' are both enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled:S(1448,1,"_0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_1448","'{0}' resolves to a type-only declaration and must be re-exported using a type-only re-export when '{1}' is enabled."),Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed:S(1449,3,"Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed_1449","Preserve unused imported values in the JavaScript output that would otherwise be removed."),Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments:S(1450,3,"Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments_1450","Dynamic imports can only accept a module specifier and an optional set of attributes as arguments"),Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression:S(1451,1,"Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member__1451","Private identifiers are only allowed in class bodies and may only be used as part of a class member declaration, property access, or on the left-hand-side of an 'in' expression"),resolution_mode_should_be_either_require_or_import:S(1453,1,"resolution_mode_should_be_either_require_or_import_1453","`resolution-mode` should be either `require` or `import`."),resolution_mode_can_only_be_set_for_type_only_imports:S(1454,1,"resolution_mode_can_only_be_set_for_type_only_imports_1454","`resolution-mode` can only be set for type-only imports."),resolution_mode_is_the_only_valid_key_for_type_import_assertions:S(1455,1,"resolution_mode_is_the_only_valid_key_for_type_import_assertions_1455","`resolution-mode` is the only valid key for type import assertions."),Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:S(1456,1,"Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1456","Type import assertions should have exactly one key - `resolution-mode` - with value `import` or `require`."),Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:S(1457,3,"Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk_1457","Matched by default include pattern '**/*'"),File_is_ECMAScript_module_because_0_has_field_type_with_value_module:S(1458,3,"File_is_ECMAScript_module_because_0_has_field_type_with_value_module_1458",`File is ECMAScript module because '{0}' has field "type" with value "module"`),File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:S(1459,3,"File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module_1459",`File is CommonJS module because '{0}' has field "type" whose value is not "module"`),File_is_CommonJS_module_because_0_does_not_have_field_type:S(1460,3,"File_is_CommonJS_module_because_0_does_not_have_field_type_1460",`File is CommonJS module because '{0}' does not have field "type"`),File_is_CommonJS_module_because_package_json_was_not_found:S(1461,3,"File_is_CommonJS_module_because_package_json_was_not_found_1461","File is CommonJS module because 'package.json' was not found"),resolution_mode_is_the_only_valid_key_for_type_import_attributes:S(1463,1,"resolution_mode_is_the_only_valid_key_for_type_import_attributes_1463","'resolution-mode' is the only valid key for type import attributes."),Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:S(1464,1,"Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require_1464","Type import attributes should have exactly one key - 'resolution-mode' - with value 'import' or 'require'."),The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output:S(1470,1,"The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output_1470","The 'import.meta' meta-property is not allowed in files which will build into CommonJS output."),Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead:S(1471,1,"Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_c_1471","Module '{0}' cannot be imported using this construct. The specifier only resolves to an ES module, which cannot be imported with 'require'. Use an ECMAScript import instead."),catch_or_finally_expected:S(1472,1,"catch_or_finally_expected_1472","'catch' or 'finally' expected."),An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:S(1473,1,"An_import_declaration_can_only_be_used_at_the_top_level_of_a_module_1473","An import declaration can only be used at the top level of a module."),An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:S(1474,1,"An_export_declaration_can_only_be_used_at_the_top_level_of_a_module_1474","An export declaration can only be used at the top level of a module."),Control_what_method_is_used_to_detect_module_format_JS_files:S(1475,3,"Control_what_method_is_used_to_detect_module_format_JS_files_1475","Control what method is used to detect module-format JS files."),auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules:S(1476,3,"auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_w_1476",'"auto": Treat files with imports, exports, import.meta, jsx (with jsx: react-jsx), or esm format (with module: node16+) as modules.'),An_instantiation_expression_cannot_be_followed_by_a_property_access:S(1477,1,"An_instantiation_expression_cannot_be_followed_by_a_property_access_1477","An instantiation expression cannot be followed by a property access."),Identifier_or_string_literal_expected:S(1478,1,"Identifier_or_string_literal_expected_1478","Identifier or string literal expected."),The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead:S(1479,1,"The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_reference_1479",`The current file is a CommonJS module whose imports will produce 'require' calls; however, the referenced file is an ECMAScript module and cannot be imported with 'require'. Consider writing a dynamic 'import("{0}")' call instead.`),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module:S(1480,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_packag_1480",'To convert this file to an ECMAScript module, change its file extension to \'{0}\' or create a local package.json file with `{ "type": "module" }`.'),To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1:S(1481,3,"To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Co_1481",`To convert this file to an ECMAScript module, change its file extension to '{0}', or add the field \`"type": "module"\` to '{1}'.`),To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0:S(1482,3,"To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0_1482",'To convert this file to an ECMAScript module, add the field `"type": "module"` to \'{0}\'.'),To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module:S(1483,3,"To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module_1483",'To convert this file to an ECMAScript module, create a local package.json file with `{ "type": "module" }`.'),_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:S(1484,1,"_0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled_1484","'{0}' is a type and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:S(1485,1,"_0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimMo_1485","'{0}' resolves to a type-only declaration and must be imported using a type-only import when 'verbatimModuleSyntax' is enabled."),Decorator_used_before_export_here:S(1486,1,"Decorator_used_before_export_here_1486","Decorator used before 'export' here."),Octal_escape_sequences_are_not_allowed_Use_the_syntax_0:S(1487,1,"Octal_escape_sequences_are_not_allowed_Use_the_syntax_0_1487","Octal escape sequences are not allowed. Use the syntax '{0}'."),Escape_sequence_0_is_not_allowed:S(1488,1,"Escape_sequence_0_is_not_allowed_1488","Escape sequence '{0}' is not allowed."),Decimals_with_leading_zeros_are_not_allowed:S(1489,1,"Decimals_with_leading_zeros_are_not_allowed_1489","Decimals with leading zeros are not allowed."),File_appears_to_be_binary:S(1490,1,"File_appears_to_be_binary_1490","File appears to be binary."),_0_modifier_cannot_appear_on_a_using_declaration:S(1491,1,"_0_modifier_cannot_appear_on_a_using_declaration_1491","'{0}' modifier cannot appear on a 'using' declaration."),_0_declarations_may_not_have_binding_patterns:S(1492,1,"_0_declarations_may_not_have_binding_patterns_1492","'{0}' declarations may not have binding patterns."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:S(1493,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration_1493","The left-hand side of a 'for...in' statement cannot be a 'using' declaration."),The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration:S(1494,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration_1494","The left-hand side of a 'for...in' statement cannot be an 'await using' declaration."),_0_modifier_cannot_appear_on_an_await_using_declaration:S(1495,1,"_0_modifier_cannot_appear_on_an_await_using_declaration_1495","'{0}' modifier cannot appear on an 'await using' declaration."),Identifier_string_literal_or_number_literal_expected:S(1496,1,"Identifier_string_literal_or_number_literal_expected_1496","Identifier, string literal, or number literal expected."),The_types_of_0_are_incompatible_between_these_types:S(2200,1,"The_types_of_0_are_incompatible_between_these_types_2200","The types of '{0}' are incompatible between these types."),The_types_returned_by_0_are_incompatible_between_these_types:S(2201,1,"The_types_returned_by_0_are_incompatible_between_these_types_2201","The types returned by '{0}' are incompatible between these types."),Call_signature_return_types_0_and_1_are_incompatible:S(2202,1,"Call_signature_return_types_0_and_1_are_incompatible_2202","Call signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Construct_signature_return_types_0_and_1_are_incompatible:S(2203,1,"Construct_signature_return_types_0_and_1_are_incompatible_2203","Construct signature return types '{0}' and '{1}' are incompatible.",void 0,!0),Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:S(2204,1,"Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2204","Call signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1:S(2205,1,"Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1_2205","Construct signatures with no arguments have incompatible return types '{0}' and '{1}'.",void 0,!0),The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:S(2206,1,"The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement_2206","The 'type' modifier cannot be used on a named import when 'import type' is used on its import statement."),The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement:S(2207,1,"The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement_2207","The 'type' modifier cannot be used on a named export when 'export type' is used on its export statement."),This_type_parameter_might_need_an_extends_0_constraint:S(2208,1,"This_type_parameter_might_need_an_extends_0_constraint_2208","This type parameter might need an `extends {0}` constraint."),The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:S(2209,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_roo_2209","The project root is ambiguous, but is required to resolve export map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:S(2210,1,"The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_roo_2210","The project root is ambiguous, but is required to resolve import map entry '{0}' in file '{1}'. Supply the `rootDir` compiler option to disambiguate."),Add_extends_constraint:S(2211,3,"Add_extends_constraint_2211","Add `extends` constraint."),Add_extends_constraint_to_all_type_parameters:S(2212,3,"Add_extends_constraint_to_all_type_parameters_2212","Add `extends` constraint to all type parameters"),Duplicate_identifier_0:S(2300,1,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:S(2301,1,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:S(2302,1,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:S(2303,1,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:S(2304,1,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:S(2305,1,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:S(2306,1,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0_or_its_corresponding_type_declarations:S(2307,1,"Cannot_find_module_0_or_its_corresponding_type_declarations_2307","Cannot find module '{0}' or its corresponding type declarations."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:S(2308,1,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:S(2309,1,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:S(2310,1,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function:S(2311,1,"Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function_2311","Cannot find name '{0}'. Did you mean to write this in an async function?"),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:S(2312,1,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:S(2313,1,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:S(2314,1,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:S(2315,1,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:S(2316,1,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:S(2317,1,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:S(2318,1,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:S(2319,1,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:S(2320,1,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:S(2321,1,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:S(2322,1,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:S(2323,1,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:S(2324,1,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:S(2325,1,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:S(2326,1,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:S(2327,1,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:S(2328,1,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_for_type_0_is_missing_in_type_1:S(2329,1,"Index_signature_for_type_0_is_missing_in_type_1_2329","Index signature for type '{0}' is missing in type '{1}'."),_0_and_1_index_signatures_are_incompatible:S(2330,1,"_0_and_1_index_signatures_are_incompatible_2330","'{0}' and '{1}' index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:S(2331,1,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:S(2332,1,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:S(2333,1,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:S(2334,1,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:S(2335,1,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:S(2336,1,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:S(2337,1,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:S(2338,1,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:S(2339,1,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:S(2340,1,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:S(2341,1,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0:S(2343,1,"This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_ve_2343","This syntax requires an imported helper named '{1}' which does not exist in '{0}'. Consider upgrading your version of '{0}'."),Type_0_does_not_satisfy_the_constraint_1:S(2344,1,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:S(2345,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Untyped_function_calls_may_not_accept_type_arguments:S(2347,1,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:S(2348,1,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),This_expression_is_not_callable:S(2349,1,"This_expression_is_not_callable_2349","This expression is not callable."),Only_a_void_function_can_be_called_with_the_new_keyword:S(2350,1,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),This_expression_is_not_constructable:S(2351,1,"This_expression_is_not_constructable_2351","This expression is not constructable."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:S(2352,1,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:S(2353,1,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:S(2354,1,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value:S(2355,1,"A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'undefined', 'void', nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:S(2356,1,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:S(2357,1,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:S(2358,1,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method:S(2359,1,"The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_2359","The right-hand side of an 'instanceof' expression must be either of type 'any', a class, function, or other type assignable to the 'Function' interface type, or an object type with a 'Symbol.hasInstance' method."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:S(2362,1,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:S(2363,1,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:S(2364,1,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:S(2365,1,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:S(2366,1,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap:S(2367,1,"This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap_2367","This comparison appears to be unintentional because the types '{0}' and '{1}' have no overlap."),Type_parameter_name_cannot_be_0:S(2368,1,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:S(2369,1,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:S(2370,1,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:S(2371,1,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_reference_itself:S(2372,1,"Parameter_0_cannot_reference_itself_2372","Parameter '{0}' cannot reference itself."),Parameter_0_cannot_reference_identifier_1_declared_after_it:S(2373,1,"Parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_index_signature_for_type_0:S(2374,1,"Duplicate_index_signature_for_type_0_2374","Duplicate index signature for type '{0}'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:S(2375,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2375","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers:S(2376,1,"A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_2376","A 'super' call must be the first statement in the constructor to refer to 'super' or 'this' when a derived class contains initialized properties, parameter properties, or private identifiers."),Constructors_for_derived_classes_must_contain_a_super_call:S(2377,1,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:S(2378,1,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties:S(2379,1,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_tr_2379","Argument of type '{0}' is not assignable to parameter of type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the types of the target's properties."),Overload_signatures_must_all_be_exported_or_non_exported:S(2383,1,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:S(2384,1,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:S(2385,1,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:S(2386,1,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:S(2387,1,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:S(2388,1,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:S(2389,1,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:S(2390,1,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:S(2391,1,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:S(2392,1,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:S(2393,1,"Duplicate_function_implementation_2393","Duplicate function implementation."),This_overload_signature_is_not_compatible_with_its_implementation_signature:S(2394,1,"This_overload_signature_is_not_compatible_with_its_implementation_signature_2394","This overload signature is not compatible with its implementation signature."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:S(2395,1,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:S(2396,1,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:S(2397,1,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),constructor_cannot_be_used_as_a_parameter_property_name:S(2398,1,"constructor_cannot_be_used_as_a_parameter_property_name_2398","'constructor' cannot be used as a parameter property name."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:S(2399,1,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:S(2400,1,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers:S(2401,1,"A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_in_2401","A 'super' call must be a root-level statement within a constructor of a derived class that contains initialized properties, parameter properties, or private identifiers."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:S(2402,1,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:S(2403,1,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:S(2404,1,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:S(2405,1,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:S(2406,1,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:S(2407,1,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:S(2408,1,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:S(2409,1,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:S(2410,1,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target:S(2412,1,"Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefi_2412","Type '{0}' is not assignable to type '{1}' with 'exactOptionalPropertyTypes: true'. Consider adding 'undefined' to the type of the target."),Property_0_of_type_1_is_not_assignable_to_2_index_type_3:S(2411,1,"Property_0_of_type_1_is_not_assignable_to_2_index_type_3_2411","Property '{0}' of type '{1}' is not assignable to '{2}' index type '{3}'."),_0_index_type_1_is_not_assignable_to_2_index_type_3:S(2413,1,"_0_index_type_1_is_not_assignable_to_2_index_type_3_2413","'{0}' index type '{1}' is not assignable to '{2}' index type '{3}'."),Class_name_cannot_be_0:S(2414,1,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:S(2415,1,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:S(2416,1,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:S(2417,1,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:S(2418,1,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Types_of_construct_signatures_are_incompatible:S(2419,1,"Types_of_construct_signatures_are_incompatible_2419","Types of construct signatures are incompatible."),Class_0_incorrectly_implements_interface_1:S(2420,1,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:S(2422,1,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:S(2423,1,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:S(2425,1,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:S(2426,1,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:S(2427,1,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:S(2428,1,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:S(2430,1,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:S(2431,1,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:S(2432,1,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:S(2433,1,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:S(2434,1,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:S(2435,1,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:S(2436,1,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:S(2437,1,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:S(2438,1,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:S(2439,1,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:S(2440,1,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:S(2441,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:S(2442,1,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:S(2443,1,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:S(2444,1,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:S(2445,1,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2:S(2446,1,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_cl_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'. This is an instance of class '{2}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:S(2447,1,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:S(2448,1,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:S(2449,1,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:S(2450,1,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:S(2451,1,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:S(2452,1,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),Variable_0_is_used_before_being_assigned:S(2454,1,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_alias_0_circularly_references_itself:S(2456,1,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:S(2457,1,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:S(2458,1,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Module_0_declares_1_locally_but_it_is_not_exported:S(2459,1,"Module_0_declares_1_locally_but_it_is_not_exported_2459","Module '{0}' declares '{1}' locally, but it is not exported."),Module_0_declares_1_locally_but_it_is_exported_as_2:S(2460,1,"Module_0_declares_1_locally_but_it_is_exported_as_2_2460","Module '{0}' declares '{1}' locally, but it is exported as '{2}'."),Type_0_is_not_an_array_type:S(2461,1,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:S(2462,1,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:S(2463,1,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:S(2464,1,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:S(2465,1,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:S(2466,1,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:S(2467,1,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:S(2468,1,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:S(2469,1,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:S(2472,1,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:S(2473,1,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),const_enum_member_initializers_must_be_constant_expressions:S(2474,1,"const_enum_member_initializers_must_be_constant_expressions_2474","const enum member initializers must be constant expressions."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:S(2475,1,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:S(2476,1,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:S(2477,1,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:S(2478,1,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:S(2480,1,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:S(2481,1,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:S(2483,1,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:S(2484,1,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:S(2487,1,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:S(2488,1,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:S(2489,1,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property:S(2490,1,"The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the '{0}()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:S(2491,1,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:S(2492,1,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_of_length_1_has_no_element_at_index_2:S(2493,1,"Tuple_type_0_of_length_1_has_no_element_at_index_2_2493","Tuple type '{0}' of length '{1}' has no element at index '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:S(2494,1,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:S(2495,1,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:S(2496,1,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export:S(2497,1,"This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_2497","This module can only be referenced with ECMAScript imports/exports by turning on the '{0}' flag and referencing its default export."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:S(2498,1,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:S(2499,1,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:S(2500,1,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:S(2501,1,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:S(2502,1,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:S(2503,1,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:S(2504,1,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:S(2505,1,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:S(2506,1,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:S(2507,1,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:S(2508,1,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:S(2509,1,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:S(2510,1,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:S(2511,1,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:S(2512,1,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:S(2513,1,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),A_tuple_type_cannot_be_indexed_with_a_negative_value:S(2514,1,"A_tuple_type_cannot_be_indexed_with_a_negative_value_2514","A tuple type cannot be indexed with a negative value."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:S(2515,1,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:S(2516,1,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:S(2517,1,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:S(2518,1,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:S(2519,1,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:S(2520,1,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:S(2522,1,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:S(2523,1,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:S(2524,1,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:S(2525,1,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:S(2526,1,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:S(2527,1,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:S(2528,1,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:S(2529,1,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:S(2530,1,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:S(2531,1,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:S(2532,1,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:S(2533,1,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:S(2534,1,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Type_0_cannot_be_used_to_index_type_1:S(2536,1,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:S(2537,1,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:S(2538,1,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:S(2539,1,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:S(2540,1,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),Index_signature_in_type_0_only_permits_reading:S(2542,1,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:S(2543,1,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:S(2544,1,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:S(2545,1,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:S(2547,1,"The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_pro_2547","The type returned by the '{0}()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:S(2548,1,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:S(2549,1,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later:S(2550,1,"Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_c_2550","Property '{0}' does not exist on type '{1}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{2}' or later."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:S(2551,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:S(2552,1,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:S(2553,1,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:S(2554,1,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:S(2555,1,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter:S(2556,1,"A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter_2556","A spread argument must either have a tuple type or be passed to a rest parameter."),Expected_0_type_arguments_but_got_1:S(2558,1,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:S(2559,1,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:S(2560,1,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:S(2561,1,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:S(2562,1,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:S(2563,1,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:S(2564,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:S(2565,1,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:S(2566,1,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:S(2567,1,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Property_0_may_not_exist_on_type_1_Did_you_mean_2:S(2568,1,"Property_0_may_not_exist_on_type_1_Did_you_mean_2_2568","Property '{0}' may not exist on type '{1}'. Did you mean '{2}'?"),Could_not_find_name_0_Did_you_mean_1:S(2570,1,"Could_not_find_name_0_Did_you_mean_1_2570","Could not find name '{0}'. Did you mean '{1}'?"),Object_is_of_type_unknown:S(2571,1,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),A_rest_element_type_must_be_an_array_type:S(2574,1,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:S(2575,1,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead:S(2576,1,"Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead_2576","Property '{0}' does not exist on type '{1}'. Did you mean to access the static member '{2}' instead?"),Return_type_annotation_circularly_references_itself:S(2577,1,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Unused_ts_expect_error_directive:S(2578,1,"Unused_ts_expect_error_directive_2578","Unused '@ts-expect-error' directive."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode:S(2580,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery:S(2581,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha:S(2582,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha`."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later:S(2583,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to '{1}' or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:S(2584,1,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the 'lib' compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:S(2585,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the 'lib' compiler option to es2015 or later."),Cannot_assign_to_0_because_it_is_a_constant:S(2588,1,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),Type_instantiation_is_excessively_deep_and_possibly_infinite:S(2589,1,"Type_instantiation_is_excessively_deep_and_possibly_infinite_2589","Type instantiation is excessively deep and possibly infinite."),Expression_produces_a_union_type_that_is_too_complex_to_represent:S(2590,1,"Expression_produces_a_union_type_that_is_too_complex_to_represent_2590","Expression produces a union type that is too complex to represent."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:S(2591,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashno_2591","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i --save-dev @types/node` and then add 'node' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:S(2592,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slash_2592","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i --save-dev @types/jquery` and then add 'jquery' to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:S(2593,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_type_2593","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i --save-dev @types/jest` or `npm i --save-dev @types/mocha` and then add 'jest' or 'mocha' to the types field in your tsconfig."),This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag:S(2594,1,"This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag_2594","This module is declared with 'export =', and can only be used with a default import when using the '{0}' flag."),_0_can_only_be_imported_by_using_a_default_import:S(2595,1,"_0_can_only_be_imported_by_using_a_default_import_2595","'{0}' can only be imported by using a default import."),_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:S(2596,1,"_0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import_2596","'{0}' can only be imported by turning on the 'esModuleInterop' flag and using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:S(2597,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import_2597","'{0}' can only be imported by using a 'require' call or by using a default import."),_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:S(2598,1,"_0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using__2598","'{0}' can only be imported by using a 'require' call or by turning on the 'esModuleInterop' flag and using a default import."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:S(2602,1,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:S(2603,1,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:S(2604,1,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:S(2606,1,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:S(2607,1,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:S(2608,1,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:S(2609,1,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:S(2610,1,"_0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property_2610","'{0}' is defined as an accessor in class '{1}', but is overridden here in '{2}' as an instance property."),_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor:S(2611,1,"_0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor_2611","'{0}' is defined as a property in class '{1}', but is overridden here in '{2}' as an accessor."),Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration:S(2612,1,"Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_2612","Property '{0}' will overwrite the base property in '{1}'. If this is intentional, add an initializer. Otherwise, add a 'declare' modifier or remove the redundant declaration."),Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead:S(2613,1,"Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead_2613","Module '{0}' has no default export. Did you mean to use 'import { {1} } from {0}' instead?"),Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead:S(2614,1,"Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead_2614","Module '{0}' has no exported member '{1}'. Did you mean to use 'import {1} from {0}' instead?"),Type_of_property_0_circularly_references_itself_in_mapped_type_1:S(2615,1,"Type_of_property_0_circularly_references_itself_in_mapped_type_1_2615","Type of property '{0}' circularly references itself in mapped type '{1}'."),_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:S(2616,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import_2616","'{0}' can only be imported by using 'import {1} = require({2})' or a default import."),_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import:S(2617,1,"_0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_us_2617","'{0}' can only be imported by using 'import {1} = require({2})' or by turning on the 'esModuleInterop' flag and using a default import."),Source_has_0_element_s_but_target_requires_1:S(2618,1,"Source_has_0_element_s_but_target_requires_1_2618","Source has {0} element(s) but target requires {1}."),Source_has_0_element_s_but_target_allows_only_1:S(2619,1,"Source_has_0_element_s_but_target_allows_only_1_2619","Source has {0} element(s) but target allows only {1}."),Target_requires_0_element_s_but_source_may_have_fewer:S(2620,1,"Target_requires_0_element_s_but_source_may_have_fewer_2620","Target requires {0} element(s) but source may have fewer."),Target_allows_only_0_element_s_but_source_may_have_more:S(2621,1,"Target_allows_only_0_element_s_but_source_may_have_more_2621","Target allows only {0} element(s) but source may have more."),Source_provides_no_match_for_required_element_at_position_0_in_target:S(2623,1,"Source_provides_no_match_for_required_element_at_position_0_in_target_2623","Source provides no match for required element at position {0} in target."),Source_provides_no_match_for_variadic_element_at_position_0_in_target:S(2624,1,"Source_provides_no_match_for_variadic_element_at_position_0_in_target_2624","Source provides no match for variadic element at position {0} in target."),Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target:S(2625,1,"Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target_2625","Variadic element at position {0} in source does not match element at position {1} in target."),Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target:S(2626,1,"Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target_2626","Type at position {0} in source is not compatible with type at position {1} in target."),Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target:S(2627,1,"Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target_2627","Type at positions {0} through {1} in source is not compatible with type at position {2} in target."),Cannot_assign_to_0_because_it_is_an_enum:S(2628,1,"Cannot_assign_to_0_because_it_is_an_enum_2628","Cannot assign to '{0}' because it is an enum."),Cannot_assign_to_0_because_it_is_a_class:S(2629,1,"Cannot_assign_to_0_because_it_is_a_class_2629","Cannot assign to '{0}' because it is a class."),Cannot_assign_to_0_because_it_is_a_function:S(2630,1,"Cannot_assign_to_0_because_it_is_a_function_2630","Cannot assign to '{0}' because it is a function."),Cannot_assign_to_0_because_it_is_a_namespace:S(2631,1,"Cannot_assign_to_0_because_it_is_a_namespace_2631","Cannot assign to '{0}' because it is a namespace."),Cannot_assign_to_0_because_it_is_an_import:S(2632,1,"Cannot_assign_to_0_because_it_is_an_import_2632","Cannot assign to '{0}' because it is an import."),JSX_property_access_expressions_cannot_include_JSX_namespace_names:S(2633,1,"JSX_property_access_expressions_cannot_include_JSX_namespace_names_2633","JSX property access expressions cannot include JSX namespace names"),_0_index_signatures_are_incompatible:S(2634,1,"_0_index_signatures_are_incompatible_2634","'{0}' index signatures are incompatible."),Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable:S(2635,1,"Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable_2635","Type '{0}' has no signatures for which the type argument list is applicable."),Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation:S(2636,1,"Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation_2636","Type '{0}' is not assignable to type '{1}' as implied by variance annotation."),Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types:S(2637,1,"Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_t_2637","Variance annotations are only supported in type aliases for object, function, constructor, and mapped types."),Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator:S(2638,1,"Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operato_2638","Type '{0}' may represent a primitive value, which is not permitted as the right operand of the 'in' operator."),React_components_cannot_include_JSX_namespace_names:S(2639,1,"React_components_cannot_include_JSX_namespace_names_2639","React components cannot include JSX namespace names"),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:S(2649,1,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:S(2651,1,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:S(2652,1,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:S(2653,1,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),JSX_expressions_must_have_one_parent_element:S(2657,1,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:S(2658,1,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:S(2659,1,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:S(2660,1,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:S(2661,1,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:S(2662,1,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:S(2663,1,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:S(2664,1,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:S(2665,1,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:S(2666,1,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:S(2667,1,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:S(2668,1,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:S(2669,1,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:S(2670,1,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:S(2671,1,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:S(2672,1,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:S(2673,1,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:S(2674,1,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:S(2675,1,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:S(2676,1,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:S(2677,1,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:S(2678,1,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:S(2679,1,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:S(2680,1,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:S(2681,1,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:S(2683,1,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:S(2684,1,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:S(2685,1,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:S(2686,1,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:S(2687,1,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:S(2688,1,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:S(2689,1,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0:S(2690,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0_2690","'{0}' only refers to a type, but is being used as a value here. Did you mean to use '{1} in {0}'?"),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:S(2692,1,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:S(2693,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:S(2694,1,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:S(2695,1,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",!0),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:S(2696,1,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:S(2697,1,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),Spread_types_may_only_be_created_from_object_types:S(2698,1,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:S(2699,1,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:S(2700,1,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:S(2701,1,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:S(2702,1,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:S(2703,1,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a 'delete' operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:S(2704,1,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a 'delete' operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:S(2705,1,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Required_type_parameters_may_not_follow_optional_type_parameters:S(2706,1,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:S(2707,1,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:S(2708,1,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:S(2709,1,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:S(2710,1,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:S(2711,1,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your '--lib' option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:S(2712,1,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your '--lib' option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:S(2713,1,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713",`Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}["{1}"]'?`),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:S(2714,1,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:S(2715,1,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:S(2716,1,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:S(2717,1,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_property_0:S(2718,1,"Duplicate_property_0_2718","Duplicate property '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:S(2719,1,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:S(2720,1,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:S(2721,1,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:S(2722,1,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:S(2723,1,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),_0_has_no_exported_member_named_1_Did_you_mean_2:S(2724,1,"_0_has_no_exported_member_named_1_Did_you_mean_2_2724","'{0}' has no exported member named '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:S(2725,1,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:S(2726,1,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:S(2727,1,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:S(2728,3,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:S(2729,1,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:S(2730,1,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:S(2731,1,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:S(2732,1,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension."),Property_0_was_also_declared_here:S(2733,1,"Property_0_was_also_declared_here_2733","Property '{0}' was also declared here."),Are_you_missing_a_semicolon:S(2734,1,"Are_you_missing_a_semicolon_2734","Are you missing a semicolon?"),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:S(2735,1,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:S(2736,1,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ES2020:S(2737,1,"BigInt_literals_are_not_available_when_targeting_lower_than_ES2020_2737","BigInt literals are not available when targeting lower than ES2020."),An_outer_value_of_this_is_shadowed_by_this_container:S(2738,3,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:S(2739,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:S(2740,1,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:S(2741,1,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:S(2742,1,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments:S(2743,1,"No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments_2743","No overload expects {0} type arguments, but overloads do exist that expect either {1} or {2} type arguments."),Type_parameter_defaults_can_only_reference_previously_declared_type_parameters:S(2744,1,"Type_parameter_defaults_can_only_reference_previously_declared_type_parameters_2744","Type parameter defaults can only reference previously declared type parameters."),This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided:S(2745,1,"This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_pr_2745","This JSX tag's '{0}' prop expects type '{1}' which requires multiple children, but only a single child was provided."),This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided:S(2746,1,"This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided_2746","This JSX tag's '{0}' prop expects a single child of type '{1}', but multiple children were provided."),_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2:S(2747,1,"_0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_t_2747","'{0}' components don't accept text as child elements. Text in JSX has the type 'string', but the expected type of '{1}' is '{2}'."),Cannot_access_ambient_const_enums_when_0_is_enabled:S(2748,1,"Cannot_access_ambient_const_enums_when_0_is_enabled_2748","Cannot access ambient const enums when '{0}' is enabled."),_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0:S(2749,1,"_0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0_2749","'{0}' refers to a value, but is being used as a type here. Did you mean 'typeof {0}'?"),The_implementation_signature_is_declared_here:S(2750,1,"The_implementation_signature_is_declared_here_2750","The implementation signature is declared here."),Circularity_originates_in_type_at_this_location:S(2751,1,"Circularity_originates_in_type_at_this_location_2751","Circularity originates in type at this location."),The_first_export_default_is_here:S(2752,1,"The_first_export_default_is_here_2752","The first export default is here."),Another_export_default_is_here:S(2753,1,"Another_export_default_is_here_2753","Another export default is here."),super_may_not_use_type_arguments:S(2754,1,"super_may_not_use_type_arguments_2754","'super' may not use type arguments."),No_constituent_of_type_0_is_callable:S(2755,1,"No_constituent_of_type_0_is_callable_2755","No constituent of type '{0}' is callable."),Not_all_constituents_of_type_0_are_callable:S(2756,1,"Not_all_constituents_of_type_0_are_callable_2756","Not all constituents of type '{0}' are callable."),Type_0_has_no_call_signatures:S(2757,1,"Type_0_has_no_call_signatures_2757","Type '{0}' has no call signatures."),Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:S(2758,1,"Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_2758","Each member of the union type '{0}' has signatures, but none of those signatures are compatible with each other."),No_constituent_of_type_0_is_constructable:S(2759,1,"No_constituent_of_type_0_is_constructable_2759","No constituent of type '{0}' is constructable."),Not_all_constituents_of_type_0_are_constructable:S(2760,1,"Not_all_constituents_of_type_0_are_constructable_2760","Not all constituents of type '{0}' are constructable."),Type_0_has_no_construct_signatures:S(2761,1,"Type_0_has_no_construct_signatures_2761","Type '{0}' has no construct signatures."),Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other:S(2762,1,"Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_2762","Each member of the union type '{0}' has construct signatures, but none of those signatures are compatible with each other."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:S(2763,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_s_2763","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but for-of will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:S(2764,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_al_2764","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array spread will always send '{0}'."),Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:S(2765,1,"Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring__2765","Cannot iterate value because the 'next' method of its iterator expects type '{1}', but array destructuring will always send '{0}'."),Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:S(2766,1,"Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_co_2766","Cannot delegate iteration to value because the 'next' method of its iterator expects type '{1}', but the containing generator will always send '{0}'."),The_0_property_of_an_iterator_must_be_a_method:S(2767,1,"The_0_property_of_an_iterator_must_be_a_method_2767","The '{0}' property of an iterator must be a method."),The_0_property_of_an_async_iterator_must_be_a_method:S(2768,1,"The_0_property_of_an_async_iterator_must_be_a_method_2768","The '{0}' property of an async iterator must be a method."),No_overload_matches_this_call:S(2769,1,"No_overload_matches_this_call_2769","No overload matches this call."),The_last_overload_gave_the_following_error:S(2770,1,"The_last_overload_gave_the_following_error_2770","The last overload gave the following error."),The_last_overload_is_declared_here:S(2771,1,"The_last_overload_is_declared_here_2771","The last overload is declared here."),Overload_0_of_1_2_gave_the_following_error:S(2772,1,"Overload_0_of_1_2_gave_the_following_error_2772","Overload {0} of {1}, '{2}', gave the following error."),Did_you_forget_to_use_await:S(2773,1,"Did_you_forget_to_use_await_2773","Did you forget to use 'await'?"),This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead:S(2774,1,"This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_2774","This condition will always return true since this function is always defined. Did you mean to call it instead?"),Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation:S(2775,1,"Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation_2775","Assertions require every name in the call target to be declared with an explicit type annotation."),Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name:S(2776,1,"Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name_2776","Assertions require the call target to be an identifier or qualified name."),The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access:S(2777,1,"The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access_2777","The operand of an increment or decrement operator may not be an optional property access."),The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:S(2778,1,"The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access_2778","The target of an object rest assignment may not be an optional property access."),The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access:S(2779,1,"The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access_2779","The left-hand side of an assignment expression may not be an optional property access."),The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access:S(2780,1,"The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access_2780","The left-hand side of a 'for...in' statement may not be an optional property access."),The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access:S(2781,1,"The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access_2781","The left-hand side of a 'for...of' statement may not be an optional property access."),_0_needs_an_explicit_type_annotation:S(2782,3,"_0_needs_an_explicit_type_annotation_2782","'{0}' needs an explicit type annotation."),_0_is_specified_more_than_once_so_this_usage_will_be_overwritten:S(2783,1,"_0_is_specified_more_than_once_so_this_usage_will_be_overwritten_2783","'{0}' is specified more than once, so this usage will be overwritten."),get_and_set_accessors_cannot_declare_this_parameters:S(2784,1,"get_and_set_accessors_cannot_declare_this_parameters_2784","'get' and 'set' accessors cannot declare 'this' parameters."),This_spread_always_overwrites_this_property:S(2785,1,"This_spread_always_overwrites_this_property_2785","This spread always overwrites this property."),_0_cannot_be_used_as_a_JSX_component:S(2786,1,"_0_cannot_be_used_as_a_JSX_component_2786","'{0}' cannot be used as a JSX component."),Its_return_type_0_is_not_a_valid_JSX_element:S(2787,1,"Its_return_type_0_is_not_a_valid_JSX_element_2787","Its return type '{0}' is not a valid JSX element."),Its_instance_type_0_is_not_a_valid_JSX_element:S(2788,1,"Its_instance_type_0_is_not_a_valid_JSX_element_2788","Its instance type '{0}' is not a valid JSX element."),Its_element_type_0_is_not_a_valid_JSX_element:S(2789,1,"Its_element_type_0_is_not_a_valid_JSX_element_2789","Its element type '{0}' is not a valid JSX element."),The_operand_of_a_delete_operator_must_be_optional:S(2790,1,"The_operand_of_a_delete_operator_must_be_optional_2790","The operand of a 'delete' operator must be optional."),Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later:S(2791,1,"Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_lat_2791","Exponentiation cannot be performed on 'bigint' values unless the 'target' option is set to 'es2016' or later."),Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:S(2792,1,"Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_t_2792","Cannot find module '{0}'. Did you mean to set the 'moduleResolution' option to 'nodenext', or to add aliases to the 'paths' option?"),The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible:S(2793,1,"The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_2793","The call would have succeeded against this implementation, but implementation signatures of overloads are not externally visible."),Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:S(2794,1,"Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise_2794","Expected {0} arguments, but got {1}. Did you forget to include 'void' in your type argument to 'Promise'?"),The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types:S(2795,1,"The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types_2795","The 'intrinsic' keyword can only be used to declare compiler provided intrinsic types."),It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked:S(2796,1,"It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tag_2796","It is likely that you are missing a comma to separate these two template expressions. They form a tagged template expression which cannot be invoked."),A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract:S(2797,1,"A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_2797","A mixin class that extends from a type variable containing an abstract construct signature must also be declared 'abstract'."),The_declaration_was_marked_as_deprecated_here:S(2798,1,"The_declaration_was_marked_as_deprecated_here_2798","The declaration was marked as deprecated here."),Type_produces_a_tuple_type_that_is_too_large_to_represent:S(2799,1,"Type_produces_a_tuple_type_that_is_too_large_to_represent_2799","Type produces a tuple type that is too large to represent."),Expression_produces_a_tuple_type_that_is_too_large_to_represent:S(2800,1,"Expression_produces_a_tuple_type_that_is_too_large_to_represent_2800","Expression produces a tuple type that is too large to represent."),This_condition_will_always_return_true_since_this_0_is_always_defined:S(2801,1,"This_condition_will_always_return_true_since_this_0_is_always_defined_2801","This condition will always return true since this '{0}' is always defined."),Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher:S(2802,1,"Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es201_2802","Type '{0}' can only be iterated through when using the '--downlevelIteration' flag or with a '--target' of 'es2015' or higher."),Cannot_assign_to_private_method_0_Private_methods_are_not_writable:S(2803,1,"Cannot_assign_to_private_method_0_Private_methods_are_not_writable_2803","Cannot assign to private method '{0}'. Private methods are not writable."),Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name:S(2804,1,"Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name_2804","Duplicate identifier '{0}'. Static and instance elements cannot share the same private name."),Private_accessor_was_defined_without_a_getter:S(2806,1,"Private_accessor_was_defined_without_a_getter_2806","Private accessor was defined without a getter."),This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0:S(2807,1,"This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_o_2807","This syntax requires an imported helper named '{1}' with {2} parameters, which is not compatible with the one in '{0}'. Consider upgrading your version of '{0}'."),A_get_accessor_must_be_at_least_as_accessible_as_the_setter:S(2808,1,"A_get_accessor_must_be_at_least_as_accessible_as_the_setter_2808","A get accessor must be at least as accessible as the setter"),Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses:S(2809,1,"Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_d_2809","Declaration or statement expected. This '=' follows a block of statements, so if you intended to write a destructuring assignment, you might need to wrap the whole assignment in parentheses."),Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments:S(2810,1,"Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_2810","Expected 1 argument, but got 0. 'new Promise()' needs a JSDoc hint to produce a 'resolve' that can be called without arguments."),Initializer_for_property_0:S(2811,1,"Initializer_for_property_0_2811","Initializer for property '{0}'"),Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:S(2812,1,"Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom_2812","Property '{0}' does not exist on type '{1}'. Try changing the 'lib' compiler option to include 'dom'."),Class_declaration_cannot_implement_overload_list_for_0:S(2813,1,"Class_declaration_cannot_implement_overload_list_for_0_2813","Class declaration cannot implement overload list for '{0}'."),Function_with_bodies_can_only_merge_with_classes_that_are_ambient:S(2814,1,"Function_with_bodies_can_only_merge_with_classes_that_are_ambient_2814","Function with bodies can only merge with classes that are ambient."),arguments_cannot_be_referenced_in_property_initializers:S(2815,1,"arguments_cannot_be_referenced_in_property_initializers_2815","'arguments' cannot be referenced in property initializers."),Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class:S(2816,1,"Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class_2816","Cannot use 'this' in a static property initializer of a decorated class."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block:S(2817,1,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_a_class_static_block_2817","Property '{0}' has no initializer and is not definitely assigned in a class static block."),Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers:S(2818,1,"Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializer_2818","Duplicate identifier '{0}'. Compiler reserves name '{1}' when emitting 'super' references in static initializers."),Namespace_name_cannot_be_0:S(2819,1,"Namespace_name_cannot_be_0_2819","Namespace name cannot be '{0}'."),Type_0_is_not_assignable_to_type_1_Did_you_mean_2:S(2820,1,"Type_0_is_not_assignable_to_type_1_Did_you_mean_2_2820","Type '{0}' is not assignable to type '{1}'. Did you mean '{2}'?"),Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:S(2821,1,"Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2821","Import assertions are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Import_assertions_cannot_be_used_with_type_only_imports_or_exports:S(2822,1,"Import_assertions_cannot_be_used_with_type_only_imports_or_exports_2822","Import assertions cannot be used with type-only imports or exports."),Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:S(2823,1,"Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve_2823","Import attributes are only supported when the '--module' option is set to 'esnext', 'nodenext', or 'preserve'."),Cannot_find_namespace_0_Did_you_mean_1:S(2833,1,"Cannot_find_namespace_0_Did_you_mean_1_2833","Cannot find namespace '{0}'. Did you mean '{1}'?"),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path:S(2834,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2834","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path."),Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0:S(2835,1,"Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_n_2835","Relative import paths need explicit file extensions in ECMAScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Did you mean '{0}'?"),Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:S(2836,1,"Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2836","Import assertions are not allowed on statements that compile to CommonJS 'require' calls."),Import_assertion_values_must_be_string_literal_expressions:S(2837,1,"Import_assertion_values_must_be_string_literal_expressions_2837","Import assertion values must be string literal expressions."),All_declarations_of_0_must_have_identical_constraints:S(2838,1,"All_declarations_of_0_must_have_identical_constraints_2838","All declarations of '{0}' must have identical constraints."),This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value:S(2839,1,"This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value_2839","This condition will always return '{0}' since JavaScript compares objects by reference, not value."),An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types:S(2840,1,"An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types_2840","An interface cannot extend a primitive type like '{0}'. It can only extend other named object types."),_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation:S(2842,1,"_0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation_2842","'{0}' is an unused renaming of '{1}'. Did you intend to use it as a type annotation?"),We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here:S(2843,1,"We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here_2843","We can only write a type for '{0}' by adding a type for the entire parameter here."),Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:S(2844,1,"Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2844","Type of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),This_condition_will_always_return_0:S(2845,1,"This_condition_will_always_return_0_2845","This condition will always return '{0}'."),A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead:S(2846,1,"A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_f_2846","A declaration file cannot be imported without 'import type'. Did you mean to import an implementation file '{0}' instead?"),The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression:S(2848,1,"The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression_2848","The right-hand side of an 'instanceof' expression must not be an instantiation expression."),Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1:S(2849,1,"Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1_2849","Target signature provides too few arguments. Expected {0} or more, but got {1}."),The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined:S(2850,1,"The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_n_2850","The initializer of a 'using' declaration must be either an object with a '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined:S(2851,1,"The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_2851","The initializer of an 'await using' declaration must be either an object with a '[Symbol.asyncDispose]()' or '[Symbol.dispose]()' method, or be 'null' or 'undefined'."),await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:S(2852,1,"await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules_2852","'await using' statements are only allowed within async functions and at the top levels of modules."),await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:S(2853,1,"await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_th_2853","'await using' statements are only allowed at the top level of a file when that file is a module, but this file has no imports or exports. Consider adding an empty 'export {}' to make this file a module."),Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:S(2854,1,"Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_sys_2854","Top-level 'await using' statements are only allowed when the 'module' option is set to 'es2022', 'esnext', 'system', 'node16', 'nodenext', or 'preserve', and the 'target' option is set to 'es2017' or higher."),Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super:S(2855,1,"Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super_2855","Class field '{0}' defined by the parent class is not accessible in the child class via super."),Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:S(2856,1,"Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls_2856","Import attributes are not allowed on statements that compile to CommonJS 'require' calls."),Import_attributes_cannot_be_used_with_type_only_imports_or_exports:S(2857,1,"Import_attributes_cannot_be_used_with_type_only_imports_or_exports_2857","Import attributes cannot be used with type-only imports or exports."),Import_attribute_values_must_be_string_literal_expressions:S(2858,1,"Import_attribute_values_must_be_string_literal_expressions_2858","Import attribute values must be string literal expressions."),Excessive_complexity_comparing_types_0_and_1:S(2859,1,"Excessive_complexity_comparing_types_0_and_1_2859","Excessive complexity comparing types '{0}' and '{1}'."),The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method:S(2860,1,"The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_2860","The left-hand side of an 'instanceof' expression must be assignable to the first argument of the right-hand side's '[Symbol.hasInstance]' method."),An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression:S(2861,1,"An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_han_2861","An object's '[Symbol.hasInstance]' method must return a boolean value for it to be used on the right-hand side of an 'instanceof' expression."),Type_0_is_generic_and_can_only_be_indexed_for_reading:S(2862,1,"Type_0_is_generic_and_can_only_be_indexed_for_reading_2862","Type '{0}' is generic and can only be indexed for reading."),A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values:S(2863,1,"A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values_2863","A class cannot extend a primitive type like '{0}'. Classes can only extend constructable values."),A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types:S(2864,1,"A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types_2864","A class cannot implement a primitive type like '{0}'. It can only implement other named object types."),Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:S(2865,1,"Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_2865","Import '{0}' conflicts with local value, so must be declared with a type-only import when 'isolatedModules' is enabled."),Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled:S(2866,1,"Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_w_2866","Import '{0}' conflicts with global value used in this file, so must be declared with a type-only import when 'isolatedModules' is enabled."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun:S(2867,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2867","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun`."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:S(2868,1,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_2868","Cannot find name '{0}'. Do you need to install type definitions for Bun? Try `npm i --save-dev @types/bun` and then add 'bun' to the types field in your tsconfig."),Import_declaration_0_is_using_private_name_1:S(4e3,1,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:S(4002,1,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:S(4004,1,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:S(4006,1,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:S(4008,1,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:S(4010,1,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:S(4012,1,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:S(4014,1,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:S(4016,1,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:S(4019,1,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:S(4020,1,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_has_or_is_using_private_name_0:S(4021,1,"extends_clause_of_exported_class_has_or_is_using_private_name_0_4021","'extends' clause of exported class has or is using private name '{0}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:S(4022,1,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4023,1,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:S(4024,1,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:S(4025,1,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4026,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:S(4027,1,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:S(4028,1,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4029,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:S(4030,1,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:S(4031,1,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:S(4032,1,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:S(4033,1,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:S(4034,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:S(4035,1,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:S(4036,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:S(4037,1,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4038,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:S(4039,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:S(4040,1,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4041,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:S(4042,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:S(4043,1,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:S(4044,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:S(4045,1,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:S(4046,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:S(4047,1,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:S(4048,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:S(4049,1,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:S(4050,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:S(4051,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:S(4052,1,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:S(4053,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:S(4054,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:S(4055,1,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:S(4056,1,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:S(4057,1,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:S(4058,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:S(4059,1,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:S(4060,1,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4061,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:S(4062,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:S(4063,1,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:S(4064,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:S(4065,1,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:S(4066,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:S(4067,1,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4068,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:S(4069,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:S(4070,1,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4071,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:S(4072,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:S(4073,1,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:S(4074,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:S(4075,1,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4076,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:S(4077,1,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:S(4078,1,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:S(4081,1,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:S(4082,1,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:S(4083,1,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:S(4084,1,"Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2_4084","Exported type alias '{0}' has or is using private name '{1}' from module {2}."),Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1:S(4085,1,"Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1_4085","Extends clause for inferred type '{0}' has or is using private name '{1}'."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:S(4090,1,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:S(4091,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:S(4092,1,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:S(4094,1,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4095,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:S(4096,1,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:S(4097,1,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4098,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:S(4099,1,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:S(4100,1,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:S(4101,1,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:S(4102,1,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1:S(4103,1,"Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1_4103","Type parameter '{0}' of exported mapped object type is using private name '{1}'."),The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1:S(4104,1,"The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1_4104","The type '{0}' is 'readonly' and cannot be assigned to the mutable type '{1}'."),Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter:S(4105,1,"Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter_4105","Private or protected member '{0}' cannot be accessed on a type parameter."),Parameter_0_of_accessor_has_or_is_using_private_name_1:S(4106,1,"Parameter_0_of_accessor_has_or_is_using_private_name_1_4106","Parameter '{0}' of accessor has or is using private name '{1}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:S(4107,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2_4107","Parameter '{0}' of accessor has or is using name '{1}' from private module '{2}'."),Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:S(4108,1,"Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4108","Parameter '{0}' of accessor has or is using name '{1}' from external module '{2}' but cannot be named."),Type_arguments_for_0_circularly_reference_themselves:S(4109,1,"Type_arguments_for_0_circularly_reference_themselves_4109","Type arguments for '{0}' circularly reference themselves."),Tuple_type_arguments_circularly_reference_themselves:S(4110,1,"Tuple_type_arguments_circularly_reference_themselves_4110","Tuple type arguments circularly reference themselves."),Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0:S(4111,1,"Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0_4111","Property '{0}' comes from an index signature, so it must be accessed with ['{0}']."),This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class:S(4112,1,"This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another__4112","This member cannot have an 'override' modifier because its containing class '{0}' does not extend another class."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0:S(4113,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_4113","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0:S(4114,1,"This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0_4114","This member must have an 'override' modifier because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:S(4115,1,"This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0_4115","This parameter property must have an 'override' modifier because it overrides a member in base class '{0}'."),This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0:S(4116,1,"This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared__4116","This member must have an 'override' modifier because it overrides an abstract method that is declared in the base class '{0}'."),This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:S(4117,1,"This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you__4117","This member cannot have an 'override' modifier because it is not declared in the base class '{0}'. Did you mean '{1}'?"),The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized:S(4118,1,"The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized_4118","The type of this node cannot be serialized because its property '{0}' cannot be serialized."),This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:S(4119,1,"This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_4119","This member must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:S(4120,1,"This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_4120","This parameter property must have a JSDoc comment with an '@override' tag because it overrides a member in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:S(4121,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_4121","This member cannot have a JSDoc comment with an '@override' tag because its containing class '{0}' does not extend another class."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:S(4122,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4122","This member cannot have a JSDoc comment with an '@override' tag because it is not declared in the base class '{0}'."),This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:S(4123,1,"This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base__4123","This member cannot have a JSDoc comment with an 'override' tag because it is not declared in the base class '{0}'. Did you mean '{1}'?"),Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_with_npm_install_D_typescript_next:S(4124,1,"Compiler_option_0_of_value_1_is_unstable_Use_nightly_TypeScript_to_silence_this_error_Try_updating_w_4124","Compiler option '{0}' of value '{1}' is unstable. Use nightly TypeScript to silence this error. Try updating with 'npm install -D typescript@next'."),Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given:S(4125,1,"Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given_4125","Each declaration of '{0}.{1}' differs in its value, where '{2}' was expected but '{3}' was given."),One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value:S(4126,1,"One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value_4126","One value of '{0}.{1}' is the string '{2}', and the other is assumed to be an unknown numeric value."),The_current_host_does_not_support_the_0_option:S(5001,1,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:S(5009,1,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:S(5010,1,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:S(5012,1,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:S(5014,1,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:S(5023,1,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:S(5024,1,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Unknown_compiler_option_0_Did_you_mean_1:S(5025,1,"Unknown_compiler_option_0_Did_you_mean_1_5025","Unknown compiler option '{0}'. Did you mean '{1}'?"),Could_not_write_file_0_Colon_1:S(5033,1,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:S(5042,1,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:S(5047,1,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_cannot_be_specified_when_option_target_is_ES3:S(5048,1,"Option_0_cannot_be_specified_when_option_target_is_ES3_5048","Option '{0}' cannot be specified when option 'target' is 'ES3'."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:S(5051,1,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:S(5052,1,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:S(5053,1,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:S(5054,1,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:S(5055,1,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:S(5056,1,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:S(5057,1,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:S(5058,1,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:S(5059,1,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Pattern_0_can_have_at_most_one_Asterisk_character:S(5061,1,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character:S(5062,1,"Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:S(5063,1,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:S(5064,1,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:S(5065,1,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:S(5066,1,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:S(5067,1,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:S(5068,1,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:S(5069,1,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic:S(5070,1,"Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic_5070","Option '--resolveJsonModule' cannot be specified when 'moduleResolution' is set to 'classic'."),Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd:S(5071,1,"Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd_5071","Option '--resolveJsonModule' cannot be specified when 'module' is set to 'none', 'system', or 'umd'."),Unknown_build_option_0:S(5072,1,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:S(5073,1,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified:S(5074,1,"Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBui_5074","Option '--incremental' can only be specified using tsconfig, emitting to single file or when option '--tsBuildInfoFile' is specified."),_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2:S(5075,1,"_0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_5075","'{0}' is assignable to the constraint of type '{1}', but '{1}' could be instantiated with a different subtype of constraint '{2}'."),_0_and_1_operations_cannot_be_mixed_without_parentheses:S(5076,1,"_0_and_1_operations_cannot_be_mixed_without_parentheses_5076","'{0}' and '{1}' operations cannot be mixed without parentheses."),Unknown_build_option_0_Did_you_mean_1:S(5077,1,"Unknown_build_option_0_Did_you_mean_1_5077","Unknown build option '{0}'. Did you mean '{1}'?"),Unknown_watch_option_0:S(5078,1,"Unknown_watch_option_0_5078","Unknown watch option '{0}'."),Unknown_watch_option_0_Did_you_mean_1:S(5079,1,"Unknown_watch_option_0_Did_you_mean_1_5079","Unknown watch option '{0}'. Did you mean '{1}'?"),Watch_option_0_requires_a_value_of_type_1:S(5080,1,"Watch_option_0_requires_a_value_of_type_1_5080","Watch option '{0}' requires a value of type {1}."),Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0:S(5081,1,"Cannot_find_a_tsconfig_json_file_at_the_current_directory_Colon_0_5081","Cannot find a tsconfig.json file at the current directory: {0}."),_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1:S(5082,1,"_0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1_5082","'{0}' could be instantiated with an arbitrary type which could be unrelated to '{1}'."),Cannot_read_file_0:S(5083,1,"Cannot_read_file_0_5083","Cannot read file '{0}'."),A_tuple_member_cannot_be_both_optional_and_rest:S(5085,1,"A_tuple_member_cannot_be_both_optional_and_rest_5085","A tuple member cannot be both optional and rest."),A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type:S(5086,1,"A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_c_5086","A labeled tuple element is declared as optional with a question mark after the name and before the colon, rather than after the type."),A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type:S(5087,1,"A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type_5087","A labeled tuple element is declared as rest with a '...' before the name, rather than before the type."),The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary:S(5088,1,"The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialize_5088","The inferred type of '{0}' references a type with a cyclic structure which cannot be trivially serialized. A type annotation is necessary."),Option_0_cannot_be_specified_when_option_jsx_is_1:S(5089,1,"Option_0_cannot_be_specified_when_option_jsx_is_1_5089","Option '{0}' cannot be specified when option 'jsx' is '{1}'."),Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash:S(5090,1,"Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash_5090","Non-relative paths are not allowed when 'baseUrl' is not set. Did you forget a leading './'?"),Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled:S(5091,1,"Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled_5091","Option 'preserveConstEnums' cannot be disabled when '{0}' is enabled."),The_root_value_of_a_0_file_must_be_an_object:S(5092,1,"The_root_value_of_a_0_file_must_be_an_object_5092","The root value of a '{0}' file must be an object."),Compiler_option_0_may_only_be_used_with_build:S(5093,1,"Compiler_option_0_may_only_be_used_with_build_5093","Compiler option '--{0}' may only be used with '--build'."),Compiler_option_0_may_not_be_used_with_build:S(5094,1,"Compiler_option_0_may_not_be_used_with_build_5094","Compiler option '--{0}' may not be used with '--build'."),Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later:S(5095,1,"Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later_5095","Option '{0}' can only be used when 'module' is set to 'preserve' or to 'es2015' or later."),Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set:S(5096,1,"Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set_5096","Option 'allowImportingTsExtensions' can only be used when either 'noEmit' or 'emitDeclarationOnly' is set."),An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled:S(5097,1,"An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled_5097","An import path can only end with a '{0}' extension when 'allowImportingTsExtensions' is enabled."),Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler:S(5098,1,"Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098","Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error:S(5101,1,"Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprec_5101",`Option '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),Option_0_has_been_removed_Please_remove_it_from_your_configuration:S(5102,1,"Option_0_has_been_removed_Please_remove_it_from_your_configuration_5102","Option '{0}' has been removed. Please remove it from your configuration."),Invalid_value_for_ignoreDeprecations:S(5103,1,"Invalid_value_for_ignoreDeprecations_5103","Invalid value for '--ignoreDeprecations'."),Option_0_is_redundant_and_cannot_be_specified_with_option_1:S(5104,1,"Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104","Option '{0}' is redundant and cannot be specified with option '{1}'."),Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System:S(5105,1,"Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System_5105","Option 'verbatimModuleSyntax' cannot be used when 'module' is set to 'UMD', 'AMD', or 'System'."),Use_0_instead:S(5106,3,"Use_0_instead_5106","Use '{0}' instead."),Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error:S(5107,1,"Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDepr_5107",`Option '{0}={1}' is deprecated and will stop functioning in TypeScript {2}. Specify compilerOption '"ignoreDeprecations": "{3}"' to silence this error.`),Option_0_1_has_been_removed_Please_remove_it_from_your_configuration:S(5108,1,"Option_0_1_has_been_removed_Please_remove_it_from_your_configuration_5108","Option '{0}={1}' has been removed. Please remove it from your configuration."),Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1:S(5109,1,"Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1_5109","Option 'moduleResolution' must be set to '{0}' (or left unspecified) when option 'module' is set to '{1}'."),Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1:S(5110,1,"Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1_5110","Option 'module' must be set to '{0}' when option 'moduleResolution' is set to '{1}'."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:S(6e3,3,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:S(6001,3,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:S(6002,3,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:S(6004,3,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:S(6005,3,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:S(6006,3,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:S(6007,3,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:S(6008,3,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:S(6009,3,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:S(6010,3,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:S(6011,3,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:S(6012,3,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:S(6013,3,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:S(6014,3,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version:S(6015,3,"Specify_ECMAScript_target_version_6015","Specify ECMAScript target version."),Specify_module_code_generation:S(6016,3,"Specify_module_code_generation_6016","Specify module code generation."),Print_this_message:S(6017,3,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:S(6019,3,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:S(6020,3,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:S(6023,3,"Syntax_Colon_0_6023","Syntax: {0}"),options:S(6024,3,"options_6024","options"),file:S(6025,3,"file_6025","file"),Examples_Colon_0:S(6026,3,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:S(6027,3,"Options_Colon_6027","Options:"),Version_0:S(6029,3,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:S(6030,3,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:S(6031,3,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:S(6032,3,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:S(6034,3,"KIND_6034","KIND"),FILE:S(6035,3,"FILE_6035","FILE"),VERSION:S(6036,3,"VERSION_6036","VERSION"),LOCATION:S(6037,3,"LOCATION_6037","LOCATION"),DIRECTORY:S(6038,3,"DIRECTORY_6038","DIRECTORY"),STRATEGY:S(6039,3,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:S(6040,3,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Errors_Files:S(6041,3,"Errors_Files_6041","Errors Files"),Generates_corresponding_map_file:S(6043,3,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:S(6044,1,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:S(6045,1,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:S(6046,1,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:S(6048,1,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),Unable_to_open_file_0:S(6050,1,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:S(6051,1,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:S(6052,3,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:S(6053,1,"File_0_not_found_6053","File '{0}' not found."),File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1:S(6054,1,"File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has an unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:S(6055,3,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:S(6056,3,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:S(6058,3,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:S(6059,1,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:S(6060,3,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:S(6061,3,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line:S(6064,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line_6064","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'null' on command line."),Enables_experimental_support_for_ES7_decorators:S(6065,3,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:S(6066,3,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:S(6070,3,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:S(6071,3,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:S(6072,3,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:S(6073,3,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:S(6074,3,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:S(6075,3,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:S(6076,3,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:S(6077,3,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:S(6078,3,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:S(6079,3,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation:S(6080,3,"Specify_JSX_code_generation_6080","Specify JSX code generation."),Only_amd_and_system_modules_are_supported_alongside_0:S(6082,1,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:S(6083,3,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:S(6084,3,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:S(6085,3,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:S(6086,3,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:S(6087,3,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:S(6088,3,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:S(6089,3,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:S(6090,3,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:S(6091,3,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:S(6092,3,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:S(6093,3,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:S(6094,3,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1:S(6095,3,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1_6095","Loading module as file / folder, candidate module location '{0}', target file types: {1}."),File_0_does_not_exist:S(6096,3,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exists_use_it_as_a_name_resolution_result:S(6097,3,"File_0_exists_use_it_as_a_name_resolution_result_6097","File '{0}' exists - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_types_Colon_1:S(6098,3,"Loading_module_0_from_node_modules_folder_target_file_types_Colon_1_6098","Loading module '{0}' from 'node_modules' folder, target file types: {1}."),Found_package_json_at_0:S(6099,3,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:S(6100,3,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:S(6101,3,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:S(6102,3,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:S(6104,3,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:S(6105,3,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:S(6106,3,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:S(6107,3,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:S(6108,3,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:S(6109,3,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:S(6110,3,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:S(6111,3,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:S(6112,3,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:S(6113,3,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:S(6114,1,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:S(6115,3,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:S(6116,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:S(6119,3,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:S(6120,3,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:S(6121,3,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:S(6122,3,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:S(6123,3,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:S(6124,3,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:S(6125,3,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:S(6126,3,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:S(6127,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:S(6128,3,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:S(6130,3,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:S(6131,1,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:S(6132,3,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:S(6133,1,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",!0),Report_errors_on_unused_locals:S(6134,3,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:S(6135,3,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:S(6136,3,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:S(6137,1,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:S(6138,1,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",!0),Import_emit_helpers_from_tslib:S(6139,3,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:S(6140,1,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:S(6141,3,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:S(6142,1,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:S(6144,3,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:S(6145,3,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:S(6146,3,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:S(6147,3,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:S(6148,3,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:S(6149,3,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:S(6150,3,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:S(6151,3,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:S(6152,3,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:S(6153,3,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:S(6154,3,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:S(6155,3,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:S(6156,3,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:S(6157,3,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:S(6158,3,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:S(6159,3,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:S(6160,3,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:S(6161,3,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:S(6162,3,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:S(6163,3,"The_character_set_of_the_input_files_6163","The character set of the input files."),Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1:S(6164,3,"Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1_6164","Skipping module '{0}' that looks like an absolute URI, target file types: {1}."),Do_not_truncate_error_messages:S(6165,3,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:S(6166,3,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:S(6167,3,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:S(6168,3,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:S(6169,3,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:S(6170,3,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:S(6171,3,"Command_line_Options_6171","Command-line Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:S(6179,3,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:S(6180,3,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),Scoped_package_detected_looking_in_0:S(6182,3,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:S(6183,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_6183","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:S(6184,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package__6184","Reusing resolution of module '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Enable_strict_checking_of_function_types:S(6186,3,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:S(6187,3,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:S(6188,1,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:S(6189,1,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:S(6191,3,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:S(6192,1,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",!0),Found_1_error_Watching_for_file_changes:S(6193,3,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:S(6194,3,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:S(6195,3,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:S(6196,1,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",!0),Include_modules_imported_with_json_extension:S(6197,3,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:S(6198,1,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",!0),All_variables_are_unused:S(6199,1,"All_variables_are_unused_6199","All variables are unused.",!0),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:S(6200,1,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:S(6201,3,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:S(6202,1,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),_0_was_also_declared_here:S(6203,3,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:S(6204,3,"and_here_6204","and here."),All_type_parameters_are_unused:S(6205,1,"All_type_parameters_are_unused_6205","All type parameters are unused."),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:S(6206,3,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:S(6207,3,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:S(6208,3,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:S(6209,3,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:S(6210,3,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:S(6211,3,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:S(6212,3,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:S(6213,3,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:S(6214,3,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:S(6215,3,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:S(6216,3,"Found_1_error_6216","Found 1 error."),Found_0_errors:S(6217,3,"Found_0_errors_6217","Found {0} errors."),Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2:S(6218,3,"Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2_6218","======== Module name '{0}' was successfully resolved to '{1}' with Package ID '{2}'. ========"),Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3:S(6219,3,"Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3_6219","======== Type reference directive '{0}' was successfully resolved to '{1}' with Package ID '{2}', primary: {3}. ========"),package_json_had_a_falsy_0_field:S(6220,3,"package_json_had_a_falsy_0_field_6220","'package.json' had a falsy '{0}' field."),Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects:S(6221,3,"Disable_use_of_source_files_instead_of_declaration_files_from_referenced_projects_6221","Disable use of source files instead of declaration files from referenced projects."),Emit_class_fields_with_Define_instead_of_Set:S(6222,3,"Emit_class_fields_with_Define_instead_of_Set_6222","Emit class fields with Define instead of Set."),Generates_a_CPU_profile:S(6223,3,"Generates_a_CPU_profile_6223","Generates a CPU profile."),Disable_solution_searching_for_this_project:S(6224,3,"Disable_solution_searching_for_this_project_6224","Disable solution searching for this project."),Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling_UseFsEvents_UseFsEventsOnParentDirectory:S(6225,3,"Specify_strategy_for_watching_file_Colon_FixedPollingInterval_default_PriorityPollingInterval_Dynami_6225","Specify strategy for watching file: 'FixedPollingInterval' (default), 'PriorityPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling', 'UseFsEvents', 'UseFsEventsOnParentDirectory'."),Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively_Colon_UseFsEvents_default_FixedPollingInterval_DynamicPriorityPolling_FixedChunkSizePolling:S(6226,3,"Specify_strategy_for_watching_directory_on_platforms_that_don_t_support_recursive_watching_natively__6226","Specify strategy for watching directory on platforms that don't support recursive watching natively: 'UseFsEvents' (default), 'FixedPollingInterval', 'DynamicPriorityPolling', 'FixedChunkSizePolling'."),Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_FixedInterval_default_PriorityInterval_DynamicPriority_FixedChunkSize:S(6227,3,"Specify_strategy_for_creating_a_polling_watch_when_it_fails_to_create_using_file_system_events_Colon_6227","Specify strategy for creating a polling watch when it fails to create using file system events: 'FixedInterval' (default), 'PriorityInterval', 'DynamicPriority', 'FixedChunkSize'."),Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3:S(6229,1,"Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3_6229","Tag '{0}' expects at least '{1}' arguments, but the JSX factory '{2}' provides at most '{3}'."),Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line:S(6230,1,"Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line_6230","Option '{0}' can only be specified in 'tsconfig.json' file or set to 'false' or 'null' on command line."),Could_not_resolve_the_path_0_with_the_extensions_Colon_1:S(6231,1,"Could_not_resolve_the_path_0_with_the_extensions_Colon_1_6231","Could not resolve the path '{0}' with the extensions: {1}."),Declaration_augments_declaration_in_another_file_This_cannot_be_serialized:S(6232,1,"Declaration_augments_declaration_in_another_file_This_cannot_be_serialized_6232","Declaration augments declaration in another file. This cannot be serialized."),This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file:S(6233,1,"This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_fil_6233","This is the declaration being augmented. Consider moving the augmenting declaration into the same file."),This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without:S(6234,1,"This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without_6234","This expression is not callable because it is a 'get' accessor. Did you mean to use it without '()'?"),Disable_loading_referenced_projects:S(6235,3,"Disable_loading_referenced_projects_6235","Disable loading referenced projects."),Arguments_for_the_rest_parameter_0_were_not_provided:S(6236,1,"Arguments_for_the_rest_parameter_0_were_not_provided_6236","Arguments for the rest parameter '{0}' were not provided."),Generates_an_event_trace_and_a_list_of_types:S(6237,3,"Generates_an_event_trace_and_a_list_of_types_6237","Generates an event trace and a list of types."),Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react:S(6238,1,"Specify_the_module_specifier_to_be_used_to_import_the_jsx_and_jsxs_factory_functions_from_eg_react_6238","Specify the module specifier to be used to import the 'jsx' and 'jsxs' factory functions from. eg, react"),File_0_exists_according_to_earlier_cached_lookups:S(6239,3,"File_0_exists_according_to_earlier_cached_lookups_6239","File '{0}' exists according to earlier cached lookups."),File_0_does_not_exist_according_to_earlier_cached_lookups:S(6240,3,"File_0_does_not_exist_according_to_earlier_cached_lookups_6240","File '{0}' does not exist according to earlier cached lookups."),Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1:S(6241,3,"Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1_6241","Resolution for type reference directive '{0}' was found in cache from location '{1}'."),Resolving_type_reference_directive_0_containing_file_1:S(6242,3,"Resolving_type_reference_directive_0_containing_file_1_6242","======== Resolving type reference directive '{0}', containing file '{1}'. ========"),Interpret_optional_property_types_as_written_rather_than_adding_undefined:S(6243,3,"Interpret_optional_property_types_as_written_rather_than_adding_undefined_6243","Interpret optional property types as written, rather than adding 'undefined'."),Modules:S(6244,3,"Modules_6244","Modules"),File_Management:S(6245,3,"File_Management_6245","File Management"),Emit:S(6246,3,"Emit_6246","Emit"),JavaScript_Support:S(6247,3,"JavaScript_Support_6247","JavaScript Support"),Type_Checking:S(6248,3,"Type_Checking_6248","Type Checking"),Editor_Support:S(6249,3,"Editor_Support_6249","Editor Support"),Watch_and_Build_Modes:S(6250,3,"Watch_and_Build_Modes_6250","Watch and Build Modes"),Compiler_Diagnostics:S(6251,3,"Compiler_Diagnostics_6251","Compiler Diagnostics"),Interop_Constraints:S(6252,3,"Interop_Constraints_6252","Interop Constraints"),Backwards_Compatibility:S(6253,3,"Backwards_Compatibility_6253","Backwards Compatibility"),Language_and_Environment:S(6254,3,"Language_and_Environment_6254","Language and Environment"),Projects:S(6255,3,"Projects_6255","Projects"),Output_Formatting:S(6256,3,"Output_Formatting_6256","Output Formatting"),Completeness:S(6257,3,"Completeness_6257","Completeness"),_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file:S(6258,1,"_0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file_6258","'{0}' should be set inside the 'compilerOptions' object of the config json file"),Found_1_error_in_0:S(6259,3,"Found_1_error_in_0_6259","Found 1 error in {0}"),Found_0_errors_in_the_same_file_starting_at_Colon_1:S(6260,3,"Found_0_errors_in_the_same_file_starting_at_Colon_1_6260","Found {0} errors in the same file, starting at: {1}"),Found_0_errors_in_1_files:S(6261,3,"Found_0_errors_in_1_files_6261","Found {0} errors in {1} files."),File_name_0_has_a_1_extension_looking_up_2_instead:S(6262,3,"File_name_0_has_a_1_extension_looking_up_2_instead_6262","File name '{0}' has a '{1}' extension - looking up '{2}' instead."),Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set:S(6263,1,"Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set_6263","Module '{0}' was resolved to '{1}', but '--allowArbitraryExtensions' is not set."),Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present:S(6264,3,"Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present_6264","Enable importing files with any extension, provided a declaration file is present."),Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder:S(6265,3,"Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_no_6265","Resolving type reference directive for program that specifies custom typeRoots, skipping lookup in 'node_modules' folder."),Option_0_can_only_be_specified_on_command_line:S(6266,1,"Option_0_can_only_be_specified_on_command_line_6266","Option '{0}' can only be specified on command line."),Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve:S(6270,3,"Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve_6270","Directory '{0}' has no containing package.json scope. Imports will not resolve."),Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1:S(6271,3,"Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6271","Import specifier '{0}' does not exist in package.json scope at path '{1}'."),Invalid_import_specifier_0_has_no_possible_resolutions:S(6272,3,"Invalid_import_specifier_0_has_no_possible_resolutions_6272","Invalid import specifier '{0}' has no possible resolutions."),package_json_scope_0_has_no_imports_defined:S(6273,3,"package_json_scope_0_has_no_imports_defined_6273","package.json scope '{0}' has no imports defined."),package_json_scope_0_explicitly_maps_specifier_1_to_null:S(6274,3,"package_json_scope_0_explicitly_maps_specifier_1_to_null_6274","package.json scope '{0}' explicitly maps specifier '{1}' to null."),package_json_scope_0_has_invalid_type_for_target_of_specifier_1:S(6275,3,"package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275","package.json scope '{0}' has invalid type for target of specifier '{1}'"),Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1:S(6276,3,"Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276","Export specifier '{0}' does not exist in package.json scope at path '{1}'."),Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update:S(6277,3,"Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277","Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings:S(6278,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278",`There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update:S(6279,3,"Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_ne_6279","Resolution of non-relative name failed; trying with '--moduleResolution bundler' to see if project may need configuration update."),There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler:S(6280,3,"There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setti_6280","There are types at '{0}', but this result could not be resolved under your current 'moduleResolution' setting. Consider updating to 'node16', 'nodenext', or 'bundler'."),Enable_project_compilation:S(6302,3,"Enable_project_compilation_6302","Enable project compilation"),Composite_projects_may_not_disable_declaration_emit:S(6304,1,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:S(6305,1,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:S(6306,1,"Referenced_project_0_must_have_setting_composite_Colon_true_6306",`Referenced project '{0}' must have setting "composite": true.`),File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern:S(6307,1,"File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_includ_6307","File '{0}' is not listed within the file list of project '{1}'. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:S(6308,1,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:S(6309,1,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Referenced_project_0_may_not_disable_emit:S(6310,1,"Referenced_project_0_may_not_disable_emit_6310","Referenced project '{0}' may not disable emit."),Project_0_is_out_of_date_because_output_1_is_older_than_input_2:S(6350,3,"Project_0_is_out_of_date_because_output_1_is_older_than_input_2_6350","Project '{0}' is out of date because output '{1}' is older than input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2:S(6351,3,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:S(6352,3,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:S(6353,3,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:S(6354,3,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:S(6355,3,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:S(6356,3,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:S(6357,3,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:S(6358,3,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:S(6359,3,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),Project_0_is_up_to_date:S(6361,3,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:S(6362,3,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:S(6363,3,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:S(6364,3,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:S(6365,3,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects."),Show_what_would_be_built_or_deleted_if_specified_with_clean:S(6367,3,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Option_build_must_be_the_first_command_line_argument:S(6369,1,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:S(6370,1,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),Updating_unchanged_output_timestamps_of_project_0:S(6371,3,"Updating_unchanged_output_timestamps_of_project_0_6371","Updating unchanged output timestamps of project '{0}'..."),Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed:S(6372,3,"Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed_6372","Project '{0}' is out of date because output of its dependency '{1}' has changed"),Updating_output_of_project_0:S(6373,3,"Updating_output_of_project_0_6373","Updating output of project '{0}'..."),A_non_dry_build_would_update_timestamps_for_output_of_project_0:S(6374,3,"A_non_dry_build_would_update_timestamps_for_output_of_project_0_6374","A non-dry build would update timestamps for output of project '{0}'"),A_non_dry_build_would_update_output_of_project_0:S(6375,3,"A_non_dry_build_would_update_output_of_project_0_6375","A non-dry build would update output of project '{0}'"),Cannot_update_output_of_project_0_because_there_was_error_reading_file_1:S(6376,3,"Cannot_update_output_of_project_0_because_there_was_error_reading_file_1_6376","Cannot update output of project '{0}' because there was error reading file '{1}'"),Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1:S(6377,1,"Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1_6377","Cannot write file '{0}' because it will overwrite '.tsbuildinfo' file generated by referenced project '{1}'"),Composite_projects_may_not_disable_incremental_compilation:S(6379,1,"Composite_projects_may_not_disable_incremental_compilation_6379","Composite projects may not disable incremental compilation."),Specify_file_to_store_incremental_compilation_information:S(6380,3,"Specify_file_to_store_incremental_compilation_information_6380","Specify file to store incremental compilation information"),Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2:S(6381,3,"Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_curren_6381","Project '{0}' is out of date because output for it was generated with version '{1}' that differs with current version '{2}'"),Skipping_build_of_project_0_because_its_dependency_1_was_not_built:S(6382,3,"Skipping_build_of_project_0_because_its_dependency_1_was_not_built_6382","Skipping build of project '{0}' because its dependency '{1}' was not built"),Project_0_can_t_be_built_because_its_dependency_1_was_not_built:S(6383,3,"Project_0_can_t_be_built_because_its_dependency_1_was_not_built_6383","Project '{0}' can't be built because its dependency '{1}' was not built"),Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:S(6384,3,"Have_recompiles_in_incremental_and_watch_assume_that_changes_within_a_file_will_only_affect_files_di_6384","Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it."),_0_is_deprecated:S(6385,2,"_0_is_deprecated_6385","'{0}' is deprecated.",void 0,void 0,!0),Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_native_implementation_of_the_Web_Performance_API_could_not_be_found:S(6386,3,"Performance_timings_for_diagnostics_or_extendedDiagnostics_are_not_available_in_this_session_A_nativ_6386","Performance timings for '--diagnostics' or '--extendedDiagnostics' are not available in this session. A native implementation of the Web Performance API could not be found."),The_signature_0_of_1_is_deprecated:S(6387,2,"The_signature_0_of_1_is_deprecated_6387","The signature '{0}' of '{1}' is deprecated.",void 0,void 0,!0),Project_0_is_being_forcibly_rebuilt:S(6388,3,"Project_0_is_being_forcibly_rebuilt_6388","Project '{0}' is being forcibly rebuilt"),Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:S(6389,3,"Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved_6389","Reusing resolution of module '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:S(6390,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6390","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:S(6391,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved__6391","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was successfully resolved to '{2}' with Package ID '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved:S(6392,3,"Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved_6392","Reusing resolution of type reference directive '{0}' from '{1}' of old program, it was not resolved."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:S(6393,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6393","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:S(6394,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_6394","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:S(6395,3,"Reusing_resolution_of_module_0_from_1_found_in_cache_from_location_2_it_was_not_resolved_6395","Reusing resolution of module '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3:S(6396,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6396","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_successfully_resolved_to_3_with_Package_ID_4:S(6397,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_succes_6397","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was successfully resolved to '{3}' with Package ID '{4}'."),Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_resolved:S(6398,3,"Reusing_resolution_of_type_reference_directive_0_from_1_found_in_cache_from_location_2_it_was_not_re_6398","Reusing resolution of type reference directive '{0}' from '{1}' found in cache from location '{2}', it was not resolved."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted:S(6399,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitte_6399","Project '{0}' is out of date because buildinfo file '{1}' indicates that some of the changes were not emitted"),Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files:S(6400,3,"Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_fil_6400","Project '{0}' is up to date but needs to update timestamps of output files that are older than input files"),Project_0_is_out_of_date_because_there_was_error_reading_file_1:S(6401,3,"Project_0_is_out_of_date_because_there_was_error_reading_file_1_6401","Project '{0}' is out of date because there was error reading file '{1}'"),Resolving_in_0_mode_with_conditions_1:S(6402,3,"Resolving_in_0_mode_with_conditions_1_6402","Resolving in {0} mode with conditions {1}."),Matched_0_condition_1:S(6403,3,"Matched_0_condition_1_6403","Matched '{0}' condition '{1}'."),Using_0_subpath_1_with_target_2:S(6404,3,"Using_0_subpath_1_with_target_2_6404","Using '{0}' subpath '{1}' with target '{2}'."),Saw_non_matching_condition_0:S(6405,3,"Saw_non_matching_condition_0_6405","Saw non-matching condition '{0}'."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions:S(6406,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions_6406","Project '{0}' is out of date because buildinfo file '{1}' indicates there is change in compilerOptions"),Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set:S(6407,3,"Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noE_6407","Allow imports to include TypeScript file extensions. Requires '--moduleResolution bundler' and either '--noEmit' or '--emitDeclarationOnly' to be set."),Use_the_package_json_exports_field_when_resolving_package_imports:S(6408,3,"Use_the_package_json_exports_field_when_resolving_package_imports_6408","Use the package.json 'exports' field when resolving package imports."),Use_the_package_json_imports_field_when_resolving_imports:S(6409,3,"Use_the_package_json_imports_field_when_resolving_imports_6409","Use the package.json 'imports' field when resolving imports."),Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports:S(6410,3,"Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports_6410","Conditions to set in addition to the resolver-specific defaults when resolving imports."),true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false:S(6411,3,"true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false_6411","`true` when 'moduleResolution' is 'node16', 'nodenext', or 'bundler'; otherwise `false`."),Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more:S(6412,3,"Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_6412","Project '{0}' is out of date because buildinfo file '{1}' indicates that file '{2}' was root file of compilation but not any more."),Entering_conditional_exports:S(6413,3,"Entering_conditional_exports_6413","Entering conditional exports."),Resolved_under_condition_0:S(6414,3,"Resolved_under_condition_0_6414","Resolved under condition '{0}'."),Failed_to_resolve_under_condition_0:S(6415,3,"Failed_to_resolve_under_condition_0_6415","Failed to resolve under condition '{0}'."),Exiting_conditional_exports:S(6416,3,"Exiting_conditional_exports_6416","Exiting conditional exports."),Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0:S(6417,3,"Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0_6417","Searching all ancestor node_modules directories for preferred extensions: {0}."),Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0:S(6418,3,"Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0_6418","Searching all ancestor node_modules directories for fallback extensions: {0}."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:S(6500,3,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:S(6501,3,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:S(6502,3,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing:S(6503,3,"Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing_6503","Print names of files that are part of the compilation and then stop processing."),File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option:S(6504,1,"File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option_6504","File '{0}' is a JavaScript file. Did you mean to enable the 'allowJs' option?"),Print_names_of_files_and_the_reason_they_are_part_of_the_compilation:S(6505,3,"Print_names_of_files_and_the_reason_they_are_part_of_the_compilation_6505","Print names of files and the reason they are part of the compilation."),Consider_adding_a_declare_modifier_to_this_class:S(6506,3,"Consider_adding_a_declare_modifier_to_this_class_6506","Consider adding a 'declare' modifier to this class."),Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files:S(6600,3,"Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these__6600","Allow JavaScript files to be a part of your program. Use the 'checkJS' option to get errors from these files."),Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export:S(6601,3,"Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export_6601","Allow 'import x from y' when a module doesn't have a default export."),Allow_accessing_UMD_globals_from_modules:S(6602,3,"Allow_accessing_UMD_globals_from_modules_6602","Allow accessing UMD globals from modules."),Disable_error_reporting_for_unreachable_code:S(6603,3,"Disable_error_reporting_for_unreachable_code_6603","Disable error reporting for unreachable code."),Disable_error_reporting_for_unused_labels:S(6604,3,"Disable_error_reporting_for_unused_labels_6604","Disable error reporting for unused labels."),Ensure_use_strict_is_always_emitted:S(6605,3,"Ensure_use_strict_is_always_emitted_6605","Ensure 'use strict' is always emitted."),Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it:S(6606,3,"Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_wi_6606","Have recompiles in projects that use 'incremental' and 'watch' mode assume that changes within a file will only affect files directly depending on it."),Specify_the_base_directory_to_resolve_non_relative_module_names:S(6607,3,"Specify_the_base_directory_to_resolve_non_relative_module_names_6607","Specify the base directory to resolve non-relative module names."),No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files:S(6608,3,"No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files_6608","No longer supported. In early versions, manually set the text encoding for reading files."),Enable_error_reporting_in_type_checked_JavaScript_files:S(6609,3,"Enable_error_reporting_in_type_checked_JavaScript_files_6609","Enable error reporting in type-checked JavaScript files."),Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references:S(6611,3,"Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references_6611","Enable constraints that allow a TypeScript project to be used with project references."),Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project:S(6612,3,"Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project_6612","Generate .d.ts files from TypeScript and JavaScript files in your project."),Specify_the_output_directory_for_generated_declaration_files:S(6613,3,"Specify_the_output_directory_for_generated_declaration_files_6613","Specify the output directory for generated declaration files."),Create_sourcemaps_for_d_ts_files:S(6614,3,"Create_sourcemaps_for_d_ts_files_6614","Create sourcemaps for d.ts files."),Output_compiler_performance_information_after_building:S(6615,3,"Output_compiler_performance_information_after_building_6615","Output compiler performance information after building."),Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project:S(6616,3,"Disables_inference_for_type_acquisition_by_looking_at_filenames_in_a_project_6616","Disables inference for type acquisition by looking at filenames in a project."),Reduce_the_number_of_projects_loaded_automatically_by_TypeScript:S(6617,3,"Reduce_the_number_of_projects_loaded_automatically_by_TypeScript_6617","Reduce the number of projects loaded automatically by TypeScript."),Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server:S(6618,3,"Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server_6618","Remove the 20mb cap on total source code size for JavaScript files in the TypeScript language server."),Opt_a_project_out_of_multi_project_reference_checking_when_editing:S(6619,3,"Opt_a_project_out_of_multi_project_reference_checking_when_editing_6619","Opt a project out of multi-project reference checking when editing."),Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects:S(6620,3,"Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects_6620","Disable preferring source files instead of declaration files when referencing composite projects."),Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration:S(6621,3,"Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration_6621","Emit more compliant, but verbose and less performant JavaScript for iteration."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:S(6622,3,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6622","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Only_output_d_ts_files_and_not_JavaScript_files:S(6623,3,"Only_output_d_ts_files_and_not_JavaScript_files_6623","Only output d.ts files and not JavaScript files."),Emit_design_type_metadata_for_decorated_declarations_in_source_files:S(6624,3,"Emit_design_type_metadata_for_decorated_declarations_in_source_files_6624","Emit design-type metadata for decorated declarations in source files."),Disable_the_type_acquisition_for_JavaScript_projects:S(6625,3,"Disable_the_type_acquisition_for_JavaScript_projects_6625","Disable the type acquisition for JavaScript projects"),Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility:S(6626,3,"Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheti_6626","Emit additional JavaScript to ease support for importing CommonJS modules. This enables 'allowSyntheticDefaultImports' for type compatibility."),Filters_results_from_the_include_option:S(6627,3,"Filters_results_from_the_include_option_6627","Filters results from the `include` option."),Remove_a_list_of_directories_from_the_watch_process:S(6628,3,"Remove_a_list_of_directories_from_the_watch_process_6628","Remove a list of directories from the watch process."),Remove_a_list_of_files_from_the_watch_mode_s_processing:S(6629,3,"Remove_a_list_of_files_from_the_watch_mode_s_processing_6629","Remove a list of files from the watch mode's processing."),Enable_experimental_support_for_legacy_experimental_decorators:S(6630,3,"Enable_experimental_support_for_legacy_experimental_decorators_6630","Enable experimental support for legacy experimental decorators."),Print_files_read_during_the_compilation_including_why_it_was_included:S(6631,3,"Print_files_read_during_the_compilation_including_why_it_was_included_6631","Print files read during the compilation including why it was included."),Output_more_detailed_compiler_performance_information_after_building:S(6632,3,"Output_more_detailed_compiler_performance_information_after_building_6632","Output more detailed compiler performance information after building."),Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_are_inherited:S(6633,3,"Specify_one_or_more_path_or_node_module_references_to_base_configuration_files_from_which_settings_a_6633","Specify one or more path or node module references to base configuration files from which settings are inherited."),Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers:S(6634,3,"Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers_6634","Specify what approach the watcher should use if the system runs out of native file watchers."),Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include:S(6635,3,"Include_a_list_of_files_This_does_not_support_glob_patterns_as_opposed_to_include_6635","Include a list of files. This does not support glob patterns, as opposed to `include`."),Build_all_projects_including_those_that_appear_to_be_up_to_date:S(6636,3,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6636","Build all projects, including those that appear to be up to date."),Ensure_that_casing_is_correct_in_imports:S(6637,3,"Ensure_that_casing_is_correct_in_imports_6637","Ensure that casing is correct in imports."),Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging:S(6638,3,"Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging_6638","Emit a v8 CPU profile of the compiler run for debugging."),Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file:S(6639,3,"Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file_6639","Allow importing helper functions from tslib once per project, instead of including them per-file."),Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation:S(6641,3,"Specify_a_list_of_glob_patterns_that_match_files_to_be_included_in_compilation_6641","Specify a list of glob patterns that match files to be included in compilation."),Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects:S(6642,3,"Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects_6642","Save .tsbuildinfo files to allow for incremental compilation of projects."),Include_sourcemap_files_inside_the_emitted_JavaScript:S(6643,3,"Include_sourcemap_files_inside_the_emitted_JavaScript_6643","Include sourcemap files inside the emitted JavaScript."),Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript:S(6644,3,"Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript_6644","Include source code in the sourcemaps inside the emitted JavaScript."),Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports:S(6645,3,"Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports_6645","Ensure that each file can be safely transpiled without relying on other imports."),Specify_what_JSX_code_is_generated:S(6646,3,"Specify_what_JSX_code_is_generated_6646","Specify what JSX code is generated."),Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h:S(6647,3,"Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h_6647","Specify the JSX factory function used when targeting React JSX emit, e.g. 'React.createElement' or 'h'."),Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment:S(6648,3,"Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragme_6648","Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'."),Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk:S(6649,3,"Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Ast_6649","Specify module specifier used to import the JSX factory functions when using 'jsx: react-jsx*'."),Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option:S(6650,3,"Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option_6650","Make keyof only return strings instead of string, numbers or symbols. Legacy option."),Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment:S(6651,3,"Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment_6651","Specify a set of bundled library declaration files that describe the target runtime environment."),Print_the_names_of_emitted_files_after_a_compilation:S(6652,3,"Print_the_names_of_emitted_files_after_a_compilation_6652","Print the names of emitted files after a compilation."),Print_all_of_the_files_read_during_the_compilation:S(6653,3,"Print_all_of_the_files_read_during_the_compilation_6653","Print all of the files read during the compilation."),Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit:S(6654,3,"Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit_6654","Set the language of the messaging from TypeScript. This does not affect emit."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:S(6655,3,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6655","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs:S(6656,3,"Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicabl_6656","Specify the maximum folder depth used for checking JavaScript files from 'node_modules'. Only applicable with 'allowJs'."),Specify_what_module_code_is_generated:S(6657,3,"Specify_what_module_code_is_generated_6657","Specify what module code is generated."),Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier:S(6658,3,"Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier_6658","Specify how TypeScript looks up a file from a given module specifier."),Set_the_newline_character_for_emitting_files:S(6659,3,"Set_the_newline_character_for_emitting_files_6659","Set the newline character for emitting files."),Disable_emitting_files_from_a_compilation:S(6660,3,"Disable_emitting_files_from_a_compilation_6660","Disable emitting files from a compilation."),Disable_generating_custom_helper_functions_like_extends_in_compiled_output:S(6661,3,"Disable_generating_custom_helper_functions_like_extends_in_compiled_output_6661","Disable generating custom helper functions like '__extends' in compiled output."),Disable_emitting_files_if_any_type_checking_errors_are_reported:S(6662,3,"Disable_emitting_files_if_any_type_checking_errors_are_reported_6662","Disable emitting files if any type checking errors are reported."),Disable_truncating_types_in_error_messages:S(6663,3,"Disable_truncating_types_in_error_messages_6663","Disable truncating types in error messages."),Enable_error_reporting_for_fallthrough_cases_in_switch_statements:S(6664,3,"Enable_error_reporting_for_fallthrough_cases_in_switch_statements_6664","Enable error reporting for fallthrough cases in switch statements."),Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type:S(6665,3,"Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type_6665","Enable error reporting for expressions and declarations with an implied 'any' type."),Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier:S(6666,3,"Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier_6666","Ensure overriding members in derived classes are marked with an override modifier."),Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function:S(6667,3,"Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function_6667","Enable error reporting for codepaths that do not explicitly return in a function."),Enable_error_reporting_when_this_is_given_the_type_any:S(6668,3,"Enable_error_reporting_when_this_is_given_the_type_any_6668","Enable error reporting when 'this' is given the type 'any'."),Disable_adding_use_strict_directives_in_emitted_JavaScript_files:S(6669,3,"Disable_adding_use_strict_directives_in_emitted_JavaScript_files_6669","Disable adding 'use strict' directives in emitted JavaScript files."),Disable_including_any_library_files_including_the_default_lib_d_ts:S(6670,3,"Disable_including_any_library_files_including_the_default_lib_d_ts_6670","Disable including any library files, including the default lib.d.ts."),Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type:S(6671,3,"Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type_6671","Enforces using indexed accessors for keys declared using an indexed type."),Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project:S(6672,3,"Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add__6672","Disallow 'import's, 'require's or '<reference>'s from expanding the number of files TypeScript should add to a project."),Disable_strict_checking_of_generic_signatures_in_function_types:S(6673,3,"Disable_strict_checking_of_generic_signatures_in_function_types_6673","Disable strict checking of generic signatures in function types."),Add_undefined_to_a_type_when_accessed_using_an_index:S(6674,3,"Add_undefined_to_a_type_when_accessed_using_an_index_6674","Add 'undefined' to a type when accessed using an index."),Enable_error_reporting_when_local_variables_aren_t_read:S(6675,3,"Enable_error_reporting_when_local_variables_aren_t_read_6675","Enable error reporting when local variables aren't read."),Raise_an_error_when_a_function_parameter_isn_t_read:S(6676,3,"Raise_an_error_when_a_function_parameter_isn_t_read_6676","Raise an error when a function parameter isn't read."),Deprecated_setting_Use_outFile_instead:S(6677,3,"Deprecated_setting_Use_outFile_instead_6677","Deprecated setting. Use 'outFile' instead."),Specify_an_output_folder_for_all_emitted_files:S(6678,3,"Specify_an_output_folder_for_all_emitted_files_6678","Specify an output folder for all emitted files."),Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output:S(6679,3,"Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designa_6679","Specify a file that bundles all outputs into one JavaScript file. If 'declaration' is true, also designates a file that bundles all .d.ts output."),Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations:S(6680,3,"Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations_6680","Specify a set of entries that re-map imports to additional lookup locations."),Specify_a_list_of_language_service_plugins_to_include:S(6681,3,"Specify_a_list_of_language_service_plugins_to_include_6681","Specify a list of language service plugins to include."),Disable_erasing_const_enum_declarations_in_generated_code:S(6682,3,"Disable_erasing_const_enum_declarations_in_generated_code_6682","Disable erasing 'const enum' declarations in generated code."),Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node:S(6683,3,"Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node_6683","Disable resolving symlinks to their realpath. This correlates to the same flag in node."),Disable_wiping_the_console_in_watch_mode:S(6684,3,"Disable_wiping_the_console_in_watch_mode_6684","Disable wiping the console in watch mode."),Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read:S(6685,3,"Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read_6685","Enable color and formatting in TypeScript's output to make compiler errors easier to read."),Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit:S(6686,3,"Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit_6686","Specify the object invoked for 'createElement'. This only applies when targeting 'react' JSX emit."),Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references:S(6687,3,"Specify_an_array_of_objects_that_specify_paths_for_projects_Used_in_project_references_6687","Specify an array of objects that specify paths for projects. Used in project references."),Disable_emitting_comments:S(6688,3,"Disable_emitting_comments_6688","Disable emitting comments."),Enable_importing_json_files:S(6689,3,"Enable_importing_json_files_6689","Enable importing .json files."),Specify_the_root_folder_within_your_source_files:S(6690,3,"Specify_the_root_folder_within_your_source_files_6690","Specify the root folder within your source files."),Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules:S(6691,3,"Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules_6691","Allow multiple folders to be treated as one when resolving modules."),Skip_type_checking_d_ts_files_that_are_included_with_TypeScript:S(6692,3,"Skip_type_checking_d_ts_files_that_are_included_with_TypeScript_6692","Skip type checking .d.ts files that are included with TypeScript."),Skip_type_checking_all_d_ts_files:S(6693,3,"Skip_type_checking_all_d_ts_files_6693","Skip type checking all .d.ts files."),Create_source_map_files_for_emitted_JavaScript_files:S(6694,3,"Create_source_map_files_for_emitted_JavaScript_files_6694","Create source map files for emitted JavaScript files."),Specify_the_root_path_for_debuggers_to_find_the_reference_source_code:S(6695,3,"Specify_the_root_path_for_debuggers_to_find_the_reference_source_code_6695","Specify the root path for debuggers to find the reference source code."),Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function:S(6697,3,"Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function_6697","Check that the arguments for 'bind', 'call', and 'apply' methods match the original function."),When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible:S(6698,3,"When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible_6698","When assigning functions, check to ensure parameters and the return values are subtype-compatible."),When_type_checking_take_into_account_null_and_undefined:S(6699,3,"When_type_checking_take_into_account_null_and_undefined_6699","When type checking, take into account 'null' and 'undefined'."),Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor:S(6700,3,"Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor_6700","Check for class properties that are declared but not set in the constructor."),Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments:S(6701,3,"Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments_6701","Disable emitting declarations that have '@internal' in their JSDoc comments."),Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals:S(6702,3,"Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals_6702","Disable reporting of excess property errors during the creation of object literals."),Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures:S(6703,3,"Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures_6703","Suppress 'noImplicitAny' errors when indexing objects that lack index signatures."),Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively:S(6704,3,"Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_supp_6704","Synchronously call callbacks and update the state of directory watchers on platforms that don`t support recursive watching natively."),Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations:S(6705,3,"Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declaratio_6705","Set the JavaScript language version for emitted JavaScript and include compatible library declarations."),Log_paths_used_during_the_moduleResolution_process:S(6706,3,"Log_paths_used_during_the_moduleResolution_process_6706","Log paths used during the 'moduleResolution' process."),Specify_the_path_to_tsbuildinfo_incremental_compilation_file:S(6707,3,"Specify_the_path_to_tsbuildinfo_incremental_compilation_file_6707","Specify the path to .tsbuildinfo incremental compilation file."),Specify_options_for_automatic_acquisition_of_declaration_files:S(6709,3,"Specify_options_for_automatic_acquisition_of_declaration_files_6709","Specify options for automatic acquisition of declaration files."),Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types:S(6710,3,"Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types_6710","Specify multiple folders that act like './node_modules/@types'."),Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file:S(6711,3,"Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file_6711","Specify type package names to be included without being referenced in a source file."),Emit_ECMAScript_standard_compliant_class_fields:S(6712,3,"Emit_ECMAScript_standard_compliant_class_fields_6712","Emit ECMAScript-standard-compliant class fields."),Enable_verbose_logging:S(6713,3,"Enable_verbose_logging_6713","Enable verbose logging."),Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality:S(6714,3,"Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality_6714","Specify how directories are watched on systems that lack recursive file-watching functionality."),Specify_how_the_TypeScript_watch_mode_works:S(6715,3,"Specify_how_the_TypeScript_watch_mode_works_6715","Specify how the TypeScript watch mode works."),Require_undeclared_properties_from_index_signatures_to_use_element_accesses:S(6717,3,"Require_undeclared_properties_from_index_signatures_to_use_element_accesses_6717","Require undeclared properties from index signatures to use element accesses."),Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types:S(6718,3,"Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types_6718","Specify emit/checking behavior for imports that are only used for types."),Default_catch_clause_variables_as_unknown_instead_of_any:S(6803,3,"Default_catch_clause_variables_as_unknown_instead_of_any_6803","Default catch clause variables as 'unknown' instead of 'any'."),Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting:S(6804,3,"Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_i_6804","Do not transform or elide any imports or exports not marked as type-only, ensuring they are written in the output file's format based on the 'module' setting."),one_of_Colon:S(6900,3,"one_of_Colon_6900","one of:"),one_or_more_Colon:S(6901,3,"one_or_more_Colon_6901","one or more:"),type_Colon:S(6902,3,"type_Colon_6902","type:"),default_Colon:S(6903,3,"default_Colon_6903","default:"),module_system_or_esModuleInterop:S(6904,3,"module_system_or_esModuleInterop_6904",'module === "system" or esModuleInterop'),false_unless_strict_is_set:S(6905,3,"false_unless_strict_is_set_6905","`false`, unless `strict` is set"),false_unless_composite_is_set:S(6906,3,"false_unless_composite_is_set_6906","`false`, unless `composite` is set"),node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified:S(6907,3,"node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified_6907",'`["node_modules", "bower_components", "jspm_packages"]`, plus the value of `outDir` if one is specified.'),if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk:S(6908,3,"if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk_6908",'`[]` if `files` is specified, otherwise `["**/*"]`'),true_if_composite_false_otherwise:S(6909,3,"true_if_composite_false_otherwise_6909","`true` if `composite`, `false` otherwise"),module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node:S(69010,3,"module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node_69010","module === `AMD` or `UMD` or `System` or `ES6`, then `Classic`, Otherwise `Node`"),Computed_from_the_list_of_input_files:S(6911,3,"Computed_from_the_list_of_input_files_6911","Computed from the list of input files"),Platform_specific:S(6912,3,"Platform_specific_6912","Platform specific"),You_can_learn_about_all_of_the_compiler_options_at_0:S(6913,3,"You_can_learn_about_all_of_the_compiler_options_at_0_6913","You can learn about all of the compiler options at {0}"),Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_config_watch_mode_with_Colon:S(6914,3,"Including_watch_w_will_start_watching_the_current_project_for_the_file_changes_Once_set_you_can_conf_6914","Including --watch, -w will start watching the current project for the file changes. Once set, you can config watch mode with:"),Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_trigger_building_composite_projects_which_you_can_learn_more_about_at_0:S(6915,3,"Using_build_b_will_make_tsc_behave_more_like_a_build_orchestrator_than_a_compiler_This_is_used_to_tr_6915","Using --build, -b will make tsc behave more like a build orchestrator than a compiler. This is used to trigger building composite projects which you can learn more about at {0}"),COMMON_COMMANDS:S(6916,3,"COMMON_COMMANDS_6916","COMMON COMMANDS"),ALL_COMPILER_OPTIONS:S(6917,3,"ALL_COMPILER_OPTIONS_6917","ALL COMPILER OPTIONS"),WATCH_OPTIONS:S(6918,3,"WATCH_OPTIONS_6918","WATCH OPTIONS"),BUILD_OPTIONS:S(6919,3,"BUILD_OPTIONS_6919","BUILD OPTIONS"),COMMON_COMPILER_OPTIONS:S(6920,3,"COMMON_COMPILER_OPTIONS_6920","COMMON COMPILER OPTIONS"),COMMAND_LINE_FLAGS:S(6921,3,"COMMAND_LINE_FLAGS_6921","COMMAND LINE FLAGS"),tsc_Colon_The_TypeScript_Compiler:S(6922,3,"tsc_Colon_The_TypeScript_Compiler_6922","tsc: The TypeScript Compiler"),Compiles_the_current_project_tsconfig_json_in_the_working_directory:S(6923,3,"Compiles_the_current_project_tsconfig_json_in_the_working_directory_6923","Compiles the current project (tsconfig.json in the working directory.)"),Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options:S(6924,3,"Ignoring_tsconfig_json_compiles_the_specified_files_with_default_compiler_options_6924","Ignoring tsconfig.json, compiles the specified files with default compiler options."),Build_a_composite_project_in_the_working_directory:S(6925,3,"Build_a_composite_project_in_the_working_directory_6925","Build a composite project in the working directory."),Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory:S(6926,3,"Creates_a_tsconfig_json_with_the_recommended_settings_in_the_working_directory_6926","Creates a tsconfig.json with the recommended settings in the working directory."),Compiles_the_TypeScript_project_located_at_the_specified_path:S(6927,3,"Compiles_the_TypeScript_project_located_at_the_specified_path_6927","Compiles the TypeScript project located at the specified path."),An_expanded_version_of_this_information_showing_all_possible_compiler_options:S(6928,3,"An_expanded_version_of_this_information_showing_all_possible_compiler_options_6928","An expanded version of this information, showing all possible compiler options"),Compiles_the_current_project_with_additional_settings:S(6929,3,"Compiles_the_current_project_with_additional_settings_6929","Compiles the current project, with additional settings."),true_for_ES2022_and_above_including_ESNext:S(6930,3,"true_for_ES2022_and_above_including_ESNext_6930","`true` for ES2022 and above, including ESNext."),List_of_file_name_suffixes_to_search_when_resolving_a_module:S(6931,1,"List_of_file_name_suffixes_to_search_when_resolving_a_module_6931","List of file name suffixes to search when resolving a module."),Variable_0_implicitly_has_an_1_type:S(7005,1,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:S(7006,1,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:S(7008,1,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:S(7009,1,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:S(7010,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:S(7011,1,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation:S(7012,1,"This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation_7012","This overload implicitly returns the type '{0}' because it lacks a return type annotation."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:S(7013,1,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:S(7014,1,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:S(7015,1,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:S(7016,1,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:S(7017,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:S(7018,1,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:S(7019,1,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:S(7020,1,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:S(7022,1,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:S(7023,1,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:S(7024,1,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation:S(7025,1,"Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_retu_7025","Generator implicitly has yield type '{0}' because it does not yield any values. Consider supplying a return type annotation."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:S(7026,1,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:S(7027,1,"Unreachable_code_detected_7027","Unreachable code detected.",!0),Unused_label:S(7028,1,"Unused_label_7028","Unused label.",!0),Fallthrough_case_in_switch:S(7029,1,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:S(7030,1,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:S(7031,1,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:S(7032,1,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:S(7033,1,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:S(7034,1,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:S(7035,1,"Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare__7035","Try `npm i --save-dev @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:S(7036,1,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:S(7037,3,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:S(7038,3,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:S(7039,1,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:S(7040,1,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}'"),The_containing_arrow_function_captures_the_global_value_of_this:S(7041,1,"The_containing_arrow_function_captures_the_global_value_of_this_7041","The containing arrow function captures the global value of 'this'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:S(7042,1,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:S(7043,2,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:S(7044,2,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:S(7045,2,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:S(7046,2,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:S(7047,2,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:S(7048,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:S(7049,2,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:S(7050,2,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:S(7051,1,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1:S(7052,1,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1_7052","Element implicitly has an 'any' type because type '{0}' has no index signature. Did you mean to call '{1}'?"),Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1:S(7053,1,"Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1_7053","Element implicitly has an 'any' type because expression of type '{0}' can't be used to index type '{1}'."),No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1:S(7054,1,"No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1_7054","No index signature with a parameter of type '{0}' was found on type '{1}'."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:S(7055,1,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type_7055","'{0}', which lacks return-type annotation, implicitly has an '{1}' yield type."),The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed:S(7056,1,"The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_ty_7056","The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed."),yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation:S(7057,1,"yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_t_7057","'yield' expression implicitly results in an 'any' type because its containing generator lacks a return-type annotation."),If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1:S(7058,1,"If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_decl_7058","If the '{0}' package actually exposes this module, try adding a new declaration (.d.ts) file containing `declare module '{1}';`"),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead:S(7059,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead_7059","This syntax is reserved in files with the .mts or .cts extension. Use an `as` expression instead."),This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint:S(7060,1,"This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_cons_7060","This syntax is reserved in files with the .mts or .cts extension. Add a trailing comma or explicit constraint."),A_mapped_type_may_not_declare_properties_or_methods:S(7061,1,"A_mapped_type_may_not_declare_properties_or_methods_7061","A mapped type may not declare properties or methods."),You_cannot_rename_this_element:S(8e3,1,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:S(8001,1,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_TypeScript_files:S(8002,1,"import_can_only_be_used_in_TypeScript_files_8002","'import ... =' can only be used in TypeScript files."),export_can_only_be_used_in_TypeScript_files:S(8003,1,"export_can_only_be_used_in_TypeScript_files_8003","'export =' can only be used in TypeScript files."),Type_parameter_declarations_can_only_be_used_in_TypeScript_files:S(8004,1,"Type_parameter_declarations_can_only_be_used_in_TypeScript_files_8004","Type parameter declarations can only be used in TypeScript files."),implements_clauses_can_only_be_used_in_TypeScript_files:S(8005,1,"implements_clauses_can_only_be_used_in_TypeScript_files_8005","'implements' clauses can only be used in TypeScript files."),_0_declarations_can_only_be_used_in_TypeScript_files:S(8006,1,"_0_declarations_can_only_be_used_in_TypeScript_files_8006","'{0}' declarations can only be used in TypeScript files."),Type_aliases_can_only_be_used_in_TypeScript_files:S(8008,1,"Type_aliases_can_only_be_used_in_TypeScript_files_8008","Type aliases can only be used in TypeScript files."),The_0_modifier_can_only_be_used_in_TypeScript_files:S(8009,1,"The_0_modifier_can_only_be_used_in_TypeScript_files_8009","The '{0}' modifier can only be used in TypeScript files."),Type_annotations_can_only_be_used_in_TypeScript_files:S(8010,1,"Type_annotations_can_only_be_used_in_TypeScript_files_8010","Type annotations can only be used in TypeScript files."),Type_arguments_can_only_be_used_in_TypeScript_files:S(8011,1,"Type_arguments_can_only_be_used_in_TypeScript_files_8011","Type arguments can only be used in TypeScript files."),Parameter_modifiers_can_only_be_used_in_TypeScript_files:S(8012,1,"Parameter_modifiers_can_only_be_used_in_TypeScript_files_8012","Parameter modifiers can only be used in TypeScript files."),Non_null_assertions_can_only_be_used_in_TypeScript_files:S(8013,1,"Non_null_assertions_can_only_be_used_in_TypeScript_files_8013","Non-null assertions can only be used in TypeScript files."),Type_assertion_expressions_can_only_be_used_in_TypeScript_files:S(8016,1,"Type_assertion_expressions_can_only_be_used_in_TypeScript_files_8016","Type assertion expressions can only be used in TypeScript files."),Signature_declarations_can_only_be_used_in_TypeScript_files:S(8017,1,"Signature_declarations_can_only_be_used_in_TypeScript_files_8017","Signature declarations can only be used in TypeScript files."),Report_errors_in_js_files:S(8019,3,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:S(8020,1,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:S(8021,1,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:S(8022,1,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:S(8023,1,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:S(8024,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:S(8025,1,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one '@augments' or '@extends' tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:S(8026,1,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:S(8027,1,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:S(8028,1,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:S(8029,1,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:S(8030,1,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:S(8031,1,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Qualified_name_0_is_not_allowed_without_a_leading_param_object_1:S(8032,1,"Qualified_name_0_is_not_allowed_without_a_leading_param_object_1_8032","Qualified name '{0}' is not allowed without a leading '@param {object} {1}'."),A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags:S(8033,1,"A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags_8033","A JSDoc '@typedef' comment may not contain multiple '@type' tags."),The_tag_was_first_specified_here:S(8034,1,"The_tag_was_first_specified_here_8034","The tag was first specified here."),You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:S(8035,1,"You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder_8035","You cannot rename elements that are defined in a 'node_modules' folder."),You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder:S(8036,1,"You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder_8036","You cannot rename elements that are defined in another 'node_modules' folder."),Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files:S(8037,1,"Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files_8037","Type satisfaction expressions can only be used in TypeScript files."),Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export:S(8038,1,"Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export_8038","Decorators may not appear after 'export' or 'export default' if they also appear before 'export'."),A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag:S(8039,1,"A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag_8039","A JSDoc '@template' tag may not follow a '@typedef', '@callback', or '@overload' tag"),Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit:S(9005,1,"Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_9005","Declaration emit for this file requires using private name '{0}'. An explicit type annotation may unblock declaration emit."),Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:S(9006,1,"Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotati_9006","Declaration emit for this file requires using private name '{0}' from module '{1}'. An explicit type annotation may unblock declaration emit."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:S(17e3,1,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:S(17001,1,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:S(17002,1,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:S(17004,1,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:S(17005,1,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:S(17006,1,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:S(17007,1,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:S(17008,1,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:S(17009,1,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:S(17010,1,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:S(17011,1,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:S(17012,1,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:S(17013,1,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:S(17014,1,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:S(17015,1,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:S(17016,1,"The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_com_17016","The 'jsxFragmentFactory' compiler option must be provided to use JSX fragments with the 'jsxFactory' compiler option."),An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments:S(17017,1,"An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments_17017","An @jsxFrag pragma is required when using an @jsx pragma with JSX fragments."),Unknown_type_acquisition_option_0_Did_you_mean_1:S(17018,1,"Unknown_type_acquisition_option_0_Did_you_mean_1_17018","Unknown type acquisition option '{0}'. Did you mean '{1}'?"),_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:S(17019,1,"_0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17019","'{0}' at the end of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:S(17020,1,"_0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1_17020","'{0}' at the start of a type is not valid TypeScript syntax. Did you mean to write '{1}'?"),Unicode_escape_sequence_cannot_appear_here:S(17021,1,"Unicode_escape_sequence_cannot_appear_here_17021","Unicode escape sequence cannot appear here."),Circularity_detected_while_resolving_configuration_Colon_0:S(18e3,1,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),The_files_list_in_config_file_0_is_empty:S(18002,1,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:S(18003,1,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module:S(80001,2,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module_80001","File is a CommonJS module; it may be converted to an ES module."),This_constructor_function_may_be_converted_to_a_class_declaration:S(80002,2,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:S(80003,2,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:S(80004,2,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:S(80005,2,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:S(80006,2,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),await_has_no_effect_on_the_type_of_this_expression:S(80007,2,"await_has_no_effect_on_the_type_of_this_expression_80007","'await' has no effect on the type of this expression."),Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers:S(80008,2,"Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accur_80008","Numeric literals with absolute values equal to 2^53 or greater are too large to be represented accurately as integers."),JSDoc_typedef_may_be_converted_to_TypeScript_type:S(80009,2,"JSDoc_typedef_may_be_converted_to_TypeScript_type_80009","JSDoc typedef may be converted to TypeScript type."),JSDoc_typedefs_may_be_converted_to_TypeScript_types:S(80010,2,"JSDoc_typedefs_may_be_converted_to_TypeScript_types_80010","JSDoc typedefs may be converted to TypeScript types."),Add_missing_super_call:S(90001,3,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:S(90002,3,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:S(90003,3,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_unused_declaration_for_Colon_0:S(90004,3,"Remove_unused_declaration_for_Colon_0_90004","Remove unused declaration for: '{0}'"),Remove_import_from_0:S(90005,3,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:S(90006,3,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:S(90007,3,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:S(90008,3,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_variable_statement:S(90010,3,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:S(90011,3,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:S(90012,3,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_1:S(90013,3,"Import_0_from_1_90013",`Import '{0}' from "{1}"`),Change_0_to_1:S(90014,3,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Declare_property_0:S(90016,3,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:S(90017,3,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:S(90018,3,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:S(90019,3,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:S(90020,3,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:S(90021,3,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:S(90022,3,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:S(90023,3,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:S(90024,3,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:S(90025,3,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:S(90026,3,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:S(90027,3,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:S(90028,3,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:S(90029,3,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:S(90030,3,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:S(90031,3,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Add_parameter_name:S(90034,3,"Add_parameter_name_90034","Add parameter name"),Declare_private_property_0:S(90035,3,"Declare_private_property_0_90035","Declare private property '{0}'"),Replace_0_with_Promise_1:S(90036,3,"Replace_0_with_Promise_1_90036","Replace '{0}' with 'Promise<{1}>'"),Fix_all_incorrect_return_type_of_an_async_functions:S(90037,3,"Fix_all_incorrect_return_type_of_an_async_functions_90037","Fix all incorrect return type of an async functions"),Declare_private_method_0:S(90038,3,"Declare_private_method_0_90038","Declare private method '{0}'"),Remove_unused_destructuring_declaration:S(90039,3,"Remove_unused_destructuring_declaration_90039","Remove unused destructuring declaration"),Remove_unused_declarations_for_Colon_0:S(90041,3,"Remove_unused_declarations_for_Colon_0_90041","Remove unused declarations for: '{0}'"),Declare_a_private_field_named_0:S(90053,3,"Declare_a_private_field_named_0_90053","Declare a private field named '{0}'."),Includes_imports_of_types_referenced_by_0:S(90054,3,"Includes_imports_of_types_referenced_by_0_90054","Includes imports of types referenced by '{0}'"),Remove_type_from_import_declaration_from_0:S(90055,3,"Remove_type_from_import_declaration_from_0_90055",`Remove 'type' from import declaration from "{0}"`),Remove_type_from_import_of_0_from_1:S(90056,3,"Remove_type_from_import_of_0_from_1_90056",`Remove 'type' from import of '{0}' from "{1}"`),Add_import_from_0:S(90057,3,"Add_import_from_0_90057",'Add import from "{0}"'),Update_import_from_0:S(90058,3,"Update_import_from_0_90058",'Update import from "{0}"'),Export_0_from_module_1:S(90059,3,"Export_0_from_module_1_90059","Export '{0}' from module '{1}'"),Export_all_referenced_locals:S(90060,3,"Export_all_referenced_locals_90060","Export all referenced locals"),Convert_function_to_an_ES2015_class:S(95001,3,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_0_to_1_in_0:S(95003,3,"Convert_0_to_1_in_0_95003","Convert '{0}' to '{1} in {0}'"),Extract_to_0_in_1:S(95004,3,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:S(95005,3,"Extract_function_95005","Extract function"),Extract_constant:S(95006,3,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:S(95007,3,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:S(95008,3,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:S(95009,3,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Infer_type_of_0_from_usage:S(95011,3,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:S(95012,3,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:S(95013,3,"Convert_to_default_import_95013","Convert to default import"),Install_0:S(95014,3,"Install_0_95014","Install '{0}'"),Replace_import_with_0:S(95015,3,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:S(95016,3,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES_module:S(95017,3,"Convert_to_ES_module_95017","Convert to ES module"),Add_undefined_type_to_property_0:S(95018,3,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:S(95019,3,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:S(95020,3,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Convert_all_type_literals_to_mapped_type:S(95021,3,"Convert_all_type_literals_to_mapped_type_95021","Convert all type literals to mapped type"),Add_all_missing_members:S(95022,3,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:S(95023,3,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:S(95024,3,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:S(95025,3,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:S(95026,3,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:S(95027,3,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:S(95028,3,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:S(95029,3,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:S(95030,3,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:S(95031,3,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:S(95032,3,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:S(95033,3,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:S(95034,3,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:S(95035,3,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:S(95036,3,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:S(95037,3,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:S(95038,3,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:S(95039,3,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:S(95040,3,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:S(95041,3,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:S(95042,3,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:S(95043,3,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:S(95044,3,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:S(95045,3,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:S(95046,3,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:S(95047,3,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:S(95048,3,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:S(95049,3,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:S(95050,3,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:S(95051,3,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:S(95052,3,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:S(95053,3,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:S(95054,3,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:S(95055,3,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:S(95056,3,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:S(95057,3,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:S(95058,3,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:S(95059,3,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:S(95060,3,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:S(95061,3,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:S(95062,3,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:S(95063,3,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:S(95064,3,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:S(95065,3,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:S(95066,3,"Convert_all_to_async_functions_95066","Convert all to async functions"),Add_missing_call_parentheses:S(95067,3,"Add_missing_call_parentheses_95067","Add missing call parentheses"),Add_all_missing_call_parentheses:S(95068,3,"Add_all_missing_call_parentheses_95068","Add all missing call parentheses"),Add_unknown_conversion_for_non_overlapping_types:S(95069,3,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:S(95070,3,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:S(95071,3,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:S(95072,3,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:S(95073,3,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names"),Enable_the_experimentalDecorators_option_in_your_configuration_file:S(95074,3,"Enable_the_experimentalDecorators_option_in_your_configuration_file_95074","Enable the 'experimentalDecorators' option in your configuration file"),Convert_parameters_to_destructured_object:S(95075,3,"Convert_parameters_to_destructured_object_95075","Convert parameters to destructured object"),Extract_type:S(95077,3,"Extract_type_95077","Extract type"),Extract_to_type_alias:S(95078,3,"Extract_to_type_alias_95078","Extract to type alias"),Extract_to_typedef:S(95079,3,"Extract_to_typedef_95079","Extract to typedef"),Infer_this_type_of_0_from_usage:S(95080,3,"Infer_this_type_of_0_from_usage_95080","Infer 'this' type of '{0}' from usage"),Add_const_to_unresolved_variable:S(95081,3,"Add_const_to_unresolved_variable_95081","Add 'const' to unresolved variable"),Add_const_to_all_unresolved_variables:S(95082,3,"Add_const_to_all_unresolved_variables_95082","Add 'const' to all unresolved variables"),Add_await:S(95083,3,"Add_await_95083","Add 'await'"),Add_await_to_initializer_for_0:S(95084,3,"Add_await_to_initializer_for_0_95084","Add 'await' to initializer for '{0}'"),Fix_all_expressions_possibly_missing_await:S(95085,3,"Fix_all_expressions_possibly_missing_await_95085","Fix all expressions possibly missing 'await'"),Remove_unnecessary_await:S(95086,3,"Remove_unnecessary_await_95086","Remove unnecessary 'await'"),Remove_all_unnecessary_uses_of_await:S(95087,3,"Remove_all_unnecessary_uses_of_await_95087","Remove all unnecessary uses of 'await'"),Enable_the_jsx_flag_in_your_configuration_file:S(95088,3,"Enable_the_jsx_flag_in_your_configuration_file_95088","Enable the '--jsx' flag in your configuration file"),Add_await_to_initializers:S(95089,3,"Add_await_to_initializers_95089","Add 'await' to initializers"),Extract_to_interface:S(95090,3,"Extract_to_interface_95090","Extract to interface"),Convert_to_a_bigint_numeric_literal:S(95091,3,"Convert_to_a_bigint_numeric_literal_95091","Convert to a bigint numeric literal"),Convert_all_to_bigint_numeric_literals:S(95092,3,"Convert_all_to_bigint_numeric_literals_95092","Convert all to bigint numeric literals"),Convert_const_to_let:S(95093,3,"Convert_const_to_let_95093","Convert 'const' to 'let'"),Prefix_with_declare:S(95094,3,"Prefix_with_declare_95094","Prefix with 'declare'"),Prefix_all_incorrect_property_declarations_with_declare:S(95095,3,"Prefix_all_incorrect_property_declarations_with_declare_95095","Prefix all incorrect property declarations with 'declare'"),Convert_to_template_string:S(95096,3,"Convert_to_template_string_95096","Convert to template string"),Add_export_to_make_this_file_into_a_module:S(95097,3,"Add_export_to_make_this_file_into_a_module_95097","Add 'export {}' to make this file into a module"),Set_the_target_option_in_your_configuration_file_to_0:S(95098,3,"Set_the_target_option_in_your_configuration_file_to_0_95098","Set the 'target' option in your configuration file to '{0}'"),Set_the_module_option_in_your_configuration_file_to_0:S(95099,3,"Set_the_module_option_in_your_configuration_file_to_0_95099","Set the 'module' option in your configuration file to '{0}'"),Convert_invalid_character_to_its_html_entity_code:S(95100,3,"Convert_invalid_character_to_its_html_entity_code_95100","Convert invalid character to its html entity code"),Convert_all_invalid_characters_to_HTML_entity_code:S(95101,3,"Convert_all_invalid_characters_to_HTML_entity_code_95101","Convert all invalid characters to HTML entity code"),Convert_all_const_to_let:S(95102,3,"Convert_all_const_to_let_95102","Convert all 'const' to 'let'"),Convert_function_expression_0_to_arrow_function:S(95105,3,"Convert_function_expression_0_to_arrow_function_95105","Convert function expression '{0}' to arrow function"),Convert_function_declaration_0_to_arrow_function:S(95106,3,"Convert_function_declaration_0_to_arrow_function_95106","Convert function declaration '{0}' to arrow function"),Fix_all_implicit_this_errors:S(95107,3,"Fix_all_implicit_this_errors_95107","Fix all implicit-'this' errors"),Wrap_invalid_character_in_an_expression_container:S(95108,3,"Wrap_invalid_character_in_an_expression_container_95108","Wrap invalid character in an expression container"),Wrap_all_invalid_characters_in_an_expression_container:S(95109,3,"Wrap_all_invalid_characters_in_an_expression_container_95109","Wrap all invalid characters in an expression container"),Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file:S(95110,3,"Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file_95110","Visit https://aka.ms/tsconfig to read more about this file"),Add_a_return_statement:S(95111,3,"Add_a_return_statement_95111","Add a return statement"),Remove_braces_from_arrow_function_body:S(95112,3,"Remove_braces_from_arrow_function_body_95112","Remove braces from arrow function body"),Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal:S(95113,3,"Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal_95113","Wrap the following body with parentheses which should be an object literal"),Add_all_missing_return_statement:S(95114,3,"Add_all_missing_return_statement_95114","Add all missing return statement"),Remove_braces_from_all_arrow_function_bodies_with_relevant_issues:S(95115,3,"Remove_braces_from_all_arrow_function_bodies_with_relevant_issues_95115","Remove braces from all arrow function bodies with relevant issues"),Wrap_all_object_literal_with_parentheses:S(95116,3,"Wrap_all_object_literal_with_parentheses_95116","Wrap all object literal with parentheses"),Move_labeled_tuple_element_modifiers_to_labels:S(95117,3,"Move_labeled_tuple_element_modifiers_to_labels_95117","Move labeled tuple element modifiers to labels"),Convert_overload_list_to_single_signature:S(95118,3,"Convert_overload_list_to_single_signature_95118","Convert overload list to single signature"),Generate_get_and_set_accessors_for_all_overriding_properties:S(95119,3,"Generate_get_and_set_accessors_for_all_overriding_properties_95119","Generate 'get' and 'set' accessors for all overriding properties"),Wrap_in_JSX_fragment:S(95120,3,"Wrap_in_JSX_fragment_95120","Wrap in JSX fragment"),Wrap_all_unparented_JSX_in_JSX_fragment:S(95121,3,"Wrap_all_unparented_JSX_in_JSX_fragment_95121","Wrap all unparented JSX in JSX fragment"),Convert_arrow_function_or_function_expression:S(95122,3,"Convert_arrow_function_or_function_expression_95122","Convert arrow function or function expression"),Convert_to_anonymous_function:S(95123,3,"Convert_to_anonymous_function_95123","Convert to anonymous function"),Convert_to_named_function:S(95124,3,"Convert_to_named_function_95124","Convert to named function"),Convert_to_arrow_function:S(95125,3,"Convert_to_arrow_function_95125","Convert to arrow function"),Remove_parentheses:S(95126,3,"Remove_parentheses_95126","Remove parentheses"),Could_not_find_a_containing_arrow_function:S(95127,3,"Could_not_find_a_containing_arrow_function_95127","Could not find a containing arrow function"),Containing_function_is_not_an_arrow_function:S(95128,3,"Containing_function_is_not_an_arrow_function_95128","Containing function is not an arrow function"),Could_not_find_export_statement:S(95129,3,"Could_not_find_export_statement_95129","Could not find export statement"),This_file_already_has_a_default_export:S(95130,3,"This_file_already_has_a_default_export_95130","This file already has a default export"),Could_not_find_import_clause:S(95131,3,"Could_not_find_import_clause_95131","Could not find import clause"),Could_not_find_namespace_import_or_named_imports:S(95132,3,"Could_not_find_namespace_import_or_named_imports_95132","Could not find namespace import or named imports"),Selection_is_not_a_valid_type_node:S(95133,3,"Selection_is_not_a_valid_type_node_95133","Selection is not a valid type node"),No_type_could_be_extracted_from_this_type_node:S(95134,3,"No_type_could_be_extracted_from_this_type_node_95134","No type could be extracted from this type node"),Could_not_find_property_for_which_to_generate_accessor:S(95135,3,"Could_not_find_property_for_which_to_generate_accessor_95135","Could not find property for which to generate accessor"),Name_is_not_valid:S(95136,3,"Name_is_not_valid_95136","Name is not valid"),Can_only_convert_property_with_modifier:S(95137,3,"Can_only_convert_property_with_modifier_95137","Can only convert property with modifier"),Switch_each_misused_0_to_1:S(95138,3,"Switch_each_misused_0_to_1_95138","Switch each misused '{0}' to '{1}'"),Convert_to_optional_chain_expression:S(95139,3,"Convert_to_optional_chain_expression_95139","Convert to optional chain expression"),Could_not_find_convertible_access_expression:S(95140,3,"Could_not_find_convertible_access_expression_95140","Could not find convertible access expression"),Could_not_find_matching_access_expressions:S(95141,3,"Could_not_find_matching_access_expressions_95141","Could not find matching access expressions"),Can_only_convert_logical_AND_access_chains:S(95142,3,"Can_only_convert_logical_AND_access_chains_95142","Can only convert logical AND access chains"),Add_void_to_Promise_resolved_without_a_value:S(95143,3,"Add_void_to_Promise_resolved_without_a_value_95143","Add 'void' to Promise resolved without a value"),Add_void_to_all_Promises_resolved_without_a_value:S(95144,3,"Add_void_to_all_Promises_resolved_without_a_value_95144","Add 'void' to all Promises resolved without a value"),Use_element_access_for_0:S(95145,3,"Use_element_access_for_0_95145","Use element access for '{0}'"),Use_element_access_for_all_undeclared_properties:S(95146,3,"Use_element_access_for_all_undeclared_properties_95146","Use element access for all undeclared properties."),Delete_all_unused_imports:S(95147,3,"Delete_all_unused_imports_95147","Delete all unused imports"),Infer_function_return_type:S(95148,3,"Infer_function_return_type_95148","Infer function return type"),Return_type_must_be_inferred_from_a_function:S(95149,3,"Return_type_must_be_inferred_from_a_function_95149","Return type must be inferred from a function"),Could_not_determine_function_return_type:S(95150,3,"Could_not_determine_function_return_type_95150","Could not determine function return type"),Could_not_convert_to_arrow_function:S(95151,3,"Could_not_convert_to_arrow_function_95151","Could not convert to arrow function"),Could_not_convert_to_named_function:S(95152,3,"Could_not_convert_to_named_function_95152","Could not convert to named function"),Could_not_convert_to_anonymous_function:S(95153,3,"Could_not_convert_to_anonymous_function_95153","Could not convert to anonymous function"),Can_only_convert_string_concatenations_and_string_literals:S(95154,3,"Can_only_convert_string_concatenations_and_string_literals_95154","Can only convert string concatenations and string literals"),Selection_is_not_a_valid_statement_or_statements:S(95155,3,"Selection_is_not_a_valid_statement_or_statements_95155","Selection is not a valid statement or statements"),Add_missing_function_declaration_0:S(95156,3,"Add_missing_function_declaration_0_95156","Add missing function declaration '{0}'"),Add_all_missing_function_declarations:S(95157,3,"Add_all_missing_function_declarations_95157","Add all missing function declarations"),Method_not_implemented:S(95158,3,"Method_not_implemented_95158","Method not implemented."),Function_not_implemented:S(95159,3,"Function_not_implemented_95159","Function not implemented."),Add_override_modifier:S(95160,3,"Add_override_modifier_95160","Add 'override' modifier"),Remove_override_modifier:S(95161,3,"Remove_override_modifier_95161","Remove 'override' modifier"),Add_all_missing_override_modifiers:S(95162,3,"Add_all_missing_override_modifiers_95162","Add all missing 'override' modifiers"),Remove_all_unnecessary_override_modifiers:S(95163,3,"Remove_all_unnecessary_override_modifiers_95163","Remove all unnecessary 'override' modifiers"),Can_only_convert_named_export:S(95164,3,"Can_only_convert_named_export_95164","Can only convert named export"),Add_missing_properties:S(95165,3,"Add_missing_properties_95165","Add missing properties"),Add_all_missing_properties:S(95166,3,"Add_all_missing_properties_95166","Add all missing properties"),Add_missing_attributes:S(95167,3,"Add_missing_attributes_95167","Add missing attributes"),Add_all_missing_attributes:S(95168,3,"Add_all_missing_attributes_95168","Add all missing attributes"),Add_undefined_to_optional_property_type:S(95169,3,"Add_undefined_to_optional_property_type_95169","Add 'undefined' to optional property type"),Convert_named_imports_to_default_import:S(95170,3,"Convert_named_imports_to_default_import_95170","Convert named imports to default import"),Delete_unused_param_tag_0:S(95171,3,"Delete_unused_param_tag_0_95171","Delete unused '@param' tag '{0}'"),Delete_all_unused_param_tags:S(95172,3,"Delete_all_unused_param_tags_95172","Delete all unused '@param' tags"),Rename_param_tag_name_0_to_1:S(95173,3,"Rename_param_tag_name_0_to_1_95173","Rename '@param' tag name '{0}' to '{1}'"),Use_0:S(95174,3,"Use_0_95174","Use `{0}`."),Use_Number_isNaN_in_all_conditions:S(95175,3,"Use_Number_isNaN_in_all_conditions_95175","Use `Number.isNaN` in all conditions."),Convert_typedef_to_TypeScript_type:S(95176,3,"Convert_typedef_to_TypeScript_type_95176","Convert typedef to TypeScript type."),Convert_all_typedef_to_TypeScript_types:S(95177,3,"Convert_all_typedef_to_TypeScript_types_95177","Convert all typedef to TypeScript types."),Move_to_file:S(95178,3,"Move_to_file_95178","Move to file"),Cannot_move_to_file_selected_file_is_invalid:S(95179,3,"Cannot_move_to_file_selected_file_is_invalid_95179","Cannot move to file, selected file is invalid"),Use_import_type:S(95180,3,"Use_import_type_95180","Use 'import type'"),Use_type_0:S(95181,3,"Use_type_0_95181","Use 'type {0}'"),Fix_all_with_type_only_imports:S(95182,3,"Fix_all_with_type_only_imports_95182","Fix all with type-only imports"),Cannot_move_statements_to_the_selected_file:S(95183,3,"Cannot_move_statements_to_the_selected_file_95183","Cannot move statements to the selected file"),Inline_variable:S(95184,3,"Inline_variable_95184","Inline variable"),Could_not_find_variable_to_inline:S(95185,3,"Could_not_find_variable_to_inline_95185","Could not find variable to inline."),Variables_with_multiple_declarations_cannot_be_inlined:S(95186,3,"Variables_with_multiple_declarations_cannot_be_inlined_95186","Variables with multiple declarations cannot be inlined."),Add_missing_comma_for_object_member_completion_0:S(95187,3,"Add_missing_comma_for_object_member_completion_0_95187","Add missing comma for object member completion '{0}'."),Add_missing_parameter_to_0:S(95188,3,"Add_missing_parameter_to_0_95188","Add missing parameter to '{0}'"),Add_missing_parameters_to_0:S(95189,3,"Add_missing_parameters_to_0_95189","Add missing parameters to '{0}'"),Add_all_missing_parameters:S(95190,3,"Add_all_missing_parameters_95190","Add all missing parameters"),Add_optional_parameter_to_0:S(95191,3,"Add_optional_parameter_to_0_95191","Add optional parameter to '{0}'"),Add_optional_parameters_to_0:S(95192,3,"Add_optional_parameters_to_0_95192","Add optional parameters to '{0}'"),Add_all_optional_parameters:S(95193,3,"Add_all_optional_parameters_95193","Add all optional parameters"),No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:S(18004,1,"No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer_18004","No value exists in scope for the shorthand property '{0}'. Either declare one or provide an initializer."),Classes_may_not_have_a_field_named_constructor:S(18006,1,"Classes_may_not_have_a_field_named_constructor_18006","Classes may not have a field named 'constructor'."),JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array:S(18007,1,"JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array_18007","JSX expressions may not use the comma operator. Did you mean to write an array?"),Private_identifiers_cannot_be_used_as_parameters:S(18009,1,"Private_identifiers_cannot_be_used_as_parameters_18009","Private identifiers cannot be used as parameters."),An_accessibility_modifier_cannot_be_used_with_a_private_identifier:S(18010,1,"An_accessibility_modifier_cannot_be_used_with_a_private_identifier_18010","An accessibility modifier cannot be used with a private identifier."),The_operand_of_a_delete_operator_cannot_be_a_private_identifier:S(18011,1,"The_operand_of_a_delete_operator_cannot_be_a_private_identifier_18011","The operand of a 'delete' operator cannot be a private identifier."),constructor_is_a_reserved_word:S(18012,1,"constructor_is_a_reserved_word_18012","'#constructor' is a reserved word."),Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier:S(18013,1,"Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier_18013","Property '{0}' is not accessible outside class '{1}' because it has a private identifier."),The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling:S(18014,1,"The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_priv_18014","The property '{0}' cannot be accessed on type '{1}' within this class because it is shadowed by another private identifier with the same spelling."),Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2:S(18015,1,"Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2_18015","Property '{0}' in type '{1}' refers to a different member that cannot be accessed from within type '{2}'."),Private_identifiers_are_not_allowed_outside_class_bodies:S(18016,1,"Private_identifiers_are_not_allowed_outside_class_bodies_18016","Private identifiers are not allowed outside class bodies."),The_shadowing_declaration_of_0_is_defined_here:S(18017,1,"The_shadowing_declaration_of_0_is_defined_here_18017","The shadowing declaration of '{0}' is defined here"),The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here:S(18018,1,"The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here_18018","The declaration of '{0}' that you probably intended to use is defined here"),_0_modifier_cannot_be_used_with_a_private_identifier:S(18019,1,"_0_modifier_cannot_be_used_with_a_private_identifier_18019","'{0}' modifier cannot be used with a private identifier."),An_enum_member_cannot_be_named_with_a_private_identifier:S(18024,1,"An_enum_member_cannot_be_named_with_a_private_identifier_18024","An enum member cannot be named with a private identifier."),can_only_be_used_at_the_start_of_a_file:S(18026,1,"can_only_be_used_at_the_start_of_a_file_18026","'#!' can only be used at the start of a file."),Compiler_reserves_name_0_when_emitting_private_identifier_downlevel:S(18027,1,"Compiler_reserves_name_0_when_emitting_private_identifier_downlevel_18027","Compiler reserves name '{0}' when emitting private identifier downlevel."),Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher:S(18028,1,"Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher_18028","Private identifiers are only available when targeting ECMAScript 2015 and higher."),Private_identifiers_are_not_allowed_in_variable_declarations:S(18029,1,"Private_identifiers_are_not_allowed_in_variable_declarations_18029","Private identifiers are not allowed in variable declarations."),An_optional_chain_cannot_contain_private_identifiers:S(18030,1,"An_optional_chain_cannot_contain_private_identifiers_18030","An optional chain cannot contain private identifiers."),The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents:S(18031,1,"The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituent_18031","The intersection '{0}' was reduced to 'never' because property '{1}' has conflicting types in some constituents."),The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some:S(18032,1,"The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_pr_18032","The intersection '{0}' was reduced to 'never' because property '{1}' exists in multiple constituents and is private in some."),Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values:S(18033,1,"Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values_18033","Type '{0}' is not assignable to type '{1}' as required for computed enum member values."),Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compiler_option_is_specified_e_g_Fragment:S(18034,3,"Specify_the_JSX_fragment_factory_function_to_use_when_targeting_react_JSX_emit_with_jsxFactory_compi_18034","Specify the JSX fragment factory function to use when targeting 'react' JSX emit with 'jsxFactory' compiler option is specified, e.g. 'Fragment'."),Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name:S(18035,1,"Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name_18035","Invalid value for 'jsxFragmentFactory'. '{0}' is not a valid identifier or qualified-name."),Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator:S(18036,1,"Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_dec_18036","Class decorators can't be used with static private identifier. Consider removing the experimental decorator."),await_expression_cannot_be_used_inside_a_class_static_block:S(18037,1,"await_expression_cannot_be_used_inside_a_class_static_block_18037","'await' expression cannot be used inside a class static block."),for_await_loops_cannot_be_used_inside_a_class_static_block:S(18038,1,"for_await_loops_cannot_be_used_inside_a_class_static_block_18038","'for await' loops cannot be used inside a class static block."),Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block:S(18039,1,"Invalid_use_of_0_It_cannot_be_used_inside_a_class_static_block_18039","Invalid use of '{0}'. It cannot be used inside a class static block."),A_return_statement_cannot_be_used_inside_a_class_static_block:S(18041,1,"A_return_statement_cannot_be_used_inside_a_class_static_block_18041","A 'return' statement cannot be used inside a class static block."),_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation:S(18042,1,"_0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation_18042","'{0}' is a type and cannot be imported in JavaScript files. Use '{1}' in a JSDoc type annotation."),Types_cannot_appear_in_export_declarations_in_JavaScript_files:S(18043,1,"Types_cannot_appear_in_export_declarations_in_JavaScript_files_18043","Types cannot appear in export declarations in JavaScript files."),_0_is_automatically_exported_here:S(18044,3,"_0_is_automatically_exported_here_18044","'{0}' is automatically exported here."),Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher:S(18045,1,"Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher_18045","Properties with the 'accessor' modifier are only available when targeting ECMAScript 2015 and higher."),_0_is_of_type_unknown:S(18046,1,"_0_is_of_type_unknown_18046","'{0}' is of type 'unknown'."),_0_is_possibly_null:S(18047,1,"_0_is_possibly_null_18047","'{0}' is possibly 'null'."),_0_is_possibly_undefined:S(18048,1,"_0_is_possibly_undefined_18048","'{0}' is possibly 'undefined'."),_0_is_possibly_null_or_undefined:S(18049,1,"_0_is_possibly_null_or_undefined_18049","'{0}' is possibly 'null' or 'undefined'."),The_value_0_cannot_be_used_here:S(18050,1,"The_value_0_cannot_be_used_here_18050","The value '{0}' cannot be used here."),Compiler_option_0_cannot_be_given_an_empty_string:S(18051,1,"Compiler_option_0_cannot_be_given_an_empty_string_18051","Compiler option '{0}' cannot be given an empty string."),Non_abstract_class_0_does_not_implement_all_abstract_members_of_1:S(18052,1,"Non_abstract_class_0_does_not_implement_all_abstract_members_of_1_18052","Non-abstract class '{0}' does not implement all abstract members of '{1}'"),Its_type_0_is_not_a_valid_JSX_element_type:S(18053,1,"Its_type_0_is_not_a_valid_JSX_element_type_18053","Its type '{0}' is not a valid JSX element type."),await_using_statements_cannot_be_used_inside_a_class_static_block:S(18054,1,"await_using_statements_cannot_be_used_inside_a_class_static_block_18054","'await using' statements cannot be used inside a class static block.")}}});function sd(e){return e>=80}function sre(e){return e===32||sd(e)}function eL(e,t){if(e<t[0])return!1;let r=0,i=t.length,o;for(;r+1<i;){if(o=r+(i-r)/2,o-=o%2,t[o]<=e&&e<=t[o+1])return!0;e<t[o]?i=o:r=o+2}return!1}function f4(e,t){return t>=2?eL(e,oSe):t===1?eL(e,rSe):eL(e,tSe)}function SBe(e,t){return t>=2?eL(e,aSe):t===1?eL(e,iSe):eL(e,nSe)}function TBe(e){const t=[];return e.forEach((r,i)=>{t[r]=i}),t}function fa(e){return uSe[e]}function PE(e){return dre.get(e)}function DA(e){const t=[];let r=0,i=0;for(;r<e.length;){const o=e.charCodeAt(r);switch(r++,o){case 13:e.charCodeAt(r)===10&&r++;case 10:t.push(i),i=r;break;default:o>127&&Hu(o)&&(t.push(i),i=r);break}}return t.push(i),t}function tL(e,t,r,i){return e.getPositionOfLineAndCharacter?e.getPositionOfLineAndCharacter(t,r,i):m4(kg(e),t,r,e.text,i)}function m4(e,t,r,i,o){(t<0||t>=e.length)&&(o?t=t<0?0:t>=e.length?e.length-1:t:N.fail(`Bad line number. Line: ${t}, lineStarts.length: ${e.length} , line map is correct? ${i!==void 0?Ca(e,DA(i)):"unknown"}`));const s=e[t]+r;return o?s>e[t+1]?e[t+1]:typeof i=="string"&&s>i.length?i.length:s:(t<e.length-1?N.assert(s<e[t+1]):i!==void 0&&N.assert(s<=i.length),s)}function kg(e){return e.lineMap||(e.lineMap=DA(e.text))}function Kx(e,t){const r=iC(e,t);return{line:r,character:t-e[r]}}function iC(e,t,r){let i=Nv(e,t,nl,rl,r);return i<0&&(i=~i-1,N.assert(i!==-1,"position cannot precede the beginning of the file")),i}function oC(e,t,r){if(t===r)return 0;const i=kg(e),o=Math.min(t,r),s=o===r,l=s?t:r,u=iC(i,o),p=iC(i,l,u);return s?u-p:p-u}function bs(e,t){return Kx(kg(e),t)}function wg(e){return A_(e)||Hu(e)}function A_(e){return e===32||e===9||e===11||e===12||e===160||e===133||e===5760||e>=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}function Hu(e){return e===10||e===13||e===8232||e===8233}function aC(e){return e>=48&&e<=57}function Q1e(e){return aC(e)||e>=65&&e<=70||e>=97&&e<=102}function ABe(e){return e<=1114111}function _4(e){return e>=48&&e<=55}function lre(e,t){const r=e.charCodeAt(t);switch(r){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return!0;case 35:return t===0;default:return r>127}}function ka(e,t,r,i,o){if(Zm(t))return t;let s=!1;for(;;){const l=e.charCodeAt(t);switch(l){case 13:e.charCodeAt(t+1)===10&&t++;case 10:if(t++,r)return t;s=!!o;continue;case 9:case 11:case 12:case 32:t++;continue;case 47:if(i)break;if(e.charCodeAt(t+1)===47){for(t+=2;t<e.length&&!Hu(e.charCodeAt(t));)t++;s=!1;continue}if(e.charCodeAt(t+1)===42){for(t+=2;t<e.length;){if(e.charCodeAt(t)===42&&e.charCodeAt(t+1)===47){t+=2;break}t++}s=!1;continue}break;case 60:case 124:case 61:case 62:if(sC(e,t)){t=nL(e,t),s=!1;continue}break;case 35:if(t===0&&GV(e,t)){t=VV(e,t),s=!1;continue}break;case 42:if(s){t++,s=!1;continue}break;default:if(l>127&&wg(l)){t++;continue}break}return t}}function sC(e,t){if(N.assert(t>=0),t===0||Hu(e.charCodeAt(t-1))){const r=e.charCodeAt(t);if(t+g4<e.length){for(let i=0;i<g4;i++)if(e.charCodeAt(t+i)!==r)return!1;return r===61||e.charCodeAt(t+g4)===32}}return!1}function nL(e,t,r){r&&r(f.Merge_conflict_marker_encountered,t,g4);const i=e.charCodeAt(t),o=e.length;if(i===60||i===62)for(;t<o&&!Hu(e.charCodeAt(t));)t++;else for(N.assert(i===124||i===61);t<o;){const s=e.charCodeAt(t);if((s===61||s===62)&&s!==i&&sC(e,t))break;t++}return t}function GV(e,t){return N.assert(t===0),UV.test(e)}function VV(e,t){const r=UV.exec(e)[0];return t=t+r.length,t}function jV(e,t,r,i,o,s,l){let u,p,h,m,b=!1,A=i,I=l;if(r===0){A=!0;const R=h4(t);R&&(r=R.length)}e:for(;r>=0&&r<t.length;){const R=t.charCodeAt(r);switch(R){case 13:t.charCodeAt(r+1)===10&&r++;case 10:if(r++,i)break e;A=!0,b&&(m=!0);continue;case 9:case 11:case 12:case 32:r++;continue;case 47:const M=t.charCodeAt(r+1);let C=!1;if(M===47||M===42){const O=M===47?2:3,U=r;if(r+=2,M===47)for(;r<t.length;){if(Hu(t.charCodeAt(r))){C=!0;break}r++}else for(;r<t.length;){if(t.charCodeAt(r)===42&&t.charCodeAt(r+1)===47){r+=2;break}r++}if(A){if(b&&(I=o(u,p,h,m,s,I),!e&&I))return I;u=U,p=r,h=O,m=C,b=!0}continue}break e;default:if(R>127&&wg(R)){b&&Hu(R)&&(m=!0),r++;continue}break e}}return b&&(I=o(u,p,h,m,s,I)),I}function rL(e,t,r,i){return jV(!1,e,t,!1,r,i)}function iL(e,t,r,i){return jV(!1,e,t,!0,r,i)}function cre(e,t,r,i,o){return jV(!0,e,t,!1,r,i,o)}function ure(e,t,r,i,o){return jV(!0,e,t,!0,r,i,o)}function Z1e(e,t,r,i,o,s=[]){return s.push({kind:r,pos:e,end:t,hasTrailingNewLine:i}),s}function Yh(e,t){return cre(e,t,Z1e,void 0,void 0)}function a0(e,t){return ure(e,t,Z1e,void 0,void 0)}function h4(e){const t=UV.exec(e);if(t)return t[0]}function $h(e,t){return e>=65&&e<=90||e>=97&&e<=122||e===36||e===95||e>127&&f4(e,t)}function s0(e,t,r){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===36||e===95||(r===1?e===45||e===58:!1)||e>127&&SBe(e,t)}function tf(e,t,r){let i=My(e,0);if(!$h(i,t))return!1;for(let o=l0(i);o<e.length;o+=l0(i))if(!s0(i=My(e,o),t,r))return!1;return!0}function wv(e,t,r=0,i,o,s,l){var u=i,p,h,m,b,A,I,R,M,C=0,O=0,U=0;zt(u,s,l);var K={getTokenFullStart:()=>m,getStartPos:()=>m,getTokenEnd:()=>p,getTextPos:()=>p,getToken:()=>A,getTokenStart:()=>b,getTokenPos:()=>b,getTokenText:()=>u.substring(b,p),getTokenValue:()=>I,hasUnicodeEscape:()=>(R&1024)!==0,hasExtendedUnicodeEscape:()=>(R&8)!==0,hasPrecedingLineBreak:()=>(R&1)!==0,hasPrecedingJSDocComment:()=>(R&2)!==0,isIdentifier:()=>A===80||A>118,isReservedWord:()=>A>=83&&A<=118,isUnterminated:()=>(R&4)!==0,getCommentDirectives:()=>M,getNumericLiteralFlags:()=>R&25584,getTokenFlags:()=>R,reScanGreaterToken:Se,reScanAsteriskEqualsToken:je,reScanSlashToken:at,reScanTemplateToken:$e,reScanTemplateHeadOrNoSubstitutionTemplate:It,scanJsxIdentifier:Qt,scanJsxAttributeValue:$t,reScanJsxAttributeValue:_i,reScanJsxToken:tn,reScanLessThanToken:rn,reScanHashToken:Pn,reScanQuestionToken:Xn,reScanInvalidIdentifier:We,scanJsxToken:hn,scanJsDocToken:Oi,scanJSDocCommentTextToken:ao,scan:De,getText:sn,clearCommentDirectives:tt,setText:zt,setScriptTarget:li,setLanguageVariant:hi,setScriptKind:Qi,setJSDocParsingMode:Io,setOnError:Rn,resetTokenState:ma,setTextPos:ma,setInJSDocType:Wa,tryScan:Ar,lookAhead:Di,scanRange:Mn};return N.isDebugging&&Object.defineProperty(K,"__debugShowCurrentPositionInText",{get:()=>{const Sn=K.getText();return Sn.slice(0,K.getTokenFullStart())+"║"+Sn.slice(K.getTokenFullStart())}}),K;function Z(Sn,kn=p,qe,mt){if(o){const ft=p;p=kn,o(Sn,qe||0,mt),p=ft}}function V(){let Sn=p,kn=!1,qe=!1,mt="";for(;;){const ft=u.charCodeAt(p);if(ft===95){R|=512,kn?(kn=!1,qe=!0,mt+=u.substring(Sn,p)):(R|=16384,Z(qe?f.Multiple_consecutive_numeric_separators_are_not_permitted:f.Numeric_separators_are_not_allowed_here,p,1)),p++,Sn=p;continue}if(aC(ft)){kn=!0,qe=!1,p++;continue}break}return u.charCodeAt(p-1)===95&&(R|=16384,Z(f.Numeric_separators_are_not_allowed_here,p-1,1)),mt+u.substring(Sn,p)}function se(){let Sn=p,kn;if(u.charCodeAt(p)===48)if(p++,u.charCodeAt(p)===95)R|=16896,Z(f.Numeric_separators_are_not_allowed_here,p,1),p--,kn=V();else if(!ne())R|=8192,kn=""+ +I;else if(!I)kn="0";else{I=""+parseInt(I,8),R|=32;const le=A===41,Fe=(le?"-":"")+"0o"+(+I).toString(8);return le&&Sn--,Z(f.Octal_literals_are_not_allowed_Use_the_syntax_0,Sn,p-Sn,Fe),9}else kn=V();let qe,mt;u.charCodeAt(p)===46&&(p++,qe=V());let ft=p;if(u.charCodeAt(p)===69||u.charCodeAt(p)===101){p++,R|=16,(u.charCodeAt(p)===43||u.charCodeAt(p)===45)&&p++;const le=p,Fe=V();Fe?(mt=u.substring(ft,le)+Fe,ft=p):Z(f.Digit_expected)}let Ct;if(R&512?(Ct=kn,qe&&(Ct+="."+qe),mt&&(Ct+=mt)):Ct=u.substring(Sn,ft),R&8192)return Z(f.Decimals_with_leading_zeros_are_not_allowed,Sn,ft-Sn),I=""+ +Ct,9;if(qe!==void 0||R&16)return G(Sn,qe===void 0&&!!(R&16)),I=""+ +Ct,9;{I=Ct;const le=Ee();return G(Sn),le}}function G(Sn,kn){if(!$h(My(u,p),e))return;const qe=p,{length:mt}=ve();mt===1&&u[qe]==="n"?Z(kn?f.A_bigint_literal_cannot_use_exponential_notation:f.A_bigint_literal_must_be_an_integer,Sn,qe-Sn+1):(Z(f.An_identifier_or_keyword_cannot_immediately_follow_a_numeric_literal,qe,mt),p=qe)}function ne(){const Sn=p;let kn=!0;for(;aC(u.charCodeAt(p));)_4(u.charCodeAt(p))||(kn=!1),p++;return I=u.substring(Sn,p),kn}function he(Sn,kn){const qe=$(Sn,!1,kn);return qe?parseInt(qe,16):-1}function ye(Sn,kn){return $(Sn,!0,kn)}function $(Sn,kn,qe){let mt=[],ft=!1,Ct=!1;for(;mt.length<Sn||kn;){let le=u.charCodeAt(p);if(qe&&le===95){R|=512,ft?(ft=!1,Ct=!0):Z(Ct?f.Multiple_consecutive_numeric_separators_are_not_permitted:f.Numeric_separators_are_not_allowed_here,p,1),p++;continue}if(ft=qe,le>=65&&le<=70)le+=32;else if(!(le>=48&&le<=57||le>=97&&le<=102))break;mt.push(le),p++,Ct=!1}return mt.length<Sn&&(mt=[]),u.charCodeAt(p-1)===95&&Z(f.Numeric_separators_are_not_allowed_here,p-1,1),String.fromCharCode(...mt)}function Y(Sn=!1){const kn=u.charCodeAt(p);p++;let qe="",mt=p;for(;;){if(p>=h){qe+=u.substring(mt,p),R|=4,Z(f.Unterminated_string_literal);break}const ft=u.charCodeAt(p);if(ft===kn){qe+=u.substring(mt,p),p++;break}if(ft===92&&!Sn){qe+=u.substring(mt,p),qe+=fe(!0),mt=p;continue}if((ft===10||ft===13)&&!Sn){qe+=u.substring(mt,p),R|=4,Z(f.Unterminated_string_literal);break}p++}return qe}function oe(Sn){const kn=u.charCodeAt(p)===96;p++;let qe=p,mt="",ft;for(;;){if(p>=h){mt+=u.substring(qe,p),R|=4,Z(f.Unterminated_template_literal),ft=kn?15:18;break}const Ct=u.charCodeAt(p);if(Ct===96){mt+=u.substring(qe,p),p++,ft=kn?15:18;break}if(Ct===36&&p+1<h&&u.charCodeAt(p+1)===123){mt+=u.substring(qe,p),p+=2,ft=kn?16:17;break}if(Ct===92){mt+=u.substring(qe,p),mt+=fe(Sn),qe=p;continue}if(Ct===13){mt+=u.substring(qe,p),p++,p<h&&u.charCodeAt(p)===10&&p++,mt+=`
+`,qe=p;continue}p++}return N.assert(ft!==void 0),I=mt,ft}function fe(Sn){const kn=p;if(p++,p>=h)return Z(f.Unexpected_end_of_text),"";const qe=u.charCodeAt(p);switch(p++,qe){case 48:if(p>=h||!aC(u.charCodeAt(p)))return"\0";case 49:case 50:case 51:p<h&&_4(u.charCodeAt(p))&&p++;case 52:case 53:case 54:case 55:if(p<h&&_4(u.charCodeAt(p))&&p++,R|=2048,Sn){const mt=parseInt(u.substring(kn+1,p),8);return Z(f.Octal_escape_sequences_are_not_allowed_Use_the_syntax_0,kn,p-kn,"\\x"+mt.toString(16).padStart(2,"0")),String.fromCharCode(mt)}return u.substring(kn,p);case 56:case 57:return R|=2048,Sn?(Z(f.Escape_sequence_0_is_not_allowed,kn,p-kn,u.substring(kn,p)),String.fromCharCode(qe)):u.substring(kn,p);case 98:return"\b";case 116:return" ";case 110:return`
+`;case 118:return"\v";case 102:return"\f";case 114:return"\r";case 39:return"'";case 34:return'"';case 117:if(p<h&&u.charCodeAt(p)===123){p++;const mt=ye(1,!1),ft=mt?parseInt(mt,16):-1;return ft<0?(R|=2048,Sn&&Z(f.Hexadecimal_digit_expected),u.substring(kn,p)):ABe(ft)?p>=h?(R|=2048,Sn&&Z(f.Unexpected_end_of_text),u.substring(kn,p)):u.charCodeAt(p)!==125?(R|=2048,Sn&&Z(f.Unterminated_Unicode_escape_sequence),u.substring(kn,p)):(p++,R|=8,Xx(ft)):(R|=2048,Sn&&Z(f.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),u.substring(kn,p))}for(;p<kn+6;p++)if(!(p<h&&Q1e(u.charCodeAt(p))))return R|=2048,Sn&&Z(f.Hexadecimal_digit_expected),u.substring(kn,p);return R|=1024,String.fromCharCode(parseInt(u.substring(kn+2,p),16));case 120:for(;p<kn+4;p++)if(!(p<h&&Q1e(u.charCodeAt(p))))return R|=2048,Sn&&Z(f.Hexadecimal_digit_expected),u.substring(kn,p);return R|=4096,String.fromCharCode(parseInt(u.substring(kn+2,p),16));case 13:p<h&&u.charCodeAt(p)===10&&p++;case 10:case 8232:case 8233:return"";default:return String.fromCharCode(qe)}}function Ne(){const Sn=ye(1,!1),kn=Sn?parseInt(Sn,16):-1;let qe=!1;return kn<0?(Z(f.Hexadecimal_digit_expected),qe=!0):kn>1114111&&(Z(f.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive),qe=!0),p>=h?(Z(f.Unexpected_end_of_text),qe=!0):u.charCodeAt(p)===125?p++:(Z(f.Unterminated_Unicode_escape_sequence),qe=!0),qe?"":Xx(kn)}function pe(){if(p+5<h&&u.charCodeAt(p+1)===117){const Sn=p;p+=2;const kn=he(4,!1);return p=Sn,kn}return-1}function ie(){if(My(u,p+1)===117&&My(u,p+2)===123){const Sn=p;p+=3;const kn=ye(1,!1),qe=kn?parseInt(kn,16):-1;return p=Sn,qe}return-1}function ve(){let Sn="",kn=p;for(;p<h;){let qe=My(u,p);if(s0(qe,e))p+=l0(qe);else if(qe===92){if(qe=ie(),qe>=0&&s0(qe,e)){p+=3,R|=8,Sn+=Ne(),kn=p;continue}if(qe=pe(),!(qe>=0&&s0(qe,e)))break;R|=1024,Sn+=u.substring(kn,p),Sn+=Xx(qe),p+=6,kn=p}else break}return Sn+=u.substring(kn,p),Sn}function Le(){const Sn=I.length;if(Sn>=2&&Sn<=12){const kn=I.charCodeAt(0);if(kn>=97&&kn<=122){const qe=eSe.get(I);if(qe!==void 0)return A=qe}}return A=80}function He(Sn){let kn="",qe=!1,mt=!1;for(;;){const ft=u.charCodeAt(p);if(ft===95){R|=512,qe?(qe=!1,mt=!0):Z(mt?f.Multiple_consecutive_numeric_separators_are_not_permitted:f.Numeric_separators_are_not_allowed_here,p,1),p++;continue}if(qe=!0,!aC(ft)||ft-48>=Sn)break;kn+=u[p],p++,mt=!1}return u.charCodeAt(p-1)===95&&Z(f.Numeric_separators_are_not_allowed_here,p-1,1),kn}function Ee(){return u.charCodeAt(p)===110?(I+="n",R&384&&(I=eP(I)+"n"),p++,10):(I=""+(R&128?parseInt(I.slice(2),2):R&256?parseInt(I.slice(2),8):+I),9)}function De(){m=p,R=0;let Sn=!1;for(;;){if(b=p,p>=h)return A=1;const kn=My(u,p);if(p===0){if(u.slice(0,256).includes("�"))return Z(f.File_appears_to_be_binary),p=h,A=8;if(kn===35&&GV(u,p)){if(p=VV(u,p),t)continue;return A=6}}switch(kn){case 10:case 13:if(R|=1,t){p++;continue}else return kn===13&&p+1<h&&u.charCodeAt(p+1)===10?p+=2:p++,A=4;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 8203:case 8239:case 8287:case 12288:case 65279:if(t){p++;continue}else{for(;p<h&&A_(u.charCodeAt(p));)p++;return A=5}case 33:return u.charCodeAt(p+1)===61?u.charCodeAt(p+2)===61?(p+=3,A=38):(p+=2,A=36):(p++,A=54);case 34:case 39:return I=Y(),A=11;case 96:return A=oe(!1);case 37:return u.charCodeAt(p+1)===61?(p+=2,A=70):(p++,A=45);case 38:return u.charCodeAt(p+1)===38?u.charCodeAt(p+2)===61?(p+=3,A=77):(p+=2,A=56):u.charCodeAt(p+1)===61?(p+=2,A=74):(p++,A=51);case 40:return p++,A=21;case 41:return p++,A=22;case 42:if(u.charCodeAt(p+1)===61)return p+=2,A=67;if(u.charCodeAt(p+1)===42)return u.charCodeAt(p+2)===61?(p+=3,A=68):(p+=2,A=43);if(p++,C&&!Sn&&R&1){Sn=!0;continue}return A=42;case 43:return u.charCodeAt(p+1)===43?(p+=2,A=46):u.charCodeAt(p+1)===61?(p+=2,A=65):(p++,A=40);case 44:return p++,A=28;case 45:return u.charCodeAt(p+1)===45?(p+=2,A=47):u.charCodeAt(p+1)===61?(p+=2,A=66):(p++,A=41);case 46:return aC(u.charCodeAt(p+1))?(se(),A=9):u.charCodeAt(p+1)===46&&u.charCodeAt(p+2)===46?(p+=3,A=26):(p++,A=25);case 47:if(u.charCodeAt(p+1)===47){for(p+=2;p<h&&!Hu(u.charCodeAt(p));)p++;if(M=Gt(M,u.slice(b,p),sSe,b),t)continue;return A=2}if(u.charCodeAt(p+1)===42){p+=2;const Fe=u.charCodeAt(p)===42&&u.charCodeAt(p+1)!==47;let pt=!1,j=b;for(;p<h;){const ot=u.charCodeAt(p);if(ot===42&&u.charCodeAt(p+1)===47){p+=2,pt=!0;break}p++,Hu(ot)&&(j=p,R|=1)}if(Fe&&Pe()&&(R|=2),M=Gt(M,u.slice(j,p),lSe,j),pt||Z(f.Asterisk_Slash_expected),t)continue;return pt||(R|=4),A=3}return u.charCodeAt(p+1)===61?(p+=2,A=69):(p++,A=44);case 48:if(p+2<h&&(u.charCodeAt(p+1)===88||u.charCodeAt(p+1)===120))return p+=2,I=ye(1,!0),I||(Z(f.Hexadecimal_digit_expected),I="0"),I="0x"+I,R|=64,A=Ee();if(p+2<h&&(u.charCodeAt(p+1)===66||u.charCodeAt(p+1)===98))return p+=2,I=He(2),I||(Z(f.Binary_digit_expected),I="0"),I="0b"+I,R|=128,A=Ee();if(p+2<h&&(u.charCodeAt(p+1)===79||u.charCodeAt(p+1)===111))return p+=2,I=He(8),I||(Z(f.Octal_digit_expected),I="0"),I="0o"+I,R|=256,A=Ee();case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return A=se();case 58:return p++,A=59;case 59:return p++,A=27;case 60:if(sC(u,p)){if(p=nL(u,p,Z),t)continue;return A=7}return u.charCodeAt(p+1)===60?u.charCodeAt(p+2)===61?(p+=3,A=71):(p+=2,A=48):u.charCodeAt(p+1)===61?(p+=2,A=33):r===1&&u.charCodeAt(p+1)===47&&u.charCodeAt(p+2)!==42?(p+=2,A=31):(p++,A=30);case 61:if(sC(u,p)){if(p=nL(u,p,Z),t)continue;return A=7}return u.charCodeAt(p+1)===61?u.charCodeAt(p+2)===61?(p+=3,A=37):(p+=2,A=35):u.charCodeAt(p+1)===62?(p+=2,A=39):(p++,A=64);case 62:if(sC(u,p)){if(p=nL(u,p,Z),t)continue;return A=7}return p++,A=32;case 63:return u.charCodeAt(p+1)===46&&!aC(u.charCodeAt(p+2))?(p+=2,A=29):u.charCodeAt(p+1)===63?u.charCodeAt(p+2)===61?(p+=3,A=78):(p+=2,A=61):(p++,A=58);case 91:return p++,A=23;case 93:return p++,A=24;case 94:return u.charCodeAt(p+1)===61?(p+=2,A=79):(p++,A=53);case 123:return p++,A=19;case 124:if(sC(u,p)){if(p=nL(u,p,Z),t)continue;return A=7}return u.charCodeAt(p+1)===124?u.charCodeAt(p+2)===61?(p+=3,A=76):(p+=2,A=57):u.charCodeAt(p+1)===61?(p+=2,A=75):(p++,A=52);case 125:return p++,A=20;case 126:return p++,A=55;case 64:return p++,A=60;case 92:const qe=ie();if(qe>=0&&$h(qe,e))return p+=3,R|=8,I=Ne()+ve(),A=Le();const mt=pe();return mt>=0&&$h(mt,e)?(p+=6,R|=1024,I=String.fromCharCode(mt)+ve(),A=Le()):(Z(f.Invalid_character),p++,A=0);case 35:if(p!==0&&u[p+1]==="!")return Z(f.can_only_be_used_at_the_start_of_a_file),p++,A=0;const ft=My(u,p+1);if(ft===92){p++;const Fe=ie();if(Fe>=0&&$h(Fe,e))return p+=3,R|=8,I="#"+Ne()+ve(),A=81;const pt=pe();if(pt>=0&&$h(pt,e))return p+=6,R|=1024,I="#"+String.fromCharCode(pt)+ve(),A=81;p--}return $h(ft,e)?(p++,At(ft,e)):(I="#",Z(f.Invalid_character,p++,l0(kn))),A=81;default:const Ct=At(kn,e);if(Ct)return A=Ct;if(A_(kn)){p+=l0(kn);continue}else if(Hu(kn)){R|=1,p+=l0(kn);continue}const le=l0(kn);return Z(f.Invalid_character,p,le),p+=le,A=0}}}function Pe(){switch(U){case 0:return!0;case 1:return!1}return O!==3&&O!==4?!0:U===3?!1:cSe.test(u.slice(m,p))}function We(){N.assert(A===0,"'reScanInvalidIdentifier' should only be called when the current token is 'SyntaxKind.Unknown'."),p=b=m,R=0;const Sn=My(u,p),kn=At(Sn,99);return kn?A=kn:(p+=l0(Sn),A)}function At(Sn,kn){let qe=Sn;if($h(qe,kn)){for(p+=l0(qe);p<h&&s0(qe=My(u,p),kn);)p+=l0(qe);return I=u.substring(b,p),qe===92&&(I+=ve()),Le()}}function Se(){if(A===32){if(u.charCodeAt(p)===62)return u.charCodeAt(p+1)===62?u.charCodeAt(p+2)===61?(p+=3,A=73):(p+=2,A=50):u.charCodeAt(p+1)===61?(p+=2,A=72):(p++,A=49);if(u.charCodeAt(p)===61)return p++,A=34}return A}function je(){return N.assert(A===67,"'reScanAsteriskEqualsToken' should only be called on a '*='"),p=b+1,A=64}function at(){if(A===44||A===69){let Sn=b+1,kn=!1,qe=!1;for(;;){if(Sn>=h){R|=4,Z(f.Unterminated_regular_expression_literal);break}const mt=u.charCodeAt(Sn);if(Hu(mt)){R|=4,Z(f.Unterminated_regular_expression_literal);break}if(kn)kn=!1;else if(mt===47&&!qe){Sn++;break}else mt===91?qe=!0:mt===92?kn=!0:mt===93&&(qe=!1);Sn++}for(;Sn<h&&s0(u.charCodeAt(Sn),e);)Sn++;p=Sn,I=u.substring(b,p),A=14}return A}function Gt(Sn,kn,qe,mt){const ft=vt(kn.trimStart(),qe);return ft===void 0?Sn:xn(Sn,{range:{pos:mt,end:p},type:ft})}function vt(Sn,kn){const qe=kn.exec(Sn);if(qe)switch(qe[1]){case"ts-expect-error":return 0;case"ts-ignore":return 1}}function $e(Sn){return p=b,A=oe(!Sn)}function It(){return p=b,A=oe(!0)}function tn(Sn=!0){return p=b=m,A=hn(Sn)}function rn(){return A===48?(p=b+1,A=30):A}function Pn(){return A===81?(p=b+1,A=63):A}function Xn(){return N.assert(A===61,"'reScanQuestionToken' should only be called on a '??'"),p=b+1,A=58}function hn(Sn=!0){if(m=b=p,p>=h)return A=1;let kn=u.charCodeAt(p);if(kn===60)return u.charCodeAt(p+1)===47?(p+=2,A=31):(p++,A=30);if(kn===123)return p++,A=19;let qe=0;for(;p<h&&(kn=u.charCodeAt(p),kn!==123);){if(kn===60){if(sC(u,p))return p=nL(u,p,Z),A=7;break}if(kn===62&&Z(f.Unexpected_token_Did_you_mean_or_gt,p,1),kn===125&&Z(f.Unexpected_token_Did_you_mean_or_rbrace,p,1),Hu(kn)&&qe===0)qe=-1;else{if(!Sn&&Hu(kn)&&qe>0)break;wg(kn)||(qe=p)}p++}return I=u.substring(m,p),qe===-1?13:12}function Qt(){if(sd(A)){for(;p<h;){if(u.charCodeAt(p)===45){I+="-",p++;continue}const kn=p;if(I+=ve(),p===kn)break}return Le()}return A}function $t(){switch(m=p,u.charCodeAt(p)){case 34:case 39:return I=Y(!0),A=11;default:return De()}}function _i(){return p=b=m,$t()}function ao(Sn){if(m=b=p,R=0,p>=h)return A=1;for(let kn=u.charCodeAt(p);p<h&&!Hu(kn)&&kn!==96;kn=My(u,++p))if(!Sn){if(kn===123)break;if(kn===64&&p-1>=0&&A_(u.charCodeAt(p-1))&&!(p+1<h&&wg(u.charCodeAt(p+1))))break}return p===b?Oi():(I=u.substring(b,p),A=82)}function Oi(){if(m=b=p,R=0,p>=h)return A=1;const Sn=My(u,p);switch(p+=l0(Sn),Sn){case 9:case 11:case 12:case 32:for(;p<h&&A_(u.charCodeAt(p));)p++;return A=5;case 64:return A=60;case 13:u.charCodeAt(p)===10&&p++;case 10:return R|=1,A=4;case 42:return A=42;case 123:return A=19;case 125:return A=20;case 91:return A=23;case 93:return A=24;case 60:return A=30;case 62:return A=32;case 61:return A=64;case 44:return A=28;case 46:return A=25;case 96:return A=62;case 35:return A=63;case 92:p--;const kn=ie();if(kn>=0&&$h(kn,e))return p+=3,R|=8,I=Ne()+ve(),A=Le();const qe=pe();return qe>=0&&$h(qe,e)?(p+=6,R|=1024,I=String.fromCharCode(qe)+ve(),A=Le()):(p++,A=0)}if($h(Sn,e)){let kn=Sn;for(;p<h&&s0(kn=My(u,p),e)||u.charCodeAt(p)===45;)p+=l0(kn);return I=u.substring(b,p),kn===92&&(I+=ve()),A=Le()}else return A=0}function No(Sn,kn){const qe=p,mt=m,ft=b,Ct=A,le=I,Fe=R,pt=Sn();return(!pt||kn)&&(p=qe,m=mt,b=ft,A=Ct,I=le,R=Fe),pt}function Mn(Sn,kn,qe){const mt=h,ft=p,Ct=m,le=b,Fe=A,pt=I,j=R,ot=M;zt(u,Sn,kn);const Rt=qe();return h=mt,p=ft,m=Ct,b=le,A=Fe,I=pt,R=j,M=ot,Rt}function Di(Sn){return No(Sn,!0)}function Ar(Sn){return No(Sn,!1)}function sn(){return u}function tt(){M=void 0}function zt(Sn,kn,qe){u=Sn||"",h=qe===void 0?u.length:kn+qe,ma(kn||0)}function Rn(Sn){o=Sn}function li(Sn){e=Sn}function hi(Sn){r=Sn}function Qi(Sn){O=Sn}function Io(Sn){U=Sn}function ma(Sn){N.assert(Sn>=0),p=Sn,m=Sn,b=Sn,A=0,I=void 0,R=0}function Wa(Sn){C+=Sn?1:-1}}function My(e,t){return e.codePointAt(t)}function l0(e){return e>=65536?2:1}function IBe(e){if(N.assert(0<=e&&e<=1114111),e<=65535)return String.fromCharCode(e);const t=Math.floor((e-65536)/1024)+55296,r=(e-65536)%1024+56320;return String.fromCharCode(t,r)}function Xx(e){return dSe(e)}var oL,eSe,dre,tSe,nSe,rSe,iSe,oSe,aSe,sSe,lSe,cSe,uSe,g4,UV,dSe,xBe=T({"src/compiler/scanner.ts"(){ra(),oL={abstract:128,accessor:129,any:133,as:130,asserts:131,assert:132,bigint:163,boolean:136,break:83,case:84,catch:85,class:86,continue:88,const:87,constructor:137,debugger:89,declare:138,default:90,delete:91,do:92,else:93,enum:94,export:95,extends:96,false:97,finally:98,for:99,from:161,function:100,get:139,if:101,implements:119,import:102,in:103,infer:140,instanceof:104,interface:120,intrinsic:141,is:142,keyof:143,let:121,module:144,namespace:145,never:146,new:105,null:106,number:150,object:151,package:122,private:123,protected:124,public:125,override:164,out:147,readonly:148,require:149,global:162,return:107,satisfies:152,set:153,static:126,string:154,super:108,switch:109,symbol:155,this:110,throw:111,true:112,try:113,type:156,typeof:114,undefined:157,unique:158,unknown:159,using:160,var:115,void:116,while:117,with:118,yield:127,async:134,await:135,of:165},eSe=new Map(Object.entries(oL)),dre=new Map(Object.entries({...oL,"{":19,"}":20,"(":21,")":22,"[":23,"]":24,".":25,"...":26,";":27,",":28,"<":30,">":32,"<=":33,">=":34,"==":35,"!=":36,"===":37,"!==":38,"=>":39,"+":40,"-":41,"**":43,"*":42,"/":44,"%":45,"++":46,"--":47,"<<":48,"</":31,">>":49,">>>":50,"&":51,"|":52,"^":53,"!":54,"~":55,"&&":56,"||":57,"?":58,"??":61,"?.":29,":":59,"=":64,"+=":65,"-=":66,"*=":67,"**=":68,"/=":69,"%=":70,"<<=":71,">>=":72,">>>=":73,"&=":74,"|=":75,"^=":79,"||=":76,"&&=":77,"??=":78,"@":60,"#":63,"`":62})),tSe=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],nSe=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500],rSe=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],iSe=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500],oSe=[65,90,97,122,170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,895,895,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1327,1329,1366,1369,1369,1376,1416,1488,1514,1519,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2144,2154,2208,2228,2230,2237,2308,2361,2365,2365,2384,2384,2392,2401,2417,2432,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2556,2556,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2809,2809,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3129,3133,3133,3160,3162,3168,3169,3200,3200,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3412,3414,3423,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6264,6272,6312,6314,6314,6320,6389,6400,6430,6480,6509,6512,6516,6528,6571,6576,6601,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7296,7304,7312,7354,7357,7359,7401,7404,7406,7411,7413,7414,7418,7418,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12443,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42653,42656,42735,42775,42783,42786,42888,42891,42943,42946,42950,42999,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43261,43262,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43488,43492,43494,43503,43514,43518,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43646,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66176,66204,66208,66256,66304,66335,66349,66378,66384,66421,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68096,68112,68115,68117,68119,68121,68149,68192,68220,68224,68252,68288,68295,68297,68324,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68899,69376,69404,69415,69415,69424,69445,69600,69622,69635,69687,69763,69807,69840,69864,69891,69926,69956,69956,69968,70002,70006,70006,70019,70066,70081,70084,70106,70106,70108,70108,70144,70161,70163,70187,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70366,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70461,70461,70480,70480,70493,70497,70656,70708,70727,70730,70751,70751,70784,70831,70852,70853,70855,70855,71040,71086,71128,71131,71168,71215,71236,71236,71296,71338,71352,71352,71424,71450,71680,71723,71840,71903,71935,71935,72096,72103,72106,72144,72161,72161,72163,72163,72192,72192,72203,72242,72250,72250,72272,72272,72284,72329,72349,72349,72384,72440,72704,72712,72714,72750,72768,72768,72818,72847,72960,72966,72968,72969,72971,73008,73030,73030,73056,73061,73063,73064,73066,73097,73112,73112,73440,73458,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92880,92909,92928,92975,92992,92995,93027,93047,93053,93071,93760,93823,93952,94026,94032,94032,94099,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,123136,123180,123191,123197,123214,123214,123584,123627,124928,125124,125184,125251,125259,125259,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101],aSe=[48,57,65,90,95,95,97,122,170,170,181,181,183,183,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,895,895,902,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1327,1329,1366,1369,1369,1376,1416,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1519,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2045,2045,2048,2093,2112,2139,2144,2154,2208,2228,2230,2237,2259,2273,2275,2403,2406,2415,2417,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2556,2556,2558,2558,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2809,2815,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3072,3084,3086,3088,3090,3112,3114,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3162,3168,3171,3174,3183,3200,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3328,3331,3333,3340,3342,3344,3346,3396,3398,3400,3402,3406,3412,3415,3423,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3558,3567,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3718,3722,3724,3747,3749,3749,3751,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4969,4977,4992,5007,5024,5109,5112,5117,5121,5740,5743,5759,5761,5786,5792,5866,5870,5880,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6264,6272,6314,6320,6389,6400,6430,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6618,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6832,6845,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7296,7304,7312,7354,7357,7359,7376,7378,7380,7418,7424,7673,7675,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8472,8477,8484,8484,8486,8486,8488,8488,8490,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12447,12449,12538,12540,12543,12549,12591,12593,12686,12704,12730,12784,12799,13312,19893,19968,40943,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42737,42775,42783,42786,42888,42891,42943,42946,42950,42999,43047,43072,43123,43136,43205,43216,43225,43232,43255,43259,43259,43261,43309,43312,43347,43360,43388,43392,43456,43471,43481,43488,43518,43520,43574,43584,43597,43600,43609,43616,43638,43642,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43824,43866,43868,43879,43888,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65071,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500,65536,65547,65549,65574,65576,65594,65596,65597,65599,65613,65616,65629,65664,65786,65856,65908,66045,66045,66176,66204,66208,66256,66272,66272,66304,66335,66349,66378,66384,66426,66432,66461,66464,66499,66504,66511,66513,66517,66560,66717,66720,66729,66736,66771,66776,66811,66816,66855,66864,66915,67072,67382,67392,67413,67424,67431,67584,67589,67592,67592,67594,67637,67639,67640,67644,67644,67647,67669,67680,67702,67712,67742,67808,67826,67828,67829,67840,67861,67872,67897,67968,68023,68030,68031,68096,68099,68101,68102,68108,68115,68117,68119,68121,68149,68152,68154,68159,68159,68192,68220,68224,68252,68288,68295,68297,68326,68352,68405,68416,68437,68448,68466,68480,68497,68608,68680,68736,68786,68800,68850,68864,68903,68912,68921,69376,69404,69415,69415,69424,69456,69600,69622,69632,69702,69734,69743,69759,69818,69840,69864,69872,69881,69888,69940,69942,69951,69956,69958,69968,70003,70006,70006,70016,70084,70089,70092,70096,70106,70108,70108,70144,70161,70163,70199,70206,70206,70272,70278,70280,70280,70282,70285,70287,70301,70303,70312,70320,70378,70384,70393,70400,70403,70405,70412,70415,70416,70419,70440,70442,70448,70450,70451,70453,70457,70459,70468,70471,70472,70475,70477,70480,70480,70487,70487,70493,70499,70502,70508,70512,70516,70656,70730,70736,70745,70750,70751,70784,70853,70855,70855,70864,70873,71040,71093,71096,71104,71128,71133,71168,71232,71236,71236,71248,71257,71296,71352,71360,71369,71424,71450,71453,71467,71472,71481,71680,71738,71840,71913,71935,71935,72096,72103,72106,72151,72154,72161,72163,72164,72192,72254,72263,72263,72272,72345,72349,72349,72384,72440,72704,72712,72714,72758,72760,72768,72784,72793,72818,72847,72850,72871,72873,72886,72960,72966,72968,72969,72971,73014,73018,73018,73020,73021,73023,73031,73040,73049,73056,73061,73063,73064,73066,73102,73104,73105,73107,73112,73120,73129,73440,73462,73728,74649,74752,74862,74880,75075,77824,78894,82944,83526,92160,92728,92736,92766,92768,92777,92880,92909,92912,92916,92928,92982,92992,92995,93008,93017,93027,93047,93053,93071,93760,93823,93952,94026,94031,94087,94095,94111,94176,94177,94179,94179,94208,100343,100352,101106,110592,110878,110928,110930,110948,110951,110960,111355,113664,113770,113776,113788,113792,113800,113808,113817,113821,113822,119141,119145,119149,119154,119163,119170,119173,119179,119210,119213,119362,119364,119808,119892,119894,119964,119966,119967,119970,119970,119973,119974,119977,119980,119982,119993,119995,119995,119997,120003,120005,120069,120071,120074,120077,120084,120086,120092,120094,120121,120123,120126,120128,120132,120134,120134,120138,120144,120146,120485,120488,120512,120514,120538,120540,120570,120572,120596,120598,120628,120630,120654,120656,120686,120688,120712,120714,120744,120746,120770,120772,120779,120782,120831,121344,121398,121403,121452,121461,121461,121476,121476,121499,121503,121505,121519,122880,122886,122888,122904,122907,122913,122915,122916,122918,122922,123136,123180,123184,123197,123200,123209,123214,123214,123584,123641,124928,125124,125136,125142,125184,125259,125264,125273,126464,126467,126469,126495,126497,126498,126500,126500,126503,126503,126505,126514,126516,126519,126521,126521,126523,126523,126530,126530,126535,126535,126537,126537,126539,126539,126541,126543,126545,126546,126548,126548,126551,126551,126553,126553,126555,126555,126557,126557,126559,126559,126561,126562,126564,126564,126567,126570,126572,126578,126580,126583,126585,126588,126590,126590,126592,126601,126603,126619,126625,126627,126629,126633,126635,126651,131072,173782,173824,177972,177984,178205,178208,183969,183984,191456,194560,195101,917760,917999],sSe=/^\/\/\/?\s*@(ts-expect-error|ts-ignore)/,lSe=/^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/,cSe=/@(?:see|link)/i,uSe=TBe(dre),g4=7,UV=/^#!.*/,dSe=String.fromCodePoint?e=>String.fromCodePoint(e):IBe}});function Yc(e){return Wp(e)||fp(e)}function Yx(e){return KN(e,KC)}function aL(e){switch(os(e)){case 99:return"lib.esnext.full.d.ts";case 9:return"lib.es2022.full.d.ts";case 8:return"lib.es2021.full.d.ts";case 7:return"lib.es2020.full.d.ts";case 6:return"lib.es2019.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}}function Kl(e){return e.start+e.length}function pre(e){return e.length===0}function HV(e,t){return t>=e.start&&t<Kl(e)}function sL(e,t){return t>=e.pos&&t<=e.end}function fre(e,t){return t.start>=e.start&&Kl(t)<=Kl(e)}function pSe(e,t){return mre(e,t)!==void 0}function mre(e,t){const r=hre(e,t);return r&&r.length===0?void 0:r}function fSe(e,t){return lL(e.start,e.length,t.start,t.length)}function v4(e,t,r){return lL(e.start,e.length,t,r)}function lL(e,t,r,i){const o=e+t,s=r+i;return r<=o&&s>=e}function _re(e,t){return t<=Kl(e)&&t>=e.start}function hre(e,t){const r=Math.max(e.start,t.start),i=Math.min(Kl(e),Kl(t));return r<=i?pc(r,i):void 0}function vu(e,t){if(e<0)throw new Error("start < 0");if(t<0)throw new Error("length < 0");return{start:e,length:t}}function pc(e,t){return vu(e,t-e)}function lC(e){return vu(e.span.start,e.newLength)}function gre(e){return pre(e.span)&&e.newLength===0}function cL(e,t){if(t<0)throw new Error("newLength < 0");return{span:e,newLength:t}}function vre(e){if(e.length===0)return IL;if(e.length===1)return e[0];const t=e[0];let r=t.span.start,i=Kl(t.span),o=r+t.newLength;for(let s=1;s<e.length;s++){const l=e[s],u=r,p=i,h=o,m=l.span.start,b=Kl(l.span),A=m+l.newLength;r=Math.min(u,m),i=Math.max(p,p+(b-h)),o=Math.max(A,A+(h-b))}return cL(pc(r,i),o-r)}function mSe(e){if(e&&e.kind===168){for(let t=e;t;t=t.parent)if(ea(t)||ui(t)||t.kind===264)return t}}function mp(e,t){return Ao(e)&&Zr(e,31)&&t.kind===176}function yre(e){return ta(e)?Zn(e.elements,bre):!1}function bre(e){return jc(e)?!0:yre(e.name)}function $x(e){let t=e.parent;for(;Qa(t.parent);)t=t.parent.parent;return t.parent}function Ere(e,t){Qa(e)&&(e=$x(e));let r=t(e);return e.kind===260&&(e=e.parent),e&&e.kind===261&&(r|=t(e),e=e.parent),e&&e.kind===243&&(r|=t(e)),r}function c0(e){return Ere(e,pd)}function qV(e){return Ere(e,_oe)}function Ov(e){return Ere(e,RBe)}function RBe(e){return e.flags}function _Se(e,t,r){const i=e.toLowerCase(),o=/^([a-z]+)([_-]([a-z]+))?$/.exec(i);if(!o){r&&r.push(Hl(f.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp"));return}const s=o[1],l=o[3];Nr(hj,i)&&!u(s,l,r)&&u(s,void 0,r),kne(e);function u(p,h,m){const b=ga(t.getExecutingFilePath()),A=ai(b);let I=Qr(A,p);if(h&&(I=I+"-"+h),I=t.resolvePath(Qr(I,"diagnosticMessages.generated.json")),!t.fileExists(I))return!1;let R="";try{R=t.readFile(I)}catch{return m&&m.push(Hl(f.Unable_to_open_file_0,I)),!1}try{Ooe(JSON.parse(R))}catch{return m&&m.push(Hl(f.Corrupted_locale_file_0,I)),!1}return!0}}function Pl(e,t){if(e)for(;e.original!==void 0;)e=e.original;return!e||!t||t(e)?e:void 0}function Gn(e,t){for(;e;){const r=t(e);if(r==="quit")return;if(r)return e;e=e.parent}}function cC(e){return(e.flags&16)===0}function Do(e,t){if(e===void 0||cC(e))return e;for(e=e.original;e;){if(cC(e))return!t||t(e)?e:void 0;e=e.original}}function hl(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}function Vi(e){const t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}function Sr(e){return Vi(e.escapedText)}function u0(e){const t=PE(e.escapedText);return t?ii(t,Bd):void 0}function Sl(e){return e.valueDeclaration&&cd(e.valueDeclaration)?Sr(e.valueDeclaration.name):Vi(e.escapedName)}function hSe(e){const t=e.parent.parent;if(t){if(Ju(t))return JV(t);switch(t.kind){case 243:if(t.declarationList&&t.declarationList.declarations[0])return JV(t.declarationList.declarations[0]);break;case 244:let r=t.expression;switch(r.kind===226&&r.operatorToken.kind===64&&(r=r.left),r.kind){case 211:return r.name;case 212:const i=r.argumentExpression;if(Ve(i))return i}break;case 217:return JV(t.expression);case 256:{if(Ju(t.statement)||yt(t.statement))return JV(t.statement);break}}}}function JV(e){const t=Mo(e);return t&&Ve(t)?t:void 0}function uL(e,t){return!!(ld(e)&&Ve(e.name)&&Sr(e.name)===Sr(t)||Ll(e)&&bt(e.declarationList.declarations,r=>uL(r,t)))}function Sre(e){return e.name||hSe(e)}function ld(e){return!!e.name}function y4(e){switch(e.kind){case 80:return e;case 355:case 348:{const{name:r}=e;if(r.kind===166)return r.right;break}case 213:case 226:{const r=e;switch(Bl(r)){case 1:case 4:case 5:case 3:return _3(r.left);case 7:case 8:case 9:return r.arguments[1];default:return}}case 353:return Sre(e);case 347:return hSe(e);case 277:{const{expression:r}=e;return Ve(r)?r:void 0}case 212:const t=e;if(m3(t))return t.argumentExpression}return e.name}function Mo(e){if(e!==void 0)return y4(e)||(Os(e)||Gs(e)||Zc(e)?b4(e):void 0)}function b4(e){if(e.parent){if(hc(e.parent)||Qa(e.parent))return e.parent.name;if(mr(e.parent)&&e===e.parent.right){if(Ve(e.parent.left))return e.parent.left;if(ws(e.parent.left))return _3(e.parent.left)}else if(wi(e.parent)&&Ve(e.parent.name))return e.parent.name}else return}function Ly(e){if(If(e))return nr(e.modifiers,Eu)}function ME(e){if(Zr(e,98303))return nr(e.modifiers,xa)}function gSe(e,t){if(e.name)if(Ve(e.name)){const r=e.name.escapedText;return pL(e.parent,t).filter(i=>r_(i)&&Ve(i.name)&&i.name.escapedText===r)}else{const r=e.parent.parameters.indexOf(e);N.assert(r>-1,"Parameters should always be in their parents' parameter list");const i=pL(e.parent,t).filter(r_);if(r<i.length)return[i[r]]}return et}function Qx(e){return gSe(e,!1)}function Tre(e){return gSe(e,!0)}function vSe(e,t){const r=e.name.escapedText;return pL(e.parent,t).filter(i=>sm(i)&&i.typeParameters.some(o=>o.name.escapedText===r))}function Are(e){return vSe(e,!1)}function Ire(e){return vSe(e,!0)}function xre(e){return!!Xf(e,r_)}function Rre(e){return Xf(e,vI)}function Dre(e){return S4(e,dF)}function KV(e){return Xf(e,Zae)}function ySe(e){return Xf(e,zH)}function Nre(e){return Xf(e,zH,!0)}function bSe(e){return Xf(e,BH)}function Cre(e){return Xf(e,BH,!0)}function ESe(e){return Xf(e,GH)}function Pre(e){return Xf(e,GH,!0)}function SSe(e){return Xf(e,VH)}function Mre(e){return Xf(e,VH,!0)}function Lre(e){return Xf(e,cF,!0)}function XV(e){return Xf(e,jH)}function kre(e){return Xf(e,jH,!0)}function YV(e){return Xf(e,ew)}function E4(e){return Xf(e,UH)}function wre(e){return Xf(e,uF)}function TSe(e){return Xf(e,sm)}function $V(e){return Xf(e,pF)}function d0(e){const t=Xf(e,xP);if(t&&t.typeExpression&&t.typeExpression.type)return t}function p0(e){let t=Xf(e,xP);return!t&&Ao(e)&&(t=An(Qx(e),r=>!!r.typeExpression)),t&&t.typeExpression&&t.typeExpression.type}function dL(e){const t=wre(e);if(t&&t.typeExpression)return t.typeExpression.type;const r=d0(e);if(r&&r.typeExpression){const i=r.typeExpression.type;if(Ep(i)){const o=An(i.members,sI);return o&&o.type}if(Eh(i)||QR(i))return i.type}}function pL(e,t){var r;if(!ek(e))return et;let i=(r=e.jsDoc)==null?void 0:r.jsDocCache;if(i===void 0||t){const o=Jj(e,t);N.assert(o.length<2||o[0]!==o[1]),i=Pi(o,s=>n_(s)?s.tags:s),t||(e.jsDoc??(e.jsDoc=[]),e.jsDoc.jsDocCache=i)}return i}function f0(e){return pL(e,!1)}function ASe(e){return pL(e,!0)}function Xf(e,t,r){return An(pL(e,r),t)}function S4(e,t){return f0(e).filter(t)}function ISe(e,t){return f0(e).filter(r=>r.kind===t)}function fL(e){return typeof e=="string"?e:e==null?void 0:e.map(t=>t.kind===328?t.text:DBe(t)).join("")}function DBe(e){const t=e.kind===331?"link":e.kind===332?"linkcode":"linkplain",r=e.name?_p(e.name):"",i=e.name&&e.text.startsWith("://")?"":" ";return`{@${t} ${r}${i}${e.text}}`}function ky(e){if(D0(e)){if(ZR(e.parent)){const t=SR(e.parent);if(t&&Me(t.tags))return Pi(t.tags,r=>sm(r)?r.typeParameters:void 0)}return et}if(Zf(e))return N.assert(e.parent.kind===327),Pi(e.parent.tags,t=>sm(t)?t.typeParameters:void 0);if(e.typeParameters||use(e)&&e.typeParameters)return e.typeParameters;if(lr(e)){const t=N3(e);if(t.length)return t;const r=p0(e);if(r&&Eh(r)&&r.typeParameters)return r.typeParameters}return et}function Zx(e){return e.constraint?e.constraint:sm(e.parent)&&e===e.parent.typeParameters[0]?e.parent.constraint:void 0}function Qh(e){return e.kind===80||e.kind===81}function T4(e){return e.kind===178||e.kind===177}function A4(e){return Fr(e)&&!!(e.flags&64)}function QV(e){return Qs(e)&&!!(e.flags&64)}function hS(e){return la(e)&&!!(e.flags&64)}function qu(e){const t=e.kind;return!!(e.flags&64)&&(t===211||t===212||t===213||t===235)}function uC(e){return qu(e)&&!fI(e)&&!!e.questionDotToken}function I4(e){return uC(e.parent)&&e.parent.expression===e}function dC(e){return!qu(e.parent)||uC(e.parent)||e!==e.parent.expression}function ZV(e){return e.kind===226&&e.operatorToken.kind===61}function Og(e){return Cf(e)&&Ve(e.typeName)&&e.typeName.escapedText==="const"&&!e.typeArguments}function Tm(e){return $l(e,8)}function x4(e){return fI(e)&&!!(e.flags&64)}function pC(e){return e.kind===252||e.kind===251}function ej(e){return e.kind===280||e.kind===279}function Ore(e){switch(e.kind){case 309:case 310:return!0;default:return!1}}function tj(e){return Ore(e)||e.kind===307||e.kind===311}function fC(e){return e.kind===355||e.kind===348}function xSe(e){return mL(e.kind)}function mL(e){return e>=166}function nj(e){return e>=0&&e<=165}function NA(e){return nj(e.kind)}function LE(e){return xs(e,"pos")&&xs(e,"end")}function mC(e){return 9<=e&&e<=15}function kE(e){return mC(e.kind)}function rj(e){switch(e.kind){case 210:case 209:case 14:case 218:case 231:return!0}return!1}function wy(e){return 15<=e&&e<=18}function Wre(e){return wy(e.kind)}function R4(e){const t=e.kind;return t===17||t===18}function CA(e){return np(e)||Ku(e)}function _L(e){switch(e.kind){case 276:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 274:return e.parent.isTypeOnly;case 273:case 271:return e.isTypeOnly}return!1}function Fre(e){switch(e.kind){case 281:return e.isTypeOnly||e.parent.parent.isTypeOnly;case 278:return e.isTypeOnly&&!!e.moduleSpecifier&&!e.exportClause;case 280:return e.parent.isTypeOnly}return!1}function m0(e){return _L(e)||Fre(e)}function ij(e){return e.kind===11||wy(e.kind)}function zre(e){return Ma(e)||Ve(e)}function sl(e){var t;return Ve(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function gS(e){var t;return Ji(e)&&((t=e.emitNode)==null?void 0:t.autoGenerate)!==void 0}function hL(e){const t=e.emitNode.autoGenerate.flags;return!!(t&32)&&!!(t&16)&&!!(t&8)}function cd(e){return(Jo(e)||MA(e))&&Ji(e.name)}function eR(e){return Fr(e)&&Ji(e.name)}function Wv(e){switch(e){case 128:case 129:case 134:case 87:case 138:case 90:case 95:case 103:case 125:case 123:case 124:case 148:case 126:case 147:case 164:return!0}return!1}function _C(e){return!!(UA(e)&31)}function oj(e){return _C(e)||e===126||e===164||e===129}function xa(e){return Wv(e.kind)}function Zd(e){const t=e.kind;return t===166||t===80}function oc(e){const t=e.kind;return t===80||t===81||t===11||t===9||t===167}function vS(e){const t=e.kind;return t===80||t===206||t===207}function ea(e){return!!e&&PA(e.kind)}function tR(e){return!!e&&(PA(e.kind)||Rl(e))}function Bs(e){return e&&RSe(e.kind)}function hC(e){return e.kind===112||e.kind===97}function RSe(e){switch(e){case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function PA(e){switch(e){case 173:case 179:case 330:case 180:case 181:case 184:case 324:case 185:return!0;default:return RSe(e)}}function aj(e){return $i(e)||O_(e)||Xo(e)&&ea(e.parent)}function $c(e){const t=e.kind;return t===176||t===172||t===174||t===177||t===178||t===181||t===175||t===240}function ui(e){return e&&(e.kind===263||e.kind===231)}function Oy(e){return e&&(e.kind===177||e.kind===178)}function Wd(e){return Jo(e)&&P_(e)}function Bre(e){return lr(e)&&lW(e)?(!VE(e)||!Hy(e.expression))&&!NS(e,!0):e.parent&&ui(e.parent)&&Jo(e)&&!P_(e)}function MA(e){switch(e.kind){case 174:case 177:case 178:return!0;default:return!1}}function DSe(e){switch(e.kind){case 174:case 177:case 178:case 172:return!0;default:return!1}}function ll(e){return xa(e)||Eu(e)}function yS(e){const t=e.kind;return t===180||t===179||t===171||t===173||t===181||t===177||t===178}function D4(e){return yS(e)||$c(e)}function Wg(e){const t=e.kind;return t===303||t===304||t===305||t===174||t===177||t===178}function ji(e){return CU(e.kind)}function Gre(e){switch(e.kind){case 184:case 185:return!0}return!1}function ta(e){if(e){const t=e.kind;return t===207||t===206}return!1}function gC(e){const t=e.kind;return t===209||t===210}function N4(e){const t=e.kind;return t===208||t===232}function gL(e){switch(e.kind){case 260:case 169:case 208:return!0}return!1}function Vre(e){return wi(e)||Ao(e)||yL(e)||bL(e)}function vL(e){return sj(e)||lj(e)}function sj(e){switch(e.kind){case 206:case 210:return!0}return!1}function yL(e){switch(e.kind){case 208:case 303:case 304:case 305:return!0}return!1}function lj(e){switch(e.kind){case 207:case 209:return!0}return!1}function bL(e){switch(e.kind){case 208:case 232:case 230:case 209:case 210:case 80:case 211:case 212:return!0}return Lc(e,!0)}function jre(e){const t=e.kind;return t===211||t===166||t===205}function Ure(e){const t=e.kind;return t===211||t===166}function cj(e){return wE(e)||QE(e)}function wE(e){switch(e.kind){case 286:case 285:case 213:case 214:case 215:case 170:return!0;default:return!1}}function I_(e){return e.kind===213||e.kind===214}function LA(e){const t=e.kind;return t===228||t===15}function ep(e){return NSe(Tm(e).kind)}function NSe(e){switch(e){case 211:case 212:case 214:case 213:case 284:case 285:case 288:case 215:case 209:case 217:case 210:case 231:case 218:case 80:case 81:case 14:case 9:case 10:case 11:case 15:case 228:case 97:case 106:case 110:case 112:case 108:case 235:case 233:case 236:case 102:case 282:return!0;default:return!1}}function uj(e){return CSe(Tm(e).kind)}function CSe(e){switch(e){case 224:case 225:case 220:case 221:case 222:case 223:case 216:return!0;default:return NSe(e)}}function Hre(e){switch(e.kind){case 225:return!0;case 224:return e.operator===46||e.operator===47;default:return!1}}function qre(e){switch(e.kind){case 106:case 112:case 97:case 224:return!0;default:return kE(e)}}function yt(e){return NBe(Tm(e).kind)}function NBe(e){switch(e){case 227:case 229:case 219:case 226:case 230:case 234:case 232:case 361:case 360:case 238:return!0;default:return CSe(e)}}function bS(e){const t=e.kind;return t===216||t===234}function PSe(e){return wH(e)||oF(e)}function Wy(e,t){switch(e.kind){case 248:case 249:case 250:case 246:case 247:return!0;case 256:return t&&Wy(e.statement,t)}return!1}function Jre(e){return kl(e)||Yl(e)}function Kre(e){return bt(e,Jre)}function C4(e){return!CL(e)&&!kl(e)&&!Zr(e,32)&&!ku(e)}function EL(e){return CL(e)||kl(e)||Zr(e,32)}function nR(e){return e.kind===249||e.kind===250}function P4(e){return Xo(e)||yt(e)}function dj(e){return Xo(e)}function Af(e){return Uc(e)||yt(e)}function Xre(e){const t=e.kind;return t===268||t===267||t===80}function MSe(e){const t=e.kind;return t===268||t===267}function LSe(e){const t=e.kind;return t===80||t===267}function pj(e){const t=e.kind;return t===275||t===274}function SL(e){return e.kind===267||e.kind===266}function x_(e){switch(e.kind){case 219:case 226:case 208:case 213:case 179:case 263:case 231:case 175:case 176:case 185:case 180:case 212:case 266:case 306:case 277:case 278:case 281:case 262:case 218:case 184:case 177:case 80:case 273:case 271:case 276:case 181:case 264:case 345:case 347:case 324:case 348:case 355:case 330:case 353:case 329:case 291:case 292:case 293:case 200:case 174:case 173:case 267:case 202:case 280:case 270:case 274:case 214:case 15:case 9:case 210:case 169:case 211:case 303:case 172:case 171:case 178:case 304:case 312:case 305:case 11:case 265:case 187:case 168:case 260:return!0;default:return!1}}function fh(e){switch(e.kind){case 219:case 241:case 179:case 269:case 299:case 175:case 194:case 176:case 185:case 180:case 248:case 249:case 250:case 262:case 218:case 184:case 177:case 181:case 345:case 347:case 324:case 330:case 353:case 200:case 174:case 173:case 267:case 178:case 312:case 265:return!0;default:return!1}}function CBe(e){return e===219||e===208||e===263||e===231||e===175||e===176||e===266||e===306||e===281||e===262||e===218||e===177||e===273||e===271||e===276||e===264||e===291||e===174||e===173||e===267||e===270||e===274||e===280||e===169||e===303||e===172||e===171||e===178||e===304||e===265||e===168||e===260||e===353||e===345||e===355}function Yre(e){return e===262||e===282||e===263||e===264||e===265||e===266||e===267||e===272||e===271||e===278||e===277||e===270}function $re(e){return e===252||e===251||e===259||e===246||e===244||e===242||e===249||e===250||e===248||e===245||e===256||e===253||e===255||e===257||e===258||e===243||e===247||e===254||e===359}function Ju(e){return e.kind===168?e.parent&&e.parent.kind!==352||lr(e):CBe(e.kind)}function Qre(e){return Yre(e.kind)}function TL(e){return $re(e.kind)}function qi(e){const t=e.kind;return $re(t)||Yre(t)||PBe(e)}function PBe(e){return e.kind!==241||e.parent!==void 0&&(e.parent.kind===258||e.parent.kind===299)?!1:!BE(e)}function Zre(e){const t=e.kind;return $re(t)||Yre(t)||t===241}function eie(e){const t=e.kind;return t===283||t===166||t===80}function vC(e){const t=e.kind;return t===110||t===80||t===211||t===295}function AL(e){const t=e.kind;return t===284||t===294||t===285||t===12||t===288}function M4(e){const t=e.kind;return t===291||t===293}function tie(e){const t=e.kind;return t===11||t===294}function ud(e){const t=e.kind;return t===286||t===285}function L4(e){const t=e.kind;return t===296||t===297}function rR(e){return e.kind>=316&&e.kind<=357}function k4(e){return e.kind===327||e.kind===326||e.kind===328||kA(e)||iR(e)||XS(e)||D0(e)}function iR(e){return e.kind>=334&&e.kind<=357}function Fv(e){return e.kind===178}function Fy(e){return e.kind===177}function Fp(e){if(!ek(e))return!1;const{jsDoc:t}=e;return!!t&&t.length>0}function w4(e){return!!e.type}function zy(e){return!!e.initializer}function ES(e){switch(e.kind){case 260:case 169:case 208:case 172:case 303:case 306:return!0;default:return!1}}function fj(e){return e.kind===291||e.kind===293||Wg(e)}function O4(e){return e.kind===183||e.kind===233}function nie(e){let t=rie;for(const r of e){if(!r.length)continue;let i=0;for(;i<r.length&&i<t&&wg(r.charCodeAt(i));i++);if(i<t&&(t=i),t===0)return 0}return t===rie?void 0:t}function ls(e){return e.kind===11||e.kind===15}function kA(e){return e.kind===331||e.kind===332||e.kind===333}function mj(e){const t=tl(e.parameters);return!!t&&Zh(t)}function Zh(e){const t=r_(e)?e.typeExpression&&e.typeExpression.type:e.type;return e.dotDotDotToken!==void 0||!!t&&t.kind===325}function kSe(e,t){return t.text.substring(e.pos,e.end).includes("@internal")}function _j(e,t){t??(t=jn(e));const r=Do(e);if(r&&r.kind===169){const o=r.parent.parameters.indexOf(r),s=o>0?r.parent.parameters[o-1]:void 0,l=t.text,u=s?So(a0(l,ka(l,s.end+1,!1,!0)),Yh(l,e.pos)):a0(l,ka(l,e.pos,!1,!0));return bt(u)&&kSe(Ya(u),t)}const i=r&&kj(r,t);return!!Ue(i,o=>kSe(o,t))}var IL,hj,rie,MBe=T({"src/compiler/utilitiesPublic.ts"(){ra(),IL=cL(vu(0,0),0),hj=["cs","de","es","fr","it","ja","ko","pl","pt-br","ru","tr","zh-cn","zh-tw"],rie=1073741823}});function fl(e,t){const r=e.declarations;if(r){for(const i of r)if(i.kind===t)return i}}function iie(e,t){return nr(e.declarations||et,r=>r.kind===t)}function ua(e){const t=new Map;if(e)for(const r of e)t.set(r.escapedName,r);return t}function mh(e){return(e.flags&33554432)!==0}function LBe(){var e="";const t=r=>e+=r;return{getText:()=>e,write:t,rawWrite:t,writeKeyword:t,writeOperator:t,writePunctuation:t,writeSpace:t,writeStringLiteral:t,writeLiteral:t,writeParameter:t,writeProperty:t,writeSymbol:(r,i)=>t(r),writeTrailingSemicolon:t,writeComment:t,getTextPos:()=>e.length,getLine:()=>0,getColumn:()=>0,getIndent:()=>0,isAtStartOfLine:()=>!1,hasTrailingComment:()=>!1,hasTrailingWhitespace:()=>!!e.length&&wg(e.charCodeAt(e.length-1)),writeLine:()=>e+=" ",increaseIndent:$a,decreaseIndent:$a,clear:()=>e=""}}function W4(e,t){return e.configFilePath!==t.configFilePath||oie(e,t)}function oie(e,t){return oR(e,t,NF)}function aie(e,t){return oR(e,t,Iq)}function oR(e,t,r){return e!==t&&r.some(i=>!nW(H3(e,i),H3(t,i)))}function sie(e,t){for(;;){const r=t(e);if(r==="quit")return;if(r!==void 0)return r;if($i(e))return;e=e.parent}}function Gc(e,t){const r=e.entries();for(const[i,o]of r){const s=t(o,i);if(s)return s}}function _h(e,t){const r=e.keys();for(const i of r){const o=t(i);if(o)return o}}function F4(e,t){e.forEach((r,i)=>{t.set(i,r)})}function yC(e){const t=Ck.getText();try{return e(Ck),Ck.getText()}finally{Ck.clear(),Ck.writeKeyword(t)}}function xL(e){return e.end-e.pos}function gj(e,t){return e.path===t.path&&!e.prepend==!t.prepend&&!e.circular==!t.circular}function lie(e,t){return e===t||e.resolvedModule===t.resolvedModule||!!e.resolvedModule&&!!t.resolvedModule&&e.resolvedModule.isExternalLibraryImport===t.resolvedModule.isExternalLibraryImport&&e.resolvedModule.extension===t.resolvedModule.extension&&e.resolvedModule.resolvedFileName===t.resolvedModule.resolvedFileName&&e.resolvedModule.originalPath===t.resolvedModule.originalPath&&kBe(e.resolvedModule.packageId,t.resolvedModule.packageId)&&e.alternateResult===t.alternateResult}function z4(e,t,r,i,o){var s;const l=(s=t.getResolvedModule(e,r,i))==null?void 0:s.alternateResult,u=l&&(md(t.getCompilerOptions())===2?[f.There_are_types_at_0_but_this_result_could_not_be_resolved_under_your_current_moduleResolution_setting_Consider_updating_to_node16_nodenext_or_bundler,[l]]:[f.There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings,[l,l.includes(xh+"@types/")?`@types/${pD(o)}`:o]]),p=u?jo(void 0,u[0],...u[1]):t.typesPackageExists(o)?jo(void 0,f.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,o,pD(o)):t.packageBundlesTypes(o)?jo(void 0,f.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,o,r):jo(void 0,f.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,r,pD(o));return p&&(p.repopulateInfo=()=>({moduleReference:r,mode:i,packageName:o===r?void 0:o})),p}function kBe(e,t){return e===t||!!e&&!!t&&e.name===t.name&&e.subModuleName===t.subModuleName&&e.version===t.version}function B4({name:e,subModuleName:t}){return t?`${e}/${t}`:e}function By(e){return`${B4(e)}@${e.version}`}function cie(e,t){return e===t||e.resolvedTypeReferenceDirective===t.resolvedTypeReferenceDirective||!!e.resolvedTypeReferenceDirective&&!!t.resolvedTypeReferenceDirective&&e.resolvedTypeReferenceDirective.resolvedFileName===t.resolvedTypeReferenceDirective.resolvedFileName&&!!e.resolvedTypeReferenceDirective.primary==!!t.resolvedTypeReferenceDirective.primary&&e.resolvedTypeReferenceDirective.originalPath===t.resolvedTypeReferenceDirective.originalPath}function vj(e,t,r,i){N.assert(e.length===t.length);for(let o=0;o<e.length;o++){const s=t[o],l=e[o],u=r(l);if(u?!s||!i(u,s):s)return!0}return!1}function aR(e){return wBe(e),(e.flags&1048576)!==0}function wBe(e){e.flags&2097152||((e.flags&262144||Ho(e,aR))&&(e.flags|=1048576),e.flags|=2097152)}function jn(e){for(;e&&e.kind!==312;)e=e.parent;return e}function G4(e){return jn(e.valueDeclaration||xj(e))}function RL(e,t){return!!e&&(e.scriptKind===1||e.scriptKind===2)&&!e.checkJsDirective&&t===void 0}function uie(e){switch(e.kind){case 241:case 269:case 248:case 249:case 250:return!0}return!1}function Gy(e,t){return N.assert(e>=0),kg(t)[e]}function wSe(e){const t=jn(e),r=bs(t,e.pos);return`${t.fileName}(${r.line+1},${r.character+1})`}function DL(e,t){N.assert(e>=0);const r=kg(t),i=e,o=t.text;if(i+1===r.length)return o.length-1;{const s=r[i];let l=r[i+1]-1;for(N.assert(Hu(o.charCodeAt(l)));s<=l&&Hu(o.charCodeAt(l));)l--;return l}}function V4(e,t,r){return!(r&&r(t))&&!e.identifiers.has(t)}function zl(e){return e===void 0?!0:e.pos===e.end&&e.pos>=0&&e.kind!==1}function Yf(e){return!zl(e)}function die(e,t){return gl(e)?t===e.expression:Rl(e)?t===e.modifiers:yp(e)?t===e.initializer:Jo(e)?t===e.questionToken&&Wd(e):hc(e)?t===e.modifiers||t===e.questionToken||t===e.exclamationToken||NL(e.modifiers,t,ll):rp(e)?t===e.equalsToken||t===e.modifiers||t===e.questionToken||t===e.exclamationToken||NL(e.modifiers,t,ll):ql(e)?t===e.exclamationToken:Ml(e)?t===e.typeParameters||t===e.type||NL(e.typeParameters,t,gl):rf(e)?t===e.typeParameters||NL(e.typeParameters,t,gl):bp(e)?t===e.typeParameters||t===e.type||NL(e.typeParameters,t,gl):Zk(e)?t===e.modifiers||NL(e.modifiers,t,ll):!1}function NL(e,t,r){return!e||To(t)||!r(t)?!1:Nr(e,t)}function OSe(e,t,r){if(t===void 0||t.length===0)return e;let i=0;for(;i<e.length&&r(e[i]);++i);return e.splice(i,0,...t),e}function WSe(e,t,r){if(t===void 0)return e;let i=0;for(;i<e.length&&r(e[i]);++i);return e.splice(i,0,t),e}function FSe(e){return Im(e)||!!(ja(e)&2097152)}function eg(e,t){return OSe(e,t,Im)}function yj(e,t){return OSe(e,t,FSe)}function zSe(e,t){return WSe(e,t,Im)}function SS(e,t){return WSe(e,t,FSe)}function bj(e,t,r){if(e.charCodeAt(t+1)===47&&t+2<r&&e.charCodeAt(t+2)===47){const i=e.substring(t,r);return!!(YU.test(i)||$U.test(i)||xTe.test(i)||ATe.test(i)||ITe.test(i)||RTe.test(i))}return!1}function j4(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===33}function pie(e,t){const r=new Map(t.map(l=>[`${bs(e,l.range.end).line}`,l])),i=new Map;return{getUnusedExpectations:o,markUsed:s};function o(){return zo(r.entries()).filter(([l,u])=>u.type===0&&!i.get(l)).map(([l,u])=>u)}function s(l){return r.has(`${l}`)?(i.set(`${l}`,!0),!0):!1}}function _0(e,t,r){return zl(e)?e.pos:rR(e)||e.kind===12?ka((t||jn(e)).text,e.pos,!1,!0):r&&Fp(e)?_0(e.jsDoc[0],t):e.kind===358&&e._children.length>0?_0(e._children[0],t,r):ka((t||jn(e)).text,e.pos,!1,!1,GL(e))}function Ej(e,t){const r=!zl(e)&&Cm(e)?Oo(e.modifiers,Eu):void 0;return r?ka((t||jn(e)).text,r.end):_0(e,t)}function OE(e,t,r=!1){return bC(e.text,t,r)}function OBe(e){return!!Gn(e,d1)}function U4(e){return!!(Yl(e)&&e.exportClause&&Th(e.exportClause)&&e.exportClause.name.escapedText==="default")}function bC(e,t,r=!1){if(zl(t))return"";let i=e.substring(r?t.pos:ka(e,t.pos),t.end);return OBe(t)&&(i=i.split(/\r\n|\n|\r/).map(o=>o.replace(/^\s*\*/,"").trimStart()).join(`
+`)),i}function fc(e,t=!1){return OE(jn(e),e,t)}function WBe(e){return e.pos}function sR(e,t){return Nv(e,t,WBe,rl)}function ja(e){const t=e.emitNode;return t&&t.flags||0}function Am(e){const t=e.emitNode;return t&&t.internalFlags||0}function fie(e,t,r){if(t&&FBe(e,r))return OE(t,e);switch(e.kind){case 11:{const i=r&2?dU:r&1||ja(e)&16777216?og:dk;return e.singleQuote?"'"+i(e.text,39)+"'":'"'+i(e.text,34)+'"'}case 15:case 16:case 17:case 18:{const i=r&1||ja(e)&16777216?og:dk,o=e.rawText??cU(i(e.text,96));switch(e.kind){case 15:return"`"+o+"`";case 16:return"`"+o+"${";case 17:return"}"+o+"${";case 18:return"}"+o+"`"}break}case 9:case 10:return e.text;case 14:return r&4&&e.isUnterminated?e.text+(e.text.charCodeAt(e.text.length-1)===92?" /":"/"):e.text}return N.fail(`Literal kind '${e.kind}' not accounted for.`)}function FBe(e,t){if($s(e)||!e.parent||t&4&&e.isUnterminated)return!1;if(vp(e)){if(e.numericLiteralFlags&26656)return!1;if(e.numericLiteralFlags&512)return!!(t&8)}return!YW(e)}function mie(e){return Po(e)?'"'+dk(e)+'"':""+e}function _ie(e){return ic(e).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}function Sj(e){return(Ov(e)&7)!==0||Tj(e)}function Tj(e){const t=C_(e);return t.kind===260&&t.parent.kind===299}function ku(e){return Xl(e)&&(e.name.kind===11||R_(e))}function H4(e){return Xl(e)&&e.name.kind===11}function Aj(e){return Xl(e)&&Ma(e.name)}function hie(e){return Xl(e)||Ve(e)}function EC(e){return zBe(e.valueDeclaration)}function zBe(e){return!!e&&e.kind===267&&!e.body}function gie(e){return e.kind===312||e.kind===267||tR(e)}function R_(e){return!!(e.flags&2048)}function WE(e){return ku(e)&&Ij(e)}function Ij(e){switch(e.parent.kind){case 312:return sc(e.parent);case 268:return ku(e.parent.parent)&&$i(e.parent.parent.parent)&&!sc(e.parent.parent.parent)}return!1}function xj(e){var t;return(t=e.declarations)==null?void 0:t.find(r=>!WE(r)&&!(Xl(r)&&R_(r)))}function BBe(e){return e===1||e===100||e===199}function wA(e,t){return sc(e)||BBe(wu(t))&&!!e.commonJsModuleIndicator}function Rj(e,t){switch(e.scriptKind){case 1:case 3:case 2:case 4:break;default:return!1}return e.isDeclarationFile?!1:fd(t,"alwaysStrict")||ase(e.statements)?!0:sc(e)||om(t)?wu(t)>=5?!0:!t.noImplicitUseStrict:!1}function Dj(e){return!!(e.flags&33554432)||Zr(e,128)}function Nj(e,t){switch(e.kind){case 312:case 269:case 299:case 267:case 248:case 249:case 250:case 176:case 174:case 177:case 178:case 262:case 218:case 219:case 172:case 175:return!0;case 241:return!tR(t)}return!1}function Cj(e){switch(N.type(e),e.kind){case 345:case 353:case 330:return!0;default:return Pj(e)}}function Pj(e){switch(N.type(e),e.kind){case 179:case 180:case 173:case 181:case 184:case 185:case 324:case 263:case 231:case 264:case 265:case 352:case 262:case 174:case 176:case 177:case 178:case 218:case 219:return!0;default:return!1}}function TS(e){switch(e.kind){case 272:case 271:return!0;default:return!1}}function vie(e){return TS(e)||GE(e)}function q4(e){switch(e.kind){case 272:case 271:case 243:case 263:case 262:case 267:case 265:case 264:case 266:return!0;default:return!1}}function yie(e){return CL(e)||Xl(e)||ug(e)||Bp(e)}function CL(e){return TS(e)||Yl(e)}function Mj(e){return Gn(e.parent,t=>!!(Uq(t)&1))}function hh(e){return Gn(e.parent,t=>Nj(t,t.parent))}function bie(e,t){let r=hh(e);for(;r;)t(r),r=hh(r)}function Rs(e){return!e||xL(e)===0?"(Missing)":fc(e)}function Eie(e){return e.declaration?Rs(e.declaration.parameters[0].name):void 0}function PL(e){return e.kind===167&&!nf(e.expression)}function SC(e){var t;switch(e.kind){case 80:case 81:return(t=e.emitNode)!=null&&t.autoGenerate?void 0:e.escapedText;case 11:case 9:case 15:return hl(e.text);case 167:return nf(e.expression)?hl(e.expression.text):void 0;case 295:return YA(e);default:return N.assertNever(e)}}function lR(e){return N.checkDefined(SC(e))}function _p(e){switch(e.kind){case 110:return"this";case 81:case 80:return xL(e)===0?Sr(e):fc(e);case 166:return _p(e.left)+"."+_p(e.right);case 211:return Ve(e.name)||Ji(e.name)?_p(e.expression)+"."+_p(e.name):N.assertNever(e.name);case 318:return _p(e.left)+_p(e.right);case 295:return _p(e.namespace)+":"+_p(e.name);default:return N.assertNever(e)}}function wr(e,t,...r){const i=jn(e);return $f(i,e,t,...r)}function cR(e,t,r,...i){const o=ka(e.text,t.pos);return Qc(e,o,t.end-o,r,...i)}function $f(e,t,r,...i){const o=AS(e,t);return Qc(e,o.start,o.length,r,...i)}function Fg(e,t,r,i){const o=AS(e,t);return J4(e,o.start,o.length,r,i)}function ML(e,t,r,i){const o=ka(e.text,t.pos);return J4(e,o,t.end-o,r,i)}function Sie(e,t,r){N.assertGreaterThanOrEqual(t,0),N.assertGreaterThanOrEqual(r,0),N.assertLessThanOrEqual(t,e.length),N.assertLessThanOrEqual(t+r,e.length)}function J4(e,t,r,i,o){return Sie(e.text,t,r),{file:e,start:t,length:r,code:i.code,category:i.category,messageText:i.next?i:i.messageText,relatedInformation:o}}function Lj(e,t,r){return{file:e,start:0,length:0,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:r}}function Tie(e){return typeof e.messageText=="string"?{code:e.code,category:e.category,messageText:e.messageText,next:e.next}:e.messageText}function Aie(e,t,r){return{file:e,start:t.pos,length:t.end-t.pos,code:r.code,category:r.category,messageText:r.message}}function gh(e,t){const r=wv(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);r.scan();const i=r.getTokenStart();return pc(i,r.getTokenEnd())}function Iie(e,t){const r=wv(e.languageVersion,!0,e.languageVariant,e.text,void 0,t);return r.scan(),r.getToken()}function GBe(e,t){const r=ka(e.text,t.pos);if(t.body&&t.body.kind===241){const{line:i}=bs(e,t.body.pos),{line:o}=bs(e,t.body.end);if(i<o)return vu(r,DL(i,e)-r+1)}return pc(r,t.end)}function AS(e,t){let r=t;switch(t.kind){case 312:{const s=ka(e.text,0,!1);return s===e.text.length?vu(0,0):gh(e,s)}case 260:case 208:case 263:case 231:case 264:case 267:case 266:case 306:case 262:case 218:case 174:case 177:case 178:case 265:case 172:case 171:case 274:r=t.name;break;case 219:return GBe(e,t);case 296:case 297:{const s=ka(e.text,t.pos),l=t.statements.length>0?t.statements[0].pos:t.end;return pc(s,l)}case 253:case 229:{const s=ka(e.text,t.pos);return gh(e,s)}case 238:{const s=ka(e.text,t.expression.end);return gh(e,s)}case 357:{const s=ka(e.text,t.tagName.pos);return gh(e,s)}}if(r===void 0)return gh(e,t.pos);N.assert(!n_(r));const i=zl(r),o=i||nI(t)?r.pos:ka(e.text,r.pos);return i?(N.assert(o===r.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),N.assert(o===r.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")):(N.assert(o>=r.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809"),N.assert(o<=r.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")),pc(o,r.end)}function zp(e){return(e.externalModuleIndicator||e.commonJsModuleIndicator)!==void 0}function Qf(e){return e.scriptKind===6}function FE(e){return!!(c0(e)&4096)}function K4(e){return!!(c0(e)&8&&!mp(e,e.parent))}function LL(e){return(Ov(e)&7)===6}function kL(e){return(Ov(e)&7)===4}function uR(e){return(Ov(e)&7)===2}function X4(e){return(Ov(e)&7)===1}function IS(e){return e.kind===213&&e.expression.kind===108}function Bp(e){return e.kind===213&&e.expression.kind===102}function dR(e){return vP(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}function Vy(e){return ug(e)&&Zy(e.argument)&&Ma(e.argument.literal)}function Im(e){return e.kind===244&&e.expression.kind===11}function wL(e){return!!(ja(e)&2097152)}function Y4(e){return wL(e)&&Ac(e)}function VBe(e){return Ve(e.name)&&!e.initializer}function $4(e){return wL(e)&&Ll(e)&&Zn(e.declarationList.declarations,VBe)}function kj(e,t){return e.kind!==12?Yh(t.text,e.pos):void 0}function wj(e,t){const r=e.kind===169||e.kind===168||e.kind===218||e.kind===219||e.kind===217||e.kind===260||e.kind===281?So(a0(t,e.pos),Yh(t,e.pos)):Yh(t,e.pos);return nr(r,i=>t.charCodeAt(i.pos+1)===42&&t.charCodeAt(i.pos+2)===42&&t.charCodeAt(i.pos+3)!==47)}function tg(e){if(182<=e.kind&&e.kind<=205)return!0;switch(e.kind){case 133:case 159:case 150:case 163:case 154:case 136:case 155:case 151:case 157:case 106:case 146:return!0;case 116:return e.parent.kind!==222;case 233:return BSe(e);case 168:return e.parent.kind===200||e.parent.kind===195;case 80:(e.parent.kind===166&&e.parent.right===e||e.parent.kind===211&&e.parent.name===e)&&(e=e.parent),N.assert(e.kind===80||e.kind===166||e.kind===211,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 166:case 211:case 110:{const{parent:t}=e;if(t.kind===186)return!1;if(t.kind===205)return!t.isTypeOf;if(182<=t.kind&&t.kind<=205)return!0;switch(t.kind){case 233:return BSe(t);case 168:return e===t.constraint;case 352:return e===t.constraint;case 172:case 171:case 169:case 260:return e===t.type;case 262:case 218:case 219:case 176:case 174:case 173:case 177:case 178:return e===t.type;case 179:case 180:case 181:return e===t.type;case 216:return e===t.type;case 213:case 214:case 215:return Nr(t.typeArguments,e)}}}return!1}function BSe(e){return dF(e.parent)||vI(e.parent)||of(e.parent)&&!M3(e)}function GSe(e,t){for(;e;){if(e.kind===t)return!0;e=e.parent}return!1}function zE(e,t){return r(e);function r(i){switch(i.kind){case 253:return t(i);case 269:case 241:case 245:case 246:case 247:case 248:case 249:case 250:case 254:case 255:case 296:case 297:case 256:case 258:case 299:return Ho(i,r)}}}function xie(e,t){return r(e);function r(i){switch(i.kind){case 229:t(i);const o=i.expression;o&&r(o);return;case 266:case 264:case 267:case 265:return;default:if(ea(i)){if(i.name&&i.name.kind===167){r(i.name.expression);return}}else tg(i)||Ho(i,r)}}}function Oj(e){return e&&e.kind===188?e.elementType:e&&e.kind===183?sh(e.typeArguments):void 0}function Rie(e){switch(e.kind){case 264:case 263:case 231:case 187:return e.members;case 210:return e.properties}}function pR(e){if(e)switch(e.kind){case 208:case 306:case 169:case 303:case 172:case 171:case 304:case 260:return!0}return!1}function Die(e){return pR(e)||Oy(e)}function TC(e){return e.parent.kind===261&&e.parent.parent.kind===243}function Nie(e){return lr(e)?Oa(e.parent)&&mr(e.parent.parent)&&Bl(e.parent.parent)===2||Q4(e.parent):!1}function Q4(e){return lr(e)?mr(e)&&Bl(e)===1:!1}function Cie(e){return(wi(e)?uR(e)&&Ve(e.name)&&TC(e):Jo(e)?zC(e)&&mc(e):yp(e)&&zC(e))||Q4(e)}function Pie(e){switch(e.kind){case 174:case 173:case 176:case 177:case 178:case 262:case 218:return!0}return!1}function Wj(e,t){for(;;){if(t&&t(e),e.statement.kind!==256)return e.statement;e=e.statement}}function BE(e){return e&&e.kind===241&&ea(e.parent)}function xm(e){return e&&e.kind===174&&e.parent.kind===210}function Z4(e){return(e.kind===174||e.kind===177||e.kind===178)&&(e.parent.kind===210||e.parent.kind===231)}function Mie(e){return e&&e.kind===1}function VSe(e){return e&&e.kind===0}function fR(e,t,r,i){return Ue(e==null?void 0:e.properties,o=>{if(!hc(o))return;const s=SC(o.name);return t===s||i&&i===s?r(o):void 0})}function Lie(e,t,r){return fR(e,t,i=>_d(i.initializer)?An(i.initializer.elements,o=>Ma(o)&&o.text===r):void 0)}function AC(e){if(e&&e.statements.length){const t=e.statements[0].expression;return ii(t,Oa)}}function e3(e,t,r){return OL(e,t,i=>_d(i.initializer)?An(i.initializer.elements,o=>Ma(o)&&o.text===r):void 0)}function OL(e,t,r){return fR(AC(e),t,r)}function Gp(e){return Gn(e.parent,ea)}function kie(e){return Gn(e.parent,Bs)}function su(e){return Gn(e.parent,ui)}function wie(e){return Gn(e.parent,t=>ui(t)||ea(t)?"quit":Rl(t))}function t3(e){return Gn(e.parent,tR)}function n3(e){const t=Gn(e.parent,r=>ui(r)?"quit":Eu(r));return t&&ui(t.parent)?su(t.parent):su(t??e)}function Fd(e,t,r){for(N.assert(e.kind!==312);;){if(e=e.parent,!e)return N.fail();switch(e.kind){case 167:if(r&&ui(e.parent.parent))return e;e=e.parent.parent;break;case 170:e.parent.kind===169&&$c(e.parent.parent)?e=e.parent.parent:$c(e.parent)&&(e=e.parent);break;case 219:if(!t)continue;case 262:case 218:case 267:case 175:case 172:case 171:case 174:case 173:case 176:case 177:case 178:case 179:case 180:case 181:case 266:case 312:return e}}}function Oie(e){switch(e.kind){case 219:case 262:case 218:case 172:return!0;case 241:switch(e.parent.kind){case 176:case 174:case 177:case 178:return!0;default:return!1}default:return!1}}function r3(e){Ve(e)&&(Ic(e.parent)||Ac(e.parent))&&e.parent.name===e&&(e=e.parent);const t=Fd(e,!0,!1);return $i(t)}function Wie(e){const t=Fd(e,!1,!1);if(t)switch(t.kind){case 176:case 262:case 218:return t}}function WL(e,t){for(;;){if(e=e.parent,!e)return;switch(e.kind){case 167:e=e.parent;break;case 262:case 218:case 219:if(!t)continue;case 172:case 171:case 174:case 173:case 176:case 177:case 178:case 175:return e;case 170:e.parent.kind===169&&$c(e.parent.parent)?e=e.parent.parent:$c(e.parent)&&(e=e.parent);break}}}function xS(e){if(e.kind===218||e.kind===219){let t=e,r=e.parent;for(;r.kind===217;)t=r,r=r.parent;if(r.kind===213&&r.expression===t)return r}}function jSe(e){return e.kind===108||zd(e)}function zd(e){const t=e.kind;return(t===211||t===212)&&e.expression.kind===108}function FL(e){const t=e.kind;return(t===211||t===212)&&e.expression.kind===110}function i3(e){var t;return!!e&&wi(e)&&((t=e.initializer)==null?void 0:t.kind)===110}function Fie(e){return!!e&&(rp(e)||hc(e))&&mr(e.parent.parent)&&e.parent.parent.operatorToken.kind===64&&e.parent.parent.right.kind===110}function zL(e){switch(e.kind){case 183:return e.typeName;case 233:return Gl(e.expression)?e.expression:void 0;case 80:case 166:return e}}function o3(e){switch(e.kind){case 215:return e.tag;case 286:case 285:return e.tagName;case 226:return e.right;default:return e.expression}}function a3(e,t,r,i){if(e&&ld(t)&&Ji(t.name))return!1;switch(t.kind){case 263:return!0;case 231:return!e;case 172:return r!==void 0&&(e?Ic(r):ui(r)&&!XE(t)&&!gU(t));case 177:case 178:case 174:return t.body!==void 0&&r!==void 0&&(e?Ic(r):ui(r));case 169:return e?r!==void 0&&r.body!==void 0&&(r.kind===176||r.kind===174||r.kind===178)&&qE(r)!==t&&i!==void 0&&i.kind===263:!1}return!1}function mR(e,t,r,i){return If(t)&&a3(e,t,r,i)}function BL(e,t,r,i){return mR(e,t,r,i)||IC(e,t,r)}function IC(e,t,r){switch(t.kind){case 263:return bt(t.members,i=>BL(e,i,t,r));case 231:return!e&&bt(t.members,i=>BL(e,i,t,r));case 174:case 178:case 176:return bt(t.parameters,i=>mR(e,i,t,r));default:return!1}}function zv(e,t){if(mR(e,t))return!0;const r=ag(t);return!!r&&IC(e,r,t)}function Fj(e,t,r){let i;if(Oy(t)){const{firstAccessor:o,secondAccessor:s,setAccessor:l}=wS(r.members,t),u=If(o)?o:s&&If(s)?s:void 0;if(!u||t!==u)return!1;i=l==null?void 0:l.parameters}else ql(t)&&(i=t.parameters);if(mR(e,t,r))return!0;if(i){for(const o of i)if(!JE(o)&&mR(e,o,t,r))return!0}return!1}function zj(e){if(e.textSourceNode){switch(e.textSourceNode.kind){case 11:return zj(e.textSourceNode);case 15:return e.text===""}return!1}return e.text===""}function _R(e){const{parent:t}=e;return t.kind===286||t.kind===285||t.kind===287?t.tagName===e:!1}function ng(e){switch(e.kind){case 108:case 106:case 112:case 97:case 14:case 209:case 210:case 211:case 212:case 213:case 214:case 215:case 234:case 216:case 238:case 235:case 217:case 218:case 231:case 219:case 222:case 220:case 221:case 224:case 225:case 226:case 227:case 230:case 228:case 232:case 284:case 285:case 288:case 229:case 223:case 236:return!0;case 233:return!of(e.parent)&&!vI(e.parent);case 166:for(;e.parent.kind===166;)e=e.parent;return e.parent.kind===186||kA(e.parent)||IP(e.parent)||R0(e.parent)||_R(e);case 318:for(;R0(e.parent);)e=e.parent;return e.parent.kind===186||kA(e.parent)||IP(e.parent)||R0(e.parent)||_R(e);case 81:return mr(e.parent)&&e.parent.left===e&&e.parent.operatorToken.kind===103;case 80:if(e.parent.kind===186||kA(e.parent)||IP(e.parent)||R0(e.parent)||_R(e))return!0;case 9:case 10:case 11:case 15:case 110:return s3(e);default:return!1}}function s3(e){const{parent:t}=e;switch(t.kind){case 260:case 169:case 172:case 171:case 306:case 303:case 208:return t.initializer===e;case 244:case 245:case 246:case 247:case 253:case 254:case 255:case 296:case 257:return t.expression===e;case 248:const r=t;return r.initializer===e&&r.initializer.kind!==261||r.condition===e||r.incrementor===e;case 249:case 250:const i=t;return i.initializer===e&&i.initializer.kind!==261||i.expression===e;case 216:case 234:return e===t.expression;case 239:return e===t.expression;case 167:return e===t.expression;case 170:case 294:case 293:case 305:return!0;case 233:return t.expression===e&&!tg(t);case 304:return t.objectAssignmentInitializer===e;case 238:return e===t.expression;default:return ng(t)}}function l3(e){for(;e.kind===166||e.kind===80;)e=e.parent;return e.kind===186}function zie(e){return Th(e)&&!!e.parent.moduleSpecifier}function h0(e){return e.kind===271&&e.moduleReference.kind===283}function xC(e){return N.assert(h0(e)),e.moduleReference.expression}function Bj(e){return GE(e)&&kR(e.initializer).arguments[0]}function hR(e){return e.kind===271&&e.moduleReference.kind!==283}function dd(e){return lr(e)}function USe(e){return!lr(e)}function lr(e){return!!e&&!!(e.flags&524288)}function c3(e){return!!e&&!!(e.flags&134217728)}function Gj(e){return!Qf(e)}function GL(e){return!!e&&!!(e.flags&16777216)}function u3(e){return Cf(e)&&Ve(e.typeName)&&e.typeName.escapedText==="Object"&&e.typeArguments&&e.typeArguments.length===2&&(e.typeArguments[0].kind===154||e.typeArguments[0].kind===150)}function Ad(e,t){if(e.kind!==213)return!1;const{expression:r,arguments:i}=e;if(r.kind!==80||r.escapedText!=="require"||i.length!==1)return!1;const o=i[0];return!t||ls(o)}function d3(e){return HSe(e,!1)}function GE(e){return HSe(e,!0)}function Bie(e){return Qa(e)&&GE(e.parent.parent)}function HSe(e,t){return wi(e)&&!!e.initializer&&Ad(t?kR(e.initializer):e.initializer,!0)}function Vj(e){return Ll(e)&&e.declarationList.declarations.length>0&&Zn(e.declarationList.declarations,t=>d3(t))}function VL(e){return e===39||e===34}function p3(e,t){return OE(t,e).charCodeAt(0)===34}function RC(e){return mr(e)||ws(e)||Ve(e)||la(e)}function jL(e){return lr(e)&&e.initializer&&mr(e.initializer)&&(e.initializer.operatorToken.kind===57||e.initializer.operatorToken.kind===61)&&e.name&&Gl(e.name)&&gR(e.name,e.initializer.left)?e.initializer.right:e.initializer}function UL(e){const t=jL(e);return t&&g0(t,Hy(e.name))}function jBe(e,t){return Ue(e.properties,r=>hc(r)&&Ve(r.name)&&r.name.escapedText==="value"&&r.initializer&&g0(r.initializer,t))}function OA(e){if(e&&e.parent&&mr(e.parent)&&e.parent.operatorToken.kind===64){const t=Hy(e.parent.left);return g0(e.parent.right,t)||UBe(e.parent.left,e.parent.right,t)}if(e&&la(e)&&DS(e)){const t=jBe(e.arguments[2],e.arguments[1].text==="prototype");if(t)return t}}function g0(e,t){if(la(e)){const r=hs(e.expression);return r.kind===218||r.kind===219?e:void 0}if(e.kind===218||e.kind===231||e.kind===219||Oa(e)&&(e.properties.length===0||t))return e}function UBe(e,t,r){const i=mr(t)&&(t.operatorToken.kind===57||t.operatorToken.kind===61)&&g0(t.right,r);if(i&&gR(e,t.left))return i}function Gie(e){const t=wi(e.parent)?e.parent.name:mr(e.parent)&&e.parent.operatorToken.kind===64?e.parent.left:void 0;return t&&g0(e.right,Hy(t))&&Gl(t)&&gR(t,e.left)}function jj(e){if(mr(e.parent)){const t=(e.parent.operatorToken.kind===57||e.parent.operatorToken.kind===61)&&mr(e.parent.parent)?e.parent.parent:e.parent;if(t.operatorToken.kind===64&&Ve(t.left))return t.left}else if(wi(e.parent))return e.parent.name}function gR(e,t){return N_(e)&&N_(t)?em(e)===em(t):Qh(e)&&f3(t)&&(t.expression.kind===110||Ve(t.expression)&&(t.expression.escapedText==="window"||t.expression.escapedText==="self"||t.expression.escapedText==="global"))?gR(e,JL(t)):f3(e)&&f3(t)?zg(e)===zg(t)&&gR(e.expression,t.expression):!1}function HL(e){for(;Lc(e,!0);)e=e.right;return e}function RS(e){return Ve(e)&&e.escapedText==="exports"}function Uj(e){return Ve(e)&&e.escapedText==="module"}function rg(e){return(Fr(e)||qL(e))&&Uj(e.expression)&&zg(e)==="exports"}function Bl(e){const t=HBe(e);return t===5||lr(e)?t:0}function DS(e){return Me(e.arguments)===3&&Fr(e.expression)&&Ve(e.expression.expression)&&Sr(e.expression.expression)==="Object"&&Sr(e.expression.name)==="defineProperty"&&nf(e.arguments[1])&&NS(e.arguments[0],!0)}function f3(e){return Fr(e)||qL(e)}function qL(e){return Qs(e)&&nf(e.argumentExpression)}function VE(e,t){return Fr(e)&&(!t&&e.expression.kind===110||Ve(e.name)&&NS(e.expression,!0))||m3(e,t)}function m3(e,t){return qL(e)&&(!t&&e.expression.kind===110||Gl(e.expression)||VE(e.expression,!0))}function NS(e,t){return Gl(e)||VE(e,t)}function JL(e){return Fr(e)?e.name:e.argumentExpression}function HBe(e){if(la(e)){if(!DS(e))return 0;const t=e.arguments[0];return RS(t)||rg(t)?8:VE(t)&&zg(t)==="prototype"?9:7}return e.operatorToken.kind!==64||!ws(e.left)||qBe(HL(e))?0:NS(e.left.expression,!0)&&zg(e.left)==="prototype"&&Oa(Hj(e))?6:KL(e.left)}function qBe(e){return pI(e)&&vp(e.expression)&&e.expression.text==="0"}function _3(e){if(Fr(e))return e.name;const t=hs(e.argumentExpression);return vp(t)||ls(t)?t:e}function zg(e){const t=_3(e);if(t){if(Ve(t))return t.escapedText;if(ls(t)||vp(t))return hl(t.text)}}function KL(e){if(e.expression.kind===110)return 4;if(rg(e))return 2;if(NS(e.expression,!0)){if(Hy(e.expression))return 3;let t=e;for(;!Ve(t.expression);)t=t.expression;const r=t.expression;if((r.escapedText==="exports"||r.escapedText==="module"&&zg(t)==="exports")&&VE(e))return 1;if(NS(e,!0)||Qs(e)&&E3(e))return 5}return 0}function Hj(e){for(;mr(e.right);)e=e.right;return e.right}function XL(e){return mr(e)&&Bl(e)===3}function Vie(e){return lr(e)&&e.parent&&e.parent.kind===244&&(!Qs(e)||qL(e))&&!!d0(e.parent)}function YL(e,t){const{valueDeclaration:r}=e;(!r||!(t.flags&33554432&&!lr(t)&&!(r.flags&33554432))&&RC(r)&&!RC(t)||r.kind!==t.kind&&hie(r))&&(e.valueDeclaration=t)}function jie(e){if(!e||!e.valueDeclaration)return!1;const t=e.valueDeclaration;return t.kind===262||wi(t)&&t.initializer&&ea(t.initializer)}function vR(e){var t,r;switch(e.kind){case 260:case 208:return(t=Gn(e.initializer,i=>Ad(i,!0)))==null?void 0:t.arguments[0];case 272:case 278:return ii(e.moduleSpecifier,ls);case 271:return ii((r=ii(e.moduleReference,Ah))==null?void 0:r.expression,ls);case 273:case 280:return ii(e.parent.moduleSpecifier,ls);case 274:case 281:return ii(e.parent.parent.moduleSpecifier,ls);case 276:return ii(e.parent.parent.parent.moduleSpecifier,ls);case 205:return Vy(e)?e.argument.literal:void 0;default:N.assertNever(e)}}function DC(e){return $L(e)||N.failBadSyntaxKind(e.parent)}function $L(e){switch(e.parent.kind){case 272:case 278:return e.parent;case 283:return e.parent.parent;case 213:return Bp(e.parent)||Ad(e.parent,!1)?e.parent:void 0;case 201:return N.assert(Ma(e)),ii(e.parent.parent,ug);default:return}}function yR(e){switch(e.kind){case 272:case 278:return e.moduleSpecifier;case 271:return e.moduleReference.kind===283?e.moduleReference.expression:void 0;case 205:return Vy(e)?e.argument.literal:void 0;case 213:return e.arguments[0];case 267:return e.name.kind===11?e.name:void 0;default:return N.assertNever(e)}}function bR(e){switch(e.kind){case 272:return e.importClause&&ii(e.importClause.namedBindings,nb);case 271:return e;case 278:return e.exportClause&&ii(e.exportClause,Th);default:return N.assertNever(e)}}function WA(e){return e.kind===272&&!!e.importClause&&!!e.importClause.name}function h3(e,t){if(e.name){const r=t(e);if(r)return r}if(e.namedBindings){const r=nb(e.namedBindings)?t(e.namedBindings):Ue(e.namedBindings.elements,t);if(r)return r}}function FA(e){if(e)switch(e.kind){case 169:case 174:case 173:case 304:case 303:case 172:case 171:return e.questionToken!==void 0}return!1}function ER(e){const t=QR(e)?Xc(e.parameters):void 0,r=ii(t&&t.name,Ve);return!!r&&r.escapedText==="new"}function Zf(e){return e.kind===353||e.kind===345||e.kind===347}function QL(e){return Zf(e)||Nm(e)}function JBe(e){return eu(e)&&mr(e.expression)&&e.expression.operatorToken.kind===64?HL(e.expression):void 0}function qSe(e){return eu(e)&&mr(e.expression)&&Bl(e.expression)!==0&&mr(e.expression.right)&&(e.expression.right.operatorToken.kind===57||e.expression.right.operatorToken.kind===61)?e.expression.right.right:void 0}function qj(e){switch(e.kind){case 243:const t=zA(e);return t&&t.initializer;case 172:return e.initializer;case 303:return e.initializer}}function zA(e){return Ll(e)?Xc(e.declarationList.declarations):void 0}function JSe(e){return Xl(e)&&e.body&&e.body.kind===267?e.body:void 0}function ZL(e){if(e.kind>=243&&e.kind<=259)return!0;switch(e.kind){case 80:case 110:case 108:case 166:case 236:case 212:case 211:case 208:case 218:case 219:case 174:case 177:case 178:return!0;default:return!1}}function ek(e){switch(e.kind){case 219:case 226:case 241:case 252:case 179:case 296:case 263:case 231:case 175:case 176:case 185:case 180:case 251:case 259:case 246:case 212:case 242:case 1:case 266:case 306:case 277:case 278:case 281:case 244:case 249:case 250:case 248:case 262:case 218:case 184:case 177:case 80:case 245:case 272:case 271:case 181:case 264:case 324:case 330:case 256:case 174:case 173:case 267:case 202:case 270:case 210:case 169:case 217:case 211:case 303:case 172:case 171:case 253:case 240:case 178:case 304:case 305:case 255:case 257:case 258:case 265:case 168:case 260:case 243:case 247:case 254:return!0;default:return!1}}function Jj(e,t){let r;pR(e)&&zy(e)&&Fp(e.initializer)&&(r=Jr(r,KSe(e,e.initializer.jsDoc)));let i=e;for(;i&&i.parent;){if(Fp(i)&&(r=Jr(r,KSe(e,i.jsDoc))),i.kind===169){r=Jr(r,(t?Tre:Qx)(i));break}if(i.kind===168){r=Jr(r,(t?Ire:Are)(i));break}i=Kj(i)}return r||et}function KSe(e,t){const r=Ya(t);return Pi(t,i=>{if(i===r){const o=nr(i.tags,s=>KBe(e,s));return i.tags===o?[i]:o}else return nr(i.tags,ZR)})}function KBe(e,t){return!(xP(t)||pF(t))||!t.parent||!n_(t.parent)||!Gd(t.parent.parent)||t.parent.parent===e}function Kj(e){const t=e.parent;if(t.kind===303||t.kind===277||t.kind===172||t.kind===244&&e.kind===211||t.kind===253||JSe(t)||Lc(e))return t;if(t.parent&&(zA(t.parent)===e||Lc(t)))return t.parent;if(t.parent&&t.parent.parent&&(zA(t.parent.parent)||qj(t.parent.parent)===e||qSe(t.parent.parent)))return t.parent.parent}function tk(e){if(e.symbol)return e.symbol;if(!Ve(e.name))return;const t=e.name.escapedText,r=v0(e);if(!r)return;const i=An(r.parameters,o=>o.name.kind===80&&o.name.escapedText===t);return i&&i.symbol}function g3(e){if(n_(e.parent)&&e.parent.tags){const t=An(e.parent.tags,Zf);if(t)return t}return v0(e)}function Xj(e){return S4(e,ZR)}function v0(e){const t=y0(e);if(t)return yp(t)&&t.type&&ea(t.type)?t.type:ea(t)?t:void 0}function y0(e){const t=CS(e);if(t)return qSe(t)||JBe(t)||qj(t)||zA(t)||JSe(t)||t}function CS(e){const t=SR(e);if(!t)return;const r=t.parent;if(r&&r.jsDoc&&t===tl(r.jsDoc))return r}function SR(e){return Gn(e.parent,n_)}function Uie(e){const t=e.name.escapedText,{typeParameters:r}=e.parent.parent.parent;return r&&An(r,i=>i.name.escapedText===t)}function XSe(e){return!!e.typeArguments}function Hie(e){let t=e.parent;for(;;){switch(t.kind){case 226:const r=t,i=r.operatorToken.kind;return Vv(i)&&r.left===e?r:void 0;case 224:case 225:const o=t,s=o.operator;return s===46||s===47?o:void 0;case 249:case 250:const l=t;return l.initializer===e?l:void 0;case 217:case 209:case 230:case 235:e=t;break;case 305:e=t.parent;break;case 304:if(t.name!==e)return;e=t.parent;break;case 303:if(t.name===e)return;e=t.parent;break;default:return}t=e.parent}}function BA(e){const t=Hie(e);if(!t)return 0;switch(t.kind){case 226:const r=t.operatorToken.kind;return r===64||BC(r)?1:2;case 224:case 225:return 2;case 249:case 250:return 1}}function ig(e){return!!Hie(e)}function XBe(e){const t=hs(e.right);return t.kind===226&&eq(t.operatorToken.kind)}function Yj(e){const t=Hie(e);return!!t&&Lc(t,!0)&&XBe(t)}function qie(e){switch(e.kind){case 241:case 243:case 254:case 245:case 255:case 269:case 296:case 297:case 256:case 248:case 249:case 250:case 246:case 247:case 258:case 299:return!0}return!1}function Jie(e){return Os(e)||Gs(e)||MA(e)||Ac(e)||Ml(e)}function YSe(e,t){for(;e&&e.kind===t;)e=e.parent;return e}function nk(e){return YSe(e,196)}function Bv(e){return YSe(e,217)}function Kie(e){let t;for(;e&&e.kind===196;)t=e,e=e.parent;return[t,e]}function rk(e){for(;GS(e);)e=e.type;return e}function hs(e,t){return $l(e,t?17:1)}function $j(e){return e.kind!==211&&e.kind!==212?!1:(e=Bv(e.parent),e&&e.kind===220)}function jE(e,t){for(;e;){if(e===t)return!0;e=e.parent}return!1}function Bg(e){return!$i(e)&&!ta(e)&&Ju(e.parent)&&e.parent.name===e}function NC(e){const t=e.parent;switch(e.kind){case 11:case 15:case 9:if(Za(t))return t.parent;case 80:if(Ju(t))return t.name===e?t:void 0;if(xd(t)){const r=t.parent;return r_(r)&&r.name===t?r:void 0}else{const r=t.parent;return mr(r)&&Bl(r)!==0&&(r.left.symbol||r.symbol)&&Mo(r)===e?r:void 0}case 81:return Ju(t)&&t.name===e?t:void 0;default:return}}function ik(e){return nf(e)&&e.parent.kind===167&&Ju(e.parent.parent)}function Xie(e){const t=e.parent;switch(t.kind){case 172:case 171:case 174:case 173:case 177:case 178:case 306:case 303:case 211:return t.name===e;case 166:return t.right===e;case 208:case 276:return t.propertyName===e;case 281:case 291:case 285:case 286:case 287:return!0}return!1}function $Se(e){return e.kind===271||e.kind===270||e.kind===273&&e.name||e.kind===274||e.kind===280||e.kind===276||e.kind===281||e.kind===277&&TR(e)?!0:lr(e)&&(mr(e)&&Bl(e)===2&&TR(e)||Fr(e)&&mr(e.parent)&&e.parent.left===e&&e.parent.operatorToken.kind===64&&ok(e.parent.right))}function Qj(e){switch(e.parent.kind){case 273:case 276:case 274:case 281:case 277:case 271:case 280:return e.parent;case 166:do e=e.parent;while(e.parent.kind===166);return Qj(e)}}function ok(e){return Gl(e)||Zc(e)}function TR(e){const t=Zj(e);return ok(t)}function Zj(e){return kl(e)?e.expression:e.right}function Yie(e){return e.kind===304?e.name:e.kind===303?e.initializer:e.parent.right}function D_(e){const t=UE(e);if(t&&lr(e)){const r=Rre(e);if(r)return r.class}return t}function UE(e){const t=ak(e.heritageClauses,96);return t&&t.types.length>0?t.types[0]:void 0}function AR(e){if(lr(e))return Dre(e).map(t=>t.class);{const t=ak(e.heritageClauses,119);return t==null?void 0:t.types}}function CC(e){return hd(e)?PC(e)||et:ui(e)&&So(AA(D_(e)),AR(e))||et}function PC(e){const t=ak(e.heritageClauses,96);return t?t.types:void 0}function ak(e,t){if(e){for(const r of e)if(r.token===t)return r}}function b0(e,t){for(;e;){if(e.kind===t)return e;e=e.parent}}function Bd(e){return 83<=e&&e<=165}function eU(e){return 19<=e&&e<=79}function v3(e){return Bd(e)||eU(e)}function y3(e){return 128<=e&&e<=165}function tU(e){return Bd(e)&&!y3(e)}function QSe(e){return 119<=e&&e<=127}function GA(e){const t=PE(e);return t!==void 0&&tU(t)}function ZSe(e){const t=PE(e);return t!==void 0&&Bd(t)}function nU(e){const t=u0(e);return!!t&&!y3(t)}function IR(e){return 2<=e&&e<=7}function Vc(e){if(!e)return 4;let t=0;switch(e.kind){case 262:case 218:case 174:e.asteriskToken&&(t|=1);case 219:Zr(e,1024)&&(t|=2);break}return e.body||(t|=4),t}function MC(e){switch(e.kind){case 262:case 218:case 219:case 174:return e.body!==void 0&&e.asteriskToken===void 0&&Zr(e,1024)}return!1}function nf(e){return ls(e)||vp(e)}function b3(e){return tb(e)&&(e.operator===40||e.operator===41)&&vp(e.operand)}function jy(e){const t=Mo(e);return!!t&&E3(t)}function E3(e){if(!(e.kind===167||e.kind===212))return!1;const t=Qs(e)?hs(e.argumentExpression):e.expression;return!nf(t)&&!b3(t)}function PS(e){switch(e.kind){case 80:case 81:return e.escapedText;case 11:case 15:case 9:return hl(e.text);case 167:const t=e.expression;return nf(t)?hl(t.text):b3(t)?t.operator===41?fa(t.operator)+t.operand.text:t.operand.text:void 0;case 295:return YA(e);default:return N.assertNever(e)}}function N_(e){switch(e.kind){case 80:case 11:case 15:case 9:return!0;default:return!1}}function em(e){return Qh(e)?Sr(e):t_(e)?lP(e):e.text}function LC(e){return Qh(e)?e.escapedText:t_(e)?YA(e):hl(e.text)}function eTe(e){return`__@${Ta(e)}@${e.escapedName}`}function sk(e,t){return`__#${Ta(e)}@${t}`}function lk(e){return uo(e.escapedName,"__@")}function $ie(e){return uo(e.escapedName,"__#")}function tTe(e){return e.kind===80&&e.escapedText==="Symbol"}function Qie(e){return Ve(e)?Sr(e)==="__proto__":Ma(e)&&e.text==="__proto__"}function kC(e,t){switch(e=$l(e),e.kind){case 231:if(pJ(e))return!1;break;case 218:if(e.name)return!1;break;case 219:break;default:return!1}return typeof t=="function"?t(e):!0}function rU(e){switch(e.kind){case 303:return!Qie(e.name);case 304:return!!e.objectAssignmentInitializer;case 260:return Ve(e.name)&&!!e.initializer;case 169:return Ve(e.name)&&!!e.initializer&&!e.dotDotDotToken;case 208:return Ve(e.name)&&!!e.initializer&&!e.dotDotDotToken;case 172:return!!e.initializer;case 226:switch(e.operatorToken.kind){case 64:case 77:case 76:case 78:return Ve(e.left)}break;case 277:return!0}return!1}function hp(e,t){if(!rU(e))return!1;switch(e.kind){case 303:return kC(e.initializer,t);case 304:return kC(e.objectAssignmentInitializer,t);case 260:case 169:case 208:case 172:return kC(e.initializer,t);case 226:return kC(e.right,t);case 277:return kC(e.expression,t)}}function iU(e){return e.escapedText==="push"||e.escapedText==="unshift"}function HE(e){return C_(e).kind===169}function C_(e){for(;e.kind===208;)e=e.parent.parent;return e}function oU(e){const t=e.kind;return t===176||t===218||t===262||t===219||t===174||t===177||t===178||t===267||t===312}function $s(e){return Zm(e.pos)||Zm(e.end)}function nTe(e){return Do(e,$i)||e}function aU(e){const t=lU(e),r=e.kind===214&&e.arguments!==void 0;return sU(e.kind,t,r)}function sU(e,t,r){switch(e){case 214:return r?0:1;case 224:case 221:case 222:case 220:case 223:case 227:case 229:return 1;case 226:switch(t){case 43:case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 1}}return 0}function wC(e){const t=lU(e),r=e.kind===214&&e.arguments!==void 0;return ck(e.kind,t,r)}function lU(e){return e.kind===226?e.operatorToken.kind:e.kind===224||e.kind===225?e.operator:e.kind}function ck(e,t,r){switch(e){case 361:return 0;case 230:return 1;case 229:return 2;case 227:return 4;case 226:switch(t){case 28:return 0;case 64:case 65:case 66:case 68:case 67:case 69:case 70:case 71:case 72:case 73:case 74:case 79:case 75:case 76:case 77:case 78:return 3;default:return uk(t)}case 216:case 235:case 224:case 221:case 222:case 220:case 223:return 16;case 225:return 17;case 213:return 18;case 214:return r?19:18;case 215:case 211:case 212:case 236:return 19;case 234:case 238:return 11;case 110:case 108:case 80:case 81:case 106:case 112:case 97:case 9:case 10:case 11:case 209:case 210:case 218:case 219:case 231:case 14:case 15:case 228:case 217:case 232:case 284:case 285:case 288:return 20;default:return-1}}function uk(e){switch(e){case 61:return 4;case 57:return 5;case 56:return 6;case 52:return 7;case 53:return 8;case 51:return 9;case 35:case 36:case 37:case 38:return 10;case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:return 11;case 48:case 49:case 50:return 12;case 40:case 41:return 13;case 42:case 44:case 45:return 14;case 43:return 15}return-1}function xR(e){return nr(e,t=>{switch(t.kind){case 294:return!!t.expression;case 12:return!t.containsOnlyTriviaWhiteSpaces;default:return!0}})}function RR(){let e=[];const t=[],r=new Map;let i=!1;return{add:s,lookup:o,getGlobalDiagnostics:l,getDiagnostics:u};function o(p){let h;if(p.file?h=r.get(p.file.fileName):h=e,!h)return;const m=Nv(h,p,nl,V3);if(m>=0)return h[m]}function s(p){let h;p.file?(h=r.get(p.file.fileName),h||(h=[],r.set(p.file.fileName,h),xy(t,p.file.fileName,Uu))):(i&&(i=!1,e=e.slice()),h=e),xy(h,p,V3)}function l(){return i=!0,e}function u(p){if(p)return r.get(p)||[];const h=rc(t,m=>r.get(m));return e.length&&h.unshift(...e),h}}function cU(e){return e.replace(DTe,"\\${")}function Zie(e){return!!((e.templateFlags||0)&2048)}function uU(e){return e&&!!(rI(e)?Zie(e):Zie(e.head)||bt(e.templateSpans,t=>Zie(t.literal)))}function rTe(e){return"\\u"+("0000"+e.toString(16).toUpperCase()).slice(-4)}function YBe(e,t,r){if(e.charCodeAt(0)===0){const i=r.charCodeAt(t+e.length);return i>=48&&i<=57?"\\x00":"\\0"}return MTe.get(e)||rTe(e.charCodeAt(0))}function og(e,t){const r=t===96?PTe:t===39?CTe:NTe;return e.replace(r,YBe)}function dk(e,t){return e=og(e,t),cae.test(e)?e.replace(cae,r=>rTe(r.charCodeAt(0))):e}function $Be(e){return"&#x"+e.toString(16).toUpperCase()+";"}function QBe(e){return e.charCodeAt(0)===0?"&#0;":wTe.get(e)||$Be(e.charCodeAt(0))}function dU(e,t){const r=t===39?kTe:LTe;return e.replace(r,QBe)}function tm(e){const t=e.length;return t>=2&&e.charCodeAt(0)===e.charCodeAt(t-1)&&ZBe(e.charCodeAt(0))?e.substring(1,t-1):e}function ZBe(e){return e===39||e===34||e===96}function DR(e){const t=e.charCodeAt(0);return t>=97&&t<=122||e.includes("-")}function S3(e){const t=cP[1];for(let r=cP.length;r<=e;r++)cP.push(cP[r-1]+t);return cP[e]}function NR(){return cP[1].length}function pk(e){var t,r,i,o,s,l=!1;function u(C){const O=DA(C);O.length>1?(o=o+O.length-1,s=t.length-C.length+Ya(O),i=s-t.length===0):i=!1}function p(C){C&&C.length&&(i&&(C=S3(r)+C,i=!1),t+=C,u(C))}function h(C){C&&(l=!1),p(C)}function m(C){C&&(l=!0),p(C)}function b(){t="",r=0,i=!0,o=0,s=0,l=!1}function A(C){C!==void 0&&(t+=C,u(C),l=!1)}function I(C){C&&C.length&&h(C)}function R(C){(!i||C)&&(t+=e,o++,s=t.length,i=!0,l=!1)}function M(){return i?t.length:t.length+e.length}return b(),{write:h,rawWrite:A,writeLiteral:I,writeLine:R,increaseIndent:()=>{r++},decreaseIndent:()=>{r--},getIndent:()=>r,getTextPos:()=>t.length,getLine:()=>o,getColumn:()=>i?r*NR():t.length-s,getText:()=>t,isAtStartOfLine:()=>i,hasTrailingComment:()=>l,hasTrailingWhitespace:()=>!!t.length&&wg(t.charCodeAt(t.length-1)),clear:b,writeKeyword:h,writeOperator:h,writeParameter:h,writeProperty:h,writePunctuation:h,writeSpace:h,writeStringLiteral:h,writeSymbol:(C,O)=>h(C),writeTrailingSemicolon:h,writeComment:m,getTextPosWithWriteLine:M}}function pU(e){let t=!1;function r(){t&&(e.writeTrailingSemicolon(";"),t=!1)}return{...e,writeTrailingSemicolon(){t=!0},writeLiteral(i){r(),e.writeLiteral(i)},writeStringLiteral(i){r(),e.writeStringLiteral(i)},writeSymbol(i,o){r(),e.writeSymbol(i,o)},writePunctuation(i){r(),e.writePunctuation(i)},writeKeyword(i){r(),e.writeKeyword(i)},writeOperator(i){r(),e.writeOperator(i)},writeParameter(i){r(),e.writeParameter(i)},writeSpace(i){r(),e.writeSpace(i)},writeProperty(i){r(),e.writeProperty(i)},writeComment(i){r(),e.writeComment(i)},writeLine(){r(),e.writeLine()},increaseIndent(){r(),e.increaseIndent()},decreaseIndent(){r(),e.decreaseIndent()}}}function CR(e){return e.useCaseSensitiveFileNames?e.useCaseSensitiveFileNames():!1}function Gv(e){return Mu(CR(e))}function T3(e,t,r){return t.moduleName||fU(e,t.fileName,r&&r.fileName)}function iTe(e,t){return e.getCanonicalFileName(go(t,e.getCurrentDirectory()))}function eoe(e,t,r){const i=t.getExternalModuleFileFromDeclaration(r);if(!i||i.isDeclarationFile)return;const o=yR(r);if(!(o&&ls(o)&&!Wp(o.text)&&!iTe(e,i.path).includes(iTe(e,Bc(e.getCommonSourceDirectory())))))return T3(e,i)}function fU(e,t,r){const i=p=>e.getCanonicalFileName(p),o=ol(r?ai(r):e.getCommonSourceDirectory(),e.getCurrentDirectory(),i),s=go(t,e.getCurrentDirectory()),l=RA(o,s,o,i,!1),u=Id(l);return r?CE(u):u}function toe(e,t,r){const i=t.getCompilerOptions();let o;return i.outDir?o=Id(R3(e,t,i.outDir)):o=Id(e),o+r}function noe(e,t){return A3(e,t.getCompilerOptions(),t.getCurrentDirectory(),t.getCommonSourceDirectory(),r=>t.getCanonicalFileName(r))}function A3(e,t,r,i,o){const s=t.declarationDir||t.outDir,l=s?D3(e,s,r,i,o):e,u=I3(l);return Id(l)+u}function I3(e){return Tc(e,[".mjs",".mts"])?".d.mts":Tc(e,[".cjs",".cts"])?".d.cts":Tc(e,[".json"])?".d.json.ts":".d.ts"}function roe(e){return Tc(e,[".d.mts",".mjs",".mts"])?[".mts",".mjs"]:Tc(e,[".d.cts",".cjs",".cts"])?[".cts",".cjs"]:Tc(e,[".d.json.ts"])?[".json"]:[".tsx",".ts",".jsx",".js"]}function Ps(e){return e.outFile||e.out}function x3(e,t){var r;if(e.paths)return e.baseUrl??N.checkDefined(e.pathsBasePath||((r=t.getCurrentDirectory)==null?void 0:r.call(t)),"Encountered 'paths' without a 'baseUrl', config file, or host 'getCurrentDirectory'.")}function mU(e,t,r){const i=e.getCompilerOptions();if(Ps(i)){const o=wu(i),s=i.emitDeclarationOnly||o===2||o===4;return nr(e.getSourceFiles(),l=>(s||!sc(l))&&MS(l,e,r))}else{const o=t===void 0?e.getSourceFiles():[t];return nr(o,s=>MS(s,e,r))}}function MS(e,t,r){const i=t.getCompilerOptions();if(i.noEmitForJsFiles&&dd(e)||e.isDeclarationFile||t.isSourceFileFromExternalLibrary(e))return!1;if(r)return!0;if(t.isSourceOfProjectReferenceRedirect(e.fileName))return!1;if(!Qf(e))return!0;if(t.getResolvedProjectReferenceToRedirect(e.fileName))return!1;if(Ps(i))return!0;if(!i.outDir)return!1;if(i.rootDir||i.composite&&i.configFilePath){const o=go($P(i,()=>[],t.getCurrentDirectory(),t.getCanonicalFileName),t.getCurrentDirectory()),s=D3(e.fileName,i.outDir,t.getCurrentDirectory(),o,t.getCanonicalFileName);if(Lg(e.fileName,s,t.getCurrentDirectory(),!t.useCaseSensitiveFileNames())===0)return!1}return!0}function R3(e,t,r){return D3(e,r,t.getCurrentDirectory(),t.getCommonSourceDirectory(),i=>t.getCanonicalFileName(i))}function D3(e,t,r,i,o){let s=go(e,r);return s=o(s).indexOf(o(i))===0?s.substring(i.length):s,Qr(t,s)}function OC(e,t,r,i,o,s,l){e.writeFile(r,i,o,u=>{t.add(Hl(f.Could_not_write_file_0_Colon_1,r,u))},s,l)}function oTe(e,t,r){if(e.length>ph(e)&&!r(e)){const i=ai(e);oTe(i,t,r),t(e)}}function _U(e,t,r,i,o,s){try{i(e,t,r)}catch{oTe(ai(ga(e)),o,s),i(e,t,r)}}function WC(e,t){const r=kg(e);return iC(r,t)}function LS(e,t){return iC(e,t)}function ag(e){return An(e.members,t=>Ml(t)&&Yf(t.body))}function FC(e){if(e&&e.parameters.length>0){const t=e.parameters.length===2&&JE(e.parameters[0]);return e.parameters[t?1:0]}}function ioe(e){const t=FC(e);return t&&t.type}function qE(e){if(e.parameters.length&&!D0(e)){const t=e.parameters[0];if(JE(t))return t}}function JE(e){return KE(e.name)}function KE(e){return!!e&&e.kind===80&&hU(e)}function kS(e){return!!Gn(e,t=>t.kind===186?!0:t.kind===80||t.kind===166?!1:"quit")}function VA(e){if(!KE(e))return!1;for(;xd(e.parent)&&e.parent.left===e;)e=e.parent;return e.parent.kind===186}function hU(e){return e.escapedText==="this"}function wS(e,t){let r,i,o,s;return jy(t)?(r=t,t.kind===177?o=t:t.kind===178?s=t:N.fail("Accessor has wrong kind")):Ue(e,l=>{if(Oy(l)&&sa(l)===sa(t)){const u=PS(l.name),p=PS(t.name);u===p&&(r?i||(i=l):r=l,l.kind===177&&!o&&(o=l),l.kind===178&&!s&&(s=l))}}),{firstAccessor:r,secondAccessor:i,getAccessor:o,setAccessor:s}}function yu(e){if(!lr(e)&&Ac(e))return;const t=e.type;return t||!lr(e)?t:fC(e)?e.typeExpression&&e.typeExpression.type:p0(e)}function ooe(e){return e.type}function nm(e){return D0(e)?e.type&&e.type.typeExpression&&e.type.typeExpression.type:e.type||(lr(e)?dL(e):void 0)}function N3(e){return Pi(f0(e),t=>eGe(t)?t.typeParameters:void 0)}function eGe(e){return sm(e)&&!(e.parent.kind===327&&(e.parent.tags.some(Zf)||e.parent.tags.some(ZR)))}function aoe(e){const t=FC(e);return t&&yu(t)}function soe(e,t,r,i){loe(e,t,r.pos,i)}function loe(e,t,r,i){i&&i.length&&r!==i[0].pos&&LS(e,r)!==LS(e,i[0].pos)&&t.writeLine()}function coe(e,t,r,i){r!==i&&LS(e,r)!==LS(e,i)&&t.writeLine()}function uoe(e,t,r,i,o,s,l,u){if(i&&i.length>0){o&&r.writeSpace(" ");let p=!1;for(const h of i)p&&(r.writeSpace(" "),p=!1),u(e,t,r,h.pos,h.end,l),h.hasTrailingNewLine?r.writeLine():p=!0;p&&s&&r.writeSpace(" ")}}function doe(e,t,r,i,o,s,l){let u,p;if(l?o.pos===0&&(u=nr(Yh(e,o.pos),h)):u=Yh(e,o.pos),u){const m=[];let b;for(const A of u){if(b){const I=LS(t,b.end);if(LS(t,A.pos)>=I+2)break}m.push(A),b=A}if(m.length){const A=LS(t,Ya(m).end);LS(t,ka(e,o.pos))>=A+2&&(soe(t,r,o,u),uoe(e,t,r,m,!1,!0,s,i),p={nodePos:o.pos,detachedCommentEndPos:Ya(m).end})}}return p;function h(m){return j4(e,m.pos)}}function PR(e,t,r,i,o,s){if(e.charCodeAt(i+1)===42){const l=Kx(t,i),u=t.length;let p;for(let h=i,m=l.line;h<o;m++){const b=m+1===u?e.length+1:t[m+1];if(h!==i){p===void 0&&(p=aTe(e,t[l.line],i));const I=r.getIndent()*NR()-p+aTe(e,h,b);if(I>0){let R=I%NR();const M=S3((I-R)/NR());for(r.rawWrite(M);R;)r.rawWrite(" "),R--}else r.rawWrite("")}tGe(e,o,r,s,h,b),h=b}}else r.writeComment(e.substring(i,o))}function tGe(e,t,r,i,o,s){const l=Math.min(t,s-1),u=e.substring(o,l).trim();u?(r.writeComment(u),l!==t&&r.writeLine()):r.rawWrite(i)}function aTe(e,t,r){let i=0;for(;t<r&&A_(e.charCodeAt(t));t++)e.charCodeAt(t)===9?i+=NR()-i%NR():i++;return i}function C3(e){return pd(e)!==0}function poe(e){return Uy(e)!==0}function gp(e,t){return!!jA(e,t)}function Zr(e,t){return!!foe(e,t)}function sa(e){return $c(e)&&mc(e)||Rl(e)}function mc(e){return Zr(e,256)}function P3(e){return gp(e,16)}function XE(e){return Zr(e,64)}function gU(e){return Zr(e,128)}function P_(e){return Zr(e,512)}function zC(e){return gp(e,8)}function If(e){return Zr(e,32768)}function jA(e,t){return pd(e)&t}function foe(e,t){return Uy(e)&t}function moe(e,t,r){return e.kind>=0&&e.kind<=165?0:(e.modifierFlagsCache&536870912||(e.modifierFlagsCache=vU(e)|536870912),r||t&&lr(e)?(!(e.modifierFlagsCache&268435456)&&e.parent&&(e.modifierFlagsCache|=sTe(e)|268435456),lTe(e.modifierFlagsCache)):nGe(e.modifierFlagsCache))}function pd(e){return moe(e,!0)}function _oe(e){return moe(e,!0,!0)}function Uy(e){return moe(e,!1)}function sTe(e){let t=0;return e.parent&&!Ao(e)&&(lr(e)&&(Nre(e)&&(t|=8388608),Cre(e)&&(t|=16777216),Pre(e)&&(t|=33554432),Mre(e)&&(t|=67108864),Lre(e)&&(t|=134217728)),kre(e)&&(t|=65536)),t}function nGe(e){return e&65535}function lTe(e){return e&131071|(e&260046848)>>>23}function rGe(e){return lTe(sTe(e))}function hoe(e){return vU(e)|rGe(e)}function vU(e){let t=Cm(e)?M_(e.modifiers):0;return(e.flags&8||e.kind===80&&e.flags&4096)&&(t|=32),t}function M_(e){let t=0;if(e)for(const r of e)t|=UA(r.kind);return t}function UA(e){switch(e){case 126:return 256;case 125:return 1;case 124:return 4;case 123:return 2;case 128:return 64;case 129:return 512;case 95:return 32;case 138:return 128;case 87:return 4096;case 90:return 2048;case 134:return 1024;case 148:return 8;case 164:return 16;case 103:return 8192;case 147:return 16384;case 170:return 32768}return 0}function cTe(e){return e===57||e===56}function goe(e){return cTe(e)||e===54}function BC(e){return e===76||e===77||e===78}function yU(e){return mr(e)&&BC(e.operatorToken.kind)}function fk(e){return cTe(e)||e===61}function mk(e){return mr(e)&&fk(e.operatorToken.kind)}function Vv(e){return e>=64&&e<=79}function bU(e){const t=EU(e);return t&&!t.isImplements?t.class:void 0}function EU(e){if(Kv(e)){if(of(e.parent)&&ui(e.parent.parent))return{class:e.parent.parent,isImplements:e.parent.token===119};if(vI(e.parent)){const t=y0(e.parent);if(t&&ui(t))return{class:t,isImplements:!1}}}}function Lc(e,t){return mr(e)&&(t?e.operatorToken.kind===64:Vv(e.operatorToken.kind))&&ep(e.left)}function uTe(e){return Lc(e.parent)&&e.parent.left===e}function jv(e){if(Lc(e,!0)){const t=e.left.kind;return t===210||t===209}return!1}function M3(e){return bU(e)!==void 0}function Gl(e){return e.kind===80||_k(e)}function Vp(e){switch(e.kind){case 80:return e;case 166:do e=e.left;while(e.kind!==80);return e;case 211:do e=e.expression;while(e.kind!==80);return e}}function GC(e){return e.kind===80||e.kind===110||e.kind===108||e.kind===236||e.kind===211&&GC(e.expression)||e.kind===217&&GC(e.expression)}function _k(e){return Fr(e)&&Ve(e.name)&&Gl(e.expression)}function hk(e){if(Fr(e)){const t=hk(e.expression);if(t!==void 0)return t+"."+_p(e.name)}else if(Qs(e)){const t=hk(e.expression);if(t!==void 0&&oc(e.argumentExpression))return t+"."+PS(e.argumentExpression)}else{if(Ve(e))return Vi(e.escapedText);if(t_(e))return lP(e)}}function Hy(e){return VE(e)&&zg(e)==="prototype"}function VC(e){return e.parent.kind===166&&e.parent.right===e||e.parent.kind===211&&e.parent.name===e||e.parent.kind===236&&e.parent.name===e}function SU(e){return!!e.parent&&(Fr(e.parent)&&e.parent.name===e||Qs(e.parent)&&e.parent.argumentExpression===e)}function voe(e){return xd(e.parent)&&e.parent.right===e||Fr(e.parent)&&e.parent.name===e||R0(e.parent)&&e.parent.right===e}function L3(e){return mr(e)&&e.operatorToken.kind===104}function yoe(e){return L3(e.parent)&&e===e.parent.right}function TU(e){return e.kind===210&&e.properties.length===0}function boe(e){return e.kind===209&&e.elements.length===0}function MR(e){if(!(!iGe(e)||!e.declarations)){for(const t of e.declarations)if(t.localSymbol)return t.localSymbol}}function iGe(e){return e&&Me(e.declarations)>0&&Zr(e.declarations[0],2048)}function k3(e){return An(BTe,t=>Il(e,t))}function oGe(e){const t=[],r=e.length;for(let i=0;i<r;i++){const o=e.charCodeAt(i);o<128?t.push(o):o<2048?(t.push(o>>6|192),t.push(o&63|128)):o<65536?(t.push(o>>12|224),t.push(o>>6&63|128),t.push(o&63|128)):o<131072?(t.push(o>>18|240),t.push(o>>12&63|128),t.push(o>>6&63|128),t.push(o&63|128)):N.assert(!1,"Unexpected code point")}return t}function Eoe(e){let t="";const r=oGe(e);let i=0;const o=r.length;let s,l,u,p;for(;i<o;)s=r[i]>>2,l=(r[i]&3)<<4|r[i+1]>>4,u=(r[i+1]&15)<<2|r[i+2]>>6,p=r[i+2]&63,i+1>=o?u=p=64:i+2>=o&&(p=64),t+=WS.charAt(s)+WS.charAt(l)+WS.charAt(u)+WS.charAt(p),i+=3;return t}function aGe(e){let t="",r=0;const i=e.length;for(;r<i;){const o=e[r];if(o<128)t+=String.fromCharCode(o),r++;else if((o&192)===192){let s=o&63;r++;let l=e[r];for(;(l&192)===128;)s=s<<6|l&63,r++,l=e[r];t+=String.fromCharCode(s)}else t+=String.fromCharCode(o),r++}return t}function Soe(e,t){return e&&e.base64encode?e.base64encode(t):Eoe(t)}function Toe(e,t){if(e&&e.base64decode)return e.base64decode(t);const r=t.length,i=[];let o=0;for(;o<r&&t.charCodeAt(o)!==WS.charCodeAt(64);){const s=WS.indexOf(t[o]),l=WS.indexOf(t[o+1]),u=WS.indexOf(t[o+2]),p=WS.indexOf(t[o+3]),h=(s&63)<<2|l>>4&3,m=(l&15)<<4|u>>2&15,b=(u&3)<<6|p&63;m===0&&u!==0?i.push(h):b===0&&p!==0?i.push(h,m):i.push(h,m,b),o+=4}return aGe(i)}function AU(e,t){const r=Po(t)?t:t.readFile(e);if(!r)return;const i=fq(e,r);return i.error?void 0:i.config}function jC(e,t){return AU(e,t)||{}}function w3(e){try{return JSON.parse(e)}catch{return}}function $m(e,t){return!t.directoryExists||t.directoryExists(e)}function Uv(e){switch(e.newLine){case 0:return OTe;case 1:case void 0:return WTe}}function xf(e,t=e){return N.assert(t>=e||t===-1),{pos:e,end:t}}function O3(e,t){return xf(e.pos,t)}function E0(e,t){return xf(t,e.end)}function Gg(e){const t=Cm(e)?Oo(e.modifiers,Eu):void 0;return t&&!Zm(t.end)?E0(e,t.end):e}function L_(e){if(Jo(e)||ql(e))return E0(e,e.name.pos);const t=Cm(e)?tl(e.modifiers):void 0;return t&&!Zm(t.end)?E0(e,t.end):Gg(e)}function dTe(e){return e.pos===e.end}function IU(e,t){return xf(e,e+fa(t).length)}function OS(e,t){return Ioe(e,e,t)}function W3(e,t,r){return Rf(UC(e,r,!1),UC(t,r,!1),r)}function Aoe(e,t,r){return Rf(e.end,t.end,r)}function Ioe(e,t,r){return Rf(UC(e,r,!1),t.end,r)}function gk(e,t,r){return Rf(e.end,UC(t,r,!1),r)}function xU(e,t,r,i){const o=UC(t,r,i);return oC(r,e.end,o)}function pTe(e,t,r){return oC(r,e.end,t.end)}function xoe(e,t){return!Rf(e.pos,e.end,t)}function Rf(e,t,r){return oC(r,e,t)===0}function UC(e,t,r){return Zm(e.pos)?-1:ka(t.text,e.pos,!1,r)}function Roe(e,t,r,i){const o=ka(r.text,e,!1,i),s=sGe(o,t,r);return oC(r,s??t,o)}function Doe(e,t,r,i){const o=ka(r.text,e,!1,i);return oC(r,e,Math.min(t,o))}function sGe(e,t=0,r){for(;e-- >t;)if(!wg(r.text.charCodeAt(e)))return e}function RU(e){const t=Do(e);if(t)switch(t.parent.kind){case 266:case 267:return t===t.parent.name}return!1}function HC(e){return nr(e.declarations,vk)}function vk(e){return wi(e)&&e.initializer!==void 0}function fTe(e){return e.watch&&xs(e,"watch")}function Qm(e){e.close()}function xl(e){return e.flags&33554432?e.links.checkFlags:0}function Df(e,t=!1){if(e.valueDeclaration){const r=t&&e.declarations&&An(e.declarations,bp)||e.flags&32768&&An(e.declarations,rf)||e.valueDeclaration,i=c0(r);return e.parent&&e.parent.flags&32?i:i&-8}if(xl(e)&6){const r=e.links.checkFlags,i=r&1024?2:r&256?1:4,o=r&2048?256:0;return i|o}return e.flags&4194304?257:0}function bu(e,t){return e.flags&2097152?t.getAliasedSymbol(e):e}function LR(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags}function F3(e){return qC(e)===1}function HA(e){return qC(e)!==0}function qC(e){const{parent:t}=e;switch(t==null?void 0:t.kind){case 217:return qC(t);case 225:case 224:const{operator:r}=t;return r===46||r===47?2:0;case 226:const{left:i,operatorToken:o}=t;return i===e&&Vv(o.kind)?o.kind===64?1:2:0;case 211:return t.name!==e?0:qC(t);case 303:{const s=qC(t.parent);return e===t.name?lGe(s):s}case 304:return e===t.objectAssignmentInitializer?0:qC(t.parent);case 209:return qC(t);default:return 0}}function lGe(e){switch(e){case 0:return 1;case 1:return 0;case 2:return 2;default:return N.assertNever(e)}}function DU(e,t){if(!e||!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(const r in e)if(typeof e[r]=="object"){if(!DU(e[r],t[r]))return!1}else if(typeof e[r]!="function"&&e[r]!==t[r])return!1;return!0}function tp(e,t){e.forEach(t),e.clear()}function sg(e,t,r){const{onDeleteValue:i,onExistingValue:o}=r;e.forEach((s,l)=>{var u;t!=null&&t.has(l)?o&&o(s,(u=t.get)==null?void 0:u.call(t,l),l):(e.delete(l),i(s,l))})}function JC(e,t,r){sg(e,t,r);const{createNewValue:i}=r;t==null||t.forEach((o,s)=>{e.has(s)||e.set(s,i(s,o))})}function Noe(e){if(e.flags&32){const t=Vg(e);return!!t&&Zr(t,64)}return!1}function Vg(e){var t;return(t=e.declarations)==null?void 0:t.find(ui)}function Wr(e){return e.flags&3899393?e.objectFlags:0}function mTe(e,t){return!!Sm(e,r=>t(r)?!0:void 0)}function z3(e){return!!e&&!!e.declarations&&!!e.declarations[0]&&Zk(e.declarations[0])}function Coe({moduleSpecifier:e}){return Ma(e)?e.text:fc(e)}function NU(e){let t;return Ho(e,r=>{Yf(r)&&(t=r)},r=>{for(let i=r.length-1;i>=0;i--)if(Yf(r[i])){t=r[i];break}}),t}function Rm(e,t,r=!0){return e.has(t)?!1:(e.set(t,r),!0)}function qA(e){return ui(e)||hd(e)||Ep(e)}function CU(e){return e>=182&&e<=205||e===133||e===159||e===150||e===163||e===151||e===136||e===154||e===155||e===116||e===157||e===146||e===141||e===233||e===319||e===320||e===321||e===322||e===323||e===324||e===325}function ws(e){return e.kind===211||e.kind===212}function PU(e){return e.kind===211?e.name:(N.assert(e.kind===212),e.argumentExpression)}function Poe(e){switch(e.kind){case"text":case"internal":return!0;default:return!1}}function B3(e){return e.kind===275||e.kind===279}function kR(e){for(;ws(e);)e=e.expression;return e}function Moe(e,t){if(ws(e.parent)&&SU(e))return r(e.parent);function r(i){if(i.kind===211){const o=t(i.name);if(o!==void 0)return o}else if(i.kind===212)if(Ve(i.argumentExpression)||ls(i.argumentExpression)){const o=t(i.argumentExpression);if(o!==void 0)return o}else return;if(ws(i.expression))return r(i.expression);if(Ve(i.expression))return t(i.expression)}}function wR(e,t){for(;;){switch(e.kind){case 225:e=e.operand;continue;case 226:e=e.left;continue;case 227:e=e.condition;continue;case 215:e=e.tag;continue;case 213:if(t)return e;case 234:case 212:case 211:case 235:case 360:case 238:e=e.expression;continue}return e}}function cGe(e,t){this.flags=e,this.escapedName=t,this.declarations=void 0,this.valueDeclaration=void 0,this.id=0,this.mergeId=0,this.parent=void 0,this.members=void 0,this.exports=void 0,this.exportSymbol=void 0,this.constEnumOnlyModule=void 0,this.isReferenced=void 0,this.lastAssignmentPos=void 0,this.links=void 0}function uGe(e,t){this.flags=t,(N.isDebugging||sr)&&(this.checker=e)}function dGe(e,t){this.flags=t,N.isDebugging&&(this.checker=e)}function Loe(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function pGe(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.emitNode=void 0}function fGe(e,t,r){this.pos=t,this.end=r,this.kind=e,this.id=0,this.flags=0,this.transformFlags=0,this.parent=void 0,this.original=void 0,this.emitNode=void 0}function mGe(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r||(i=>i)}function koe(e){uae.push(e),e(lu)}function woe(e){Object.assign(lu,e),Ue(uae,t=>t(lu))}function lg(e,t){return e.replace(/{(\d+)}/g,(r,i)=>""+N.checkDefined(t[+i]))}function Ooe(e){fW=e}function Woe(e){!fW&&e&&(fW=e())}function Wo(e){return fW&&fW[e.key]||e.message}function OR(e,t,r,i,o,...s){r+i>t.length&&(i=t.length-r),Sie(t,r,i);let l=Wo(o);return bt(s)&&(l=lg(l,s)),{file:void 0,start:r,length:i,messageText:l,category:o.category,code:o.code,reportsUnnecessary:o.reportsUnnecessary,fileName:e}}function _Ge(e){return e.file===void 0&&e.start!==void 0&&e.length!==void 0&&typeof e.fileName=="string"}function _Te(e,t){const r=t.fileName||"",i=t.text.length;N.assertEqual(e.fileName,r),N.assertLessThanOrEqual(e.start,i),N.assertLessThanOrEqual(e.start+e.length,i);const o={file:t,start:e.start,length:e.length,messageText:e.messageText,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary};if(e.relatedInformation){o.relatedInformation=[];for(const s of e.relatedInformation)_Ge(s)&&s.fileName===r?(N.assertLessThanOrEqual(s.start,i),N.assertLessThanOrEqual(s.start+s.length,i),o.relatedInformation.push(_Te(s,t))):o.relatedInformation.push(s)}return o}function JA(e,t){const r=[];for(const i of e)r.push(_Te(i,t));return r}function Qc(e,t,r,i,...o){Sie(e.text,t,r);let s=Wo(i);return bt(o)&&(s=lg(s,o)),{file:e,start:t,length:r,messageText:s,category:i.category,code:i.code,reportsUnnecessary:i.reportsUnnecessary,reportsDeprecated:i.reportsDeprecated}}function MU(e,...t){let r=Wo(e);return bt(t)&&(r=lg(r,t)),r}function Hl(e,...t){let r=Wo(e);return bt(t)&&(r=lg(r,t)),{file:void 0,start:void 0,length:void 0,messageText:r,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated}}function G3(e,t){return{file:void 0,start:void 0,length:void 0,code:e.code,category:e.category,messageText:e.next?e:e.messageText,relatedInformation:t}}function jo(e,t,...r){let i=Wo(t);return bt(r)&&(i=lg(i,r)),{messageText:i,category:t.category,code:t.code,next:e===void 0||Array.isArray(e)?e:[e]}}function Foe(e,t){let r=e;for(;r.next;)r=r.next[0];r.next=[t]}function hTe(e){return e.file?e.file.path:void 0}function KC(e,t){return V3(e,t)||hGe(e,t)||0}function V3(e,t){return Uu(hTe(e),hTe(t))||rl(e.start,t.start)||rl(e.length,t.length)||rl(e.code,t.code)||gTe(e.messageText,t.messageText)||0}function hGe(e,t){return!e.relatedInformation&&!t.relatedInformation?0:e.relatedInformation&&t.relatedInformation?rl(e.relatedInformation.length,t.relatedInformation.length)||Ue(e.relatedInformation,(r,i)=>{const o=t.relatedInformation[i];return KC(r,o)})||0:e.relatedInformation?-1:1}function gTe(e,t){if(typeof e=="string"&&typeof t=="string")return Uu(e,t);if(typeof e=="string")return-1;if(typeof t=="string")return 1;let r=Uu(e.messageText,t.messageText);if(r)return r;if(!e.next&&!t.next)return 0;if(!e.next)return-1;if(!t.next)return 1;const i=Math.min(e.next.length,t.next.length);for(let o=0;o<i;o++)if(r=gTe(e.next[o],t.next[o]),r)return r;return e.next.length<t.next.length?-1:e.next.length>t.next.length?1:0}function yk(e){return e===4||e===2||e===1||e===6?1:0}function vTe(e){if(e.transformFlags&2)return ud(e)||s1(e)?e:Ho(e,vTe)}function gGe(e){return e.isDeclarationFile?void 0:vTe(e)}function vGe(e){return(e.impliedNodeFormat===99||Tc(e.fileName,[".cjs",".cts",".mjs",".mts"]))&&!e.isDeclarationFile?!0:void 0}function bk(e){switch(nH(e)){case 3:return o=>{o.externalModuleIndicator=uw(o)||!o.isDeclarationFile||void 0};case 1:return o=>{o.externalModuleIndicator=uw(o)};case 2:const t=[uw];(e.jsx===4||e.jsx===5)&&t.push(gGe),t.push(vGe);const r=Ym(...t);return o=>void(o.externalModuleIndicator=r(o))}}function Xbt(e){return e}function j3(e){return e>=5&&e<=99}function U3(e){switch(wu(e)){case 0:case 4:case 3:return!1}return!0}function LU(e){return e.verbatimModuleSyntax||e.isolatedModules&&e.preserveValueImports}function zoe(e){return e.allowUnreachableCode===!1}function Boe(e){return e.allowUnusedLabels===!1}function KA(e){return e>=3&&e<=99||e===100}function fd(e,t){return e[t]===void 0?!!e.strict:!!e[t]}function Goe(e){return e.useDefineForClassFields!==!1&&os(e)>=9}function Voe(e,t){return oR(t,e,Sq)}function joe(e,t){return oR(t,e,Tq)}function Uoe(e,t){return oR(t,e,Aq)}function H3(e,t){return t.strictFlag?fd(e,t.name):t.allowJsFlag?Xy(e):e[t.name]}function q3(e){const t=e.jsx;return t===2||t===4||t===5}function J3(e,t){const r=t==null?void 0:t.pragmas.get("jsximportsource"),i=To(r)?r[r.length-1]:r;return e.jsx===4||e.jsx===5||e.jsxImportSource||i?(i==null?void 0:i.arguments.factory)||e.jsxImportSource||"react":void 0}function K3(e,t){return e?`${e}/${t.jsx===5?"jsx-dev-runtime":"jsx-runtime"}`:void 0}function kU(e){let t=!1;for(let r=0;r<e.length;r++)if(e.charCodeAt(r)===42)if(!t)t=!0;else return!1;return!0}function wU(e,t){let r,i,o,s=!1;return{getSymlinkedFiles:()=>o,getSymlinkedDirectories:()=>r,getSymlinkedDirectoriesByRealpath:()=>i,setSymlinkedFile:(u,p)=>(o||(o=new Map)).set(u,p),setSymlinkedDirectory:(u,p)=>{let h=ol(u,e,t);rP(h)||(h=Bc(h),p!==!1&&!(r!=null&&r.has(h))&&(i||(i=Zp())).add(p.realPath,u),(r||(r=new Map)).set(h,p))},setSymlinksFromResolutions(u,p,h){N.assert(!s),s=!0,u(m=>l(this,m.resolvedModule)),p(m=>l(this,m.resolvedTypeReferenceDirective)),h.forEach(m=>l(this,m.resolvedTypeReferenceDirective))},hasProcessedResolutions:()=>s};function l(u,p){if(!p||!p.originalPath||!p.resolvedFileName)return;const{resolvedFileName:h,originalPath:m}=p;u.setSymlinkedFile(ol(m,e,t),h);const[b,A]=yGe(h,m,e,t)||et;b&&A&&u.setSymlinkedDirectory(A,{real:Bc(b),realPath:Bc(ol(b,e,t))})}}function yGe(e,t,r,i){const o=zc(go(e,r)),s=zc(go(t,r));let l=!1;for(;o.length>=2&&s.length>=2&&!yTe(o[o.length-2],i)&&!yTe(s[s.length-2],i)&&i(o[o.length-1])===i(s[s.length-1]);)o.pop(),s.pop(),l=!0;return l?[Cy(o),Cy(s)]:void 0}function yTe(e,t){return e!==void 0&&(t(e)==="node_modules"||uo(e,"@"))}function bGe(e){return wV(e.charCodeAt(0))?e.slice(1):void 0}function OU(e,t,r){const i=TG(e,t,r);return i===void 0?void 0:bGe(i)}function bTe(e){return e.replace(rH,EGe)}function EGe(e){return"\\"+e}function XC(e,t,r){const i=X3(e,t,r);return!i||!i.length?void 0:`^(${i.map(l=>`(${l})`).join("|")})${r==="exclude"?"($|/)":"$"}`}function X3(e,t,r){if(!(e===void 0||e.length===0))return Pi(e,i=>i&&Y3(i,t,r,aH[r]))}function WU(e){return!/[.*?]/.test(e)}function Hoe(e,t,r){const i=e&&Y3(e,t,r,aH[r]);return i&&`^(${i})${r==="exclude"?"($|/)":"$"}`}function Y3(e,t,r,{singleAsteriskRegexFragment:i,doubleAsteriskRegexFragment:o,replaceWildcardCharacter:s}=aH[r]){let l="",u=!1;const p=YM(e,t),h=Ya(p);if(r!=="exclude"&&h==="**")return;p[0]=o0(p[0]),WU(h)&&p.push("**","*");let m=0;for(let b of p){if(b==="**")l+=o;else if(r==="directories"&&(l+="(",m++),u&&(l+=al),r!=="exclude"){let A="";b.charCodeAt(0)===42?(A+="([^./]"+i+")?",b=b.substr(1)):b.charCodeAt(0)===63&&(A+="[^./]",b=b.substr(1)),A+=b.replace(rH,s),A!==b&&(l+=oH),l+=A}else l+=b.replace(rH,s);u=!0}for(;m>0;)l+=")?",m--;return l}function qoe(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function $3(e,t,r,i,o){e=ga(e),o=ga(o);const s=Qr(o,e);return{includeFilePatterns:wt(X3(r,s,"files"),l=>`^${l}$`),includeFilePattern:XC(r,s,"files"),includeDirectoryPattern:XC(r,s,"directories"),excludePattern:XC(t,s,"exclude"),basePaths:SGe(e,r,i)}}function qy(e,t){return new RegExp(e,t?"":"i")}function FU(e,t,r,i,o,s,l,u,p){e=ga(e),s=ga(s);const h=$3(e,r,i,o,s),m=h.includeFilePatterns&&h.includeFilePatterns.map(O=>qy(O,o)),b=h.includeDirectoryPattern&&qy(h.includeDirectoryPattern,o),A=h.excludePattern&&qy(h.excludePattern,o),I=m?m.map(()=>[]):[[]],R=new Map,M=Mu(o);for(const O of h.basePaths)C(O,Qr(s,O),l);return ia(I);function C(O,U,K){const Z=M(p(U));if(R.has(Z))return;R.set(Z,!0);const{files:V,directories:se}=u(O);for(const G of uS(V,Uu)){const ne=Qr(O,G),he=Qr(U,G);if(!(t&&!Tc(ne,t))&&!(A&&A.test(he)))if(!m)I[0].push(ne);else{const ye=Gr(m,$=>$.test(he));ye!==-1&&I[ye].push(ne)}}if(!(K!==void 0&&(K--,K===0)))for(const G of uS(se,Uu)){const ne=Qr(O,G),he=Qr(U,G);(!b||b.test(he))&&(!A||!A.test(he))&&C(ne,he,K)}}}function SGe(e,t,r){const i=[e];if(t){const o=[];for(const s of t){const l=fp(s)?s:ga(Qr(e,s));o.push(TGe(l))}o.sort(zx(!r));for(const s of o)Zn(i,l=>!bm(l,s,e,!r))&&i.push(s)}return i}function TGe(e){const t=Sc(e,FTe);return t<0?xA(e)?o0(ai(e)):e:e.substring(0,e.lastIndexOf(al,t))}function Q3(e,t){return t||Z3(e)||3}function Z3(e){switch(e.substr(e.lastIndexOf(".")).toLowerCase()){case".js":case".cjs":case".mjs":return 1;case".jsx":return 2;case".ts":case".cts":case".mts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}function YC(e,t){const r=e&&Xy(e);if(!t||t.length===0)return r?hW:GR;const i=r?hW:GR,o=ia(i);return[...i,...Hi(t,l=>l.scriptKind===7||r&&AGe(l.scriptKind)&&!o.includes(l.extension)?[l.extension]:void 0)]}function Ek(e,t){return!e||!A0(e)?t:t===hW?GTe:t===GR?zTe:[...t,[".json"]]}function AGe(e){return e===1||e===2}function YE(e){return bt(VR,t=>Il(e,t))}function XA(e){return bt(sH,t=>Il(e,t))}function Joe({imports:e},t=Ym(YE,XA)){return Ut(e,({text:r})=>Wp(r)&&!Tc(r,kk)?t(r):void 0)||!1}function Koe(e,t,r,i){const o=md(r),s=3<=o&&o<=99;if(e==="js"||t===99&&s)return fD(r)&&l()!==2?3:2;if(e==="minimal")return 0;if(e==="index")return 1;if(!fD(r))return Joe(i)?2:0;return l();function l(){let u=!1;const p=i.imports.length?i.imports:dd(i)?IGe(i).map(h=>h.arguments[0]):et;for(const h of p)if(Wp(h.text)){if(s&&t===1&&FJ(i,h,r)===99||Tc(h.text,kk))continue;if(XA(h.text))return 3;YE(h.text)&&(u=!0)}return u?2:0}}function IGe(e){let t=0,r;for(const i of e.statements){if(t>3)break;Vj(i)?r=So(r,i.declarationList.declarations.map(o=>o.initializer)):eu(i)&&Ad(i.expression,!0)?r=xn(r,i.expression):t++}return r||et}function Xoe(e,t,r){if(!e)return!1;const i=YC(t,r);for(const o of ia(Ek(t,i)))if(Il(e,o))return!0;return!1}function ETe(e){const t=e.match(/\//g);return t?t.length:0}function Sk(e,t){return rl(ETe(e),ETe(t))}function Id(e){for(const t of uH){const r=Yoe(e,t);if(r!==void 0)return r}return e}function Yoe(e,t){return Il(e,t)?Tk(e,t):void 0}function Tk(e,t){return e.substring(0,e.length-t.length)}function S0(e,t){return $M(e,t,uH,!1)}function WR(e){const t=e.indexOf("*");return t===-1?e:e.indexOf("*",t+1)!==-1?void 0:{prefix:e.substr(0,t),suffix:e.substr(t+1)}}function eW(e){return Hi(Xh(e),t=>WR(t))}function Zm(e){return!(e>=0)}function tW(e){return e===".ts"||e===".tsx"||e===".d.ts"||e===".cts"||e===".mts"||e===".d.mts"||e===".d.cts"||uo(e,".d.")&&Al(e,".ts")}function $C(e){return tW(e)||e===".json"}function QC(e){const t=jg(e);return t!==void 0?t:N.fail(`File ${e} has unknown extension.`)}function STe(e){return jg(e)!==void 0}function jg(e){return An(uH,t=>Il(e,t))}function Ak(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs}function zU(e,t){const r=[];for(const i of e){if(i===t)return t;Po(i)||r.push(i)}return SG(r,i=>i,t)}function BU(e,t){const r=e.indexOf(t);return N.assert(r!==-1),e.slice(r)}function wa(e,...t){return t.length&&(e.relatedInformation||(e.relatedInformation=[]),N.assert(e.relatedInformation!==et,"Diagnostic had empty array singleton for related info, but is still being constructed!"),e.relatedInformation.push(...t)),e}function $oe(e,t){N.assert(e.length!==0);let r=t(e[0]),i=r;for(let o=1;o<e.length;o++){const s=t(e[o]);s<r?r=s:s>i&&(i=s)}return{min:r,max:i}}function GU(e){return{pos:_0(e),end:e.end}}function VU(e,t){const r=t.pos-1,i=Math.min(e.text.length,ka(e.text,t.end)+1);return{pos:r,end:i}}function ZC(e,t,r){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib||r.isSourceOfProjectReferenceRedirect(e.fileName)}function nW(e,t){return e===t||typeof e=="object"&&e!==null&&typeof t=="object"&&t!==null&&Dne(e,t,nW)}function eP(e){let t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:const h=e.length-1;let m=0;for(;e.charCodeAt(m)===48;)m++;return e.slice(m,h)||"0"}const r=2,i=e.length-1,o=(i-r)*t,s=new Uint16Array((o>>>4)+(o&15?1:0));for(let h=i-1,m=0;h>=r;h--,m+=t){const b=m>>>4,A=e.charCodeAt(h),R=(A<=57?A-48:10+A-(A<=70?65:97))<<(m&15);s[b]|=R;const M=R>>>16;M&&(s[b+1]|=M)}let l="",u=s.length-1,p=!0;for(;p;){let h=0;p=!1;for(let m=u;m>=0;m--){const b=h<<16|s[m],A=b/10|0;s[m]=A,h=b-A*10,A&&!p&&(u=m,p=!0)}l=h+l}return l}function $E({negative:e,base10Value:t}){return(e&&t!=="0"?"-":"")+t}function Qoe(e){if(rW(e,!1))return jU(e)}function jU(e){const t=e.startsWith("-"),r=eP(`${t?e.slice(1):e}n`);return{negative:t,base10Value:r}}function rW(e,t){if(e==="")return!1;const r=wv(99,!1);let i=!0;r.setOnError(()=>i=!1),r.setText(e+"n");let o=r.scan();const s=o===41;s&&(o=r.scan());const l=r.getTokenFlags();return i&&o===10&&r.getTokenEnd()===e.length+1&&!(l&512)&&(!t||e===$E({negative:s,base10Value:eP(r.getTokenValue())}))}function T0(e){return!!(e.flags&33554432)||l3(e)||DGe(e)||RGe(e)||!(ng(e)||xGe(e))}function xGe(e){return Ve(e)&&rp(e.parent)&&e.parent.name===e}function RGe(e){for(;e.kind===80||e.kind===211;)e=e.parent;if(e.kind!==167)return!1;if(Zr(e.parent,64))return!0;const t=e.parent.parent.kind;return t===264||t===187}function DGe(e){if(e.kind!==80)return!1;const t=Gn(e.parent,r=>{switch(r.kind){case 298:return!0;case 211:case 233:return!1;default:return"quit"}});return(t==null?void 0:t.token)===119||(t==null?void 0:t.parent.kind)===264}function Zoe(e){return Cf(e)&&Ve(e.typeName)}function eae(e,t=Mv){if(e.length<2)return!0;const r=e[0];for(let i=1,o=e.length;i<o;i++){const s=e[i];if(!t(r,s))return!1}return!0}function tP(e,t){return e.pos=t,e}function FR(e,t){return e.end=t,e}function vh(e,t,r){return FR(tP(e,t),r)}function nP(e,t,r){return vh(e,t,t+r)}function tae(e,t){return e&&(e.flags=t),e}function qa(e,t){return e&&t&&(e.parent=t),e}function zR(e,t){if(e)for(const r of e)qa(r,t);return e}function Jy(e,t){if(!e)return e;return CP(e,rR(e)?r:o),e;function r(s,l){if(t&&s.parent===l)return"skip";qa(s,l)}function i(s){if(Fp(s))for(const l of s.jsDoc)r(l,s),CP(l,r)}function o(s,l){return r(s,l)||i(s)}}function NGe(e){return!jc(e)}function UU(e){return _d(e)&&Zn(e.elements,NGe)}function nae(e){for(N.assertIsDefined(e.parent);;){const t=e.parent;if(Gd(t)){e=t;continue}if(eu(t)||pI(t)||HS(t)&&(t.initializer===e||t.incrementor===e))return!0;if(yP(t)){if(e!==Ya(t.elements))return!0;e=t;continue}if(mr(t)&&t.operatorToken.kind===28){if(e===t.left)return!0;e=t;continue}return!1}}function rP(e){return bt(XM,t=>e.includes(t))}function rae(e){if(!e.parent)return;switch(e.kind){case 168:const{parent:r}=e;return r.kind===195?void 0:r.typeParameters;case 169:return e.parent.parameters;case 204:return e.parent.templateSpans;case 239:return e.parent.templateSpans;case 170:{const{parent:i}=e;return QS(i)?i.modifiers:void 0}case 298:return e.parent.heritageClauses}const{parent:t}=e;if(iR(e))return XS(e.parent)?void 0:e.parent.tags;switch(t.kind){case 187:case 264:return yS(e)?t.members:void 0;case 192:case 193:return t.types;case 189:case 209:case 361:case 275:case 279:return t.elements;case 210:case 292:return t.properties;case 213:case 214:return ji(e)?t.typeArguments:t.expression===e?void 0:t.arguments;case 284:case 288:return AL(e)?t.children:void 0;case 286:case 285:return ji(e)?t.typeArguments:void 0;case 241:case 296:case 297:case 268:return t.statements;case 269:return t.clauses;case 263:case 231:return $c(e)?t.members:void 0;case 266:return u1(e)?t.members:void 0;case 312:return t.statements}}function iW(e){if(!e.typeParameters){if(bt(e.parameters,t=>!yu(t)))return!0;if(e.kind!==219){const t=Xc(e.parameters);if(!(t&&JE(t)))return!0}}return!1}function iP(e){return e==="Infinity"||e==="-Infinity"||e==="NaN"}function iae(e){return e.kind===260&&e.parent.kind===299}function QE(e){return e.kind===218||e.kind===219}function ZE(e){return e.replace(/\$/gm,()=>"\\$")}function cg(e){return(+e).toString()===e}function oW(e,t,r,i,o){const s=o&&e==="new";return!s&&tf(e,t)?w.createIdentifier(e):!i&&!s&&cg(e)&&+e>=0?w.createNumericLiteral(+e):w.createStringLiteral(e,!!r)}function oP(e){return!!(e.flags&262144&&e.isThisType)}function aW(e){let t=0,r=0,i=0,o=0,s;(h=>{h[h.BeforeNodeModules=0]="BeforeNodeModules",h[h.NodeModules=1]="NodeModules",h[h.Scope=2]="Scope",h[h.PackageContent=3]="PackageContent"})(s||(s={}));let l=0,u=0,p=0;for(;u>=0;)switch(l=u,u=e.indexOf("/",l+1),p){case 0:e.indexOf(xh,l)===l&&(t=l,r=u,p=1);break;case 1:case 2:p===1&&e.charAt(l+1)==="@"?p=2:(i=u,p=3);break;case 3:e.indexOf(xh,l)===l?p=1:p=3;break}return o=l,p>1?{topLevelNodeModulesIndex:t,topLevelPackageNameIndex:r,packageRootIndex:i,fileNameIndex:o}:void 0}function TTe(e){var t;return e.kind===348?(t=e.typeExpression)==null?void 0:t.type:e.type}function BR(e){switch(e.kind){case 168:case 263:case 264:case 265:case 266:case 353:case 345:case 347:return!0;case 273:return e.isTypeOnly;case 276:case 281:return e.parent.parent.isTypeOnly;default:return!1}}function Ik(e){return x0(e)||Ll(e)||Ac(e)||Ic(e)||hd(e)||BR(e)||Xl(e)&&!WE(e)&&!R_(e)}function xk(e){if(!fC(e))return!1;const{isBracketed:t,typeExpression:r}=e;return t||!!r&&r.type.kind===323}function HU(e,t){if(e.length===0)return!1;const r=e.charCodeAt(0);return r===35?e.length>1&&$h(e.charCodeAt(1),t):$h(r,t)}function oae(e){var t;return((t=yH(e))==null?void 0:t.kind)===0}function Rk(e){return lr(e)&&(e.type&&e.type.kind===323||Qx(e).some(({isBracketed:t,typeExpression:r})=>t||!!r&&r.type.kind===323))}function aP(e){switch(e.kind){case 172:case 171:return!!e.questionToken;case 169:return!!e.questionToken||Rk(e);case 355:case 348:return xk(e);default:return!1}}function aae(e){const t=e.kind;return(t===211||t===212)&&fI(e.expression)}function qU(e){return lr(e)&&Gd(e)&&Fp(e)&&!!$V(e)}function JU(e){return N.checkDefined(sW(e))}function sW(e){const t=$V(e);return t&&t.typeExpression&&t.typeExpression.type}function sP(e){return Ve(e)?e.escapedText:YA(e)}function Dk(e){return Ve(e)?Sr(e):lP(e)}function sae(e){const t=e.kind;return t===80||t===295}function YA(e){return`${e.namespace.escapedText}:${Sr(e.name)}`}function lP(e){return`${Sr(e.namespace)}:${Sr(e.name)}`}function KU(e){return Ve(e)?Sr(e):lP(e)}function rm(e){return!!(e.flags&8576)}function im(e){return e.flags&8192?e.escapedName:e.flags&384?hl(""+e.value):N.fail()}function lW(e){return!!e&&(Fr(e)||Qs(e)||mr(e))}function lae(e){return e===void 0?!1:!!hD(e.attributes)}function $A(e,t){return VTe.call(e,"*",t)}function cW(e){return Ve(e.name)?e.name.escapedText:hl(e.name.text)}var uW,Ky,Nk,dW,Ck,pW,XU,YU,ATe,ITe,$U,xTe,RTe,QU,ZU,eH,tH,DTe,NTe,CTe,PTe,MTe,cae,LTe,kTe,wTe,cP,WS,OTe,WTe,lu,uae,fW,_c,os,wu,md,nH,om,yh,FS,mW,_W,A0,Nf,e1,uP,Pk,Xy,dP,rH,FTe,iH,oH,dae,pae,fae,aH,GR,sH,zTe,BTe,lH,VR,hW,GTe,Mk,Lk,kk,cH,uH,gW,VTe,CGe=T({"src/compiler/utilities.ts"(){ra(),uW=[],Ky="tslib",Nk=160,dW=1e6,Ck=LBe(),pW=Td(()=>new Map(Object.entries({Array:new Map(Object.entries({es2015:["find","findIndex","fill","copyWithin","entries","keys","values"],es2016:["includes"],es2019:["flat","flatMap"],es2022:["at"],es2023:["findLastIndex","findLast"]})),Iterator:new Map(Object.entries({es2015:et})),AsyncIterator:new Map(Object.entries({es2015:et})),Atomics:new Map(Object.entries({es2017:et})),SharedArrayBuffer:new Map(Object.entries({es2017:et})),AsyncIterable:new Map(Object.entries({es2018:et})),AsyncIterableIterator:new Map(Object.entries({es2018:et})),AsyncGenerator:new Map(Object.entries({es2018:et})),AsyncGeneratorFunction:new Map(Object.entries({es2018:et})),RegExp:new Map(Object.entries({es2015:["flags","sticky","unicode"],es2018:["dotAll"]})),Reflect:new Map(Object.entries({es2015:["apply","construct","defineProperty","deleteProperty","get","getOwnPropertyDescriptor","getPrototypeOf","has","isExtensible","ownKeys","preventExtensions","set","setPrototypeOf"]})),ArrayConstructor:new Map(Object.entries({es2015:["from","of"]})),ObjectConstructor:new Map(Object.entries({es2015:["assign","getOwnPropertySymbols","keys","is","setPrototypeOf"],es2017:["values","entries","getOwnPropertyDescriptors"],es2019:["fromEntries"],es2022:["hasOwn"]})),NumberConstructor:new Map(Object.entries({es2015:["isFinite","isInteger","isNaN","isSafeInteger","parseFloat","parseInt"]})),Math:new Map(Object.entries({es2015:["clz32","imul","sign","log10","log2","log1p","expm1","cosh","sinh","tanh","acosh","asinh","atanh","hypot","trunc","fround","cbrt"]})),Map:new Map(Object.entries({es2015:["entries","keys","values"]})),Set:new Map(Object.entries({es2015:["entries","keys","values"]})),PromiseConstructor:new Map(Object.entries({es2015:["all","race","reject","resolve"],es2020:["allSettled"],es2021:["any"]})),Symbol:new Map(Object.entries({es2015:["for","keyFor"],es2019:["description"]})),WeakMap:new Map(Object.entries({es2015:["entries","keys","values"]})),WeakSet:new Map(Object.entries({es2015:["entries","keys","values"]})),String:new Map(Object.entries({es2015:["codePointAt","includes","endsWith","normalize","repeat","startsWith","anchor","big","blink","bold","fixed","fontcolor","fontsize","italics","link","small","strike","sub","sup"],es2017:["padStart","padEnd"],es2019:["trimStart","trimEnd","trimLeft","trimRight"],es2020:["matchAll"],es2021:["replaceAll"],es2022:["at"]})),StringConstructor:new Map(Object.entries({es2015:["fromCodePoint","raw"]})),DateTimeFormat:new Map(Object.entries({es2017:["formatToParts"]})),Promise:new Map(Object.entries({es2015:et,es2018:["finally"]})),RegExpMatchArray:new Map(Object.entries({es2018:["groups"]})),RegExpExecArray:new Map(Object.entries({es2018:["groups"]})),Intl:new Map(Object.entries({es2018:["PluralRules"]})),NumberFormat:new Map(Object.entries({es2018:["formatToParts"]})),SymbolConstructor:new Map(Object.entries({es2020:["matchAll"]})),DataView:new Map(Object.entries({es2020:["setBigInt64","setBigUint64","getBigInt64","getBigUint64"]})),BigInt:new Map(Object.entries({es2020:et})),RelativeTimeFormat:new Map(Object.entries({es2020:["format","formatToParts","resolvedOptions"]})),Int8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint8Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint8ClampedArray:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Int16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint16Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Int32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Uint32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Float32Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),Float64Array:new Map(Object.entries({es2022:["at"],es2023:["findLastIndex","findLast"]})),BigInt64Array:new Map(Object.entries({es2020:et,es2022:["at"],es2023:["findLastIndex","findLast"]})),BigUint64Array:new Map(Object.entries({es2020:et,es2022:["at"],es2023:["findLastIndex","findLast"]})),Error:new Map(Object.entries({es2022:["cause"]}))}))),XU=(e=>(e[e.None=0]="None",e[e.NeverAsciiEscape=1]="NeverAsciiEscape",e[e.JsxAttributeEscape=2]="JsxAttributeEscape",e[e.TerminateUnterminatedLiterals=4]="TerminateUnterminatedLiterals",e[e.AllowNumericSeparator=8]="AllowNumericSeparator",e))(XU||{}),YU=/^(\/\/\/\s*<reference\s+path\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,ATe=/^(\/\/\/\s*<reference\s+types\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,ITe=/^(\/\/\/\s*<reference\s+lib\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,$U=/^(\/\/\/\s*<amd-dependency\s+path\s*=\s*)(('[^']*')|("[^"]*")).*?\/>/,xTe=/^\/\/\/\s*<amd-module\s+.*?\/>/,RTe=/^(\/\/\/\s*<reference\s+no-default-lib\s*=\s*)(('[^']*')|("[^"]*"))\s*\/>/,QU=(e=>(e[e.None=0]="None",e[e.Definite=1]="Definite",e[e.Compound=2]="Compound",e))(QU||{}),ZU=(e=>(e[e.Normal=0]="Normal",e[e.Generator=1]="Generator",e[e.Async=2]="Async",e[e.Invalid=4]="Invalid",e[e.AsyncGenerator=3]="AsyncGenerator",e))(ZU||{}),eH=(e=>(e[e.Left=0]="Left",e[e.Right=1]="Right",e))(eH||{}),tH=(e=>(e[e.Comma=0]="Comma",e[e.Spread=1]="Spread",e[e.Yield=2]="Yield",e[e.Assignment=3]="Assignment",e[e.Conditional=4]="Conditional",e[e.Coalesce=4]="Coalesce",e[e.LogicalOR=5]="LogicalOR",e[e.LogicalAND=6]="LogicalAND",e[e.BitwiseOR=7]="BitwiseOR",e[e.BitwiseXOR=8]="BitwiseXOR",e[e.BitwiseAND=9]="BitwiseAND",e[e.Equality=10]="Equality",e[e.Relational=11]="Relational",e[e.Shift=12]="Shift",e[e.Additive=13]="Additive",e[e.Multiplicative=14]="Multiplicative",e[e.Exponentiation=15]="Exponentiation",e[e.Unary=16]="Unary",e[e.Update=17]="Update",e[e.LeftHandSide=18]="LeftHandSide",e[e.Member=19]="Member",e[e.Primary=20]="Primary",e[e.Highest=20]="Highest",e[e.Lowest=0]="Lowest",e[e.Invalid=-1]="Invalid",e))(tH||{}),DTe=/\$\{/g,NTe=/[\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,CTe=/[\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g,PTe=/\r\n|[\\`\u0000-\u001f\t\v\f\b\r\u2028\u2029\u0085]/g,MTe=new Map(Object.entries({" ":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","…":"\\u0085","\r\n":"\\r\\n"})),cae=/[^\u0000-\u007F]/g,LTe=/["\u0000-\u001f\u2028\u2029\u0085]/g,kTe=/['\u0000-\u001f\u2028\u2029\u0085]/g,wTe=new Map(Object.entries({'"':"&quot;","'":"&apos;"})),cP=[""," "],WS="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",OTe=`\r
+`,WTe=`
+`,lu={getNodeConstructor:()=>Loe,getTokenConstructor:()=>pGe,getIdentifierConstructor:()=>fGe,getPrivateIdentifierConstructor:()=>Loe,getSourceFileConstructor:()=>Loe,getSymbolConstructor:()=>cGe,getTypeConstructor:()=>uGe,getSignatureConstructor:()=>dGe,getSourceMapSourceConstructor:()=>mGe},uae=[],_c={target:{dependencies:["module"],computeValue:e=>e.target??(e.module===100&&9||e.module===199&&99||1)},module:{dependencies:["target"],computeValue:e=>typeof e.module=="number"?e.module:_c.target.computeValue(e)>=2?5:1},moduleResolution:{dependencies:["module","target"],computeValue:e=>{let t=e.moduleResolution;if(t===void 0)switch(_c.module.computeValue(e)){case 1:t=2;break;case 100:t=3;break;case 199:t=99;break;case 200:t=100;break;default:t=1;break}return t}},moduleDetection:{dependencies:["module","target"],computeValue:e=>e.moduleDetection||(_c.module.computeValue(e)===100||_c.module.computeValue(e)===199?3:2)},isolatedModules:{dependencies:["verbatimModuleSyntax"],computeValue:e=>!!(e.isolatedModules||e.verbatimModuleSyntax)},esModuleInterop:{dependencies:["module","target"],computeValue:e=>{if(e.esModuleInterop!==void 0)return e.esModuleInterop;switch(_c.module.computeValue(e)){case 100:case 199:case 200:return!0}return!1}},allowSyntheticDefaultImports:{dependencies:["module","target","moduleResolution"],computeValue:e=>e.allowSyntheticDefaultImports!==void 0?e.allowSyntheticDefaultImports:_c.esModuleInterop.computeValue(e)||_c.module.computeValue(e)===4||_c.moduleResolution.computeValue(e)===100},resolvePackageJsonExports:{dependencies:["moduleResolution"],computeValue:e=>{const t=_c.moduleResolution.computeValue(e);if(!KA(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolvePackageJsonImports:{dependencies:["moduleResolution","resolvePackageJsonExports"],computeValue:e=>{const t=_c.moduleResolution.computeValue(e);if(!KA(t))return!1;if(e.resolvePackageJsonExports!==void 0)return e.resolvePackageJsonExports;switch(t){case 3:case 99:case 100:return!0}return!1}},resolveJsonModule:{dependencies:["moduleResolution","module","target"],computeValue:e=>e.resolveJsonModule!==void 0?e.resolveJsonModule:_c.moduleResolution.computeValue(e)===100},declaration:{dependencies:["composite"],computeValue:e=>!!(e.declaration||e.composite)},preserveConstEnums:{dependencies:["isolatedModules","verbatimModuleSyntax"],computeValue:e=>!!(e.preserveConstEnums||_c.isolatedModules.computeValue(e))},incremental:{dependencies:["composite"],computeValue:e=>!!(e.incremental||e.composite)},declarationMap:{dependencies:["declaration","composite"],computeValue:e=>!!(e.declarationMap&&_c.declaration.computeValue(e))},allowJs:{dependencies:["checkJs"],computeValue:e=>e.allowJs===void 0?!!e.checkJs:e.allowJs},useDefineForClassFields:{dependencies:["target","module"],computeValue:e=>e.useDefineForClassFields===void 0?_c.target.computeValue(e)>=9:e.useDefineForClassFields},noImplicitAny:{dependencies:["strict"],computeValue:e=>fd(e,"noImplicitAny")},noImplicitThis:{dependencies:["strict"],computeValue:e=>fd(e,"noImplicitThis")},strictNullChecks:{dependencies:["strict"],computeValue:e=>fd(e,"strictNullChecks")},strictFunctionTypes:{dependencies:["strict"],computeValue:e=>fd(e,"strictFunctionTypes")},strictBindCallApply:{dependencies:["strict"],computeValue:e=>fd(e,"strictBindCallApply")},strictPropertyInitialization:{dependencies:["strict"],computeValue:e=>fd(e,"strictPropertyInitialization")},alwaysStrict:{dependencies:["strict"],computeValue:e=>fd(e,"alwaysStrict")},useUnknownInCatchVariables:{dependencies:["strict"],computeValue:e=>fd(e,"useUnknownInCatchVariables")}},os=_c.target.computeValue,wu=_c.module.computeValue,md=_c.moduleResolution.computeValue,nH=_c.moduleDetection.computeValue,om=_c.isolatedModules.computeValue,yh=_c.esModuleInterop.computeValue,FS=_c.allowSyntheticDefaultImports.computeValue,mW=_c.resolvePackageJsonExports.computeValue,_W=_c.resolvePackageJsonImports.computeValue,A0=_c.resolveJsonModule.computeValue,Nf=_c.declaration.computeValue,e1=_c.preserveConstEnums.computeValue,uP=_c.incremental.computeValue,Pk=_c.declarationMap.computeValue,Xy=_c.allowJs.computeValue,dP=_c.useDefineForClassFields.computeValue,rH=/[^\w\s/]/g,FTe=[42,63],iH=["node_modules","bower_components","jspm_packages"],oH=`(?!(${iH.join("|")})(/|$))`,dae={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:`(/${oH}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>qoe(e,dae.singleAsteriskRegexFragment)},pae={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:`(/${oH}[^/.][^/]*)*?`,replaceWildcardCharacter:e=>qoe(e,pae.singleAsteriskRegexFragment)},fae={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:e=>qoe(e,fae.singleAsteriskRegexFragment)},aH={files:dae,directories:pae,exclude:fae},GR=[[".ts",".tsx",".d.ts"],[".cts",".d.cts"],[".mts",".d.mts"]],sH=ia(GR),zTe=[...GR,[".json"]],BTe=[".d.ts",".d.cts",".d.mts",".cts",".mts",".ts",".tsx"],lH=[[".js",".jsx"],[".mjs"],[".cjs"]],VR=ia(lH),hW=[[".ts",".tsx",".d.ts",".js",".jsx"],[".cts",".d.cts",".cjs"],[".mts",".d.mts",".mjs"]],GTe=[...hW,[".json"]],Mk=[".d.ts",".d.cts",".d.mts"],Lk=[".ts",".cts",".mts",".tsx"],kk=[".mts",".d.mts",".mjs",".cts",".d.cts",".cjs"],cH=(e=>(e[e.Minimal=0]="Minimal",e[e.Index=1]="Index",e[e.JsExtension=2]="JsExtension",e[e.TsExtension=3]="TsExtension",e))(cH||{}),uH=[".d.ts",".d.mts",".d.cts",".mjs",".mts",".cjs",".cts",".ts",".js",".tsx",".jsx",".json"],gW={files:et,directories:et},VTe=String.prototype.replace}});function mae(){let e,t,r,i,o;return{createBaseSourceFileNode:s,createBaseIdentifierNode:l,createBasePrivateIdentifierNode:u,createBaseTokenNode:p,createBaseNode:h};function s(m){return new(o||(o=lu.getSourceFileConstructor()))(m,-1,-1)}function l(m){return new(r||(r=lu.getIdentifierConstructor()))(m,-1,-1)}function u(m){return new(i||(i=lu.getPrivateIdentifierConstructor()))(m,-1,-1)}function p(m){return new(t||(t=lu.getTokenConstructor()))(m,-1,-1)}function h(m){return new(e||(e=lu.getNodeConstructor()))(m,-1,-1)}}var PGe=T({"src/compiler/factory/baseNodeFactory.ts"(){ra()}});function _ae(e){let t,r;return{getParenthesizeLeftSideOfBinaryForOperator:i,getParenthesizeRightSideOfBinaryForOperator:o,parenthesizeLeftSideOfBinary:h,parenthesizeRightSideOfBinary:m,parenthesizeExpressionOfComputedPropertyName:b,parenthesizeConditionOfConditionalExpression:A,parenthesizeBranchOfConditionalExpression:I,parenthesizeExpressionOfExportDefault:R,parenthesizeExpressionOfNew:M,parenthesizeLeftSideOfAccess:C,parenthesizeOperandOfPostfixUnary:O,parenthesizeOperandOfPrefixUnary:U,parenthesizeExpressionsOfCommaDelimitedList:K,parenthesizeExpressionForDisallowedComma:Z,parenthesizeExpressionOfExpressionStatement:V,parenthesizeConciseBodyOfArrowFunction:se,parenthesizeCheckTypeOfConditionalType:G,parenthesizeExtendsTypeOfConditionalType:ne,parenthesizeConstituentTypesOfUnionType:ye,parenthesizeConstituentTypeOfUnionType:he,parenthesizeConstituentTypesOfIntersectionType:Y,parenthesizeConstituentTypeOfIntersectionType:$,parenthesizeOperandOfTypeOperator:oe,parenthesizeOperandOfReadonlyTypeOperator:fe,parenthesizeNonArrayTypeOfPostfixType:Ne,parenthesizeElementTypesOfTupleType:pe,parenthesizeElementTypeOfTupleType:ie,parenthesizeTypeOfOptionalType:Le,parenthesizeTypeArguments:De,parenthesizeLeadingTypeArgument:He};function i(Pe){t||(t=new Map);let We=t.get(Pe);return We||(We=At=>h(Pe,At),t.set(Pe,We)),We}function o(Pe){r||(r=new Map);let We=r.get(Pe);return We||(We=At=>m(Pe,void 0,At),r.set(Pe,We)),We}function s(Pe,We,At,Se){const je=ck(226,Pe),at=sU(226,Pe),Gt=Tm(We);if(!At&&We.kind===219&&je>3)return!0;const vt=wC(Gt);switch(rl(vt,je)){case-1:return!(!At&&at===1&&We.kind===229);case 1:return!1;case 0:if(At)return at===1;if(mr(Gt)&&Gt.operatorToken.kind===Pe){if(l(Pe))return!1;if(Pe===40){const It=Se?u(Se):0;if(mC(It)&&It===u(Gt))return!1}}return aU(Gt)===0}}function l(Pe){return Pe===42||Pe===52||Pe===51||Pe===53||Pe===28}function u(Pe){if(Pe=Tm(Pe),mC(Pe.kind))return Pe.kind;if(Pe.kind===226&&Pe.operatorToken.kind===40){if(Pe.cachedLiteralKind!==void 0)return Pe.cachedLiteralKind;const We=u(Pe.left),At=mC(We)&&We===u(Pe.right)?We:0;return Pe.cachedLiteralKind=At,At}return 0}function p(Pe,We,At,Se){return Tm(We).kind===217?We:s(Pe,We,At,Se)?e.createParenthesizedExpression(We):We}function h(Pe,We){return p(Pe,We,!0)}function m(Pe,We,At){return p(Pe,At,!1,We)}function b(Pe){return RP(Pe)?e.createParenthesizedExpression(Pe):Pe}function A(Pe){const We=ck(227,58),At=Tm(Pe),Se=wC(At);return rl(Se,We)!==1?e.createParenthesizedExpression(Pe):Pe}function I(Pe){const We=Tm(Pe);return RP(We)?e.createParenthesizedExpression(Pe):Pe}function R(Pe){const We=Tm(Pe);let At=RP(We);if(!At)switch(wR(We,!1).kind){case 231:case 218:At=!0}return At?e.createParenthesizedExpression(Pe):Pe}function M(Pe){const We=wR(Pe,!0);switch(We.kind){case 213:return e.createParenthesizedExpression(Pe);case 214:return We.arguments?Pe:e.createParenthesizedExpression(Pe)}return C(Pe)}function C(Pe,We){const At=Tm(Pe);return ep(At)&&(At.kind!==214||At.arguments)&&(We||!qu(At))?Pe:dt(e.createParenthesizedExpression(Pe),Pe)}function O(Pe){return ep(Pe)?Pe:dt(e.createParenthesizedExpression(Pe),Pe)}function U(Pe){return uj(Pe)?Pe:dt(e.createParenthesizedExpression(Pe),Pe)}function K(Pe){const We=eo(Pe,Z);return dt(e.createNodeArray(We,Pe.hasTrailingComma),Pe)}function Z(Pe){const We=Tm(Pe),At=wC(We),Se=ck(226,28);return At>Se?Pe:dt(e.createParenthesizedExpression(Pe),Pe)}function V(Pe){const We=Tm(Pe);if(la(We)){const Se=We.expression,je=Tm(Se).kind;if(je===218||je===219){const at=e.updateCallExpression(We,dt(e.createParenthesizedExpression(Se),Se),We.typeArguments,We.arguments);return e.restoreOuterExpressions(Pe,at,8)}}const At=wR(We,!1).kind;return At===210||At===218?dt(e.createParenthesizedExpression(Pe),Pe):Pe}function se(Pe){return!Xo(Pe)&&(RP(Pe)||wR(Pe,!1).kind===210)?dt(e.createParenthesizedExpression(Pe),Pe):Pe}function G(Pe){switch(Pe.kind){case 184:case 185:case 194:return e.createParenthesizedType(Pe)}return Pe}function ne(Pe){switch(Pe.kind){case 194:return e.createParenthesizedType(Pe)}return Pe}function he(Pe){switch(Pe.kind){case 192:case 193:return e.createParenthesizedType(Pe)}return G(Pe)}function ye(Pe){return e.createNodeArray(eo(Pe,he))}function $(Pe){switch(Pe.kind){case 192:case 193:return e.createParenthesizedType(Pe)}return he(Pe)}function Y(Pe){return e.createNodeArray(eo(Pe,$))}function oe(Pe){switch(Pe.kind){case 193:return e.createParenthesizedType(Pe)}return $(Pe)}function fe(Pe){switch(Pe.kind){case 198:return e.createParenthesizedType(Pe)}return oe(Pe)}function Ne(Pe){switch(Pe.kind){case 195:case 198:case 186:return e.createParenthesizedType(Pe)}return oe(Pe)}function pe(Pe){return e.createNodeArray(eo(Pe,ie))}function ie(Pe){return ve(Pe)?e.createParenthesizedType(Pe):Pe}function ve(Pe){return $R(Pe)?Pe.postfix:qR(Pe)||Eh(Pe)||HR(Pe)||VS(Pe)?ve(Pe.type):dI(Pe)?ve(Pe.falseType):Qy(Pe)||uI(Pe)?ve(Ya(Pe.types)):BS(Pe)?!!Pe.typeParameter.constraint&&ve(Pe.typeParameter.constraint):!1}function Le(Pe){return ve(Pe)?e.createParenthesizedType(Pe):Ne(Pe)}function He(Pe){return Gre(Pe)&&Pe.typeParameters?e.createParenthesizedType(Pe):Pe}function Ee(Pe,We){return We===0?He(Pe):Pe}function De(Pe){if(bt(Pe))return e.createNodeArray(eo(Pe,Ee))}}var dH,MGe=T({"src/compiler/factory/parenthesizerRules.ts"(){ra(),dH={getParenthesizeLeftSideOfBinaryForOperator:e=>nl,getParenthesizeRightSideOfBinaryForOperator:e=>nl,parenthesizeLeftSideOfBinary:(e,t)=>t,parenthesizeRightSideOfBinary:(e,t,r)=>r,parenthesizeExpressionOfComputedPropertyName:nl,parenthesizeConditionOfConditionalExpression:nl,parenthesizeBranchOfConditionalExpression:nl,parenthesizeExpressionOfExportDefault:nl,parenthesizeExpressionOfNew:e=>aa(e,ep),parenthesizeLeftSideOfAccess:e=>aa(e,ep),parenthesizeOperandOfPostfixUnary:e=>aa(e,ep),parenthesizeOperandOfPrefixUnary:e=>aa(e,uj),parenthesizeExpressionsOfCommaDelimitedList:e=>aa(e,LE),parenthesizeExpressionForDisallowedComma:nl,parenthesizeExpressionOfExpressionStatement:nl,parenthesizeConciseBodyOfArrowFunction:nl,parenthesizeCheckTypeOfConditionalType:nl,parenthesizeExtendsTypeOfConditionalType:nl,parenthesizeConstituentTypesOfUnionType:e=>aa(e,LE),parenthesizeConstituentTypeOfUnionType:nl,parenthesizeConstituentTypesOfIntersectionType:e=>aa(e,LE),parenthesizeConstituentTypeOfIntersectionType:nl,parenthesizeOperandOfTypeOperator:nl,parenthesizeOperandOfReadonlyTypeOperator:nl,parenthesizeNonArrayTypeOfPostfixType:nl,parenthesizeElementTypesOfTupleType:e=>aa(e,LE),parenthesizeElementTypeOfTupleType:nl,parenthesizeTypeOfOptionalType:nl,parenthesizeTypeArguments:e=>e&&aa(e,LE),parenthesizeLeadingTypeArgument:nl}}});function hae(e){return{convertToFunctionBlock:t,convertToFunctionExpression:r,convertToClassExpression:i,convertToArrayAssignmentElement:o,convertToObjectAssignmentElement:s,convertToAssignmentPattern:l,convertToObjectAssignmentPattern:u,convertToArrayAssignmentPattern:p,convertToAssignmentElementTarget:h};function t(m,b){if(Xo(m))return m;const A=e.createReturnStatement(m);dt(A,m);const I=e.createBlock([A],b);return dt(I,m),I}function r(m){var b;if(!m.body)return N.fail("Cannot convert a FunctionDeclaration without a body");const A=e.createFunctionExpression((b=ME(m))==null?void 0:b.filter(I=>!oI(I)&&!eF(I)),m.asteriskToken,m.name,m.typeParameters,m.parameters,m.type,m.body);return Cr(A,m),dt(A,m),pP(m)&&bW(A,!0),A}function i(m){var b;const A=e.createClassExpression((b=m.modifiers)==null?void 0:b.filter(I=>!oI(I)&&!eF(I)),m.name,m.typeParameters,m.heritageClauses,m.members);return Cr(A,m),dt(A,m),pP(m)&&bW(A,!0),A}function o(m){if(Qa(m)){if(m.dotDotDotToken)return N.assertNode(m.name,Ve),Cr(dt(e.createSpreadElement(m.name),m),m);const b=h(m.name);return m.initializer?Cr(dt(e.createAssignment(b,m.initializer),m),m):b}return aa(m,yt)}function s(m){if(Qa(m)){if(m.dotDotDotToken)return N.assertNode(m.name,Ve),Cr(dt(e.createSpreadAssignment(m.name),m),m);if(m.propertyName){const b=h(m.name);return Cr(dt(e.createPropertyAssignment(m.propertyName,m.initializer?e.createAssignment(b,m.initializer):b),m),m)}return N.assertNode(m.name,Ve),Cr(dt(e.createShorthandPropertyAssignment(m.name,m.initializer),m),m)}return aa(m,Wg)}function l(m){switch(m.kind){case 207:case 209:return p(m);case 206:case 210:return u(m)}}function u(m){return am(m)?Cr(dt(e.createObjectLiteralExpression(wt(m.elements,s)),m),m):aa(m,Oa)}function p(m){return n1(m)?Cr(dt(e.createArrayLiteralExpression(wt(m.elements,o)),m),m):aa(m,_d)}function h(m){return ta(m)?l(m):aa(m,yt)}}var pH,LGe=T({"src/compiler/factory/nodeConverters.ts"(){ra(),pH={convertToFunctionBlock:Ko,convertToFunctionExpression:Ko,convertToClassExpression:Ko,convertToArrayAssignmentElement:Ko,convertToObjectAssignmentElement:Ko,convertToAssignmentPattern:Ko,convertToObjectAssignmentPattern:Ko,convertToArrayAssignmentPattern:Ko,convertToAssignmentElementTarget:Ko}}});function jTe(e){vae.push(e)}function wk(e,t){const r=e&8?nl:Cr,i=Td(()=>e&1?dH:_ae(O)),o=Td(()=>e&2?pH:hae(O)),s=uh(E=>(P,B)=>Te(P,E,B)),l=uh(E=>P=>ct(E,P)),u=uh(E=>P=>jt(P,E)),p=uh(E=>()=>aN(E)),h=uh(E=>P=>IT(E,P)),m=uh(E=>(P,B)=>L1(E,P,B)),b=uh(E=>(P,B)=>sN(E,P,B)),A=uh(E=>(P,B)=>Zs(E,P,B)),I=uh(E=>(P,B)=>Z0(E,P,B)),R=uh(E=>(P,B,ce)=>Ff(E,P,B,ce)),M=uh(E=>(P,B,ce)=>Sb(E,P,B,ce)),C=uh(E=>(P,B,ce,Qe)=>Tb(E,P,B,ce,Qe)),O={get parenthesizer(){return i()},get converters(){return o()},baseFactory:t,flags:e,createNodeArray:U,createNumericLiteral:se,createBigIntLiteral:G,createStringLiteral:he,createStringLiteralFromNode:ye,createRegularExpressionLiteral:$,createLiteralLikeNode:Y,createIdentifier:Ne,createTempVariable:pe,createLoopVariable:ie,createUniqueName:ve,getGeneratedNameForNode:Le,createPrivateIdentifier:Ee,createUniquePrivateName:Pe,getGeneratedPrivateNameForNode:We,createToken:Se,createSuper:je,createThis:at,createNull:Gt,createTrue:vt,createFalse:$e,createModifier:It,createModifiersFromModifierFlags:tn,createQualifiedName:rn,updateQualifiedName:Pn,createComputedPropertyName:Xn,updateComputedPropertyName:hn,createTypeParameterDeclaration:Qt,updateTypeParameterDeclaration:$t,createParameterDeclaration:_i,updateParameterDeclaration:ao,createDecorator:Oi,updateDecorator:No,createPropertySignature:Mn,updatePropertySignature:Di,createPropertyDeclaration:sn,updatePropertyDeclaration:tt,createMethodSignature:zt,updateMethodSignature:Rn,createMethodDeclaration:li,updateMethodDeclaration:hi,createConstructorDeclaration:Sn,updateConstructorDeclaration:kn,createGetAccessorDeclaration:mt,updateGetAccessorDeclaration:ft,createSetAccessorDeclaration:le,updateSetAccessorDeclaration:Fe,createCallSignature:j,updateCallSignature:ot,createConstructSignature:Rt,updateConstructSignature:Ye,createIndexSignature:_t,updateIndexSignature:Vt,createClassStaticBlockDeclaration:Io,updateClassStaticBlockDeclaration:ma,createTemplateLiteralTypeSpan:vn,updateTemplateLiteralTypeSpan:fn,createKeywordTypeNode:_n,createTypePredicateNode:q,updateTypePredicateNode:Oe,createTypeReferenceNode:Lt,updateTypeReferenceNode:L,createFunctionTypeNode:_e,updateFunctionTypeNode:J,createConstructorTypeNode:Ge,updateConstructorTypeNode:kt,createTypeQueryNode:Bn,updateTypeQueryNode:Hn,createTypeLiteralNode:Ni,updateTypeLiteralNode:Ai,createArrayTypeNode:ir,updateArrayTypeNode:jr,createTupleTypeNode:vo,updateTupleTypeNode:Ci,createNamedTupleMember:Ii,updateNamedTupleMember:Kr,createOptionalTypeNode:xo,updateOptionalTypeNode:Dn,createRestTypeNode:Fs,updateRestTypeNode:Ql,createUnionTypeNode:Vs,updateUnionTypeNode:vl,createIntersectionTypeNode:uu,updateIntersectionTypeNode:ho,createConditionalTypeNode:pa,updateConditionalTypeNode:du,createInferTypeNode:As,updateInferTypeNode:La,createImportTypeNode:lc,updateImportTypeNode:Nl,createParenthesizedType:ul,updateParenthesizedType:ko,createThisTypeNode:nn,createTypeOperatorNode:js,updateTypeOperatorNode:nu,createIndexedAccessTypeNode:pu,updateIndexedAccessTypeNode:Ip,createMappedTypeNode:Ms,updateMappedTypeNode:Rc,createLiteralTypeNode:de,updateLiteralTypeNode:ee,createTemplateLiteralType:_l,updateTemplateLiteralType:wf,createObjectBindingPattern:we,updateObjectBindingPattern:Et,createArrayBindingPattern:un,updateArrayBindingPattern:Er,createBindingElement:vr,updateBindingElement:Ur,createArrayLiteralExpression:xi,updateArrayLiteralExpression:Lr,createObjectLiteralExpression:$o,updateObjectLiteralExpression:Tl,createPropertyAccessExpression:e&4?(E,P)=>pr(Us(E,P),262144):Us,updatePropertyAccessExpression:vc,createPropertyAccessChain:e&4?(E,P,B)=>pr(Ss(E,P,B),262144):Ss,updatePropertyAccessChain:qc,createElementAccessExpression:Wc,updateElementAccessExpression:cm,createElementAccessChain:gd,updateElementAccessChain:Ce,createCallExpression:Jn,updateCallExpression:yo,createCallChain:Qo,updateCallChain:na,createNewExpression:Zl,updateNewExpression:yc,createTaggedTemplateExpression:dl,updateTaggedTemplateExpression:yl,createTypeAssertion:Vl,updateTypeAssertion:ec,createParenthesizedExpression:Jc,updateParenthesizedExpression:ff,createFunctionExpression:jd,updateFunctionExpression:Cd,createArrowFunction:Of,updateArrowFunction:U_,createDeleteExpression:Ch,updateDeleteExpression:$g,createTypeOfExpression:Bu,updateTypeOfExpression:Qg,createVoidExpression:xp,updateVoidExpression:_g,createAwaitExpression:Ud,updateAwaitExpression:te,createPrefixUnaryExpression:ct,updatePrefixUnaryExpression:Ft,createPostfixUnaryExpression:jt,updatePostfixUnaryExpression:F,createBinaryExpression:Te,updateBinaryExpression:Jt,createConditionalExpression:rr,updateConditionalExpression:oi,createTemplateExpression:$r,updateTemplateExpression:io,createTemplateHead:Rp,createTemplateMiddle:Hd,createTemplateTail:pb,createNoSubstitutionTemplateLiteral:us,createTemplateLiteralLikeNode:Dc,createYieldExpression:km,updateYieldExpression:wm,createSpreadElement:Ui,updateSpreadElement:Zg,createClassExpression:ay,updateClassExpression:Om,createOmittedExpression:x1,createExpressionWithTypeArguments:R1,updateExpressionWithTypeArguments:mf,createAsExpression:H_,updateAsExpression:_f,createNonNullExpression:ev,updateNonNullExpression:ze,createSatisfiesExpression:Ze,updateSatisfiesExpression:Mt,createNonNullChain:Ht,updateNonNullChain:yn,createMetaProperty:Yn,updateMetaProperty:gn,createTemplateSpan:$n,updateTemplateSpan:fi,createSemicolonClassElement:cr,createBlock:ri,updateBlock:fr,createVariableStatement:Zo,updateVariableStatement:Ka,createEmptyStatement:Zu,createExpressionStatement:mu,updateExpressionStatement:tv,createIfStatement:j0,updateIfStatement:JI,createDoStatement:U0,updateDoStatement:QD,createWhileStatement:ZD,updateWhileStatement:eN,createForStatement:hT,updateForStatement:D1,createForInStatement:KI,updateForInStatement:tN,createForOfStatement:XI,updateForOfStatement:YI,createContinueStatement:$I,updateContinueStatement:QI,createBreakStatement:gT,updateBreakStatement:ZI,createReturnStatement:N1,updateReturnStatement:C1,createWithStatement:fb,updateWithStatement:mb,createSwitchStatement:hg,updateSwitchStatement:H0,createLabeledStatement:ts,updateLabeledStatement:vT,createThrowStatement:nN,updateThrowStatement:q0,createTryStatement:nv,updateTryStatement:Ph,createDebuggerStatement:Wf,createVariableDeclaration:qd,updateVariableDeclaration:Dp,createVariableDeclarationList:ap,updateVariableDeclarationList:sy,createFunctionDeclaration:yT,updateFunctionDeclaration:rN,createClassDeclaration:_b,updateClassDeclaration:J0,createInterfaceDeclaration:tx,updateInterfaceDeclaration:bc,createTypeAliasDeclaration:ly,updateTypeAliasDeclaration:nx,createEnumDeclaration:a_,updateEnumDeclaration:bT,createModuleDeclaration:Je,updateModuleDeclaration:s_,createModuleBlock:_u,updateModuleBlock:K0,createCaseBlock:rx,updateCaseBlock:hb,createNamespaceExportDeclaration:cy,updateNamespaceExportDeclaration:uy,createImportEqualsDeclaration:Xa,updateImportEqualsDeclaration:l_,createImportDeclaration:ET,updateImportDeclaration:ST,createImportClause:X0,updateImportClause:TT,createAssertClause:um,updateAssertClause:dm,createAssertEntry:rv,updateAssertEntry:ix,createImportTypeAssertionContainer:c_,updateImportTypeAssertionContainer:iN,createImportAttributes:P1,updateImportAttributes:Xi,createImportAttribute:ei,updateImportAttribute:Mh,createNamespaceImport:Jd,updateNamespaceImport:M2,createNamespaceExport:iv,updateNamespaceExport:L2,createNamedImports:gb,updateNamedImports:bl,createImportSpecifier:Up,updateImportSpecifier:gg,createExportAssignment:pm,updateExportAssignment:vb,createExportDeclaration:Wm,updateExportDeclaration:ov,createNamedExports:AT,updateNamedExports:vg,createExportSpecifier:ox,updateExportSpecifier:yg,createMissingDeclaration:q_,createExternalModuleReference:dy,updateExternalModuleReference:oN,get createJSDocAllType(){return p(319)},get createJSDocUnknownType(){return p(320)},get createJSDocNonNullableType(){return b(322)},get updateJSDocNonNullableType(){return A(322)},get createJSDocNullableType(){return b(321)},get updateJSDocNullableType(){return A(321)},get createJSDocOptionalType(){return h(323)},get updateJSDocOptionalType(){return m(323)},get createJSDocVariadicType(){return h(325)},get updateJSDocVariadicType(){return m(325)},get createJSDocNamepathType(){return h(326)},get updateJSDocNamepathType(){return m(326)},createJSDocFunctionType:xT,updateJSDocFunctionType:Fm,createJSDocTypeLiteral:yb,updateJSDocTypeLiteral:lN,createJSDocTypeExpression:RT,updateJSDocTypeExpression:k2,createJSDocSignature:hr,updateJSDocSignature:ru,createJSDocTemplateTag:J_,updateJSDocTemplateTag:ur,createJSDocTypedefTag:DT,updateJSDocTypedefTag:Y0,createJSDocParameterTag:Kc,updateJSDocParameterTag:Lh,createJSDocPropertyTag:zm,updateJSDocPropertyTag:k1,createJSDocCallbackTag:w1,updateJSDocCallbackTag:bb,createJSDocOverloadTag:av,updateJSDocOverloadTag:NT,createJSDocAugmentsTag:Bm,updateJSDocAugmentsTag:$0,createJSDocImplementsTag:bg,updateJSDocImplementsTag:sp,createJSDocSeeTag:Eb,updateJSDocSeeTag:ax,createJSDocNameReference:Q0,updateJSDocNameReference:cN,createJSDocMemberName:O1,updateJSDocMemberName:CT,createJSDocLink:Hp,updateJSDocLink:PT,createJSDocLinkCode:jl,updateJSDocLinkCode:Fc,createJSDocLinkPlain:MT,updateJSDocLinkPlain:Au,get createJSDocTypeTag(){return M(351)},get updateJSDocTypeTag(){return C(351)},get createJSDocReturnTag(){return M(349)},get updateJSDocReturnTag(){return C(349)},get createJSDocThisTag(){return M(350)},get updateJSDocThisTag(){return C(350)},get createJSDocAuthorTag(){return I(337)},get updateJSDocAuthorTag(){return R(337)},get createJSDocClassTag(){return I(339)},get updateJSDocClassTag(){return R(339)},get createJSDocPublicTag(){return I(340)},get updateJSDocPublicTag(){return R(340)},get createJSDocPrivateTag(){return I(341)},get updateJSDocPrivateTag(){return R(341)},get createJSDocProtectedTag(){return I(342)},get updateJSDocProtectedTag(){return R(342)},get createJSDocReadonlyTag(){return I(343)},get updateJSDocReadonlyTag(){return R(343)},get createJSDocOverrideTag(){return I(344)},get updateJSDocOverrideTag(){return R(344)},get createJSDocDeprecatedTag(){return I(338)},get updateJSDocDeprecatedTag(){return R(338)},get createJSDocThrowsTag(){return M(356)},get updateJSDocThrowsTag(){return C(356)},get createJSDocSatisfiesTag(){return M(357)},get updateJSDocSatisfiesTag(){return C(357)},createJSDocEnumTag:qp,updateJSDocEnumTag:LT,createJSDocUnknownTag:iu,updateJSDocUnknownTag:sx,createJSDocText:kT,updateJSDocText:Hs,createJSDocComment:uN,updateJSDocComment:eE,createJsxElement:W1,updateJsxElement:w2,createJsxSelfClosingElement:vd,updateJsxSelfClosingElement:sv,createJsxOpeningElement:K_,updateJsxOpeningElement:lx,createJsxClosingElement:Np,updateJsxClosingElement:cx,createJsxFragment:lp,createJsxText:fy,updateJsxText:wT,createJsxOpeningFragment:dN,createJsxJsxClosingFragment:pN,updateJsxFragment:ux,createJsxAttribute:OT,updateJsxAttribute:fN,createJsxAttributes:Ab,updateJsxAttributes:Cp,createJsxSpreadAttribute:kh,updateJsxSpreadAttribute:mN,createJsxExpression:WT,updateJsxExpression:rs,createJsxNamespacedName:Ir,updateJsxNamespacedName:gf,createCaseClause:Pd,updateCaseClause:F1,createDefaultClause:_N,updateDefaultClause:tE,createHeritageClause:z1,updateHeritageClause:FT,createCatchClause:Eg,updateCatchClause:u_,createPropertyAssignment:vf,updatePropertyAssignment:Gm,createShorthandPropertyAssignment:Sg,updateShorthandPropertyAssignment:Tg,createSpreadAssignment:cc,updateSpreadAssignment:hN,createEnumMember:zf,updateEnumMember:wh,createSourceFile:yf,updateSourceFile:Ls,createRedirectedSourceFile:B1,createBundle:G1,updateBundle:V1,createUnparsedSource:cv,createUnparsedPrologue:rE,createUnparsedPrepend:D,createUnparsedTextLike:ae,createUnparsedSyntheticReference:ht,createInputFiles:on,createSyntheticExpression:Or,createSyntaxList:ki,createNotEmittedStatement:gi,createPartiallyEmittedExpression:no,updatePartiallyEmittedExpression:va,createCommaListExpression:Md,updateCommaListExpression:Bf,createSyntheticReferenceExpression:xb,updateSyntheticReferenceExpression:bi,cloneNode:Db,get createComma(){return s(28)},get createAssignment(){return s(64)},get createLogicalOr(){return s(57)},get createLogicalAnd(){return s(56)},get createBitwiseOr(){return s(52)},get createBitwiseXor(){return s(53)},get createBitwiseAnd(){return s(51)},get createStrictEquality(){return s(37)},get createStrictInequality(){return s(38)},get createEquality(){return s(35)},get createInequality(){return s(36)},get createLessThan(){return s(30)},get createLessThanEquals(){return s(33)},get createGreaterThan(){return s(32)},get createGreaterThanEquals(){return s(34)},get createLeftShift(){return s(48)},get createRightShift(){return s(49)},get createUnsignedRightShift(){return s(50)},get createAdd(){return s(40)},get createSubtract(){return s(41)},get createMultiply(){return s(42)},get createDivide(){return s(44)},get createModulo(){return s(45)},get createExponent(){return s(43)},get createPrefixPlus(){return l(40)},get createPrefixMinus(){return l(41)},get createPrefixIncrement(){return l(46)},get createPrefixDecrement(){return l(47)},get createBitwiseNot(){return l(55)},get createLogicalNot(){return l(54)},get createPostfixIncrement(){return u(46)},get createPostfixDecrement(){return u(47)},createImmediatelyInvokedFunctionExpression:BT,createImmediatelyInvokedArrowFunction:j1,createVoidZero:X_,createExportDefault:Wh,createExternalModuleExport:gN,createTypeCheck:GT,createIsNotTypeCheck:u9,createMethodCall:Nb,createGlobalMethodCall:d_,createFunctionBindCall:S8,createFunctionCallCall:T8,createFunctionApplyCall:iE,createArraySliceCall:O2,createArrayConcatCall:Fh,createObjectDefinePropertyCall:mx,createObjectGetOwnPropertyDescriptorCall:A8,createReflectGetCall:Y_,createReflectSetCall:Q,createPropertyDescriptor:Xe,createCallBinding:Ri,createAssignmentTargetWrapper:mi,inlineExpressions:Yi,getInternalName:Ds,getLocalName:es,getExportName:Gf,getDeclarationName:$_,getNamespaceMemberName:Ag,getExternalModuleOrNamespaceExportName:uv,restoreOuterExpressions:Kt,restoreEnclosingLabel:zr,createUseStrictPrologue:cp,copyPrologue:dv,copyStandardPrologue:VT,copyCustomPrologue:vN,ensureUseStrict:W2,liftToBlock:F2,mergeLexicalEnvironment:pv,replaceModifiers:Pb,replaceDecoratorsAndModifiers:yN,replacePropertyName:Jp};return Ue(vae,E=>E(O)),O;function U(E,P){if(E===void 0||E===et)E=[];else if(LE(E)){if(P===void 0||E.hasTrailingComma===P)return E.transformFlags===void 0&&UTe(E),N.attachNodeArrayDebugInfo(E),E;const Qe=E.slice();return Qe.pos=E.pos,Qe.end=E.end,Qe.hasTrailingComma=P,Qe.transformFlags=E.transformFlags,N.attachNodeArrayDebugInfo(Qe),Qe}const B=E.length,ce=B>=1&&B<=4?E.slice():E;return ce.pos=-1,ce.end=-1,ce.hasTrailingComma=!!P,ce.transformFlags=0,UTe(ce),N.attachNodeArrayDebugInfo(ce),ce}function K(E){return t.createBaseNode(E)}function Z(E){const P=K(E);return P.symbol=void 0,P.localSymbol=void 0,P}function V(E,P){return E!==P&&(E.typeArguments=P.typeArguments),or(E,P)}function se(E,P=0){const B=typeof E=="number"?E+"":E;N.assert(B.charCodeAt(0)!==45,"Negative numbers should be created in combination with createPrefixUnaryExpression");const ce=Z(9);return ce.text=B,ce.numericLiteralFlags=P,P&384&&(ce.transformFlags|=1024),ce}function G(E){const P=At(10);return P.text=typeof E=="string"?E:$E(E)+"n",P.transformFlags|=32,P}function ne(E,P){const B=Z(11);return B.text=E,B.singleQuote=P,B}function he(E,P,B){const ce=ne(E,P);return ce.hasExtendedUnicodeEscape=B,B&&(ce.transformFlags|=1024),ce}function ye(E){const P=ne(em(E),void 0);return P.textSourceNode=E,P}function $(E){const P=At(14);return P.text=E,P}function Y(E,P){switch(E){case 9:return se(P,0);case 10:return G(P);case 11:return he(P,void 0);case 12:return fy(P,!1);case 13:return fy(P,!0);case 14:return $(P);case 15:return Dc(E,P,void 0,0)}}function oe(E){const P=t.createBaseIdentifierNode(80);return P.escapedText=E,P.jsDoc=void 0,P.flowNode=void 0,P.symbol=void 0,P}function fe(E,P,B,ce){const Qe=oe(hl(E));return Gk(Qe,{flags:P,id:yW,prefix:B,suffix:ce}),yW++,Qe}function Ne(E,P,B){P===void 0&&E&&(P=PE(E)),P===80&&(P=void 0);const ce=oe(hl(E));return B&&(ce.flags|=256),ce.escapedText==="await"&&(ce.transformFlags|=67108864),ce.flags&256&&(ce.transformFlags|=1024),ce}function pe(E,P,B,ce){let Qe=1;P&&(Qe|=8);const Xt=fe("",Qe,B,ce);return E&&E(Xt),Xt}function ie(E){let P=2;return E&&(P|=8),fe("",P,void 0,void 0)}function ve(E,P=0,B,ce){return N.assert(!(P&7),"Argument out of range: flags"),N.assert((P&48)!==32,"GeneratedIdentifierFlags.FileLevel cannot be set without also setting GeneratedIdentifierFlags.Optimistic"),fe(E,3|P,B,ce)}function Le(E,P=0,B,ce){N.assert(!(P&7),"Argument out of range: flags");const Qe=E?Qh(E)?N0(!1,B,E,ce,Sr):`generated@${as(E)}`:"";(B||ce)&&(P|=16);const Xt=fe(Qe,4|P,B,ce);return Xt.original=E,Xt}function He(E){const P=t.createBasePrivateIdentifierNode(81);return P.escapedText=E,P.transformFlags|=16777216,P}function Ee(E){return uo(E,"#")||N.fail("First character of private identifier must be #: "+E),He(hl(E))}function De(E,P,B,ce){const Qe=He(hl(E));return Gk(Qe,{flags:P,id:yW,prefix:B,suffix:ce}),yW++,Qe}function Pe(E,P,B){E&&!uo(E,"#")&&N.fail("First character of private identifier must be #: "+E);const ce=8|(E?3:1);return De(E??"",ce,P,B)}function We(E,P,B){const ce=Qh(E)?N0(!0,P,E,B,Sr):`#generated@${as(E)}`,Xt=De(ce,4|(P||B?16:0),P,B);return Xt.original=E,Xt}function At(E){return t.createBaseTokenNode(E)}function Se(E){N.assert(E>=0&&E<=165,"Invalid token"),N.assert(E<=15||E>=18,"Invalid token. Use 'createTemplateLiteralLikeNode' to create template literals."),N.assert(E<=9||E>=15,"Invalid token. Use 'createLiteralLikeNode' to create literals."),N.assert(E!==80,"Invalid token. Use 'createIdentifier' to create identifiers");const P=At(E);let B=0;switch(E){case 134:B=384;break;case 160:B=4;break;case 125:case 123:case 124:case 148:case 128:case 138:case 87:case 133:case 150:case 163:case 146:case 151:case 103:case 147:case 164:case 154:case 136:case 155:case 116:case 159:case 157:B=1;break;case 108:B=134218752,P.flowNode=void 0;break;case 126:B=1024;break;case 129:B=16777216;break;case 110:B=16384,P.flowNode=void 0;break}return B&&(P.transformFlags|=B),P}function je(){return Se(108)}function at(){return Se(110)}function Gt(){return Se(106)}function vt(){return Se(112)}function $e(){return Se(97)}function It(E){return Se(E)}function tn(E){const P=[];return E&32&&P.push(It(95)),E&128&&P.push(It(138)),E&2048&&P.push(It(90)),E&4096&&P.push(It(87)),E&1&&P.push(It(125)),E&2&&P.push(It(123)),E&4&&P.push(It(124)),E&64&&P.push(It(128)),E&256&&P.push(It(126)),E&16&&P.push(It(164)),E&8&&P.push(It(148)),E&512&&P.push(It(129)),E&1024&&P.push(It(134)),E&8192&&P.push(It(103)),E&16384&&P.push(It(147)),P.length?P:void 0}function rn(E,P){const B=K(166);return B.left=E,B.right=uc(P),B.transformFlags|=Tr(B.left)|Ok(B.right),B.flowNode=void 0,B}function Pn(E,P,B){return E.left!==P||E.right!==B?or(rn(P,B),E):E}function Xn(E){const P=K(167);return P.expression=i().parenthesizeExpressionOfComputedPropertyName(E),P.transformFlags|=Tr(P.expression)|1024|131072,P}function hn(E,P){return E.expression!==P?or(Xn(P),E):E}function Qt(E,P,B,ce){const Qe=Z(168);return Qe.modifiers=Ua(E),Qe.name=uc(P),Qe.constraint=B,Qe.default=ce,Qe.transformFlags=1,Qe.expression=void 0,Qe.jsDoc=void 0,Qe}function $t(E,P,B,ce,Qe){return E.modifiers!==P||E.name!==B||E.constraint!==ce||E.default!==Qe?or(Qt(P,B,ce,Qe),E):E}function _i(E,P,B,ce,Qe,Xt){const yr=Z(169);return yr.modifiers=Ua(E),yr.dotDotDotToken=P,yr.name=uc(B),yr.questionToken=ce,yr.type=Qe,yr.initializer=_x(Xt),KE(yr.name)?yr.transformFlags=1:yr.transformFlags=Ja(yr.modifiers)|Tr(yr.dotDotDotToken)|Yy(yr.name)|Tr(yr.questionToken)|Tr(yr.initializer)|(yr.questionToken??yr.type?1:0)|(yr.dotDotDotToken??yr.initializer?1024:0)|(M_(yr.modifiers)&31?8192:0),yr.jsDoc=void 0,yr}function ao(E,P,B,ce,Qe,Xt,yr){return E.modifiers!==P||E.dotDotDotToken!==B||E.name!==ce||E.questionToken!==Qe||E.type!==Xt||E.initializer!==yr?or(_i(P,B,ce,Qe,Xt,yr),E):E}function Oi(E){const P=K(170);return P.expression=i().parenthesizeLeftSideOfAccess(E,!1),P.transformFlags|=Tr(P.expression)|1|8192|33554432,P}function No(E,P){return E.expression!==P?or(Oi(P),E):E}function Mn(E,P,B,ce){const Qe=Z(171);return Qe.modifiers=Ua(E),Qe.name=uc(P),Qe.type=ce,Qe.questionToken=B,Qe.transformFlags=1,Qe.initializer=void 0,Qe.jsDoc=void 0,Qe}function Di(E,P,B,ce,Qe){return E.modifiers!==P||E.name!==B||E.questionToken!==ce||E.type!==Qe?Ar(Mn(P,B,ce,Qe),E):E}function Ar(E,P){return E!==P&&(E.initializer=P.initializer),or(E,P)}function sn(E,P,B,ce,Qe){const Xt=Z(172);Xt.modifiers=Ua(E),Xt.name=uc(P),Xt.questionToken=B&&$y(B)?B:void 0,Xt.exclamationToken=B&&qk(B)?B:void 0,Xt.type=ce,Xt.initializer=_x(Qe);const yr=Xt.flags&33554432||M_(Xt.modifiers)&128;return Xt.transformFlags=Ja(Xt.modifiers)|Yy(Xt.name)|Tr(Xt.initializer)|(yr||Xt.questionToken||Xt.exclamationToken||Xt.type?1:0)|(Za(Xt.name)||M_(Xt.modifiers)&256&&Xt.initializer?8192:0)|16777216,Xt.jsDoc=void 0,Xt}function tt(E,P,B,ce,Qe,Xt){return E.modifiers!==P||E.name!==B||E.questionToken!==(ce!==void 0&&$y(ce)?ce:void 0)||E.exclamationToken!==(ce!==void 0&&qk(ce)?ce:void 0)||E.type!==Qe||E.initializer!==Xt?or(sn(P,B,ce,Qe,Xt),E):E}function zt(E,P,B,ce,Qe,Xt){const yr=Z(173);return yr.modifiers=Ua(E),yr.name=uc(P),yr.questionToken=B,yr.typeParameters=Ua(ce),yr.parameters=Ua(Qe),yr.type=Xt,yr.transformFlags=1,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.typeArguments=void 0,yr}function Rn(E,P,B,ce,Qe,Xt,yr){return E.modifiers!==P||E.name!==B||E.questionToken!==ce||E.typeParameters!==Qe||E.parameters!==Xt||E.type!==yr?V(zt(P,B,ce,Qe,Xt,yr),E):E}function li(E,P,B,ce,Qe,Xt,yr,ro){const qs=Z(174);if(qs.modifiers=Ua(E),qs.asteriskToken=P,qs.name=uc(B),qs.questionToken=ce,qs.exclamationToken=void 0,qs.typeParameters=Ua(Qe),qs.parameters=U(Xt),qs.type=yr,qs.body=ro,!qs.body)qs.transformFlags=1;else{const p_=M_(qs.modifiers)&1024,Lb=!!qs.asteriskToken,Vm=p_&&Lb;qs.transformFlags=Ja(qs.modifiers)|Tr(qs.asteriskToken)|Yy(qs.name)|Tr(qs.questionToken)|Ja(qs.typeParameters)|Ja(qs.parameters)|Tr(qs.type)|Tr(qs.body)&-67108865|(Vm?128:p_?256:Lb?2048:0)|(qs.questionToken||qs.typeParameters||qs.type?1:0)|1024}return qs.typeArguments=void 0,qs.jsDoc=void 0,qs.locals=void 0,qs.nextContainer=void 0,qs.flowNode=void 0,qs.endFlowNode=void 0,qs.returnFlowNode=void 0,qs}function hi(E,P,B,ce,Qe,Xt,yr,ro,qs){return E.modifiers!==P||E.asteriskToken!==B||E.name!==ce||E.questionToken!==Qe||E.typeParameters!==Xt||E.parameters!==yr||E.type!==ro||E.body!==qs?Qi(li(P,B,ce,Qe,Xt,yr,ro,qs),E):E}function Qi(E,P){return E!==P&&(E.exclamationToken=P.exclamationToken),or(E,P)}function Io(E){const P=Z(175);return P.body=E,P.transformFlags=Tr(E)|16777216,P.modifiers=void 0,P.jsDoc=void 0,P.locals=void 0,P.nextContainer=void 0,P.endFlowNode=void 0,P.returnFlowNode=void 0,P}function ma(E,P){return E.body!==P?Wa(Io(P),E):E}function Wa(E,P){return E!==P&&(E.modifiers=P.modifiers),or(E,P)}function Sn(E,P,B){const ce=Z(176);return ce.modifiers=Ua(E),ce.parameters=U(P),ce.body=B,ce.transformFlags=Ja(ce.modifiers)|Ja(ce.parameters)|Tr(ce.body)&-67108865|1024,ce.typeParameters=void 0,ce.type=void 0,ce.typeArguments=void 0,ce.jsDoc=void 0,ce.locals=void 0,ce.nextContainer=void 0,ce.endFlowNode=void 0,ce.returnFlowNode=void 0,ce}function kn(E,P,B,ce){return E.modifiers!==P||E.parameters!==B||E.body!==ce?qe(Sn(P,B,ce),E):E}function qe(E,P){return E!==P&&(E.typeParameters=P.typeParameters,E.type=P.type),V(E,P)}function mt(E,P,B,ce,Qe){const Xt=Z(177);return Xt.modifiers=Ua(E),Xt.name=uc(P),Xt.parameters=U(B),Xt.type=ce,Xt.body=Qe,Xt.body?Xt.transformFlags=Ja(Xt.modifiers)|Yy(Xt.name)|Ja(Xt.parameters)|Tr(Xt.type)|Tr(Xt.body)&-67108865|(Xt.type?1:0):Xt.transformFlags=1,Xt.typeArguments=void 0,Xt.typeParameters=void 0,Xt.jsDoc=void 0,Xt.locals=void 0,Xt.nextContainer=void 0,Xt.flowNode=void 0,Xt.endFlowNode=void 0,Xt.returnFlowNode=void 0,Xt}function ft(E,P,B,ce,Qe,Xt){return E.modifiers!==P||E.name!==B||E.parameters!==ce||E.type!==Qe||E.body!==Xt?Ct(mt(P,B,ce,Qe,Xt),E):E}function Ct(E,P){return E!==P&&(E.typeParameters=P.typeParameters),V(E,P)}function le(E,P,B,ce){const Qe=Z(178);return Qe.modifiers=Ua(E),Qe.name=uc(P),Qe.parameters=U(B),Qe.body=ce,Qe.body?Qe.transformFlags=Ja(Qe.modifiers)|Yy(Qe.name)|Ja(Qe.parameters)|Tr(Qe.body)&-67108865|(Qe.type?1:0):Qe.transformFlags=1,Qe.typeArguments=void 0,Qe.typeParameters=void 0,Qe.type=void 0,Qe.jsDoc=void 0,Qe.locals=void 0,Qe.nextContainer=void 0,Qe.flowNode=void 0,Qe.endFlowNode=void 0,Qe.returnFlowNode=void 0,Qe}function Fe(E,P,B,ce,Qe){return E.modifiers!==P||E.name!==B||E.parameters!==ce||E.body!==Qe?pt(le(P,B,ce,Qe),E):E}function pt(E,P){return E!==P&&(E.typeParameters=P.typeParameters,E.type=P.type),V(E,P)}function j(E,P,B){const ce=Z(179);return ce.typeParameters=Ua(E),ce.parameters=Ua(P),ce.type=B,ce.transformFlags=1,ce.jsDoc=void 0,ce.locals=void 0,ce.nextContainer=void 0,ce.typeArguments=void 0,ce}function ot(E,P,B,ce){return E.typeParameters!==P||E.parameters!==B||E.type!==ce?V(j(P,B,ce),E):E}function Rt(E,P,B){const ce=Z(180);return ce.typeParameters=Ua(E),ce.parameters=Ua(P),ce.type=B,ce.transformFlags=1,ce.jsDoc=void 0,ce.locals=void 0,ce.nextContainer=void 0,ce.typeArguments=void 0,ce}function Ye(E,P,B,ce){return E.typeParameters!==P||E.parameters!==B||E.type!==ce?V(Rt(P,B,ce),E):E}function _t(E,P,B){const ce=Z(181);return ce.modifiers=Ua(E),ce.parameters=Ua(P),ce.type=B,ce.transformFlags=1,ce.jsDoc=void 0,ce.locals=void 0,ce.nextContainer=void 0,ce.typeArguments=void 0,ce}function Vt(E,P,B,ce){return E.parameters!==B||E.type!==ce||E.modifiers!==P?V(_t(P,B,ce),E):E}function vn(E,P){const B=K(204);return B.type=E,B.literal=P,B.transformFlags=1,B}function fn(E,P,B){return E.type!==P||E.literal!==B?or(vn(P,B),E):E}function _n(E){return Se(E)}function q(E,P,B){const ce=K(182);return ce.assertsModifier=E,ce.parameterName=uc(P),ce.type=B,ce.transformFlags=1,ce}function Oe(E,P,B,ce){return E.assertsModifier!==P||E.parameterName!==B||E.type!==ce?or(q(P,B,ce),E):E}function Lt(E,P){const B=K(183);return B.typeName=uc(E),B.typeArguments=P&&i().parenthesizeTypeArguments(U(P)),B.transformFlags=1,B}function L(E,P,B){return E.typeName!==P||E.typeArguments!==B?or(Lt(P,B),E):E}function _e(E,P,B){const ce=Z(184);return ce.typeParameters=Ua(E),ce.parameters=Ua(P),ce.type=B,ce.transformFlags=1,ce.modifiers=void 0,ce.jsDoc=void 0,ce.locals=void 0,ce.nextContainer=void 0,ce.typeArguments=void 0,ce}function J(E,P,B,ce){return E.typeParameters!==P||E.parameters!==B||E.type!==ce?me(_e(P,B,ce),E):E}function me(E,P){return E!==P&&(E.modifiers=P.modifiers),V(E,P)}function Ge(...E){return E.length===4?ke(...E):E.length===3?Tt(...E):N.fail("Incorrect number of arguments specified.")}function ke(E,P,B,ce){const Qe=Z(185);return Qe.modifiers=Ua(E),Qe.typeParameters=Ua(P),Qe.parameters=Ua(B),Qe.type=ce,Qe.transformFlags=1,Qe.jsDoc=void 0,Qe.locals=void 0,Qe.nextContainer=void 0,Qe.typeArguments=void 0,Qe}function Tt(E,P,B){return ke(void 0,E,P,B)}function kt(...E){return E.length===5?en(...E):E.length===4?bn(...E):N.fail("Incorrect number of arguments specified.")}function en(E,P,B,ce,Qe){return E.modifiers!==P||E.typeParameters!==B||E.parameters!==ce||E.type!==Qe?V(Ge(P,B,ce,Qe),E):E}function bn(E,P,B,ce){return en(E,E.modifiers,P,B,ce)}function Bn(E,P){const B=K(186);return B.exprName=E,B.typeArguments=P&&i().parenthesizeTypeArguments(P),B.transformFlags=1,B}function Hn(E,P,B){return E.exprName!==P||E.typeArguments!==B?or(Bn(P,B),E):E}function Ni(E){const P=Z(187);return P.members=U(E),P.transformFlags=1,P}function Ai(E,P){return E.members!==P?or(Ni(P),E):E}function ir(E){const P=K(188);return P.elementType=i().parenthesizeNonArrayTypeOfPostfixType(E),P.transformFlags=1,P}function jr(E,P){return E.elementType!==P?or(ir(P),E):E}function vo(E){const P=K(189);return P.elements=U(i().parenthesizeElementTypesOfTupleType(E)),P.transformFlags=1,P}function Ci(E,P){return E.elements!==P?or(vo(P),E):E}function Ii(E,P,B,ce){const Qe=Z(202);return Qe.dotDotDotToken=E,Qe.name=P,Qe.questionToken=B,Qe.type=ce,Qe.transformFlags=1,Qe.jsDoc=void 0,Qe}function Kr(E,P,B,ce,Qe){return E.dotDotDotToken!==P||E.name!==B||E.questionToken!==ce||E.type!==Qe?or(Ii(P,B,ce,Qe),E):E}function xo(E){const P=K(190);return P.type=i().parenthesizeTypeOfOptionalType(E),P.transformFlags=1,P}function Dn(E,P){return E.type!==P?or(xo(P),E):E}function Fs(E){const P=K(191);return P.type=E,P.transformFlags=1,P}function Ql(E,P){return E.type!==P?or(Fs(P),E):E}function Lo(E,P,B){const ce=K(E);return ce.types=O.createNodeArray(B(P)),ce.transformFlags=1,ce}function cs(E,P,B){return E.types!==P?or(Lo(E.kind,P,B),E):E}function Vs(E){return Lo(192,E,i().parenthesizeConstituentTypesOfUnionType)}function vl(E,P){return cs(E,P,i().parenthesizeConstituentTypesOfUnionType)}function uu(E){return Lo(193,E,i().parenthesizeConstituentTypesOfIntersectionType)}function ho(E,P){return cs(E,P,i().parenthesizeConstituentTypesOfIntersectionType)}function pa(E,P,B,ce){const Qe=K(194);return Qe.checkType=i().parenthesizeCheckTypeOfConditionalType(E),Qe.extendsType=i().parenthesizeExtendsTypeOfConditionalType(P),Qe.trueType=B,Qe.falseType=ce,Qe.transformFlags=1,Qe.locals=void 0,Qe.nextContainer=void 0,Qe}function du(E,P,B,ce,Qe){return E.checkType!==P||E.extendsType!==B||E.trueType!==ce||E.falseType!==Qe?or(pa(P,B,ce,Qe),E):E}function As(E){const P=K(195);return P.typeParameter=E,P.transformFlags=1,P}function La(E,P){return E.typeParameter!==P?or(As(P),E):E}function _l(E,P){const B=K(203);return B.head=E,B.templateSpans=U(P),B.transformFlags=1,B}function wf(E,P,B){return E.head!==P||E.templateSpans!==B?or(_l(P,B),E):E}function lc(E,P,B,ce,Qe=!1){const Xt=K(205);return Xt.argument=E,Xt.attributes=P,Xt.assertions&&Xt.assertions.assertClause&&Xt.attributes&&(Xt.assertions.assertClause=Xt.attributes),Xt.qualifier=B,Xt.typeArguments=ce&&i().parenthesizeTypeArguments(ce),Xt.isTypeOf=Qe,Xt.transformFlags=1,Xt}function Nl(E,P,B,ce,Qe,Xt=E.isTypeOf){return E.argument!==P||E.attributes!==B||E.qualifier!==ce||E.typeArguments!==Qe||E.isTypeOf!==Xt?or(lc(P,B,ce,Qe,Xt),E):E}function ul(E){const P=K(196);return P.type=E,P.transformFlags=1,P}function ko(E,P){return E.type!==P?or(ul(P),E):E}function nn(){const E=K(197);return E.transformFlags=1,E}function js(E,P){const B=K(198);return B.operator=E,B.type=E===148?i().parenthesizeOperandOfReadonlyTypeOperator(P):i().parenthesizeOperandOfTypeOperator(P),B.transformFlags=1,B}function nu(E,P){return E.type!==P?or(js(E.operator,P),E):E}function pu(E,P){const B=K(199);return B.objectType=i().parenthesizeNonArrayTypeOfPostfixType(E),B.indexType=P,B.transformFlags=1,B}function Ip(E,P,B){return E.objectType!==P||E.indexType!==B?or(pu(P,B),E):E}function Ms(E,P,B,ce,Qe,Xt){const yr=Z(200);return yr.readonlyToken=E,yr.typeParameter=P,yr.nameType=B,yr.questionToken=ce,yr.type=Qe,yr.members=Xt&&U(Xt),yr.transformFlags=1,yr.locals=void 0,yr.nextContainer=void 0,yr}function Rc(E,P,B,ce,Qe,Xt,yr){return E.readonlyToken!==P||E.typeParameter!==B||E.nameType!==ce||E.questionToken!==Qe||E.type!==Xt||E.members!==yr?or(Ms(P,B,ce,Qe,Xt,yr),E):E}function de(E){const P=K(201);return P.literal=E,P.transformFlags=1,P}function ee(E,P){return E.literal!==P?or(de(P),E):E}function we(E){const P=K(206);return P.elements=U(E),P.transformFlags|=Ja(P.elements)|1024|524288,P.transformFlags&32768&&(P.transformFlags|=65664),P}function Et(E,P){return E.elements!==P?or(we(P),E):E}function un(E){const P=K(207);return P.elements=U(E),P.transformFlags|=Ja(P.elements)|1024|524288,P}function Er(E,P){return E.elements!==P?or(un(P),E):E}function vr(E,P,B,ce){const Qe=Z(208);return Qe.dotDotDotToken=E,Qe.propertyName=uc(P),Qe.name=uc(B),Qe.initializer=_x(ce),Qe.transformFlags|=Tr(Qe.dotDotDotToken)|Yy(Qe.propertyName)|Yy(Qe.name)|Tr(Qe.initializer)|(Qe.dotDotDotToken?32768:0)|1024,Qe.flowNode=void 0,Qe}function Ur(E,P,B,ce,Qe){return E.propertyName!==B||E.dotDotDotToken!==P||E.name!==ce||E.initializer!==Qe?or(vr(P,B,ce,Qe),E):E}function xi(E,P){const B=K(209),ce=E&&tl(E),Qe=U(E,ce&&jc(ce)?!0:void 0);return B.elements=i().parenthesizeExpressionsOfCommaDelimitedList(Qe),B.multiLine=P,B.transformFlags|=Ja(B.elements),B}function Lr(E,P){return E.elements!==P?or(xi(P,E.multiLine),E):E}function $o(E,P){const B=Z(210);return B.properties=U(E),B.multiLine=P,B.transformFlags|=Ja(B.properties),B.jsDoc=void 0,B}function Tl(E,P){return E.properties!==P?or($o(P,E.multiLine),E):E}function Hc(E,P,B){const ce=Z(211);return ce.expression=E,ce.questionDotToken=P,ce.name=B,ce.transformFlags=Tr(ce.expression)|Tr(ce.questionDotToken)|(Ve(ce.name)?Ok(ce.name):Tr(ce.name)|536870912),ce.jsDoc=void 0,ce.flowNode=void 0,ce}function Us(E,P){const B=Hc(i().parenthesizeLeftSideOfAccess(E,!1),void 0,uc(P));return hP(E)&&(B.transformFlags|=384),B}function vc(E,P,B){return A4(E)?qc(E,P,E.questionDotToken,aa(B,Ve)):E.expression!==P||E.name!==B?or(Us(P,B),E):E}function Ss(E,P,B){const ce=Hc(i().parenthesizeLeftSideOfAccess(E,!0),P,uc(B));return ce.flags|=64,ce.transformFlags|=32,ce}function qc(E,P,B,ce){return N.assert(!!(E.flags&64),"Cannot update a PropertyAccessExpression using updatePropertyAccessChain. Use updatePropertyAccess instead."),E.expression!==P||E.questionDotToken!==B||E.name!==ce?or(Ss(P,B,ce),E):E}function op(E,P,B){const ce=Z(212);return ce.expression=E,ce.questionDotToken=P,ce.argumentExpression=B,ce.transformFlags|=Tr(ce.expression)|Tr(ce.questionDotToken)|Tr(ce.argumentExpression),ce.jsDoc=void 0,ce.flowNode=void 0,ce}function Wc(E,P){const B=op(i().parenthesizeLeftSideOfAccess(E,!1),void 0,aE(P));return hP(E)&&(B.transformFlags|=384),B}function cm(E,P,B){return QV(E)?Ce(E,P,E.questionDotToken,B):E.expression!==P||E.argumentExpression!==B?or(Wc(P,B),E):E}function gd(E,P,B){const ce=op(i().parenthesizeLeftSideOfAccess(E,!0),P,aE(B));return ce.flags|=64,ce.transformFlags|=32,ce}function Ce(E,P,B,ce){return N.assert(!!(E.flags&64),"Cannot update a ElementAccessExpression using updateElementAccessChain. Use updateElementAccess instead."),E.expression!==P||E.questionDotToken!==B||E.argumentExpression!==ce?or(gd(P,B,ce),E):E}function Wt(E,P,B,ce){const Qe=Z(213);return Qe.expression=E,Qe.questionDotToken=P,Qe.typeArguments=B,Qe.arguments=ce,Qe.transformFlags|=Tr(Qe.expression)|Tr(Qe.questionDotToken)|Ja(Qe.typeArguments)|Ja(Qe.arguments),Qe.typeArguments&&(Qe.transformFlags|=1),zd(Qe.expression)&&(Qe.transformFlags|=16384),Qe}function Jn(E,P,B){const ce=Wt(i().parenthesizeLeftSideOfAccess(E,!1),void 0,Ua(P),i().parenthesizeExpressionsOfCommaDelimitedList(U(B)));return gP(ce.expression)&&(ce.transformFlags|=8388608),ce}function yo(E,P,B,ce){return hS(E)?na(E,P,E.questionDotToken,B,ce):E.expression!==P||E.typeArguments!==B||E.arguments!==ce?or(Jn(P,B,ce),E):E}function Qo(E,P,B,ce){const Qe=Wt(i().parenthesizeLeftSideOfAccess(E,!0),P,Ua(B),i().parenthesizeExpressionsOfCommaDelimitedList(U(ce)));return Qe.flags|=64,Qe.transformFlags|=32,Qe}function na(E,P,B,ce,Qe){return N.assert(!!(E.flags&64),"Cannot update a CallExpression using updateCallChain. Use updateCall instead."),E.expression!==P||E.questionDotToken!==B||E.typeArguments!==ce||E.arguments!==Qe?or(Qo(P,B,ce,Qe),E):E}function Zl(E,P,B){const ce=Z(214);return ce.expression=i().parenthesizeExpressionOfNew(E),ce.typeArguments=Ua(P),ce.arguments=B?i().parenthesizeExpressionsOfCommaDelimitedList(B):void 0,ce.transformFlags|=Tr(ce.expression)|Ja(ce.typeArguments)|Ja(ce.arguments)|32,ce.typeArguments&&(ce.transformFlags|=1),ce}function yc(E,P,B,ce){return E.expression!==P||E.typeArguments!==B||E.arguments!==ce?or(Zl(P,B,ce),E):E}function dl(E,P,B){const ce=K(215);return ce.tag=i().parenthesizeLeftSideOfAccess(E,!1),ce.typeArguments=Ua(P),ce.template=B,ce.transformFlags|=Tr(ce.tag)|Ja(ce.typeArguments)|Tr(ce.template)|1024,ce.typeArguments&&(ce.transformFlags|=1),uU(ce.template)&&(ce.transformFlags|=128),ce}function yl(E,P,B,ce){return E.tag!==P||E.typeArguments!==B||E.template!==ce?or(dl(P,B,ce),E):E}function Vl(E,P){const B=K(216);return B.expression=i().parenthesizeOperandOfPrefixUnary(P),B.type=E,B.transformFlags|=Tr(B.expression)|Tr(B.type)|1,B}function ec(E,P,B){return E.type!==P||E.expression!==B?or(Vl(P,B),E):E}function Jc(E){const P=K(217);return P.expression=E,P.transformFlags=Tr(P.expression),P.jsDoc=void 0,P}function ff(E,P){return E.expression!==P?or(Jc(P),E):E}function jd(E,P,B,ce,Qe,Xt,yr){const ro=Z(218);ro.modifiers=Ua(E),ro.asteriskToken=P,ro.name=uc(B),ro.typeParameters=Ua(ce),ro.parameters=U(Qe),ro.type=Xt,ro.body=yr;const qs=M_(ro.modifiers)&1024,p_=!!ro.asteriskToken,Lb=qs&&p_;return ro.transformFlags=Ja(ro.modifiers)|Tr(ro.asteriskToken)|Yy(ro.name)|Ja(ro.typeParameters)|Ja(ro.parameters)|Tr(ro.type)|Tr(ro.body)&-67108865|(Lb?128:qs?256:p_?2048:0)|(ro.typeParameters||ro.type?1:0)|4194304,ro.typeArguments=void 0,ro.jsDoc=void 0,ro.locals=void 0,ro.nextContainer=void 0,ro.flowNode=void 0,ro.endFlowNode=void 0,ro.returnFlowNode=void 0,ro}function Cd(E,P,B,ce,Qe,Xt,yr,ro){return E.name!==ce||E.modifiers!==P||E.asteriskToken!==B||E.typeParameters!==Qe||E.parameters!==Xt||E.type!==yr||E.body!==ro?V(jd(P,B,ce,Qe,Xt,yr,ro),E):E}function Of(E,P,B,ce,Qe,Xt){const yr=Z(219);yr.modifiers=Ua(E),yr.typeParameters=Ua(P),yr.parameters=U(B),yr.type=ce,yr.equalsGreaterThanToken=Qe??Se(39),yr.body=i().parenthesizeConciseBodyOfArrowFunction(Xt);const ro=M_(yr.modifiers)&1024;return yr.transformFlags=Ja(yr.modifiers)|Ja(yr.typeParameters)|Ja(yr.parameters)|Tr(yr.type)|Tr(yr.equalsGreaterThanToken)|Tr(yr.body)&-67108865|(yr.typeParameters||yr.type?1:0)|(ro?16640:0)|1024,yr.typeArguments=void 0,yr.jsDoc=void 0,yr.locals=void 0,yr.nextContainer=void 0,yr.flowNode=void 0,yr.endFlowNode=void 0,yr.returnFlowNode=void 0,yr}function U_(E,P,B,ce,Qe,Xt,yr){return E.modifiers!==P||E.typeParameters!==B||E.parameters!==ce||E.type!==Qe||E.equalsGreaterThanToken!==Xt||E.body!==yr?V(Of(P,B,ce,Qe,Xt,yr),E):E}function Ch(E){const P=K(220);return P.expression=i().parenthesizeOperandOfPrefixUnary(E),P.transformFlags|=Tr(P.expression),P}function $g(E,P){return E.expression!==P?or(Ch(P),E):E}function Bu(E){const P=K(221);return P.expression=i().parenthesizeOperandOfPrefixUnary(E),P.transformFlags|=Tr(P.expression),P}function Qg(E,P){return E.expression!==P?or(Bu(P),E):E}function xp(E){const P=K(222);return P.expression=i().parenthesizeOperandOfPrefixUnary(E),P.transformFlags|=Tr(P.expression),P}function _g(E,P){return E.expression!==P?or(xp(P),E):E}function Ud(E){const P=K(223);return P.expression=i().parenthesizeOperandOfPrefixUnary(E),P.transformFlags|=Tr(P.expression)|256|128|2097152,P}function te(E,P){return E.expression!==P?or(Ud(P),E):E}function ct(E,P){const B=K(224);return B.operator=E,B.operand=i().parenthesizeOperandOfPrefixUnary(P),B.transformFlags|=Tr(B.operand),(E===46||E===47)&&Ve(B.operand)&&!sl(B.operand)&&!qg(B.operand)&&(B.transformFlags|=268435456),B}function Ft(E,P){return E.operand!==P?or(ct(E.operator,P),E):E}function jt(E,P){const B=K(225);return B.operator=P,B.operand=i().parenthesizeOperandOfPostfixUnary(E),B.transformFlags|=Tr(B.operand),Ve(B.operand)&&!sl(B.operand)&&!qg(B.operand)&&(B.transformFlags|=268435456),B}function F(E,P){return E.operand!==P?or(jt(P,E.operator),E):E}function Te(E,P,B){const ce=Z(226),Qe=z2(P),Xt=Qe.kind;return ce.left=i().parenthesizeLeftSideOfBinary(Xt,E),ce.operatorToken=Qe,ce.right=i().parenthesizeRightSideOfBinary(Xt,ce.left,B),ce.transformFlags|=Tr(ce.left)|Tr(ce.operatorToken)|Tr(ce.right),Xt===61?ce.transformFlags|=32:Xt===64?Oa(ce.left)?ce.transformFlags|=5248|st(ce.left):_d(ce.left)&&(ce.transformFlags|=5120|st(ce.left)):Xt===43||Xt===68?ce.transformFlags|=512:BC(Xt)&&(ce.transformFlags|=16),Xt===103&&Ji(ce.left)&&(ce.transformFlags|=536870912),ce.jsDoc=void 0,ce}function st(E){return cw(E)?65536:0}function Jt(E,P,B,ce){return E.left!==P||E.operatorToken!==B||E.right!==ce?or(Te(P,B,ce),E):E}function rr(E,P,B,ce,Qe){const Xt=K(227);return Xt.condition=i().parenthesizeConditionOfConditionalExpression(E),Xt.questionToken=P??Se(58),Xt.whenTrue=i().parenthesizeBranchOfConditionalExpression(B),Xt.colonToken=ce??Se(59),Xt.whenFalse=i().parenthesizeBranchOfConditionalExpression(Qe),Xt.transformFlags|=Tr(Xt.condition)|Tr(Xt.questionToken)|Tr(Xt.whenTrue)|Tr(Xt.colonToken)|Tr(Xt.whenFalse),Xt}function oi(E,P,B,ce,Qe,Xt){return E.condition!==P||E.questionToken!==B||E.whenTrue!==ce||E.colonToken!==Qe||E.whenFalse!==Xt?or(rr(P,B,ce,Qe,Xt),E):E}function $r(E,P){const B=K(228);return B.head=E,B.templateSpans=U(P),B.transformFlags|=Tr(B.head)|Ja(B.templateSpans)|1024,B}function io(E,P,B){return E.head!==P||E.templateSpans!==B?or($r(P,B),E):E}function Fa(E,P,B,ce=0){N.assert(!(ce&-7177),"Unsupported template flags.");let Qe;if(B!==void 0&&B!==P&&(Qe=kGe(E,B),typeof Qe=="object"))return N.fail("Invalid raw text");if(P===void 0){if(Qe===void 0)return N.fail("Arguments 'text' and 'rawText' may not both be undefined.");P=Qe}else Qe!==void 0&&N.assert(P===Qe,"Expected argument 'text' to be the normalized (i.e. 'cooked') version of argument 'rawText'.");return P}function za(E){let P=1024;return E&&(P|=128),P}function Ol(E,P,B,ce){const Qe=At(E);return Qe.text=P,Qe.rawText=B,Qe.templateFlags=ce&7176,Qe.transformFlags=za(Qe.templateFlags),Qe}function fu(E,P,B,ce){const Qe=Z(E);return Qe.text=P,Qe.rawText=B,Qe.templateFlags=ce&7176,Qe.transformFlags=za(Qe.templateFlags),Qe}function Dc(E,P,B,ce){return E===15?fu(E,P,B,ce):Ol(E,P,B,ce)}function Rp(E,P,B){return E=Fa(16,E,P,B),Dc(16,E,P,B)}function Hd(E,P,B){return E=Fa(16,E,P,B),Dc(17,E,P,B)}function pb(E,P,B){return E=Fa(16,E,P,B),Dc(18,E,P,B)}function us(E,P,B){return E=Fa(16,E,P,B),fu(15,E,P,B)}function km(E,P){N.assert(!E||!!P,"A `YieldExpression` with an asteriskToken must have an expression.");const B=K(229);return B.expression=P&&i().parenthesizeExpressionForDisallowedComma(P),B.asteriskToken=E,B.transformFlags|=Tr(B.expression)|Tr(B.asteriskToken)|1024|128|1048576,B}function wm(E,P,B){return E.expression!==B||E.asteriskToken!==P?or(km(P,B),E):E}function Ui(E){const P=K(230);return P.expression=i().parenthesizeExpressionForDisallowedComma(E),P.transformFlags|=Tr(P.expression)|1024|32768,P}function Zg(E,P){return E.expression!==P?or(Ui(P),E):E}function ay(E,P,B,ce,Qe){const Xt=Z(231);return Xt.modifiers=Ua(E),Xt.name=uc(P),Xt.typeParameters=Ua(B),Xt.heritageClauses=Ua(ce),Xt.members=U(Qe),Xt.transformFlags|=Ja(Xt.modifiers)|Yy(Xt.name)|Ja(Xt.typeParameters)|Ja(Xt.heritageClauses)|Ja(Xt.members)|(Xt.typeParameters?1:0)|1024,Xt.jsDoc=void 0,Xt}function Om(E,P,B,ce,Qe,Xt){return E.modifiers!==P||E.name!==B||E.typeParameters!==ce||E.heritageClauses!==Qe||E.members!==Xt?or(ay(P,B,ce,Qe,Xt),E):E}function x1(){return K(232)}function R1(E,P){const B=K(233);return B.expression=i().parenthesizeLeftSideOfAccess(E,!1),B.typeArguments=P&&i().parenthesizeTypeArguments(P),B.transformFlags|=Tr(B.expression)|Ja(B.typeArguments)|1024,B}function mf(E,P,B){return E.expression!==P||E.typeArguments!==B?or(R1(P,B),E):E}function H_(E,P){const B=K(234);return B.expression=E,B.type=P,B.transformFlags|=Tr(B.expression)|Tr(B.type)|1,B}function _f(E,P,B){return E.expression!==P||E.type!==B?or(H_(P,B),E):E}function ev(E){const P=K(235);return P.expression=i().parenthesizeLeftSideOfAccess(E,!1),P.transformFlags|=Tr(P.expression)|1,P}function ze(E,P){return x4(E)?yn(E,P):E.expression!==P?or(ev(P),E):E}function Ze(E,P){const B=K(238);return B.expression=E,B.type=P,B.transformFlags|=Tr(B.expression)|Tr(B.type)|1,B}function Mt(E,P,B){return E.expression!==P||E.type!==B?or(Ze(P,B),E):E}function Ht(E){const P=K(235);return P.flags|=64,P.expression=i().parenthesizeLeftSideOfAccess(E,!0),P.transformFlags|=Tr(P.expression)|1,P}function yn(E,P){return N.assert(!!(E.flags&64),"Cannot update a NonNullExpression using updateNonNullChain. Use updateNonNullExpression instead."),E.expression!==P?or(Ht(P),E):E}function Yn(E,P){const B=K(236);switch(B.keywordToken=E,B.name=P,B.transformFlags|=Tr(B.name),E){case 105:B.transformFlags|=1024;break;case 102:B.transformFlags|=32;break;default:return N.assertNever(E)}return B.flowNode=void 0,B}function gn(E,P){return E.name!==P?or(Yn(E.keywordToken,P),E):E}function $n(E,P){const B=K(239);return B.expression=E,B.literal=P,B.transformFlags|=Tr(B.expression)|Tr(B.literal)|1024,B}function fi(E,P,B){return E.expression!==P||E.literal!==B?or($n(P,B),E):E}function cr(){const E=K(240);return E.transformFlags|=1024,E}function ri(E,P){const B=K(241);return B.statements=U(E),B.multiLine=P,B.transformFlags|=Ja(B.statements),B.jsDoc=void 0,B.locals=void 0,B.nextContainer=void 0,B}function fr(E,P){return E.statements!==P?or(ri(P,E.multiLine),E):E}function Zo(E,P){const B=K(243);return B.modifiers=Ua(E),B.declarationList=To(P)?ap(P):P,B.transformFlags|=Ja(B.modifiers)|Tr(B.declarationList),M_(B.modifiers)&128&&(B.transformFlags=1),B.jsDoc=void 0,B.flowNode=void 0,B}function Ka(E,P,B){return E.modifiers!==P||E.declarationList!==B?or(Zo(P,B),E):E}function Zu(){const E=K(242);return E.jsDoc=void 0,E}function mu(E){const P=K(244);return P.expression=i().parenthesizeExpressionOfExpressionStatement(E),P.transformFlags|=Tr(P.expression),P.jsDoc=void 0,P.flowNode=void 0,P}function tv(E,P){return E.expression!==P?or(mu(P),E):E}function j0(E,P,B){const ce=K(245);return ce.expression=E,ce.thenStatement=Mb(P),ce.elseStatement=Mb(B),ce.transformFlags|=Tr(ce.expression)|Tr(ce.thenStatement)|Tr(ce.elseStatement),ce.jsDoc=void 0,ce.flowNode=void 0,ce}function JI(E,P,B,ce){return E.expression!==P||E.thenStatement!==B||E.elseStatement!==ce?or(j0(P,B,ce),E):E}function U0(E,P){const B=K(246);return B.statement=Mb(E),B.expression=P,B.transformFlags|=Tr(B.statement)|Tr(B.expression),B.jsDoc=void 0,B.flowNode=void 0,B}function QD(E,P,B){return E.statement!==P||E.expression!==B?or(U0(P,B),E):E}function ZD(E,P){const B=K(247);return B.expression=E,B.statement=Mb(P),B.transformFlags|=Tr(B.expression)|Tr(B.statement),B.jsDoc=void 0,B.flowNode=void 0,B}function eN(E,P,B){return E.expression!==P||E.statement!==B?or(ZD(P,B),E):E}function hT(E,P,B,ce){const Qe=K(248);return Qe.initializer=E,Qe.condition=P,Qe.incrementor=B,Qe.statement=Mb(ce),Qe.transformFlags|=Tr(Qe.initializer)|Tr(Qe.condition)|Tr(Qe.incrementor)|Tr(Qe.statement),Qe.jsDoc=void 0,Qe.locals=void 0,Qe.nextContainer=void 0,Qe.flowNode=void 0,Qe}function D1(E,P,B,ce,Qe){return E.initializer!==P||E.condition!==B||E.incrementor!==ce||E.statement!==Qe?or(hT(P,B,ce,Qe),E):E}function KI(E,P,B){const ce=K(249);return ce.initializer=E,ce.expression=P,ce.statement=Mb(B),ce.transformFlags|=Tr(ce.initializer)|Tr(ce.expression)|Tr(ce.statement),ce.jsDoc=void 0,ce.locals=void 0,ce.nextContainer=void 0,ce.flowNode=void 0,ce}function tN(E,P,B,ce){return E.initializer!==P||E.expression!==B||E.statement!==ce?or(KI(P,B,ce),E):E}function XI(E,P,B,ce){const Qe=K(250);return Qe.awaitModifier=E,Qe.initializer=P,Qe.expression=i().parenthesizeExpressionForDisallowedComma(B),Qe.statement=Mb(ce),Qe.transformFlags|=Tr(Qe.awaitModifier)|Tr(Qe.initializer)|Tr(Qe.expression)|Tr(Qe.statement)|1024,E&&(Qe.transformFlags|=128),Qe.jsDoc=void 0,Qe.locals=void 0,Qe.nextContainer=void 0,Qe.flowNode=void 0,Qe}function YI(E,P,B,ce,Qe){return E.awaitModifier!==P||E.initializer!==B||E.expression!==ce||E.statement!==Qe?or(XI(P,B,ce,Qe),E):E}function $I(E){const P=K(251);return P.label=uc(E),P.transformFlags|=Tr(P.label)|4194304,P.jsDoc=void 0,P.flowNode=void 0,P}function QI(E,P){return E.label!==P?or($I(P),E):E}function gT(E){const P=K(252);return P.label=uc(E),P.transformFlags|=Tr(P.label)|4194304,P.jsDoc=void 0,P.flowNode=void 0,P}function ZI(E,P){return E.label!==P?or(gT(P),E):E}function N1(E){const P=K(253);return P.expression=E,P.transformFlags|=Tr(P.expression)|128|4194304,P.jsDoc=void 0,P.flowNode=void 0,P}function C1(E,P){return E.expression!==P?or(N1(P),E):E}function fb(E,P){const B=K(254);return B.expression=E,B.statement=Mb(P),B.transformFlags|=Tr(B.expression)|Tr(B.statement),B.jsDoc=void 0,B.flowNode=void 0,B}function mb(E,P,B){return E.expression!==P||E.statement!==B?or(fb(P,B),E):E}function hg(E,P){const B=K(255);return B.expression=i().parenthesizeExpressionForDisallowedComma(E),B.caseBlock=P,B.transformFlags|=Tr(B.expression)|Tr(B.caseBlock),B.jsDoc=void 0,B.flowNode=void 0,B.possiblyExhaustive=!1,B}function H0(E,P,B){return E.expression!==P||E.caseBlock!==B?or(hg(P,B),E):E}function ts(E,P){const B=K(256);return B.label=uc(E),B.statement=Mb(P),B.transformFlags|=Tr(B.label)|Tr(B.statement),B.jsDoc=void 0,B.flowNode=void 0,B}function vT(E,P,B){return E.label!==P||E.statement!==B?or(ts(P,B),E):E}function nN(E){const P=K(257);return P.expression=E,P.transformFlags|=Tr(P.expression),P.jsDoc=void 0,P.flowNode=void 0,P}function q0(E,P){return E.expression!==P?or(nN(P),E):E}function nv(E,P,B){const ce=K(258);return ce.tryBlock=E,ce.catchClause=P,ce.finallyBlock=B,ce.transformFlags|=Tr(ce.tryBlock)|Tr(ce.catchClause)|Tr(ce.finallyBlock),ce.jsDoc=void 0,ce.flowNode=void 0,ce}function Ph(E,P,B,ce){return E.tryBlock!==P||E.catchClause!==B||E.finallyBlock!==ce?or(nv(P,B,ce),E):E}function Wf(){const E=K(259);return E.jsDoc=void 0,E.flowNode=void 0,E}function qd(E,P,B,ce){const Qe=Z(260);return Qe.name=uc(E),Qe.exclamationToken=P,Qe.type=B,Qe.initializer=_x(ce),Qe.transformFlags|=Yy(Qe.name)|Tr(Qe.initializer)|(Qe.exclamationToken??Qe.type?1:0),Qe.jsDoc=void 0,Qe}function Dp(E,P,B,ce,Qe){return E.name!==P||E.type!==ce||E.exclamationToken!==B||E.initializer!==Qe?or(qd(P,B,ce,Qe),E):E}function ap(E,P=0){const B=K(261);return B.flags|=P&7,B.declarations=U(E),B.transformFlags|=Ja(B.declarations)|4194304,P&7&&(B.transformFlags|=263168),P&4&&(B.transformFlags|=4),B}function sy(E,P){return E.declarations!==P?or(ap(P,E.flags),E):E}function yT(E,P,B,ce,Qe,Xt,yr){const ro=Z(262);if(ro.modifiers=Ua(E),ro.asteriskToken=P,ro.name=uc(B),ro.typeParameters=Ua(ce),ro.parameters=U(Qe),ro.type=Xt,ro.body=yr,!ro.body||M_(ro.modifiers)&128)ro.transformFlags=1;else{const qs=M_(ro.modifiers)&1024,p_=!!ro.asteriskToken,Lb=qs&&p_;ro.transformFlags=Ja(ro.modifiers)|Tr(ro.asteriskToken)|Yy(ro.name)|Ja(ro.typeParameters)|Ja(ro.parameters)|Tr(ro.type)|Tr(ro.body)&-67108865|(Lb?128:qs?256:p_?2048:0)|(ro.typeParameters||ro.type?1:0)|4194304}return ro.typeArguments=void 0,ro.jsDoc=void 0,ro.locals=void 0,ro.nextContainer=void 0,ro.endFlowNode=void 0,ro.returnFlowNode=void 0,ro}function rN(E,P,B,ce,Qe,Xt,yr,ro){return E.modifiers!==P||E.asteriskToken!==B||E.name!==ce||E.typeParameters!==Qe||E.parameters!==Xt||E.type!==yr||E.body!==ro?ex(yT(P,B,ce,Qe,Xt,yr,ro),E):E}function ex(E,P){return E!==P&&E.modifiers===P.modifiers&&(E.modifiers=P.modifiers),V(E,P)}function _b(E,P,B,ce,Qe){const Xt=Z(263);return Xt.modifiers=Ua(E),Xt.name=uc(P),Xt.typeParameters=Ua(B),Xt.heritageClauses=Ua(ce),Xt.members=U(Qe),M_(Xt.modifiers)&128?Xt.transformFlags=1:(Xt.transformFlags|=Ja(Xt.modifiers)|Yy(Xt.name)|Ja(Xt.typeParameters)|Ja(Xt.heritageClauses)|Ja(Xt.members)|(Xt.typeParameters?1:0)|1024,Xt.transformFlags&8192&&(Xt.transformFlags|=1)),Xt.jsDoc=void 0,Xt}function J0(E,P,B,ce,Qe,Xt){return E.modifiers!==P||E.name!==B||E.typeParameters!==ce||E.heritageClauses!==Qe||E.members!==Xt?or(_b(P,B,ce,Qe,Xt),E):E}function tx(E,P,B,ce,Qe){const Xt=Z(264);return Xt.modifiers=Ua(E),Xt.name=uc(P),Xt.typeParameters=Ua(B),Xt.heritageClauses=Ua(ce),Xt.members=U(Qe),Xt.transformFlags=1,Xt.jsDoc=void 0,Xt}function bc(E,P,B,ce,Qe,Xt){return E.modifiers!==P||E.name!==B||E.typeParameters!==ce||E.heritageClauses!==Qe||E.members!==Xt?or(tx(P,B,ce,Qe,Xt),E):E}function ly(E,P,B,ce){const Qe=Z(265);return Qe.modifiers=Ua(E),Qe.name=uc(P),Qe.typeParameters=Ua(B),Qe.type=ce,Qe.transformFlags=1,Qe.jsDoc=void 0,Qe.locals=void 0,Qe.nextContainer=void 0,Qe}function nx(E,P,B,ce,Qe){return E.modifiers!==P||E.name!==B||E.typeParameters!==ce||E.type!==Qe?or(ly(P,B,ce,Qe),E):E}function a_(E,P,B){const ce=Z(266);return ce.modifiers=Ua(E),ce.name=uc(P),ce.members=U(B),ce.transformFlags|=Ja(ce.modifiers)|Tr(ce.name)|Ja(ce.members)|1,ce.transformFlags&=-67108865,ce.jsDoc=void 0,ce}function bT(E,P,B,ce){return E.modifiers!==P||E.name!==B||E.members!==ce?or(a_(P,B,ce),E):E}function Je(E,P,B,ce=0){const Qe=Z(267);return Qe.modifiers=Ua(E),Qe.flags|=ce&2088,Qe.name=P,Qe.body=B,M_(Qe.modifiers)&128?Qe.transformFlags=1:Qe.transformFlags|=Ja(Qe.modifiers)|Tr(Qe.name)|Tr(Qe.body)|1,Qe.transformFlags&=-67108865,Qe.jsDoc=void 0,Qe.locals=void 0,Qe.nextContainer=void 0,Qe}function s_(E,P,B,ce){return E.modifiers!==P||E.name!==B||E.body!==ce?or(Je(P,B,ce,E.flags),E):E}function _u(E){const P=K(268);return P.statements=U(E),P.transformFlags|=Ja(P.statements),P.jsDoc=void 0,P}function K0(E,P){return E.statements!==P?or(_u(P),E):E}function rx(E){const P=K(269);return P.clauses=U(E),P.transformFlags|=Ja(P.clauses),P.locals=void 0,P.nextContainer=void 0,P}function hb(E,P){return E.clauses!==P?or(rx(P),E):E}function cy(E){const P=Z(270);return P.name=uc(E),P.transformFlags|=Ok(P.name)|1,P.modifiers=void 0,P.jsDoc=void 0,P}function uy(E,P){return E.name!==P?P2(cy(P),E):E}function P2(E,P){return E!==P&&(E.modifiers=P.modifiers),or(E,P)}function Xa(E,P,B,ce){const Qe=Z(271);return Qe.modifiers=Ua(E),Qe.name=uc(B),Qe.isTypeOnly=P,Qe.moduleReference=ce,Qe.transformFlags|=Ja(Qe.modifiers)|Ok(Qe.name)|Tr(Qe.moduleReference),Ah(Qe.moduleReference)||(Qe.transformFlags|=1),Qe.transformFlags&=-67108865,Qe.jsDoc=void 0,Qe}function l_(E,P,B,ce,Qe){return E.modifiers!==P||E.isTypeOnly!==B||E.name!==ce||E.moduleReference!==Qe?or(Xa(P,B,ce,Qe),E):E}function ET(E,P,B,ce){const Qe=K(272);return Qe.modifiers=Ua(E),Qe.importClause=P,Qe.moduleSpecifier=B,Qe.attributes=Qe.assertClause=ce,Qe.transformFlags|=Tr(Qe.importClause)|Tr(Qe.moduleSpecifier),Qe.transformFlags&=-67108865,Qe.jsDoc=void 0,Qe}function ST(E,P,B,ce,Qe){return E.modifiers!==P||E.importClause!==B||E.moduleSpecifier!==ce||E.attributes!==Qe?or(ET(P,B,ce,Qe),E):E}function X0(E,P,B){const ce=Z(273);return ce.isTypeOnly=E,ce.name=P,ce.namedBindings=B,ce.transformFlags|=Tr(ce.name)|Tr(ce.namedBindings),E&&(ce.transformFlags|=1),ce.transformFlags&=-67108865,ce}function TT(E,P,B,ce){return E.isTypeOnly!==P||E.name!==B||E.namedBindings!==ce?or(X0(P,B,ce),E):E}function um(E,P){const B=K(300);return B.elements=U(E),B.multiLine=P,B.token=132,B.transformFlags|=4,B}function dm(E,P,B){return E.elements!==P||E.multiLine!==B?or(um(P,B),E):E}function rv(E,P){const B=K(301);return B.name=E,B.value=P,B.transformFlags|=4,B}function ix(E,P,B){return E.name!==P||E.value!==B?or(rv(P,B),E):E}function c_(E,P){const B=K(302);return B.assertClause=E,B.multiLine=P,B}function iN(E,P,B){return E.assertClause!==P||E.multiLine!==B?or(c_(P,B),E):E}function P1(E,P,B){const ce=K(300);return ce.token=B??118,ce.elements=U(E),ce.multiLine=P,ce.transformFlags|=4,ce}function Xi(E,P,B){return E.elements!==P||E.multiLine!==B?or(P1(P,B,E.token),E):E}function ei(E,P){const B=K(301);return B.name=E,B.value=P,B.transformFlags|=4,B}function Mh(E,P,B){return E.name!==P||E.value!==B?or(ei(P,B),E):E}function Jd(E){const P=Z(274);return P.name=E,P.transformFlags|=Tr(P.name),P.transformFlags&=-67108865,P}function M2(E,P){return E.name!==P?or(Jd(P),E):E}function iv(E){const P=Z(280);return P.name=E,P.transformFlags|=Tr(P.name)|32,P.transformFlags&=-67108865,P}function L2(E,P){return E.name!==P?or(iv(P),E):E}function gb(E){const P=K(275);return P.elements=U(E),P.transformFlags|=Ja(P.elements),P.transformFlags&=-67108865,P}function bl(E,P){return E.elements!==P?or(gb(P),E):E}function Up(E,P,B){const ce=Z(276);return ce.isTypeOnly=E,ce.propertyName=P,ce.name=B,ce.transformFlags|=Tr(ce.propertyName)|Tr(ce.name),ce.transformFlags&=-67108865,ce}function gg(E,P,B,ce){return E.isTypeOnly!==P||E.propertyName!==B||E.name!==ce?or(Up(P,B,ce),E):E}function pm(E,P,B){const ce=Z(277);return ce.modifiers=Ua(E),ce.isExportEquals=P,ce.expression=P?i().parenthesizeRightSideOfBinary(64,void 0,B):i().parenthesizeExpressionOfExportDefault(B),ce.transformFlags|=Ja(ce.modifiers)|Tr(ce.expression),ce.transformFlags&=-67108865,ce.jsDoc=void 0,ce}function vb(E,P,B){return E.modifiers!==P||E.expression!==B?or(pm(P,E.isExportEquals,B),E):E}function Wm(E,P,B,ce,Qe){const Xt=Z(278);return Xt.modifiers=Ua(E),Xt.isTypeOnly=P,Xt.exportClause=B,Xt.moduleSpecifier=ce,Xt.attributes=Xt.assertClause=Qe,Xt.transformFlags|=Ja(Xt.modifiers)|Tr(Xt.exportClause)|Tr(Xt.moduleSpecifier),Xt.transformFlags&=-67108865,Xt.jsDoc=void 0,Xt}function ov(E,P,B,ce,Qe,Xt){return E.modifiers!==P||E.isTypeOnly!==B||E.exportClause!==ce||E.moduleSpecifier!==Qe||E.attributes!==Xt?M1(Wm(P,B,ce,Qe,Xt),E):E}function M1(E,P){return E!==P&&E.modifiers===P.modifiers&&(E.modifiers=P.modifiers),or(E,P)}function AT(E){const P=K(279);return P.elements=U(E),P.transformFlags|=Ja(P.elements),P.transformFlags&=-67108865,P}function vg(E,P){return E.elements!==P?or(AT(P),E):E}function ox(E,P,B){const ce=K(281);return ce.isTypeOnly=E,ce.propertyName=uc(P),ce.name=uc(B),ce.transformFlags|=Tr(ce.propertyName)|Tr(ce.name),ce.transformFlags&=-67108865,ce.jsDoc=void 0,ce}function yg(E,P,B,ce){return E.isTypeOnly!==P||E.propertyName!==B||E.name!==ce?or(ox(P,B,ce),E):E}function q_(){const E=Z(282);return E.jsDoc=void 0,E}function dy(E){const P=K(283);return P.expression=E,P.transformFlags|=Tr(P.expression),P.transformFlags&=-67108865,P}function oN(E,P){return E.expression!==P?or(dy(P),E):E}function aN(E){return K(E)}function sN(E,P,B=!1){const ce=IT(E,B?P&&i().parenthesizeNonArrayTypeOfPostfixType(P):P);return ce.postfix=B,ce}function IT(E,P){const B=K(E);return B.type=P,B}function Zs(E,P,B){return P.type!==B?or(sN(E,B,P.postfix),P):P}function L1(E,P,B){return P.type!==B?or(IT(E,B),P):P}function xT(E,P){const B=Z(324);return B.parameters=Ua(E),B.type=P,B.transformFlags=Ja(B.parameters)|(B.type?1:0),B.jsDoc=void 0,B.locals=void 0,B.nextContainer=void 0,B.typeArguments=void 0,B}function Fm(E,P,B){return E.parameters!==P||E.type!==B?or(xT(P,B),E):E}function yb(E,P=!1){const B=Z(329);return B.jsDocPropertyTags=Ua(E),B.isArrayType=P,B}function lN(E,P,B){return E.jsDocPropertyTags!==P||E.isArrayType!==B?or(yb(P,B),E):E}function RT(E){const P=K(316);return P.type=E,P}function k2(E,P){return E.type!==P?or(RT(P),E):E}function hr(E,P,B){const ce=Z(330);return ce.typeParameters=Ua(E),ce.parameters=U(P),ce.type=B,ce.jsDoc=void 0,ce.locals=void 0,ce.nextContainer=void 0,ce}function ru(E,P,B,ce){return E.typeParameters!==P||E.parameters!==B||E.type!==ce?or(hr(P,B,ce),E):E}function to(E){const P=fH(E.kind);return E.tagName.escapedText===hl(P)?E.tagName:Ne(P)}function hf(E,P,B){const ce=K(E);return ce.tagName=P,ce.comment=B,ce}function py(E,P,B){const ce=Z(E);return ce.tagName=P,ce.comment=B,ce}function J_(E,P,B,ce){const Qe=hf(352,E??Ne("template"),ce);return Qe.constraint=P,Qe.typeParameters=U(B),Qe}function ur(E,P=to(E),B,ce,Qe){return E.tagName!==P||E.constraint!==B||E.typeParameters!==ce||E.comment!==Qe?or(J_(P,B,ce,Qe),E):E}function DT(E,P,B,ce){const Qe=py(353,E??Ne("typedef"),ce);return Qe.typeExpression=P,Qe.fullName=B,Qe.name=QH(B),Qe.locals=void 0,Qe.nextContainer=void 0,Qe}function Y0(E,P=to(E),B,ce,Qe){return E.tagName!==P||E.typeExpression!==B||E.fullName!==ce||E.comment!==Qe?or(DT(P,B,ce,Qe),E):E}function Kc(E,P,B,ce,Qe,Xt){const yr=py(348,E??Ne("param"),Xt);return yr.typeExpression=ce,yr.name=P,yr.isNameFirst=!!Qe,yr.isBracketed=B,yr}function Lh(E,P=to(E),B,ce,Qe,Xt,yr){return E.tagName!==P||E.name!==B||E.isBracketed!==ce||E.typeExpression!==Qe||E.isNameFirst!==Xt||E.comment!==yr?or(Kc(P,B,ce,Qe,Xt,yr),E):E}function zm(E,P,B,ce,Qe,Xt){const yr=py(355,E??Ne("prop"),Xt);return yr.typeExpression=ce,yr.name=P,yr.isNameFirst=!!Qe,yr.isBracketed=B,yr}function k1(E,P=to(E),B,ce,Qe,Xt,yr){return E.tagName!==P||E.name!==B||E.isBracketed!==ce||E.typeExpression!==Qe||E.isNameFirst!==Xt||E.comment!==yr?or(zm(P,B,ce,Qe,Xt,yr),E):E}function w1(E,P,B,ce){const Qe=py(345,E??Ne("callback"),ce);return Qe.typeExpression=P,Qe.fullName=B,Qe.name=QH(B),Qe.locals=void 0,Qe.nextContainer=void 0,Qe}function bb(E,P=to(E),B,ce,Qe){return E.tagName!==P||E.typeExpression!==B||E.fullName!==ce||E.comment!==Qe?or(w1(P,B,ce,Qe),E):E}function av(E,P,B){const ce=hf(346,E??Ne("overload"),B);return ce.typeExpression=P,ce}function NT(E,P=to(E),B,ce){return E.tagName!==P||E.typeExpression!==B||E.comment!==ce?or(av(P,B,ce),E):E}function Bm(E,P,B){const ce=hf(335,E??Ne("augments"),B);return ce.class=P,ce}function $0(E,P=to(E),B,ce){return E.tagName!==P||E.class!==B||E.comment!==ce?or(Bm(P,B,ce),E):E}function bg(E,P,B){const ce=hf(336,E??Ne("implements"),B);return ce.class=P,ce}function Eb(E,P,B){const ce=hf(354,E??Ne("see"),B);return ce.name=P,ce}function ax(E,P,B,ce){return E.tagName!==P||E.name!==B||E.comment!==ce?or(Eb(P,B,ce),E):E}function Q0(E){const P=K(317);return P.name=E,P}function cN(E,P){return E.name!==P?or(Q0(P),E):E}function O1(E,P){const B=K(318);return B.left=E,B.right=P,B.transformFlags|=Tr(B.left)|Tr(B.right),B}function CT(E,P,B){return E.left!==P||E.right!==B?or(O1(P,B),E):E}function Hp(E,P){const B=K(331);return B.name=E,B.text=P,B}function PT(E,P,B){return E.name!==P?or(Hp(P,B),E):E}function jl(E,P){const B=K(332);return B.name=E,B.text=P,B}function Fc(E,P,B){return E.name!==P?or(jl(P,B),E):E}function MT(E,P){const B=K(333);return B.name=E,B.text=P,B}function Au(E,P,B){return E.name!==P?or(MT(P,B),E):E}function sp(E,P=to(E),B,ce){return E.tagName!==P||E.class!==B||E.comment!==ce?or(bg(P,B,ce),E):E}function Z0(E,P,B){return hf(E,P??Ne(fH(E)),B)}function Ff(E,P,B=to(P),ce){return P.tagName!==B||P.comment!==ce?or(Z0(E,B,ce),P):P}function Sb(E,P,B,ce){const Qe=hf(E,P??Ne(fH(E)),ce);return Qe.typeExpression=B,Qe}function Tb(E,P,B=to(P),ce,Qe){return P.tagName!==B||P.typeExpression!==ce||P.comment!==Qe?or(Sb(E,B,ce,Qe),P):P}function iu(E,P){return hf(334,E,P)}function sx(E,P,B){return E.tagName!==P||E.comment!==B?or(iu(P,B),E):E}function qp(E,P,B){const ce=py(347,E??Ne(fH(347)),B);return ce.typeExpression=P,ce.locals=void 0,ce.nextContainer=void 0,ce}function LT(E,P=to(E),B,ce){return E.tagName!==P||E.typeExpression!==B||E.comment!==ce?or(qp(P,B,ce),E):E}function kT(E){const P=K(328);return P.text=E,P}function Hs(E,P){return E.text!==P?or(kT(P),E):E}function uN(E,P){const B=K(327);return B.comment=E,B.tags=Ua(P),B}function eE(E,P,B){return E.comment!==P||E.tags!==B?or(uN(P,B),E):E}function W1(E,P,B){const ce=K(284);return ce.openingElement=E,ce.children=U(P),ce.closingElement=B,ce.transformFlags|=Tr(ce.openingElement)|Ja(ce.children)|Tr(ce.closingElement)|2,ce}function w2(E,P,B,ce){return E.openingElement!==P||E.children!==B||E.closingElement!==ce?or(W1(P,B,ce),E):E}function vd(E,P,B){const ce=K(285);return ce.tagName=E,ce.typeArguments=Ua(P),ce.attributes=B,ce.transformFlags|=Tr(ce.tagName)|Ja(ce.typeArguments)|Tr(ce.attributes)|2,ce.typeArguments&&(ce.transformFlags|=1),ce}function sv(E,P,B,ce){return E.tagName!==P||E.typeArguments!==B||E.attributes!==ce?or(vd(P,B,ce),E):E}function K_(E,P,B){const ce=K(286);return ce.tagName=E,ce.typeArguments=Ua(P),ce.attributes=B,ce.transformFlags|=Tr(ce.tagName)|Ja(ce.typeArguments)|Tr(ce.attributes)|2,P&&(ce.transformFlags|=1),ce}function lx(E,P,B,ce){return E.tagName!==P||E.typeArguments!==B||E.attributes!==ce?or(K_(P,B,ce),E):E}function Np(E){const P=K(287);return P.tagName=E,P.transformFlags|=Tr(P.tagName)|2,P}function cx(E,P){return E.tagName!==P?or(Np(P),E):E}function lp(E,P,B){const ce=K(288);return ce.openingFragment=E,ce.children=U(P),ce.closingFragment=B,ce.transformFlags|=Tr(ce.openingFragment)|Ja(ce.children)|Tr(ce.closingFragment)|2,ce}function ux(E,P,B,ce){return E.openingFragment!==P||E.children!==B||E.closingFragment!==ce?or(lp(P,B,ce),E):E}function fy(E,P){const B=K(12);return B.text=E,B.containsOnlyTriviaWhiteSpaces=!!P,B.transformFlags|=2,B}function wT(E,P,B){return E.text!==P||E.containsOnlyTriviaWhiteSpaces!==B?or(fy(P,B),E):E}function dN(){const E=K(289);return E.transformFlags|=2,E}function pN(){const E=K(290);return E.transformFlags|=2,E}function OT(E,P){const B=Z(291);return B.name=E,B.initializer=P,B.transformFlags|=Tr(B.name)|Tr(B.initializer)|2,B}function fN(E,P,B){return E.name!==P||E.initializer!==B?or(OT(P,B),E):E}function Ab(E){const P=Z(292);return P.properties=U(E),P.transformFlags|=Ja(P.properties)|2,P}function Cp(E,P){return E.properties!==P?or(Ab(P),E):E}function kh(E){const P=K(293);return P.expression=E,P.transformFlags|=Tr(P.expression)|2,P}function mN(E,P){return E.expression!==P?or(kh(P),E):E}function WT(E,P){const B=K(294);return B.dotDotDotToken=E,B.expression=P,B.transformFlags|=Tr(B.dotDotDotToken)|Tr(B.expression)|2,B}function rs(E,P){return E.expression!==P?or(WT(E.dotDotDotToken,P),E):E}function Ir(E,P){const B=K(295);return B.namespace=E,B.name=P,B.transformFlags|=Tr(B.namespace)|Tr(B.name)|2,B}function gf(E,P,B){return E.namespace!==P||E.name!==B?or(Ir(P,B),E):E}function Pd(E,P){const B=K(296);return B.expression=i().parenthesizeExpressionForDisallowedComma(E),B.statements=U(P),B.transformFlags|=Tr(B.expression)|Ja(B.statements),B.jsDoc=void 0,B}function F1(E,P,B){return E.expression!==P||E.statements!==B?or(Pd(P,B),E):E}function _N(E){const P=K(297);return P.statements=U(E),P.transformFlags=Ja(P.statements),P}function tE(E,P){return E.statements!==P?or(_N(P),E):E}function z1(E,P){const B=K(298);switch(B.token=E,B.types=U(P),B.transformFlags|=Ja(B.types),E){case 96:B.transformFlags|=1024;break;case 119:B.transformFlags|=1;break;default:return N.assertNever(E)}return B}function FT(E,P){return E.types!==P?or(z1(E.token,P),E):E}function Eg(E,P){const B=K(299);return B.variableDeclaration=B2(E),B.block=P,B.transformFlags|=Tr(B.variableDeclaration)|Tr(B.block)|(E?0:64),B.locals=void 0,B.nextContainer=void 0,B}function u_(E,P,B){return E.variableDeclaration!==P||E.block!==B?or(Eg(P,B),E):E}function vf(E,P){const B=Z(303);return B.name=uc(E),B.initializer=i().parenthesizeExpressionForDisallowedComma(P),B.transformFlags|=Yy(B.name)|Tr(B.initializer),B.modifiers=void 0,B.questionToken=void 0,B.exclamationToken=void 0,B.jsDoc=void 0,B}function Gm(E,P,B){return E.name!==P||E.initializer!==B?lv(vf(P,B),E):E}function lv(E,P){return E!==P&&(E.modifiers=P.modifiers,E.questionToken=P.questionToken,E.exclamationToken=P.exclamationToken),or(E,P)}function Sg(E,P){const B=Z(304);return B.name=uc(E),B.objectAssignmentInitializer=P&&i().parenthesizeExpressionForDisallowedComma(P),B.transformFlags|=Ok(B.name)|Tr(B.objectAssignmentInitializer)|1024,B.equalsToken=void 0,B.modifiers=void 0,B.questionToken=void 0,B.exclamationToken=void 0,B.jsDoc=void 0,B}function Tg(E,P,B){return E.name!==P||E.objectAssignmentInitializer!==B?dx(Sg(P,B),E):E}function dx(E,P){return E!==P&&(E.modifiers=P.modifiers,E.questionToken=P.questionToken,E.exclamationToken=P.exclamationToken,E.equalsToken=P.equalsToken),or(E,P)}function cc(E){const P=Z(305);return P.expression=i().parenthesizeExpressionForDisallowedComma(E),P.transformFlags|=Tr(P.expression)|128|65536,P.jsDoc=void 0,P}function hN(E,P){return E.expression!==P?or(cc(P),E):E}function zf(E,P){const B=Z(306);return B.name=uc(E),B.initializer=P&&i().parenthesizeExpressionForDisallowedComma(P),B.transformFlags|=Tr(B.name)|Tr(B.initializer)|1,B.jsDoc=void 0,B}function wh(E,P,B){return E.name!==P||E.initializer!==B?or(zf(P,B),E):E}function yf(E,P,B){const ce=t.createBaseSourceFileNode(312);return ce.statements=U(E),ce.endOfFileToken=P,ce.flags|=B,ce.text="",ce.fileName="",ce.path="",ce.resolvedPath="",ce.originalFileName="",ce.languageVersion=0,ce.languageVariant=0,ce.scriptKind=0,ce.isDeclarationFile=!1,ce.hasNoDefaultLib=!1,ce.transformFlags|=Ja(ce.statements)|Tr(ce.endOfFileToken),ce.locals=void 0,ce.nextContainer=void 0,ce.endFlowNode=void 0,ce.nodeCount=0,ce.identifierCount=0,ce.symbolCount=0,ce.parseDiagnostics=void 0,ce.bindDiagnostics=void 0,ce.bindSuggestionDiagnostics=void 0,ce.lineMap=void 0,ce.externalModuleIndicator=void 0,ce.setExternalModuleIndicator=void 0,ce.pragmas=void 0,ce.checkJsDirective=void 0,ce.referencedFiles=void 0,ce.typeReferenceDirectives=void 0,ce.libReferenceDirectives=void 0,ce.amdDependencies=void 0,ce.commentDirectives=void 0,ce.identifiers=void 0,ce.packageJsonLocations=void 0,ce.packageJsonScope=void 0,ce.imports=void 0,ce.moduleAugmentations=void 0,ce.ambientModuleNames=void 0,ce.classifiableNames=void 0,ce.impliedNodeFormat=void 0,ce}function B1(E){const P=Object.create(E.redirectTarget);return Object.defineProperties(P,{id:{get(){return this.redirectInfo.redirectTarget.id},set(B){this.redirectInfo.redirectTarget.id=B}},symbol:{get(){return this.redirectInfo.redirectTarget.symbol},set(B){this.redirectInfo.redirectTarget.symbol=B}}}),P.redirectInfo=E,P}function nE(E){const P=B1(E.redirectInfo);return P.flags|=E.flags&-17,P.fileName=E.fileName,P.path=E.path,P.resolvedPath=E.resolvedPath,P.originalFileName=E.originalFileName,P.packageJsonLocations=E.packageJsonLocations,P.packageJsonScope=E.packageJsonScope,P.emitNode=void 0,P}function px(E){const P=t.createBaseSourceFileNode(312);P.flags|=E.flags&-17;for(const B in E)if(!(xs(P,B)||!xs(E,B))){if(B==="emitNode"){P.emitNode=void 0;continue}P[B]=E[B]}return P}function zT(E){const P=E.redirectInfo?nE(E):px(E);return r(P,E),P}function bf(E,P,B,ce,Qe,Xt,yr){const ro=zT(E);return ro.statements=U(P),ro.isDeclarationFile=B,ro.referencedFiles=ce,ro.typeReferenceDirectives=Qe,ro.hasNoDefaultLib=Xt,ro.libReferenceDirectives=yr,ro.transformFlags=Ja(ro.statements)|Tr(ro.endOfFileToken),ro}function Ls(E,P,B=E.isDeclarationFile,ce=E.referencedFiles,Qe=E.typeReferenceDirectives,Xt=E.hasNoDefaultLib,yr=E.libReferenceDirectives){return E.statements!==P||E.isDeclarationFile!==B||E.referencedFiles!==ce||E.typeReferenceDirectives!==Qe||E.hasNoDefaultLib!==Xt||E.libReferenceDirectives!==yr?or(bf(E,P,B,ce,Qe,Xt,yr),E):E}function G1(E,P=et){const B=K(313);return B.prepends=P,B.sourceFiles=E,B.syntheticFileReferences=void 0,B.syntheticTypeReferences=void 0,B.syntheticLibReferences=void 0,B.hasNoDefaultLib=void 0,B}function V1(E,P,B=et){return E.sourceFiles!==P||E.prepends!==B?or(G1(P,B),E):E}function cv(E,P,B){const ce=K(314);return ce.prologues=E,ce.syntheticReferences=P,ce.texts=B,ce.fileName="",ce.text="",ce.referencedFiles=et,ce.libReferenceDirectives=et,ce.getLineAndCharacterOfPosition=Qe=>bs(ce,Qe),ce}function Ib(E,P){const B=K(E);return B.data=P,B}function rE(E){return Ib(307,E)}function D(E,P){const B=Ib(308,E);return B.texts=P,B}function ae(E,P){return Ib(P?310:309,E)}function ht(E){const P=K(311);return P.data=E.data,P.section=E,P}function on(){const E=K(315);return E.javascriptText="",E.declarationText="",E}function Or(E,P=!1,B){const ce=K(237);return ce.type=E,ce.isSpread=P,ce.tupleNameSource=B,ce}function ki(E){const P=K(358);return P._children=E,P}function gi(E){const P=K(359);return P.original=E,dt(P,E),P}function no(E,P){const B=K(360);return B.expression=E,B.original=P,B.transformFlags|=Tr(B.expression)|1,dt(B,P),B}function va(E,P){return E.expression!==P?or(no(P,E.original),E):E}function ed(E){if($s(E)&&!cC(E)&&!E.original&&!E.emitNode&&!E.id){if(yP(E))return E.elements;if(mr(E)&&Pae(E.operatorToken))return[E.left,E.right]}return E}function Md(E){const P=K(361);return P.elements=U(vm(E,ed)),P.transformFlags|=Ja(P.elements),P}function Bf(E,P){return E.elements!==P?or(Md(P),E):E}function xb(E,P){const B=K(362);return B.expression=E,B.thisArg=P,B.transformFlags|=Tr(B.expression)|Tr(B.thisArg),B}function bi(E,P,B){return E.expression!==P||E.thisArg!==B?or(xb(P,B),E):E}function Oh(E){const P=oe(E.escapedText);return P.flags|=E.flags&-17,P.transformFlags=E.transformFlags,r(P,E),Gk(P,{...E.emitNode.autoGenerate}),P}function Un(E){const P=oe(E.escapedText);P.flags|=E.flags&-17,P.jsDoc=E.jsDoc,P.flowNode=E.flowNode,P.symbol=E.symbol,P.transformFlags=E.transformFlags,r(P,E);const B=zS(E);return B&&Jv(P,B),P}function fx(E){const P=He(E.escapedText);return P.flags|=E.flags&-17,P.transformFlags=E.transformFlags,r(P,E),Gk(P,{...E.emitNode.autoGenerate}),P}function Rb(E){const P=He(E.escapedText);return P.flags|=E.flags&-17,P.transformFlags=E.transformFlags,r(P,E),P}function Db(E){if(E===void 0)return E;if($i(E))return zT(E);if(sl(E))return Oh(E);if(Ve(E))return Un(E);if(gS(E))return fx(E);if(Ji(E))return Rb(E);const P=mL(E.kind)?t.createBaseNode(E.kind):t.createBaseTokenNode(E.kind);P.flags|=E.flags&-17,P.transformFlags=E.transformFlags,r(P,E);for(const B in E)xs(P,B)||!xs(E,B)||(P[B]=E[B]);return P}function BT(E,P,B){return Jn(jd(void 0,void 0,void 0,void 0,P?[P]:[],void 0,ri(E,!0)),void 0,B?[B]:[])}function j1(E,P,B){return Jn(Of(void 0,void 0,P?[P]:[],void 0,void 0,ri(E,!0)),void 0,B?[B]:[])}function X_(){return xp(se("0"))}function Wh(E){return pm(void 0,!1,E)}function gN(E){return Wm(void 0,!1,AT([ox(!1,void 0,E)]))}function GT(E,P){return P==="null"?O.createStrictEquality(E,Gt()):P==="undefined"?O.createStrictEquality(E,X_()):O.createStrictEquality(Bu(E),he(P))}function u9(E,P){return P==="null"?O.createStrictInequality(E,Gt()):P==="undefined"?O.createStrictInequality(E,X_()):O.createStrictInequality(Bu(E),he(P))}function Nb(E,P,B){return hS(E)?Qo(Ss(E,void 0,P),void 0,void 0,B):Jn(Us(E,P),void 0,B)}function S8(E,P,B){return Nb(E,"bind",[P,...B])}function T8(E,P,B){return Nb(E,"call",[P,...B])}function iE(E,P,B){return Nb(E,"apply",[P,B])}function d_(E,P,B){return Nb(Ne(E),P,B)}function O2(E,P){return Nb(E,"slice",P===void 0?[]:[aE(P)])}function Fh(E,P){return Nb(E,"concat",P)}function mx(E,P,B){return d_("Object","defineProperty",[E,aE(P),B])}function A8(E,P){return d_("Object","getOwnPropertyDescriptor",[E,aE(P)])}function Y_(E,P,B){return d_("Reflect","get",B?[E,P,B]:[E,P])}function Q(E,P,B,ce){return d_("Reflect","set",ce?[E,P,B,ce]:[E,P,B])}function xe(E,P,B){return B?(E.push(vf(P,B)),!0):!1}function Xe(E,P){const B=[];xe(B,"enumerable",aE(E.enumerable)),xe(B,"configurable",aE(E.configurable));let ce=xe(B,"writable",aE(E.writable));ce=xe(B,"value",E.value)||ce;let Qe=xe(B,"get",E.get);return Qe=xe(B,"set",E.set)||Qe,N.assert(!(ce&&Qe),"A PropertyDescriptor may not be both an accessor descriptor and a data descriptor."),$o(B,!P)}function xt(E,P){switch(E.kind){case 217:return ff(E,P);case 216:return ec(E,E.type,P);case 234:return _f(E,P,E.type);case 238:return Mt(E,P,E.type);case 235:return ze(E,P);case 360:return va(E,P)}}function Nt(E){return Gd(E)&&$s(E)&&$s(qv(E))&&$s(w_(E))&&!bt(jR(E))&&!bt(Bk(E))}function Kt(E,P,B=15){return E&&hF(E,B)&&!Nt(E)?xt(E,Kt(E.expression,P)):P}function zr(E,P,B){if(!P)return E;const ce=vT(P,P.label,o1(P.statement)?zr(E,P.statement):E);return B&&B(P),ce}function Wi(E,P){const B=hs(E);switch(B.kind){case 80:return P;case 110:case 9:case 10:case 11:return!1;case 209:return B.elements.length!==0;case 210:return B.properties.length>0;default:return!0}}function Ri(E,P,B,ce=!1){const Qe=$l(E,15);let Xt,yr;return zd(Qe)?(Xt=at(),yr=Qe):hP(Qe)?(Xt=at(),yr=B!==void 0&&B<2?dt(Ne("_super"),Qe):Qe):ja(Qe)&8192?(Xt=X_(),yr=i().parenthesizeLeftSideOfAccess(Qe,!1)):Fr(Qe)?Wi(Qe.expression,ce)?(Xt=pe(P),yr=Us(dt(O.createAssignment(Xt,Qe.expression),Qe.expression),Qe.name),dt(yr,Qe)):(Xt=Qe.expression,yr=Qe):Qs(Qe)?Wi(Qe.expression,ce)?(Xt=pe(P),yr=Wc(dt(O.createAssignment(Xt,Qe.expression),Qe.expression),Qe.argumentExpression),dt(yr,Qe)):(Xt=Qe.expression,yr=Qe):(Xt=X_(),yr=i().parenthesizeLeftSideOfAccess(E,!1)),{target:yr,thisArg:Xt}}function mi(E,P){return Us(Jc($o([le(void 0,"value",[_i(void 0,void 0,E,void 0,void 0,void 0)],ri([mu(P)]))])),"value")}function Yi(E){return E.length>10?Md(E):od(E,O.createComma)}function ds(E,P,B,ce=0,Qe){const Xt=Qe?E&&y4(E):Mo(E);if(Xt&&Ve(Xt)&&!sl(Xt)){const yr=qa(dt(Db(Xt),Xt),Xt.parent);return ce|=ja(Xt),B||(ce|=96),P||(ce|=3072),ce&&pr(yr,ce),yr}return Le(E)}function Ds(E,P,B){return ds(E,P,B,98304)}function es(E,P,B,ce){return ds(E,P,B,32768,ce)}function Gf(E,P,B){return ds(E,P,B,16384)}function $_(E,P,B){return ds(E,P,B)}function Ag(E,P,B,ce){const Qe=Us(E,$s(P)?P:Db(P));dt(Qe,P);let Xt=0;return ce||(Xt|=96),B||(Xt|=3072),Xt&&pr(Qe,Xt),Qe}function uv(E,P,B,ce){return E&&Zr(P,32)?Ag(E,ds(P),B,ce):Gf(P,B,ce)}function dv(E,P,B,ce){const Qe=VT(E,P,0,B);return vN(E,P,Qe,ce)}function Cb(E){return Ma(E.expression)&&E.expression.text==="use strict"}function cp(){return Xu(mu(he("use strict")))}function VT(E,P,B=0,ce){N.assert(P.length===0,"Prologue directives should be at the first statement in the target statements array");let Qe=!1;const Xt=E.length;for(;B<Xt;){const yr=E[B];if(Im(yr))Cb(yr)&&(Qe=!0),P.push(yr);else break;B++}return ce&&!Qe&&P.push(cp()),B}function vN(E,P,B,ce,Qe=Pv){const Xt=E.length;for(;B!==void 0&&B<Xt;){const yr=E[B];if(ja(yr)&2097152&&Qe(yr))xn(P,ce?nt(yr,ce,qi):yr);else break;B++}return B}function W2(E){return XH(E)?E:dt(U([cp(),...E]),E)}function F2(E){return N.assert(Zn(E,Zre),"Cannot lift nodes to a Block."),sh(E)||ri(E)}function oE(E,P,B){let ce=B;for(;ce<E.length&&P(E[ce]);)ce++;return ce}function pv(E,P){if(!bt(P))return E;const B=oE(E,Im,0),ce=oE(E,Y4,B),Qe=oE(E,$4,ce),Xt=oE(P,Im,0),yr=oE(P,Y4,Xt),ro=oE(P,$4,yr),qs=oE(P,wL,ro);N.assert(qs===P.length,"Expected declarations to be valid standard or custom prologues");const p_=LE(E)?E.slice():E;if(qs>ro&&p_.splice(Qe,0,...P.slice(ro,qs)),ro>yr&&p_.splice(ce,0,...P.slice(yr,ro)),yr>Xt&&p_.splice(B,0,...P.slice(Xt,yr)),Xt>0)if(B===0)p_.splice(0,0,...P.slice(0,Xt));else{const Lb=new Map;for(let Vm=0;Vm<B;Vm++){const sE=E[Vm];Lb.set(sE.expression.text,!0)}for(let Vm=Xt-1;Vm>=0;Vm--){const sE=P[Vm];Lb.has(sE.expression.text)||p_.unshift(sE)}}return LE(E)?dt(U(p_,E.hasTrailingComma),E):E}function Pb(E,P){let B;return typeof P=="number"?B=tn(P):B=P,gl(E)?$t(E,B,E.name,E.constraint,E.default):Ao(E)?ao(E,B,E.dotDotDotToken,E.name,E.questionToken,E.type,E.initializer):HR(E)?en(E,B,E.typeParameters,E.parameters,E.type):yp(E)?Di(E,B,E.name,E.questionToken,E.type):Jo(E)?tt(E,B,E.name,E.questionToken??E.exclamationToken,E.type,E.initializer):bh(E)?Rn(E,B,E.name,E.questionToken,E.typeParameters,E.parameters,E.type):ql(E)?hi(E,B,E.asteriskToken,E.name,E.questionToken,E.typeParameters,E.parameters,E.type,E.body):Ml(E)?kn(E,B,E.parameters,E.body):rf(E)?ft(E,B,E.name,E.parameters,E.type,E.body):bp(E)?Fe(E,B,E.name,E.parameters,E.body):t1(E)?Vt(E,B,E.parameters,E.type):Os(E)?Cd(E,B,E.asteriskToken,E.name,E.typeParameters,E.parameters,E.type,E.body):Gs(E)?U_(E,B,E.typeParameters,E.parameters,E.type,E.equalsGreaterThanToken,E.body):Zc(E)?Om(E,B,E.name,E.typeParameters,E.heritageClauses,E.members):Ll(E)?Ka(E,B,E.declarationList):Ac(E)?rN(E,B,E.asteriskToken,E.name,E.typeParameters,E.parameters,E.type,E.body):Ic(E)?J0(E,B,E.name,E.typeParameters,E.heritageClauses,E.members):hd(E)?bc(E,B,E.name,E.typeParameters,E.heritageClauses,E.members):Nm(E)?nx(E,B,E.name,E.typeParameters,E.type):x0(E)?bT(E,B,E.name,E.members):Xl(E)?s_(E,B,E.name,E.body):tu(E)?l_(E,B,E.isTypeOnly,E.name,E.moduleReference):kc(E)?ST(E,B,E.importClause,E.moduleSpecifier,E.attributes):kl(E)?vb(E,B,E.expression):Yl(E)?ov(E,B,E.isTypeOnly,E.exportClause,E.moduleSpecifier,E.attributes):N.assertNever(E)}function yN(E,P){return Ao(E)?ao(E,P,E.dotDotDotToken,E.name,E.questionToken,E.type,E.initializer):Jo(E)?tt(E,P,E.name,E.questionToken??E.exclamationToken,E.type,E.initializer):ql(E)?hi(E,P,E.asteriskToken,E.name,E.questionToken,E.typeParameters,E.parameters,E.type,E.body):rf(E)?ft(E,P,E.name,E.parameters,E.type,E.body):bp(E)?Fe(E,P,E.name,E.parameters,E.body):Zc(E)?Om(E,P,E.name,E.typeParameters,E.heritageClauses,E.members):Ic(E)?J0(E,P,E.name,E.typeParameters,E.heritageClauses,E.members):N.assertNever(E)}function Jp(E,P){switch(E.kind){case 177:return ft(E,E.modifiers,P,E.parameters,E.type,E.body);case 178:return Fe(E,E.modifiers,P,E.parameters,E.body);case 174:return hi(E,E.modifiers,E.asteriskToken,P,E.questionToken,E.typeParameters,E.parameters,E.type,E.body);case 173:return Rn(E,E.modifiers,P,E.questionToken,E.typeParameters,E.parameters,E.type);case 172:return tt(E,E.modifiers,P,E.questionToken??E.exclamationToken,E.type,E.initializer);case 171:return Di(E,E.modifiers,P,E.questionToken,E.type);case 303:return Gm(E,P,E.initializer)}}function Ua(E){return E?U(E):void 0}function uc(E){return typeof E=="string"?Ne(E):E}function aE(E){return typeof E=="string"?he(E):typeof E=="number"?se(E):typeof E=="boolean"?E?vt():$e():E}function _x(E){return E&&i().parenthesizeExpressionForDisallowedComma(E)}function z2(E){return typeof E=="number"?Se(E):E}function Mb(E){return E&&wH(E)?dt(r(Zu(),E),E):E}function B2(E){return typeof E=="string"||E&&!wi(E)?qd(E,void 0,void 0,void 0):E}function or(E,P){return E!==P&&(r(E,P),dt(E,P)),E}}function fH(e){switch(e){case 351:return"type";case 349:return"returns";case 350:return"this";case 347:return"enum";case 337:return"author";case 339:return"class";case 340:return"public";case 341:return"private";case 342:return"protected";case 343:return"readonly";case 344:return"override";case 352:return"template";case 353:return"typedef";case 348:return"param";case 355:return"prop";case 345:return"callback";case 346:return"overload";case 335:return"augments";case 336:return"implements";default:return N.fail(`Unsupported kind: ${N.formatSyntaxKind(e)}`)}}function kGe(e,t){switch(Hv||(Hv=wv(99,!1,0)),e){case 15:Hv.setText("`"+t+"`");break;case 16:Hv.setText("`"+t+"${");break;case 17:Hv.setText("}"+t+"${");break;case 18:Hv.setText("}"+t+"`");break}let r=Hv.scan();if(r===20&&(r=Hv.reScanTemplateToken(!1)),Hv.isUnterminated())return Hv.setText(void 0),yae;let i;switch(r){case 15:case 16:case 17:case 18:i=Hv.getTokenValue();break}return i===void 0||Hv.scan()!==1?(Hv.setText(void 0),yae):(Hv.setText(void 0),i)}function Yy(e){return e&&Ve(e)?Ok(e):Tr(e)}function Ok(e){return Tr(e)&-67108865}function wGe(e,t){return t|e.transformFlags&134234112}function Tr(e){if(!e)return 0;const t=e.transformFlags&~gae(e.kind);return ld(e)&&oc(e.name)?wGe(e.name,t):t}function Ja(e){return e?e.transformFlags:0}function UTe(e){let t=0;for(const r of e)t|=Tr(r);e.transformFlags=t}function gae(e){if(e>=182&&e<=205)return-2;switch(e){case 213:case 214:case 209:return-2147450880;case 267:return-1941676032;case 169:return-2147483648;case 219:return-2072174592;case 218:case 262:return-1937940480;case 261:return-2146893824;case 263:case 231:return-2147344384;case 176:return-1937948672;case 172:return-2013249536;case 174:case 177:case 178:return-2005057536;case 133:case 150:case 163:case 146:case 154:case 151:case 136:case 155:case 116:case 168:case 171:case 173:case 179:case 180:case 181:case 264:case 265:return-2;case 210:return-2147278848;case 299:return-2147418112;case 206:case 207:return-2147450880;case 216:case 238:case 234:case 360:case 217:case 108:return-2147483648;case 211:case 212:return-2147483648;default:return-2147483648}}function vW(e){return e.flags|=16,e}function mH(e,t,r){let i,o,s,l,u,p,h,m,b,A;Po(e)?(s="",l=e,u=e.length,p=t,h=r):(N.assert(t==="js"||t==="dts"),s=(t==="js"?e.javascriptPath:e.declarationPath)||"",p=t==="js"?e.javascriptMapPath:e.declarationMapPath,m=()=>t==="js"?e.javascriptText:e.declarationText,b=()=>t==="js"?e.javascriptMapText:e.declarationMapText,u=()=>m().length,e.buildInfo&&e.buildInfo.bundle&&(N.assert(r===void 0||typeof r=="boolean"),i=r,o=t==="js"?e.buildInfo.bundle.js:e.buildInfo.bundle.dts,A=e.oldFileOfCurrentEmit));const I=A?WGe(N.checkDefined(o)):OGe(o,i,u);return I.fileName=s,I.sourceMapPath=p,I.oldFileOfCurrentEmit=A,m&&b?(Object.defineProperty(I,"text",{get:m}),Object.defineProperty(I,"sourceMapText",{get:b})):(N.assert(!A),I.text=l??"",I.sourceMapText=h),I}function OGe(e,t,r){let i,o,s,l,u,p,h,m;for(const A of e?e.sections:et)switch(A.kind){case"prologue":i=xn(i,dt(w.createUnparsedPrologue(A.data),A));break;case"emitHelpers":o=xn(o,TH().get(A.data));break;case"no-default-lib":m=!0;break;case"reference":s=xn(s,{pos:-1,end:-1,fileName:A.data});break;case"type":l=xn(l,{pos:-1,end:-1,fileName:A.data});break;case"type-import":l=xn(l,{pos:-1,end:-1,fileName:A.data,resolutionMode:99});break;case"type-require":l=xn(l,{pos:-1,end:-1,fileName:A.data,resolutionMode:1});break;case"lib":u=xn(u,{pos:-1,end:-1,fileName:A.data});break;case"prepend":let I;for(const R of A.texts)(!t||R.kind!=="internal")&&(I=xn(I,dt(w.createUnparsedTextLike(R.data,R.kind==="internal"),R)));p=Jr(p,I),h=xn(h,w.createUnparsedPrepend(A.data,I??et));break;case"internal":if(t){h||(h=[]);break}case"text":h=xn(h,dt(w.createUnparsedTextLike(A.data,A.kind==="internal"),A));break;default:N.assertNever(A)}if(!h){const A=w.createUnparsedTextLike(void 0,!1);nP(A,0,typeof r=="function"?r():r),h=[A]}const b=Ih.createUnparsedSource(i??et,void 0,h);return zR(i,b),zR(h,b),zR(p,b),b.hasNoDefaultLib=m,b.helpers=o,b.referencedFiles=s||et,b.typeReferenceDirectives=l,b.libReferenceDirectives=u||et,b}function WGe(e){let t,r;for(const o of e.sections)switch(o.kind){case"internal":case"text":t=xn(t,dt(w.createUnparsedTextLike(o.data,o.kind==="internal"),o));break;case"no-default-lib":case"reference":case"type":case"type-import":case"type-require":case"lib":r=xn(r,dt(w.createUnparsedSyntheticReference(o),o));break;case"prologue":case"emitHelpers":case"prepend":break;default:N.assertNever(o)}const i=w.createUnparsedSource(et,r,t??et);return zR(r,i),zR(t,i),i.helpers=wt(e.sources&&e.sources.helpers,o=>TH().get(o)),i}function HTe(e,t,r,i,o,s){return Po(e)?hH(void 0,e,r,i,void 0,t,o,s):_H(e,t,r,i,o,s)}function _H(e,t,r,i,o,s,l,u){const p=Ih.createInputFiles();p.javascriptPath=t,p.javascriptMapPath=r,p.declarationPath=i,p.declarationMapPath=o,p.buildInfoPath=s;const h=new Map,m=R=>{if(R===void 0)return;let M=h.get(R);return M===void 0&&(M=e(R),h.set(R,M!==void 0?M:!1)),M!==!1?M:void 0},b=R=>{const M=m(R);return M!==void 0?M:`/* Input file ${R} was missing */\r
+`};let A;return Object.defineProperties(p,{javascriptText:{get:()=>b(t)},javascriptMapText:{get:()=>m(r)},declarationText:{get:()=>b(N.checkDefined(i))},declarationMapText:{get:()=>m(o)},buildInfo:{get:()=>{if(A===void 0&&s)if(l!=null&&l.getBuildInfo)A=l.getBuildInfo(s,u.configFilePath)??!1;else{const R=m(s);A=R!==void 0?_7(s,R)??!1:!1}return A||void 0}}}),p}function hH(e,t,r,i,o,s,l,u,p,h,m){const b=Ih.createInputFiles();return b.javascriptPath=e,b.javascriptText=t,b.javascriptMapPath=r,b.javascriptMapText=i,b.declarationPath=o,b.declarationText=s,b.declarationMapPath=l,b.declarationMapText=u,b.buildInfoPath=p,b.buildInfo=h,b.oldFileOfCurrentEmit=m,b}function qTe(e,t,r){return new(KTe||(KTe=lu.getSourceMapSourceConstructor()))(e,t,r)}function Cr(e,t){if(e.original!==t&&(e.original=t,t)){const r=t.emitNode;r&&(e.emitNode=FGe(r,e.emitNode))}return e}function FGe(e,t){const{flags:r,internalFlags:i,leadingComments:o,trailingComments:s,commentRange:l,sourceMapRange:u,tokenSourceMapRanges:p,constantValue:h,helpers:m,startsOnNewLine:b,snippetElement:A,classThis:I,assignedName:R}=e;if(t||(t={}),r&&(t.flags=r),i&&(t.internalFlags=i&-9),o&&(t.leadingComments=Jr(o.slice(),t.leadingComments)),s&&(t.trailingComments=Jr(s.slice(),t.trailingComments)),l&&(t.commentRange=l),u&&(t.sourceMapRange=u),p&&(t.tokenSourceMapRanges=zGe(p,t.tokenSourceMapRanges)),h!==void 0&&(t.constantValue=h),m)for(const M of m)t.helpers=Mg(t.helpers,M);return b!==void 0&&(t.startsOnNewLine=b),A!==void 0&&(t.snippetElement=A),I&&(t.classThis=I),R&&(t.assignedName=R),t}function zGe(e,t){t||(t=[]);for(const r in e)t[r]=e[r];return t}var yW,gH,vae,Hv,yae,Wk,JTe,w,KTe,BGe=T({"src/compiler/factory/nodeFactory.ts"(){ra(),yW=0,gH=(e=>(e[e.None=0]="None",e[e.NoParenthesizerRules=1]="NoParenthesizerRules",e[e.NoNodeConverters=2]="NoNodeConverters",e[e.NoIndentationOnFreshPropertyAccess=4]="NoIndentationOnFreshPropertyAccess",e[e.NoOriginalNode=8]="NoOriginalNode",e))(gH||{}),vae=[],yae={},Wk=mae(),JTe={createBaseSourceFileNode:e=>vW(Wk.createBaseSourceFileNode(e)),createBaseIdentifierNode:e=>vW(Wk.createBaseIdentifierNode(e)),createBasePrivateIdentifierNode:e=>vW(Wk.createBasePrivateIdentifierNode(e)),createBaseTokenNode:e=>vW(Wk.createBaseTokenNode(e)),createBaseNode:e=>vW(Wk.createBaseNode(e))},w=wk(4,JTe)}});function Ou(e){if(e.emitNode)N.assert(!(e.emitNode.internalFlags&8),"Invalid attempt to mutate an immutable node.");else{if(cC(e)){if(e.kind===312)return e.emitNode={annotatedNodes:[e]};const t=jn(Do(jn(e)))??N.fail("Could not determine parsed source file.");Ou(t).annotatedNodes.push(e)}e.emitNode={}}return e.emitNode}function vH(e){var t,r;const i=(r=(t=jn(Do(e)))==null?void 0:t.emitNode)==null?void 0:r.annotatedNodes;if(i)for(const o of i)o.emitNode=void 0}function Fk(e){const t=Ou(e);return t.flags|=3072,t.leadingComments=void 0,t.trailingComments=void 0,e}function pr(e,t){return Ou(e).flags=t,e}function k_(e,t){const r=Ou(e);return r.flags=r.flags|t,e}function zk(e,t){return Ou(e).internalFlags=t,e}function QA(e,t){const r=Ou(e);return r.internalFlags=r.internalFlags|t,e}function qv(e){var t;return((t=e.emitNode)==null?void 0:t.sourceMapRange)??e}function Pa(e,t){return Ou(e).sourceMapRange=t,e}function XTe(e,t){var r,i;return(i=(r=e.emitNode)==null?void 0:r.tokenSourceMapRanges)==null?void 0:i[t]}function bae(e,t,r){const i=Ou(e),o=i.tokenSourceMapRanges??(i.tokenSourceMapRanges=[]);return o[t]=r,e}function pP(e){var t;return(t=e.emitNode)==null?void 0:t.startsOnNewLine}function bW(e,t){return Ou(e).startsOnNewLine=t,e}function w_(e){var t;return((t=e.emitNode)==null?void 0:t.commentRange)??e}function ac(e,t){return Ou(e).commentRange=t,e}function jR(e){var t;return(t=e.emitNode)==null?void 0:t.leadingComments}function I0(e,t){return Ou(e).leadingComments=t,e}function fP(e,t,r,i){return I0(e,xn(jR(e),{kind:t,pos:-1,end:-1,hasTrailingNewLine:i,text:r}))}function Bk(e){var t;return(t=e.emitNode)==null?void 0:t.trailingComments}function ZA(e,t){return Ou(e).trailingComments=t,e}function EW(e,t,r,i){return ZA(e,xn(Bk(e),{kind:t,pos:-1,end:-1,hasTrailingNewLine:i,text:r}))}function Eae(e,t){I0(e,jR(t)),ZA(e,Bk(t));const r=Ou(t);return r.leadingComments=void 0,r.trailingComments=void 0,e}function Sae(e){var t;return(t=e.emitNode)==null?void 0:t.constantValue}function Tae(e,t){const r=Ou(e);return r.constantValue=t,e}function eI(e,t){const r=Ou(e);return r.helpers=xn(r.helpers,t),e}function Ug(e,t){if(bt(t)){const r=Ou(e);for(const i of t)r.helpers=Mg(r.helpers,i)}return e}function YTe(e,t){var r;const i=(r=e.emitNode)==null?void 0:r.helpers;return i?Gx(i,t):!1}function SW(e){var t;return(t=e.emitNode)==null?void 0:t.helpers}function Aae(e,t,r){const i=e.emitNode,o=i&&i.helpers;if(!bt(o))return;const s=Ou(t);let l=0;for(let u=0;u<o.length;u++){const p=o[u];r(p)?(l++,s.helpers=Mg(s.helpers,p)):l>0&&(o[u-l]=p)}l>0&&(o.length-=l)}function yH(e){var t;return(t=e.emitNode)==null?void 0:t.snippetElement}function bH(e,t){const r=Ou(e);return r.snippetElement=t,e}function EH(e){return Ou(e).internalFlags|=4,e}function Iae(e,t){const r=Ou(e);return r.typeNode=t,e}function xae(e){var t;return(t=e.emitNode)==null?void 0:t.typeNode}function Jv(e,t){return Ou(e).identifierTypeArguments=t,e}function zS(e){var t;return(t=e.emitNode)==null?void 0:t.identifierTypeArguments}function Gk(e,t){return Ou(e).autoGenerate=t,e}function $Te(e){var t;return(t=e.emitNode)==null?void 0:t.autoGenerate}function Rae(e,t){return Ou(e).generatedImportReference=t,e}function Dae(e){var t;return(t=e.emitNode)==null?void 0:t.generatedImportReference}var GGe=T({"src/compiler/factory/emitNode.ts"(){ra()}});function Nae(e){const t=e.factory,r=Td(()=>zk(t.createTrue(),8)),i=Td(()=>zk(t.createFalse(),8));return{getUnscopedHelperName:o,createDecorateHelper:s,createMetadataHelper:l,createParamHelper:u,createESDecorateHelper:M,createRunInitializersHelper:C,createAssignHelper:O,createAwaitHelper:U,createAsyncGeneratorHelper:K,createAsyncDelegatorHelper:Z,createAsyncValuesHelper:V,createRestHelper:se,createAwaiterHelper:G,createExtendsHelper:ne,createTemplateObjectHelper:he,createSpreadArrayHelper:ye,createPropKeyHelper:$,createSetFunctionNameHelper:Y,createValuesHelper:oe,createReadHelper:fe,createGeneratorHelper:Ne,createCreateBindingHelper:pe,createImportStarHelper:ie,createImportStarCallbackHelper:ve,createImportDefaultHelper:Le,createExportStarHelper:He,createClassPrivateFieldGetHelper:Ee,createClassPrivateFieldSetHelper:De,createClassPrivateFieldInHelper:Pe,createAddDisposableResourceHelper:We,createDisposeResourcesHelper:At};function o(Se){return pr(t.createIdentifier(Se),8196)}function s(Se,je,at,Gt){e.requestEmitHelper(TW);const vt=[];return vt.push(t.createArrayLiteralExpression(Se,!0)),vt.push(je),at&&(vt.push(at),Gt&&vt.push(Gt)),t.createCallExpression(o("__decorate"),void 0,vt)}function l(Se,je){return e.requestEmitHelper(AW),t.createCallExpression(o("__metadata"),void 0,[t.createStringLiteral(Se),je])}function u(Se,je,at){return e.requestEmitHelper(IW),dt(t.createCallExpression(o("__param"),void 0,[t.createNumericLiteral(je+""),Se]),at)}function p(Se){const je=[t.createPropertyAssignment(t.createIdentifier("kind"),t.createStringLiteral("class")),t.createPropertyAssignment(t.createIdentifier("name"),Se.name),t.createPropertyAssignment(t.createIdentifier("metadata"),Se.metadata)];return t.createObjectLiteralExpression(je)}function h(Se){const je=Se.computed?t.createElementAccessExpression(t.createIdentifier("obj"),Se.name):t.createPropertyAccessExpression(t.createIdentifier("obj"),Se.name);return t.createPropertyAssignment("get",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,t.createIdentifier("obj"))],void 0,void 0,je))}function m(Se){const je=Se.computed?t.createElementAccessExpression(t.createIdentifier("obj"),Se.name):t.createPropertyAccessExpression(t.createIdentifier("obj"),Se.name);return t.createPropertyAssignment("set",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,t.createIdentifier("obj")),t.createParameterDeclaration(void 0,void 0,t.createIdentifier("value"))],void 0,void 0,t.createBlock([t.createExpressionStatement(t.createAssignment(je,t.createIdentifier("value")))])))}function b(Se){const je=Se.computed?Se.name:Ve(Se.name)?t.createStringLiteralFromNode(Se.name):Se.name;return t.createPropertyAssignment("has",t.createArrowFunction(void 0,void 0,[t.createParameterDeclaration(void 0,void 0,t.createIdentifier("obj"))],void 0,void 0,t.createBinaryExpression(je,103,t.createIdentifier("obj"))))}function A(Se,je){const at=[];return at.push(b(Se)),je.get&&at.push(h(Se)),je.set&&at.push(m(Se)),t.createObjectLiteralExpression(at)}function I(Se){const je=[t.createPropertyAssignment(t.createIdentifier("kind"),t.createStringLiteral(Se.kind)),t.createPropertyAssignment(t.createIdentifier("name"),Se.name.computed?Se.name.name:t.createStringLiteralFromNode(Se.name.name)),t.createPropertyAssignment(t.createIdentifier("static"),Se.static?t.createTrue():t.createFalse()),t.createPropertyAssignment(t.createIdentifier("private"),Se.private?t.createTrue():t.createFalse()),t.createPropertyAssignment(t.createIdentifier("access"),A(Se.name,Se.access)),t.createPropertyAssignment(t.createIdentifier("metadata"),Se.metadata)];return t.createObjectLiteralExpression(je)}function R(Se){return Se.kind==="class"?p(Se):I(Se)}function M(Se,je,at,Gt,vt,$e){return e.requestEmitHelper(xW),t.createCallExpression(o("__esDecorate"),void 0,[Se??t.createNull(),je??t.createNull(),at,R(Gt),vt,$e])}function C(Se,je,at){return e.requestEmitHelper(RW),t.createCallExpression(o("__runInitializers"),void 0,at?[Se,je,at]:[Se,je])}function O(Se){return os(e.getCompilerOptions())>=2?t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"assign"),void 0,Se):(e.requestEmitHelper(DW),t.createCallExpression(o("__assign"),void 0,Se))}function U(Se){return e.requestEmitHelper(tI),t.createCallExpression(o("__await"),void 0,[Se])}function K(Se,je){return e.requestEmitHelper(tI),e.requestEmitHelper(NW),(Se.emitNode||(Se.emitNode={})).flags|=1572864,t.createCallExpression(o("__asyncGenerator"),void 0,[je?t.createThis():t.createVoidZero(),t.createIdentifier("arguments"),Se])}function Z(Se){return e.requestEmitHelper(tI),e.requestEmitHelper(CW),t.createCallExpression(o("__asyncDelegator"),void 0,[Se])}function V(Se){return e.requestEmitHelper(PW),t.createCallExpression(o("__asyncValues"),void 0,[Se])}function se(Se,je,at,Gt){e.requestEmitHelper(MW);const vt=[];let $e=0;for(let It=0;It<je.length-1;It++){const tn=$H(je[It]);if(tn)if(Za(tn)){N.assertIsDefined(at,"Encountered computed property name but 'computedTempVariables' argument was not provided.");const rn=at[$e];$e++,vt.push(t.createConditionalExpression(t.createTypeCheck(rn,"symbol"),void 0,rn,void 0,t.createAdd(rn,t.createStringLiteral(""))))}else vt.push(t.createStringLiteralFromNode(tn))}return t.createCallExpression(o("__rest"),void 0,[Se,dt(t.createArrayLiteralExpression(vt),Gt)])}function G(Se,je,at,Gt,vt){e.requestEmitHelper(LW);const $e=t.createFunctionExpression(void 0,t.createToken(42),void 0,void 0,Gt??[],void 0,vt);return($e.emitNode||($e.emitNode={})).flags|=1572864,t.createCallExpression(o("__awaiter"),void 0,[Se?t.createThis():t.createVoidZero(),je??t.createVoidZero(),at?nw(t,at):t.createVoidZero(),$e])}function ne(Se){return e.requestEmitHelper(kW),t.createCallExpression(o("__extends"),void 0,[Se,t.createUniqueName("_super",48)])}function he(Se,je){return e.requestEmitHelper(wW),t.createCallExpression(o("__makeTemplateObject"),void 0,[Se,je])}function ye(Se,je,at){return e.requestEmitHelper(WW),t.createCallExpression(o("__spreadArray"),void 0,[Se,je,at?r():i()])}function $(Se){return e.requestEmitHelper(FW),t.createCallExpression(o("__propKey"),void 0,[Se])}function Y(Se,je,at){return e.requestEmitHelper(zW),e.factory.createCallExpression(o("__setFunctionName"),void 0,at?[Se,je,e.factory.createStringLiteral(at)]:[Se,je])}function oe(Se){return e.requestEmitHelper(BW),t.createCallExpression(o("__values"),void 0,[Se])}function fe(Se,je){return e.requestEmitHelper(OW),t.createCallExpression(o("__read"),void 0,je!==void 0?[Se,t.createNumericLiteral(je+"")]:[Se])}function Ne(Se){return e.requestEmitHelper(GW),t.createCallExpression(o("__generator"),void 0,[t.createThis(),Se])}function pe(Se,je,at){return e.requestEmitHelper(UR),t.createCallExpression(o("__createBinding"),void 0,[t.createIdentifier("exports"),Se,je,...at?[at]:[]])}function ie(Se){return e.requestEmitHelper(Vk),t.createCallExpression(o("__importStar"),void 0,[Se])}function ve(){return e.requestEmitHelper(Vk),o("__importStar")}function Le(Se){return e.requestEmitHelper(jW),t.createCallExpression(o("__importDefault"),void 0,[Se])}function He(Se,je=t.createIdentifier("exports")){return e.requestEmitHelper(UW),e.requestEmitHelper(UR),t.createCallExpression(o("__exportStar"),void 0,[Se,je])}function Ee(Se,je,at,Gt){e.requestEmitHelper(HW);let vt;return Gt?vt=[Se,je,t.createStringLiteral(at),Gt]:vt=[Se,je,t.createStringLiteral(at)],t.createCallExpression(o("__classPrivateFieldGet"),void 0,vt)}function De(Se,je,at,Gt,vt){e.requestEmitHelper(qW);let $e;return vt?$e=[Se,je,at,t.createStringLiteral(Gt),vt]:$e=[Se,je,at,t.createStringLiteral(Gt)],t.createCallExpression(o("__classPrivateFieldSet"),void 0,$e)}function Pe(Se,je){return e.requestEmitHelper(JW),t.createCallExpression(o("__classPrivateFieldIn"),void 0,[Se,je])}function We(Se,je,at){return e.requestEmitHelper(KW),t.createCallExpression(o("__addDisposableResource"),void 0,[Se,je,at?t.createTrue():t.createFalse()])}function At(Se){return e.requestEmitHelper(XW),t.createCallExpression(o("__disposeResources"),void 0,[Se])}}function Cae(e,t){return e===t||e.priority===t.priority?0:e.priority===void 0?1:t.priority===void 0?-1:rl(e.priority,t.priority)}function SH(e,...t){return r=>{let i="";for(let o=0;o<t.length;o++)i+=e[o],i+=r(t[o]);return i+=e[e.length-1],i}}function TH(){return QTe||(QTe=NE([TW,AW,IW,xW,RW,DW,tI,NW,CW,PW,MW,LW,kW,wW,WW,BW,OW,FW,zW,GW,Vk,jW,UW,HW,qW,JW,UR,VW,KW,XW],e=>e.name))}function mP(e,t){return la(e)&&Ve(e.expression)&&(ja(e.expression)&8192)!==0&&e.expression.escapedText===t}var AH,TW,AW,IW,xW,RW,DW,tI,NW,CW,PW,MW,LW,kW,wW,OW,WW,FW,zW,BW,GW,UR,VW,Vk,jW,UW,HW,qW,JW,KW,XW,QTe,jk,Uk,VGe=T({"src/compiler/factory/emitHelpers.ts"(){ra(),AH=(e=>(e.Field="f",e.Method="m",e.Accessor="a",e))(AH||{}),TW={name:"typescript:decorate",importName:"__decorate",scoped:!1,priority:2,text:`
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
+ };`},AW={name:"typescript:metadata",importName:"__metadata",scoped:!1,priority:3,text:`
+ var __metadata = (this && this.__metadata) || function (k, v) {
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
+ };`},IW={name:"typescript:param",importName:"__param",scoped:!1,priority:4,text:`
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
+ return function (target, key) { decorator(target, key, paramIndex); }
+ };`},xW={name:"typescript:esDecorate",importName:"__esDecorate",scoped:!1,priority:2,text:`
+ var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
+ function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
+ var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
+ var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
+ var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
+ var _, done = false;
+ for (var i = decorators.length - 1; i >= 0; i--) {
+ var context = {};
+ for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
+ for (var p in contextIn.access) context.access[p] = contextIn.access[p];
+ context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
+ var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
+ if (kind === "accessor") {
+ if (result === void 0) continue;
+ if (result === null || typeof result !== "object") throw new TypeError("Object expected");
+ if (_ = accept(result.get)) descriptor.get = _;
+ if (_ = accept(result.set)) descriptor.set = _;
+ if (_ = accept(result.init)) initializers.unshift(_);
+ }
+ else if (_ = accept(result)) {
+ if (kind === "field") initializers.unshift(_);
+ else descriptor[key] = _;
+ }
+ }
+ if (target) Object.defineProperty(target, contextIn.name, descriptor);
+ done = true;
+ };`},RW={name:"typescript:runInitializers",importName:"__runInitializers",scoped:!1,priority:2,text:`
+ var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
+ var useValue = arguments.length > 2;
+ for (var i = 0; i < initializers.length; i++) {
+ value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
+ }
+ return useValue ? value : void 0;
+ };`},DW={name:"typescript:assign",importName:"__assign",scoped:!1,priority:1,text:`
+ var __assign = (this && this.__assign) || function () {
+ __assign = Object.assign || function(t) {
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
+ s = arguments[i];
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
+ t[p] = s[p];
+ }
+ return t;
+ };
+ return __assign.apply(this, arguments);
+ };`},tI={name:"typescript:await",importName:"__await",scoped:!1,text:`
+ var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }`},NW={name:"typescript:asyncGenerator",importName:"__asyncGenerator",scoped:!1,dependencies:[tI],text:`
+ var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+ var g = generator.apply(thisArg, _arguments || []), i, q = [];
+ return i = {}, verb("next"), verb("throw"), verb("return", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;
+ function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }
+ function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }
+ function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
+ function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
+ function fulfill(value) { resume("next", value); }
+ function reject(value) { resume("throw", value); }
+ function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
+ };`},CW={name:"typescript:asyncDelegator",importName:"__asyncDelegator",scoped:!1,dependencies:[tI],text:`
+ var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {
+ var i, p;
+ return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
+ function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }
+ };`},PW={name:"typescript:asyncValues",importName:"__asyncValues",scoped:!1,text:`
+ var __asyncValues = (this && this.__asyncValues) || function (o) {
+ if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
+ var m = o[Symbol.asyncIterator], i;
+ return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
+ function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
+ function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
+ };`},MW={name:"typescript:rest",importName:"__rest",scoped:!1,text:`
+ var __rest = (this && this.__rest) || function (s, e) {
+ var t = {};
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
+ t[p] = s[p];
+ if (s != null && typeof Object.getOwnPropertySymbols === "function")
+ for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
+ if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
+ t[p[i]] = s[p[i]];
+ }
+ return t;
+ };`},LW={name:"typescript:awaiter",importName:"__awaiter",scoped:!1,priority:5,text:`
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+ };`},kW={name:"typescript:extends",importName:"__extends",scoped:!1,priority:0,text:`
+ var __extends = (this && this.__extends) || (function () {
+ var extendStatics = function (d, b) {
+ extendStatics = Object.setPrototypeOf ||
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
+ return extendStatics(d, b);
+ };
+
+ return function (d, b) {
+ if (typeof b !== "function" && b !== null)
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+ extendStatics(d, b);
+ function __() { this.constructor = d; }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ };
+ })();`},wW={name:"typescript:makeTemplateObject",importName:"__makeTemplateObject",scoped:!1,priority:0,text:`
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
+ return cooked;
+ };`},OW={name:"typescript:read",importName:"__read",scoped:!1,text:`
+ var __read = (this && this.__read) || function (o, n) {
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
+ if (!m) return o;
+ var i = m.call(o), r, ar = [], e;
+ try {
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
+ }
+ catch (error) { e = { error: error }; }
+ finally {
+ try {
+ if (r && !r.done && (m = i["return"])) m.call(i);
+ }
+ finally { if (e) throw e.error; }
+ }
+ return ar;
+ };`},WW={name:"typescript:spreadArray",importName:"__spreadArray",scoped:!1,text:`
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
+ if (ar || !(i in from)) {
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+ ar[i] = from[i];
+ }
+ }
+ return to.concat(ar || Array.prototype.slice.call(from));
+ };`},FW={name:"typescript:propKey",importName:"__propKey",scoped:!1,text:`
+ var __propKey = (this && this.__propKey) || function (x) {
+ return typeof x === "symbol" ? x : "".concat(x);
+ };`},zW={name:"typescript:setFunctionName",importName:"__setFunctionName",scoped:!1,text:`
+ var __setFunctionName = (this && this.__setFunctionName) || function (f, name, prefix) {
+ if (typeof name === "symbol") name = name.description ? "[".concat(name.description, "]") : "";
+ return Object.defineProperty(f, "name", { configurable: true, value: prefix ? "".concat(prefix, " ", name) : name });
+ };`},BW={name:"typescript:values",importName:"__values",scoped:!1,text:`
+ var __values = (this && this.__values) || function(o) {
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
+ if (m) return m.call(o);
+ if (o && typeof o.length === "number") return {
+ next: function () {
+ if (o && i >= o.length) o = void 0;
+ return { value: o && o[i++], done: !o };
+ }
+ };
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
+ };`},GW={name:"typescript:generator",importName:"__generator",scoped:!1,priority:6,text:`
+ var __generator = (this && this.__generator) || function (thisArg, body) {
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
+ function verb(n) { return function (v) { return step([n, v]); }; }
+ function step(op) {
+ if (f) throw new TypeError("Generator is already executing.");
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
+ if (y = 0, t) op = [op[0] & 2, t.value];
+ switch (op[0]) {
+ case 0: case 1: t = op; break;
+ case 4: _.label++; return { value: op[1], done: false };
+ case 5: _.label++; y = op[1]; op = [0]; continue;
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
+ default:
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
+ if (t[2]) _.ops.pop();
+ _.trys.pop(); continue;
+ }
+ op = body.call(thisArg, _);
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
+ }
+ };`},UR={name:"typescript:commonjscreatebinding",importName:"__createBinding",scoped:!1,priority:1,text:`
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ var desc = Object.getOwnPropertyDescriptor(m, k);
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
+ desc = { enumerable: true, get: function() { return m[k]; } };
+ }
+ Object.defineProperty(o, k2, desc);
+ }) : (function(o, m, k, k2) {
+ if (k2 === undefined) k2 = k;
+ o[k2] = m[k];
+ }));`},VW={name:"typescript:commonjscreatevalue",importName:"__setModuleDefault",scoped:!1,priority:1,text:`
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
+ }) : function(o, v) {
+ o["default"] = v;
+ });`},Vk={name:"typescript:commonjsimportstar",importName:"__importStar",scoped:!1,dependencies:[UR,VW],priority:2,text:`
+ var __importStar = (this && this.__importStar) || function (mod) {
+ if (mod && mod.__esModule) return mod;
+ var result = {};
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
+ __setModuleDefault(result, mod);
+ return result;
+ };`},jW={name:"typescript:commonjsimportdefault",importName:"__importDefault",scoped:!1,text:`
+ var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+ };`},UW={name:"typescript:export-star",importName:"__exportStar",scoped:!1,dependencies:[UR],priority:2,text:`
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
+ };`},HW={name:"typescript:classPrivateFieldGet",importName:"__classPrivateFieldGet",scoped:!1,text:`
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
+ };`},qW={name:"typescript:classPrivateFieldSet",importName:"__classPrivateFieldSet",scoped:!1,text:`
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
+ if (kind === "m") throw new TypeError("Private method is not writable");
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
+ };`},JW={name:"typescript:classPrivateFieldIn",importName:"__classPrivateFieldIn",scoped:!1,text:`
+ var __classPrivateFieldIn = (this && this.__classPrivateFieldIn) || function(state, receiver) {
+ if (receiver === null || (typeof receiver !== "object" && typeof receiver !== "function")) throw new TypeError("Cannot use 'in' operator on non-object");
+ return typeof state === "function" ? receiver === state : state.has(receiver);
+ };`},KW={name:"typescript:addDisposableResource",importName:"__addDisposableResource",scoped:!1,text:`
+ var __addDisposableResource = (this && this.__addDisposableResource) || function (env, value, async) {
+ if (value !== null && value !== void 0) {
+ if (typeof value !== "object" && typeof value !== "function") throw new TypeError("Object expected.");
+ var dispose;
+ if (async) {
+ if (!Symbol.asyncDispose) throw new TypeError("Symbol.asyncDispose is not defined.");
+ dispose = value[Symbol.asyncDispose];
+ }
+ if (dispose === void 0) {
+ if (!Symbol.dispose) throw new TypeError("Symbol.dispose is not defined.");
+ dispose = value[Symbol.dispose];
+ }
+ if (typeof dispose !== "function") throw new TypeError("Object not disposable.");
+ env.stack.push({ value: value, dispose: dispose, async: async });
+ }
+ else if (async) {
+ env.stack.push({ async: true });
+ }
+ return value;
+ };`},XW={name:"typescript:disposeResources",importName:"__disposeResources",scoped:!1,text:`
+ var __disposeResources = (this && this.__disposeResources) || (function (SuppressedError) {
+ return function (env) {
+ function fail(e) {
+ env.error = env.hasError ? new SuppressedError(e, env.error, "An error was suppressed during disposal.") : e;
+ env.hasError = true;
+ }
+ function next() {
+ while (env.stack.length) {
+ var rec = env.stack.pop();
+ try {
+ var result = rec.dispose && rec.dispose.call(rec.value);
+ if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });
+ }
+ catch (e) {
+ fail(e);
+ }
+ }
+ if (env.hasError) throw env.error;
+ }
+ return next();
+ };
+ })(typeof SuppressedError === "function" ? SuppressedError : function (error, suppressed, message) {
+ var e = new Error(message);
+ return e.name = "SuppressedError", e.error = error, e.suppressed = suppressed, e;
+ });`},jk={name:"typescript:async-super",scoped:!0,text:SH`
+ const ${"_superIndex"} = name => super[name];`},Uk={name:"typescript:advanced-async-super",scoped:!0,text:SH`
+ const ${"_superIndex"} = (function (geti, seti) {
+ const cache = Object.create(null);
+ return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });
+ })(name => super[name], (name, value) => super[name] = value);`}}});function vp(e){return e.kind===9}function YW(e){return e.kind===10}function Ma(e){return e.kind===11}function nI(e){return e.kind===12}function IH(e){return e.kind===14}function rI(e){return e.kind===15}function iI(e){return e.kind===16}function xH(e){return e.kind===17}function $W(e){return e.kind===18}function QW(e){return e.kind===26}function Pae(e){return e.kind===28}function RH(e){return e.kind===40}function DH(e){return e.kind===41}function Hk(e){return e.kind===42}function qk(e){return e.kind===54}function $y(e){return e.kind===58}function Mae(e){return e.kind===59}function ZW(e){return e.kind===29}function Lae(e){return e.kind===39}function Ve(e){return e.kind===80}function Ji(e){return e.kind===81}function oI(e){return e.kind===95}function eF(e){return e.kind===90}function _P(e){return e.kind===134}function kae(e){return e.kind===131}function NH(e){return e.kind===135}function wae(e){return e.kind===148}function aI(e){return e.kind===126}function Oae(e){return e.kind===128}function Wae(e){return e.kind===164}function Fae(e){return e.kind===129}function hP(e){return e.kind===108}function gP(e){return e.kind===102}function zae(e){return e.kind===84}function xd(e){return e.kind===166}function Za(e){return e.kind===167}function gl(e){return e.kind===168}function Ao(e){return e.kind===169}function Eu(e){return e.kind===170}function yp(e){return e.kind===171}function Jo(e){return e.kind===172}function bh(e){return e.kind===173}function ql(e){return e.kind===174}function Rl(e){return e.kind===175}function Ml(e){return e.kind===176}function rf(e){return e.kind===177}function bp(e){return e.kind===178}function sI(e){return e.kind===179}function Jk(e){return e.kind===180}function t1(e){return e.kind===181}function Kk(e){return e.kind===182}function Cf(e){return e.kind===183}function Eh(e){return e.kind===184}function HR(e){return e.kind===185}function lI(e){return e.kind===186}function Ep(e){return e.kind===187}function Xk(e){return e.kind===188}function cI(e){return e.kind===189}function qR(e){return e.kind===202}function tF(e){return e.kind===190}function nF(e){return e.kind===191}function Qy(e){return e.kind===192}function uI(e){return e.kind===193}function dI(e){return e.kind===194}function BS(e){return e.kind===195}function GS(e){return e.kind===196}function Yk(e){return e.kind===197}function VS(e){return e.kind===198}function jS(e){return e.kind===199}function JR(e){return e.kind===200}function Zy(e){return e.kind===201}function ug(e){return e.kind===205}function CH(e){return e.kind===204}function Bae(e){return e.kind===203}function am(e){return e.kind===206}function n1(e){return e.kind===207}function Qa(e){return e.kind===208}function _d(e){return e.kind===209}function Oa(e){return e.kind===210}function Fr(e){return e.kind===211}function Qs(e){return e.kind===212}function la(e){return e.kind===213}function r1(e){return e.kind===214}function i1(e){return e.kind===215}function Gae(e){return e.kind===216}function Gd(e){return e.kind===217}function Os(e){return e.kind===218}function Gs(e){return e.kind===219}function Vae(e){return e.kind===220}function KR(e){return e.kind===221}function pI(e){return e.kind===222}function eb(e){return e.kind===223}function tb(e){return e.kind===224}function PH(e){return e.kind===225}function mr(e){return e.kind===226}function XR(e){return e.kind===227}function rF(e){return e.kind===228}function iF(e){return e.kind===229}function e_(e){return e.kind===230}function Zc(e){return e.kind===231}function jc(e){return e.kind===232}function Kv(e){return e.kind===233}function $k(e){return e.kind===234}function MH(e){return e.kind===238}function fI(e){return e.kind===235}function vP(e){return e.kind===236}function ZTe(e){return e.kind===237}function oF(e){return e.kind===360}function yP(e){return e.kind===361}function bP(e){return e.kind===239}function jae(e){return e.kind===240}function Xo(e){return e.kind===241}function Ll(e){return e.kind===243}function LH(e){return e.kind===242}function eu(e){return e.kind===244}function US(e){return e.kind===245}function eAe(e){return e.kind===246}function tAe(e){return e.kind===247}function HS(e){return e.kind===248}function aF(e){return e.kind===249}function Qk(e){return e.kind===250}function nAe(e){return e.kind===251}function rAe(e){return e.kind===252}function Dm(e){return e.kind===253}function Uae(e){return e.kind===254}function EP(e){return e.kind===255}function o1(e){return e.kind===256}function kH(e){return e.kind===257}function qS(e){return e.kind===258}function iAe(e){return e.kind===259}function wi(e){return e.kind===260}function Uc(e){return e.kind===261}function Ac(e){return e.kind===262}function Ic(e){return e.kind===263}function hd(e){return e.kind===264}function Nm(e){return e.kind===265}function x0(e){return e.kind===266}function Xl(e){return e.kind===267}function O_(e){return e.kind===268}function SP(e){return e.kind===269}function Zk(e){return e.kind===270}function tu(e){return e.kind===271}function kc(e){return e.kind===272}function Sh(e){return e.kind===273}function oAe(e){return e.kind===302}function Hae(e){return e.kind===300}function aAe(e){return e.kind===301}function mI(e){return e.kind===300}function qae(e){return e.kind===301}function nb(e){return e.kind===274}function Th(e){return e.kind===280}function Hg(e){return e.kind===275}function np(e){return e.kind===276}function kl(e){return e.kind===277}function Yl(e){return e.kind===278}function Pf(e){return e.kind===279}function Ku(e){return e.kind===281}function sAe(e){return e.kind===282}function wH(e){return e.kind===359}function _I(e){return e.kind===362}function Ah(e){return e.kind===283}function dg(e){return e.kind===284}function JS(e){return e.kind===285}function W_(e){return e.kind===286}function a1(e){return e.kind===287}function s1(e){return e.kind===288}function hI(e){return e.kind===289}function Jae(e){return e.kind===290}function F_(e){return e.kind===291}function l1(e){return e.kind===292}function gI(e){return e.kind===293}function TP(e){return e.kind===294}function t_(e){return e.kind===295}function YR(e){return e.kind===296}function AP(e){return e.kind===297}function of(e){return e.kind===298}function c1(e){return e.kind===299}function hc(e){return e.kind===303}function rp(e){return e.kind===304}function Xv(e){return e.kind===305}function u1(e){return e.kind===306}function Kae(e){return e.kind===308}function $i(e){return e.kind===312}function OH(e){return e.kind===313}function KS(e){return e.kind===314}function d1(e){return e.kind===316}function IP(e){return e.kind===317}function R0(e){return e.kind===318}function Xae(e){return e.kind===331}function Yae(e){return e.kind===332}function lAe(e){return e.kind===333}function $ae(e){return e.kind===319}function Qae(e){return e.kind===320}function $R(e){return e.kind===321}function sF(e){return e.kind===322}function WH(e){return e.kind===323}function QR(e){return e.kind===324}function lF(e){return e.kind===325}function cAe(e){return e.kind===326}function n_(e){return e.kind===327}function XS(e){return e.kind===329}function D0(e){return e.kind===330}function vI(e){return e.kind===335}function uAe(e){return e.kind===337}function Zae(e){return e.kind===339}function FH(e){return e.kind===345}function zH(e){return e.kind===340}function BH(e){return e.kind===341}function GH(e){return e.kind===342}function VH(e){return e.kind===343}function cF(e){return e.kind===344}function ZR(e){return e.kind===346}function jH(e){return e.kind===338}function dAe(e){return e.kind===354}function ew(e){return e.kind===347}function r_(e){return e.kind===348}function uF(e){return e.kind===349}function UH(e){return e.kind===350}function xP(e){return e.kind===351}function sm(e){return e.kind===352}function YS(e){return e.kind===353}function pAe(e){return e.kind===334}function ese(e){return e.kind===355}function dF(e){return e.kind===336}function pF(e){return e.kind===357}function fAe(e){return e.kind===356}function eD(e){return e.kind===358}var jGe=T({"src/compiler/factory/nodeTests.ts"(){ra()}});function tw(e){return e.createExportDeclaration(void 0,!1,e.createNamedExports([]),void 0)}function $S(e,t,r,i){if(Za(r))return dt(e.createElementAccessExpression(t,r.expression),i);{const o=dt(Qh(r)?e.createPropertyAccessExpression(t,r):e.createElementAccessExpression(t,r),r);return k_(o,128),o}}function tse(e,t){const r=Ih.createIdentifier(e||"React");return qa(r,Do(t)),r}function nse(e,t,r){if(xd(t)){const i=nse(e,t.left,r),o=e.createIdentifier(Sr(t.right));return o.escapedText=t.right.escapedText,e.createPropertyAccessExpression(i,o)}else return tse(Sr(t),r)}function HH(e,t,r,i){return t?nse(e,t,i):e.createPropertyAccessExpression(tse(r,i),"createElement")}function UGe(e,t,r,i){return t?nse(e,t,i):e.createPropertyAccessExpression(tse(r,i),"Fragment")}function rse(e,t,r,i,o,s){const l=[r];if(i&&l.push(i),o&&o.length>0)if(i||l.push(e.createNull()),o.length>1)for(const u of o)Xu(u),l.push(u);else l.push(o[0]);return dt(e.createCallExpression(t,void 0,l),s)}function ise(e,t,r,i,o,s,l){const p=[UGe(e,r,i,s),e.createNull()];if(o&&o.length>0)if(o.length>1)for(const h of o)Xu(h),p.push(h);else p.push(o[0]);return dt(e.createCallExpression(HH(e,t,i,s),void 0,p),l)}function qH(e,t,r){if(Uc(t)){const i=Ha(t.declarations),o=e.updateVariableDeclaration(i,i.name,void 0,void 0,r);return dt(e.createVariableStatement(void 0,e.updateVariableDeclarationList(t,[o])),t)}else{const i=dt(e.createAssignment(t,r),t);return dt(e.createExpressionStatement(i),t)}}function mAe(e,t,r){return Xo(t)?e.updateBlock(t,dt(e.createNodeArray([r,...t.statements]),t.statements)):e.createBlock(e.createNodeArray([t,r]),!0)}function nw(e,t){if(xd(t)){const r=nw(e,t.left),i=qa(dt(e.cloneNode(t.right),t.right),t.right.parent);return dt(e.createPropertyAccessExpression(r,i),t)}else return qa(dt(e.cloneNode(t),t),t.parent)}function JH(e,t){return Ve(t)?e.createStringLiteralFromNode(t):Za(t)?qa(dt(e.cloneNode(t.expression),t.expression),t.expression.parent):qa(dt(e.cloneNode(t),t),t.parent)}function HGe(e,t,r,i,o){const{firstAccessor:s,getAccessor:l,setAccessor:u}=wS(t,r);if(r===s)return dt(e.createObjectDefinePropertyCall(i,JH(e,r.name),e.createPropertyDescriptor({enumerable:e.createFalse(),configurable:!0,get:l&&dt(Cr(e.createFunctionExpression(ME(l),void 0,void 0,void 0,l.parameters,void 0,l.body),l),l),set:u&&dt(Cr(e.createFunctionExpression(ME(u),void 0,void 0,void 0,u.parameters,void 0,u.body),u),u)},!o)),s)}function qGe(e,t,r){return Cr(dt(e.createAssignment($S(e,r,t.name,t.name),t.initializer),t),t)}function JGe(e,t,r){return Cr(dt(e.createAssignment($S(e,r,t.name,t.name),e.cloneNode(t.name)),t),t)}function KGe(e,t,r){return Cr(dt(e.createAssignment($S(e,r,t.name,t.name),Cr(dt(e.createFunctionExpression(ME(t),t.asteriskToken,void 0,void 0,t.parameters,void 0,t.body),t),t)),t),t)}function ose(e,t,r,i){switch(r.name&&Ji(r.name)&&N.failBadSyntaxKind(r.name,"Private identifiers are not allowed in object literals."),r.kind){case 177:case 178:return HGe(e,t.properties,r,i,!!t.multiLine);case 303:return qGe(e,r,i);case 304:return JGe(e,r,i);case 174:return KGe(e,r,i)}}function fF(e,t,r,i,o){const s=t.operator;N.assert(s===46||s===47,"Expected 'node' to be a pre- or post-increment or pre- or post-decrement expression");const l=e.createTempVariable(i);r=e.createAssignment(l,r),dt(r,t.operand);let u=tb(t)?e.createPrefixUnaryExpression(s,l):e.createPostfixUnaryExpression(l,s);return dt(u,t),o&&(u=e.createAssignment(o,u),dt(u,t)),r=e.createComma(r,u),dt(r,t),PH(t)&&(r=e.createComma(r,l),dt(r,t)),r}function KH(e){return(ja(e)&65536)!==0}function qg(e){return(ja(e)&32768)!==0}function mF(e){return(ja(e)&16384)!==0}function _Ae(e){return Ma(e.expression)&&e.expression.text==="use strict"}function XH(e){for(const t of e)if(Im(t)){if(_Ae(t))return t}else break}function ase(e){const t=Xc(e);return t!==void 0&&Im(t)&&_Ae(t)}function rw(e){return e.kind===226&&e.operatorToken.kind===28}function RP(e){return rw(e)||yP(e)}function tD(e){return Gd(e)&&lr(e)&&!!d0(e)}function _F(e){const t=p0(e);return N.assertIsDefined(t),t}function hF(e,t=15){switch(e.kind){case 217:return t&16&&tD(e)?!1:(t&1)!==0;case 216:case 234:case 233:case 238:return(t&2)!==0;case 235:return(t&4)!==0;case 360:return(t&8)!==0}return!1}function $l(e,t=15){for(;hF(e,t);)e=e.expression;return e}function sse(e,t=15){let r=e.parent;for(;hF(r,t);)r=r.parent,N.assert(r);return r}function hAe(e){return $l(e,6)}function Xu(e){return bW(e,!0)}function iw(e){const t=Pl(e,$i),r=t&&t.emitNode;return r&&r.externalHelpersModuleName}function lse(e){const t=Pl(e,$i),r=t&&t.emitNode;return!!r&&(!!r.externalHelpersModuleName||!!r.externalHelpers)}function YH(e,t,r,i,o,s,l){if(i.importHelpers&&wA(r,i)){let u;const p=wu(i);if(p>=5&&p<=99||r.impliedNodeFormat===99){const h=SW(r);if(h){const m=[];for(const b of h)if(!b.scoped){const A=b.importName;A&&Tf(m,A)}if(bt(m)){m.sort(Uu),u=e.createNamedImports(wt(m,I=>V4(r,I)?e.createImportSpecifier(!1,void 0,e.createIdentifier(I)):e.createImportSpecifier(!1,e.createIdentifier(I),t.getUnscopedHelperName(I))));const b=Pl(r,$i),A=Ou(b);A.externalHelpers=!0}}}else{const h=cse(e,r,i,o,s||l);h&&(u=e.createNamespaceImport(h))}if(u){const h=e.createImportDeclaration(void 0,e.createImportClause(!1,void 0,u),e.createStringLiteral(Ky),void 0);return QA(h,2),h}}}function cse(e,t,r,i,o){if(r.importHelpers&&wA(t,r)){const s=iw(t);if(s)return s;const l=wu(r);let u=(i||yh(r)&&o)&&l!==4&&(l<5||t.impliedNodeFormat===1);if(!u){const p=SW(t);if(p){for(const h of p)if(!h.scoped){u=!0;break}}}if(u){const p=Pl(t,$i),h=Ou(p);return h.externalHelpersModuleName||(h.externalHelpersModuleName=e.createUniqueName(Ky))}}}function nD(e,t,r){const i=bR(t);if(i&&!WA(t)&&!U4(t)){const o=i.name;return sl(o)?o:e.createIdentifier(OE(r,o)||Sr(o))}if(t.kind===272&&t.importClause||t.kind===278&&t.moduleSpecifier)return e.getGeneratedNameForNode(t)}function yI(e,t,r,i,o,s){const l=yR(t);if(l&&Ma(l))return YGe(t,i,e,o,s)||XGe(e,l,r)||e.cloneNode(l)}function XGe(e,t,r){const i=r.renamedDependencies&&r.renamedDependencies.get(t.text);return i?e.createStringLiteral(i):void 0}function ow(e,t,r,i){if(t){if(t.moduleName)return e.createStringLiteral(t.moduleName);if(!t.isDeclarationFile&&Ps(i))return e.createStringLiteral(fU(r,t.fileName))}}function YGe(e,t,r,i,o){return ow(r,i.getExternalModuleFileFromDeclaration(e),t,o)}function aw(e){if(gL(e))return e.initializer;if(hc(e)){const t=e.initializer;return Lc(t,!0)?t.right:void 0}if(rp(e))return e.objectAssignmentInitializer;if(Lc(e,!0))return e.right;if(e_(e))return aw(e.expression)}function rb(e){if(gL(e))return e.name;if(Wg(e)){switch(e.kind){case 303:return rb(e.initializer);case 304:return e.name;case 305:return rb(e.expression)}return}return Lc(e,!0)?rb(e.left):e_(e)?rb(e.expression):e}function gF(e){switch(e.kind){case 169:case 208:return e.dotDotDotToken;case 230:case 305:return e}}function $H(e){const t=vF(e);return N.assert(!!t||Xv(e),"Invalid property name for binding element."),t}function vF(e){switch(e.kind){case 208:if(e.propertyName){const r=e.propertyName;return Ji(r)?N.failBadSyntaxKind(r):Za(r)&&gAe(r.expression)?r.expression:r}break;case 303:if(e.name){const r=e.name;return Ji(r)?N.failBadSyntaxKind(r):Za(r)&&gAe(r.expression)?r.expression:r}break;case 305:return e.name&&Ji(e.name)?N.failBadSyntaxKind(e.name):e.name}const t=rb(e);if(t&&oc(t))return t}function gAe(e){const t=e.kind;return t===11||t===9}function rD(e){switch(e.kind){case 206:case 207:case 209:return e.elements;case 210:return e.properties}}function QH(e){if(e){let t=e;for(;;){if(Ve(t)||!t.body)return Ve(t)?t:t.name;t=t.body}}}function vAe(e){const t=e.kind;return t===176||t===178}function use(e){const t=e.kind;return t===176||t===177||t===178}function ZH(e){const t=e.kind;return t===303||t===304||t===262||t===176||t===181||t===175||t===282||t===243||t===264||t===265||t===266||t===267||t===271||t===272||t===270||t===278||t===277}function dse(e){const t=e.kind;return t===175||t===303||t===304||t===282||t===270}function pse(e){return $y(e)||qk(e)}function fse(e){return Ve(e)||Yk(e)}function mse(e){return wae(e)||RH(e)||DH(e)}function _se(e){return $y(e)||RH(e)||DH(e)}function hse(e){return Ve(e)||Ma(e)}function yAe(e){const t=e.kind;return t===106||t===112||t===97||kE(e)||tb(e)}function $Ge(e){return e===43}function QGe(e){return e===42||e===44||e===45}function ZGe(e){return $Ge(e)||QGe(e)}function eVe(e){return e===40||e===41}function tVe(e){return eVe(e)||ZGe(e)}function nVe(e){return e===48||e===49||e===50}function eq(e){return nVe(e)||tVe(e)}function rVe(e){return e===30||e===33||e===32||e===34||e===104||e===103}function iVe(e){return rVe(e)||eq(e)}function oVe(e){return e===35||e===37||e===36||e===38}function aVe(e){return oVe(e)||iVe(e)}function sVe(e){return e===51||e===52||e===53}function lVe(e){return sVe(e)||aVe(e)}function cVe(e){return e===56||e===57}function uVe(e){return cVe(e)||lVe(e)}function dVe(e){return e===61||uVe(e)||Vv(e)}function pVe(e){return dVe(e)||e===28}function gse(e){return pVe(e.kind)}function yF(e,t,r,i,o,s){const l=new SAe(e,t,r,i,o,s);return u;function u(p,h){const m={value:void 0},b=[nq.enter],A=[p],I=[void 0];let R=0;for(;b[R]!==nq.done;)R=b[R](l,R,b,A,I,m,h);return N.assertEqual(R,0),m.value}}function bAe(e){return e===95||e===90}function sw(e){const t=e.kind;return bAe(t)}function EAe(e){const t=e.kind;return Wv(t)&&!bAe(t)}function vse(e,t){if(t!==void 0)return t.length===0?t:dt(e.createNodeArray([],t.hasTrailingComma),t)}function lw(e){var t;const r=e.emitNode.autoGenerate;if(r.flags&4){const i=r.id;let o=e,s=o.original;for(;s;){o=s;const l=(t=o.emitNode)==null?void 0:t.autoGenerate;if(Qh(o)&&(l===void 0||l.flags&4&&l.id!==i))break;s=o.original}return o}return e}function iD(e,t){return typeof e=="object"?N0(!1,e.prefix,e.node,e.suffix,t):typeof e=="string"?e.length>0&&e.charCodeAt(0)===35?e.slice(1):e:""}function fVe(e,t){return typeof e=="string"?e:mVe(e,N.checkDefined(t))}function mVe(e,t){return gS(e)?t(e).slice(1):sl(e)?t(e):Ji(e)?e.escapedText.slice(1):Sr(e)}function N0(e,t,r,i,o){return t=iD(t,o),i=iD(i,o),r=fVe(r,o),`${e?"#":""}${t}${r}${i}`}function tq(e,t,r,i){return e.updatePropertyDeclaration(t,r,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage"),void 0,void 0,i)}function yse(e,t,r,i,o=e.createThis()){return e.createGetAccessorDeclaration(r,i,[],void 0,e.createBlock([e.createReturnStatement(e.createPropertyAccessExpression(o,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")))]))}function bse(e,t,r,i,o=e.createThis()){return e.createSetAccessorDeclaration(r,i,[e.createParameterDeclaration(void 0,void 0,"value")],e.createBlock([e.createExpressionStatement(e.createAssignment(e.createPropertyAccessExpression(o,e.getGeneratedPrivateNameForNode(t.name,void 0,"_accessor_storage")),e.createIdentifier("value")))]))}function bF(e){let t=e.expression;for(;;){if(t=$l(t),yP(t)){t=Ya(t.elements);continue}if(rw(t)){t=t.right;continue}if(Lc(t,!0)&&sl(t.left))return t;break}}function _Ve(e){return Gd(e)&&$s(e)&&!e.emitNode}function EF(e,t){if(_Ve(e))EF(e.expression,t);else if(rw(e))EF(e.left,t),EF(e.right,t);else if(yP(e))for(const r of e.elements)EF(r,t);else t.push(e)}function Ese(e){const t=[];return EF(e,t),t}function cw(e){if(e.transformFlags&65536)return!0;if(e.transformFlags&128)for(const t of rD(e)){const r=rb(t);if(r&&gC(r)&&(r.transformFlags&65536||r.transformFlags&128&&cw(r)))return!0}return!1}var nq,SAe,hVe=T({"src/compiler/factory/utilities.ts"(){ra(),(e=>{function t(m,b,A,I,R,M,C){const O=b>0?R[b-1]:void 0;return N.assertEqual(A[b],t),R[b]=m.onEnter(I[b],O,C),A[b]=u(m,t),b}e.enter=t;function r(m,b,A,I,R,M,C){N.assertEqual(A[b],r),N.assertIsDefined(m.onLeft),A[b]=u(m,r);const O=m.onLeft(I[b].left,R[b],I[b]);return O?(h(b,I,O),p(b,A,I,R,O)):b}e.left=r;function i(m,b,A,I,R,M,C){return N.assertEqual(A[b],i),N.assertIsDefined(m.onOperator),A[b]=u(m,i),m.onOperator(I[b].operatorToken,R[b],I[b]),b}e.operator=i;function o(m,b,A,I,R,M,C){N.assertEqual(A[b],o),N.assertIsDefined(m.onRight),A[b]=u(m,o);const O=m.onRight(I[b].right,R[b],I[b]);return O?(h(b,I,O),p(b,A,I,R,O)):b}e.right=o;function s(m,b,A,I,R,M,C){N.assertEqual(A[b],s),A[b]=u(m,s);const O=m.onExit(I[b],R[b]);if(b>0){if(b--,m.foldState){const U=A[b]===s?"right":"left";R[b]=m.foldState(R[b],O,U)}}else M.value=O;return b}e.exit=s;function l(m,b,A,I,R,M,C){return N.assertEqual(A[b],l),b}e.done=l;function u(m,b){switch(b){case t:if(m.onLeft)return r;case r:if(m.onOperator)return i;case i:if(m.onRight)return o;case o:return s;case s:return l;case l:return l;default:N.fail("Invalid state")}}e.nextState=u;function p(m,b,A,I,R){return m++,b[m]=t,A[m]=R,I[m]=void 0,m}function h(m,b,A){if(N.shouldAssert(2))for(;m>=0;)N.assert(b[m]!==A,"Circular traversal detected."),m--}})(nq||(nq={})),SAe=class{constructor(e,t,r,i,o,s){this.onEnter=e,this.onLeft=t,this.onOperator=r,this.onRight=i,this.onExit=o,this.foldState=s}}}});function dt(e,t){return t?vh(e,t.pos,t.end):e}function Cm(e){const t=e.kind;return t===168||t===169||t===171||t===172||t===173||t===174||t===176||t===177||t===178||t===181||t===185||t===218||t===219||t===231||t===243||t===262||t===263||t===264||t===265||t===266||t===267||t===271||t===272||t===277||t===278}function QS(e){const t=e.kind;return t===169||t===172||t===174||t===177||t===178||t===231||t===263}var gVe=T({"src/compiler/factory/utilitiesPublic.ts"(){ra()}});function Yt(e,t){return t&&e(t)}function Gi(e,t,r){if(r){if(t)return t(r);for(const i of r){const o=e(i);if(o)return o}}}function rq(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}function uw(e){return Ue(e.statements,vVe)||yVe(e)}function vVe(e){return Cm(e)&&bVe(e,95)||tu(e)&&Ah(e.moduleReference)||kc(e)||kl(e)||Yl(e)?e:void 0}function yVe(e){return e.flags&8388608?TAe(e):void 0}function TAe(e){return EVe(e)?e:Ho(e,TAe)}function bVe(e,t){return bt(e.modifiers,r=>r.kind===t)}function EVe(e){return vP(e)&&e.keywordToken===102&&e.name.escapedText==="meta"}function AAe(e,t,r){return Gi(t,r,e.typeParameters)||Gi(t,r,e.parameters)||Yt(t,e.type)}function IAe(e,t,r){return Gi(t,r,e.types)}function xAe(e,t,r){return Yt(t,e.type)}function RAe(e,t,r){return Gi(t,r,e.elements)}function DAe(e,t,r){return Yt(t,e.expression)||Yt(t,e.questionDotToken)||Gi(t,r,e.typeArguments)||Gi(t,r,e.arguments)}function NAe(e,t,r){return Gi(t,r,e.statements)}function CAe(e,t,r){return Yt(t,e.label)}function PAe(e,t,r){return Gi(t,r,e.modifiers)||Yt(t,e.name)||Gi(t,r,e.typeParameters)||Gi(t,r,e.heritageClauses)||Gi(t,r,e.members)}function MAe(e,t,r){return Gi(t,r,e.elements)}function LAe(e,t,r){return Yt(t,e.propertyName)||Yt(t,e.name)}function kAe(e,t,r){return Yt(t,e.tagName)||Gi(t,r,e.typeArguments)||Yt(t,e.attributes)}function DP(e,t,r){return Yt(t,e.type)}function wAe(e,t,r){return Yt(t,e.tagName)||(e.isNameFirst?Yt(t,e.name)||Yt(t,e.typeExpression):Yt(t,e.typeExpression)||Yt(t,e.name))||(typeof e.comment=="string"?void 0:Gi(t,r,e.comment))}function NP(e,t,r){return Yt(t,e.tagName)||Yt(t,e.typeExpression)||(typeof e.comment=="string"?void 0:Gi(t,r,e.comment))}function Sse(e,t,r){return Yt(t,e.name)}function oD(e,t,r){return Yt(t,e.tagName)||(typeof e.comment=="string"?void 0:Gi(t,r,e.comment))}function SVe(e,t,r){return Yt(t,e.expression)}function Ho(e,t,r){if(e===void 0||e.kind<=165)return;const i=HAe[e.kind];return i===void 0?void 0:i(e,t,r)}function CP(e,t,r){const i=OAe(e),o=[];for(;o.length<i.length;)o.push(e);for(;i.length!==0;){const s=i.pop(),l=o.pop();if(To(s)){if(r){const u=r(s,l);if(u){if(u==="skip")continue;return u}}for(let u=s.length-1;u>=0;--u)i.push(s[u]),o.push(l)}else{const u=t(s,l);if(u){if(u==="skip")continue;return u}if(s.kind>=166)for(const p of OAe(s))i.push(p),o.push(s)}}}function OAe(e){const t=[];return Ho(e,r,r),t;function r(i){t.unshift(i)}}function WAe(e){e.externalModuleIndicator=uw(e)}function dw(e,t,r,i=!1,o){var s,l,u,p;(s=sr)==null||s.push(sr.Phase.Parse,"createSourceFile",{path:e},!0),il("beforeParse");let h;(l=ad)==null||l.logStartParseSourceFile(e);const{languageVersion:m,setExternalModuleIndicator:b,impliedNodeFormat:A,jsDocParsingMode:I}=typeof r=="object"?r:{languageVersion:r};if(m===100)h=P0.parseSourceFile(e,t,m,void 0,i,6,$a,I);else{const R=A===void 0?b:M=>(M.impliedNodeFormat=A,(b||WAe)(M));h=P0.parseSourceFile(e,t,m,void 0,i,o,R,I)}return(u=ad)==null||u.logStopParseSourceFile(),il("afterParse"),ef("Parse","beforeParse","afterParse"),(p=sr)==null||p.pop(),h}function bI(e,t){return P0.parseIsolatedEntityName(e,t)}function pw(e,t){return P0.parseJsonText(e,t)}function sc(e){return e.externalModuleIndicator!==void 0}function iq(e,t,r,i=!1){const o=cq.updateSourceFile(e,t,r,i);return o.flags|=e.flags&12582912,o}function Tse(e,t,r){const i=P0.JSDocParser.parseIsolatedJSDocComment(e,t,r);return i&&i.jsDoc&&P0.fixupParentReferences(i.jsDoc),i}function FAe(e,t,r){return P0.JSDocParser.parseJSDocTypeExpressionForTests(e,t,r)}function Su(e){return oq(e)!==void 0}function oq(e){const t=Jx(e,Mk,!1);if(t)return t;if(Il(e,".ts")){const r=ic(e).lastIndexOf(".d.");if(r>=0)return e.substring(r)}}function TVe(e,t,r,i){if(e){if(e==="import")return 99;if(e==="require")return 1;i(t,r-t,f.resolution_mode_should_be_either_require_or_import)}}function aq(e,t){const r=[];for(const i of Yh(t,0)||et){const o=t.substring(i.pos,i.end);IVe(r,i,o)}e.pragmas=new Map;for(const i of r){if(e.pragmas.has(i.name)){const o=e.pragmas.get(i.name);o instanceof Array?o.push(i.args):e.pragmas.set(i.name,[o,i.args]);continue}e.pragmas.set(i.name,i.args)}}function sq(e,t){e.checkJsDirective=void 0,e.referencedFiles=[],e.typeReferenceDirectives=[],e.libReferenceDirectives=[],e.amdDependencies=[],e.hasNoDefaultLib=!1,e.pragmas.forEach((r,i)=>{switch(i){case"reference":{const o=e.referencedFiles,s=e.typeReferenceDirectives,l=e.libReferenceDirectives;Ue(SA(r),u=>{const{types:p,lib:h,path:m,["resolution-mode"]:b}=u.arguments;if(u.arguments["no-default-lib"])e.hasNoDefaultLib=!0;else if(p){const A=TVe(b,p.pos,p.end,t);s.push({pos:p.pos,end:p.end,fileName:p.value,...A?{resolutionMode:A}:{}})}else h?l.push({pos:h.pos,end:h.end,fileName:h.value}):m?o.push({pos:m.pos,end:m.end,fileName:m.value}):t(u.range.pos,u.range.end-u.range.pos,f.Invalid_reference_directive_syntax)});break}case"amd-dependency":{e.amdDependencies=wt(SA(r),o=>({name:o.arguments.name,path:o.arguments.path}));break}case"amd-module":{if(r instanceof Array)for(const o of r)e.moduleName&&t(o.range.pos,o.range.end-o.range.pos,f.An_AMD_module_cannot_have_multiple_name_assignments),e.moduleName=o.arguments.name;else e.moduleName=r.arguments.name;break}case"ts-nocheck":case"ts-check":{Ue(SA(r),o=>{(!e.checkJsDirective||o.range.pos>e.checkJsDirective.pos)&&(e.checkJsDirective={enabled:i==="ts-check",end:o.range.end,pos:o.range.pos})});break}case"jsx":case"jsxfrag":case"jsximportsource":case"jsxruntime":return;default:N.fail("Unhandled pragma kind")}})}function AVe(e){if(uq.has(e))return uq.get(e);const t=new RegExp(`(\\s${e}\\s*=\\s*)(?:(?:'([^']*)')|(?:"([^"]*)"))`,"im");return uq.set(e,t),t}function IVe(e,t,r){const i=t.kind===2&&qAe.exec(r);if(i){const s=i[1].toLowerCase(),l=qM[s];if(!l||!(l.kind&1))return;if(l.args){const u={};for(const p of l.args){const m=AVe(p.name).exec(r);if(!m&&!p.optional)return;if(m){const b=m[2]||m[3];if(p.captureSpan){const A=t.pos+m.index+m[1].length+1;u[p.name]={value:b,pos:A,end:A+b.length}}else u[p.name]=b}}e.push({name:s,args:{arguments:u,range:t}})}else e.push({name:s,args:{arguments:{},range:t}});return}const o=t.kind===2&&JAe.exec(r);if(o)return zAe(e,t,2,o);if(t.kind===3){const s=/@(\S+)(\s+.*)?$/gim;let l;for(;l=s.exec(r);)zAe(e,t,4,l)}}function zAe(e,t,r,i){if(!i)return;const o=i[1].toLowerCase(),s=qM[o];if(!s||!(s.kind&r))return;const l=i[2],u=xVe(s,l);u!=="fail"&&e.push({name:o,args:{arguments:u,range:t}})}function xVe(e,t){if(!t)return{};if(!e.args)return{};const r=t.trim().split(/\s+/),i={};for(let o=0;o<e.args.length;o++){const s=e.args[o];if(!r[o]&&!s.optional)return"fail";if(s.captureSpan)return N.fail("Capture spans not yet implemented for non-xml pragmas");i[s.name]=r[o]}return i}function C0(e,t){return e.kind!==t.kind?!1:e.kind===80?e.escapedText===t.escapedText:e.kind===110?!0:e.kind===295?e.namespace.escapedText===t.namespace.escapedText&&e.name.escapedText===t.name.escapedText:e.name.escapedText===t.name.escapedText&&C0(e.expression,t.expression)}var BAe,GAe,VAe,jAe,UAe,lq,Ih,HAe,P0,cq,uq,qAe,JAe,RVe=T({"src/compiler/parser.ts"(){ra(),fS(),lq={createBaseSourceFileNode:e=>new(UAe||(UAe=lu.getSourceFileConstructor()))(e,-1,-1),createBaseIdentifierNode:e=>new(VAe||(VAe=lu.getIdentifierConstructor()))(e,-1,-1),createBasePrivateIdentifierNode:e=>new(jAe||(jAe=lu.getPrivateIdentifierConstructor()))(e,-1,-1),createBaseTokenNode:e=>new(GAe||(GAe=lu.getTokenConstructor()))(e,-1,-1),createBaseNode:e=>new(BAe||(BAe=lu.getNodeConstructor()))(e,-1,-1)},Ih=wk(1,lq),HAe={166:function(t,r,i){return Yt(r,t.left)||Yt(r,t.right)},168:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.constraint)||Yt(r,t.default)||Yt(r,t.expression)},304:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.questionToken)||Yt(r,t.exclamationToken)||Yt(r,t.equalsToken)||Yt(r,t.objectAssignmentInitializer)},305:function(t,r,i){return Yt(r,t.expression)},169:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.dotDotDotToken)||Yt(r,t.name)||Yt(r,t.questionToken)||Yt(r,t.type)||Yt(r,t.initializer)},172:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.questionToken)||Yt(r,t.exclamationToken)||Yt(r,t.type)||Yt(r,t.initializer)},171:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.questionToken)||Yt(r,t.type)||Yt(r,t.initializer)},303:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.questionToken)||Yt(r,t.exclamationToken)||Yt(r,t.initializer)},260:function(t,r,i){return Yt(r,t.name)||Yt(r,t.exclamationToken)||Yt(r,t.type)||Yt(r,t.initializer)},208:function(t,r,i){return Yt(r,t.dotDotDotToken)||Yt(r,t.propertyName)||Yt(r,t.name)||Yt(r,t.initializer)},181:function(t,r,i){return Gi(r,i,t.modifiers)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)},185:function(t,r,i){return Gi(r,i,t.modifiers)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)},184:function(t,r,i){return Gi(r,i,t.modifiers)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)},179:AAe,180:AAe,174:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.asteriskToken)||Yt(r,t.name)||Yt(r,t.questionToken)||Yt(r,t.exclamationToken)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)||Yt(r,t.body)},173:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.questionToken)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)},176:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)||Yt(r,t.body)},177:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)||Yt(r,t.body)},178:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)||Yt(r,t.body)},262:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.asteriskToken)||Yt(r,t.name)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)||Yt(r,t.body)},218:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.asteriskToken)||Yt(r,t.name)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)||Yt(r,t.body)},219:function(t,r,i){return Gi(r,i,t.modifiers)||Gi(r,i,t.typeParameters)||Gi(r,i,t.parameters)||Yt(r,t.type)||Yt(r,t.equalsGreaterThanToken)||Yt(r,t.body)},175:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.body)},183:function(t,r,i){return Yt(r,t.typeName)||Gi(r,i,t.typeArguments)},182:function(t,r,i){return Yt(r,t.assertsModifier)||Yt(r,t.parameterName)||Yt(r,t.type)},186:function(t,r,i){return Yt(r,t.exprName)||Gi(r,i,t.typeArguments)},187:function(t,r,i){return Gi(r,i,t.members)},188:function(t,r,i){return Yt(r,t.elementType)},189:function(t,r,i){return Gi(r,i,t.elements)},192:IAe,193:IAe,194:function(t,r,i){return Yt(r,t.checkType)||Yt(r,t.extendsType)||Yt(r,t.trueType)||Yt(r,t.falseType)},195:function(t,r,i){return Yt(r,t.typeParameter)},205:function(t,r,i){return Yt(r,t.argument)||Yt(r,t.attributes)||Yt(r,t.qualifier)||Gi(r,i,t.typeArguments)},302:function(t,r,i){return Yt(r,t.assertClause)},196:xAe,198:xAe,199:function(t,r,i){return Yt(r,t.objectType)||Yt(r,t.indexType)},200:function(t,r,i){return Yt(r,t.readonlyToken)||Yt(r,t.typeParameter)||Yt(r,t.nameType)||Yt(r,t.questionToken)||Yt(r,t.type)||Gi(r,i,t.members)},201:function(t,r,i){return Yt(r,t.literal)},202:function(t,r,i){return Yt(r,t.dotDotDotToken)||Yt(r,t.name)||Yt(r,t.questionToken)||Yt(r,t.type)},206:RAe,207:RAe,209:function(t,r,i){return Gi(r,i,t.elements)},210:function(t,r,i){return Gi(r,i,t.properties)},211:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.questionDotToken)||Yt(r,t.name)},212:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.questionDotToken)||Yt(r,t.argumentExpression)},213:DAe,214:DAe,215:function(t,r,i){return Yt(r,t.tag)||Yt(r,t.questionDotToken)||Gi(r,i,t.typeArguments)||Yt(r,t.template)},216:function(t,r,i){return Yt(r,t.type)||Yt(r,t.expression)},217:function(t,r,i){return Yt(r,t.expression)},220:function(t,r,i){return Yt(r,t.expression)},221:function(t,r,i){return Yt(r,t.expression)},222:function(t,r,i){return Yt(r,t.expression)},224:function(t,r,i){return Yt(r,t.operand)},229:function(t,r,i){return Yt(r,t.asteriskToken)||Yt(r,t.expression)},223:function(t,r,i){return Yt(r,t.expression)},225:function(t,r,i){return Yt(r,t.operand)},226:function(t,r,i){return Yt(r,t.left)||Yt(r,t.operatorToken)||Yt(r,t.right)},234:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.type)},235:function(t,r,i){return Yt(r,t.expression)},238:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.type)},236:function(t,r,i){return Yt(r,t.name)},227:function(t,r,i){return Yt(r,t.condition)||Yt(r,t.questionToken)||Yt(r,t.whenTrue)||Yt(r,t.colonToken)||Yt(r,t.whenFalse)},230:function(t,r,i){return Yt(r,t.expression)},241:NAe,268:NAe,312:function(t,r,i){return Gi(r,i,t.statements)||Yt(r,t.endOfFileToken)},243:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.declarationList)},261:function(t,r,i){return Gi(r,i,t.declarations)},244:function(t,r,i){return Yt(r,t.expression)},245:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.thenStatement)||Yt(r,t.elseStatement)},246:function(t,r,i){return Yt(r,t.statement)||Yt(r,t.expression)},247:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.statement)},248:function(t,r,i){return Yt(r,t.initializer)||Yt(r,t.condition)||Yt(r,t.incrementor)||Yt(r,t.statement)},249:function(t,r,i){return Yt(r,t.initializer)||Yt(r,t.expression)||Yt(r,t.statement)},250:function(t,r,i){return Yt(r,t.awaitModifier)||Yt(r,t.initializer)||Yt(r,t.expression)||Yt(r,t.statement)},251:CAe,252:CAe,253:function(t,r,i){return Yt(r,t.expression)},254:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.statement)},255:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.caseBlock)},269:function(t,r,i){return Gi(r,i,t.clauses)},296:function(t,r,i){return Yt(r,t.expression)||Gi(r,i,t.statements)},297:function(t,r,i){return Gi(r,i,t.statements)},256:function(t,r,i){return Yt(r,t.label)||Yt(r,t.statement)},257:function(t,r,i){return Yt(r,t.expression)},258:function(t,r,i){return Yt(r,t.tryBlock)||Yt(r,t.catchClause)||Yt(r,t.finallyBlock)},299:function(t,r,i){return Yt(r,t.variableDeclaration)||Yt(r,t.block)},170:function(t,r,i){return Yt(r,t.expression)},263:PAe,231:PAe,264:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Gi(r,i,t.typeParameters)||Gi(r,i,t.heritageClauses)||Gi(r,i,t.members)},265:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Gi(r,i,t.typeParameters)||Yt(r,t.type)},266:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Gi(r,i,t.members)},306:function(t,r,i){return Yt(r,t.name)||Yt(r,t.initializer)},267:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.body)},271:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)||Yt(r,t.moduleReference)},272:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.importClause)||Yt(r,t.moduleSpecifier)||Yt(r,t.attributes)},273:function(t,r,i){return Yt(r,t.name)||Yt(r,t.namedBindings)},300:function(t,r,i){return Gi(r,i,t.elements)},301:function(t,r,i){return Yt(r,t.name)||Yt(r,t.value)},270:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.name)},274:function(t,r,i){return Yt(r,t.name)},280:function(t,r,i){return Yt(r,t.name)},275:MAe,279:MAe,278:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.exportClause)||Yt(r,t.moduleSpecifier)||Yt(r,t.attributes)},276:LAe,281:LAe,277:function(t,r,i){return Gi(r,i,t.modifiers)||Yt(r,t.expression)},228:function(t,r,i){return Yt(r,t.head)||Gi(r,i,t.templateSpans)},239:function(t,r,i){return Yt(r,t.expression)||Yt(r,t.literal)},203:function(t,r,i){return Yt(r,t.head)||Gi(r,i,t.templateSpans)},204:function(t,r,i){return Yt(r,t.type)||Yt(r,t.literal)},167:function(t,r,i){return Yt(r,t.expression)},298:function(t,r,i){return Gi(r,i,t.types)},233:function(t,r,i){return Yt(r,t.expression)||Gi(r,i,t.typeArguments)},283:function(t,r,i){return Yt(r,t.expression)},282:function(t,r,i){return Gi(r,i,t.modifiers)},361:function(t,r,i){return Gi(r,i,t.elements)},284:function(t,r,i){return Yt(r,t.openingElement)||Gi(r,i,t.children)||Yt(r,t.closingElement)},288:function(t,r,i){return Yt(r,t.openingFragment)||Gi(r,i,t.children)||Yt(r,t.closingFragment)},285:kAe,286:kAe,292:function(t,r,i){return Gi(r,i,t.properties)},291:function(t,r,i){return Yt(r,t.name)||Yt(r,t.initializer)},293:function(t,r,i){return Yt(r,t.expression)},294:function(t,r,i){return Yt(r,t.dotDotDotToken)||Yt(r,t.expression)},287:function(t,r,i){return Yt(r,t.tagName)},295:function(t,r,i){return Yt(r,t.namespace)||Yt(r,t.name)},190:DP,191:DP,316:DP,322:DP,321:DP,323:DP,325:DP,324:function(t,r,i){return Gi(r,i,t.parameters)||Yt(r,t.type)},327:function(t,r,i){return(typeof t.comment=="string"?void 0:Gi(r,i,t.comment))||Gi(r,i,t.tags)},354:function(t,r,i){return Yt(r,t.tagName)||Yt(r,t.name)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment))},317:function(t,r,i){return Yt(r,t.name)},318:function(t,r,i){return Yt(r,t.left)||Yt(r,t.right)},348:wAe,355:wAe,337:function(t,r,i){return Yt(r,t.tagName)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment))},336:function(t,r,i){return Yt(r,t.tagName)||Yt(r,t.class)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment))},335:function(t,r,i){return Yt(r,t.tagName)||Yt(r,t.class)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment))},352:function(t,r,i){return Yt(r,t.tagName)||Yt(r,t.constraint)||Gi(r,i,t.typeParameters)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment))},353:function(t,r,i){return Yt(r,t.tagName)||(t.typeExpression&&t.typeExpression.kind===316?Yt(r,t.typeExpression)||Yt(r,t.fullName)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment)):Yt(r,t.fullName)||Yt(r,t.typeExpression)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment)))},345:function(t,r,i){return Yt(r,t.tagName)||Yt(r,t.fullName)||Yt(r,t.typeExpression)||(typeof t.comment=="string"?void 0:Gi(r,i,t.comment))},349:NP,351:NP,350:NP,347:NP,357:NP,356:NP,346:NP,330:function(t,r,i){return Ue(t.typeParameters,r)||Ue(t.parameters,r)||Yt(r,t.type)},331:Sse,332:Sse,333:Sse,329:function(t,r,i){return Ue(t.jsDocPropertyTags,r)},334:oD,339:oD,340:oD,341:oD,342:oD,343:oD,338:oD,344:oD,360:SVe},(e=>{var t=wv(99,!0),r=40960,i,o,s,l,u;function p(Q){return $e++,Q}var h={createBaseSourceFileNode:Q=>p(new u(Q,0,0)),createBaseIdentifierNode:Q=>p(new s(Q,0,0)),createBasePrivateIdentifierNode:Q=>p(new l(Q,0,0)),createBaseTokenNode:Q=>p(new o(Q,0,0)),createBaseNode:Q=>p(new i(Q,0,0))},m=wk(11,h),{createNodeArray:b,createNumericLiteral:A,createStringLiteral:I,createLiteralLikeNode:R,createIdentifier:M,createPrivateIdentifier:C,createToken:O,createArrayLiteralExpression:U,createObjectLiteralExpression:K,createPropertyAccessExpression:Z,createPropertyAccessChain:V,createElementAccessExpression:se,createElementAccessChain:G,createCallExpression:ne,createCallChain:he,createNewExpression:ye,createParenthesizedExpression:$,createBlock:Y,createVariableStatement:oe,createExpressionStatement:fe,createIfStatement:Ne,createWhileStatement:pe,createForStatement:ie,createForOfStatement:ve,createVariableDeclaration:Le,createVariableDeclarationList:He}=m,Ee,De,Pe,We,At,Se,je,at,Gt,vt,$e,It,tn,rn,Pn,Xn,hn=!0,Qt=!1;function $t(Q,xe,Xe,xt,Nt=!1,Kt,zr,Wi=0){var Ri;if(Kt=Q3(Q,Kt),Kt===6){const Yi=ao(Q,xe,Xe,xt,Nt);return _w(Yi,(Ri=Yi.statements[0])==null?void 0:Ri.expression,Yi.parseDiagnostics,!1,void 0),Yi.referencedFiles=et,Yi.typeReferenceDirectives=et,Yi.libReferenceDirectives=et,Yi.amdDependencies=et,Yi.hasNoDefaultLib=!1,Yi.pragmas=U6,Yi}Oi(Q,xe,Xe,xt,Kt,Wi);const mi=Mn(Xe,Nt,Kt,zr||WAe,Wi);return No(),mi}e.parseSourceFile=$t;function _i(Q,xe){Oi("",Q,xe,void 0,1,0),ke();const Xe=te(!0),xt=J()===1&&!je.length;return No(),xt?Xe:void 0}e.parseIsolatedEntityName=_i;function ao(Q,xe,Xe=2,xt,Nt=!1){Oi(Q,xe,Xe,xt,6,0),De=Xn,ke();const Kt=L();let zr,Wi;if(J()===1)zr=ko([],Kt,Kt),Wi=_l();else{let Yi;for(;J()!==1;){let es;switch(J()){case 23:es=w1();break;case 112:case 97:case 106:es=_l();break;case 41:Ci(()=>ke()===9&&ke()!==59)?es=ei():es=av();break;case 9:case 11:if(Ci(()=>ke()!==59)){es=$r();break}default:es=av();break}Yi&&To(Yi)?Yi.push(es):Yi?Yi=[Yi,es]:(Yi=es,J()!==1&&fn(f.Unexpected_token))}const ds=To(Yi)?nn(U(Yi),Kt):N.checkDefined(Yi),Ds=fe(ds);nn(Ds,Kt),zr=ko([Ds],Kt),Wi=As(1,f.Unexpected_token)}const Ri=zt(Q,2,6,!1,zr,Wi,De,$a);Nt&&tt(Ri),Ri.nodeCount=$e,Ri.identifierCount=tn,Ri.identifiers=It,Ri.parseDiagnostics=JA(je,Ri),at&&(Ri.jsDocDiagnostics=JA(at,Ri));const mi=Ri;return No(),mi}e.parseJsonText=ao;function Oi(Q,xe,Xe,xt,Nt,Kt){switch(i=lu.getNodeConstructor(),o=lu.getTokenConstructor(),s=lu.getIdentifierConstructor(),l=lu.getPrivateIdentifierConstructor(),u=lu.getSourceFileConstructor(),Ee=ga(Q),Pe=xe,We=Xe,Gt=xt,At=Nt,Se=yk(Nt),je=[],rn=0,It=new Map,tn=0,$e=0,De=0,hn=!0,At){case 1:case 2:Xn=524288;break;case 6:Xn=134742016;break;default:Xn=0;break}Qt=!1,t.setText(Pe),t.setOnError(Lt),t.setScriptTarget(We),t.setLanguageVariant(Se),t.setScriptKind(At),t.setJSDocParsingMode(Kt)}function No(){t.clearCommentDirectives(),t.setText(""),t.setOnError(void 0),t.setScriptKind(0),t.setJSDocParsingMode(0),Pe=void 0,We=void 0,Gt=void 0,At=void 0,Se=void 0,De=0,je=void 0,at=void 0,rn=0,It=void 0,Pn=void 0,hn=!0}function Mn(Q,xe,Xe,xt,Nt){const Kt=Su(Ee);Kt&&(Xn|=33554432),De=Xn,ke();const zr=na(0,lp);N.assert(J()===1);const Wi=_e(),Ri=Ar(_l(),Wi),mi=zt(Ee,Q,Xe,Kt,zr,Ri,De,xt);return aq(mi,Pe),sq(mi,Yi),mi.commentDirectives=t.getCommentDirectives(),mi.nodeCount=$e,mi.identifierCount=tn,mi.identifiers=It,mi.parseDiagnostics=JA(je,mi),mi.jsDocParsingMode=Nt,at&&(mi.jsDocDiagnostics=JA(at,mi)),xe&&tt(mi),mi;function Yi(ds,Ds,es){je.push(OR(Ee,Pe,ds,Ds,es))}}let Di=!1;function Ar(Q,xe){if(!xe)return Q;N.assert(!Q.jsDoc);const Xe=Hi(wj(Q,Pe),xt=>Y_.parseJSDocComment(Q,xt.pos,xt.end-xt.pos));return Xe.length&&(Q.jsDoc=Xe),Di&&(Di=!1,Q.flags|=536870912),Q}function sn(Q){const xe=Gt,Xe=cq.createSyntaxCursor(Q);Gt={currentNode:Yi};const xt=[],Nt=je;je=[];let Kt=0,zr=Ri(Q.statements,0);for(;zr!==-1;){const ds=Q.statements[Kt],Ds=Q.statements[zr];Jr(xt,Q.statements,Kt,zr),Kt=mi(Q.statements,zr);const es=Gr(Nt,$_=>$_.start>=ds.pos),Gf=es>=0?Gr(Nt,$_=>$_.start>=Ds.pos,es):-1;es>=0&&Jr(je,Nt,es,Gf>=0?Gf:void 0),vo(()=>{const $_=Xn;for(Xn|=65536,t.resetTokenState(Ds.pos),ke();J()!==1;){const Ag=t.getTokenFullStart(),uv=Zl(0,lp);if(xt.push(uv),Ag===t.getTokenFullStart()&&ke(),Kt>=0){const dv=Q.statements[Kt];if(uv.end===dv.pos)break;uv.end>dv.pos&&(Kt=mi(Q.statements,Kt+1))}}Xn=$_},2),zr=Kt>=0?Ri(Q.statements,Kt):-1}if(Kt>=0){const ds=Q.statements[Kt];Jr(xt,Q.statements,Kt);const Ds=Gr(Nt,es=>es.start>=ds.pos);Ds>=0&&Jr(je,Nt,Ds)}return Gt=xe,m.updateSourceFile(Q,dt(b(xt),Q.statements));function Wi(ds){return!(ds.flags&65536)&&!!(ds.transformFlags&67108864)}function Ri(ds,Ds){for(let es=Ds;es<ds.length;es++)if(Wi(ds[es]))return es;return-1}function mi(ds,Ds){for(let es=Ds;es<ds.length;es++)if(!Wi(ds[es]))return es;return-1}function Yi(ds){const Ds=Xe.currentNode(ds);return hn&&Ds&&Wi(Ds)&&(Ds.intersectsChange=!0),Ds}}function tt(Q){Jy(Q,!0)}e.fixupParentReferences=tt;function zt(Q,xe,Xe,xt,Nt,Kt,zr,Wi){let Ri=m.createSourceFile(Nt,Kt,zr);if(nP(Ri,0,Pe.length),mi(Ri),!xt&&sc(Ri)&&Ri.transformFlags&67108864){const Yi=Ri;Ri=sn(Ri),Yi!==Ri&&mi(Ri)}return Ri;function mi(Yi){Yi.text=Pe,Yi.bindDiagnostics=[],Yi.bindSuggestionDiagnostics=void 0,Yi.languageVersion=xe,Yi.fileName=Q,Yi.languageVariant=yk(Xe),Yi.isDeclarationFile=xt,Yi.scriptKind=Xe,Wi(Yi),Yi.setExternalModuleIndicator=Wi}}function Rn(Q,xe){Q?Xn|=xe:Xn&=~xe}function li(Q){Rn(Q,8192)}function hi(Q){Rn(Q,16384)}function Qi(Q){Rn(Q,32768)}function Io(Q){Rn(Q,65536)}function ma(Q,xe){const Xe=Q&Xn;if(Xe){Rn(!1,Xe);const xt=xe();return Rn(!0,Xe),xt}return xe()}function Wa(Q,xe){const Xe=Q&~Xn;if(Xe){Rn(!0,Xe);const xt=xe();return Rn(!1,Xe),xt}return xe()}function Sn(Q){return ma(8192,Q)}function kn(Q){return Wa(8192,Q)}function qe(Q){return ma(131072,Q)}function mt(Q){return Wa(131072,Q)}function ft(Q){return Wa(16384,Q)}function Ct(Q){return Wa(32768,Q)}function le(Q){return Wa(65536,Q)}function Fe(Q){return ma(65536,Q)}function pt(Q){return Wa(81920,Q)}function j(Q){return ma(81920,Q)}function ot(Q){return(Xn&Q)!==0}function Rt(){return ot(16384)}function Ye(){return ot(8192)}function _t(){return ot(131072)}function Vt(){return ot(32768)}function vn(){return ot(65536)}function fn(Q,...xe){return q(t.getTokenStart(),t.getTokenEnd(),Q,...xe)}function _n(Q,xe,Xe,...xt){const Nt=tl(je);let Kt;return(!Nt||Q!==Nt.start)&&(Kt=OR(Ee,Pe,Q,xe,Xe,...xt),je.push(Kt)),Qt=!0,Kt}function q(Q,xe,Xe,...xt){return _n(Q,xe-Q,Xe,...xt)}function Oe(Q,xe,...Xe){q(Q.pos,Q.end,xe,...Xe)}function Lt(Q,xe,Xe){_n(t.getTokenEnd(),xe,Q,Xe)}function L(){return t.getTokenFullStart()}function _e(){return t.hasPrecedingJSDocComment()}function J(){return vt}function me(){return vt=t.scan()}function Ge(Q){return ke(),Q()}function ke(){return Bd(vt)&&(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&q(t.getTokenStart(),t.getTokenEnd(),f.Keywords_cannot_contain_escape_characters),me()}function Tt(){return vt=t.scanJsDocToken()}function kt(Q){return vt=t.scanJSDocCommentTextToken(Q)}function en(){return vt=t.reScanGreaterToken()}function bn(){return vt=t.reScanSlashToken()}function Bn(Q){return vt=t.reScanTemplateToken(Q)}function Hn(){return vt=t.reScanLessThanToken()}function Ni(){return vt=t.reScanHashToken()}function Ai(){return vt=t.scanJsxIdentifier()}function ir(){return vt=t.scanJsxToken()}function jr(){return vt=t.scanJsxAttributeValue()}function vo(Q,xe){const Xe=vt,xt=je.length,Nt=Qt,Kt=Xn,zr=xe!==0?t.lookAhead(Q):t.tryScan(Q);return N.assert(Kt===Xn),(!zr||xe!==0)&&(vt=Xe,xe!==2&&(je.length=xt),Qt=Nt),zr}function Ci(Q){return vo(Q,1)}function Ii(Q){return vo(Q,0)}function Kr(){return J()===80?!0:J()>118}function xo(){return J()===80?!0:J()===127&&Rt()||J()===135&&vn()?!1:J()>118}function Dn(Q,xe,Xe=!0){return J()===Q?(Xe&&ke(),!0):(xe?fn(xe):fn(f._0_expected,fa(Q)),!1)}const Fs=Object.keys(oL).filter(Q=>Q.length>2);function Ql(Q){if(i1(Q)){q(ka(Pe,Q.template.pos),Q.template.end,f.Module_declaration_names_may_only_use_or_quoted_strings);return}const xe=Ve(Q)?Sr(Q):void 0;if(!xe||!tf(xe,We)){fn(f._0_expected,fa(27));return}const Xe=ka(Pe,Q.pos);switch(xe){case"const":case"let":case"var":q(Xe,Q.end,f.Variable_declaration_not_allowed_at_this_location);return;case"declare":return;case"interface":Lo(f.Interface_name_cannot_be_0,f.Interface_must_be_given_a_name,19);return;case"is":q(Xe,t.getTokenStart(),f.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return;case"module":case"namespace":Lo(f.Namespace_name_cannot_be_0,f.Namespace_must_be_given_a_name,19);return;case"type":Lo(f.Type_alias_name_cannot_be_0,f.Type_alias_must_be_given_a_name,64);return}const xt=$N(xe,Fs,Nt=>Nt)??cs(xe);if(xt){q(Xe,Q.end,f.Unknown_keyword_or_identifier_Did_you_mean_0,xt);return}J()!==0&&q(Xe,Q.end,f.Unexpected_keyword_or_identifier)}function Lo(Q,xe,Xe){J()===Xe?fn(xe):fn(Q,t.getTokenValue())}function cs(Q){for(const xe of Fs)if(Q.length>xe.length+2&&uo(Q,xe))return`${xe} ${Q.slice(xe.length)}`}function Vs(Q,xe,Xe){if(J()===60&&!t.hasPrecedingLineBreak()){fn(f.Decorators_must_precede_the_name_and_all_keywords_of_property_declarations);return}if(J()===21){fn(f.Cannot_start_a_function_call_in_a_type_annotation),ke();return}if(xe&&!lc()){Xe?fn(f._0_expected,fa(27)):fn(f.Expected_for_property_initializer);return}if(!Nl()){if(Xe){fn(f._0_expected,fa(27));return}Ql(Q)}}function vl(Q){return J()===Q?(Tt(),!0):(N.assert(v3(Q)),fn(f._0_expected,fa(Q)),!1)}function uu(Q,xe,Xe,xt){if(J()===xe){ke();return}const Nt=fn(f._0_expected,fa(xe));Xe&&Nt&&wa(Nt,OR(Ee,Pe,xt,1,f.The_parser_expected_to_find_a_1_to_match_the_0_token_here,fa(Q),fa(xe)))}function ho(Q){return J()===Q?(ke(),!0):!1}function pa(Q){if(J()===Q)return _l()}function du(Q){if(J()===Q)return wf()}function As(Q,xe,Xe){return pa(Q)||js(Q,!1,xe||f._0_expected,Xe||fa(Q))}function La(Q){const xe=du(Q);return xe||(N.assert(v3(Q)),js(Q,!1,f._0_expected,fa(Q)))}function _l(){const Q=L(),xe=J();return ke(),nn(O(xe),Q)}function wf(){const Q=L(),xe=J();return Tt(),nn(O(xe),Q)}function lc(){return J()===27?!0:J()===20||J()===1||t.hasPrecedingLineBreak()}function Nl(){return lc()?(J()===27&&ke(),!0):!1}function ul(){return Nl()||Dn(27)}function ko(Q,xe,Xe,xt){const Nt=b(Q,xt);return vh(Nt,xe,Xe??t.getTokenFullStart()),Nt}function nn(Q,xe,Xe){return vh(Q,xe,Xe??t.getTokenFullStart()),Xn&&(Q.flags|=Xn),Qt&&(Qt=!1,Q.flags|=262144),Q}function js(Q,xe,Xe,...xt){xe?_n(t.getTokenFullStart(),0,Xe,...xt):Xe&&fn(Xe,...xt);const Nt=L(),Kt=Q===80?M("",void 0):wy(Q)?m.createTemplateLiteralLikeNode(Q,"","",void 0):Q===9?A("",void 0):Q===11?I("",void 0):Q===282?m.createMissingDeclaration():O(Q);return nn(Kt,Nt)}function nu(Q){let xe=It.get(Q);return xe===void 0&&It.set(Q,xe=Q),xe}function pu(Q,xe,Xe){if(Q){tn++;const Wi=L(),Ri=J(),mi=nu(t.getTokenValue()),Yi=t.hasExtendedUnicodeEscape();return me(),nn(M(mi,Ri,Yi),Wi)}if(J()===81)return fn(Xe||f.Private_identifiers_are_not_allowed_outside_class_bodies),pu(!0);if(J()===0&&t.tryScan(()=>t.reScanInvalidIdentifier()===80))return pu(!0);tn++;const xt=J()===1,Nt=t.isReservedWord(),Kt=t.getTokenText(),zr=Nt?f.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here:f.Identifier_expected;return js(80,xt,xe||zr,Kt)}function Ip(Q){return pu(Kr(),void 0,Q)}function Ms(Q,xe){return pu(xo(),Q,xe)}function Rc(Q){return pu(sd(J()),Q)}function de(){return(t.hasUnicodeEscape()||t.hasExtendedUnicodeEscape())&&fn(f.Unicode_escape_sequence_cannot_appear_here),pu(sd(J()))}function ee(){return sd(J())||J()===11||J()===9}function we(){return sd(J())||J()===11}function Et(Q){if(J()===11||J()===9){const xe=$r();return xe.text=nu(xe.text),xe}return J()===23?Er():J()===81?vr():Rc()}function un(){return Et()}function Er(){const Q=L();Dn(23);const xe=Sn(Je);return Dn(24),nn(m.createComputedPropertyName(xe),Q)}function vr(){const Q=L(),xe=C(nu(t.getTokenValue()));return ke(),nn(xe,Q)}function Ur(Q){return J()===Q&&Ii(Lr)}function xi(){return ke(),t.hasPrecedingLineBreak()?!1:Us()}function Lr(){switch(J()){case 87:return ke()===94;case 95:return ke(),J()===90?Ci(vc):J()===156?Ci(Tl):$o();case 90:return vc();case 126:case 139:case 153:return ke(),Us();default:return xi()}}function $o(){return J()===60||J()!==42&&J()!==130&&J()!==19&&Us()}function Tl(){return ke(),$o()}function Hc(){return Wv(J())&&Ii(Lr)}function Us(){return J()===23||J()===19||J()===42||J()===26||ee()}function vc(){return ke(),J()===86||J()===100||J()===120||J()===60||J()===128&&Ci(LT)||J()===134&&Ci(kT)}function Ss(Q,xe){if(yc(Q))return!0;switch(Q){case 0:case 1:case 3:return!(J()===27&&xe)&&W1();case 2:return J()===84||J()===90;case 4:return Ci(Ka);case 5:return Ci(Sg)||J()===27&&!xe;case 6:return J()===23||ee();case 12:switch(J()){case 23:case 42:case 26:case 25:return!0;default:return ee()}case 18:return ee();case 9:return J()===23||J()===26||ee();case 24:return we();case 7:return J()===19?Ci(qc):xe?xo()&&!gd():nx()&&!gd();case 8:return rs();case 10:return J()===28||J()===26||rs();case 19:return J()===103||J()===87||xo();case 15:switch(J()){case 28:case 25:return!0}case 11:return J()===26||a_();case 16:return H_(!1);case 17:return H_(!0);case 20:case 21:return J()===28||hg();case 22:return D();case 23:return J()===161&&Ci(pN)?!1:sd(J());case 13:return sd(J())||J()===19;case 14:return!0;case 25:return!0;case 26:return N.fail("ParsingContext.Count used as a context");default:N.assertNever(Q,"Non-exhaustive case in 'isListElement'.")}}function qc(){if(N.assert(J()===19),ke()===20){const Q=ke();return Q===28||Q===19||Q===96||Q===119}return!0}function op(){return ke(),xo()}function Wc(){return ke(),sd(J())}function cm(){return ke(),sre(J())}function gd(){return J()===119||J()===96?Ci(Ce):!1}function Ce(){return ke(),a_()}function Wt(){return ke(),hg()}function Jn(Q){if(J()===1)return!0;switch(Q){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:case 24:return J()===20;case 3:return J()===20||J()===84||J()===90;case 7:return J()===19||J()===96||J()===119;case 8:return yo();case 19:return J()===32||J()===21||J()===19||J()===96||J()===119;case 11:return J()===22||J()===27;case 15:case 21:case 10:return J()===24;case 17:case 16:case 18:return J()===22||J()===24;case 20:return J()!==28;case 22:return J()===19||J()===20;case 13:return J()===32||J()===44;case 14:return J()===30&&Ci(bi);default:return!1}}function yo(){return!!(lc()||rv(J())||J()===39)}function Qo(){N.assert(rn,"Missing parsing context");for(let Q=0;Q<26;Q++)if(rn&1<<Q&&(Ss(Q,!0)||Jn(Q)))return!0;return!1}function na(Q,xe){const Xe=rn;rn|=1<<Q;const xt=[],Nt=L();for(;!Jn(Q);){if(Ss(Q,!1)){xt.push(Zl(Q,xe));continue}if(Ch(Q))break}return rn=Xe,ko(xt,Nt)}function Zl(Q,xe){const Xe=yc(Q);return Xe?dl(Xe):xe()}function yc(Q,xe){var Xe;if(!Gt||!yl(Q)||Qt)return;const xt=Gt.currentNode(xe??t.getTokenFullStart());if(!(zl(xt)||xt.intersectsChange||aR(xt)||(xt.flags&101441536)!==Xn)&&Vl(xt,Q))return ek(xt)&&((Xe=xt.jsDoc)!=null&&Xe.jsDocCache)&&(xt.jsDoc.jsDocCache=void 0),xt}function dl(Q){return t.resetTokenState(Q.end),ke(),Q}function yl(Q){switch(Q){case 5:case 2:case 0:case 1:case 3:case 6:case 4:case 8:case 17:case 16:return!0}return!1}function Vl(Q,xe){switch(xe){case 5:return ec(Q);case 2:return Jc(Q);case 0:case 1:case 3:return ff(Q);case 6:return jd(Q);case 4:return Cd(Q);case 8:return Of(Q);case 17:case 16:return U_(Q)}return!1}function ec(Q){if(Q)switch(Q.kind){case 176:case 181:case 177:case 178:case 172:case 240:return!0;case 174:const xe=Q;return!(xe.name.kind===80&&xe.name.escapedText==="constructor")}return!1}function Jc(Q){if(Q)switch(Q.kind){case 296:case 297:return!0}return!1}function ff(Q){if(Q)switch(Q.kind){case 262:case 243:case 241:case 245:case 244:case 257:case 253:case 255:case 252:case 251:case 249:case 250:case 248:case 247:case 254:case 242:case 258:case 256:case 246:case 259:case 272:case 271:case 278:case 277:case 267:case 263:case 264:case 266:case 265:return!0}return!1}function jd(Q){return Q.kind===306}function Cd(Q){if(Q)switch(Q.kind){case 180:case 173:case 181:case 171:case 179:return!0}return!1}function Of(Q){return Q.kind!==260?!1:Q.initializer===void 0}function U_(Q){return Q.kind!==169?!1:Q.initializer===void 0}function Ch(Q){return $g(Q),Qo()?!0:(ke(),!1)}function $g(Q){switch(Q){case 0:return J()===90?fn(f._0_expected,fa(95)):fn(f.Declaration_or_statement_expected);case 1:return fn(f.Declaration_or_statement_expected);case 2:return fn(f.case_or_default_expected);case 3:return fn(f.Statement_expected);case 18:case 4:return fn(f.Property_or_signature_expected);case 5:return fn(f.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);case 6:return fn(f.Enum_member_expected);case 7:return fn(f.Expression_expected);case 8:return Bd(J())?fn(f._0_is_not_allowed_as_a_variable_declaration_name,fa(J())):fn(f.Variable_declaration_expected);case 9:return fn(f.Property_destructuring_pattern_expected);case 10:return fn(f.Array_element_destructuring_pattern_expected);case 11:return fn(f.Argument_expression_expected);case 12:return fn(f.Property_assignment_expected);case 15:return fn(f.Expression_or_comma_expected);case 17:return fn(f.Parameter_declaration_expected);case 16:return Bd(J())?fn(f._0_is_not_allowed_as_a_parameter_name,fa(J())):fn(f.Parameter_declaration_expected);case 19:return fn(f.Type_parameter_declaration_expected);case 20:return fn(f.Type_argument_expected);case 21:return fn(f.Type_expected);case 22:return fn(f.Unexpected_token_expected);case 23:return J()===161?fn(f._0_expected,"}"):fn(f.Identifier_expected);case 13:return fn(f.Identifier_expected);case 14:return fn(f.Identifier_expected);case 24:return fn(f.Identifier_or_string_literal_expected);case 25:return fn(f.Identifier_expected);case 26:return N.fail("ParsingContext.Count used as a context");default:N.assertNever(Q)}}function Bu(Q,xe,Xe){const xt=rn;rn|=1<<Q;const Nt=[],Kt=L();let zr=-1;for(;;){if(Ss(Q,!1)){const Wi=t.getTokenFullStart(),Ri=Zl(Q,xe);if(!Ri){rn=xt;return}if(Nt.push(Ri),zr=t.getTokenStart(),ho(28))continue;if(zr=-1,Jn(Q))break;Dn(28,Qg(Q)),Xe&&J()===27&&!t.hasPrecedingLineBreak()&&ke(),Wi===t.getTokenFullStart()&&ke();continue}if(Jn(Q)||Ch(Q))break}return rn=xt,ko(Nt,Kt,void 0,zr>=0)}function Qg(Q){return Q===6?f.An_enum_member_name_must_be_followed_by_a_or:void 0}function xp(){const Q=ko([],L());return Q.isMissingList=!0,Q}function _g(Q){return!!Q.isMissingList}function Ud(Q,xe,Xe,xt){if(Dn(Xe)){const Nt=Bu(Q,xe);return Dn(xt),Nt}return xp()}function te(Q,xe){const Xe=L();let xt=Q?Rc(xe):Ms(xe);for(;ho(25)&&J()!==30;)xt=nn(m.createQualifiedName(xt,Ft(Q,!1,!0)),Xe);return xt}function ct(Q,xe){return nn(m.createQualifiedName(Q,xe),Q.pos)}function Ft(Q,xe,Xe){if(t.hasPrecedingLineBreak()&&sd(J())&&Ci(qp))return js(80,!0,f.Identifier_expected);if(J()===81){const xt=vr();return xe?xt:js(80,!0,f.Identifier_expected)}return Q?Xe?Rc():de():Ms()}function jt(Q){const xe=L(),Xe=[];let xt;do xt=oi(Q),Xe.push(xt);while(xt.literal.kind===17);return ko(Xe,xe)}function F(Q){const xe=L();return nn(m.createTemplateExpression(io(Q),jt(Q)),xe)}function Te(){const Q=L();return nn(m.createTemplateLiteralType(io(!1),st()),Q)}function st(){const Q=L(),xe=[];let Xe;do Xe=Jt(),xe.push(Xe);while(Xe.literal.kind===17);return ko(xe,Q)}function Jt(){const Q=L();return nn(m.createTemplateLiteralTypeSpan(bc(),rr(!1)),Q)}function rr(Q){return J()===20?(Bn(Q),Fa()):As(18,f._0_expected,fa(20))}function oi(Q){const xe=L();return nn(m.createTemplateSpan(Sn(Je),rr(Q)),xe)}function $r(){return Ol(J())}function io(Q){!Q&&t.getTokenFlags()&26656&&Bn(!1);const xe=Ol(J());return N.assert(xe.kind===16,"Template head has wrong token kind"),xe}function Fa(){const Q=Ol(J());return N.assert(Q.kind===17||Q.kind===18,"Template fragment has wrong token kind"),Q}function za(Q){const xe=Q===15||Q===18,Xe=t.getTokenText();return Xe.substring(1,Xe.length-(t.isUnterminated()?0:xe?1:2))}function Ol(Q){const xe=L(),Xe=wy(Q)?m.createTemplateLiteralLikeNode(Q,t.getTokenValue(),za(Q),t.getTokenFlags()&7176):Q===9?A(t.getTokenValue(),t.getNumericLiteralFlags()):Q===11?I(t.getTokenValue(),void 0,t.hasExtendedUnicodeEscape()):mC(Q)?R(Q,t.getTokenValue()):N.fail();return t.hasExtendedUnicodeEscape()&&(Xe.hasExtendedUnicodeEscape=!0),t.isUnterminated()&&(Xe.isUnterminated=!0),ke(),nn(Xe,xe)}function fu(){return te(!0,f.Type_expected)}function Dc(){if(!t.hasPrecedingLineBreak()&&Hn()===30)return Ud(20,bc,30,32)}function Rp(){const Q=L();return nn(m.createTypeReferenceNode(fu(),Dc()),Q)}function Hd(Q){switch(Q.kind){case 183:return zl(Q.typeName);case 184:case 185:{const{parameters:xe,type:Xe}=Q;return _g(xe)||Hd(Xe)}case 196:return Hd(Q.type);default:return!1}}function pb(Q){return ke(),nn(m.createTypePredicateNode(void 0,Q,bc()),Q.pos)}function us(){const Q=L();return ke(),nn(m.createThisTypeNode(),Q)}function km(){const Q=L();return ke(),nn(m.createJSDocAllType(),Q)}function wm(){const Q=L();return ke(),nn(m.createJSDocNonNullableType(mb(),!1),Q)}function Ui(){const Q=L();return ke(),J()===28||J()===20||J()===22||J()===32||J()===64||J()===52?nn(m.createJSDocUnknownType(),Q):nn(m.createJSDocNullableType(bc(),!1),Q)}function Zg(){const Q=L(),xe=_e();if(Ii(Bf)){const Xe=gn(36),xt=Ht(59,!1);return Ar(nn(m.createJSDocFunctionType(Xe,xt),Q),xe)}return nn(m.createTypeReferenceNode(Rc(),void 0),Q)}function ay(){const Q=L();let xe;return(J()===110||J()===105)&&(xe=Rc(),Dn(59)),nn(m.createParameterDeclaration(void 0,void 0,xe,void 0,Om(),void 0),Q)}function Om(){t.setInJSDocType(!0);const Q=L();if(ho(144)){const xt=m.createJSDocNamepathType(void 0);e:for(;;)switch(J()){case 20:case 1:case 28:case 5:break e;default:Tt()}return t.setInJSDocType(!1),nn(xt,Q)}const xe=ho(26);let Xe=_b();return t.setInJSDocType(!1),xe&&(Xe=nn(m.createJSDocVariadicType(Xe),Q)),J()===64?(ke(),nn(m.createJSDocOptionalType(Xe),Q)):Xe}function x1(){const Q=L();Dn(114);const xe=te(!0),Xe=t.hasPrecedingLineBreak()?void 0:rE();return nn(m.createTypeQueryNode(xe,Xe),Q)}function R1(){const Q=L(),xe=wh(!1,!0),Xe=Ms();let xt,Nt;ho(96)&&(hg()||!a_()?xt=bc():Nt=gb());const Kt=ho(64)?bc():void 0,zr=m.createTypeParameterDeclaration(xe,Xe,xt,Kt);return zr.expression=Nt,nn(zr,Q)}function mf(){if(J()===30)return Ud(19,R1,30,32)}function H_(Q){return J()===26||rs()||Wv(J())||J()===60||hg(!Q)}function _f(Q){const xe=Ir(f.Private_identifiers_cannot_be_used_as_parameters);return xL(xe)===0&&!bt(Q)&&Wv(J())&&ke(),xe}function ev(){return Kr()||J()===23||J()===19}function ze(Q){return Mt(Q)}function Ze(Q){return Mt(Q,!1)}function Mt(Q,xe=!0){const Xe=L(),xt=_e(),Nt=Q?le(()=>wh(!0)):Fe(()=>wh(!0));if(J()===110){const Ri=m.createParameterDeclaration(Nt,void 0,pu(!0),void 0,ly(),void 0),mi=Xc(Nt);return mi&&Oe(mi,f.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters),Ar(nn(Ri,Xe),xt)}const Kt=hn;hn=!1;const zr=pa(26);if(!xe&&!ev())return;const Wi=Ar(nn(m.createParameterDeclaration(Nt,zr,_f(Nt),pa(58),ly(),s_()),Xe),xt);return hn=Kt,Wi}function Ht(Q,xe){if(yn(Q,xe))return qe(_b)}function yn(Q,xe){return Q===39?(Dn(Q),!0):ho(59)?!0:xe&&J()===39?(fn(f._0_expected,fa(59)),ke(),!0):!1}function Yn(Q,xe){const Xe=Rt(),xt=vn();hi(!!(Q&1)),Io(!!(Q&2));const Nt=Q&32?Bu(17,ay):Bu(16,()=>xe?ze(xt):Ze(xt));return hi(Xe),Io(xt),Nt}function gn(Q){if(!Dn(21))return xp();const xe=Yn(Q,!0);return Dn(22),xe}function $n(){ho(28)||ul()}function fi(Q){const xe=L(),Xe=_e();Q===180&&Dn(105);const xt=mf(),Nt=gn(4),Kt=Ht(59,!0);$n();const zr=Q===179?m.createCallSignature(xt,Nt,Kt):m.createConstructSignature(xt,Nt,Kt);return Ar(nn(zr,xe),Xe)}function cr(){return J()===23&&Ci(ri)}function ri(){if(ke(),J()===26||J()===24)return!0;if(Wv(J())){if(ke(),xo())return!0}else if(xo())ke();else return!1;return J()===59||J()===28?!0:J()!==58?!1:(ke(),J()===59||J()===28||J()===24)}function fr(Q,xe,Xe){const xt=Ud(16,()=>ze(!1),23,24),Nt=ly();$n();const Kt=m.createIndexSignature(Xe,xt,Nt);return Ar(nn(Kt,Q),xe)}function Zo(Q,xe,Xe){const xt=un(),Nt=pa(58);let Kt;if(J()===21||J()===30){const zr=mf(),Wi=gn(4),Ri=Ht(59,!0);Kt=m.createMethodSignature(Xe,xt,Nt,zr,Wi,Ri)}else{const zr=ly();Kt=m.createPropertySignature(Xe,xt,Nt,zr),J()===64&&(Kt.initializer=s_())}return $n(),Ar(nn(Kt,Q),xe)}function Ka(){if(J()===21||J()===30||J()===139||J()===153)return!0;let Q=!1;for(;Wv(J());)Q=!0,ke();return J()===23?!0:(ee()&&(Q=!0,ke()),Q?J()===21||J()===30||J()===58||J()===59||J()===28||lc():!1)}function Zu(){if(J()===21||J()===30)return fi(179);if(J()===105&&Ci(mu))return fi(180);const Q=L(),xe=_e(),Xe=wh(!1);return Ur(139)?lv(Q,xe,Xe,177,4):Ur(153)?lv(Q,xe,Xe,178,4):cr()?fr(Q,xe,Xe):Zo(Q,xe,Xe)}function mu(){return ke(),J()===21||J()===30}function tv(){return ke()===25}function j0(){switch(ke()){case 21:case 30:case 25:return!0}return!1}function JI(){const Q=L();return nn(m.createTypeLiteralNode(U0()),Q)}function U0(){let Q;return Dn(19)?(Q=na(4,Zu),Dn(20)):Q=xp(),Q}function QD(){return ke(),J()===40||J()===41?ke()===148:(J()===148&&ke(),J()===23&&op()&&ke()===103)}function ZD(){const Q=L(),xe=Rc();Dn(103);const Xe=bc();return nn(m.createTypeParameterDeclaration(void 0,xe,Xe,void 0),Q)}function eN(){const Q=L();Dn(19);let xe;(J()===148||J()===40||J()===41)&&(xe=_l(),xe.kind!==148&&Dn(148)),Dn(23);const Xe=ZD(),xt=ho(130)?bc():void 0;Dn(24);let Nt;(J()===58||J()===40||J()===41)&&(Nt=_l(),Nt.kind!==58&&Dn(58));const Kt=ly();ul();const zr=na(4,Zu);return Dn(20),nn(m.createMappedTypeNode(xe,Xe,xt,Nt,Kt,zr),Q)}function hT(){const Q=L();if(ho(26))return nn(m.createRestTypeNode(bc()),Q);const xe=bc();if($R(xe)&&xe.pos===xe.type.pos){const Xe=m.createOptionalTypeNode(xe.type);return dt(Xe,xe),Xe.flags=xe.flags,Xe}return xe}function D1(){return ke()===59||J()===58&&ke()===59}function KI(){return J()===26?sd(ke())&&D1():sd(J())&&D1()}function tN(){if(Ci(KI)){const Q=L(),xe=_e(),Xe=pa(26),xt=Rc(),Nt=pa(58);Dn(59);const Kt=hT(),zr=m.createNamedTupleMember(Xe,xt,Nt,Kt);return Ar(nn(zr,Q),xe)}return hT()}function XI(){const Q=L();return nn(m.createTupleTypeNode(Ud(21,tN,23,24)),Q)}function YI(){const Q=L();Dn(21);const xe=bc();return Dn(22),nn(m.createParenthesizedType(xe),Q)}function $I(){let Q;if(J()===128){const xe=L();ke();const Xe=nn(O(128),xe);Q=ko([Xe],xe)}return Q}function QI(){const Q=L(),xe=_e(),Xe=$I(),xt=ho(105);N.assert(!Xe||xt,"Per isStartOfFunctionOrConstructorType, a function type cannot have modifiers.");const Nt=mf(),Kt=gn(4),zr=Ht(39,!1),Wi=xt?m.createConstructorTypeNode(Xe,Nt,Kt,zr):m.createFunctionTypeNode(Nt,Kt,zr);return Ar(nn(Wi,Q),xe)}function gT(){const Q=_l();return J()===25?void 0:Q}function ZI(Q){const xe=L();Q&&ke();let Xe=J()===112||J()===97||J()===106?_l():Ol(J());return Q&&(Xe=nn(m.createPrefixUnaryExpression(41,Xe),xe)),nn(m.createLiteralTypeNode(Xe),xe)}function N1(){return ke(),J()===102}function C1(){De|=4194304;const Q=L(),xe=ho(114);Dn(102),Dn(21);const Xe=bc();let xt;if(ho(28)){const zr=t.getTokenStart();Dn(19);const Wi=J();if(Wi===118||Wi===132?ke():fn(f._0_expected,fa(118)),Dn(59),xt=Rb(Wi,!0),!Dn(20)){const Ri=tl(je);Ri&&Ri.code===f._0_expected.code&&wa(Ri,OR(Ee,Pe,zr,1,f.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}}Dn(22);const Nt=ho(25)?fu():void 0,Kt=Dc();return nn(m.createImportTypeNode(Xe,xt,Nt,Kt,xe),Q)}function fb(){return ke(),J()===9||J()===10}function mb(){switch(J()){case 133:case 159:case 154:case 150:case 163:case 155:case 136:case 157:case 146:case 151:return Ii(gT)||Rp();case 67:t.reScanAsteriskEqualsToken();case 42:return km();case 61:t.reScanQuestionToken();case 58:return Ui();case 100:return Zg();case 54:return wm();case 15:case 11:case 9:case 10:case 112:case 97:case 106:return ZI();case 41:return Ci(fb)?ZI(!0):Rp();case 116:return _l();case 110:{const Q=us();return J()===142&&!t.hasPrecedingLineBreak()?pb(Q):Q}case 114:return Ci(N1)?C1():x1();case 19:return Ci(QD)?eN():JI();case 23:return XI();case 21:return YI();case 102:return C1();case 131:return Ci(qp)?tx():Rp();case 16:return Te();default:return Rp()}}function hg(Q){switch(J()){case 133:case 159:case 154:case 150:case 163:case 136:case 148:case 155:case 158:case 116:case 157:case 106:case 110:case 114:case 146:case 19:case 23:case 30:case 52:case 51:case 105:case 11:case 9:case 10:case 112:case 97:case 151:case 42:case 58:case 54:case 26:case 140:case 102:case 131:case 15:case 16:return!0;case 100:return!Q;case 41:return!Q&&Ci(fb);case 21:return!Q&&Ci(H0);default:return xo()}}function H0(){return ke(),J()===22||H_(!1)||hg()}function ts(){const Q=L();let xe=mb();for(;!t.hasPrecedingLineBreak();)switch(J()){case 54:ke(),xe=nn(m.createJSDocNonNullableType(xe,!0),Q);break;case 58:if(Ci(Wt))return xe;ke(),xe=nn(m.createJSDocNullableType(xe,!0),Q);break;case 23:if(Dn(23),hg()){const Xe=bc();Dn(24),xe=nn(m.createIndexedAccessTypeNode(xe,Xe),Q)}else Dn(24),xe=nn(m.createArrayTypeNode(xe),Q);break;default:return xe}return xe}function vT(Q){const xe=L();return Dn(Q),nn(m.createTypeOperatorNode(Q,Ph()),xe)}function nN(){if(ho(96)){const Q=mt(bc);if(_t()||J()!==58)return Q}}function q0(){const Q=L(),xe=Ms(),Xe=Ii(nN),xt=m.createTypeParameterDeclaration(void 0,xe,Xe);return nn(xt,Q)}function nv(){const Q=L();return Dn(140),nn(m.createInferTypeNode(q0()),Q)}function Ph(){const Q=J();switch(Q){case 143:case 158:case 148:return vT(Q);case 140:return nv()}return qe(ts)}function Wf(Q){if(yT()){const xe=QI();let Xe;return Eh(xe)?Xe=Q?f.Function_type_notation_must_be_parenthesized_when_used_in_a_union_type:f.Function_type_notation_must_be_parenthesized_when_used_in_an_intersection_type:Xe=Q?f.Constructor_type_notation_must_be_parenthesized_when_used_in_a_union_type:f.Constructor_type_notation_must_be_parenthesized_when_used_in_an_intersection_type,Oe(xe,Xe),xe}}function qd(Q,xe,Xe){const xt=L(),Nt=Q===52,Kt=ho(Q);let zr=Kt&&Wf(Nt)||xe();if(J()===Q||Kt){const Wi=[zr];for(;ho(Q);)Wi.push(Wf(Nt)||xe());zr=nn(Xe(ko(Wi,xt)),xt)}return zr}function Dp(){return qd(51,Ph,m.createIntersectionTypeNode)}function ap(){return qd(52,Dp,m.createUnionTypeNode)}function sy(){return ke(),J()===105}function yT(){return J()===30||J()===21&&Ci(ex)?!0:J()===105||J()===128&&Ci(sy)}function rN(){if(Wv(J())&&wh(!1),xo()||J()===110)return ke(),!0;if(J()===23||J()===19){const Q=je.length;return Ir(),Q===je.length}return!1}function ex(){return ke(),!!(J()===22||J()===26||rN()&&(J()===59||J()===28||J()===58||J()===64||J()===22&&(ke(),J()===39)))}function _b(){const Q=L(),xe=xo()&&Ii(J0),Xe=bc();return xe?nn(m.createTypePredicateNode(void 0,xe,Xe),Q):Xe}function J0(){const Q=Ms();if(J()===142&&!t.hasPrecedingLineBreak())return ke(),Q}function tx(){const Q=L(),xe=As(131),Xe=J()===110?us():Ms(),xt=ho(142)?bc():void 0;return nn(m.createTypePredicateNode(xe,Xe,xt),Q)}function bc(){if(Xn&81920)return ma(81920,bc);if(yT())return QI();const Q=L(),xe=ap();if(!_t()&&!t.hasPrecedingLineBreak()&&ho(96)){const Xe=mt(bc);Dn(58);const xt=qe(bc);Dn(59);const Nt=qe(bc);return nn(m.createConditionalTypeNode(xe,Xe,xt,Nt),Q)}return xe}function ly(){return ho(59)?bc():void 0}function nx(){switch(J()){case 110:case 108:case 106:case 112:case 97:case 9:case 10:case 11:case 15:case 16:case 21:case 23:case 19:case 100:case 86:case 105:case 44:case 69:case 80:return!0;case 102:return Ci(j0);default:return xo()}}function a_(){if(nx())return!0;switch(J()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 46:case 47:case 30:case 135:case 127:case 81:case 60:return!0;default:return c_()?!0:xo()}}function bT(){return J()!==19&&J()!==100&&J()!==86&&J()!==60&&a_()}function Je(){const Q=Vt();Q&&Qi(!1);const xe=L();let Xe=_u(!0),xt;for(;xt=pa(28);)Xe=P1(Xe,xt,_u(!0),xe);return Q&&Qi(!0),Xe}function s_(){return ho(64)?_u(!0):void 0}function _u(Q){if(K0())return hb();const xe=uy(Q)||ET(Q);if(xe)return xe;const Xe=L(),xt=_e(),Nt=dm(0);return Nt.kind===80&&J()===39?cy(Xe,Nt,Q,xt,void 0):ep(Nt)&&Vv(en())?P1(Nt,_l(),_u(Q),Xe):um(Nt,Xe,Q)}function K0(){return J()===127?Rt()?!0:Ci(Hs):!1}function rx(){return ke(),!t.hasPrecedingLineBreak()&&xo()}function hb(){const Q=L();return ke(),!t.hasPrecedingLineBreak()&&(J()===42||a_())?nn(m.createYieldExpression(pa(42),_u(!0)),Q):nn(m.createYieldExpression(void 0,void 0),Q)}function cy(Q,xe,Xe,xt,Nt){N.assert(J()===39,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");const Kt=m.createParameterDeclaration(void 0,void 0,xe,void 0,void 0,void 0);nn(Kt,xe.pos);const zr=ko([Kt],Kt.pos,Kt.end),Wi=As(39),Ri=TT(!!Nt,Xe),mi=m.createArrowFunction(Nt,void 0,zr,void 0,Wi,Ri);return Ar(nn(mi,Q),xt)}function uy(Q){const xe=P2();if(xe!==0)return xe===1?X0(!0,!0):Ii(()=>l_(Q))}function P2(){return J()===21||J()===30||J()===134?Ci(Xa):J()===39?1:0}function Xa(){if(J()===134&&(ke(),t.hasPrecedingLineBreak()||J()!==21&&J()!==30))return 0;const Q=J(),xe=ke();if(Q===21){if(xe===22)switch(ke()){case 39:case 59:case 19:return 1;default:return 0}if(xe===23||xe===19)return 2;if(xe===26)return 1;if(Wv(xe)&&xe!==134&&Ci(op))return ke()===130?0:1;if(!xo()&&xe!==110)return 0;switch(ke()){case 59:return 1;case 58:return ke(),J()===59||J()===28||J()===64||J()===22?1:0;case 28:case 64:case 22:return 2}return 0}else return N.assert(Q===30),!xo()&&J()!==87?0:Se===1?Ci(()=>{ho(87);const xt=ke();if(xt===96)switch(ke()){case 64:case 32:case 44:return!1;default:return!0}else if(xt===28||xt===64)return!0;return!1})?1:0:2}function l_(Q){const xe=t.getTokenStart();if(Pn!=null&&Pn.has(xe))return;const Xe=X0(!1,Q);return Xe||(Pn||(Pn=new Set)).add(xe),Xe}function ET(Q){if(J()===134&&Ci(ST)===1){const xe=L(),Xe=_e(),xt=yf(),Nt=dm(0);return cy(xe,Nt,Q,Xe,xt)}}function ST(){if(J()===134){if(ke(),t.hasPrecedingLineBreak()||J()===39)return 0;const Q=dm(0);if(!t.hasPrecedingLineBreak()&&Q.kind===80&&J()===39)return 1}return 0}function X0(Q,xe){const Xe=L(),xt=_e(),Nt=yf(),Kt=bt(Nt,_P)?2:0,zr=mf();let Wi;if(Dn(21)){if(Q)Wi=Yn(Kt,Q);else{const Ag=Yn(Kt,Q);if(!Ag)return;Wi=Ag}if(!Dn(22)&&!Q)return}else{if(!Q)return;Wi=xp()}const Ri=J()===59,mi=Ht(59,!1);if(mi&&!Q&&Hd(mi))return;let Yi=mi;for(;(Yi==null?void 0:Yi.kind)===196;)Yi=Yi.type;const ds=Yi&&QR(Yi);if(!Q&&J()!==39&&(ds||J()!==19))return;const Ds=J(),es=As(39),Gf=Ds===39||Ds===19?TT(bt(Nt,_P),xe):Ms();if(!xe&&Ri&&J()!==59)return;const $_=m.createArrowFunction(Nt,zr,Wi,mi,es,Gf);return Ar(nn($_,Xe),xt)}function TT(Q,xe){if(J()===19)return Eb(Q?2:0);if(J()!==27&&J()!==100&&J()!==86&&W1()&&!bT())return Eb(16|(Q?2:0));const Xe=hn;hn=!1;const xt=Q?le(()=>_u(xe)):Fe(()=>_u(xe));return hn=Xe,xt}function um(Q,xe,Xe){const xt=pa(58);if(!xt)return Q;let Nt;return nn(m.createConditionalExpression(Q,xt,ma(r,()=>_u(!1)),Nt=As(59),Yf(Nt)?_u(Xe):js(80,!1,f._0_expected,fa(59))),xe)}function dm(Q){const xe=L(),Xe=gb();return ix(Q,Xe,xe)}function rv(Q){return Q===103||Q===165}function ix(Q,xe,Xe){for(;;){en();const xt=uk(J());if(!(J()===43?xt>=Q:xt>Q)||J()===103&&Ye())break;if(J()===130||J()===152){if(t.hasPrecedingLineBreak())break;{const Kt=J();ke(),xe=Kt===152?iN(xe,bc()):Xi(xe,bc())}}else xe=P1(xe,_l(),dm(xt),Xe)}return xe}function c_(){return Ye()&&J()===103?!1:uk(J())>0}function iN(Q,xe){return nn(m.createSatisfiesExpression(Q,xe),Q.pos)}function P1(Q,xe,Xe,xt){return nn(m.createBinaryExpression(Q,xe,Xe),xt)}function Xi(Q,xe){return nn(m.createAsExpression(Q,xe),Q.pos)}function ei(){const Q=L();return nn(m.createPrefixUnaryExpression(J(),Ge(bl)),Q)}function Mh(){const Q=L();return nn(m.createDeleteExpression(Ge(bl)),Q)}function Jd(){const Q=L();return nn(m.createTypeOfExpression(Ge(bl)),Q)}function M2(){const Q=L();return nn(m.createVoidExpression(Ge(bl)),Q)}function iv(){return J()===135?vn()?!0:Ci(Hs):!1}function L2(){const Q=L();return nn(m.createAwaitExpression(Ge(bl)),Q)}function gb(){if(Up()){const Xe=L(),xt=gg();return J()===43?ix(uk(J()),xt,Xe):xt}const Q=J(),xe=bl();if(J()===43){const Xe=ka(Pe,xe.pos),{end:xt}=xe;xe.kind===216?q(Xe,xt,f.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses):(N.assert(v3(Q)),q(Xe,xt,f.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,fa(Q)))}return xe}function bl(){switch(J()){case 40:case 41:case 55:case 54:return ei();case 91:return Mh();case 114:return Jd();case 116:return M2();case 30:return Se===1?ov(!0,void 0,void 0,!0):Fm();case 135:if(iv())return L2();default:return gg()}}function Up(){switch(J()){case 40:case 41:case 55:case 54:case 91:case 114:case 116:case 135:return!1;case 30:if(Se!==1)return!1;default:return!0}}function gg(){if(J()===46||J()===47){const xe=L();return nn(m.createPrefixUnaryExpression(J(),Ge(pm)),xe)}else if(Se===1&&J()===30&&Ci(cm))return ov(!0);const Q=pm();if(N.assert(ep(Q)),(J()===46||J()===47)&&!t.hasPrecedingLineBreak()){const xe=J();return ke(),nn(m.createPostfixUnaryExpression(Q,xe),Q.pos)}return Q}function pm(){const Q=L();let xe;return J()===102?Ci(mu)?(De|=4194304,xe=_l()):Ci(tv)?(ke(),ke(),xe=nn(m.createMetaProperty(102,Rc()),Q),De|=8388608):xe=vb():xe=J()===108?Wm():vb(),py(Q,xe)}function vb(){const Q=L(),xe=Y0();return ru(Q,xe,!0)}function Wm(){const Q=L();let xe=_l();if(J()===30){const Xe=L(),xt=Ii(ur);xt!==void 0&&(q(Xe,L(),f.super_may_not_use_type_arguments),to()||(xe=m.createExpressionWithTypeArguments(xe,xt)))}return J()===21||J()===25||J()===23?xe:(As(25,f.super_must_be_followed_by_an_argument_list_or_member_access),nn(Z(xe,Ft(!0,!0,!0)),Q))}function ov(Q,xe,Xe,xt=!1){const Nt=L(),Kt=yg(Q);let zr;if(Kt.kind===286){let Wi=vg(Kt),Ri;const mi=Wi[Wi.length-1];if((mi==null?void 0:mi.kind)===284&&!C0(mi.openingElement.tagName,mi.closingElement.tagName)&&C0(Kt.tagName,mi.closingElement.tagName)){const Yi=mi.children.end,ds=nn(m.createJsxElement(mi.openingElement,mi.children,nn(m.createJsxClosingElement(nn(M(""),Yi,Yi)),Yi,Yi)),mi.openingElement.pos,Yi);Wi=ko([...Wi.slice(0,Wi.length-1),ds],Wi.pos,Yi),Ri=mi.closingElement}else Ri=L1(Kt,Q),C0(Kt.tagName,Ri.tagName)||(Xe&&W_(Xe)&&C0(Ri.tagName,Xe.tagName)?Oe(Kt.tagName,f.JSX_element_0_has_no_corresponding_closing_tag,bC(Pe,Kt.tagName)):Oe(Ri.tagName,f.Expected_corresponding_JSX_closing_tag_for_0,bC(Pe,Kt.tagName)));zr=nn(m.createJsxElement(Kt,Wi,Ri),Nt)}else Kt.kind===289?zr=nn(m.createJsxFragment(Kt,vg(Kt),xT(Q)),Nt):(N.assert(Kt.kind===285),zr=Kt);if(!xt&&Q&&J()===30){const Wi=typeof xe>"u"?zr.pos:xe,Ri=Ii(()=>ov(!0,Wi));if(Ri){const mi=js(28,!1);return nP(mi,Ri.pos,0),q(ka(Pe,Wi),Ri.end,f.JSX_expressions_must_have_one_parent_element),nn(m.createBinaryExpression(zr,mi,Ri),Nt)}}return zr}function M1(){const Q=L(),xe=m.createJsxText(t.getTokenValue(),vt===13);return vt=t.scanJsxToken(),nn(xe,Q)}function AT(Q,xe){switch(xe){case 1:if(hI(Q))Oe(Q,f.JSX_fragment_has_no_corresponding_closing_tag);else{const Xe=Q.tagName,xt=Math.min(ka(Pe,Xe.pos),Xe.end);q(xt,Xe.end,f.JSX_element_0_has_no_corresponding_closing_tag,bC(Pe,Q.tagName))}return;case 31:case 7:return;case 12:case 13:return M1();case 19:return oN(!1);case 30:return ov(!1,void 0,Q);default:return N.assertNever(xe)}}function vg(Q){const xe=[],Xe=L(),xt=rn;for(rn|=16384;;){const Nt=AT(Q,vt=t.reScanJsxToken());if(!Nt||(xe.push(Nt),W_(Q)&&(Nt==null?void 0:Nt.kind)===284&&!C0(Nt.openingElement.tagName,Nt.closingElement.tagName)&&C0(Q.tagName,Nt.closingElement.tagName)))break}return rn=xt,ko(xe,Xe)}function ox(){const Q=L();return nn(m.createJsxAttributes(na(13,aN)),Q)}function yg(Q){const xe=L();if(Dn(30),J()===32)return ir(),nn(m.createJsxOpeningFragment(),xe);const Xe=q_(),xt=Xn&524288?void 0:rE(),Nt=ox();let Kt;return J()===32?(ir(),Kt=m.createJsxOpeningElement(Xe,xt,Nt)):(Dn(44),Dn(32,void 0,!1)&&(Q?ke():ir()),Kt=m.createJsxSelfClosingElement(Xe,xt,Nt)),nn(Kt,xe)}function q_(){const Q=L(),xe=dy();if(t_(xe))return xe;let Xe=xe;for(;ho(25);)Xe=nn(Z(Xe,Ft(!0,!1,!1)),Q);return Xe}function dy(){const Q=L();Ai();const xe=J()===110,Xe=de();return ho(59)?(Ai(),nn(m.createJsxNamespacedName(Xe,de()),Q)):xe?nn(m.createToken(110),Q):Xe}function oN(Q){const xe=L();if(!Dn(19))return;let Xe,xt;return J()!==20&&(Q||(Xe=pa(26)),xt=Je()),Q?Dn(20):Dn(20,void 0,!1)&&ir(),nn(m.createJsxExpression(Xe,xt),xe)}function aN(){if(J()===19)return Zs();const Q=L();return nn(m.createJsxAttribute(IT(),sN()),Q)}function sN(){if(J()===64){if(jr()===11)return $r();if(J()===19)return oN(!0);if(J()===30)return ov(!0);fn(f.or_JSX_element_expected)}}function IT(){const Q=L();Ai();const xe=de();return ho(59)?(Ai(),nn(m.createJsxNamespacedName(xe,de()),Q)):xe}function Zs(){const Q=L();Dn(19),Dn(26);const xe=Je();return Dn(20),nn(m.createJsxSpreadAttribute(xe),Q)}function L1(Q,xe){const Xe=L();Dn(31);const xt=q_();return Dn(32,void 0,!1)&&(xe||!C0(Q.tagName,xt)?ke():ir()),nn(m.createJsxClosingElement(xt),Xe)}function xT(Q){const xe=L();return Dn(31),Dn(32,f.Expected_corresponding_closing_tag_for_JSX_fragment,!1)&&(Q?ke():ir()),nn(m.createJsxJsxClosingFragment(),xe)}function Fm(){N.assert(Se!==1,"Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");const Q=L();Dn(30);const xe=bc();Dn(32);const Xe=bl();return nn(m.createTypeAssertion(xe,Xe),Q)}function yb(){return ke(),sd(J())||J()===23||to()}function lN(){return J()===29&&Ci(yb)}function RT(Q){if(Q.flags&64)return!0;if(fI(Q)){let xe=Q.expression;for(;fI(xe)&&!(xe.flags&64);)xe=xe.expression;if(xe.flags&64){for(;fI(Q);)Q.flags|=64,Q=Q.expression;return!0}}return!1}function k2(Q,xe,Xe){const xt=Ft(!0,!0,!0),Nt=Xe||RT(xe),Kt=Nt?V(xe,Xe,xt):Z(xe,xt);if(Nt&&Ji(Kt.name)&&Oe(Kt.name,f.An_optional_chain_cannot_contain_private_identifiers),Kv(xe)&&xe.typeArguments){const zr=xe.typeArguments.pos-1,Wi=ka(Pe,xe.typeArguments.end)+1;q(zr,Wi,f.An_instantiation_expression_cannot_be_followed_by_a_property_access)}return nn(Kt,Q)}function hr(Q,xe,Xe){let xt;if(J()===24)xt=js(80,!0,f.An_element_access_expression_should_take_an_argument);else{const Kt=Sn(Je);nf(Kt)&&(Kt.text=nu(Kt.text)),xt=Kt}Dn(24);const Nt=Xe||RT(xe)?G(xe,Xe,xt):se(xe,xt);return nn(Nt,Q)}function ru(Q,xe,Xe){for(;;){let xt,Nt=!1;if(Xe&&lN()?(xt=As(29),Nt=sd(J())):Nt=ho(25),Nt){xe=k2(Q,xe,xt);continue}if((xt||!Vt())&&ho(23)){xe=hr(Q,xe,xt);continue}if(to()){xe=!xt&&xe.kind===233?hf(Q,xe.expression,xt,xe.typeArguments):hf(Q,xe,xt,void 0);continue}if(!xt){if(J()===54&&!t.hasPrecedingLineBreak()){ke(),xe=nn(m.createNonNullExpression(xe),Q);continue}const Kt=Ii(ur);if(Kt){xe=nn(m.createExpressionWithTypeArguments(xe,Kt),Q);continue}}return xe}}function to(){return J()===15||J()===16}function hf(Q,xe,Xe,xt){const Nt=m.createTaggedTemplateExpression(xe,xt,J()===15?(Bn(!0),$r()):F(!0));return(Xe||xe.flags&64)&&(Nt.flags|=64),Nt.questionDotToken=Xe,nn(Nt,Q)}function py(Q,xe){for(;;){xe=ru(Q,xe,!0);let Xe;const xt=pa(29);if(xt&&(Xe=Ii(ur),to())){xe=hf(Q,xe,xt,Xe);continue}if(Xe||J()===21){!xt&&xe.kind===233&&(Xe=xe.typeArguments,xe=xe.expression);const Nt=J_(),Kt=xt||RT(xe)?he(xe,xt,Xe,Nt):ne(xe,Xe,Nt);xe=nn(Kt,Q);continue}if(xt){const Nt=js(80,!1,f.Identifier_expected);xe=nn(V(xe,xt,Nt),Q)}break}return xe}function J_(){Dn(21);const Q=Bu(11,k1);return Dn(22),Q}function ur(){if(Xn&524288||Hn()!==30)return;ke();const Q=Bu(20,bc);if(en()===32)return ke(),Q&&DT()?Q:void 0}function DT(){switch(J()){case 21:case 15:case 16:return!0;case 30:case 32:case 40:case 41:return!1}return t.hasPrecedingLineBreak()||c_()||!a_()}function Y0(){switch(J()){case 15:t.getTokenFlags()&26656&&Bn(!1);case 9:case 10:case 11:return $r();case 110:case 108:case 106:case 112:case 97:return _l();case 21:return Kc();case 23:return w1();case 19:return av();case 134:if(!Ci(kT))break;return NT();case 60:return nE();case 86:return px();case 100:return NT();case 105:return $0();case 44:case 69:if(bn()===14)return $r();break;case 16:return F(!1);case 81:return vr()}return Ms(f.Expression_expected)}function Kc(){const Q=L(),xe=_e();Dn(21);const Xe=Sn(Je);return Dn(22),Ar(nn($(Xe),Q),xe)}function Lh(){const Q=L();Dn(26);const xe=_u(!0);return nn(m.createSpreadElement(xe),Q)}function zm(){return J()===26?Lh():J()===28?nn(m.createOmittedExpression(),L()):_u(!0)}function k1(){return ma(r,zm)}function w1(){const Q=L(),xe=t.getTokenStart(),Xe=Dn(23),xt=t.hasPrecedingLineBreak(),Nt=Bu(15,zm);return uu(23,24,Xe,xe),nn(U(Nt,xt),Q)}function bb(){const Q=L(),xe=_e();if(pa(26)){const Yi=_u(!0);return Ar(nn(m.createSpreadAssignment(Yi),Q),xe)}const Xe=wh(!0);if(Ur(139))return lv(Q,xe,Xe,177,0);if(Ur(153))return lv(Q,xe,Xe,178,0);const xt=pa(42),Nt=xo(),Kt=un(),zr=pa(58),Wi=pa(54);if(xt||J()===21||J()===30)return u_(Q,xe,Xe,xt,Kt,zr,Wi);let Ri;if(Nt&&J()!==59){const Yi=pa(64),ds=Yi?Sn(()=>_u(!0)):void 0;Ri=m.createShorthandPropertyAssignment(Kt,ds),Ri.equalsToken=Yi}else{Dn(59);const Yi=Sn(()=>_u(!0));Ri=m.createPropertyAssignment(Kt,Yi)}return Ri.modifiers=Xe,Ri.questionToken=zr,Ri.exclamationToken=Wi,Ar(nn(Ri,Q),xe)}function av(){const Q=L(),xe=t.getTokenStart(),Xe=Dn(19),xt=t.hasPrecedingLineBreak(),Nt=Bu(12,bb,!0);return uu(19,20,Xe,xe),nn(K(Nt,xt),Q)}function NT(){const Q=Vt();Qi(!1);const xe=L(),Xe=_e(),xt=wh(!1);Dn(100);const Nt=pa(42),Kt=Nt?1:0,zr=bt(xt,_P)?2:0,Wi=Kt&&zr?pt(Bm):Kt?ft(Bm):zr?le(Bm):Bm(),Ri=mf(),mi=gn(Kt|zr),Yi=Ht(59,!1),ds=Eb(Kt|zr);Qi(Q);const Ds=m.createFunctionExpression(xt,Nt,Wi,Ri,mi,Yi,ds);return Ar(nn(Ds,xe),Xe)}function Bm(){return Kr()?Ip():void 0}function $0(){const Q=L();if(Dn(105),ho(25)){const Kt=Rc();return nn(m.createMetaProperty(105,Kt),Q)}const xe=L();let Xe=ru(xe,Y0(),!1),xt;Xe.kind===233&&(xt=Xe.typeArguments,Xe=Xe.expression),J()===29&&fn(f.Invalid_optional_chain_from_new_expression_Did_you_mean_to_call_0,bC(Pe,Xe));const Nt=J()===21?J_():void 0;return nn(ye(Xe,xt,Nt),Q)}function bg(Q,xe){const Xe=L(),xt=_e(),Nt=t.getTokenStart(),Kt=Dn(19,xe);if(Kt||Q){const zr=t.hasPrecedingLineBreak(),Wi=na(1,lp);uu(19,20,Kt,Nt);const Ri=Ar(nn(Y(Wi,zr),Xe),xt);return J()===64&&(fn(f.Declaration_or_statement_expected_This_follows_a_block_of_statements_so_if_you_intended_to_write_a_destructuring_assignment_you_might_need_to_wrap_the_whole_assignment_in_parentheses),ke()),Ri}else{const zr=xp();return Ar(nn(Y(zr,void 0),Xe),xt)}}function Eb(Q,xe){const Xe=Rt();hi(!!(Q&1));const xt=vn();Io(!!(Q&2));const Nt=hn;hn=!1;const Kt=Vt();Kt&&Qi(!1);const zr=bg(!!(Q&16),xe);return Kt&&Qi(!0),hn=Nt,hi(Xe),Io(xt),zr}function ax(){const Q=L(),xe=_e();return Dn(27),Ar(nn(m.createEmptyStatement(),Q),xe)}function Q0(){const Q=L(),xe=_e();Dn(101);const Xe=t.getTokenStart(),xt=Dn(21),Nt=Sn(Je);uu(21,22,xt,Xe);const Kt=lp(),zr=ho(93)?lp():void 0;return Ar(nn(Ne(Nt,Kt,zr),Q),xe)}function cN(){const Q=L(),xe=_e();Dn(92);const Xe=lp();Dn(117);const xt=t.getTokenStart(),Nt=Dn(21),Kt=Sn(Je);return uu(21,22,Nt,xt),ho(27),Ar(nn(m.createDoStatement(Xe,Kt),Q),xe)}function O1(){const Q=L(),xe=_e();Dn(117);const Xe=t.getTokenStart(),xt=Dn(21),Nt=Sn(Je);uu(21,22,xt,Xe);const Kt=lp();return Ar(nn(pe(Nt,Kt),Q),xe)}function CT(){const Q=L(),xe=_e();Dn(99);const Xe=pa(135);Dn(21);let xt;J()!==27&&(J()===115||J()===121||J()===87||J()===160&&Ci(sv)||J()===135&&Ci(Np)?xt=F1(!0):xt=kn(Je));let Nt;if(Xe?Dn(165):ho(165)){const Kt=Sn(()=>_u(!0));Dn(22),Nt=ve(Xe,xt,Kt,lp())}else if(ho(103)){const Kt=Sn(Je);Dn(22),Nt=m.createForInStatement(xt,Kt,lp())}else{Dn(27);const Kt=J()!==27&&J()!==22?Sn(Je):void 0;Dn(27);const zr=J()!==22?Sn(Je):void 0;Dn(22),Nt=ie(xt,Kt,zr,lp())}return Ar(nn(Nt,Q),xe)}function Hp(Q){const xe=L(),Xe=_e();Dn(Q===252?83:88);const xt=lc()?void 0:Ms();ul();const Nt=Q===252?m.createBreakStatement(xt):m.createContinueStatement(xt);return Ar(nn(Nt,xe),Xe)}function PT(){const Q=L(),xe=_e();Dn(107);const Xe=lc()?void 0:Sn(Je);return ul(),Ar(nn(m.createReturnStatement(Xe),Q),xe)}function jl(){const Q=L(),xe=_e();Dn(118);const Xe=t.getTokenStart(),xt=Dn(21),Nt=Sn(Je);uu(21,22,xt,Xe);const Kt=Wa(67108864,lp);return Ar(nn(m.createWithStatement(Nt,Kt),Q),xe)}function Fc(){const Q=L(),xe=_e();Dn(84);const Xe=Sn(Je);Dn(59);const xt=na(3,lp);return Ar(nn(m.createCaseClause(Xe,xt),Q),xe)}function MT(){const Q=L();Dn(90),Dn(59);const xe=na(3,lp);return nn(m.createDefaultClause(xe),Q)}function Au(){return J()===84?Fc():MT()}function sp(){const Q=L();Dn(19);const xe=na(2,Au);return Dn(20),nn(m.createCaseBlock(xe),Q)}function Z0(){const Q=L(),xe=_e();Dn(109),Dn(21);const Xe=Sn(Je);Dn(22);const xt=sp();return Ar(nn(m.createSwitchStatement(Xe,xt),Q),xe)}function Ff(){const Q=L(),xe=_e();Dn(111);let Xe=t.hasPrecedingLineBreak()?void 0:Sn(Je);return Xe===void 0&&(tn++,Xe=nn(M(""),L())),Nl()||Ql(Xe),Ar(nn(m.createThrowStatement(Xe),Q),xe)}function Sb(){const Q=L(),xe=_e();Dn(113);const Xe=bg(!1),xt=J()===85?Tb():void 0;let Nt;return(!xt||J()===98)&&(Dn(98,f.catch_or_finally_expected),Nt=bg(!1)),Ar(nn(m.createTryStatement(Xe,xt,Nt),Q),xe)}function Tb(){const Q=L();Dn(85);let xe;ho(21)?(xe=Pd(),Dn(22)):xe=void 0;const Xe=bg(!1);return nn(m.createCatchClause(xe,Xe),Q)}function iu(){const Q=L(),xe=_e();return Dn(89),ul(),Ar(nn(m.createDebuggerStatement(),Q),xe)}function sx(){const Q=L();let xe=_e(),Xe;const xt=J()===21,Nt=Sn(Je);return Ve(Nt)&&ho(59)?Xe=m.createLabeledStatement(Nt,lp()):(Nl()||Ql(Nt),Xe=fe(Nt),xt&&(xe=!1)),Ar(nn(Xe,Q),xe)}function qp(){return ke(),sd(J())&&!t.hasPrecedingLineBreak()}function LT(){return ke(),J()===86&&!t.hasPrecedingLineBreak()}function kT(){return ke(),J()===100&&!t.hasPrecedingLineBreak()}function Hs(){return ke(),(sd(J())||J()===9||J()===10||J()===11)&&!t.hasPrecedingLineBreak()}function uN(){for(;;)switch(J()){case 115:case 121:case 87:case 100:case 86:case 94:return!0;case 160:return lx();case 135:return cx();case 120:case 156:return rx();case 144:case 145:return fN();case 128:case 129:case 134:case 138:case 123:case 124:case 125:case 148:const Q=J();if(ke(),t.hasPrecedingLineBreak())return!1;if(Q===138&&J()===156)return!0;continue;case 162:return ke(),J()===19||J()===80||J()===95;case 102:return ke(),J()===11||J()===42||J()===19||sd(J());case 95:let xe=ke();if(xe===156&&(xe=Ci(ke)),xe===64||xe===42||xe===19||xe===90||xe===130||xe===60)return!0;continue;case 126:ke();continue;default:return!1}}function eE(){return Ci(uN)}function W1(){switch(J()){case 60:case 27:case 19:case 115:case 121:case 160:case 100:case 86:case 94:case 101:case 92:case 117:case 99:case 88:case 83:case 107:case 118:case 109:case 111:case 113:case 89:case 85:case 98:return!0;case 102:return eE()||Ci(j0);case 87:case 95:return eE();case 134:case 138:case 120:case 144:case 145:case 156:case 162:return!0;case 129:case 125:case 123:case 124:case 126:case 148:return eE()||!Ci(qp);default:return a_()}}function w2(){return ke(),Kr()||J()===19||J()===23}function vd(){return Ci(w2)}function sv(){return K_(!0)}function K_(Q){return ke(),Q&&J()===165?!1:(Kr()||J()===19)&&!t.hasPrecedingLineBreak()}function lx(){return Ci(K_)}function Np(Q){return ke()===160?K_(Q):!1}function cx(){return Ci(Np)}function lp(){switch(J()){case 27:return ax();case 19:return bg(!1);case 115:return tE(L(),_e(),void 0);case 121:if(vd())return tE(L(),_e(),void 0);break;case 135:if(cx())return tE(L(),_e(),void 0);break;case 160:if(lx())return tE(L(),_e(),void 0);break;case 100:return z1(L(),_e(),void 0);case 86:return zT(L(),_e(),void 0);case 101:return Q0();case 92:return cN();case 117:return O1();case 99:return CT();case 88:return Hp(251);case 83:return Hp(252);case 107:return PT();case 118:return jl();case 109:return Z0();case 111:return Ff();case 113:case 85:case 98:return Sb();case 89:return iu();case 60:return fy();case 134:case 120:case 156:case 144:case 145:case 138:case 87:case 94:case 95:case 102:case 123:case 124:case 125:case 128:case 129:case 126:case 148:case 162:if(eE())return fy();break}return sx()}function ux(Q){return Q.kind===138}function fy(){const Q=L(),xe=_e(),Xe=wh(!0);if(bt(Xe,ux)){const Nt=wT(Q);if(Nt)return Nt;for(const Kt of Xe)Kt.flags|=33554432;return Wa(33554432,()=>dN(Q,xe,Xe))}else return dN(Q,xe,Xe)}function wT(Q){return Wa(33554432,()=>{const xe=yc(rn,Q);if(xe)return dl(xe)})}function dN(Q,xe,Xe){switch(J()){case 115:case 121:case 87:case 160:case 135:return tE(Q,xe,Xe);case 100:return z1(Q,xe,Xe);case 86:return zT(Q,xe,Xe);case 120:return ht(Q,xe,Xe);case 156:return on(Q,xe,Xe);case 94:return ki(Q,xe,Xe);case 162:case 144:case 145:return ed(Q,xe,Xe);case 102:return Un(Q,xe,Xe);case 95:switch(ke(),J()){case 90:case 64:return Fh(Q,xe,Xe);case 130:return Oh(Q,xe,Xe);default:return O2(Q,xe,Xe)}default:if(Xe){const xt=js(282,!0,f.Declaration_expected);return tP(xt,Q),xt.modifiers=Xe,xt}return}}function pN(){return ke()===11}function OT(){return ke(),J()===161||J()===64}function fN(){return ke(),!t.hasPrecedingLineBreak()&&(xo()||J()===11)}function Ab(Q,xe){if(J()!==19){if(Q&4){$n();return}if(lc()){ul();return}}return Eb(Q,xe)}function Cp(){const Q=L();if(J()===28)return nn(m.createOmittedExpression(),Q);const xe=pa(26),Xe=Ir(),xt=s_();return nn(m.createBindingElement(xe,void 0,Xe,xt),Q)}function kh(){const Q=L(),xe=pa(26),Xe=Kr();let xt=un(),Nt;Xe&&J()!==59?(Nt=xt,xt=void 0):(Dn(59),Nt=Ir());const Kt=s_();return nn(m.createBindingElement(xe,xt,Nt,Kt),Q)}function mN(){const Q=L();Dn(19);const xe=Sn(()=>Bu(9,kh));return Dn(20),nn(m.createObjectBindingPattern(xe),Q)}function WT(){const Q=L();Dn(23);const xe=Sn(()=>Bu(10,Cp));return Dn(24),nn(m.createArrayBindingPattern(xe),Q)}function rs(){return J()===19||J()===23||J()===81||Kr()}function Ir(Q){return J()===23?WT():J()===19?mN():Ip(Q)}function gf(){return Pd(!0)}function Pd(Q){const xe=L(),Xe=_e(),xt=Ir(f.Private_identifiers_are_not_allowed_in_variable_declarations);let Nt;Q&&xt.kind===80&&J()===54&&!t.hasPrecedingLineBreak()&&(Nt=_l());const Kt=ly(),zr=rv(J())?void 0:s_(),Wi=Le(xt,Nt,Kt,zr);return Ar(nn(Wi,xe),Xe)}function F1(Q){const xe=L();let Xe=0;switch(J()){case 115:break;case 121:Xe|=1;break;case 87:Xe|=2;break;case 160:Xe|=4;break;case 135:N.assert(cx()),Xe|=6,ke();break;default:N.fail()}ke();let xt;if(J()===165&&Ci(_N))xt=xp();else{const Nt=Ye();li(Q),xt=Bu(8,Q?Pd:gf),li(Nt)}return nn(He(xt,Xe),xe)}function _N(){return op()&&ke()===22}function tE(Q,xe,Xe){const xt=F1(!1);ul();const Nt=oe(Xe,xt);return Ar(nn(Nt,Q),xe)}function z1(Q,xe,Xe){const xt=vn(),Nt=M_(Xe);Dn(100);const Kt=pa(42),zr=Nt&2048?Bm():Ip(),Wi=Kt?1:0,Ri=Nt&1024?2:0,mi=mf();Nt&32&&Io(!0);const Yi=gn(Wi|Ri),ds=Ht(59,!1),Ds=Ab(Wi|Ri,f.or_expected);Io(xt);const es=m.createFunctionDeclaration(Xe,Kt,zr,mi,Yi,ds,Ds);return Ar(nn(es,Q),xe)}function FT(){if(J()===137)return Dn(137);if(J()===11&&Ci(ke)===21)return Ii(()=>{const Q=$r();return Q.text==="constructor"?Q:void 0})}function Eg(Q,xe,Xe){return Ii(()=>{if(FT()){const xt=mf(),Nt=gn(0),Kt=Ht(59,!1),zr=Ab(0,f.or_expected),Wi=m.createConstructorDeclaration(Xe,Nt,zr);return Wi.typeParameters=xt,Wi.type=Kt,Ar(nn(Wi,Q),xe)}})}function u_(Q,xe,Xe,xt,Nt,Kt,zr,Wi){const Ri=xt?1:0,mi=bt(Xe,_P)?2:0,Yi=mf(),ds=gn(Ri|mi),Ds=Ht(59,!1),es=Ab(Ri|mi,Wi),Gf=m.createMethodDeclaration(Xe,xt,Nt,Kt,Yi,ds,Ds,es);return Gf.exclamationToken=zr,Ar(nn(Gf,Q),xe)}function vf(Q,xe,Xe,xt,Nt){const Kt=!Nt&&!t.hasPrecedingLineBreak()?pa(54):void 0,zr=ly(),Wi=ma(90112,s_);Vs(xt,zr,Wi);const Ri=m.createPropertyDeclaration(Xe,xt,Nt||Kt,zr,Wi);return Ar(nn(Ri,Q),xe)}function Gm(Q,xe,Xe){const xt=pa(42),Nt=un(),Kt=pa(58);return xt||J()===21||J()===30?u_(Q,xe,Xe,xt,Nt,Kt,void 0,f.or_expected):vf(Q,xe,Xe,Nt,Kt)}function lv(Q,xe,Xe,xt,Nt){const Kt=un(),zr=mf(),Wi=gn(0),Ri=Ht(59,!1),mi=Ab(Nt),Yi=xt===177?m.createGetAccessorDeclaration(Xe,Kt,Wi,Ri,mi):m.createSetAccessorDeclaration(Xe,Kt,Wi,mi);return Yi.typeParameters=zr,bp(Yi)&&(Yi.type=Ri),Ar(nn(Yi,Q),xe)}function Sg(){let Q;if(J()===60)return!0;for(;Wv(J());){if(Q=J(),oj(Q))return!0;ke()}if(J()===42||(ee()&&(Q=J(),ke()),J()===23))return!0;if(Q!==void 0){if(!Bd(Q)||Q===153||Q===139)return!0;switch(J()){case 21:case 30:case 54:case 59:case 64:case 58:return!0;default:return lc()}}return!1}function Tg(Q,xe,Xe){As(126);const xt=dx(),Nt=Ar(nn(m.createClassStaticBlockDeclaration(xt),Q),xe);return Nt.modifiers=Xe,Nt}function dx(){const Q=Rt(),xe=vn();hi(!1),Io(!0);const Xe=bg(!1);return hi(Q),Io(xe),Xe}function cc(){if(vn()&&J()===135){const Q=L(),xe=Ms(f.Expression_expected);ke();const Xe=ru(Q,xe,!0);return py(Q,Xe)}return pm()}function hN(){const Q=L();if(!ho(60))return;const xe=Ct(cc);return nn(m.createDecorator(xe),Q)}function zf(Q,xe,Xe){const xt=L(),Nt=J();if(J()===87&&xe){if(!Ii(xi))return}else{if(Xe&&J()===126&&Ci(xb))return;if(Q&&J()===126)return;if(!Hc())return}return nn(O(Nt),xt)}function wh(Q,xe,Xe){const xt=L();let Nt,Kt,zr,Wi=!1,Ri=!1,mi=!1;if(Q&&J()===60)for(;Kt=hN();)Nt=xn(Nt,Kt);for(;zr=zf(Wi,xe,Xe);)zr.kind===126&&(Wi=!0),Nt=xn(Nt,zr),Ri=!0;if(Ri&&Q&&J()===60)for(;Kt=hN();)Nt=xn(Nt,Kt),mi=!0;if(mi)for(;zr=zf(Wi,xe,Xe);)zr.kind===126&&(Wi=!0),Nt=xn(Nt,zr);return Nt&&ko(Nt,xt)}function yf(){let Q;if(J()===134){const xe=L();ke();const Xe=nn(O(134),xe);Q=ko([Xe],xe)}return Q}function B1(){const Q=L(),xe=_e();if(J()===27)return ke(),Ar(nn(m.createSemicolonClassElement(),Q),xe);const Xe=wh(!0,!0,!0);if(J()===126&&Ci(xb))return Tg(Q,xe,Xe);if(Ur(139))return lv(Q,xe,Xe,177,0);if(Ur(153))return lv(Q,xe,Xe,178,0);if(J()===137||J()===11){const xt=Eg(Q,xe,Xe);if(xt)return xt}if(cr())return fr(Q,xe,Xe);if(sd(J())||J()===11||J()===9||J()===42||J()===23)if(bt(Xe,ux)){for(const Nt of Xe)Nt.flags|=33554432;return Wa(33554432,()=>Gm(Q,xe,Xe))}else return Gm(Q,xe,Xe);if(Xe){const xt=js(80,!0,f.Declaration_expected);return vf(Q,xe,Xe,xt,void 0)}return N.fail("Should not have attempted to parse class member declaration.")}function nE(){const Q=L(),xe=_e(),Xe=wh(!0);if(J()===86)return bf(Q,xe,Xe,231);const xt=js(282,!0,f.Expression_expected);return tP(xt,Q),xt.modifiers=Xe,xt}function px(){return bf(L(),_e(),void 0,231)}function zT(Q,xe,Xe){return bf(Q,xe,Xe,263)}function bf(Q,xe,Xe,xt){const Nt=vn();Dn(86);const Kt=Ls(),zr=mf();bt(Xe,oI)&&Io(!0);const Wi=V1();let Ri;Dn(19)?(Ri=ae(),Dn(20)):Ri=xp(),Io(Nt);const mi=xt===263?m.createClassDeclaration(Xe,Kt,zr,Wi,Ri):m.createClassExpression(Xe,Kt,zr,Wi,Ri);return Ar(nn(mi,Q),xe)}function Ls(){return Kr()&&!G1()?pu(Kr()):void 0}function G1(){return J()===119&&Ci(Wc)}function V1(){if(D())return na(22,cv)}function cv(){const Q=L(),xe=J();N.assert(xe===96||xe===119),ke();const Xe=Bu(7,Ib);return nn(m.createHeritageClause(xe,Xe),Q)}function Ib(){const Q=L(),xe=pm();if(xe.kind===233)return xe;const Xe=rE();return nn(m.createExpressionWithTypeArguments(xe,Xe),Q)}function rE(){return J()===30?Ud(20,bc,30,32):void 0}function D(){return J()===96||J()===119}function ae(){return na(5,B1)}function ht(Q,xe,Xe){Dn(120);const xt=Ms(),Nt=mf(),Kt=V1(),zr=U0(),Wi=m.createInterfaceDeclaration(Xe,xt,Nt,Kt,zr);return Ar(nn(Wi,Q),xe)}function on(Q,xe,Xe){Dn(156),t.hasPrecedingLineBreak()&&fn(f.Line_break_not_permitted_here);const xt=Ms(),Nt=mf();Dn(64);const Kt=J()===141&&Ii(gT)||bc();ul();const zr=m.createTypeAliasDeclaration(Xe,xt,Nt,Kt);return Ar(nn(zr,Q),xe)}function Or(){const Q=L(),xe=_e(),Xe=un(),xt=Sn(s_);return Ar(nn(m.createEnumMember(Xe,xt),Q),xe)}function ki(Q,xe,Xe){Dn(94);const xt=Ms();let Nt;Dn(19)?(Nt=j(()=>Bu(6,Or)),Dn(20)):Nt=xp();const Kt=m.createEnumDeclaration(Xe,xt,Nt);return Ar(nn(Kt,Q),xe)}function gi(){const Q=L();let xe;return Dn(19)?(xe=na(1,lp),Dn(20)):xe=xp(),nn(m.createModuleBlock(xe),Q)}function no(Q,xe,Xe,xt){const Nt=xt&32,Kt=xt&8?Rc():Ms(),zr=ho(25)?no(L(),!1,void 0,8|Nt):gi(),Wi=m.createModuleDeclaration(Xe,Kt,zr,xt);return Ar(nn(Wi,Q),xe)}function va(Q,xe,Xe){let xt=0,Nt;J()===162?(Nt=Ms(),xt|=2048):(Nt=$r(),Nt.text=nu(Nt.text));let Kt;J()===19?Kt=gi():ul();const zr=m.createModuleDeclaration(Xe,Nt,Kt,xt);return Ar(nn(zr,Q),xe)}function ed(Q,xe,Xe){let xt=0;if(J()===162)return va(Q,xe,Xe);if(ho(145))xt|=32;else if(Dn(144),J()===11)return va(Q,xe,Xe);return no(Q,xe,Xe,xt)}function Md(){return J()===149&&Ci(Bf)}function Bf(){return ke()===21}function xb(){return ke()===19}function bi(){return ke()===44}function Oh(Q,xe,Xe){Dn(130),Dn(145);const xt=Ms();ul();const Nt=m.createNamespaceExportDeclaration(xt);return Nt.modifiers=Xe,Ar(nn(Nt,Q),xe)}function Un(Q,xe,Xe){Dn(102);const xt=t.getTokenFullStart();let Nt;xo()&&(Nt=Ms());let Kt=!1;if((Nt==null?void 0:Nt.escapedText)==="type"&&(J()!==161||xo()&&Ci(OT))&&(xo()||Db())&&(Kt=!0,Nt=xo()?Ms():void 0),Nt&&!BT())return j1(Q,xe,Xe,Nt,Kt);let zr;(Nt||J()===42||J()===19)&&(zr=X_(Nt,xt,Kt),Dn(161));const Wi=GT(),Ri=J();let mi;(Ri===118||Ri===132)&&!t.hasPrecedingLineBreak()&&(mi=Rb(Ri)),ul();const Yi=m.createImportDeclaration(Xe,zr,Wi,mi);return Ar(nn(Yi,Q),xe)}function fx(){const Q=L(),xe=sd(J())?Rc():Ol(11);Dn(59);const Xe=_u(!0);return nn(m.createImportAttribute(xe,Xe),Q)}function Rb(Q,xe){const Xe=L();xe||Dn(Q);const xt=t.getTokenStart();if(Dn(19)){const Nt=t.hasPrecedingLineBreak(),Kt=Bu(24,fx,!0);if(!Dn(20)){const zr=tl(je);zr&&zr.code===f._0_expected.code&&wa(zr,OR(Ee,Pe,xt,1,f.The_parser_expected_to_find_a_1_to_match_the_0_token_here,"{","}"))}return nn(m.createImportAttributes(Kt,Nt,Q),Xe)}else{const Nt=ko([],L(),void 0,!1);return nn(m.createImportAttributes(Nt,!1,Q),Xe)}}function Db(){return J()===42||J()===19}function BT(){return J()===28||J()===161}function j1(Q,xe,Xe,xt,Nt){Dn(64);const Kt=Wh();ul();const zr=m.createImportEqualsDeclaration(Xe,Nt,xt,Kt);return Ar(nn(zr,Q),xe)}function X_(Q,xe,Xe){let xt;return(!Q||ho(28))&&(xt=J()===42?u9():Nb(275)),nn(m.createImportClause(Xe,Q,xt),xe)}function Wh(){return Md()?gN():te(!1)}function gN(){const Q=L();Dn(149),Dn(21);const xe=GT();return Dn(22),nn(m.createExternalModuleReference(xe),Q)}function GT(){if(J()===11){const Q=$r();return Q.text=nu(Q.text),Q}else return Je()}function u9(){const Q=L();Dn(42),Dn(130);const xe=Ms();return nn(m.createNamespaceImport(xe),Q)}function Nb(Q){const xe=L(),Xe=Q===275?m.createNamedImports(Ud(23,T8,19,20)):m.createNamedExports(Ud(23,S8,19,20));return nn(Xe,xe)}function S8(){const Q=_e();return Ar(iE(281),Q)}function T8(){return iE(276)}function iE(Q){const xe=L();let Xe=Bd(J())&&!xo(),xt=t.getTokenStart(),Nt=t.getTokenEnd(),Kt=!1,zr,Wi=!0,Ri=Rc();if(Ri.escapedText==="type")if(J()===130){const ds=Rc();if(J()===130){const Ds=Rc();sd(J())?(Kt=!0,zr=ds,Ri=Yi(),Wi=!1):(zr=Ri,Ri=Ds,Wi=!1)}else sd(J())?(zr=Ri,Wi=!1,Ri=Yi()):(Kt=!0,Ri=ds)}else sd(J())&&(Kt=!0,Ri=Yi());Wi&&J()===130&&(zr=Ri,Dn(130),Ri=Yi()),Q===276&&Xe&&q(xt,Nt,f.Identifier_expected);const mi=Q===276?m.createImportSpecifier(Kt,zr,Ri):m.createExportSpecifier(Kt,zr,Ri);return nn(mi,xe);function Yi(){return Xe=Bd(J())&&!xo(),xt=t.getTokenStart(),Nt=t.getTokenEnd(),Rc()}}function d_(Q){return nn(m.createNamespaceExport(Rc()),Q)}function O2(Q,xe,Xe){const xt=vn();Io(!0);let Nt,Kt,zr;const Wi=ho(156),Ri=L();ho(42)?(ho(130)&&(Nt=d_(Ri)),Dn(161),Kt=GT()):(Nt=Nb(279),(J()===161||J()===11&&!t.hasPrecedingLineBreak())&&(Dn(161),Kt=GT()));const mi=J();Kt&&(mi===118||mi===132)&&!t.hasPrecedingLineBreak()&&(zr=Rb(mi)),ul(),Io(xt);const Yi=m.createExportDeclaration(Xe,Wi,Nt,Kt,zr);return Ar(nn(Yi,Q),xe)}function Fh(Q,xe,Xe){const xt=vn();Io(!0);let Nt;ho(64)?Nt=!0:Dn(90);const Kt=_u(!0);ul(),Io(xt);const zr=m.createExportAssignment(Xe,Nt,Kt);return Ar(nn(zr,Q),xe)}let mx;(Q=>{Q[Q.SourceElements=0]="SourceElements",Q[Q.BlockStatements=1]="BlockStatements",Q[Q.SwitchClauses=2]="SwitchClauses",Q[Q.SwitchClauseStatements=3]="SwitchClauseStatements",Q[Q.TypeMembers=4]="TypeMembers",Q[Q.ClassMembers=5]="ClassMembers",Q[Q.EnumMembers=6]="EnumMembers",Q[Q.HeritageClauseElement=7]="HeritageClauseElement",Q[Q.VariableDeclarations=8]="VariableDeclarations",Q[Q.ObjectBindingElements=9]="ObjectBindingElements",Q[Q.ArrayBindingElements=10]="ArrayBindingElements",Q[Q.ArgumentExpressions=11]="ArgumentExpressions",Q[Q.ObjectLiteralMembers=12]="ObjectLiteralMembers",Q[Q.JsxAttributes=13]="JsxAttributes",Q[Q.JsxChildren=14]="JsxChildren",Q[Q.ArrayLiteralMembers=15]="ArrayLiteralMembers",Q[Q.Parameters=16]="Parameters",Q[Q.JSDocParameters=17]="JSDocParameters",Q[Q.RestProperties=18]="RestProperties",Q[Q.TypeParameters=19]="TypeParameters",Q[Q.TypeArguments=20]="TypeArguments",Q[Q.TupleElementTypes=21]="TupleElementTypes",Q[Q.HeritageClauses=22]="HeritageClauses",Q[Q.ImportOrExportSpecifiers=23]="ImportOrExportSpecifiers",Q[Q.ImportAttributes=24]="ImportAttributes",Q[Q.JSDocComment=25]="JSDocComment",Q[Q.Count=26]="Count"})(mx||(mx={}));let A8;(Q=>{Q[Q.False=0]="False",Q[Q.True=1]="True",Q[Q.Unknown=2]="Unknown"})(A8||(A8={}));let Y_;(Q=>{function xe(mi,Yi,ds){Oi("file.js",mi,99,void 0,1,0),t.setText(mi,Yi,ds),vt=t.scan();const Ds=Xe(),es=zt("file.js",99,1,!1,[],O(1),0,$a),Gf=JA(je,es);return at&&(es.jsDocDiagnostics=JA(at,es)),No(),Ds?{jsDocTypeExpression:Ds,diagnostics:Gf}:void 0}Q.parseJSDocTypeExpressionForTests=xe;function Xe(mi){const Yi=L(),ds=(mi?ho:Dn)(19),Ds=Wa(16777216,Om);(!mi||ds)&&vl(20);const es=m.createJSDocTypeExpression(Ds);return tt(es),nn(es,Yi)}Q.parseJSDocTypeExpression=Xe;function xt(){const mi=L(),Yi=ho(19),ds=L();let Ds=te(!1);for(;J()===81;)Ni(),Tt(),Ds=nn(m.createJSDocMemberName(Ds,Ms()),ds);Yi&&vl(20);const es=m.createJSDocNameReference(Ds);return tt(es),nn(es,mi)}Q.parseJSDocNameReference=xt;function Nt(mi,Yi,ds){Oi("",mi,99,void 0,1,0);const Ds=Wa(16777216,()=>Ri(Yi,ds)),Gf=JA(je,{languageVariant:0,text:mi});return No(),Ds?{jsDoc:Ds,diagnostics:Gf}:void 0}Q.parseIsolatedJSDocComment=Nt;function Kt(mi,Yi,ds){const Ds=vt,es=je.length,Gf=Qt,$_=Wa(16777216,()=>Ri(Yi,ds));return qa($_,mi),Xn&524288&&(at||(at=[]),Jr(at,je,es)),vt=Ds,je.length=es,Qt=Gf,$_}Q.parseJSDocComment=Kt;let zr;(mi=>{mi[mi.BeginningOfLine=0]="BeginningOfLine",mi[mi.SawAsterisk=1]="SawAsterisk",mi[mi.SavingComments=2]="SavingComments",mi[mi.SavingBackticks=3]="SavingBackticks"})(zr||(zr={}));let Wi;(mi=>{mi[mi.Property=1]="Property",mi[mi.Parameter=2]="Parameter",mi[mi.CallbackParameter=4]="CallbackParameter"})(Wi||(Wi={}));function Ri(mi=0,Yi){const ds=Pe,Ds=Yi===void 0?ds.length:mi+Yi;if(Yi=Ds-mi,N.assert(mi>=0),N.assert(mi<=Ds),N.assert(Ds<=ds.length),!rq(ds,mi))return;let es,Gf,$_,Ag,uv,dv=[];const Cb=[],cp=rn;rn|=1<<25;const VT=t.scanRange(mi+3,Yi-5,vN);return rn=cp,VT;function vN(){let Cn=1,Vr,kr=mi-(ds.lastIndexOf(`
+`,mi)+1)+4;function Fi(Is){Vr||(Vr=kr),dv.push(Is),kr+=Is.length}for(Tt();my(5););my(4)&&(Cn=0,kr=0);e:for(;;){switch(J()){case 60:F2(dv),uv||(uv=L()),B2(yN(kr)),Cn=0,Vr=void 0;break;case 4:dv.push(t.getTokenText()),Cn=0,kr=0;break;case 42:const Is=t.getTokenText();Cn===1?(Cn=2,Fi(Is)):(N.assert(Cn===0),Cn=1,kr+=Is.length);break;case 5:N.assert(Cn!==2,"whitespace shouldn't come from the scanner while saving top-level comment text");const td=t.getTokenText();Vr!==void 0&&kr+td.length>Vr&&dv.push(td.slice(Vr-kr)),kr+=td.length;break;case 1:break e;case 82:Cn=2,Fi(t.getTokenValue());break;case 19:Cn=2;const zh=t.getTokenFullStart(),Pp=t.getTokenEnd()-1,f_=uc(Pp);if(f_){Ag||W2(dv),Cb.push(nn(m.createJSDocText(dv.join("")),Ag??mi,zh)),Cb.push(f_),dv=[],Ag=t.getTokenEnd();break}default:Cn=2,Fi(t.getTokenText());break}Cn===2?kt(!1):Tt()}const Mi=dv.join("").trimEnd();Cb.length&&Mi.length&&Cb.push(nn(m.createJSDocText(Mi),Ag??mi,uv)),Cb.length&&es&&N.assertIsDefined(uv,"having parsed tags implies that the end of the comment span should be set");const is=es&&ko(es,Gf,$_);return nn(m.createJSDocComment(Cb.length?ko(Cb,mi,uv):Mi.length?Mi:void 0,is),mi,Ds)}function W2(Cn){for(;Cn.length&&(Cn[0]===`
+`||Cn[0]==="\r");)Cn.shift()}function F2(Cn){for(;Cn.length;){const Vr=Cn[Cn.length-1].trimEnd();if(Vr==="")Cn.pop();else if(Vr.length<Cn[Cn.length-1].length){Cn[Cn.length-1]=Vr;break}else break}}function oE(){for(;;){if(Tt(),J()===1)return!0;if(!(J()===5||J()===4))return!1}}function pv(){if(!((J()===5||J()===4)&&Ci(oE)))for(;J()===5||J()===4;)Tt()}function Pb(){if((J()===5||J()===4)&&Ci(oE))return"";let Cn=t.hasPrecedingLineBreak(),Vr=!1,kr="";for(;Cn&&J()===42||J()===5||J()===4;)kr+=t.getTokenText(),J()===4?(Cn=!0,Vr=!0,kr=""):J()===42&&(Cn=!1),Tt();return Vr?kr:""}function yN(Cn){N.assert(J()===60);const Vr=t.getTokenStart();Tt();const kr=cE(void 0),Fi=Pb();let Mi;switch(kr.escapedText){case"author":Mi=qs(Vr,kr,Cn,Fi);break;case"implements":Mi=Lb(Vr,kr,Cn,Fi);break;case"augments":case"extends":Mi=Vm(Vr,kr,Cn,Fi);break;case"class":case"constructor":Mi=lE(Vr,m.createJSDocClassTag,kr,Cn,Fi);break;case"public":Mi=lE(Vr,m.createJSDocPublicTag,kr,Cn,Fi);break;case"private":Mi=lE(Vr,m.createJSDocPrivateTag,kr,Cn,Fi);break;case"protected":Mi=lE(Vr,m.createJSDocProtectedTag,kr,Cn,Fi);break;case"readonly":Mi=lE(Vr,m.createJSDocReadonlyTag,kr,Cn,Fi);break;case"override":Mi=lE(Vr,m.createJSDocOverrideTag,kr,Cn,Fi);break;case"deprecated":Di=!0,Mi=lE(Vr,m.createJSDocDeprecatedTag,kr,Cn,Fi);break;case"this":Mi=d9(Vr,kr,Cn,Fi);break;case"enum":Mi=FZ(Vr,kr,Cn,Fi);break;case"arg":case"argument":case"param":return B(Vr,kr,2,Cn);case"return":case"returns":Mi=Qe(Vr,kr,Cn,Fi);break;case"template":Mi=wb(Vr,kr,Cn,Fi);break;case"type":Mi=Xt(Vr,kr,Cn,Fi);break;case"typedef":Mi=G2(Vr,kr,Cn,Fi);break;case"callback":Mi=hge(Vr,kr,Cn,Fi);break;case"overload":Mi=gge(Vr,kr,Cn,Fi);break;case"satisfies":Mi=sE(Vr,kr,Cn,Fi);break;case"see":Mi=yr(Vr,kr,Cn,Fi);break;case"exception":case"throws":Mi=ro(Vr,kr,Cn,Fi);break;default:Mi=Mb(Vr,kr,Cn,Fi);break}return Mi}function Jp(Cn,Vr,kr,Fi){return Fi||(kr+=Vr-Cn),Ua(kr,Fi.slice(kr))}function Ua(Cn,Vr){const kr=L();let Fi=[];const Mi=[];let is,Is=0,td;function zh(fv){td||(td=Cn),Fi.push(fv),Cn+=fv.length}Vr!==void 0&&(Vr!==""&&zh(Vr),Is=1);let Pp=J();e:for(;;){switch(Pp){case 4:Is=0,Fi.push(t.getTokenText()),Cn=0;break;case 60:t.resetTokenState(t.getTokenEnd()-1);break e;case 1:break e;case 5:N.assert(Is!==2&&Is!==3,"whitespace shouldn't come from the scanner while saving comment text");const fv=t.getTokenText();td!==void 0&&Cn+fv.length>td&&(Fi.push(fv.slice(td-Cn)),Is=2),Cn+=fv.length;break;case 19:Is=2;const Mp=t.getTokenFullStart(),SN=t.getTokenEnd()-1,I8=uc(SN);I8?(Mi.push(nn(m.createJSDocText(Fi.join("")),is??kr,Mp)),Mi.push(I8),Fi=[],is=t.getTokenEnd()):zh(t.getTokenText());break;case 62:Is===3?Is=2:Is=3,zh(t.getTokenText());break;case 82:Is!==3&&(Is=2),zh(t.getTokenValue());break;case 42:if(Is===0){Is=1,Cn+=1;break}default:Is!==3&&(Is=2),zh(t.getTokenText());break}Is===2||Is===3?Pp=kt(Is===3):Pp=Tt()}W2(Fi);const f_=Fi.join("").trimEnd();if(Mi.length)return f_.length&&Mi.push(nn(m.createJSDocText(f_),is??kr)),ko(Mi,kr,t.getTokenEnd());if(f_.length)return f_}function uc(Cn){const Vr=Ii(_x);if(!Vr)return;Tt(),pv();const kr=aE(),Fi=[];for(;J()!==20&&J()!==4&&J()!==1;)Fi.push(t.getTokenText()),Tt();const Mi=Vr==="link"?m.createJSDocLink:Vr==="linkcode"?m.createJSDocLinkCode:m.createJSDocLinkPlain;return nn(Mi(kr,Fi.join("")),Cn,t.getTokenEnd())}function aE(){if(sd(J())){const Cn=L();let Vr=Rc();for(;ho(25);)Vr=nn(m.createQualifiedName(Vr,J()===81?js(80,!1):Ms()),Cn);for(;J()===81;)Ni(),Tt(),Vr=nn(m.createJSDocMemberName(Vr,Ms()),Cn);return Vr}}function _x(){if(Pb(),J()===19&&Tt()===60&&sd(Tt())){const Cn=t.getTokenValue();if(z2(Cn))return Cn}}function z2(Cn){return Cn==="link"||Cn==="linkcode"||Cn==="linkplain"}function Mb(Cn,Vr,kr,Fi){return nn(m.createJSDocUnknownTag(Vr,Jp(Cn,L(),kr,Fi)),Cn)}function B2(Cn){Cn&&(es?es.push(Cn):(es=[Cn],Gf=Cn.pos),$_=Cn.end)}function or(){return Pb(),J()===19?Xe():void 0}function E(){const Cn=my(23);Cn&&pv();const Vr=my(62),kr=EN();return Vr&&La(62),Cn&&(pv(),pa(64)&&Je(),Dn(24)),{name:kr,isBracketed:Cn}}function P(Cn){switch(Cn.kind){case 151:return!0;case 188:return P(Cn.elementType);default:return Cf(Cn)&&Ve(Cn.typeName)&&Cn.typeName.escapedText==="Object"&&!Cn.typeArguments}}function B(Cn,Vr,kr,Fi){let Mi=or(),is=!Mi;Pb();const{name:Is,isBracketed:td}=E(),zh=Pb();is&&!Ci(_x)&&(Mi=or());const Pp=Jp(Cn,L(),Fi,zh),f_=ce(Mi,Is,kr,Fi);f_&&(Mi=f_,is=!0);const fv=kr===1?m.createJSDocPropertyTag(Vr,Is,td,Mi,is,Pp):m.createJSDocParameterTag(Vr,Is,td,Mi,is,Pp);return nn(fv,Cn)}function ce(Cn,Vr,kr,Fi){if(Cn&&P(Cn.type)){const Mi=L();let is,Is;for(;is=Ii(()=>f9(kr,Fi,Vr));)is.kind===348||is.kind===355?Is=xn(Is,is):is.kind===352&&Oe(is.tagName,f.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);if(Is){const td=nn(m.createJSDocTypeLiteral(Is,Cn.type.kind===188),Mi);return nn(m.createJSDocTypeExpression(td),Mi)}}}function Qe(Cn,Vr,kr,Fi){bt(es,uF)&&q(Vr.pos,t.getTokenStart(),f._0_tag_already_specified,Vi(Vr.escapedText));const Mi=or();return nn(m.createJSDocReturnTag(Vr,Mi,Jp(Cn,L(),kr,Fi)),Cn)}function Xt(Cn,Vr,kr,Fi){bt(es,xP)&&q(Vr.pos,t.getTokenStart(),f._0_tag_already_specified,Vi(Vr.escapedText));const Mi=Xe(!0),is=kr!==void 0&&Fi!==void 0?Jp(Cn,L(),kr,Fi):void 0;return nn(m.createJSDocTypeTag(Vr,Mi,is),Cn)}function yr(Cn,Vr,kr,Fi){const is=J()===23||Ci(()=>Tt()===60&&sd(Tt())&&z2(t.getTokenValue()))?void 0:xt(),Is=kr!==void 0&&Fi!==void 0?Jp(Cn,L(),kr,Fi):void 0;return nn(m.createJSDocSeeTag(Vr,is,Is),Cn)}function ro(Cn,Vr,kr,Fi){const Mi=or(),is=Jp(Cn,L(),kr,Fi);return nn(m.createJSDocThrowsTag(Vr,Mi,is),Cn)}function qs(Cn,Vr,kr,Fi){const Mi=L(),is=p_();let Is=t.getTokenFullStart();const td=Jp(Cn,Is,kr,Fi);td||(Is=t.getTokenFullStart());const zh=typeof td!="string"?ko(So([nn(is,Mi,Is)],td),Mi):is.text+td;return nn(m.createJSDocAuthorTag(Vr,zh),Cn)}function p_(){const Cn=[];let Vr=!1,kr=t.getToken();for(;kr!==1&&kr!==4;){if(kr===30)Vr=!0;else{if(kr===60&&!Vr)break;if(kr===32&&Vr){Cn.push(t.getTokenText()),t.resetTokenState(t.getTokenEnd());break}}Cn.push(t.getTokenText()),kr=Tt()}return m.createJSDocText(Cn.join(""))}function Lb(Cn,Vr,kr,Fi){const Mi=WZ();return nn(m.createJSDocImplementsTag(Vr,Mi,Jp(Cn,L(),kr,Fi)),Cn)}function Vm(Cn,Vr,kr,Fi){const Mi=WZ();return nn(m.createJSDocAugmentsTag(Vr,Mi,Jp(Cn,L(),kr,Fi)),Cn)}function sE(Cn,Vr,kr,Fi){const Mi=Xe(!1),is=kr!==void 0&&Fi!==void 0?Jp(Cn,L(),kr,Fi):void 0;return nn(m.createJSDocSatisfiesTag(Vr,Mi,is),Cn)}function WZ(){const Cn=ho(19),Vr=L(),kr=_ge();t.setInJSDocType(!0);const Fi=rE();t.setInJSDocType(!1);const Mi=m.createExpressionWithTypeArguments(kr,Fi),is=nn(Mi,Vr);return Cn&&Dn(20),is}function _ge(){const Cn=L();let Vr=cE();for(;ho(25);){const kr=cE();Vr=nn(Z(Vr,kr),Cn)}return Vr}function lE(Cn,Vr,kr,Fi,Mi){return nn(Vr(kr,Jp(Cn,L(),Fi,Mi)),Cn)}function d9(Cn,Vr,kr,Fi){const Mi=Xe(!0);return pv(),nn(m.createJSDocThisTag(Vr,Mi,Jp(Cn,L(),kr,Fi)),Cn)}function FZ(Cn,Vr,kr,Fi){const Mi=Xe(!0);return pv(),nn(m.createJSDocEnumTag(Vr,Mi,Jp(Cn,L(),kr,Fi)),Cn)}function G2(Cn,Vr,kr,Fi){let Mi=or();Pb();const is=p9();pv();let Is=Ua(kr),td;if(!Mi||P(Mi.type)){let Pp,f_,fv,Mp=!1;for(;(Pp=Ii(()=>GZ(kr)))&&Pp.kind!==352;)if(Mp=!0,Pp.kind===351)if(f_){const SN=fn(f.A_JSDoc_typedef_comment_may_not_contain_multiple_type_tags);SN&&wa(SN,OR(Ee,Pe,0,0,f.The_tag_was_first_specified_here));break}else f_=Pp;else fv=xn(fv,Pp);if(Mp){const SN=Mi&&Mi.type.kind===188,I8=m.createJSDocTypeLiteral(fv,SN);Mi=f_&&f_.typeExpression&&!P(f_.typeExpression.type)?f_.typeExpression:nn(I8,Cn),td=Mi.end}}td=td||Is!==void 0?L():(is??Mi??Vr).end,Is||(Is=Jp(Cn,td,kr,Fi));const zh=m.createJSDocTypedefTag(Vr,Mi,is,Is);return nn(zh,Cn,td)}function p9(Cn){const Vr=t.getTokenStart();if(!sd(J()))return;const kr=cE();if(ho(25)){const Fi=p9(!0),Mi=m.createModuleDeclaration(void 0,kr,Fi,Cn?8:void 0);return nn(Mi,Vr)}return Cn&&(kr.flags|=4096),kr}function zZ(Cn){const Vr=L();let kr,Fi;for(;kr=Ii(()=>f9(4,Cn));){if(kr.kind===352){Oe(kr.tagName,f.A_JSDoc_template_tag_may_not_follow_a_typedef_callback_or_overload_tag);break}Fi=xn(Fi,kr)}return ko(Fi||[],Vr)}function BZ(Cn,Vr){const kr=zZ(Vr),Fi=Ii(()=>{if(my(60)){const Mi=yN(Vr);if(Mi&&Mi.kind===349)return Mi}});return nn(m.createJSDocSignature(void 0,kr,Fi),Cn)}function hge(Cn,Vr,kr,Fi){const Mi=p9();pv();let is=Ua(kr);const Is=BZ(Cn,kr);is||(is=Jp(Cn,L(),kr,Fi));const td=is!==void 0?L():Is.end;return nn(m.createJSDocCallbackTag(Vr,Is,Mi,is),Cn,td)}function gge(Cn,Vr,kr,Fi){pv();let Mi=Ua(kr);const is=BZ(Cn,kr);Mi||(Mi=Jp(Cn,L(),kr,Fi));const Is=Mi!==void 0?L():is.end;return nn(m.createJSDocOverloadTag(Vr,is,Mi),Cn,Is)}function bN(Cn,Vr){for(;!Ve(Cn)||!Ve(Vr);)if(!Ve(Cn)&&!Ve(Vr)&&Cn.right.escapedText===Vr.right.escapedText)Cn=Cn.left,Vr=Vr.left;else return!1;return Cn.escapedText===Vr.escapedText}function GZ(Cn){return f9(1,Cn)}function f9(Cn,Vr,kr){let Fi=!0,Mi=!1;for(;;)switch(Tt()){case 60:if(Fi){const is=U1(Cn,Vr);return is&&(is.kind===348||is.kind===355)&&kr&&(Ve(is.name)||!bN(kr,is.name.left))?!1:is}Mi=!1;break;case 4:Fi=!0,Mi=!1;break;case 42:Mi&&(Fi=!1),Mi=!0;break;case 80:Fi=!1;break;case 1:return!1}}function U1(Cn,Vr){N.assert(J()===60);const kr=t.getTokenFullStart();Tt();const Fi=cE(),Mi=Pb();let is;switch(Fi.escapedText){case"type":return Cn===1&&Xt(kr,Fi);case"prop":case"property":is=1;break;case"arg":case"argument":case"param":is=6;break;case"template":return wb(kr,Fi,Vr,Mi);case"this":return d9(kr,Fi,Vr,Mi);default:return!1}return Cn&is?B(kr,Fi,Cn,Vr):!1}function dr(){const Cn=L(),Vr=my(23);Vr&&pv();const kr=wh(!1,!0),Fi=cE(f.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces);let Mi;if(Vr&&(pv(),Dn(64),Mi=Wa(16777216,Om),Dn(24)),!zl(Fi))return nn(m.createTypeParameterDeclaration(kr,Fi,void 0,Mi),Cn)}function kb(){const Cn=L(),Vr=[];do{pv();const kr=dr();kr!==void 0&&Vr.push(kr),Pb()}while(my(28));return ko(Vr,Cn)}function wb(Cn,Vr,kr,Fi){const Mi=J()===19?Xe():void 0,is=kb();return nn(m.createJSDocTemplateTag(Vr,Mi,is,Jp(Cn,L(),kr,Fi)),Cn)}function my(Cn){return J()===Cn?(Tt(),!0):!1}function EN(){let Cn=cE();for(ho(23)&&Dn(24);ho(25);){const Vr=cE();ho(23)&&Dn(24),Cn=ct(Cn,Vr)}return Cn}function cE(Cn){if(!sd(J()))return js(80,!Cn,Cn||f.Identifier_expected);tn++;const Vr=t.getTokenStart(),kr=t.getTokenEnd(),Fi=J(),Mi=nu(t.getTokenValue()),is=nn(M(Mi,Fi),Vr,kr);return Tt(),is}}})(Y_=e.JSDocParser||(e.JSDocParser={}))})(P0||(P0={})),(e=>{function t(I,R,M,C){if(C=C||N.shouldAssert(2),m(I,R,M,C),gre(M))return I;if(I.statements.length===0)return P0.parseSourceFile(I.fileName,R,I.languageVersion,void 0,!0,I.scriptKind,I.setExternalModuleIndicator,I.jsDocParsingMode);const O=I;N.assert(!O.hasBeenIncrementallyParsed),O.hasBeenIncrementallyParsed=!0,P0.fixupParentReferences(O);const U=I.text,K=b(I),Z=p(I,M);m(I,R,Z,C),N.assert(Z.span.start<=M.span.start),N.assert(Kl(Z.span)===Kl(M.span)),N.assert(Kl(lC(Z))===Kl(lC(M)));const V=lC(Z).length-Z.span.length;u(O,Z.span.start,Kl(Z.span),Kl(lC(Z)),V,U,R,C);const se=P0.parseSourceFile(I.fileName,R,I.languageVersion,K,!0,I.scriptKind,I.setExternalModuleIndicator,I.jsDocParsingMode);return se.commentDirectives=r(I.commentDirectives,se.commentDirectives,Z.span.start,Kl(Z.span),V,U,R,C),se.impliedNodeFormat=I.impliedNodeFormat,se}e.updateSourceFile=t;function r(I,R,M,C,O,U,K,Z){if(!I)return R;let V,se=!1;for(const ne of I){const{range:he,type:ye}=ne;if(he.end<M)V=xn(V,ne);else if(he.pos>C){G();const $={range:{pos:he.pos+O,end:he.end+O},type:ye};V=xn(V,$),Z&&N.assert(U.substring(he.pos,he.end)===K.substring($.range.pos,$.range.end))}}return G(),V;function G(){se||(se=!0,V?R&&V.push(...R):V=R)}}function i(I,R,M,C,O,U){R?Z(I):K(I);return;function K(V){let se="";if(U&&o(V)&&(se=C.substring(V.pos,V.end)),V._children&&(V._children=void 0),vh(V,V.pos+M,V.end+M),U&&o(V)&&N.assert(se===O.substring(V.pos,V.end)),Ho(V,K,Z),Fp(V))for(const G of V.jsDoc)K(G);l(V,U)}function Z(V){V._children=void 0,vh(V,V.pos+M,V.end+M);for(const se of V)K(se)}}function o(I){switch(I.kind){case 11:case 9:case 80:return!0}return!1}function s(I,R,M,C,O){N.assert(I.end>=R,"Adjusting an element that was entirely before the change range"),N.assert(I.pos<=M,"Adjusting an element that was entirely after the change range"),N.assert(I.pos<=I.end);const U=Math.min(I.pos,C),K=I.end>=M?I.end+O:Math.min(I.end,C);N.assert(U<=K),I.parent&&(N.assertGreaterThanOrEqual(U,I.parent.pos),N.assertLessThanOrEqual(K,I.parent.end)),vh(I,U,K)}function l(I,R){if(R){let M=I.pos;const C=O=>{N.assert(O.pos>=M),M=O.end};if(Fp(I))for(const O of I.jsDoc)C(O);Ho(I,C),N.assert(M<=I.end)}}function u(I,R,M,C,O,U,K,Z){V(I);return;function V(G){if(N.assert(G.pos<=G.end),G.pos>M){i(G,!1,O,U,K,Z);return}const ne=G.end;if(ne>=R){if(G.intersectsChange=!0,G._children=void 0,s(G,R,M,C,O),Ho(G,V,se),Fp(G))for(const he of G.jsDoc)V(he);l(G,Z);return}N.assert(ne<R)}function se(G){if(N.assert(G.pos<=G.end),G.pos>M){i(G,!0,O,U,K,Z);return}const ne=G.end;if(ne>=R){G.intersectsChange=!0,G._children=void 0,s(G,R,M,C,O);for(const he of G)V(he);return}N.assert(ne<R)}}function p(I,R){let C=R.span.start;for(let K=0;C>0&&K<=1;K++){const Z=h(I,C);N.assert(Z.pos<=C);const V=Z.pos;C=Math.max(0,V-1)}const O=pc(C,Kl(R.span)),U=R.newLength+(R.span.start-C);return cL(O,U)}function h(I,R){let M=I,C;if(Ho(I,U),C){const K=O(C);K.pos>M.pos&&(M=K)}return M;function O(K){for(;;){const Z=NU(K);if(Z)K=Z;else return K}}function U(K){if(!zl(K))if(K.pos<=R){if(K.pos>=M.pos&&(M=K),R<K.end)return Ho(K,U),!0;N.assert(K.end<=R),C=K}else return N.assert(K.pos>R),!0}}function m(I,R,M,C){const O=I.text;if(M&&(N.assert(O.length-M.span.length+M.newLength===R.length),C||N.shouldAssert(3))){const U=O.substr(0,M.span.start),K=R.substr(0,M.span.start);N.assert(U===K);const Z=O.substring(Kl(M.span),O.length),V=R.substring(Kl(lC(M)),R.length);N.assert(Z===V)}}function b(I){let R=I.statements,M=0;N.assert(M<R.length);let C=R[M],O=-1;return{currentNode(K){return K!==O&&(C&&C.end===K&&M<R.length-1&&(M++,C=R[M]),(!C||C.pos!==K)&&U(K)),O=K,N.assert(!C||C.pos===K),C}};function U(K){R=void 0,M=-1,C=void 0,Ho(I,Z,V);return;function Z(se){return K>=se.pos&&K<se.end?(Ho(se,Z,V),!0):!1}function V(se){if(K>=se.pos&&K<se.end)for(let G=0;G<se.length;G++){const ne=se[G];if(ne){if(ne.pos===K)return R=se,M=G,C=ne,!0;if(ne.pos<K&&K<ne.end)return Ho(ne,Z,V),!0}}return!1}}}e.createSyntaxCursor=b;let A;(I=>{I[I.Value=-1]="Value"})(A||(A={}))})(cq||(cq={})),uq=new Map,qAe=/^\/\/\/\s*<(\S+)\s.*?\/>/im,JAe=/^\/\/\/?\s*@([^\s:]+)(.*)\s*$/im}});function SF(e){const t=new Map,r=new Map;return Ue(e,i=>{t.set(i.name.toLowerCase(),i),i.shortName&&r.set(i.shortName,i.name)}),{optionsNameMap:t,shortOptionNames:r}}function aD(){return PIe||(PIe=SF(pg))}function Ase(e){return KAe(e,Hl)}function KAe(e,t){const r=zo(e.type.keys()),i=(e.deprecatedKeys?r.filter(o=>!e.deprecatedKeys.has(o)):r).map(o=>`'${o}'`).join(", ");return t(f.Argument_for_0_option_must_be_Colon_1,`--${e.name}`,i)}function TF(e,t,r){return xIe(e,(t??"").trim(),r)}function Ise(e,t="",r){if(t=t.trim(),uo(t,"-"))return;if(e.type==="listOrElement"&&!t.includes(","))return EI(e,t,r);if(t==="")return[];const i=t.split(",");switch(e.element.type){case"number":return Hi(i,o=>EI(e.element,parseInt(o),r));case"string":return Hi(i,o=>EI(e.element,o||"",r));case"boolean":case"object":return N.fail(`List of ${e.element.type} is not yet supported.`);default:return Hi(i,o=>TF(e.element,o,r))}}function XAe(e){return e.name}function xse(e,t,r,i,o){var s;if((s=t.alternateMode)!=null&&s.getOptionsNameMap().optionsNameMap.has(e.toLowerCase()))return M0(o,i,t.alternateMode.diagnostic,e);const l=$N(e,t.optionDeclarations,XAe);return l?M0(o,i,t.unknownDidYouMeanDiagnostic,r||e,l.name):M0(o,i,t.unknownOptionDiagnostic,r||e)}function dq(e,t,r){const i={};let o;const s=[],l=[];return u(t),{options:i,watchOptions:o,fileNames:s,errors:l};function u(h){let m=0;for(;m<h.length;){const b=h[m];if(m++,b.charCodeAt(0)===64)p(b.slice(1));else if(b.charCodeAt(0)===45){const A=b.slice(b.charCodeAt(1)===45?2:1),I=Rse(e.getOptionsNameMap,A,!0);if(I)m=YAe(h,m,e,I,i,l);else{const R=Rse(LF.getOptionsNameMap,A,!0);R?m=YAe(h,m,LF,R,o||(o={}),l):l.push(xse(A,e,b))}}else s.push(b)}}function p(h){const m=PP(h,r||(I=>gu.readFile(I)));if(!Po(m)){l.push(m);return}const b=[];let A=0;for(;;){for(;A<m.length&&m.charCodeAt(A)<=32;)A++;if(A>=m.length)break;const I=A;if(m.charCodeAt(I)===34){for(A++;A<m.length&&m.charCodeAt(A)!==34;)A++;A<m.length?(b.push(m.substring(I+1,A)),A++):l.push(Hl(f.Unterminated_quoted_string_in_response_file_0,h))}else{for(;m.charCodeAt(A)>32;)A++;b.push(m.substring(I,A))}}u(b)}}function YAe(e,t,r,i,o,s){if(i.isTSConfigOnly){const l=e[t];l==="null"?(o[i.name]=void 0,t++):i.type==="boolean"?l==="false"?(o[i.name]=EI(i,!1,s),t++):(l==="true"&&t++,s.push(Hl(f.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_false_or_null_on_command_line,i.name))):(s.push(Hl(f.Option_0_can_only_be_specified_in_tsconfig_json_file_or_set_to_null_on_command_line,i.name)),l&&!uo(l,"-")&&t++)}else if(!e[t]&&i.type!=="boolean"&&s.push(Hl(r.optionTypeMismatchDiagnostic,i.name,_q(i))),e[t]!=="null")switch(i.type){case"number":o[i.name]=EI(i,parseInt(e[t]),s),t++;break;case"boolean":const l=e[t];o[i.name]=EI(i,l!=="false",s),(l==="false"||l==="true")&&t++;break;case"string":o[i.name]=EI(i,e[t]||"",s),t++;break;case"list":const u=Ise(i,e[t],s);o[i.name]=u||[],u&&t++;break;case"listOrElement":N.fail("listOrElement not supported here");break;default:o[i.name]=TF(i,e[t],s),t++;break}else o[i.name]=void 0,t++;return t}function $Ae(e,t){return dq(Tw,e,t)}function pq(e,t){return Rse(aD,e,t)}function Rse(e,t,r=!1){t=t.toLowerCase();const{optionsNameMap:i,shortOptionNames:o}=e();if(r){const s=o.get(t);s!==void 0&&(t=s)}return i.get(t)}function QAe(){return LIe||(LIe=SF(PF))}function ZAe(e){const{options:t,watchOptions:r,fileNames:i,errors:o}=dq(wIe,e),s=t;return i.length===0&&i.push("."),s.clean&&s.force&&o.push(Hl(f.Options_0_and_1_cannot_be_combined,"clean","force")),s.clean&&s.verbose&&o.push(Hl(f.Options_0_and_1_cannot_be_combined,"clean","verbose")),s.clean&&s.watch&&o.push(Hl(f.Options_0_and_1_cannot_be_combined,"clean","watch")),s.watch&&s.dry&&o.push(Hl(f.Options_0_and_1_cannot_be_combined,"watch","dry")),{buildOptions:s,watchOptions:r,projects:i,errors:o}}function eIe(e,...t){return aa(Hl(e,...t).messageText,Po)}function fw(e,t,r,i,o,s){const l=PP(e,h=>r.readFile(h));if(!Po(l)){r.onUnRecoverableConfigFileDiagnostic(l);return}const u=pw(e,l),p=r.getCurrentDirectory();return u.path=ol(e,p,Mu(r.useCaseSensitiveFileNames)),u.resolvedPath=u.path,u.originalFileName=u.fileName,hw(u,r,go(ai(e),p),t,go(e,p),void 0,s,i,o)}function mw(e,t){const r=PP(e,t);return Po(r)?fq(e,r):{config:{},error:r}}function fq(e,t){const r=pw(e,t);return{config:oIe(r,r.parseDiagnostics,void 0),error:r.parseDiagnostics.length?r.parseDiagnostics[0]:void 0}}function Dse(e,t){const r=PP(e,t);return Po(r)?pw(e,r):{fileName:e,parseDiagnostics:[r]}}function PP(e,t){let r;try{r=t(e)}catch(i){return Hl(f.Cannot_read_file_0_Colon_1,e,i.message)}return r===void 0?Hl(f.Cannot_read_file_0,e):r}function mq(e){return NE(e,XAe)}function tIe(){return OIe||(OIe=SF(sD))}function nIe(){return WIe||(WIe=mq(pg))}function rIe(){return FIe||(FIe=mq(sD))}function iIe(){return zIe||(zIe=mq(Sw))}function DVe(){return jse===void 0&&(jse={name:void 0,type:"object",elementOptions:mq([Bse,Gse,Vse,Aw,{name:"references",type:"list",element:{name:"references",type:"object"},category:f.Projects},{name:"files",type:"list",element:{name:"files",type:"string"},category:f.File_Management},{name:"include",type:"list",element:{name:"include",type:"string"},category:f.File_Management,defaultValueDescription:f.if_files_is_specified_otherwise_Asterisk_Asterisk_Slash_Asterisk},{name:"exclude",type:"list",element:{name:"exclude",type:"string"},category:f.File_Management,defaultValueDescription:f.node_modules_bower_components_jspm_packages_plus_the_value_of_outDir_if_one_is_specified},vw])}),jse}function oIe(e,t,r){var i;const o=(i=e.statements[0])==null?void 0:i.expression;if(o&&o.kind!==210){if(t.push($f(e,o,f.The_root_value_of_a_0_file_must_be_an_object,ic(e.fileName)==="jsconfig.json"?"jsconfig.json":"tsconfig.json")),_d(o)){const s=An(o.elements,Oa);if(s)return _w(e,s,t,!0,r)}return{}}return _w(e,o,t,!0,r)}function Nse(e,t){var r;return _w(e,(r=e.statements[0])==null?void 0:r.expression,t,!0,void 0)}function _w(e,t,r,i,o){if(!t)return i?{}:void 0;return u(t,o==null?void 0:o.rootOptions);function s(h,m){var b;const A=i?{}:void 0;for(const I of h.properties){if(I.kind!==303){r.push($f(e,I,f.Property_assignment_expected));continue}I.questionToken&&r.push($f(e,I.questionToken,f.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),p(I.name)||r.push($f(e,I.name,f.String_literal_with_double_quotes_expected));const R=PL(I.name)?void 0:lR(I.name),M=R&&Vi(R),C=M?(b=m==null?void 0:m.elementOptions)==null?void 0:b.get(M):void 0,O=u(I.initializer,C);typeof M<"u"&&(i&&(A[M]=O),o==null||o.onPropertySet(M,O,I,m,C))}return A}function l(h,m){if(!i){h.forEach(b=>u(b,m));return}return nr(h.map(b=>u(b,m)),b=>b!==void 0)}function u(h,m){switch(h.kind){case 112:return!0;case 97:return!1;case 106:return null;case 11:return p(h)||r.push($f(e,h,f.String_literal_with_double_quotes_expected)),h.text;case 9:return Number(h.text);case 224:if(h.operator!==41||h.operand.kind!==9)break;return-Number(h.operand.text);case 210:return s(h,m);case 209:return l(h.elements,m&&m.element)}m?r.push($f(e,h,f.Compiler_option_0_requires_a_value_of_type_1,m.name,_q(m))):r.push($f(e,h,f.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}function p(h){return Ma(h)&&p3(h,e)}}function _q(e){return e.type==="listOrElement"?`${_q(e.element)} or Array`:e.type==="list"?"Array":Po(e.type)?e.type:"string"}function aIe(e,t){if(e){if(gw(t))return!e.disallowNullOrUndefined;if(e.type==="list")return To(t);if(e.type==="listOrElement")return To(t)||aIe(e.element,t);const r=Po(e.type)?e.type:"string";return typeof t===r}return!1}function sIe(e,t,r){var i,o,s;const l=Mu(r.useCaseSensitiveFileNames),u=wt(nr(e.fileNames,(o=(i=e.options.configFile)==null?void 0:i.configFileSpecs)!=null&&o.validatedIncludeSpecs?CVe(t,e.options.configFile.configFileSpecs.validatedIncludeSpecs,e.options.configFile.configFileSpecs.validatedExcludeSpecs,r):Pv),R=>QM(go(t,r.getCurrentDirectory()),go(R,r.getCurrentDirectory()),l)),p={configFilePath:go(t,r.getCurrentDirectory()),useCaseSensitiveFileNames:r.useCaseSensitiveFileNames},h=IF(e.options,p),m=e.watchOptions&&PVe(e.watchOptions),b={compilerOptions:{...AF(h),showConfig:void 0,configFile:void 0,configFilePath:void 0,help:void 0,init:void 0,listFiles:void 0,listEmittedFiles:void 0,project:void 0,build:void 0,version:void 0},watchOptions:m&&AF(m),references:wt(e.projectReferences,R=>({...R,path:R.originalPath?R.originalPath:"",originalPath:void 0})),files:Me(u)?u:void 0,...(s=e.options.configFile)!=null&&s.configFileSpecs?{include:NVe(e.options.configFile.configFileSpecs.validatedIncludeSpecs),exclude:e.options.configFile.configFileSpecs.validatedExcludeSpecs}:{},compileOnSave:e.compileOnSave?!0:void 0},A=new Set(h.keys()),I={};for(const R in _c)if(!A.has(R)&&bt(_c[R].dependencies,M=>A.has(M))){const M=_c[R].computeValue(e.options),C=_c[R].computeValue({});M!==C&&(I[R]=_c[R].computeValue(e.options))}return Fx(b.compilerOptions,AF(IF(I,p))),b}function AF(e){return{...zo(e.entries()).reduce((t,r)=>({...t,[r[0]]:r[1]}),{})}}function NVe(e){if(Me(e)){if(Me(e)!==1)return e;if(e[0]!==kF)return e}}function CVe(e,t,r,i){if(!t)return Pv;const o=$3(e,r,t,i.useCaseSensitiveFileNames,i.getCurrentDirectory()),s=o.excludePattern&&qy(o.excludePattern,i.useCaseSensitiveFileNames),l=o.includeFilePattern&&qy(o.includeFilePattern,i.useCaseSensitiveFileNames);return l?s?u=>!(l.test(u)&&!s.test(u)):u=>!l.test(u):s?u=>s.test(u):Pv}function lIe(e){switch(e.type){case"string":case"number":case"boolean":case"object":return;case"list":case"listOrElement":return lIe(e.element);default:return e.type}}function hq(e,t){return Gc(t,(r,i)=>{if(r===e)return i})}function IF(e,t){return cIe(e,aD(),t)}function PVe(e){return cIe(e,tIe())}function cIe(e,{optionsNameMap:t},r){const i=new Map,o=r&&Mu(r.useCaseSensitiveFileNames);for(const s in e)if(xs(e,s)){if(t.has(s)&&(t.get(s).category===f.Command_line_Options||t.get(s).category===f.Output_Formatting))continue;const l=e[s],u=t.get(s.toLowerCase());if(u){N.assert(u.type!=="listOrElement");const p=lIe(u);p?u.type==="list"?i.set(s,l.map(h=>hq(h,p))):i.set(s,hq(l,p)):r&&u.isFilePath?i.set(s,QM(r.configFilePath,go(l,ai(r.configFilePath)),o)):i.set(s,l)}}return i}function uIe(e,t){const r=dIe(e);return o();function i(s){return Array(s+1).join(" ")}function o(){const s=[],l=i(2);return Eq.forEach(u=>{if(!r.has(u.name))return;const p=r.get(u.name),h=Ose(u);p!==h?s.push(`${l}${u.name}: ${p}`):xs(MF,u.name)&&s.push(`${l}${u.name}: ${h}`)}),s.join(t)+t}}function dIe(e){const t=O6(e,MF);return IF(t)}function pIe(e,t,r){const i=dIe(e);return l();function o(u){return Array(u+1).join(" ")}function s({category:u,name:p,isCommandLineOnly:h}){const m=[f.Command_line_Options,f.Editor_Support,f.Compiler_Diagnostics,f.Backwards_Compatibility,f.Watch_and_Build_Modes,f.Output_Formatting];return!h&&u!==void 0&&(!m.includes(u)||i.has(p))}function l(){const u=new Map;u.set(f.Projects,[]),u.set(f.Language_and_Environment,[]),u.set(f.Modules,[]),u.set(f.JavaScript_Support,[]),u.set(f.Emit,[]),u.set(f.Interop_Constraints,[]),u.set(f.Type_Checking,[]),u.set(f.Completeness,[]);for(const I of pg)if(s(I)){let R=u.get(I.category);R||u.set(I.category,R=[]),R.push(I)}let p=0,h=0;const m=[];u.forEach((I,R)=>{m.length!==0&&m.push({value:""}),m.push({value:`/* ${Wo(R)} */`});for(const M of I){let C;i.has(M.name)?C=`"${M.name}": ${JSON.stringify(i.get(M.name))}${(h+=1)===i.size?"":","}`:C=`// "${M.name}": ${JSON.stringify(Ose(M))},`,m.push({value:C,description:`/* ${M.description&&Wo(M.description)||M.name} */`}),p=Math.max(C.length,p)}});const b=o(2),A=[];A.push("{"),A.push(`${b}"compilerOptions": {`),A.push(`${b}${b}/* ${Wo(f.Visit_https_Colon_Slash_Slashaka_ms_Slashtsconfig_to_read_more_about_this_file)} */`),A.push("");for(const I of m){const{value:R,description:M=""}=I;A.push(R&&`${b}${b}${R}${M&&o(p-R.length+2)+M}`)}if(t.length){A.push(`${b}},`),A.push(`${b}"files": [`);for(let I=0;I<t.length;I++)A.push(`${b}${b}${JSON.stringify(t[I])}${I===t.length-1?"":","}`);A.push(`${b}]`)}else A.push(`${b}}`);return A.push("}"),A.join(r)+r}}function gq(e,t){const r={},i=aD().optionsNameMap;for(const o in e)xs(e,o)&&(r[o]=MVe(i.get(o.toLowerCase()),e[o],t));return r.configFilePath&&(r.configFilePath=t(r.configFilePath)),r}function MVe(e,t,r){if(e&&!gw(t)){if(e.type==="list"){const i=t;if(e.element.isFilePath&&i.length)return i.map(r)}else if(e.isFilePath)return r(t);N.assert(e.type!=="listOrElement")}return t}function fIe(e,t,r,i,o,s,l,u,p){return _Ie(e,void 0,t,r,i,p,o,s,l,u)}function hw(e,t,r,i,o,s,l,u,p){var h,m;(h=sr)==null||h.push(sr.Phase.Parse,"parseJsonSourceFileConfigFileContent",{path:e.fileName});const b=_Ie(void 0,e,t,r,i,p,o,s,l,u);return(m=sr)==null||m.pop(),b}function vq(e,t){t&&Object.defineProperty(e,"configFile",{enumerable:!1,writable:!1,value:t})}function gw(e){return e==null}function mIe(e,t){return ai(go(e,t))}function _Ie(e,t,r,i,o={},s,l,u=[],p=[],h){N.assert(e===void 0&&t!==void 0||e!==void 0&&t===void 0);const m=[],b=vIe(e,t,r,i,l,u,m,h),{raw:A}=b,I=O6(o,b.options||{}),R=s&&b.watchOptions?O6(s,b.watchOptions):b.watchOptions||s;I.configFilePath=l&&Lu(l);const M=O();t&&(t.configFileSpecs=M),vq(I,t);const C=ga(l?mIe(l,i):i);return{options:I,watchOptions:R,fileNames:U(C),projectReferences:K(C),typeAcquisition:b.typeAcquisition||yq(),raw:A,errors:m,wildcardDirectories:GVe(M,C,r.useCaseSensitiveFileNames),compileOnSave:!!A.compileOnSave};function O(){const ne=se("references",pe=>typeof pe=="object","object"),he=Z(V("files"));if(he){const pe=ne==="no-prop"||To(ne)&&ne.length===0,ie=xs(A,"extends");if(he.length===0&&pe&&!ie)if(t){const ve=l||"tsconfig.json",Le=f.The_files_list_in_config_file_0_is_empty,He=OL(t,"files",De=>De.initializer),Ee=M0(t,He,Le,ve);m.push(Ee)}else G(f.The_files_list_in_config_file_0_is_empty,l||"tsconfig.json")}let ye=Z(V("include"));const $=V("exclude");let Y=!1,oe=Z($);if($==="no-prop"&&A.compilerOptions){const pe=A.compilerOptions.outDir,ie=A.compilerOptions.declarationDir;(pe||ie)&&(oe=[pe,ie].filter(ve=>!!ve))}he===void 0&&ye===void 0&&(ye=[kF],Y=!0);let fe,Ne;return ye&&(fe=CIe(ye,m,!0,t,"include")),oe&&(Ne=CIe(oe,m,!1,t,"exclude")),{filesSpecs:he,includeSpecs:ye,excludeSpecs:oe,validatedFilesSpec:nr(he,Po),validatedIncludeSpecs:fe,validatedExcludeSpecs:Ne,pathPatterns:void 0,isDefaultIncludeSpec:Y}}function U(ne){const he=LP(M,ne,I,r,p);return gIe(he,MP(A),u)&&m.push(hIe(M,l)),he}function K(ne){let he;const ye=se("references",$=>typeof $=="object","object");if(To(ye))for(const $ of ye)typeof $.path!="string"?G(f.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string"):(he||(he=[])).push({path:go($.path,ne),originalPath:$.path,prepend:$.prepend,circular:$.circular});return he}function Z(ne){return To(ne)?ne:void 0}function V(ne){return se(ne,Po,"string")}function se(ne,he,ye){if(xs(A,ne)&&!gw(A[ne]))if(To(A[ne])){const $=A[ne];return!t&&!Zn($,he)&&m.push(Hl(f.Compiler_option_0_requires_a_value_of_type_1,ne,ye)),$}else return G(f.Compiler_option_0_requires_a_value_of_type_1,ne,"Array"),"not-array";return"no-prop"}function G(ne,...he){t||m.push(Hl(ne,...he))}}function LVe(e){return e.code===f.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function hIe({includeSpecs:e,excludeSpecs:t},r){return Hl(f.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,r||"tsconfig.json",JSON.stringify(e||[]),JSON.stringify(t||[]))}function gIe(e,t,r){return e.length===0&&t&&(!r||r.length===0)}function MP(e){return!xs(e,"files")&&!xs(e,"references")}function xF(e,t,r,i,o){const s=i.length;return gIe(e,o)?i.push(hIe(r,t)):Xs(i,l=>!LVe(l)),s!==i.length}function kVe(e){return!!e.options}function vIe(e,t,r,i,o,s,l,u){var p;i=Lu(i);const h=go(o||"",i);if(s.includes(h))return l.push(Hl(f.Circularity_detected_while_resolving_configuration_Colon_0,[...s,h].join(" -> "))),{raw:e||Nse(t,l)};const m=e?wVe(e,r,i,o,l):OVe(t,r,i,o,l);if((p=m.options)!=null&&p.paths&&(m.options.pathsBasePath=i),m.extendedConfigPath){s=s.concat([h]);const A={options:{}};Po(m.extendedConfigPath)?b(A,m.extendedConfigPath):m.extendedConfigPath.forEach(I=>b(A,I)),!m.raw.include&&A.include&&(m.raw.include=A.include),!m.raw.exclude&&A.exclude&&(m.raw.exclude=A.exclude),!m.raw.files&&A.files&&(m.raw.files=A.files),m.raw.compileOnSave===void 0&&A.compileOnSave&&(m.raw.compileOnSave=A.compileOnSave),t&&A.extendedSourceFiles&&(t.extendedSourceFiles=zo(A.extendedSourceFiles.keys())),m.options=Fx(A.options,m.options),m.watchOptions=m.watchOptions&&A.watchOptions?Fx(A.watchOptions,m.watchOptions):m.watchOptions||A.watchOptions}return m;function b(A,I){const R=WVe(t,I,r,s,l,u,A);if(R&&kVe(R)){const M=R.raw;let C;const O=U=>{M[U]&&(A[U]=wt(M[U],K=>fp(K)?K:Qr(C||(C=rC(ai(I),i,Mu(r.useCaseSensitiveFileNames))),K)))};O("include"),O("exclude"),O("files"),M.compileOnSave!==void 0&&(A.compileOnSave=M.compileOnSave),Fx(A.options,R.options),A.watchOptions=A.watchOptions&&R.watchOptions?Fx({},A.watchOptions,R.watchOptions):A.watchOptions||R.watchOptions}}}function wVe(e,t,r,i,o){xs(e,"excludes")&&o.push(Hl(f.Unknown_option_excludes_Did_you_mean_exclude));const s=AIe(e.compilerOptions,r,o,i),l=IIe(e.typeAcquisition,r,o,i),u=zVe(e.watchOptions,r,o);e.compileOnSave=FVe(e,r,o);const p=e.extends||e.extends===""?yIe(e.extends,t,r,i,o):void 0;return{raw:e,options:s,watchOptions:u,typeAcquisition:l,extendedConfigPath:p}}function yIe(e,t,r,i,o,s,l,u){let p;const h=i?mIe(i,r):r;if(Po(e))p=bIe(e,t,h,o,l,u);else if(To(e)){p=[];for(let m=0;m<e.length;m++){const b=e[m];Po(b)?p=xn(p,bIe(b,t,h,o,l==null?void 0:l.elements[m],u)):ZS(Aw.element,e,r,o,s,l==null?void 0:l.elements[m],u)}}else ZS(Aw,e,r,o,s,l,u);return p}function OVe(e,t,r,i,o){const s=TIe(i);let l,u,p,h;const m=DVe(),b=oIe(e,o,{rootOptions:m,onPropertySet:A});return l||(l=yq(i)),h&&b&&b.compilerOptions===void 0&&o.push($f(e,h[0],f._0_should_be_set_inside_the_compilerOptions_object_of_the_config_json_file,lR(h[0]))),{raw:b,options:s,watchOptions:u,typeAcquisition:l,extendedConfigPath:p};function A(I,R,M,C,O){if(O&&O!==Aw&&(R=ZS(O,R,r,o,M,M.initializer,e)),C!=null&&C.name)if(O){let U;C===Bse?U=s:C===Gse?U=u??(u={}):C===Vse?U=l??(l=yq(i)):N.fail("Unknown option"),U[O.name]=R}else I&&(C!=null&&C.extraKeyDiagnostics)&&(C.elementOptions?o.push(xse(I,C.extraKeyDiagnostics,void 0,M.name,e)):o.push($f(e,M.name,C.extraKeyDiagnostics.unknownOptionDiagnostic,I)));else C===m&&(O===Aw?p=yIe(R,t,r,i,o,M,M.initializer,e):O||(I==="excludes"&&o.push($f(e,M.name,f.Unknown_option_excludes_Did_you_mean_exclude)),An(Eq,U=>U.name===I)&&(h=xn(h,M.name))))}}function bIe(e,t,r,i,o,s){if(e=Lu(e),fp(e)||uo(e,"./")||uo(e,"../")){let u=go(e,r);if(!t.fileExists(u)&&!Al(u,".json")&&(u=`${u}.json`,!t.fileExists(u))){i.push(M0(s,o,f.File_0_not_found,e));return}return u}const l=Zse(e,Qr(r,"tsconfig.json"),t);if(l.resolvedModule)return l.resolvedModule.resolvedFileName;e===""?i.push(M0(s,o,f.Compiler_option_0_cannot_be_given_an_empty_string,"extends")):i.push(M0(s,o,f.File_0_not_found,e))}function WVe(e,t,r,i,o,s,l){const u=r.useCaseSensitiveFileNames?t:ch(t);let p,h,m;if(s&&(p=s.get(u))?{extendedResult:h,extendedConfig:m}=p:(h=Dse(t,b=>r.readFile(b)),h.parseDiagnostics.length||(m=vIe(void 0,h,r,ai(t),ic(t),i,o,s)),s&&s.set(u,{extendedResult:h,extendedConfig:m})),e&&((l.extendedSourceFiles??(l.extendedSourceFiles=new Set)).add(h.fileName),h.extendedSourceFiles))for(const b of h.extendedSourceFiles)l.extendedSourceFiles.add(b);if(h.parseDiagnostics.length){o.push(...h.parseDiagnostics);return}return m}function FVe(e,t,r){if(!xs(e,vw.name))return!1;const i=ZS(vw,e.compileOnSave,t,r);return typeof i=="boolean"&&i}function EIe(e,t,r){const i=[];return{options:AIe(e,t,i,r),errors:i}}function SIe(e,t,r){const i=[];return{options:IIe(e,t,i,r),errors:i}}function TIe(e){return e&&ic(e)==="jsconfig.json"?{allowJs:!0,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:!0,skipLibCheck:!0,noEmit:!0}:{}}function AIe(e,t,r,i){const o=TIe(i);return Cse(nIe(),e,t,o,Tw,r),i&&(o.configFilePath=Lu(i)),o}function yq(e){return{enable:!!e&&ic(e)==="jsconfig.json",include:[],exclude:[]}}function IIe(e,t,r,i){const o=yq(i);return Cse(iIe(),e,t,o,zse,r),o}function zVe(e,t,r){return Cse(rIe(),e,t,void 0,LF,r)}function Cse(e,t,r,i,o,s){if(t){for(const l in t){const u=e.get(l);u?(i||(i={}))[u.name]=ZS(u,t[l],r,s):s.push(xse(l,o))}return i}}function M0(e,t,r,...i){return e&&t?$f(e,t,r,...i):Hl(r,...i)}function ZS(e,t,r,i,o,s,l){if(e.isCommandLineOnly){i.push(M0(l,o==null?void 0:o.name,f.Option_0_can_only_be_specified_on_command_line,e.name));return}if(aIe(e,t)){const u=e.type;if(u==="list"&&To(t))return RIe(e,t,r,i,o,s,l);if(u==="listOrElement")return To(t)?RIe(e,t,r,i,o,s,l):ZS(e.element,t,r,i,o,s,l);if(!Po(e.type))return xIe(e,t,i,s,l);const p=EI(e,t,i,s,l);return gw(p)?p:BVe(e,r,p)}else i.push(M0(l,s,f.Compiler_option_0_requires_a_value_of_type_1,e.name,_q(e)))}function BVe(e,t,r){return e.isFilePath&&(r=go(r,t),r===""&&(r=".")),r}function EI(e,t,r,i,o){var s;if(gw(t))return;const l=(s=e.extraValidation)==null?void 0:s.call(e,t);if(!l)return t;r.push(M0(o,i,...l))}function xIe(e,t,r,i,o){if(gw(t))return;const s=t.toLowerCase(),l=e.type.get(s);if(l!==void 0)return EI(e,l,r,i,o);r.push(KAe(e,(u,...p)=>M0(o,i,u,...p)))}function RIe(e,t,r,i,o,s,l){return nr(wt(t,(u,p)=>ZS(e.element,u,r,i,o,s==null?void 0:s.elements[p],l)),u=>e.listPreserveFalsyValues?!0:!!u)}function LP(e,t,r,i,o=et){t=ga(t);const s=Mu(i.useCaseSensitiveFileNames),l=new Map,u=new Map,p=new Map,{validatedFilesSpec:h,validatedIncludeSpecs:m,validatedExcludeSpecs:b}=e,A=YC(r,o),I=Ek(r,A);if(h)for(const O of h){const U=go(O,t);l.set(s(U),U)}let R;if(m&&m.length>0)for(const O of i.readDirectory(t,ia(I),b,m,void 0)){if(Il(O,".json")){if(!R){const Z=m.filter(se=>Al(se,".json")),V=wt(X3(Z,t,"files"),se=>`^${se}$`);R=V?V.map(se=>qy(se,i.useCaseSensitiveFileNames)):et}if(Gr(R,Z=>Z.test(O))!==-1){const Z=s(O);!l.has(Z)&&!p.has(Z)&&p.set(Z,O)}continue}if(jVe(O,l,u,A,s))continue;UVe(O,u,A,s);const U=s(O);!l.has(U)&&!u.has(U)&&u.set(U,O)}const M=zo(l.values()),C=zo(u.values());return M.concat(C,zo(p.values()))}function Pse(e,t,r,i,o){const{validatedFilesSpec:s,validatedIncludeSpecs:l,validatedExcludeSpecs:u}=t;if(!Me(l)||!Me(u))return!1;r=ga(r);const p=Mu(i);if(s){for(const h of s)if(p(go(h,r))===e)return!1}return NIe(e,u,i,o,r)}function DIe(e){const t=uo(e,"**/")?0:e.indexOf("/**/");return t===-1?!1:(Al(e,"/..")?e.length:e.lastIndexOf("/../"))>t}function RF(e,t,r,i){return NIe(e,nr(t,o=>!DIe(o)),r,i)}function NIe(e,t,r,i,o){const s=XC(t,Qr(ga(i),o),"exclude"),l=s&&qy(s,r);return l?l.test(e)?!0:!xA(e)&&l.test(Bc(e)):!1}function CIe(e,t,r,i,o){return e.filter(l=>{if(!Po(l))return!1;const u=Mse(l,r);return u!==void 0&&t.push(s(...u)),u===void 0});function s(l,u){const p=e3(i,o,u);return M0(i,p,l,u)}}function Mse(e,t){if(N.assert(typeof e=="string"),t&&BIe.test(e))return[f.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,e];if(DIe(e))return[f.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0,e]}function GVe({validatedIncludeSpecs:e,validatedExcludeSpecs:t},r,i){const o=XC(t,r,"exclude"),s=o&&new RegExp(o,i?"":"i"),l={},u=new Map;if(e!==void 0){const p=[];for(const h of e){const m=ga(Qr(r,h));if(s&&s.test(m))continue;const b=VVe(m,i);if(b){const{key:A,path:I,flags:R}=b,M=u.get(A),C=M!==void 0?l[M]:void 0;(C===void 0||C<R)&&(l[M!==void 0?M:I]=R,M===void 0&&u.set(A,I),R===1&&p.push(A))}}for(const h in l)if(xs(l,h))for(const m of p){const b=Lse(h,i);b!==m&&bm(m,b,r,!i)&&delete l[h]}}return l}function Lse(e,t){return t?e:ch(e)}function VVe(e,t){const r=GIe.exec(e);if(r){const i=e.indexOf("?"),o=e.indexOf("*"),s=e.lastIndexOf(al);return{key:Lse(r[0],t),path:r[0],flags:i!==-1&&i<s||o!==-1&&o<s?1:0}}if(WU(e.substring(e.lastIndexOf(al)+1))){const i=o0(e);return{key:Lse(i,t),path:i,flags:1}}}function jVe(e,t,r,i,o){const s=Ue(i,l=>Tc(e,l)?l:void 0);if(!s)return!1;for(const l of s){if(Il(e,l)&&(l!==".ts"||!Il(e,".d.ts")))return!1;const u=o(S0(e,l));if(t.has(u)||r.has(u)){if(l===".d.ts"&&(Il(e,".js")||Il(e,".jsx")))continue;return!0}}return!1}function UVe(e,t,r,i){const o=Ue(r,s=>Tc(e,s)?s:void 0);if(o)for(let s=o.length-1;s>=0;s--){const l=o[s];if(Il(e,l))return;const u=i(S0(e,l));t.delete(u)}}function kse(e){const t={};for(const r in e)if(xs(e,r)){const i=pq(r);i!==void 0&&(t[r]=wse(e[r],i))}return t}function wse(e,t){if(e===void 0)return e;switch(t.type){case"object":return"";case"string":return"";case"number":return typeof e=="number"?e:"";case"boolean":return typeof e=="boolean"?e:"";case"listOrElement":if(!To(e))return wse(e,t.element);case"list":const r=t.element;return To(e)?Hi(e,i=>wse(i,r)):"";default:return Gc(t.type,(i,o)=>{if(i===e)return o})}}function Ose(e){switch(e.type){case"number":return 1;case"boolean":return!0;case"string":const t=e.defaultValueDescription;return e.isFilePath?`./${t&&typeof t=="string"?t:""}`:"";case"list":return[];case"listOrElement":return Ose(e.element);case"object":return{};default:const r=L6(e.type.keys());return r!==void 0?r:N.fail("Expected 'option.type' to have entries.")}}var vw,Wse,kP,Fse,yw,DF,sD,bw,Ew,bq,Eq,pg,Sq,Tq,Aq,NF,CF,Iq,xq,Rq,PF,Sw,PIe,MIe,MF,Tw,LIe,kIe,wIe,zse,OIe,LF,WIe,FIe,zIe,Aw,Bse,Gse,Vse,jse,kF,BIe,GIe,HVe=T({"src/compiler/commandLineParser.ts"(){ra(),vw={name:"compileOnSave",type:"boolean",defaultValueDescription:!1},Wse=new Map(Object.entries({preserve:1,"react-native":3,react:2,"react-jsx":4,"react-jsxdev":5})),kP=new Map(Ia(Wse.entries(),([e,t])=>[""+t,e])),Fse=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["es2019","lib.es2019.d.ts"],["es2020","lib.es2020.d.ts"],["es2021","lib.es2021.d.ts"],["es2022","lib.es2022.d.ts"],["es2023","lib.es2023.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["dom.asynciterable","lib.dom.asynciterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["webworker.iterable","lib.webworker.iterable.d.ts"],["webworker.asynciterable","lib.webworker.asynciterable.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2016.intl","lib.es2016.intl.d.ts"],["es2017.date","lib.es2017.date.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.asyncgenerator","lib.es2018.asyncgenerator.d.ts"],["es2018.asynciterable","lib.es2018.asynciterable.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["es2019.array","lib.es2019.array.d.ts"],["es2019.object","lib.es2019.object.d.ts"],["es2019.string","lib.es2019.string.d.ts"],["es2019.symbol","lib.es2019.symbol.d.ts"],["es2019.intl","lib.es2019.intl.d.ts"],["es2020.bigint","lib.es2020.bigint.d.ts"],["es2020.date","lib.es2020.date.d.ts"],["es2020.promise","lib.es2020.promise.d.ts"],["es2020.sharedmemory","lib.es2020.sharedmemory.d.ts"],["es2020.string","lib.es2020.string.d.ts"],["es2020.symbol.wellknown","lib.es2020.symbol.wellknown.d.ts"],["es2020.intl","lib.es2020.intl.d.ts"],["es2020.number","lib.es2020.number.d.ts"],["es2021.promise","lib.es2021.promise.d.ts"],["es2021.string","lib.es2021.string.d.ts"],["es2021.weakref","lib.es2021.weakref.d.ts"],["es2021.intl","lib.es2021.intl.d.ts"],["es2022.array","lib.es2022.array.d.ts"],["es2022.error","lib.es2022.error.d.ts"],["es2022.intl","lib.es2022.intl.d.ts"],["es2022.object","lib.es2022.object.d.ts"],["es2022.sharedmemory","lib.es2022.sharedmemory.d.ts"],["es2022.string","lib.es2022.string.d.ts"],["es2022.regexp","lib.es2022.regexp.d.ts"],["es2023.array","lib.es2023.array.d.ts"],["es2023.collection","lib.es2023.collection.d.ts"],["esnext.array","lib.es2023.array.d.ts"],["esnext.collection","lib.esnext.collection.d.ts"],["esnext.symbol","lib.es2019.symbol.d.ts"],["esnext.asynciterable","lib.es2018.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.disposable","lib.esnext.disposable.d.ts"],["esnext.bigint","lib.es2020.bigint.d.ts"],["esnext.string","lib.es2022.string.d.ts"],["esnext.promise","lib.esnext.promise.d.ts"],["esnext.weakref","lib.es2021.weakref.d.ts"],["esnext.decorators","lib.esnext.decorators.d.ts"],["esnext.object","lib.esnext.object.d.ts"],["decorators","lib.decorators.d.ts"],["decorators.legacy","lib.decorators.legacy.d.ts"]],yw=Fse.map(e=>e[0]),DF=new Map(Fse),sD=[{name:"watchFile",type:new Map(Object.entries({fixedpollinginterval:0,prioritypollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3,usefsevents:4,usefseventsonparentdirectory:5})),category:f.Watch_and_Build_Modes,description:f.Specify_how_the_TypeScript_watch_mode_works,defaultValueDescription:4},{name:"watchDirectory",type:new Map(Object.entries({usefsevents:0,fixedpollinginterval:1,dynamicprioritypolling:2,fixedchunksizepolling:3})),category:f.Watch_and_Build_Modes,description:f.Specify_how_directories_are_watched_on_systems_that_lack_recursive_file_watching_functionality,defaultValueDescription:0},{name:"fallbackPolling",type:new Map(Object.entries({fixedinterval:0,priorityinterval:1,dynamicpriority:2,fixedchunksize:3})),category:f.Watch_and_Build_Modes,description:f.Specify_what_approach_the_watcher_should_use_if_the_system_runs_out_of_native_file_watchers,defaultValueDescription:1},{name:"synchronousWatchDirectory",type:"boolean",category:f.Watch_and_Build_Modes,description:f.Synchronously_call_callbacks_and_update_the_state_of_directory_watchers_on_platforms_that_don_t_support_recursive_watching_natively,defaultValueDescription:!1},{name:"excludeDirectories",type:"list",element:{name:"excludeDirectory",type:"string",isFilePath:!0,extraValidation:Mse},category:f.Watch_and_Build_Modes,description:f.Remove_a_list_of_directories_from_the_watch_process},{name:"excludeFiles",type:"list",element:{name:"excludeFile",type:"string",isFilePath:!0,extraValidation:Mse},category:f.Watch_and_Build_Modes,description:f.Remove_a_list_of_files_from_the_watch_mode_s_processing}],bw=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:f.Command_line_Options,description:f.Print_this_message,defaultValueDescription:!1},{name:"help",shortName:"?",type:"boolean",isCommandLineOnly:!0,category:f.Command_line_Options,defaultValueDescription:!1},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:!0,isCommandLineOnly:!0,category:f.Command_line_Options,description:f.Watch_input_files,defaultValueDescription:!1},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:!1,category:f.Output_Formatting,description:f.Disable_wiping_the_console_in_watch_mode,defaultValueDescription:!1},{name:"listFiles",type:"boolean",category:f.Compiler_Diagnostics,description:f.Print_all_of_the_files_read_during_the_compilation,defaultValueDescription:!1},{name:"explainFiles",type:"boolean",category:f.Compiler_Diagnostics,description:f.Print_files_read_during_the_compilation_including_why_it_was_included,defaultValueDescription:!1},{name:"listEmittedFiles",type:"boolean",category:f.Compiler_Diagnostics,description:f.Print_the_names_of_emitted_files_after_a_compilation,defaultValueDescription:!1},{name:"pretty",type:"boolean",showInSimplifiedHelpView:!0,category:f.Output_Formatting,description:f.Enable_color_and_formatting_in_TypeScript_s_output_to_make_compiler_errors_easier_to_read,defaultValueDescription:!0},{name:"traceResolution",type:"boolean",category:f.Compiler_Diagnostics,description:f.Log_paths_used_during_the_moduleResolution_process,defaultValueDescription:!1},{name:"diagnostics",type:"boolean",category:f.Compiler_Diagnostics,description:f.Output_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"extendedDiagnostics",type:"boolean",category:f.Compiler_Diagnostics,description:f.Output_more_detailed_compiler_performance_information_after_building,defaultValueDescription:!1},{name:"generateCpuProfile",type:"string",isFilePath:!0,paramType:f.FILE_OR_DIRECTORY,category:f.Compiler_Diagnostics,description:f.Emit_a_v8_CPU_profile_of_the_compiler_run_for_debugging,defaultValueDescription:"profile.cpuprofile"},{name:"generateTrace",type:"string",isFilePath:!0,isCommandLineOnly:!0,paramType:f.DIRECTORY,category:f.Compiler_Diagnostics,description:f.Generates_an_event_trace_and_a_list_of_types},{name:"incremental",shortName:"i",type:"boolean",category:f.Projects,description:f.Save_tsbuildinfo_files_to_allow_for_incremental_compilation_of_projects,transpileOptionValue:void 0,defaultValueDescription:f.false_unless_composite_is_set},{name:"declaration",shortName:"d",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.Emit,transpileOptionValue:void 0,description:f.Generate_d_ts_files_from_TypeScript_and_JavaScript_files_in_your_project,defaultValueDescription:f.false_unless_composite_is_set},{name:"declarationMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.Emit,transpileOptionValue:void 0,defaultValueDescription:!1,description:f.Create_sourcemaps_for_d_ts_files},{name:"emitDeclarationOnly",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.Emit,description:f.Only_output_d_ts_files_and_not_JavaScript_files,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"sourceMap",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.Emit,defaultValueDescription:!1,description:f.Create_source_map_files_for_emitted_JavaScript_files},{name:"inlineSourceMap",type:"boolean",affectsBuildInfo:!0,category:f.Emit,description:f.Include_sourcemap_files_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"assumeChangesOnlyAffectDirectDependencies",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:f.Watch_and_Build_Modes,description:f.Have_recompiles_in_projects_that_use_incremental_and_watch_mode_assume_that_changes_within_a_file_will_only_affect_files_directly_depending_on_it,defaultValueDescription:!1},{name:"locale",type:"string",category:f.Command_line_Options,isCommandLineOnly:!0,description:f.Set_the_language_of_the_messaging_from_TypeScript_This_does_not_affect_emit,defaultValueDescription:f.Platform_specific}],Ew={name:"target",shortName:"t",type:new Map(Object.entries({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,es2019:6,es2020:7,es2021:8,es2022:9,esnext:99})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,deprecatedKeys:new Set(["es3"]),paramType:f.VERSION,showInSimplifiedHelpView:!0,category:f.Language_and_Environment,description:f.Set_the_JavaScript_language_version_for_emitted_JavaScript_and_include_compatible_library_declarations,defaultValueDescription:1},bq={name:"module",shortName:"m",type:new Map(Object.entries({none:0,commonjs:1,amd:2,system:4,umd:3,es6:5,es2015:5,es2020:6,es2022:7,esnext:99,node16:100,nodenext:199,preserve:200})),affectsSourceFile:!0,affectsModuleResolution:!0,affectsEmit:!0,affectsBuildInfo:!0,paramType:f.KIND,showInSimplifiedHelpView:!0,category:f.Modules,description:f.Specify_what_module_code_is_generated,defaultValueDescription:void 0},Eq=[{name:"all",type:"boolean",showInSimplifiedHelpView:!0,category:f.Command_line_Options,description:f.Show_all_compiler_options,defaultValueDescription:!1},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:!0,category:f.Command_line_Options,description:f.Print_the_compiler_s_version,defaultValueDescription:!1},{name:"init",type:"boolean",showInSimplifiedHelpView:!0,category:f.Command_line_Options,description:f.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file,defaultValueDescription:!1},{name:"project",shortName:"p",type:"string",isFilePath:!0,showInSimplifiedHelpView:!0,category:f.Command_line_Options,paramType:f.FILE_OR_DIRECTORY,description:f.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:!0,category:f.Command_line_Options,description:f.Build_one_or_more_projects_and_their_dependencies_if_out_of_date,defaultValueDescription:!1},{name:"showConfig",type:"boolean",showInSimplifiedHelpView:!0,category:f.Command_line_Options,isCommandLineOnly:!0,description:f.Print_the_final_configuration_instead_of_building,defaultValueDescription:!1},{name:"listFilesOnly",type:"boolean",category:f.Command_line_Options,isCommandLineOnly:!0,description:f.Print_names_of_files_that_are_part_of_the_compilation_and_then_stop_processing,defaultValueDescription:!1},Ew,bq,{name:"lib",type:"list",element:{name:"lib",type:DF,defaultValueDescription:void 0},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:f.Language_and_Environment,description:f.Specify_a_set_of_bundled_library_declaration_files_that_describe_the_target_runtime_environment,transpileOptionValue:void 0},{name:"allowJs",type:"boolean",allowJsFlag:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.JavaScript_Support,description:f.Allow_JavaScript_files_to_be_a_part_of_your_program_Use_the_checkJS_option_to_get_errors_from_these_files,defaultValueDescription:!1},{name:"checkJs",type:"boolean",affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.JavaScript_Support,description:f.Enable_error_reporting_in_type_checked_JavaScript_files,defaultValueDescription:!1},{name:"jsx",type:Wse,affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,affectsSemanticDiagnostics:!0,paramType:f.KIND,showInSimplifiedHelpView:!0,category:f.Language_and_Environment,description:f.Specify_what_JSX_code_is_generated,defaultValueDescription:void 0},{name:"outFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:f.FILE,showInSimplifiedHelpView:!0,category:f.Emit,description:f.Specify_a_file_that_bundles_all_outputs_into_one_JavaScript_file_If_declaration_is_true_also_designates_a_file_that_bundles_all_d_ts_output,transpileOptionValue:void 0},{name:"outDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:f.DIRECTORY,showInSimplifiedHelpView:!0,category:f.Emit,description:f.Specify_an_output_folder_for_all_emitted_files},{name:"rootDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:f.LOCATION,category:f.Modules,description:f.Specify_the_root_folder_within_your_source_files,defaultValueDescription:f.Computed_from_the_list_of_input_files},{name:"composite",type:"boolean",affectsBuildInfo:!0,isTSConfigOnly:!0,category:f.Projects,transpileOptionValue:void 0,defaultValueDescription:!1,description:f.Enable_constraints_that_allow_a_TypeScript_project_to_be_used_with_project_references},{name:"tsBuildInfoFile",type:"string",affectsEmit:!0,affectsBuildInfo:!0,isFilePath:!0,paramType:f.FILE,category:f.Projects,transpileOptionValue:void 0,defaultValueDescription:".tsbuildinfo",description:f.Specify_the_path_to_tsbuildinfo_incremental_compilation_file},{name:"removeComments",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.Emit,defaultValueDescription:!1,description:f.Disable_emitting_comments},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:!0,category:f.Emit,description:f.Disable_emitting_files_from_a_compilation,transpileOptionValue:void 0,defaultValueDescription:!1},{name:"importHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Allow_importing_helper_functions_from_tslib_once_per_project_instead_of_including_them_per_file,defaultValueDescription:!1},{name:"importsNotUsedAsValues",type:new Map(Object.entries({remove:0,preserve:1,error:2})),affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Specify_emit_Slashchecking_behavior_for_imports_that_are_only_used_for_types,defaultValueDescription:0},{name:"downlevelIteration",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Emit_more_compliant_but_verbose_and_less_performant_JavaScript_for_iteration,defaultValueDescription:!1},{name:"isolatedModules",type:"boolean",category:f.Interop_Constraints,description:f.Ensure_that_each_file_can_be_safely_transpiled_without_relying_on_other_imports,transpileOptionValue:!0,defaultValueDescription:!1},{name:"verbatimModuleSyntax",type:"boolean",category:f.Interop_Constraints,description:f.Do_not_transform_or_elide_any_imports_or_exports_not_marked_as_type_only_ensuring_they_are_written_in_the_output_file_s_format_based_on_the_module_setting,defaultValueDescription:!1},{name:"strict",type:"boolean",affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.Type_Checking,description:f.Enable_all_strict_type_checking_options,defaultValueDescription:!1},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.Enable_error_reporting_for_expressions_and_declarations_with_an_implied_any_type,defaultValueDescription:f.false_unless_strict_is_set},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.When_type_checking_take_into_account_null_and_undefined,defaultValueDescription:f.false_unless_strict_is_set},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.When_assigning_functions_check_to_ensure_parameters_and_the_return_values_are_subtype_compatible,defaultValueDescription:f.false_unless_strict_is_set},{name:"strictBindCallApply",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.Check_that_the_arguments_for_bind_call_and_apply_methods_match_the_original_function,defaultValueDescription:f.false_unless_strict_is_set},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.Check_for_class_properties_that_are_declared_but_not_set_in_the_constructor,defaultValueDescription:f.false_unless_strict_is_set},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.Enable_error_reporting_when_this_is_given_the_type_any,defaultValueDescription:f.false_unless_strict_is_set},{name:"useUnknownInCatchVariables",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.Default_catch_clause_variables_as_unknown_instead_of_any,defaultValueDescription:f.false_unless_strict_is_set},{name:"alwaysStrict",type:"boolean",affectsSourceFile:!0,affectsEmit:!0,affectsBuildInfo:!0,strictFlag:!0,category:f.Type_Checking,description:f.Ensure_use_strict_is_always_emitted,defaultValueDescription:f.false_unless_strict_is_set},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Enable_error_reporting_when_local_variables_aren_t_read,defaultValueDescription:!1},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Raise_an_error_when_a_function_parameter_isn_t_read,defaultValueDescription:!1},{name:"exactOptionalPropertyTypes",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Interpret_optional_property_types_as_written_rather_than_adding_undefined,defaultValueDescription:!1},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Enable_error_reporting_for_codepaths_that_do_not_explicitly_return_in_a_function,defaultValueDescription:!1},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Enable_error_reporting_for_fallthrough_cases_in_switch_statements,defaultValueDescription:!1},{name:"noUncheckedIndexedAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Add_undefined_to_a_type_when_accessed_using_an_index,defaultValueDescription:!1},{name:"noImplicitOverride",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Ensure_overriding_members_in_derived_classes_are_marked_with_an_override_modifier,defaultValueDescription:!1},{name:"noPropertyAccessFromIndexSignature",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!1,category:f.Type_Checking,description:f.Enforces_using_indexed_accessors_for_keys_declared_using_an_indexed_type,defaultValueDescription:!1},{name:"moduleResolution",type:new Map(Object.entries({node10:2,node:2,classic:1,node16:3,nodenext:99,bundler:100})),deprecatedKeys:new Set(["node"]),affectsSourceFile:!0,affectsModuleResolution:!0,paramType:f.STRATEGY,category:f.Modules,description:f.Specify_how_TypeScript_looks_up_a_file_from_a_given_module_specifier,defaultValueDescription:f.module_AMD_or_UMD_or_System_or_ES6_then_Classic_Otherwise_Node},{name:"baseUrl",type:"string",affectsModuleResolution:!0,isFilePath:!0,category:f.Modules,description:f.Specify_the_base_directory_to_resolve_non_relative_module_names},{name:"paths",type:"object",affectsModuleResolution:!0,isTSConfigOnly:!0,category:f.Modules,description:f.Specify_a_set_of_entries_that_re_map_imports_to_additional_lookup_locations,transpileOptionValue:void 0},{name:"rootDirs",type:"list",isTSConfigOnly:!0,element:{name:"rootDirs",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:f.Modules,description:f.Allow_multiple_folders_to_be_treated_as_one_when_resolving_modules,transpileOptionValue:void 0,defaultValueDescription:f.Computed_from_the_list_of_input_files},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:!0},affectsModuleResolution:!0,category:f.Modules,description:f.Specify_multiple_folders_that_act_like_Slashnode_modules_Slash_types},{name:"types",type:"list",element:{name:"types",type:"string"},affectsProgramStructure:!0,showInSimplifiedHelpView:!0,category:f.Modules,description:f.Specify_type_package_names_to_be_included_without_being_referenced_in_a_source_file,transpileOptionValue:void 0},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Interop_Constraints,description:f.Allow_import_x_from_y_when_a_module_doesn_t_have_a_default_export,defaultValueDescription:f.module_system_or_esModuleInterop},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,showInSimplifiedHelpView:!0,category:f.Interop_Constraints,description:f.Emit_additional_JavaScript_to_ease_support_for_importing_CommonJS_modules_This_enables_allowSyntheticDefaultImports_for_type_compatibility,defaultValueDescription:!1},{name:"preserveSymlinks",type:"boolean",category:f.Interop_Constraints,description:f.Disable_resolving_symlinks_to_their_realpath_This_correlates_to_the_same_flag_in_node,defaultValueDescription:!1},{name:"allowUmdGlobalAccess",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Modules,description:f.Allow_accessing_UMD_globals_from_modules,defaultValueDescription:!1},{name:"moduleSuffixes",type:"list",element:{name:"suffix",type:"string"},listPreserveFalsyValues:!0,affectsModuleResolution:!0,category:f.Modules,description:f.List_of_file_name_suffixes_to_search_when_resolving_a_module},{name:"allowImportingTsExtensions",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Modules,description:f.Allow_imports_to_include_TypeScript_file_extensions_Requires_moduleResolution_bundler_and_either_noEmit_or_emitDeclarationOnly_to_be_set,defaultValueDescription:!1,transpileOptionValue:void 0},{name:"resolvePackageJsonExports",type:"boolean",affectsModuleResolution:!0,category:f.Modules,description:f.Use_the_package_json_exports_field_when_resolving_package_imports,defaultValueDescription:f.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"resolvePackageJsonImports",type:"boolean",affectsModuleResolution:!0,category:f.Modules,description:f.Use_the_package_json_imports_field_when_resolving_imports,defaultValueDescription:f.true_when_moduleResolution_is_node16_nodenext_or_bundler_otherwise_false},{name:"customConditions",type:"list",element:{name:"condition",type:"string"},affectsModuleResolution:!0,category:f.Modules,description:f.Conditions_to_set_in_addition_to_the_resolver_specific_defaults_when_resolving_imports},{name:"sourceRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:f.LOCATION,category:f.Emit,description:f.Specify_the_root_path_for_debuggers_to_find_the_reference_source_code},{name:"mapRoot",type:"string",affectsEmit:!0,affectsBuildInfo:!0,paramType:f.LOCATION,category:f.Emit,description:f.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSources",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Include_source_code_in_the_sourcemaps_inside_the_emitted_JavaScript,defaultValueDescription:!1},{name:"experimentalDecorators",type:"boolean",affectsEmit:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Language_and_Environment,description:f.Enable_experimental_support_for_legacy_experimental_decorators,defaultValueDescription:!1},{name:"emitDecoratorMetadata",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:f.Language_and_Environment,description:f.Emit_design_type_metadata_for_decorated_declarations_in_source_files,defaultValueDescription:!1},{name:"jsxFactory",type:"string",category:f.Language_and_Environment,description:f.Specify_the_JSX_factory_function_used_when_targeting_React_JSX_emit_e_g_React_createElement_or_h,defaultValueDescription:"`React.createElement`"},{name:"jsxFragmentFactory",type:"string",category:f.Language_and_Environment,description:f.Specify_the_JSX_Fragment_reference_used_for_fragments_when_targeting_React_JSX_emit_e_g_React_Fragment_or_Fragment,defaultValueDescription:"React.Fragment"},{name:"jsxImportSource",type:"string",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,affectsModuleResolution:!0,category:f.Language_and_Environment,description:f.Specify_module_specifier_used_to_import_the_JSX_factory_functions_when_using_jsx_Colon_react_jsx_Asterisk,defaultValueDescription:"react"},{name:"resolveJsonModule",type:"boolean",affectsModuleResolution:!0,category:f.Modules,description:f.Enable_importing_json_files,defaultValueDescription:!1},{name:"allowArbitraryExtensions",type:"boolean",affectsProgramStructure:!0,category:f.Modules,description:f.Enable_importing_files_with_any_extension_provided_a_declaration_file_is_present,defaultValueDescription:!1},{name:"out",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!1,category:f.Backwards_Compatibility,paramType:f.FILE,transpileOptionValue:void 0,description:f.Deprecated_setting_Use_outFile_instead},{name:"reactNamespace",type:"string",affectsEmit:!0,affectsBuildInfo:!0,category:f.Language_and_Environment,description:f.Specify_the_object_invoked_for_createElement_This_only_applies_when_targeting_react_JSX_emit,defaultValueDescription:"`React`"},{name:"skipDefaultLibCheck",type:"boolean",affectsBuildInfo:!0,category:f.Completeness,description:f.Skip_type_checking_d_ts_files_that_are_included_with_TypeScript,defaultValueDescription:!1},{name:"charset",type:"string",category:f.Backwards_Compatibility,description:f.No_longer_supported_In_early_versions_manually_set_the_text_encoding_for_reading_files,defaultValueDescription:"utf8"},{name:"emitBOM",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files,defaultValueDescription:!1},{name:"newLine",type:new Map(Object.entries({crlf:0,lf:1})),affectsEmit:!0,affectsBuildInfo:!0,paramType:f.NEWLINE,category:f.Emit,description:f.Set_the_newline_character_for_emitting_files,defaultValueDescription:"lf"},{name:"noErrorTruncation",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Output_Formatting,description:f.Disable_truncating_types_in_error_messages,defaultValueDescription:!1},{name:"noLib",type:"boolean",category:f.Language_and_Environment,affectsProgramStructure:!0,description:f.Disable_including_any_library_files_including_the_default_lib_d_ts,transpileOptionValue:!0,defaultValueDescription:!1},{name:"noResolve",type:"boolean",affectsModuleResolution:!0,category:f.Modules,description:f.Disallow_import_s_require_s_or_reference_s_from_expanding_the_number_of_files_TypeScript_should_add_to_a_project,transpileOptionValue:!0,defaultValueDescription:!1},{name:"stripInternal",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Disable_emitting_declarations_that_have_internal_in_their_JSDoc_comments,defaultValueDescription:!1},{name:"disableSizeLimit",type:"boolean",affectsProgramStructure:!0,category:f.Editor_Support,description:f.Remove_the_20mb_cap_on_total_source_code_size_for_JavaScript_files_in_the_TypeScript_language_server,defaultValueDescription:!1},{name:"disableSourceOfProjectReferenceRedirect",type:"boolean",isTSConfigOnly:!0,category:f.Projects,description:f.Disable_preferring_source_files_instead_of_declaration_files_when_referencing_composite_projects,defaultValueDescription:!1},{name:"disableSolutionSearching",type:"boolean",isTSConfigOnly:!0,category:f.Projects,description:f.Opt_a_project_out_of_multi_project_reference_checking_when_editing,defaultValueDescription:!1},{name:"disableReferencedProjectLoad",type:"boolean",isTSConfigOnly:!0,category:f.Projects,description:f.Reduce_the_number_of_projects_loaded_automatically_by_TypeScript,defaultValueDescription:!1},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Backwards_Compatibility,description:f.Disable_adding_use_strict_directives_in_emitted_JavaScript_files,defaultValueDescription:!1},{name:"noEmitHelpers",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Disable_generating_custom_helper_functions_like_extends_in_compiled_output,defaultValueDescription:!1},{name:"noEmitOnError",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,transpileOptionValue:void 0,description:f.Disable_emitting_files_if_any_type_checking_errors_are_reported,defaultValueDescription:!1},{name:"preserveConstEnums",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Disable_erasing_const_enum_declarations_in_generated_code,defaultValueDescription:!1},{name:"declarationDir",type:"string",affectsEmit:!0,affectsBuildInfo:!0,affectsDeclarationPath:!0,isFilePath:!0,paramType:f.DIRECTORY,category:f.Emit,transpileOptionValue:void 0,description:f.Specify_the_output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",affectsBuildInfo:!0,category:f.Completeness,description:f.Skip_type_checking_all_d_ts_files,defaultValueDescription:!1},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Disable_error_reporting_for_unused_labels,defaultValueDescription:void 0},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:!0,affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Type_Checking,description:f.Disable_error_reporting_for_unreachable_code,defaultValueDescription:void 0},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Backwards_Compatibility,description:f.Disable_reporting_of_excess_property_errors_during_the_creation_of_object_literals,defaultValueDescription:!1},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Backwards_Compatibility,description:f.Suppress_noImplicitAny_errors_when_indexing_objects_that_lack_index_signatures,defaultValueDescription:!1},{name:"forceConsistentCasingInFileNames",type:"boolean",affectsModuleResolution:!0,category:f.Interop_Constraints,description:f.Ensure_that_casing_is_correct_in_imports,defaultValueDescription:!0},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:!0,category:f.JavaScript_Support,description:f.Specify_the_maximum_folder_depth_used_for_checking_JavaScript_files_from_node_modules_Only_applicable_with_allowJs,defaultValueDescription:0},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:!0,affectsBuildInfo:!0,category:f.Backwards_Compatibility,description:f.Disable_strict_checking_of_generic_signatures_in_function_types,defaultValueDescription:!1},{name:"useDefineForClassFields",type:"boolean",affectsSemanticDiagnostics:!0,affectsEmit:!0,affectsBuildInfo:!0,category:f.Language_and_Environment,description:f.Emit_ECMAScript_standard_compliant_class_fields,defaultValueDescription:f.true_for_ES2022_and_above_including_ESNext},{name:"preserveValueImports",type:"boolean",affectsEmit:!0,affectsBuildInfo:!0,category:f.Emit,description:f.Preserve_unused_imported_values_in_the_JavaScript_output_that_would_otherwise_be_removed,defaultValueDescription:!1},{name:"keyofStringsOnly",type:"boolean",category:f.Backwards_Compatibility,description:f.Make_keyof_only_return_strings_instead_of_string_numbers_or_symbols_Legacy_option,defaultValueDescription:!1},{name:"plugins",type:"list",isTSConfigOnly:!0,element:{name:"plugin",type:"object"},description:f.Specify_a_list_of_language_service_plugins_to_include,category:f.Editor_Support},{name:"moduleDetection",type:new Map(Object.entries({auto:2,legacy:1,force:3})),affectsSourceFile:!0,affectsModuleResolution:!0,description:f.Control_what_method_is_used_to_detect_module_format_JS_files,category:f.Language_and_Environment,defaultValueDescription:f.auto_Colon_Treat_files_with_imports_exports_import_meta_jsx_with_jsx_Colon_react_jsx_or_esm_format_with_module_Colon_node16_as_modules},{name:"ignoreDeprecations",type:"string",defaultValueDescription:void 0}],pg=[...bw,...Eq],Sq=pg.filter(e=>!!e.affectsSemanticDiagnostics),Tq=pg.filter(e=>!!e.affectsEmit),Aq=pg.filter(e=>!!e.affectsDeclarationPath),NF=pg.filter(e=>!!e.affectsModuleResolution),CF=pg.filter(e=>!!e.affectsSourceFile||!!e.affectsBindDiagnostics),Iq=pg.filter(e=>!!e.affectsProgramStructure),xq=pg.filter(e=>xs(e,"transpileOptionValue")),Rq=[{name:"verbose",shortName:"v",category:f.Command_line_Options,description:f.Enable_verbose_logging,type:"boolean",defaultValueDescription:!1},{name:"dry",shortName:"d",category:f.Command_line_Options,description:f.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean",defaultValueDescription:!1},{name:"force",shortName:"f",category:f.Command_line_Options,description:f.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean",defaultValueDescription:!1},{name:"clean",category:f.Command_line_Options,description:f.Delete_the_outputs_of_all_projects,type:"boolean",defaultValueDescription:!1}],PF=[...bw,...Rq],Sw=[{name:"enable",type:"boolean",defaultValueDescription:!1},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},{name:"disableFilenameBasedTypeAcquisition",type:"boolean",defaultValueDescription:!1}],MIe={diagnostic:f.Compiler_option_0_may_only_be_used_with_build,getOptionsNameMap:QAe},MF={module:1,target:3,strict:!0,esModuleInterop:!0,forceConsistentCasingInFileNames:!0,skipLibCheck:!0},Tw={alternateMode:MIe,getOptionsNameMap:aD,optionDeclarations:pg,unknownOptionDiagnostic:f.Unknown_compiler_option_0,unknownDidYouMeanDiagnostic:f.Unknown_compiler_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:f.Compiler_option_0_expects_an_argument},kIe={diagnostic:f.Compiler_option_0_may_not_be_used_with_build,getOptionsNameMap:aD},wIe={alternateMode:kIe,getOptionsNameMap:QAe,optionDeclarations:PF,unknownOptionDiagnostic:f.Unknown_build_option_0,unknownDidYouMeanDiagnostic:f.Unknown_build_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:f.Build_option_0_requires_a_value_of_type_1},zse={optionDeclarations:Sw,unknownOptionDiagnostic:f.Unknown_type_acquisition_option_0,unknownDidYouMeanDiagnostic:f.Unknown_type_acquisition_option_0_Did_you_mean_1},LF={getOptionsNameMap:tIe,optionDeclarations:sD,unknownOptionDiagnostic:f.Unknown_watch_option_0,unknownDidYouMeanDiagnostic:f.Unknown_watch_option_0_Did_you_mean_1,optionTypeMismatchDiagnostic:f.Watch_option_0_requires_a_value_of_type_1},Aw={name:"extends",type:"listOrElement",element:{name:"extends",type:"string"},category:f.File_Management,disallowNullOrUndefined:!0},Bse={name:"compilerOptions",type:"object",elementOptions:nIe(),extraKeyDiagnostics:Tw},Gse={name:"watchOptions",type:"object",elementOptions:rIe(),extraKeyDiagnostics:LF},Vse={name:"typeAcquisition",type:"object",elementOptions:iIe(),extraKeyDiagnostics:zse},kF="**/*",BIe=/(^|\/)\*\*\/?$/,GIe=/^[^*?]*(?=\/[^/]*[*?])/}});function bo(e,t,...r){e.trace(MU(t,...r))}function Jg(e,t){return!!e.traceResolution&&t.trace!==void 0}function SI(e,t){let r;if(t&&e){const i=e.contents.packageJsonContent;typeof i.name=="string"&&typeof i.version=="string"&&(r={name:i.name,subModuleName:t.path.slice(e.packageDirectory.length+al.length),version:i.version})}return t&&{path:t.path,extension:t.ext,packageId:r,resolvedUsingTsExtension:t.resolvedUsingTsExtension}}function Dq(e){return SI(void 0,e)}function VIe(e){if(e)return N.assert(e.packageId===void 0),{path:e.path,ext:e.extension,resolvedUsingTsExtension:e.resolvedUsingTsExtension}}function wF(e){const t=[];return e&1&&t.push("TypeScript"),e&2&&t.push("JavaScript"),e&4&&t.push("Declaration"),e&8&&t.push("JSON"),t.join(", ")}function qVe(e){const t=[];return e&1&&t.push(...Lk),e&2&&t.push(...VR),e&4&&t.push(...Mk),e&8&&t.push(".json"),t}function Use(e){if(e)return N.assert(tW(e.extension)),{fileName:e.path,packageId:e.packageId}}function jIe(e,t,r,i,o,s,l,u,p){if(!l.resultFromCache&&!l.compilerOptions.preserveSymlinks&&t&&r&&!t.originalPath&&!Yc(e)){const{resolvedFileName:h,originalPath:m}=qIe(t.path,l.host,l.traceEnabled);m&&(t={...t,path:h,originalPath:m})}return UIe(t,r,i,o,s,l.resultFromCache,u,p)}function UIe(e,t,r,i,o,s,l,u){return s?l!=null&&l.isReadonly?{...s,failedLookupLocations:Hse(s.failedLookupLocations,r),affectingLocations:Hse(s.affectingLocations,i),resolutionDiagnostics:Hse(s.resolutionDiagnostics,o)}:(s.failedLookupLocations=lD(s.failedLookupLocations,r),s.affectingLocations=lD(s.affectingLocations,i),s.resolutionDiagnostics=lD(s.resolutionDiagnostics,o),s):{resolvedModule:e&&{resolvedFileName:e.path,originalPath:e.originalPath===!0?void 0:e.originalPath,extension:e.extension,isExternalLibraryImport:t,packageId:e.packageId,resolvedUsingTsExtension:!!e.resolvedUsingTsExtension},failedLookupLocations:wP(r),affectingLocations:wP(i),resolutionDiagnostics:wP(o),alternateResult:u}}function wP(e){return e.length?e:void 0}function lD(e,t){return t!=null&&t.length?e!=null&&e.length?(e.push(...t),e):t:e}function Hse(e,t){return e!=null&&e.length?t.length?[...e,...t]:e.slice():wP(t)}function HIe(e,t,r,i){if(!xs(e,t)){i.traceEnabled&&bo(i.host,f.package_json_does_not_have_a_0_field,t);return}const o=e[t];if(typeof o!==r||o===null){i.traceEnabled&&bo(i.host,f.Expected_type_of_0_field_in_package_json_to_be_1_got_2,t,r,o===null?"null":typeof o);return}return o}function Nq(e,t,r,i){const o=HIe(e,t,"string",i);if(o===void 0)return;if(!o){i.traceEnabled&&bo(i.host,f.package_json_had_a_falsy_0_field,t);return}const s=ga(Qr(r,o));return i.traceEnabled&&bo(i.host,f.package_json_has_0_field_1_that_references_2,t,o,s),s}function JVe(e,t,r){return Nq(e,"typings",t,r)||Nq(e,"types",t,r)}function KVe(e,t,r){return Nq(e,"tsconfig",t,r)}function XVe(e,t,r){return Nq(e,"main",t,r)}function YVe(e,t){const r=HIe(e,"typesVersions","object",t);if(r!==void 0)return t.traceEnabled&&bo(t.host,f.package_json_has_a_typesVersions_field_with_version_specific_path_mappings),r}function $Ve(e,t){const r=YVe(e,t);if(r===void 0)return;if(t.traceEnabled)for(const l in r)xs(r,l)&&!GM.tryParse(l)&&bo(t.host,f.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,l);const i=OF(r);if(!i){t.traceEnabled&&bo(t.host,f.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,ue);return}const{version:o,paths:s}=i;if(typeof s!="object"){t.traceEnabled&&bo(t.host,f.Expected_type_of_0_field_in_package_json_to_be_1_got_2,`typesVersions['${o}']`,"object",typeof s);return}return i}function OF(e){ole||(ole=new ym(Re));for(const t in e){if(!xs(e,t))continue;const r=GM.tryParse(t);if(r!==void 0&&r.test(ole))return{version:t,paths:e[t]}}}function OP(e,t){if(e.typeRoots)return e.typeRoots;let r;if(e.configFilePath?r=ai(e.configFilePath):t.getCurrentDirectory&&(r=t.getCurrentDirectory()),r!==void 0)return QVe(r)}function QVe(e){let t;return Sm(ga(e),r=>{const i=Qr(r,mxe);(t??(t=[])).push(i)}),t}function ZVe(e,t,r){const i=typeof r.useCaseSensitiveFileNames=="function"?r.useCaseSensitiveFileNames():r.useCaseSensitiveFileNames;return Lg(e,t,!i)===0}function qIe(e,t,r){const i=dje(e,t,r),o=ZVe(e,i,t);return{resolvedFileName:o?e:i,originalPath:o?void 0:e}}function JIe(e,t,r){const i=Al(e,"/node_modules/@types")||Al(e,"/node_modules/@types/")?dxe(t,r):t;return Qr(e,i)}function qse(e,t,r,i,o,s,l){N.assert(typeof e=="string","Non-string value passed to `ts.resolveTypeReferenceDirective`, likely by a wrapping package working with an outdated `resolveTypeReferenceDirectives` signature. This is probably not a problem in TS itself.");const u=Jg(r,i);o&&(r=o.commandLine.options);const p=t?ai(t):void 0;let h=p?s==null?void 0:s.getFromDirectoryCache(e,l,p,o):void 0;if(!h&&p&&!Yc(e)&&(h=s==null?void 0:s.getFromNonRelativeNameCache(e,l,p,o)),h)return u&&(bo(i,f.Resolving_type_reference_directive_0_containing_file_1,e,t),o&&bo(i,f.Using_compiler_options_of_project_reference_redirect_0,o.sourceFile.fileName),bo(i,f.Resolution_for_type_reference_directive_0_was_found_in_cache_from_location_1,e,p),V(h)),h;const m=OP(r,i);u&&(t===void 0?m===void 0?bo(i,f.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,e):bo(i,f.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,e,m):m===void 0?bo(i,f.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,e,t):bo(i,f.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,e,t,m),o&&bo(i,f.Using_compiler_options_of_project_reference_redirect_0,o.sourceFile.fileName));const b=[],A=[];let I=Jse(r);l!==void 0&&(I|=30);const R=md(r);l===99&&3<=R&&R<=99&&(I|=32);const M=I&8?ib(r,l):[],C=[],O={compilerOptions:r,host:i,traceEnabled:u,failedLookupLocations:b,affectingLocations:A,packageJsonInfoCache:s,features:I,conditions:M,requestContainingDirectory:p,reportDiagnostic:ne=>void C.push(ne),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};let U=se(),K=!0;U||(U=G(),K=!1);let Z;if(U){const{fileName:ne,packageId:he}=U;let ye=ne,$;r.preserveSymlinks||({resolvedFileName:ye,originalPath:$}=qIe(ne,i,u)),Z={primary:K,resolvedFileName:ye,originalPath:$,packageId:he,isExternalLibraryImport:L0(ne)}}return h={resolvedTypeReferenceDirective:Z,failedLookupLocations:wP(b),affectingLocations:wP(A),resolutionDiagnostics:wP(C)},p&&s&&!s.isReadonly&&(s.getOrCreateCacheForDirectory(p,o).set(e,l,h),Yc(e)||s.getOrCreateCacheForNonRelativeName(e,l,o).set(p,h)),u&&V(h),h;function V(ne){var he;(he=ne.resolvedTypeReferenceDirective)!=null&&he.resolvedFileName?ne.resolvedTypeReferenceDirective.packageId?bo(i,f.Type_reference_directive_0_was_successfully_resolved_to_1_with_Package_ID_2_primary_Colon_3,e,ne.resolvedTypeReferenceDirective.resolvedFileName,By(ne.resolvedTypeReferenceDirective.packageId),ne.resolvedTypeReferenceDirective.primary):bo(i,f.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,e,ne.resolvedTypeReferenceDirective.resolvedFileName,ne.resolvedTypeReferenceDirective.primary):bo(i,f.Type_reference_directive_0_was_not_resolved,e)}function se(){if(m&&m.length)return u&&bo(i,f.Resolving_with_primary_search_path_0,m.join(", ")),Ut(m,ne=>{const he=JIe(ne,e,O),ye=$m(ne,i);if(!ye&&u&&bo(i,f.Directory_0_does_not_exist_skipping_all_lookups_in_it,ne),r.typeRoots){const $=dD(4,he,!ye,O);if($){const Y=xw($.path),oe=Y?p1(Y,!1,O):void 0;return Use(SI(oe,$))}}return Use(tle(4,he,!ye,O))});u&&bo(i,f.Root_directory_cannot_be_determined_skipping_primary_search_paths)}function G(){const ne=t&&ai(t);if(ne!==void 0){let he;if(!r.typeRoots||!Al(t,yD))if(u&&bo(i,f.Looking_up_in_node_modules_folder_initial_location_0,ne),Yc(e)){const{path:ye}=ZIe(ne,e);he=kq(4,ye,!1,O,!0)}else{const ye=sxe(4,e,ne,O,void 0,void 0);he=ye&&ye.value}else u&&bo(i,f.Resolving_type_reference_directive_for_program_that_specifies_custom_typeRoots_skipping_lookup_in_node_modules_folder);return Use(he)}else u&&bo(i,f.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}function Jse(e){let t=0;switch(md(e)){case 3:t=30;break;case 99:t=30;break;case 100:t=30;break}return e.resolvePackageJsonExports?t|=8:e.resolvePackageJsonExports===!1&&(t&=-9),e.resolvePackageJsonImports?t|=2:e.resolvePackageJsonImports===!1&&(t&=-3),t}function ib(e,t){const r=md(e);if(t===void 0){if(r===100)t=99;else if(r===2)return[]}const i=t===99?["import"]:["require"];return e.noDtsResolution||i.push("types"),r!==100&&i.push("node"),So(i,e.customConditions)}function Cq(e,t,r,i,o){const s=Rw(o==null?void 0:o.getPackageJsonInfoCache(),i,r);return Sm(t,l=>{if(ic(l)!=="node_modules"){const u=Qr(l,"node_modules"),p=Qr(u,e);return p1(p,!1,s)}})}function WF(e,t){if(e.types)return e.types;const r=[];if(t.directoryExists&&t.getDirectories){const i=OP(e,t);if(i){for(const o of i)if(t.directoryExists(o))for(const s of t.getDirectories(o)){const l=ga(s),u=Qr(o,l,"package.json");if(!(t.fileExists(u)&&jC(u,t).typings===null)){const h=ic(l);h.charCodeAt(0)!==46&&r.push(h)}}}}return r}function FF(e){return!!(e!=null&&e.contents)}function Kse(e){return!!e&&!e.contents}function Xse(e){var t;if(e===null||typeof e!="object")return""+e;if(To(e))return`[${(t=e.map(i=>Xse(i)))==null?void 0:t.join(",")}]`;let r="{";for(const i in e)xs(e,i)&&(r+=`${i}: ${Xse(e[i])}`);return r+"}"}function Pq(e,t){return t.map(r=>Xse(H3(e,r))).join("|")+`|${e.pathsBasePath}`}function Mq(e,t){const r=new Map,i=new Map;let o=new Map;return e&&r.set(e,o),{getMapOfCacheRedirects:s,getOrCreateMapOfCacheRedirects:l,update:u,clear:h,getOwnMap:()=>o};function s(b){return b?p(b.commandLine.options,!1):o}function l(b){return b?p(b.commandLine.options,!0):o}function u(b){e!==b&&(e?o=p(b,!0):r.set(b,o),e=b)}function p(b,A){let I=r.get(b);if(I)return I;const R=m(b);if(I=i.get(R),!I){if(e){const M=m(e);M===R?I=o:i.has(M)||i.set(M,o)}A&&(I??(I=new Map)),I&&i.set(R,I)}return I&&r.set(b,I),I}function h(){const b=e&&t.get(e);o.clear(),r.clear(),t.clear(),i.clear(),e&&(b&&t.set(e,b),r.set(e,o))}function m(b){let A=t.get(b);return A||t.set(b,A=Pq(b,NF)),A}}function eje(e,t){let r;return{getPackageJsonInfo:i,setPackageJsonInfo:o,clear:s,getInternalMap:l};function i(u){return r==null?void 0:r.get(ol(u,e,t))}function o(u,p){(r||(r=new Map)).set(ol(u,e,t),p)}function s(){r=void 0}function l(){return r}}function KIe(e,t,r,i){const o=e.getOrCreateMapOfCacheRedirects(t);let s=o.get(r);return s||(s=i(),o.set(r,s)),s}function tje(e,t,r,i){const o=Mq(r,i);return{getFromDirectoryCache:p,getOrCreateCacheForDirectory:u,clear:s,update:l,directoryToModuleNameMap:o};function s(){o.clear()}function l(h){o.update(h)}function u(h,m){const b=ol(h,e,t);return KIe(o,m,b,()=>TI())}function p(h,m,b,A){var I,R;const M=ol(b,e,t);return(R=(I=o.getMapOfCacheRedirects(A))==null?void 0:I.get(M))==null?void 0:R.get(h,m)}}function WP(e,t){return t===void 0?e:`${t}|${e}`}function TI(){const e=new Map,t=new Map,r={get(o,s){return e.get(i(o,s))},set(o,s,l){return e.set(i(o,s),l),r},delete(o,s){return e.delete(i(o,s)),r},has(o,s){return e.has(i(o,s))},forEach(o){return e.forEach((s,l)=>{const[u,p]=t.get(l);return o(s,u,p)})},size(){return e.size}};return r;function i(o,s){const l=WP(o,s);return t.set(l,[o,s]),l}}function nje(e){return e.resolvedModule&&(e.resolvedModule.originalPath||e.resolvedModule.resolvedFileName)}function rje(e){return e.resolvedTypeReferenceDirective&&(e.resolvedTypeReferenceDirective.originalPath||e.resolvedTypeReferenceDirective.resolvedFileName)}function ije(e,t,r,i,o){const s=Mq(r,o);return{getFromNonRelativeNameCache:p,getOrCreateCacheForNonRelativeName:h,clear:l,update:u};function l(){s.clear()}function u(b){s.update(b)}function p(b,A,I,R){var M,C;return N.assert(!Yc(b)),(C=(M=s.getMapOfCacheRedirects(R))==null?void 0:M.get(WP(b,A)))==null?void 0:C.get(I)}function h(b,A,I){return N.assert(!Yc(b)),KIe(s,I,WP(b,A),m)}function m(){const b=new Map;return{get:A,set:I};function A(M){return b.get(ol(M,e,t))}function I(M,C){const O=ol(M,e,t);if(b.has(O))return;b.set(O,C);const U=i(C),K=U&&R(O,U);let Z=O;for(;Z!==K;){const V=ai(Z);if(V===Z||b.has(V))break;b.set(V,C),Z=V}}function R(M,C){const O=ol(ai(C),e,t);let U=0;const K=Math.min(M.length,O.length);for(;U<K&&M.charCodeAt(U)===O.charCodeAt(U);)U++;if(U===M.length&&(O.length===U||O[U]===al))return M;const Z=ph(M);if(U<Z)return;const V=M.lastIndexOf(al,U-1);if(V!==-1)return M.substr(0,Math.max(V,Z))}}}function XIe(e,t,r,i,o,s){s??(s=new Map);const l=tje(e,t,r,s),u=ije(e,t,r,o,s);return i??(i=eje(e,t)),{...i,...l,...u,clear:p,update:m,getPackageJsonInfoCache:()=>i,clearAllExceptPackageJsonInfoCache:h,optionsToRedirectsKey:s};function p(){h(),i.clear()}function h(){l.clear(),u.clear()}function m(b){l.update(b),u.update(b)}}function cD(e,t,r,i,o){const s=XIe(e,t,r,i,nje,o);return s.getOrCreateCacheForModuleName=(l,u,p)=>s.getOrCreateCacheForNonRelativeName(l,u,p),s}function zF(e,t,r,i,o){return XIe(e,t,r,i,rje,o)}function Lq(e){return{moduleResolution:2,traceResolution:e.traceResolution}}function BF(e,t,r,i,o){return uD(e,t,Lq(r),i,o)}function YIe(e,t,r,i){const o=ai(t);return r.getFromDirectoryCache(e,i,o,void 0)}function uD(e,t,r,i,o,s,l){var u,p,h;const m=Jg(r,i);s&&(r=s.commandLine.options),m&&(bo(i,f.Resolving_module_0_from_1,e,t),s&&bo(i,f.Using_compiler_options_of_project_reference_redirect_0,s.sourceFile.fileName));const b=ai(t);let A=o==null?void 0:o.getFromDirectoryCache(e,l,b,s);if(A)m&&bo(i,f.Resolution_for_module_0_was_found_in_cache_from_location_1,e,b);else{let I=r.moduleResolution;switch(I===void 0?(I=md(r),m&&bo(i,f.Module_resolution_kind_is_not_specified_using_0,qx[I])):m&&bo(i,f.Explicitly_specified_module_resolution_kind_Colon_0,qx[I]),(u=ad)==null||u.logStartResolveModule(e),I){case 3:A=lje(e,t,r,i,o,s,l);break;case 99:A=cje(e,t,r,i,o,s,l);break;case 2:A=Qse(e,t,r,i,o,s,l?ib(r,l):void 0);break;case 1:A=rle(e,t,r,i,o,s);break;case 100:A=$se(e,t,r,i,o,s,l?ib(r,l):void 0);break;default:return N.fail(`Unexpected moduleResolution: ${I}`)}A&&A.resolvedModule&&((p=ad)==null||p.logInfoEvent(`Module "${e}" resolved to "${A.resolvedModule.resolvedFileName}"`)),(h=ad)==null||h.logStopResolveModule(A&&A.resolvedModule?""+A.resolvedModule.resolvedFileName:"null"),o&&!o.isReadonly&&(o.getOrCreateCacheForDirectory(b,s).set(e,l,A),Yc(e)||o.getOrCreateCacheForNonRelativeName(e,l,s).set(b,A))}return m&&(A.resolvedModule?A.resolvedModule.packageId?bo(i,f.Module_name_0_was_successfully_resolved_to_1_with_Package_ID_2,e,A.resolvedModule.resolvedFileName,By(A.resolvedModule.packageId)):bo(i,f.Module_name_0_was_successfully_resolved_to_1,e,A.resolvedModule.resolvedFileName):bo(i,f.Module_name_0_was_not_resolved,e)),A}function $Ie(e,t,r,i,o){const s=oje(e,t,i,o);return s?s.value:Yc(t)?aje(e,t,r,i,o):sje(e,t,i,o)}function oje(e,t,r,i){var o;const{baseUrl:s,paths:l,configFile:u}=i.compilerOptions;if(l&&!Wp(t)){i.traceEnabled&&(s&&bo(i.host,f.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,s,t),bo(i.host,f.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,t));const p=x3(i.compilerOptions,i.host),h=u!=null&&u.configFileSpecs?(o=u.configFileSpecs).pathPatterns||(o.pathPatterns=eW(l)):void 0;return nle(e,t,p,l,h,r,!1,i)}}function aje(e,t,r,i,o){if(!o.compilerOptions.rootDirs)return;o.traceEnabled&&bo(o.host,f.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,t);const s=ga(Qr(r,t));let l,u;for(const p of o.compilerOptions.rootDirs){let h=ga(p);Al(h,al)||(h+=al);const m=uo(s,h)&&(u===void 0||u.length<h.length);o.traceEnabled&&bo(o.host,f.Checking_if_0_is_the_longest_matching_prefix_for_1_2,h,s,m),m&&(u=h,l=p)}if(u){o.traceEnabled&&bo(o.host,f.Longest_matching_prefix_for_0_is_1,s,u);const p=s.substr(u.length);o.traceEnabled&&bo(o.host,f.Loading_0_from_the_root_dir_1_candidate_location_2,p,u,s);const h=i(e,s,!$m(r,o.host),o);if(h)return h;o.traceEnabled&&bo(o.host,f.Trying_other_entries_in_rootDirs);for(const m of o.compilerOptions.rootDirs){if(m===l)continue;const b=Qr(ga(m),p);o.traceEnabled&&bo(o.host,f.Loading_0_from_the_root_dir_1_candidate_location_2,p,m,b);const A=ai(b),I=i(e,b,!$m(A,o.host),o);if(I)return I}o.traceEnabled&&bo(o.host,f.Module_resolution_using_rootDirs_has_failed)}}function sje(e,t,r,i){const{baseUrl:o}=i.compilerOptions;if(!o)return;i.traceEnabled&&bo(i.host,f.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,o,t);const s=ga(Qr(o,t));return i.traceEnabled&&bo(i.host,f.Resolving_module_name_0_relative_to_base_url_1_2,t,o,s),r(e,s,!$m(ai(s),i.host),i)}function Yse(e,t,r){const{resolvedModule:i,failedLookupLocations:o}=uje(e,t,r);if(!i)throw new Error(`Could not resolve JS module '${e}' starting at '${t}'. Looked in: ${o==null?void 0:o.join(", ")}`);return i.resolvedFileName}function lje(e,t,r,i,o,s,l){return QIe(30,e,t,r,i,o,s,l)}function cje(e,t,r,i,o,s,l){return QIe(30,e,t,r,i,o,s,l)}function QIe(e,t,r,i,o,s,l,u,p){const h=ai(r),m=u===99?32:0;let b=i.noDtsResolution?3:7;return A0(i)&&(b|=8),Iw(e|m,t,h,i,o,s,b,!1,l,p)}function uje(e,t,r){return Iw(0,e,t,{moduleResolution:2,allowJs:!0},r,void 0,2,!1,void 0,void 0)}function $se(e,t,r,i,o,s,l){const u=ai(t);let p=r.noDtsResolution?3:7;return A0(r)&&(p|=8),Iw(Jse(r),e,u,r,i,o,p,!1,s,l)}function Qse(e,t,r,i,o,s,l,u){let p;return u?p=8:r.noDtsResolution?(p=3,A0(r)&&(p|=8)):p=A0(r)?15:7,Iw(l?30:0,e,ai(t),r,i,o,p,!!u,s,l)}function Zse(e,t,r){return Iw(30,e,ai(t),{moduleResolution:99},r,void 0,8,!0,void 0,void 0)}function Iw(e,t,r,i,o,s,l,u,p,h){var m,b,A,I,R;const M=Jg(i,o),C=[],O=[],U=md(i);h??(h=ib(i,U===100||U===2?void 0:e&32?99:1));const K=[],Z={compilerOptions:i,host:o,traceEnabled:M,failedLookupLocations:C,affectingLocations:O,packageJsonInfoCache:s,features:e,conditions:h??et,requestContainingDirectory:r,reportDiagnostic:ne=>void K.push(ne),isConfigLookup:u,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1};M&&KA(U)&&bo(o,f.Resolving_in_0_mode_with_conditions_1,e&32?"ESM":"CJS",Z.conditions.map(ne=>`'${ne}'`).join(", "));let V;if(U===2){const ne=l&5,he=l&-6;V=ne&&G(ne,Z)||he&&G(he,Z)||void 0}else V=G(l,Z);let se;if(Z.resolvedPackageDirectory&&!u&&!Yc(t)){const ne=(V==null?void 0:V.value)&&l&5&&!ixe(5,V.value.resolved.extension);if((m=V==null?void 0:V.value)!=null&&m.isExternalLibraryImport&&ne&&e&8&&(h!=null&&h.includes("import"))){ob(Z,f.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);const he={...Z,features:Z.features&-9,reportDiagnostic:$a},ye=G(l&5,he);(b=ye==null?void 0:ye.value)!=null&&b.isExternalLibraryImport&&(se=ye.value.resolved.path)}else if((!(V!=null&&V.value)||ne)&&U===2){ob(Z,f.Resolution_of_non_relative_name_failed_trying_with_moduleResolution_bundler_to_see_if_project_may_need_configuration_update);const he={...Z.compilerOptions,moduleResolution:100},ye={...Z,compilerOptions:he,features:30,conditions:ib(he),reportDiagnostic:$a},$=G(l&5,ye);(A=$==null?void 0:$.value)!=null&&A.isExternalLibraryImport&&(se=$.value.resolved.path)}}return jIe(t,(I=V==null?void 0:V.value)==null?void 0:I.resolved,(R=V==null?void 0:V.value)==null?void 0:R.isExternalLibraryImport,C,O,K,Z,s,se);function G(ne,he){const $=$Ie(ne,t,r,(Y,oe,fe,Ne)=>kq(Y,oe,fe,Ne,!0),he);if($)return af({resolved:$,isExternalLibraryImport:L0($.path)});if(Yc(t)){const{path:Y,parts:oe}=ZIe(r,t),fe=kq(ne,Y,!1,he,!0);return fe&&af({resolved:fe,isExternalLibraryImport:Nr(oe,"node_modules")})}else{let Y;if(e&2&&uo(t,"#")&&(Y=_je(ne,t,r,he,s,p)),!Y&&e&4&&(Y=mje(ne,t,r,he,s,p)),!Y){if(t.includes(":")){M&&bo(o,f.Skipping_module_0_that_looks_like_an_absolute_URI_target_file_types_Colon_1,t,wF(ne));return}M&&bo(o,f.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1,t,wF(ne)),Y=sxe(ne,t,r,he,s,p)}return ne&4&&(Y??(Y=fxe(t,he))),Y&&{value:Y.value&&{resolved:Y.value,isExternalLibraryImport:!0}}}}}function ZIe(e,t){const r=Qr(e,t),i=zc(r),o=tl(i);return{path:o==="."||o===".."?Bc(ga(r)):ga(r),parts:i}}function dje(e,t,r){if(!t.realpath)return e;const i=ga(t.realpath(e));return r&&bo(t,f.Resolving_real_path_for_0_result_1,e,i),i}function kq(e,t,r,i,o){if(i.traceEnabled&&bo(i.host,f.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_types_Colon_1,t,wF(e)),!kv(t)){if(!r){const l=ai(t);$m(l,i.host)||(i.traceEnabled&&bo(i.host,f.Directory_0_does_not_exist_skipping_all_lookups_in_it,l),r=!0)}const s=dD(e,t,r,i);if(s){const l=o?xw(s.path):void 0,u=l?p1(l,!1,i):void 0;return SI(u,s)}}if(r||$m(t,i.host)||(i.traceEnabled&&bo(i.host,f.Directory_0_does_not_exist_skipping_all_lookups_in_it,t),r=!0),!(i.features&32))return tle(e,t,r,i,o)}function L0(e){return e.includes(xh)}function xw(e,t){const r=ga(e),i=r.lastIndexOf(xh);if(i===-1)return;const o=i+xh.length;let s=exe(r,o,t);return r.charCodeAt(o)===64&&(s=exe(r,s,t)),r.slice(0,s)}function exe(e,t,r){const i=e.indexOf(al,t+1);return i===-1?r?e.length:t:i}function ele(e,t,r,i){return Dq(dD(e,t,r,i))}function dD(e,t,r,i){const o=txe(e,t,r,i);if(o)return o;if(!(i.features&32)){const s=nxe(t,e,"",r,i);if(s)return s}}function txe(e,t,r,i){if(!ic(t).includes("."))return;let s=Id(t);s===t&&(s=t.substring(0,t.lastIndexOf(".")));const l=t.substring(s.length);return i.traceEnabled&&bo(i.host,f.File_name_0_has_a_1_extension_stripping_it,t,l),nxe(s,e,l,r,i)}function wq(e,t,r,i){return e&1&&Tc(t,Lk)||e&4&&Tc(t,Mk)?Oq(t,r,i)!==void 0?{path:t,ext:k3(t),resolvedUsingTsExtension:void 0}:void 0:i.isConfigLookup&&e===8&&Il(t,".json")?Oq(t,r,i)!==void 0?{path:t,ext:".json",resolvedUsingTsExtension:void 0}:void 0:txe(e,t,r,i)}function nxe(e,t,r,i,o){if(!i){const l=ai(e);l&&(i=!$m(l,o.host))}switch(r){case".mjs":case".mts":case".d.mts":return t&1&&s(".mts",r===".mts"||r===".d.mts")||t&4&&s(".d.mts",r===".mts"||r===".d.mts")||t&2&&s(".mjs")||void 0;case".cjs":case".cts":case".d.cts":return t&1&&s(".cts",r===".cts"||r===".d.cts")||t&4&&s(".d.cts",r===".cts"||r===".d.cts")||t&2&&s(".cjs")||void 0;case".json":return t&4&&s(".d.json.ts")||t&8&&s(".json")||void 0;case".tsx":case".jsx":return t&1&&(s(".tsx",r===".tsx")||s(".ts",r===".tsx"))||t&4&&s(".d.ts",r===".tsx")||t&2&&(s(".jsx")||s(".js"))||void 0;case".ts":case".d.ts":case".js":case"":return t&1&&(s(".ts",r===".ts"||r===".d.ts")||s(".tsx",r===".ts"||r===".d.ts"))||t&4&&s(".d.ts",r===".ts"||r===".d.ts")||t&2&&(s(".js")||s(".jsx"))||o.isConfigLookup&&s(".json")||void 0;default:return t&4&&!Su(e+r)&&s(`.d${r}.ts`)||void 0}function s(l,u){const p=Oq(e+l,i,o);return p===void 0?void 0:{path:p,ext:l,resolvedUsingTsExtension:!o.candidateIsFromPackageJsonField&&u}}}function Oq(e,t,r){var i;if(!((i=r.compilerOptions.moduleSuffixes)!=null&&i.length))return rxe(e,t,r);const o=jg(e)??"",s=o?Tk(e,o):e;return Ue(r.compilerOptions.moduleSuffixes,l=>rxe(s+l+o,t,r))}function rxe(e,t,r){var i;if(!t){if(r.host.fileExists(e))return r.traceEnabled&&bo(r.host,f.File_0_exists_use_it_as_a_name_resolution_result,e),e;r.traceEnabled&&bo(r.host,f.File_0_does_not_exist,e)}(i=r.failedLookupLocations)==null||i.push(e)}function tle(e,t,r,i,o=!0){const s=o?p1(t,r,i):void 0,l=s&&s.contents.packageJsonContent,u=s&&GF(s,i);return SI(s,Fq(e,t,r,i,l,u))}function Wq(e,t,r,i,o){if(!o&&e.contents.resolvedEntrypoints!==void 0)return e.contents.resolvedEntrypoints;let s;const l=5|(o?2:0),u=Jse(t),p=Rw(i==null?void 0:i.getPackageJsonInfoCache(),r,t);p.conditions=ib(t),p.requestContainingDirectory=e.packageDirectory;const h=Fq(l,e.packageDirectory,!1,p,e.contents.packageJsonContent,GF(e,p));if(s=xn(s,h==null?void 0:h.path),u&8&&e.contents.packageJsonContent.exports){const m=DE([ib(t,99),ib(t,1)],Km);for(const b of m){const A={...p,failedLookupLocations:[],conditions:b,host:r},I=pje(e,e.contents.packageJsonContent.exports,A,l);if(I)for(const R of I)s=Mg(s,R.path)}}return e.contents.resolvedEntrypoints=s||!1}function pje(e,t,r,i){let o;if(To(t))for(const l of t)s(l);else if(typeof t=="object"&&t!==null&&VF(t))for(const l in t)s(t[l]);else s(t);return o;function s(l){var u,p;if(typeof l=="string"&&uo(l,"./"))if(l.includes("*")&&r.host.readDirectory){if(l.indexOf("*")!==l.lastIndexOf("*"))return!1;r.host.readDirectory(e.packageDirectory,qVe(i),void 0,[ire($A(l,"**/*"),".*")]).forEach(h=>{o=Mg(o,{path:h,ext:Jx(h),resolvedUsingTsExtension:void 0})})}else{const h=zc(l).slice(2);if(h.includes("..")||h.includes(".")||h.includes("node_modules"))return!1;const m=Qr(e.packageDirectory,l),b=go(m,(p=(u=r.host).getCurrentDirectory)==null?void 0:p.call(u)),A=wq(i,b,!1,r);if(A)return o=Mg(o,A,(I,R)=>I.path===R.path),!0}else if(Array.isArray(l)){for(const h of l)if(s(h))return!0}else if(typeof l=="object"&&l!==null)return Ue(Xh(l),h=>{if(h==="default"||Nr(r.conditions,h)||Cw(r.conditions,h))return s(l[h]),!0})}}function Rw(e,t,r){return{host:t,compilerOptions:r,traceEnabled:Jg(r,t),failedLookupLocations:void 0,affectingLocations:void 0,packageJsonInfoCache:e,features:0,conditions:et,requestContainingDirectory:void 0,reportDiagnostic:$a,isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1}}function Dw(e,t){const r=zc(e);for(r.pop();r.length>0;){const i=p1(Cy(r),!1,t);if(i)return i;r.pop()}}function GF(e,t){return e.contents.versionPaths===void 0&&(e.contents.versionPaths=$Ve(e.contents.packageJsonContent,t)||!1),e.contents.versionPaths||void 0}function p1(e,t,r){var i,o,s,l,u,p;const{host:h,traceEnabled:m}=r,b=Qr(e,"package.json");if(t){(i=r.failedLookupLocations)==null||i.push(b);return}const A=(o=r.packageJsonInfoCache)==null?void 0:o.getPackageJsonInfo(b);if(A!==void 0){if(FF(A))return m&&bo(h,f.File_0_exists_according_to_earlier_cached_lookups,b),(s=r.affectingLocations)==null||s.push(b),A.packageDirectory===e?A:{packageDirectory:e,contents:A.contents};A.directoryExists&&m&&bo(h,f.File_0_does_not_exist_according_to_earlier_cached_lookups,b),(l=r.failedLookupLocations)==null||l.push(b);return}const I=$m(e,h);if(I&&h.fileExists(b)){const R=jC(b,h);m&&bo(h,f.Found_package_json_at_0,b);const M={packageDirectory:e,contents:{packageJsonContent:R,versionPaths:void 0,resolvedEntrypoints:void 0}};return r.packageJsonInfoCache&&!r.packageJsonInfoCache.isReadonly&&r.packageJsonInfoCache.setPackageJsonInfo(b,M),(u=r.affectingLocations)==null||u.push(b),M}else I&&m&&bo(h,f.File_0_does_not_exist,b),r.packageJsonInfoCache&&!r.packageJsonInfoCache.isReadonly&&r.packageJsonInfoCache.setPackageJsonInfo(b,{packageDirectory:e,directoryExists:I}),(p=r.failedLookupLocations)==null||p.push(b)}function Fq(e,t,r,i,o,s){let l;o&&(i.isConfigLookup?l=KVe(o,t,i):l=e&4&&JVe(o,t,i)||e&7&&XVe(o,t,i)||void 0);const u=(A,I,R,M)=>{const C=wq(A,I,R,M);if(C)return Dq(C);const O=A===4?5:A,U=M.features,K=M.candidateIsFromPackageJsonField;M.candidateIsFromPackageJsonField=!0,(o==null?void 0:o.type)!=="module"&&(M.features&=-33);const Z=kq(O,I,R,M,!1);return M.features=U,M.candidateIsFromPackageJsonField=K,Z},p=l?!$m(ai(l),i.host):void 0,h=r||!$m(t,i.host),m=Qr(t,i.isConfigLookup?"tsconfig":"index");if(s&&(!l||bm(t,l))){const A=Em(t,l||m,!1);i.traceEnabled&&bo(i.host,f.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,s.version,Re,A);const I=nle(e,A,t,s.paths,void 0,u,p||h,i);if(I)return VIe(I.value)}const b=l&&VIe(u(e,l,p,i));if(b)return b;if(!(i.features&32))return dD(e,m,h,i)}function ixe(e,t){return e&2&&(t===".js"||t===".jsx"||t===".mjs"||t===".cjs")||e&1&&(t===".ts"||t===".tsx"||t===".mts"||t===".cts")||e&4&&(t===".d.ts"||t===".d.mts"||t===".d.cts")||e&8&&t===".json"||!1}function Nw(e){let t=e.indexOf(al);return e[0]==="@"&&(t=e.indexOf(al,t+1)),t===-1?{packageName:e,rest:""}:{packageName:e.slice(0,t),rest:e.slice(t+1)}}function VF(e){return Zn(Xh(e),t=>uo(t,"."))}function fje(e){return!bt(Xh(e),t=>uo(t,"."))}function mje(e,t,r,i,o,s){var l,u;const p=go(Qr(r,"dummy"),(u=(l=i.host).getCurrentDirectory)==null?void 0:u.call(l)),h=Dw(p,i);if(!h||!h.contents.packageJsonContent.exports||typeof h.contents.packageJsonContent.name!="string")return;const m=zc(t),b=zc(h.contents.packageJsonContent.name);if(!Zn(b,(C,O)=>m[O]===C))return;const A=m.slice(b.length),I=Me(A)?`.${al}${A.join(al)}`:".";if(Xy(i.compilerOptions)&&!L0(r))return zq(h,e,I,i,o,s);const R=e&5,M=e&-6;return zq(h,R,I,i,o,s)||zq(h,M,I,i,o,s)}function zq(e,t,r,i,o,s){if(e.contents.packageJsonContent.exports){if(r==="."){let l;if(typeof e.contents.packageJsonContent.exports=="string"||Array.isArray(e.contents.packageJsonContent.exports)||typeof e.contents.packageJsonContent.exports=="object"&&fje(e.contents.packageJsonContent.exports)?l=e.contents.packageJsonContent.exports:xs(e.contents.packageJsonContent.exports,".")&&(l=e.contents.packageJsonContent.exports["."]),l)return axe(t,i,o,s,r,e,!1)(l,"",!1,".")}else if(VF(e.contents.packageJsonContent.exports)){if(typeof e.contents.packageJsonContent.exports!="object")return i.traceEnabled&&bo(i.host,f.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,r,e.packageDirectory),af(void 0);const l=oxe(t,i,o,s,r,e.contents.packageJsonContent.exports,e,!1);if(l)return l}return i.traceEnabled&&bo(i.host,f.Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1,r,e.packageDirectory),af(void 0)}}function _je(e,t,r,i,o,s){var l,u;if(t==="#"||uo(t,"#/"))return i.traceEnabled&&bo(i.host,f.Invalid_import_specifier_0_has_no_possible_resolutions,t),af(void 0);const p=go(Qr(r,"dummy"),(u=(l=i.host).getCurrentDirectory)==null?void 0:u.call(l)),h=Dw(p,i);if(!h)return i.traceEnabled&&bo(i.host,f.Directory_0_has_no_containing_package_json_scope_Imports_will_not_resolve,p),af(void 0);if(!h.contents.packageJsonContent.imports)return i.traceEnabled&&bo(i.host,f.package_json_scope_0_has_no_imports_defined,h.packageDirectory),af(void 0);const m=oxe(e,i,o,s,t,h.contents.packageJsonContent.imports,h,!0);return m||(i.traceEnabled&&bo(i.host,f.Import_specifier_0_does_not_exist_in_package_json_scope_at_path_1,t,h.packageDirectory),af(void 0))}function Bq(e,t){const r=e.indexOf("*"),i=t.indexOf("*"),o=r===-1?e.length:r+1,s=i===-1?t.length:i+1;return o>s?-1:s>o||r===-1?1:i===-1||e.length>t.length?-1:t.length>e.length?1:0}function oxe(e,t,r,i,o,s,l,u){const p=axe(e,t,r,i,o,l,u);if(!Al(o,al)&&!o.includes("*")&&xs(s,o)){const b=s[o];return p(b,"",!1,o)}const h=uS(nr(Xh(s),b=>b.includes("*")||Al(b,"/")),Bq);for(const b of h)if(t.features&16&&m(b,o)){const A=s[b],I=b.indexOf("*"),R=o.substring(b.substring(0,I).length,o.length-(b.length-1-I));return p(A,R,!0,b)}else if(Al(b,"*")&&uo(o,b.substring(0,b.length-1))){const A=s[b],I=o.substring(b.length-1);return p(A,I,!0,b)}else if(uo(o,b)){const A=s[b],I=o.substring(b.length);return p(A,I,!1,b)}function m(b,A){if(Al(b,"*"))return!1;const I=b.indexOf("*");return I===-1?!1:uo(A,b.substring(0,I))&&Al(A,b.substring(I+1))}}function axe(e,t,r,i,o,s,l){return u;function u(p,h,m,b){if(typeof p=="string"){if(!m&&h.length>0&&!Al(p,"/"))return t.traceEnabled&&bo(t.host,f.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,s.packageDirectory,o),af(void 0);if(!uo(p,"./")){if(l&&!uo(p,"../")&&!uo(p,"/")&&!fp(p)){const V=m?p.replace(/\*/g,h):p+h;ob(t,f.Using_0_subpath_1_with_target_2,"imports",b,V),ob(t,f.Resolving_module_0_from_1,V,s.packageDirectory+"/");const se=Iw(t.features,V,s.packageDirectory+"/",t.compilerOptions,t.host,r,e,!1,i,t.conditions);return af(se.resolvedModule?{path:se.resolvedModule.resolvedFileName,extension:se.resolvedModule.extension,packageId:se.resolvedModule.packageId,originalPath:se.resolvedModule.originalPath,resolvedUsingTsExtension:se.resolvedModule.resolvedUsingTsExtension}:void 0)}return t.traceEnabled&&bo(t.host,f.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,s.packageDirectory,o),af(void 0)}const C=(Wp(p)?zc(p).slice(1):zc(p)).slice(1);if(C.includes("..")||C.includes(".")||C.includes("node_modules"))return t.traceEnabled&&bo(t.host,f.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,s.packageDirectory,o),af(void 0);const O=Qr(s.packageDirectory,p),U=zc(h);if(U.includes("..")||U.includes(".")||U.includes("node_modules"))return t.traceEnabled&&bo(t.host,f.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,s.packageDirectory,o),af(void 0);t.traceEnabled&&bo(t.host,f.Using_0_subpath_1_with_target_2,l?"imports":"exports",b,m?p.replace(/\*/g,h):p+h);const K=A(m?O.replace(/\*/g,h):O+h),Z=R(K,h,Qr(s.packageDirectory,"package.json"),l);return Z||af(SI(s,wq(e,K,!1,t)))}else if(typeof p=="object"&&p!==null)if(Array.isArray(p)){if(!Me(p))return t.traceEnabled&&bo(t.host,f.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,s.packageDirectory,o),af(void 0);for(const M of p){const C=u(M,h,m,b);if(C)return C}}else{ob(t,f.Entering_conditional_exports);for(const M of Xh(p))if(M==="default"||t.conditions.includes(M)||Cw(t.conditions,M)){ob(t,f.Matched_0_condition_1,l?"imports":"exports",M);const C=p[M],O=u(C,h,m,b);if(O)return ob(t,f.Resolved_under_condition_0,M),ob(t,f.Exiting_conditional_exports),O;ob(t,f.Failed_to_resolve_under_condition_0,M)}else ob(t,f.Saw_non_matching_condition_0,M);ob(t,f.Exiting_conditional_exports);return}else if(p===null)return t.traceEnabled&&bo(t.host,f.package_json_scope_0_explicitly_maps_specifier_1_to_null,s.packageDirectory,o),af(void 0);return t.traceEnabled&&bo(t.host,f.package_json_scope_0_has_invalid_type_for_target_of_specifier_1,s.packageDirectory,o),af(void 0);function A(M){var C,O;return M===void 0?M:go(M,(O=(C=t.host).getCurrentDirectory)==null?void 0:O.call(C))}function I(M,C){return Bc(Qr(M,C))}function R(M,C,O,U){var K,Z,V,se;if(!t.isConfigLookup&&(t.compilerOptions.declarationDir||t.compilerOptions.outDir)&&!M.includes("/node_modules/")&&(!t.compilerOptions.configFile||bm(s.packageDirectory,A(t.compilerOptions.configFile.fileName),!Gq(t)))){const ne=Gv({useCaseSensitiveFileNames:()=>Gq(t)}),he=[];if(t.compilerOptions.rootDir||t.compilerOptions.composite&&t.compilerOptions.configFilePath){const ye=A($P(t.compilerOptions,()=>[],((Z=(K=t.host).getCurrentDirectory)==null?void 0:Z.call(K))||"",ne));he.push(ye)}else if(t.requestContainingDirectory){const ye=A(Qr(t.requestContainingDirectory,"index.ts")),$=A($P(t.compilerOptions,()=>[ye,A(O)],((se=(V=t.host).getCurrentDirectory)==null?void 0:se.call(V))||"",ne));he.push($);let Y=Bc($);for(;Y&&Y.length>1;){const oe=zc(Y);oe.pop();const fe=Cy(oe);he.unshift(fe),Y=Bc(fe)}}he.length>1&&t.reportDiagnostic(Hl(U?f.The_project_root_is_ambiguous_but_is_required_to_resolve_import_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate:f.The_project_root_is_ambiguous_but_is_required_to_resolve_export_map_entry_0_in_file_1_Supply_the_rootDir_compiler_option_to_disambiguate,C===""?".":C,O));for(const ye of he){const $=G(ye);for(const Y of $)if(bm(Y,M,!Gq(t))){const oe=M.slice(Y.length+1),fe=Qr(ye,oe),Ne=[".mjs",".cjs",".js",".json",".d.mts",".d.cts",".d.ts"];for(const pe of Ne)if(Il(fe,pe)){const ie=roe(fe);for(const ve of ie){if(!ixe(e,ve))continue;const Le=$M(fe,ve,pe,!Gq(t));if(t.host.fileExists(Le))return af(SI(s,wq(e,Le,!1,t)))}}}}}return;function G(ne){var he,ye;const $=t.compilerOptions.configFile?((ye=(he=t.host).getCurrentDirectory)==null?void 0:ye.call(he))||"":ne,Y=[];return t.compilerOptions.declarationDir&&Y.push(A(I($,t.compilerOptions.declarationDir))),t.compilerOptions.outDir&&t.compilerOptions.outDir!==t.compilerOptions.declarationDir&&Y.push(A(I($,t.compilerOptions.outDir))),Y}}}}function Cw(e,t){if(!e.includes("types")||!uo(t,"types@"))return!1;const r=GM.tryParse(t.substring(6));return r?r.test(Re):!1}function sxe(e,t,r,i,o,s){return lxe(e,t,r,i,!1,o,s)}function hje(e,t,r){return lxe(4,e,t,r,!0,void 0,void 0)}function lxe(e,t,r,i,o,s,l){const u=i.features===0?void 0:i.features&32?99:1,p=e&5,h=e&-6;if(p){ob(i,f.Searching_all_ancestor_node_modules_directories_for_preferred_extensions_Colon_0,wF(p));const b=m(p);if(b)return b}if(h&&!o)return ob(i,f.Searching_all_ancestor_node_modules_directories_for_fallback_extensions_Colon_0,wF(h)),m(h);function m(b){return Sm(Lu(r),A=>{if(ic(A)!=="node_modules"){const I=pxe(s,t,u,A,l,i);return I||af(cxe(b,t,A,i,o,s,l))}})}}function cxe(e,t,r,i,o,s,l){const u=Qr(r,"node_modules"),p=$m(u,i.host);if(!p&&i.traceEnabled&&bo(i.host,f.Directory_0_does_not_exist_skipping_all_lookups_in_it,u),!o){const h=uxe(e,t,u,p,i,s,l);if(h)return h}if(e&4){const h=Qr(u,"@types");let m=p;return p&&!$m(h,i.host)&&(i.traceEnabled&&bo(i.host,f.Directory_0_does_not_exist_skipping_all_lookups_in_it,h),m=!1),uxe(4,dxe(t,i),h,m,i,s,l)}}function uxe(e,t,r,i,o,s,l){var u,p;const h=ga(Qr(r,t)),{packageName:m,rest:b}=Nw(t),A=Qr(r,m);let I,R=p1(h,!i,o);if(b!==""&&R&&(!(o.features&8)||!xs(((u=I=p1(A,!i,o))==null?void 0:u.contents.packageJsonContent)??et,"exports"))){const O=dD(e,h,!i,o);if(O)return Dq(O);const U=Fq(e,h,!i,o,R.contents.packageJsonContent,GF(R,o));return SI(R,U)}const M=(O,U,K,Z)=>{let V=(b||!(Z.features&32))&&dD(O,U,K,Z)||Fq(O,U,K,Z,R&&R.contents.packageJsonContent,R&&GF(R,Z));return!V&&R&&(R.contents.packageJsonContent.exports===void 0||R.contents.packageJsonContent.exports===null)&&Z.features&32&&(V=dD(O,Qr(U,"index.js"),K,Z)),SI(R,V)};if(b!==""&&(R=I??p1(A,!i,o)),R&&(o.resolvedPackageDirectory=!0),R&&R.contents.packageJsonContent.exports&&o.features&8)return(p=zq(R,e,Qr(".",b),o,s,l))==null?void 0:p.value;const C=b!==""&&R?GF(R,o):void 0;if(C){o.traceEnabled&&bo(o.host,f.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,C.version,Re,b);const O=i&&$m(A,o.host),U=nle(e,b,A,C.paths,void 0,M,!O,o);if(U)return U.value}return M(e,h,!i,o)}function nle(e,t,r,i,o,s,l,u){o||(o=eW(i));const p=zU(o,t);if(p){const h=Po(p)?void 0:Fne(p,t),m=Po(p)?p:Wne(p);return u.traceEnabled&&bo(u.host,f.Module_name_0_matched_pattern_1,t,m),{value:Ue(i[m],A=>{const I=h?$A(A,h):A,R=ga(Qr(r,I));u.traceEnabled&&bo(u.host,f.Trying_substitution_0_candidate_module_location_Colon_1,A,I);const M=jg(A);if(M!==void 0){const C=Oq(R,l,u);if(C!==void 0)return Dq({path:C,ext:M,resolvedUsingTsExtension:void 0})}return s(e,R,l||!$m(ai(R),u.host),u)})}}}function dxe(e,t){const r=pD(e);return t.traceEnabled&&r!==e&&bo(t.host,f.Scoped_package_detected_looking_in_0,r),r}function jF(e){return`@types/${pD(e)}`}function pD(e){if(uo(e,"@")){const t=e.replace(al,jq);if(t!==e)return t.slice(1)}return e}function FP(e){const t=QN(e,"@types/");return t!==e?Pw(t):e}function Pw(e){return e.includes(jq)?"@"+e.replace(jq,al):e}function pxe(e,t,r,i,o,s){const l=e&&e.getFromNonRelativeNameCache(t,r,i,o);if(l)return s.traceEnabled&&bo(s.host,f.Resolution_for_module_0_was_found_in_cache_from_location_1,t,i),s.resultFromCache=l,{value:l.resolvedModule&&{path:l.resolvedModule.resolvedFileName,originalPath:l.resolvedModule.originalPath||!0,extension:l.resolvedModule.extension,packageId:l.resolvedModule.packageId,resolvedUsingTsExtension:l.resolvedModule.resolvedUsingTsExtension}}}function rle(e,t,r,i,o,s){const l=Jg(r,i),u=[],p=[],h=ai(t),m=[],b={compilerOptions:r,host:i,traceEnabled:l,failedLookupLocations:u,affectingLocations:p,packageJsonInfoCache:o,features:0,conditions:[],requestContainingDirectory:h,reportDiagnostic:R=>void m.push(R),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},A=I(5)||I(2|(r.resolveJsonModule?8:0));return jIe(e,A&&A.value,(A==null?void 0:A.value)&&L0(A.value.path),u,p,m,b,o);function I(R){const M=$Ie(R,e,h,ele,b);if(M)return{value:M};if(Yc(e)){const C=ga(Qr(h,e));return af(ele(R,C,!1,b))}else{const C=Sm(h,O=>{const U=pxe(o,e,void 0,O,s,b);if(U)return U;const K=ga(Qr(O,e));return af(ele(R,K,!1,b))});if(C)return C;if(R&5){let O=hje(e,h,b);return R&4&&(O??(O=fxe(e,b))),O}}}}function fxe(e,t){if(t.compilerOptions.typeRoots)for(const r of t.compilerOptions.typeRoots){const i=JIe(r,e,t),o=$m(r,t.host);!o&&t.traceEnabled&&bo(t.host,f.Directory_0_does_not_exist_skipping_all_lookups_in_it,r);const s=dD(4,i,!o,t);if(s){const u=xw(s.path),p=u?p1(u,!1,t):void 0;return af(SI(p,s))}const l=tle(4,i,!o,t);if(l)return af(l)}}function fD(e,t){return!!e.allowImportingTsExtensions||t&&Su(t)}function ile(e,t,r,i,o,s){const l=Jg(r,i);l&&bo(i,f.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,t,e,o);const u=[],p=[],h=[],m={compilerOptions:r,host:i,traceEnabled:l,failedLookupLocations:u,affectingLocations:p,packageJsonInfoCache:s,features:0,conditions:[],requestContainingDirectory:void 0,reportDiagnostic:A=>void h.push(A),isConfigLookup:!1,candidateIsFromPackageJsonField:!1,resolvedPackageDirectory:!1},b=cxe(4,e,o,m,!1,void 0,void 0);return UIe(b,!0,u,p,h,m.resultFromCache,void 0)}function af(e){return e!==void 0?{value:e}:void 0}function ob(e,t,...r){e.traceEnabled&&bo(e.host,t,...r)}function Gq(e){return e.host.useCaseSensitiveFileNames?typeof e.host.useCaseSensitiveFileNames=="boolean"?e.host.useCaseSensitiveFileNames:e.host.useCaseSensitiveFileNames():!0}var ole,mxe,Vq,xh,jq,gje=T({"src/compiler/moduleNameResolver.ts"(){ra(),mxe=Qr("node_modules","@types"),Vq=(e=>(e[e.None=0]="None",e[e.Imports=2]="Imports",e[e.SelfName=4]="SelfName",e[e.Exports=8]="Exports",e[e.ExportsPatternTrailers=16]="ExportsPatternTrailers",e[e.AllFeatures=30]="AllFeatures",e[e.Node16Default=30]="Node16Default",e[e.NodeNextDefault=30]="NodeNextDefault",e[e.BundlerDefault=30]="BundlerDefault",e[e.EsmMode=32]="EsmMode",e))(Vq||{}),xh="/node_modules/",jq="__"}});function Kg(e,t){return e.body&&!e.body.parent&&(qa(e.body,e),Jy(e.body,!1)),e.body?ale(e.body,t):1}function ale(e,t=new Map){const r=as(e);if(t.has(r))return t.get(r)||0;t.set(r,void 0);const i=vje(e,t);return t.set(r,i),i}function vje(e,t){switch(e.kind){case 264:case 265:return 0;case 266:if(FE(e))return 2;break;case 272:case 271:if(!Zr(e,32))return 0;break;case 278:const r=e;if(!r.moduleSpecifier&&r.exportClause&&r.exportClause.kind===279){let i=0;for(const o of r.exportClause.elements){const s=yje(o,t);if(s>i&&(i=s),i===1)return i}return i}break;case 268:{let i=0;return Ho(e,o=>{const s=ale(o,t);switch(s){case 0:return;case 2:i=2;return;case 1:return i=1,!0;default:N.assertNever(s)}}),i}case 267:return Kg(e,t);case 80:if(e.flags&4096)return 0}return 1}function yje(e,t){const r=e.propertyName||e.name;let i=e.parent;for(;i;){if(Xo(i)||O_(i)||$i(i)){const o=i.statements;let s;for(const l of o)if(uL(l,r)){l.parent||(qa(l,i),Jy(l,!1));const u=ale(l,t);if((s===void 0||u>s)&&(s=u),s===1)return s;l.kind===271&&(s=1)}if(s!==void 0)return s}i=i.parent}return 1}function AI(e){return N.attachFlowNodeDebugInfo(e),e}function sle(e,t){var r,i;il("beforeBind"),(r=ad)==null||r.logStartBindFile(""+e.fileName),hxe(e,t),(i=ad)==null||i.logStopBindFile(),il("afterBind"),ef("Bind","beforeBind","afterBind")}function bje(){var e,t,r,i,o,s,l,u,p,h,m,b,A,I,R,M,C,O,U,K,Z,V,se=!1,G=0,ne,he,ye={flags:1},$={flags:1},Y=q();return fe;function oe(F,Te,...st){return $f(jn(F)||e,F,Te,...st)}function fe(F,Te){var st,Jt;e=F,t=Te,r=os(t),V=Ne(e,Te),he=new Set,G=0,ne=lu.getSymbolConstructor(),N.attachFlowNodeDebugInfo(ye),N.attachFlowNodeDebugInfo($),e.locals||((st=sr)==null||st.push(sr.Phase.Bind,"bindSourceFile",{path:e.path},!0),we(e),(Jt=sr)==null||Jt.pop(),e.symbolCount=G,e.classifiableNames=he,uu()),e=void 0,t=void 0,r=void 0,i=void 0,o=void 0,s=void 0,l=void 0,u=void 0,p=void 0,h=!1,m=void 0,b=void 0,A=void 0,I=void 0,R=void 0,M=void 0,C=void 0,U=void 0,K=!1,se=!1,Z=0}function Ne(F,Te){return fd(Te,"alwaysStrict")&&!F.isDeclarationFile?!0:!!F.externalModuleIndicator}function pe(F,Te){return G++,new ne(F,Te)}function ie(F,Te,st){F.flags|=st,Te.symbol=F,F.declarations=Mg(F.declarations,Te),st&1955&&!F.exports&&(F.exports=ua()),st&6240&&!F.members&&(F.members=ua()),F.constEnumOnlyModule&&F.flags&304&&(F.constEnumOnlyModule=!1),st&111551&&YL(F,Te)}function ve(F){if(F.kind===277)return F.isExportEquals?"export=":"default";const Te=Mo(F);if(Te){if(ku(F)){const st=em(Te);return R_(F)?"__global":`"${st}"`}if(Te.kind===167){const st=Te.expression;if(nf(st))return hl(st.text);if(b3(st))return fa(st.operator)+st.operand.text;N.fail("Only computed properties with literal names have declaration names")}if(Ji(Te)){const st=su(F);if(!st)return;const Jt=st.symbol;return sk(Jt,Te.escapedText)}return t_(Te)?YA(Te):N_(Te)?LC(Te):void 0}switch(F.kind){case 176:return"__constructor";case 184:case 179:case 330:return"__call";case 185:case 180:return"__new";case 181:return"__index";case 278:return"__export";case 312:return"export=";case 226:if(Bl(F)===2)return"export=";N.fail("Unknown binary declaration kind");break;case 324:return ER(F)?"__new":"__call";case 169:return N.assert(F.parent.kind===324,"Impossible parameter parent kind",()=>`parent is: ${N.formatSyntaxKind(F.parent.kind)}, expected JSDocFunctionType`),"arg"+F.parent.parameters.indexOf(F)}}function Le(F){return ld(F)?Rs(F.name):Vi(N.checkDefined(ve(F)))}function He(F,Te,st,Jt,rr,oi,$r){N.assert($r||!jy(st));const io=Zr(st,2048)||Ku(st)&&st.name.escapedText==="default",Fa=$r?"__computed":io&&Te?"default":ve(st);let za;if(Fa===void 0)za=pe(0,"__missing");else if(za=F.get(Fa),Jt&2885600&&he.add(Fa),!za)F.set(Fa,za=pe(0,Fa)),oi&&(za.isReplaceableByMethod=!0);else{if(oi&&!za.isReplaceableByMethod)return za;if(za.flags&rr){if(za.isReplaceableByMethod)F.set(Fa,za=pe(0,Fa));else if(!(Jt&3&&za.flags&67108864)){ld(st)&&qa(st.name,st);let Ol=za.flags&2?f.Cannot_redeclare_block_scoped_variable_0:f.Duplicate_identifier_0,fu=!0;(za.flags&384||Jt&384)&&(Ol=f.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations,fu=!1);let Dc=!1;Me(za.declarations)&&(io||za.declarations&&za.declarations.length&&st.kind===277&&!st.isExportEquals)&&(Ol=f.A_module_cannot_have_multiple_default_exports,fu=!1,Dc=!0);const Rp=[];Nm(st)&&zl(st.type)&&Zr(st,32)&&za.flags&2887656&&Rp.push(oe(st,f.Did_you_mean_0,`export type { ${Vi(st.name.escapedText)} }`));const Hd=Mo(st)||st;Ue(za.declarations,(us,km)=>{const wm=Mo(us)||us,Ui=fu?oe(wm,Ol,Le(us)):oe(wm,Ol);e.bindDiagnostics.push(Dc?wa(Ui,oe(Hd,km===0?f.Another_export_default_is_here:f.and_here)):Ui),Dc&&Rp.push(oe(wm,f.The_first_export_default_is_here))});const pb=fu?oe(Hd,Ol,Le(st)):oe(Hd,Ol);e.bindDiagnostics.push(wa(pb,...Rp)),za=pe(0,Fa)}}}return ie(za,st,Jt),za.parent?N.assert(za.parent===Te,"Existing symbol parent should match new one"):za.parent=Te,za}function Ee(F,Te,st){const Jt=!!(c0(F)&32)||De(F);if(Te&2097152)return F.kind===281||F.kind===271&&Jt?He(o.symbol.exports,o.symbol,F,Te,st):(N.assertNode(o,fh),He(o.locals,void 0,F,Te,st));if(Zf(F)&&N.assert(lr(F)),!ku(F)&&(Jt||o.flags&128)){if(!fh(o)||!o.locals||Zr(F,2048)&&!ve(F))return He(o.symbol.exports,o.symbol,F,Te,st);const rr=Te&111551?1048576:0,oi=He(o.locals,void 0,F,rr,st);return oi.exportSymbol=He(o.symbol.exports,o.symbol,F,Te,st),F.localSymbol=oi,oi}else return N.assertNode(o,fh),He(o.locals,void 0,F,Te,st)}function De(F){if(F.parent&&Xl(F)&&(F=F.parent),!Zf(F))return!1;if(!ew(F)&&F.fullName)return!0;const Te=Mo(F);return Te?!!(_k(Te.parent)&&ec(Te.parent)||Ju(Te.parent)&&c0(Te.parent)&32):!1}function Pe(F,Te){const st=o,Jt=s,rr=l;if(Te&1?(F.kind!==219&&(s=o),o=l=F,Te&32&&(o.locals=ua(),ir(o))):Te&2&&(l=F,Te&32&&(l.locals=void 0)),Te&4){const oi=m,$r=b,io=A,Fa=I,za=C,Ol=U,fu=K,Dc=Te&16&&!Zr(F,1024)&&!F.asteriskToken&&!!xS(F)||F.kind===175;Dc||(m=AI({flags:2}),Te&144&&(m.node=F)),I=Dc||F.kind===176||lr(F)&&(F.kind===262||F.kind===218)?Pn():void 0,C=void 0,b=void 0,A=void 0,U=void 0,K=!1,je(F),F.flags&=-5633,!(m.flags&1)&&Te&8&&Yf(F.body)&&(F.flags|=512,K&&(F.flags|=1024),F.endFlowNode=m),F.kind===312&&(F.flags|=Z,F.endFlowNode=m),I&&($t(I,m),m=Mn(I),(F.kind===176||F.kind===175||lr(F)&&(F.kind===262||F.kind===218))&&(F.returnFlowNode=m)),Dc||(m=oi),b=$r,A=io,I=Fa,C=za,U=Ol,K=fu}else Te&64?(h=!1,je(F),N.assertNotNode(F,Ve),F.flags=h?F.flags|256:F.flags&-257):je(F);o=st,s=Jt,l=rr}function We(F){At(F,Te=>Te.kind===262?we(Te):void 0),At(F,Te=>Te.kind!==262?we(Te):void 0)}function At(F,Te=we){F!==void 0&&Ue(F,Te)}function Se(F){Ho(F,we,At)}function je(F){const Te=se;if(se=!1,jt(F)){Se(F),Et(F),se=Te;return}switch(F.kind>=243&&F.kind<=259&&!t.allowUnreachableCode&&(F.flowNode=m),F.kind){case 247:Qi(F);break;case 246:Io(F);break;case 248:ma(F);break;case 249:case 250:Wa(F);break;case 245:Sn(F);break;case 253:case 257:kn(F);break;case 252:case 251:ft(F);break;case 258:Ct(F);break;case 255:le(F);break;case 269:Fe(F);break;case 296:pt(F);break;case 244:j(F);break;case 256:Rt(F);break;case 224:vn(F);break;case 225:fn(F);break;case 226:if(jv(F)){se=Te,_n(F);return}Y(F);break;case 220:Oe(F);break;case 227:Lt(F);break;case 260:_e(F);break;case 211:case 212:Ni(F);break;case 213:Ai(F);break;case 235:Hn(F);break;case 353:case 345:case 347:ke(F);break;case 312:{We(F.statements),we(F.endOfFileToken);break}case 241:case 268:We(F.statements);break;case 208:J(F);break;case 169:me(F);break;case 210:case 209:case 303:case 230:se=Te;default:Se(F);break}Et(F),se=Te}function at(F){switch(F.kind){case 80:case 81:case 110:case 211:case 212:return vt(F);case 213:return $e(F);case 217:if(tD(F))return!1;case 235:return at(F.expression);case 226:return tn(F);case 224:return F.operator===54&&at(F.operand);case 221:return at(F.expression)}return!1}function Gt(F){return GC(F)||(Fr(F)||fI(F)||Gd(F))&&Gt(F.expression)||mr(F)&&F.operatorToken.kind===28&&Gt(F.right)||Qs(F)&&(nf(F.argumentExpression)||Gl(F.argumentExpression))&&Gt(F.expression)||Lc(F)&&Gt(F.left)}function vt(F){return Gt(F)||qu(F)&&vt(F.expression)}function $e(F){if(F.arguments){for(const Te of F.arguments)if(vt(Te))return!0}return!!(F.expression.kind===211&&vt(F.expression.expression))}function It(F,Te){return KR(F)&&rn(F.expression)&&ls(Te)}function tn(F){switch(F.operatorToken.kind){case 64:case 76:case 77:case 78:return vt(F.left);case 35:case 36:case 37:case 38:return rn(F.left)||rn(F.right)||It(F.right,F.left)||It(F.left,F.right)||hC(F.right)&&at(F.left)||hC(F.left)&&at(F.right);case 104:return rn(F.left);case 103:return at(F.right);case 28:return at(F.right)}return!1}function rn(F){switch(F.kind){case 217:return rn(F.expression);case 226:switch(F.operatorToken.kind){case 64:return rn(F.left);case 28:return rn(F.right)}}return vt(F)}function Pn(){return AI({flags:4,antecedents:void 0})}function Xn(){return AI({flags:8,antecedents:void 0})}function hn(F,Te,st){return AI({flags:1024,target:F,antecedents:Te,antecedent:st})}function Qt(F){F.flags|=F.flags&2048?4096:2048}function $t(F,Te){!(Te.flags&1)&&!Nr(F.antecedents,Te)&&((F.antecedents||(F.antecedents=[])).push(Te),Qt(Te))}function _i(F,Te,st){return Te.flags&1?Te:st?(st.kind===112&&F&64||st.kind===97&&F&32)&&!I4(st)&&!ZV(st.parent)?ye:at(st)?(Qt(Te),AI({flags:F,antecedent:Te,node:st})):Te:F&32?Te:ye}function ao(F,Te,st,Jt){return Qt(F),AI({flags:128,antecedent:F,switchStatement:Te,clauseStart:st,clauseEnd:Jt})}function Oi(F,Te,st){Qt(Te);const Jt=AI({flags:F,antecedent:Te,node:st});return C&&$t(C,Jt),Jt}function No(F,Te){return Qt(F),AI({flags:512,antecedent:F,node:Te})}function Mn(F){const Te=F.antecedents;return Te?Te.length===1?Te[0]:F:ye}function Di(F){const Te=F.parent;switch(Te.kind){case 245:case 247:case 246:return Te.expression===F;case 248:case 227:return Te.condition===F}return!1}function Ar(F){for(;;)if(F.kind===217)F=F.expression;else if(F.kind===224&&F.operator===54)F=F.operand;else return mk(F)}function sn(F){return yU(hs(F))}function tt(F){for(;Gd(F.parent)||tb(F.parent)&&F.parent.operator===54;)F=F.parent;return!Di(F)&&!Ar(F.parent)&&!(qu(F.parent)&&F.parent.expression===F)}function zt(F,Te,st,Jt){const rr=R,oi=M;R=st,M=Jt,F(Te),R=rr,M=oi}function Rn(F,Te,st){zt(we,F,Te,st),(!F||!sn(F)&&!Ar(F)&&!(qu(F)&&dC(F)))&&($t(Te,_i(32,m,F)),$t(st,_i(64,m,F)))}function li(F,Te,st){const Jt=b,rr=A;b=Te,A=st,we(F),b=Jt,A=rr}function hi(F,Te){let st=U;for(;st&&F.parent.kind===256;)st.continueTarget=Te,st=st.next,F=F.parent;return Te}function Qi(F){const Te=hi(F,Xn()),st=Pn(),Jt=Pn();$t(Te,m),m=Te,Rn(F.expression,st,Jt),m=Mn(st),li(F.statement,Jt,Te),$t(Te,m),m=Mn(Jt)}function Io(F){const Te=Xn(),st=hi(F,Pn()),Jt=Pn();$t(Te,m),m=Te,li(F.statement,Jt,st),$t(st,m),m=Mn(st),Rn(F.expression,Te,Jt),m=Mn(Jt)}function ma(F){const Te=hi(F,Xn()),st=Pn(),Jt=Pn();we(F.initializer),$t(Te,m),m=Te,Rn(F.condition,st,Jt),m=Mn(st),li(F.statement,Jt,Te),we(F.incrementor),$t(Te,m),m=Mn(Jt)}function Wa(F){const Te=hi(F,Xn()),st=Pn();we(F.expression),$t(Te,m),m=Te,F.kind===250&&we(F.awaitModifier),$t(st,m),we(F.initializer),F.initializer.kind!==261&&_t(F.initializer),li(F.statement,st,Te),$t(Te,m),m=Mn(st)}function Sn(F){const Te=Pn(),st=Pn(),Jt=Pn();Rn(F.expression,Te,st),m=Mn(Te),we(F.thenStatement),$t(Jt,m),m=Mn(st),we(F.elseStatement),$t(Jt,m),m=Mn(Jt)}function kn(F){we(F.expression),F.kind===253&&(K=!0,I&&$t(I,m)),m=ye}function qe(F){for(let Te=U;Te;Te=Te.next)if(Te.name===F)return Te}function mt(F,Te,st){const Jt=F.kind===252?Te:st;Jt&&($t(Jt,m),m=ye)}function ft(F){if(we(F.label),F.label){const Te=qe(F.label.escapedText);Te&&(Te.referenced=!0,mt(F,Te.breakTarget,Te.continueTarget))}else mt(F,b,A)}function Ct(F){const Te=I,st=C,Jt=Pn(),rr=Pn();let oi=Pn();if(F.finallyBlock&&(I=rr),$t(oi,m),C=oi,we(F.tryBlock),$t(Jt,m),F.catchClause&&(m=Mn(oi),oi=Pn(),$t(oi,m),C=oi,we(F.catchClause),$t(Jt,m)),I=Te,C=st,F.finallyBlock){const $r=Pn();$r.antecedents=So(So(Jt.antecedents,oi.antecedents),rr.antecedents),m=$r,we(F.finallyBlock),m.flags&1?m=ye:(I&&rr.antecedents&&$t(I,hn($r,rr.antecedents,m)),C&&oi.antecedents&&$t(C,hn($r,oi.antecedents,m)),m=Jt.antecedents?hn($r,Jt.antecedents,m):ye)}else m=Mn(Jt)}function le(F){const Te=Pn();we(F.expression);const st=b,Jt=O;b=Te,O=m,we(F.caseBlock),$t(Te,m);const rr=Ue(F.caseBlock.clauses,oi=>oi.kind===297);F.possiblyExhaustive=!rr&&!Te.antecedents,rr||$t(Te,ao(O,F,0,0)),b=st,O=Jt,m=Mn(Te)}function Fe(F){const Te=F.clauses,st=F.parent.expression.kind===112||at(F.parent.expression);let Jt=ye;for(let rr=0;rr<Te.length;rr++){const oi=rr;for(;!Te[rr].statements.length&&rr+1<Te.length;)Jt===ye&&(m=O),we(Te[rr]),rr++;const $r=Pn();$t($r,st?ao(O,F.parent,oi,rr+1):O),$t($r,Jt),m=Mn($r);const io=Te[rr];we(io),Jt=m,!(m.flags&1)&&rr!==Te.length-1&&t.noFallthroughCasesInSwitch&&(io.fallthroughFlowNode=m)}}function pt(F){const Te=m;m=O,we(F.expression),m=Te,At(F.statements)}function j(F){we(F.expression),ot(F.expression)}function ot(F){if(F.kind===213){const Te=F;Te.expression.kind!==108&&GC(Te.expression)&&(m=No(m,Te))}}function Rt(F){const Te=Pn();U={next:U,name:F.label.escapedText,breakTarget:Te,continueTarget:void 0,referenced:!1},we(F.label),we(F.statement),!U.referenced&&!t.allowUnusedLabels&&Rc(Boe(t),F.label,f.Unused_label),U=U.next,$t(Te,m),m=Mn(Te)}function Ye(F){F.kind===226&&F.operatorToken.kind===64?_t(F.left):_t(F)}function _t(F){if(Gt(F))m=Oi(16,m,F);else if(F.kind===209)for(const Te of F.elements)Te.kind===230?_t(Te.expression):Ye(Te);else if(F.kind===210)for(const Te of F.properties)Te.kind===303?Ye(Te.initializer):Te.kind===304?_t(Te.name):Te.kind===305&&_t(Te.expression)}function Vt(F,Te,st){const Jt=Pn();F.operatorToken.kind===56||F.operatorToken.kind===77?Rn(F.left,Jt,st):Rn(F.left,Te,Jt),m=Mn(Jt),we(F.operatorToken),BC(F.operatorToken.kind)?(zt(we,F.right,Te,st),_t(F.left),$t(Te,_i(32,m,F)),$t(st,_i(64,m,F))):Rn(F.right,Te,st)}function vn(F){if(F.operator===54){const Te=R;R=M,M=Te,Se(F),M=R,R=Te}else Se(F),(F.operator===46||F.operator===47)&&_t(F.operand)}function fn(F){Se(F),(F.operator===46||F.operator===47)&&_t(F.operand)}function _n(F){se?(se=!1,we(F.operatorToken),we(F.right),se=!0,we(F.left)):(se=!0,we(F.left),se=!1,we(F.operatorToken),we(F.right)),_t(F.left)}function q(){return yF(F,Te,st,Jt,rr,void 0);function F($r,io){if(io){io.stackIndex++,qa($r,i);const za=V;vr($r);const Ol=i;i=$r,io.skip=!1,io.inStrictModeStack[io.stackIndex]=za,io.parentStack[io.stackIndex]=Ol}else io={stackIndex:0,skip:!1,inStrictModeStack:[void 0],parentStack:[void 0]};const Fa=$r.operatorToken.kind;if(fk(Fa)||BC(Fa)){if(tt($r)){const za=Pn();Vt($r,za,za),m=Mn(za)}else Vt($r,R,M);io.skip=!0}return io}function Te($r,io,Fa){if(!io.skip){const za=oi($r);return Fa.operatorToken.kind===28&&ot($r),za}}function st($r,io,Fa){io.skip||we($r)}function Jt($r,io,Fa){if(!io.skip){const za=oi($r);return Fa.operatorToken.kind===28&&ot($r),za}}function rr($r,io){if(!io.skip){const Ol=$r.operatorToken.kind;if(Vv(Ol)&&!ig($r)&&(_t($r.left),Ol===64&&$r.left.kind===212)){const fu=$r.left;rn(fu.expression)&&(m=Oi(256,m,$r))}}const Fa=io.inStrictModeStack[io.stackIndex],za=io.parentStack[io.stackIndex];Fa!==void 0&&(V=Fa),za!==void 0&&(i=za),io.skip=!1,io.stackIndex--}function oi($r){if($r&&mr($r)&&!jv($r))return $r;we($r)}}function Oe(F){Se(F),F.expression.kind===211&&_t(F.expression)}function Lt(F){const Te=Pn(),st=Pn(),Jt=Pn();Rn(F.condition,Te,st),m=Mn(Te),we(F.questionToken),we(F.whenTrue),$t(Jt,m),m=Mn(st),we(F.colonToken),we(F.whenFalse),$t(Jt,m),m=Mn(Jt)}function L(F){const Te=jc(F)?void 0:F.name;if(ta(Te))for(const st of Te.elements)L(st);else m=Oi(16,m,F)}function _e(F){Se(F),(F.initializer||nR(F.parent.parent))&&L(F)}function J(F){we(F.dotDotDotToken),we(F.propertyName),Ge(F.initializer),we(F.name)}function me(F){At(F.modifiers),we(F.dotDotDotToken),we(F.questionToken),we(F.type),Ge(F.initializer),we(F.name)}function Ge(F){if(!F)return;const Te=m;if(we(F),Te===ye||Te===m)return;const st=Pn();$t(st,Te),$t(st,m),m=Mn(st)}function ke(F){we(F.tagName),F.kind!==347&&F.fullName&&(qa(F.fullName,F),Jy(F.fullName,!1)),typeof F.comment!="string"&&At(F.comment)}function Tt(F){Se(F);const Te=v0(F);Te&&Te.kind!==174&&ie(Te.symbol,Te,32)}function kt(F,Te,st){zt(we,F,Te,st),(!qu(F)||dC(F))&&($t(Te,_i(32,m,F)),$t(st,_i(64,m,F)))}function en(F){switch(F.kind){case 211:we(F.questionDotToken),we(F.name);break;case 212:we(F.questionDotToken),we(F.argumentExpression);break;case 213:we(F.questionDotToken),At(F.typeArguments),At(F.arguments);break}}function bn(F,Te,st){const Jt=uC(F)?Pn():void 0;kt(F.expression,Jt||Te,st),Jt&&(m=Mn(Jt)),zt(en,F,Te,st),dC(F)&&($t(Te,_i(32,m,F)),$t(st,_i(64,m,F)))}function Bn(F){if(tt(F)){const Te=Pn();bn(F,Te,Te),m=Mn(Te)}else bn(F,R,M)}function Hn(F){qu(F)?Bn(F):Se(F)}function Ni(F){qu(F)?Bn(F):Se(F)}function Ai(F){if(qu(F))Bn(F);else{const Te=hs(F.expression);Te.kind===218||Te.kind===219?(At(F.typeArguments),At(F.arguments),we(F.expression)):(Se(F),F.expression.kind===108&&(m=No(m,F)))}if(F.expression.kind===211){const Te=F.expression;Ve(Te.name)&&rn(Te.expression)&&iU(Te.name)&&(m=Oi(256,m,F))}}function ir(F){u&&(u.nextContainer=F),u=F}function jr(F,Te,st){switch(o.kind){case 267:return Ee(F,Te,st);case 312:return Ci(F,Te,st);case 231:case 263:return vo(F,Te,st);case 266:return He(o.symbol.exports,o.symbol,F,Te,st);case 187:case 329:case 210:case 264:case 292:return He(o.symbol.members,o.symbol,F,Te,st);case 184:case 185:case 179:case 180:case 330:case 181:case 174:case 173:case 176:case 177:case 178:case 262:case 218:case 219:case 324:case 175:case 265:case 200:return o.locals&&N.assertNode(o,fh),He(o.locals,void 0,F,Te,st)}}function vo(F,Te,st){return sa(F)?He(o.symbol.exports,o.symbol,F,Te,st):He(o.symbol.members,o.symbol,F,Te,st)}function Ci(F,Te,st){return sc(e)?Ee(F,Te,st):He(e.locals,void 0,F,Te,st)}function Ii(F){const Te=$i(F)?F:ii(F.body,O_);return!!Te&&Te.statements.some(st=>Yl(st)||kl(st))}function Kr(F){F.flags&33554432&&!Ii(F)?F.flags|=128:F.flags&=-129}function xo(F){if(Kr(F),ku(F))if(Zr(F,32)&&Ms(F,f.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible),Ij(F))Dn(F);else{let Te;if(F.name.kind===11){const{text:Jt}=F.name;Te=WR(Jt),Te===void 0&&Ms(F.name,f.Pattern_0_can_have_at_most_one_Asterisk_character,Jt)}const st=jr(F,512,110735);e.patternAmbientModules=xn(e.patternAmbientModules,Te&&!Po(Te)?{pattern:Te,symbol:st}:void 0)}else{const Te=Dn(F);if(Te!==0){const{symbol:st}=F;st.constEnumOnlyModule=!(st.flags&304)&&Te===2&&st.constEnumOnlyModule!==!1}}}function Dn(F){const Te=Kg(F),st=Te!==0;return jr(F,st?512:1024,st?110735:0),Te}function Fs(F){const Te=pe(131072,ve(F));ie(Te,F,131072);const st=pe(2048,"__type");ie(st,F,2048),st.members=ua(),st.members.set(Te.escapedName,Te)}function Ql(F){return Vs(F,4096,"__object")}function Lo(F){return Vs(F,4096,"__jsxAttributes")}function cs(F,Te,st){return jr(F,Te,st)}function Vs(F,Te,st){const Jt=pe(Te,st);return Te&106508&&(Jt.parent=o.symbol),ie(Jt,F,Te),Jt}function vl(F,Te,st){switch(l.kind){case 267:Ee(F,Te,st);break;case 312:if(zp(o)){Ee(F,Te,st);break}default:N.assertNode(l,fh),l.locals||(l.locals=ua(),ir(l)),He(l.locals,void 0,F,Te,st)}}function uu(){if(!p)return;const F=o,Te=u,st=l,Jt=i,rr=m;for(const oi of p){const $r=oi.parent.parent;o=Mj($r)||e,l=hh($r)||e,m=AI({flags:2}),i=oi,we(oi.typeExpression);const io=Mo(oi);if((ew(oi)||!oi.fullName)&&io&&_k(io.parent)){const Fa=ec(io.parent);if(Fa){yl(e.symbol,io.parent,Fa,!!Gn(io,Ol=>Fr(Ol)&&Ol.name.escapedText==="prototype"),!1);const za=o;switch(KL(io.parent)){case 1:case 2:zp(e)?o=e:o=void 0;break;case 4:o=io.parent.expression;break;case 3:o=io.parent.expression.name;break;case 5:o=f1(e,io.parent.expression)?e:Fr(io.parent.expression)?io.parent.expression.name:io.parent.expression;break;case 0:return N.fail("Shouldn't have detected typedef or enum on non-assignment declaration")}o&&Ee(oi,524288,788968),o=za}}else ew(oi)||!oi.fullName||oi.fullName.kind===80?(i=oi.parent,vl(oi,524288,788968)):we(oi.fullName)}o=F,u=Te,l=st,i=Jt,m=rr}function ho(F){if(!e.parseDiagnostics.length&&!(F.flags&33554432)&&!(F.flags&16777216)&&!Xie(F)){const Te=u0(F);if(Te===void 0)return;V&&Te>=119&&Te<=127?e.bindDiagnostics.push(oe(F,pa(F),Rs(F))):Te===135?sc(e)&&r3(F)?e.bindDiagnostics.push(oe(F,f.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module,Rs(F))):F.flags&65536&&e.bindDiagnostics.push(oe(F,f.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Rs(F))):Te===127&&F.flags&16384&&e.bindDiagnostics.push(oe(F,f.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,Rs(F)))}}function pa(F){return su(F)?f.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:e.externalModuleIndicator?f.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:f.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function du(F){F.escapedText==="#constructor"&&(e.parseDiagnostics.length||e.bindDiagnostics.push(oe(F,f.constructor_is_a_reserved_word,Rs(F))))}function As(F){V&&ep(F.left)&&Vv(F.operatorToken.kind)&&lc(F,F.left)}function La(F){V&&F.variableDeclaration&&lc(F,F.variableDeclaration.name)}function _l(F){if(V&&F.expression.kind===80){const Te=AS(e,F.expression);e.bindDiagnostics.push(Qc(e,Te.start,Te.length,f.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function wf(F){return Ve(F)&&(F.escapedText==="eval"||F.escapedText==="arguments")}function lc(F,Te){if(Te&&Te.kind===80){const st=Te;if(wf(st)){const Jt=AS(e,Te);e.bindDiagnostics.push(Qc(e,Jt.start,Jt.length,Nl(F),Sr(st)))}}}function Nl(F){return su(F)?f.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode:e.externalModuleIndicator?f.Invalid_use_of_0_Modules_are_automatically_in_strict_mode:f.Invalid_use_of_0_in_strict_mode}function ul(F){V&&lc(F,F.name)}function ko(F){return su(F)?f.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:e.externalModuleIndicator?f.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:f.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5}function nn(F){if(r<2&&l.kind!==312&&l.kind!==267&&!tR(l)){const Te=AS(e,F);e.bindDiagnostics.push(Qc(e,Te.start,Te.length,ko(F)))}}function js(F){V&&lc(F,F.operand)}function nu(F){V&&(F.operator===46||F.operator===47)&&lc(F,F.operand)}function pu(F){V&&Ms(F,f.with_statements_are_not_allowed_in_strict_mode)}function Ip(F){V&&os(t)>=2&&(Qre(F.statement)||Ll(F.statement))&&Ms(F.label,f.A_label_is_not_allowed_here)}function Ms(F,Te,...st){const Jt=gh(e,F.pos);e.bindDiagnostics.push(Qc(e,Jt.start,Jt.length,Te,...st))}function Rc(F,Te,st){de(F,Te,Te,st)}function de(F,Te,st,Jt){ee(F,{pos:_0(Te,e),end:st.end},Jt)}function ee(F,Te,st){const Jt=Qc(e,Te.pos,Te.end-Te.pos,st);F?e.bindDiagnostics.push(Jt):e.bindSuggestionDiagnostics=xn(e.bindSuggestionDiagnostics,{...Jt,category:2})}function we(F){if(!F)return;qa(F,i),sr&&(F.tracingPath=e.path);const Te=V;if(vr(F),F.kind>165){const st=i;i=F;const Jt=Uq(F);Jt===0?je(F):Pe(F,Jt),i=st}else{const st=i;F.kind===1&&(i=F),Et(F),i=st}V=Te}function Et(F){if(Fp(F))if(lr(F))for(const Te of F.jsDoc)we(Te);else for(const Te of F.jsDoc)qa(Te,F),Jy(Te,!1)}function un(F){if(!V)for(const Te of F){if(!Im(Te))return;if(Er(Te)){V=!0;return}}}function Er(F){const Te=OE(e,F.expression);return Te==='"use strict"'||Te==="'use strict'"}function vr(F){switch(F.kind){case 80:if(F.flags&4096){let $r=F.parent;for(;$r&&!Zf($r);)$r=$r.parent;vl($r,524288,788968);break}case 110:return m&&(yt(F)||i.kind===304)&&(F.flowNode=m),ho(F);case 166:m&&l3(F)&&(F.flowNode=m);break;case 236:case 108:F.flowNode=m;break;case 81:return du(F);case 211:case 212:const Te=F;m&&Gt(Te)&&(Te.flowNode=m),Vie(Te)&&Jn(Te),lr(Te)&&e.commonJsModuleIndicator&&rg(Te)&&!UF(l,"module")&&He(e.locals,void 0,Te.expression,134217729,111550);break;case 226:switch(Bl(F)){case 1:op(F);break;case 2:Wc(F);break;case 3:na(F.left,F);break;case 6:yo(F);break;case 4:gd(F);break;case 5:const $r=F.left.expression;if(lr(F)&&Ve($r)){const io=UF(l,$r.escapedText);if(i3(io==null?void 0:io.valueDeclaration)){gd(F);break}}yc(F);break;case 0:break;default:N.fail("Unknown binary expression special property assignment kind")}return As(F);case 299:return La(F);case 220:return _l(F);case 225:return js(F);case 224:return nu(F);case 254:return pu(F);case 256:return Ip(F);case 197:h=!0;return;case 182:break;case 168:return ct(F);case 169:return Qg(F);case 260:return Bu(F);case 208:return F.flowNode=m,Bu(F);case 172:case 171:return Ur(F);case 303:case 304:return Ud(F,4,0);case 306:return Ud(F,8,900095);case 179:case 180:case 181:return jr(F,131072,0);case 174:case 173:return Ud(F,8192|(F.questionToken?16777216:0),xm(F)?0:103359);case 262:return xp(F);case 176:return jr(F,16384,0);case 177:return Ud(F,32768,46015);case 178:return Ud(F,65536,78783);case 184:case 324:case 330:case 185:return Fs(F);case 187:case 329:case 200:return xi(F);case 339:return Tt(F);case 210:return Ql(F);case 218:case 219:return _g(F);case 213:switch(Bl(F)){case 7:return Zl(F);case 8:return qc(F);case 9:return Qo(F);case 0:break;default:return N.fail("Unknown call expression assignment declaration kind")}lr(F)&&U_(F);break;case 231:case 263:return V=!0,Ch(F);case 264:return vl(F,64,788872);case 265:return vl(F,524288,788968);case 266:return $g(F);case 267:return xo(F);case 292:return Lo(F);case 291:return cs(F,4,0);case 271:case 274:case 276:case 281:return jr(F,2097152,2097152);case 270:return Hc(F);case 273:return vc(F);case 278:return Us(F);case 277:return Tl(F);case 312:return un(F.statements),Lr();case 241:if(!tR(F.parent))return;case 268:return un(F.statements);case 348:if(F.parent.kind===330)return Qg(F);if(F.parent.kind!==329)break;case 355:const rr=F,oi=rr.isBracketed||rr.typeExpression&&rr.typeExpression.type.kind===323?16777220:4;return jr(rr,oi,0);case 353:case 345:case 347:return(p||(p=[])).push(F);case 346:return we(F.typeExpression)}}function Ur(F){const Te=Wd(F),st=Te?98304:4,Jt=Te?13247:0;return Ud(F,st|(F.questionToken?16777216:0),Jt)}function xi(F){return Vs(F,2048,"__type")}function Lr(){if(Kr(e),sc(e))$o();else if(Qf(e)){$o();const F=e.symbol;He(e.symbol.exports,e.symbol,e,4,-1),e.symbol=F}}function $o(){Vs(e,512,`"${Id(e.fileName)}"`)}function Tl(F){if(!o.symbol||!o.symbol.exports)Vs(F,111551,ve(F));else{const Te=TR(F)?2097152:4,st=He(o.symbol.exports,o.symbol,F,Te,-1);F.isExportEquals&&YL(st,F)}}function Hc(F){bt(F.modifiers)&&e.bindDiagnostics.push(oe(F,f.Modifiers_cannot_appear_here));const Te=$i(F.parent)?sc(F.parent)?F.parent.isDeclarationFile?void 0:f.Global_module_exports_may_only_appear_in_declaration_files:f.Global_module_exports_may_only_appear_in_module_files:f.Global_module_exports_may_only_appear_at_top_level;Te?e.bindDiagnostics.push(oe(F,Te)):(e.symbol.globalExports=e.symbol.globalExports||ua(),He(e.symbol.globalExports,e.symbol,F,2097152,2097152))}function Us(F){!o.symbol||!o.symbol.exports?Vs(F,8388608,ve(F)):F.exportClause?Th(F.exportClause)&&(qa(F.exportClause,F),He(o.symbol.exports,o.symbol,F.exportClause,2097152,2097152)):He(o.symbol.exports,o.symbol,F,8388608,0)}function vc(F){F.name&&jr(F,2097152,2097152)}function Ss(F){return e.externalModuleIndicator&&e.externalModuleIndicator!==!0?!1:(e.commonJsModuleIndicator||(e.commonJsModuleIndicator=F,e.externalModuleIndicator||$o()),!0)}function qc(F){if(!Ss(F))return;const Te=Of(F.arguments[0],void 0,(st,Jt)=>(Jt&&ie(Jt,st,67110400),Jt));Te&&He(Te.exports,Te,F,1048580,0)}function op(F){if(!Ss(F))return;const Te=Of(F.left.expression,void 0,(st,Jt)=>(Jt&&ie(Jt,st,67110400),Jt));if(Te){const Jt=ok(F.right)&&(RS(F.left.expression)||rg(F.left.expression))?2097152:1048580;qa(F.left,F),He(Te.exports,Te,F.left,Jt,0)}}function Wc(F){if(!Ss(F))return;const Te=HL(F.right);if(TU(Te)||o===e&&f1(e,Te))return;if(Oa(Te)&&Zn(Te.properties,rp)){Ue(Te.properties,cm);return}const st=TR(F)?2097152:1049092,Jt=He(e.symbol.exports,e.symbol,F,st|67108864,0);YL(Jt,F)}function cm(F){He(e.symbol.exports,e.symbol,F,69206016,0)}function gd(F){if(N.assert(lr(F)),mr(F)&&Fr(F.left)&&Ji(F.left.name)||Fr(F)&&Ji(F.name))return;const st=Fd(F,!1,!1);switch(st.kind){case 262:case 218:let Jt=st.symbol;if(mr(st.parent)&&st.parent.operatorToken.kind===64){const $r=st.parent.left;VE($r)&&Hy($r.expression)&&(Jt=Cd($r.expression.expression,s))}Jt&&Jt.valueDeclaration&&(Jt.members=Jt.members||ua(),jy(F)?Ce(F,Jt,Jt.members):He(Jt.members,Jt,F,67108868,0),ie(Jt,Jt.valueDeclaration,32));break;case 176:case 172:case 174:case 177:case 178:case 175:const rr=st.parent,oi=sa(st)?rr.symbol.exports:rr.symbol.members;jy(F)?Ce(F,rr.symbol,oi):He(oi,rr.symbol,F,67108868,0,!0);break;case 312:if(jy(F))break;st.commonJsModuleIndicator?He(st.symbol.exports,st.symbol,F,1048580,0):jr(F,1,111550);break;case 267:break;default:N.failBadSyntaxKind(st)}}function Ce(F,Te,st){He(st,Te,F,4,0,!0,!0),Wt(F,Te)}function Wt(F,Te){Te&&(Te.assignmentDeclarationMembers||(Te.assignmentDeclarationMembers=new Map)).set(as(F),F)}function Jn(F){F.expression.kind===110?gd(F):VE(F)&&F.parent.parent.kind===312&&(Hy(F.expression)?na(F,F.parent):dl(F))}function yo(F){qa(F.left,F),qa(F.right,F),Jc(F.left.expression,F.left,!1,!0)}function Qo(F){const Te=Cd(F.arguments[0].expression);Te&&Te.valueDeclaration&&ie(Te,Te.valueDeclaration,32),Vl(F,Te,!0)}function na(F,Te){const st=F.expression,Jt=st.expression;qa(Jt,st),qa(st,F),qa(F,Te),Jc(Jt,F,!0,!0)}function Zl(F){let Te=Cd(F.arguments[0]);const st=F.parent.parent.kind===312;Te=yl(Te,F.arguments[0],st,!1,!1),Vl(F,Te,!1)}function yc(F){var Te;const st=Cd(F.left.expression,l)||Cd(F.left.expression,o);if(!lr(F)&&!jie(st))return;const Jt=kR(F.left);if(!(Ve(Jt)&&((Te=UF(o,Jt.escapedText))==null?void 0:Te.flags)&2097152))if(qa(F.left,F),qa(F.right,F),Ve(F.left.expression)&&o===e&&f1(e,F.left.expression))op(F);else if(jy(F)){Vs(F,67108868,"__computed");const rr=yl(st,F.left.expression,ec(F.left),!1,!1);Wt(F,rr)}else dl(aa(F.left,NS))}function dl(F){N.assert(!Ve(F)),qa(F.expression,F),Jc(F.expression,F,!1,!1)}function yl(F,Te,st,Jt,rr){return(F==null?void 0:F.flags)&2097152||(st&&!Jt&&(F=Of(Te,F,(io,Fa,za)=>{if(Fa)return ie(Fa,io,67110400),Fa;{const Ol=za?za.exports:e.jsGlobalAugmentations||(e.jsGlobalAugmentations=ua());return He(Ol,za,io,67110400,110735)}})),rr&&F&&F.valueDeclaration&&ie(F,F.valueDeclaration,32)),F}function Vl(F,Te,st){if(!Te||!ff(Te))return;const Jt=st?Te.members||(Te.members=ua()):Te.exports||(Te.exports=ua());let rr=0,oi=0;Bs(OA(F))?(rr=8192,oi=103359):la(F)&&DS(F)&&(bt(F.arguments[2].properties,$r=>{const io=Mo($r);return!!io&&Ve(io)&&Sr(io)==="set"})&&(rr|=65540,oi|=78783),bt(F.arguments[2].properties,$r=>{const io=Mo($r);return!!io&&Ve(io)&&Sr(io)==="get"})&&(rr|=32772,oi|=46015)),rr===0&&(rr=4,oi=0),He(Jt,Te,F,rr|67108864,oi&-67108865)}function ec(F){return mr(F.parent)?jd(F.parent).parent.kind===312:F.parent.parent.kind===312}function Jc(F,Te,st,Jt){let rr=Cd(F,l)||Cd(F,o);const oi=ec(Te);rr=yl(rr,Te.expression,oi,st,Jt),Vl(Te,rr,st)}function ff(F){if(F.flags&1072)return!0;const Te=F.valueDeclaration;if(Te&&la(Te))return!!OA(Te);let st=Te?wi(Te)?Te.initializer:mr(Te)?Te.right:Fr(Te)&&mr(Te.parent)?Te.parent.right:void 0:void 0;if(st=st&&HL(st),st){const Jt=Hy(wi(Te)?Te.name:mr(Te)?Te.left:Te);return!!g0(mr(st)&&(st.operatorToken.kind===57||st.operatorToken.kind===61)?st.right:st,Jt)}return!1}function jd(F){for(;mr(F.parent);)F=F.parent;return F.parent}function Cd(F,Te=o){if(Ve(F))return UF(Te,F.escapedText);{const st=Cd(F.expression);return st&&st.exports&&st.exports.get(zg(F))}}function Of(F,Te,st){if(f1(e,F))return e.symbol;if(Ve(F))return st(F,Cd(F),Te);{const Jt=Of(F.expression,Te,st),rr=JL(F);return Ji(rr)&&N.fail("unexpected PrivateIdentifier"),st(rr,Jt&&Jt.exports&&Jt.exports.get(zg(F)),Jt)}}function U_(F){!e.commonJsModuleIndicator&&Ad(F,!1)&&Ss(F)}function Ch(F){if(F.kind===263)vl(F,32,899503);else{const rr=F.name?F.name.escapedText:"__class";Vs(F,32,rr),F.name&&he.add(F.name.escapedText)}const{symbol:Te}=F,st=pe(4194308,"prototype"),Jt=Te.exports.get(st.escapedName);Jt&&(F.name&&qa(F.name,F),e.bindDiagnostics.push(oe(Jt.declarations[0],f.Duplicate_identifier_0,Sl(st)))),Te.exports.set(st.escapedName,st),st.parent=Te}function $g(F){return FE(F)?vl(F,128,899967):vl(F,256,899327)}function Bu(F){if(V&&lc(F,F.name),!ta(F.name)){const Te=F.kind===260?F:F.parent.parent;lr(F)&&GE(Te)&&!d0(F)&&!(c0(F)&32)?jr(F,2097152,2097152):Sj(F)?vl(F,2,111551):HE(F)?jr(F,1,111551):jr(F,1,111550)}}function Qg(F){if(!(F.kind===348&&o.kind!==330)&&(V&&!(F.flags&33554432)&&lc(F,F.name),ta(F.name)?Vs(F,1,"__"+F.parent.parameters.indexOf(F)):jr(F,1,111551),mp(F,F.parent))){const Te=F.parent.parent;He(Te.symbol.members,Te.symbol,F,4|(F.questionToken?16777216:0),0)}}function xp(F){!e.isDeclarationFile&&!(F.flags&33554432)&&MC(F)&&(Z|=4096),ul(F),V?(nn(F),vl(F,16,110991)):jr(F,16,110991)}function _g(F){!e.isDeclarationFile&&!(F.flags&33554432)&&MC(F)&&(Z|=4096),m&&(F.flowNode=m),ul(F);const Te=F.name?F.name.escapedText:"__function";return Vs(F,16,Te)}function Ud(F,Te,st){return!e.isDeclarationFile&&!(F.flags&33554432)&&MC(F)&&(Z|=4096),m&&Z4(F)&&(F.flowNode=m),jy(F)?Vs(F,Te,"__computed"):jr(F,Te,st)}function te(F){const Te=Gn(F,st=>st.parent&&dI(st.parent)&&st.parent.extendsType===st);return Te&&Te.parent}function ct(F){if(sm(F.parent)){const Te=g3(F.parent);Te?(N.assertNode(Te,fh),Te.locals??(Te.locals=ua()),He(Te.locals,void 0,F,262144,526824)):jr(F,262144,526824)}else if(F.parent.kind===195){const Te=te(F.parent);Te?(N.assertNode(Te,fh),Te.locals??(Te.locals=ua()),He(Te.locals,void 0,F,262144,526824)):Vs(F,262144,ve(F))}else jr(F,262144,526824)}function Ft(F){const Te=Kg(F);return Te===1||Te===2&&e1(t)}function jt(F){if(!(m.flags&1))return!1;if(m===ye&&(TL(F)&&F.kind!==242||F.kind===263||F.kind===267&&Ft(F))&&(m=$,!t.allowUnreachableCode)){const st=zoe(t)&&!(F.flags&33554432)&&(!Ll(F)||!!(Ov(F.declarationList)&7)||F.declarationList.declarations.some(Jt=>!!Jt.initializer));Eje(F,(Jt,rr)=>de(st,Jt,rr,f.Unreachable_code_detected))}return!0}}function Eje(e,t){if(qi(e)&&_xe(e)&&Xo(e.parent)){const{statements:r}=e.parent,i=BU(r,e);cG(i,_xe,(o,s)=>t(i[o],i[s-1]))}else t(e,e)}function _xe(e){return!Ac(e)&&!Sje(e)&&!x0(e)&&!(Ll(e)&&!(Ov(e)&7)&&e.declarationList.declarations.some(t=>!t.initializer))}function Sje(e){switch(e.kind){case 264:case 265:return!0;case 267:return Kg(e)!==1;case 266:return Zr(e,4096);default:return!1}}function f1(e,t){let r=0;const i=zM();for(i.enqueue(t);!i.isEmpty()&&r<100;){if(r++,t=i.dequeue(),RS(t)||rg(t))return!0;if(Ve(t)){const o=UF(e,t.escapedText);if(o&&o.valueDeclaration&&wi(o.valueDeclaration)&&o.valueDeclaration.initializer){const s=o.valueDeclaration.initializer;i.enqueue(s),Lc(s,!0)&&(i.enqueue(s.left),i.enqueue(s.right))}}}return!1}function Uq(e){switch(e.kind){case 231:case 263:case 266:case 210:case 187:case 329:case 292:return 1;case 264:return 65;case 267:case 265:case 200:case 181:return 33;case 312:return 37;case 177:case 178:case 174:if(Z4(e))return 173;case 176:case 262:case 173:case 179:case 330:case 324:case 184:case 180:case 185:case 175:return 45;case 218:case 219:return 61;case 268:return 4;case 172:return e.initializer?4:0;case 299:case 248:case 249:case 250:case 269:return 34;case 241:return ea(e.parent)||Rl(e.parent)?0:34}return 0}function UF(e,t){var r,i,o,s;const l=(i=(r=ii(e,fh))==null?void 0:r.locals)==null?void 0:i.get(t);if(l)return l.exportSymbol??l;if($i(e)&&e.jsGlobalAugmentations&&e.jsGlobalAugmentations.has(t))return e.jsGlobalAugmentations.get(t);if(x_(e))return(s=(o=e.symbol)==null?void 0:o.exports)==null?void 0:s.get(t)}var Hq,qq,hxe,Tje=T({"src/compiler/binder.ts"(){ra(),fS(),Hq=(e=>(e[e.NonInstantiated=0]="NonInstantiated",e[e.Instantiated=1]="Instantiated",e[e.ConstEnumOnly=2]="ConstEnumOnly",e))(Hq||{}),qq=(e=>(e[e.None=0]="None",e[e.IsContainer=1]="IsContainer",e[e.IsBlockScopedContainer=2]="IsBlockScopedContainer",e[e.IsControlFlowContainer=4]="IsControlFlowContainer",e[e.IsFunctionLike=8]="IsFunctionLike",e[e.IsFunctionExpression=16]="IsFunctionExpression",e[e.HasLocals=32]="HasLocals",e[e.IsInterface=64]="IsInterface",e[e.IsObjectLiteralOrClassExpressionMethodOrAccessor=128]="IsObjectLiteralOrClassExpressionMethodOrAccessor",e))(qq||{}),hxe=bje()}});function lle(e,t,r,i,o,s,l,u,p,h){return m;function m(b=()=>!0){const A=[],I=[];return{walkType:he=>{try{return R(he),{visitedTypes:EA(A),visitedSymbols:EA(I)}}finally{Vo(A),Vo(I)}},walkSymbol:he=>{try{return ne(he),{visitedTypes:EA(A),visitedSymbols:EA(I)}}finally{Vo(A),Vo(I)}}};function R(he){if(!(!he||A[he.id]||(A[he.id]=he,ne(he.symbol)))){if(he.flags&524288){const $=he,Y=$.objectFlags;Y&4&&M(he),Y&32&&Z(he),Y&3&&se(he),Y&24&&G($)}he.flags&262144&&C(he),he.flags&3145728&&O(he),he.flags&4194304&&U(he),he.flags&8388608&&K(he)}}function M(he){R(he.target),Ue(h(he),R)}function C(he){R(u(he))}function O(he){Ue(he.types,R)}function U(he){R(he.type)}function K(he){R(he.objectType),R(he.indexType),R(he.constraint)}function Z(he){R(he.typeParameter),R(he.constraintType),R(he.templateType),R(he.modifiersType)}function V(he){const ye=t(he);ye&&R(ye.type),Ue(he.typeParameters,R);for(const $ of he.parameters)ne($);R(e(he)),R(r(he))}function se(he){G(he),Ue(he.typeParameters,R),Ue(i(he),R),R(he.thisType)}function G(he){const ye=o(he);for(const $ of ye.indexInfos)R($.keyType),R($.type);for(const $ of ye.callSignatures)V($);for(const $ of ye.constructSignatures)V($);for(const $ of ye.properties)ne($)}function ne(he){if(!he)return!1;const ye=Ta(he);if(I[ye])return!1;if(I[ye]=he,!b(he))return!0;const $=s(he);return R($),he.exports&&he.exports.forEach(ne),Ue(he.declarations,Y=>{if(Y.type&&Y.type.kind===186){const oe=Y.type,fe=l(p(oe.exprName));ne(fe)}}),!1}}}var Aje=T({"src/compiler/symbolWalker.ts"(){ra()}});function Mw({importModuleSpecifierPreference:e,importModuleSpecifierEnding:t},r,i,o){const s=l();return{relativePreference:o!==void 0?Yc(o)?0:1:e==="relative"?0:e==="non-relative"?1:e==="project-relative"?3:2,getAllowedEndingsInPreferredOrder:u=>{const p=u!==i.impliedNodeFormat?l(u):s;if((u??i.impliedNodeFormat)===99)return fD(r,i.fileName)?[3,2]:[2];if(md(r)===1)return p===2?[2,1]:[1,2];const h=fD(r,i.fileName);switch(p){case 2:return h?[2,3,0,1]:[2,0,1];case 3:return[3,0,2,1];case 1:return h?[1,0,3,2]:[1,0,2];case 0:return h?[0,1,3,2]:[0,1,2];default:N.assertNever(p)}}};function l(u){if(o!==void 0){if(YE(o))return 2;if(Al(o,"/index"))return 1}return Koe(t,u??i.impliedNodeFormat,r,i)}}function Ije(e,t,r,i,o,s,l={}){const u=gxe(e,t,r,i,o,Mw({},e,t,s),{},l);if(u!==s)return u}function HF(e,t,r,i,o,s={}){return gxe(e,t,r,i,o,Mw({},e,t),{},s)}function xje(e,t,r,i,o,s={}){const l=Jq(t.fileName,i),u=Axe(l,r,i,o,s);return Ut(u,p=>ule(p,l,t,i,e,o,!0,s.overrideImportMode))}function gxe(e,t,r,i,o,s,l,u={}){const p=Jq(r,o),h=Axe(p,i,o,l,u);return Ut(h,m=>ule(m,p,t,o,e,l,void 0,u.overrideImportMode))||Exe(i,p,e,o,u.overrideImportMode||t.impliedNodeFormat,s)}function Rje(e,t,r,i,o={}){return vxe(e,t,r,i,o)[0]}function vxe(e,t,r,i,o={}){var s;const l=G4(e);if(!l)return et;const u=(s=r.getModuleSpecifierCache)==null?void 0:s.call(r),p=u==null?void 0:u.get(t.path,l.path,i,o);return[p==null?void 0:p.moduleSpecifiers,l,p==null?void 0:p.modulePaths,u]}function yxe(e,t,r,i,o,s,l={}){return bxe(e,t,r,i,o,s,l,!1).moduleSpecifiers}function bxe(e,t,r,i,o,s,l={},u){let p=!1;const h=Cje(e,t);if(h)return{moduleSpecifiers:[h],computedWithoutCache:p};let[m,b,A,I]=vxe(e,i,o,s,l);if(m)return{moduleSpecifiers:m,computedWithoutCache:p};if(!b)return{moduleSpecifiers:et,computedWithoutCache:p};p=!0,A||(A=Ixe(Jq(i.fileName,o),b.originalFileName,o));const R=Dje(A,r,i,o,s,l,u);return I==null||I.set(i.path,b.path,s,l,A,R),{moduleSpecifiers:R,computedWithoutCache:p}}function Dje(e,t,r,i,o,s={},l){const u=Jq(r.fileName,i),p=Mw(o,t,r),h=Ue(e,M=>Ue(i.getFileIncludeReasons().get(ol(M.path,i.getCurrentDirectory(),u.getCanonicalFileName)),C=>{if(C.kind!==3||C.file!==r.path||r.impliedNodeFormat&&r.impliedNodeFormat!==bce(r,C.index,t))return;const O=Kw(r,C.index).text;return p.relativePreference!==1||!Wp(O)?O:void 0}));if(h)return[h];const m=bt(e,M=>M.isInNodeModules);let b,A,I,R;for(const M of e){const C=M.isInNodeModules?ule(M,u,r,i,t,o,void 0,s.overrideImportMode):void 0;if(b=xn(b,C),C&&M.isRedirect)return b;if(!C){const O=Exe(M.path,u,t,i,s.overrideImportMode||r.impliedNodeFormat,p,M.isRedirect);if(!O)continue;M.isRedirect?I=xn(I,O):WV(O)?L0(O)?R=xn(R,O):A=xn(A,O):(l||!m||M.isInNodeModules)&&(R=xn(R,O))}}return A!=null&&A.length?A:I!=null&&I.length?I:b!=null&&b.length?b:N.checkDefined(R)}function Jq(e,t){e=go(e,t.getCurrentDirectory());const r=Mu(t.useCaseSensitiveFileNames?t.useCaseSensitiveFileNames():!0),i=ai(e);return{getCanonicalFileName:r,importingSourceFileName:e,sourceDirectory:i,canonicalSourceDirectory:r(i)}}function Exe(e,t,r,i,o,{getAllowedEndingsInPreferredOrder:s,relativePreference:l},u){const{baseUrl:p,paths:h,rootDirs:m}=r;if(u&&!h)return;const{sourceDirectory:b,canonicalSourceDirectory:A,getCanonicalFileName:I}=t,R=s(o),M=m&&Lje(m,e,b,I,R,r)||Lw(CE(Em(b,e,I)),R,r);if(!p&&!h&&!_W(r)||l===0)return u?void 0:M;const C=go(x3(r,i)||p,i.getCurrentDirectory()),O=Nxe(e,C,I);if(!O)return u?void 0:M;const U=u?void 0:Mje(e,b,r,i,o),K=u||U===void 0?h&&xxe(O,h,R,i,r):void 0;if(u)return K;const Z=U??(K===void 0&&p!==void 0?Lw(O,R,r):K);if(!Z)return M;if(l===1&&!Wp(Z))return Z;if(l===3&&!Wp(Z)){const V=r.configFilePath?ol(ai(r.configFilePath),i.getCurrentDirectory(),t.getCanonicalFileName):t.getCanonicalFileName(i.getCurrentDirectory()),se=ol(e,V,I),G=uo(A,V),ne=uo(se,V);if(G&&!ne||!G&&ne)return Z;const he=cle(i,ai(se)),ye=cle(i,b),$=!CR(i);return Nje(he,ye,$)?M:Z}return Cxe(Z)||qF(M)<qF(Z)?M:Z}function Nje(e,t,r){return e===t?!0:e===void 0||t===void 0?!1:Lg(e,t,r)===0}function qF(e){let t=0;for(let r=uo(e,"./")?2:0;r<e.length;r++)e.charCodeAt(r)===47&&t++;return t}function Sxe(e,t){return Ry(t.isRedirect,e.isRedirect)||Sk(e.path,t.path)}function cle(e,t){return e.getNearestAncestorDirectoryWithPackageJson?e.getNearestAncestorDirectoryWithPackageJson(t):Sm(t,r=>e.fileExists(Qr(r,"package.json"))?r:void 0)}function Txe(e,t,r,i,o){var s;const l=Gv(r),u=r.getCurrentDirectory(),p=r.isSourceOfProjectReferenceRedirect(t)?r.getProjectReferenceRedirect(t):void 0,h=ol(t,u,l),m=r.redirectTargetsMap.get(h)||et,A=[...p?[p]:et,t,...m].map(O=>go(O,u));let I=!Zn(A,rP);if(!i){const O=Ue(A,U=>!(I&&rP(U))&&o(U,p===U));if(O)return O}const R=(s=r.getSymlinkCache)==null?void 0:s.call(r).getSymlinkedDirectoriesByRealpath(),M=go(t,u);return R&&Sm(ai(M),O=>{const U=R.get(Bc(ol(O,u,l)));if(U)return zV(e,O,l)?!1:Ue(A,K=>{if(!zV(K,O,l))return;const Z=Em(O,K,l);for(const V of U){const se=Py(V,Z),G=o(se,K===p);if(I=!0,G)return G}})})||(i?Ue(A,O=>I&&rP(O)?void 0:o(O,O===p)):void 0)}function Axe(e,t,r,i,o={}){var s;const l=ol(e.importingSourceFileName,r.getCurrentDirectory(),Gv(r)),u=ol(t,r.getCurrentDirectory(),Gv(r)),p=(s=r.getModuleSpecifierCache)==null?void 0:s.call(r);if(p){const m=p.get(l,u,i,o);if(m!=null&&m.modulePaths)return m.modulePaths}const h=Ixe(e,t,r);return p&&p.setModulePaths(l,u,i,o,h),h}function Ixe(e,t,r){const i=new Map;Txe(e.importingSourceFileName,t,r,!0,(s,l)=>{const u=L0(s);i.set(s,{path:e.getCanonicalFileName(s),isRedirect:l,isInNodeModules:u})});const o=[];for(let s=e.canonicalSourceDirectory;i.size!==0;){const l=Bc(s);let u;i.forEach(({path:h,isRedirect:m,isInNodeModules:b},A)=>{uo(h,l)&&((u||(u=[])).push({path:A,isRedirect:m,isInNodeModules:b}),i.delete(A))}),u&&(u.length>1&&u.sort(Sxe),o.push(...u));const p=ai(s);if(p===s)break;s=p}if(i.size){const s=zo(i.entries(),([l,{isRedirect:u,isInNodeModules:p}])=>({path:l,isRedirect:u,isInNodeModules:p}));s.length>1&&s.sort(Sxe),o.push(...s)}return o}function Cje(e,t){var r;const i=(r=e.declarations)==null?void 0:r.find(l=>Aj(l)&&(!WE(l)||!Yc(em(l.name))));if(i)return i.name.text;const s=Hi(e.declarations,l=>{var u,p,h,m;if(!Xl(l))return;const b=M(l);if(!((u=b==null?void 0:b.parent)!=null&&u.parent&&O_(b.parent)&&ku(b.parent.parent)&&$i(b.parent.parent.parent)))return;const A=(m=(h=(p=b.parent.parent.symbol.exports)==null?void 0:p.get("export="))==null?void 0:h.valueDeclaration)==null?void 0:m.expression;if(!A)return;const I=t.getSymbolAtLocation(A);if(!I)return;if(((I==null?void 0:I.flags)&2097152?t.getAliasedSymbol(I):I)===l.symbol)return b.parent.parent;function M(C){for(;C.flags&8;)C=C.parent;return C}})[0];if(s)return s.name.text}function xxe(e,t,r,i,o){for(const l in t)for(const u of t[l]){const p=ga(u),h=p.indexOf("*"),m=r.map(b=>({ending:b,value:Lw(e,[b],o)}));if(jg(p)&&m.push({ending:void 0,value:e}),h!==-1){const b=p.substring(0,h),A=p.substring(h+1);for(const{ending:I,value:R}of m)if(R.length>=b.length+A.length&&uo(R,b)&&Al(R,A)&&s({ending:I,value:R})){const M=R.substring(b.length,R.length-A.length);if(!Wp(M))return $A(l,M)}}else if(bt(m,b=>b.ending!==0&&p===b.value)||bt(m,b=>b.ending===0&&p===b.value&&s(b)))return l}function s({ending:l,value:u}){return l!==0||u===Lw(e,[l],o,i)}}function JF(e,t,r,i,o,s,l,u,p){if(typeof s=="string"){const h=!CR(t),m=()=>t.getCommonSourceDirectory(),b=p&&TJ(r,e,h,m),A=p&&SJ(r,e,h,m),I=go(Qr(i,s),void 0),R=XA(r)?Id(r)+ple(r,e):void 0;switch(u){case 0:if(R&&Lg(R,I,h)===0||Lg(r,I,h)===0||b&&Lg(b,I,h)===0||A&&Lg(A,I,h)===0)return{moduleFileToTry:o};break;case 1:if(R&&bm(I,R,h)){const U=Em(I,R,!1);return{moduleFileToTry:go(Qr(Qr(o,s),U),void 0)}}if(bm(I,r,h)){const U=Em(I,r,!1);return{moduleFileToTry:go(Qr(Qr(o,s),U),void 0)}}if(b&&bm(I,b,h)){const U=Em(I,b,!1);return{moduleFileToTry:Qr(o,U)}}if(A&&bm(I,A,h)){const U=Em(I,A,!1);return{moduleFileToTry:Qr(o,U)}}break;case 2:const M=I.indexOf("*"),C=I.slice(0,M),O=I.slice(M+1);if(R&&uo(R,C,h)&&Al(R,O,h)){const U=R.slice(C.length,R.length-O.length);return{moduleFileToTry:$A(o,U)}}if(uo(r,C,h)&&Al(r,O,h)){const U=r.slice(C.length,r.length-O.length);return{moduleFileToTry:$A(o,U)}}if(b&&uo(b,C,h)&&Al(b,O,h)){const U=b.slice(C.length,b.length-O.length);return{moduleFileToTry:$A(o,U)}}if(A&&uo(A,C,h)&&Al(A,O,h)){const U=A.slice(C.length,A.length-O.length);return{moduleFileToTry:$A(o,U)}}break}}else{if(Array.isArray(s))return Ue(s,h=>JF(e,t,r,i,o,h,l,u,p));if(typeof s=="object"&&s!==null){for(const h of Xh(s))if(h==="default"||l.indexOf(h)>=0||Cw(l,h)){const m=s[h],b=JF(e,t,r,i,o,m,l,u,p);if(b)return b}}}}function Pje(e,t,r,i,o,s,l){return typeof s=="object"&&s!==null&&!Array.isArray(s)&&VF(s)?Ue(Xh(s),u=>{const p=go(Qr(o,u),void 0),h=Al(u,"/")?1:u.includes("*")?2:0;return JF(e,t,r,i,p,s[u],l,h,!1)}):JF(e,t,r,i,o,s,l,0,!1)}function Mje(e,t,r,i,o){var s,l,u;if(!i.readFile||!_W(r))return;const p=cle(i,t);if(!p)return;const h=Qr(p,"package.json"),m=(l=(s=i.getPackageJsonInfoCache)==null?void 0:s.call(i))==null?void 0:l.getPackageJsonInfo(h);if(Kse(m)||!i.fileExists(h))return;const b=(m==null?void 0:m.contents.packageJsonContent)||w3(i.readFile(h)),A=b==null?void 0:b.imports;if(!A)return;const I=ib(r,o);return(u=Ue(Xh(A),R=>{if(!uo(R,"#")||R==="#"||uo(R,"#/"))return;const M=Al(R,"/")?1:R.includes("*")?2:0;return JF(r,i,e,p,R,A[R],I,M,!0)}))==null?void 0:u.moduleFileToTry}function Lje(e,t,r,i,o,s){const l=Rxe(t,e,i);if(l===void 0)return;const u=Rxe(r,e,i),p=Pi(u,m=>wt(l,b=>CE(Em(m,b,i)))),h=yG(p,Sk);if(h)return Lw(h,o,s)}function ule({path:e,isRedirect:t},{getCanonicalFileName:r,canonicalSourceDirectory:i},o,s,l,u,p,h){if(!s.fileExists||!s.readFile)return;const m=aW(e);if(!m)return;const A=Mw(u,l,o).getAllowedEndingsInPreferredOrder();let I=e,R=!1;if(!p){let Z=m.packageRootIndex,V;for(;;){const{moduleFileToTry:se,packageRootPath:G,blockedByExports:ne,verbatimFromExports:he}=K(Z);if(md(l)!==1){if(ne)return;if(he)return se}if(G){I=G,R=!0;break}if(V||(V=se),Z=e.indexOf(al,Z+1),Z===-1){I=Lw(V,A,l,s);break}}}if(t&&!R)return;const M=s.getGlobalTypingsCacheLocation&&s.getGlobalTypingsCacheLocation(),C=r(I.substring(0,m.topLevelNodeModulesIndex));if(!(uo(i,C)||M&&uo(r(M),C)))return;const O=I.substring(m.topLevelPackageNameIndex+1),U=FP(O);return md(l)===1&&U===O?void 0:U;function K(Z){var V,se;const G=e.substring(0,Z),ne=Qr(G,"package.json");let he=e,ye=!1;const $=(se=(V=s.getPackageJsonInfoCache)==null?void 0:V.call(s))==null?void 0:se.getPackageJsonInfo(ne);if(FF($)||$===void 0&&s.fileExists(ne)){const Y=($==null?void 0:$.contents.packageJsonContent)||w3(s.readFile(ne)),oe=h||o.impliedNodeFormat;if(mW(l)){const pe=G.substring(m.topLevelPackageNameIndex+1),ie=FP(pe),ve=ib(l,oe),Le=Y!=null&&Y.exports?Pje(l,s,e,G,ie,Y.exports,ve):void 0;if(Le)return{...Le,verbatimFromExports:!0};if(Y!=null&&Y.exports)return{moduleFileToTry:e,blockedByExports:!0}}const fe=Y!=null&&Y.typesVersions?OF(Y.typesVersions):void 0;if(fe){const pe=e.slice(G.length+1),ie=xxe(pe,fe.paths,A,s,l);ie===void 0?ye=!0:he=Qr(G,ie)}const Ne=(Y==null?void 0:Y.typings)||(Y==null?void 0:Y.types)||(Y==null?void 0:Y.main)||"index.js";if(Po(Ne)&&!(ye&&zU(eW(fe.paths),Ne))){const pe=ol(Ne,G,r),ie=r(he);if(Id(pe)===Id(ie))return{packageRootPath:G,moduleFileToTry:he};if((Y==null?void 0:Y.type)!=="module"&&!Tc(ie,kk)&&uo(ie,pe)&&ai(ie)===o0(pe)&&Id(ic(ie))==="index")return{packageRootPath:G,moduleFileToTry:he}}}else{const Y=r(he.substring(m.packageRootIndex+1));if(Y==="index.d.ts"||Y==="index.js"||Y==="index.ts"||Y==="index.tsx")return{moduleFileToTry:he,packageRootPath:G}}return{moduleFileToTry:he}}}function kje(e,t){if(!e.fileExists)return;const r=ia(YC({allowJs:!0},[{extension:"node",isMixedContent:!1},{extension:"json",isMixedContent:!1,scriptKind:6}]));for(const i of r){const o=t+i;if(e.fileExists(o))return o}}function Rxe(e,t,r){return Hi(t,i=>{const o=Nxe(e,i,r);return o!==void 0&&Cxe(o)?void 0:o})}function Lw(e,t,r,i){if(Tc(e,[".json",".mjs",".cjs"]))return e;const o=Id(e);if(e===o)return e;const s=t.indexOf(2),l=t.indexOf(3);if(Tc(e,[".mts",".cts"])&&l!==-1&&l<s)return e;if(Tc(e,[".d.mts",".mts",".d.cts",".cts"]))return o+dle(e,r);if(!Tc(e,[".d.ts"])&&Tc(e,[".ts"])&&e.includes(".d."))return Dxe(e);switch(t[0]){case 0:const u=Bx(o,"/index");return i&&u!==o&&kje(i,u)?o:u;case 1:return o;case 2:return o+dle(e,r);case 3:if(Su(e)){const p=t.findIndex(h=>h===0||h===1);return p!==-1&&p<s?o:o+dle(e,r)}return e;default:return N.assertNever(t[0])}}function Dxe(e){const t=ic(e);if(!Al(e,".ts")||!t.includes(".d.")||Tc(t,[".d.ts"]))return;const r=Tk(e,".ts"),i=r.substring(r.lastIndexOf("."));return r.substring(0,r.indexOf(".d."))+i}function dle(e,t){return ple(e,t)??N.fail(`Extension ${QC(e)} is unsupported:: FileName:: ${e}`)}function ple(e,t){const r=jg(e);switch(r){case".ts":case".d.ts":return".js";case".tsx":return t.jsx===1?".jsx":".js";case".js":case".jsx":case".json":return r;case".d.mts":case".mts":case".mjs":return".mjs";case".d.cts":case".cts":case".cjs":return".cjs";default:return}}function Nxe(e,t,r){const i=RA(t,e,t,r,!1);return fp(i)?void 0:i}function Cxe(e){return uo(e,"..")}var fle,mle=T({"src/compiler/moduleSpecifiers.ts"(){ra(),fle=(e=>(e[e.Relative=0]="Relative",e[e.NonRelative=1]="NonRelative",e[e.Shortest=2]="Shortest",e[e.ExternalNonRelative=3]="ExternalNonRelative",e))(fle||{})}}),m1={};X(m1,{RelativePreference:()=>fle,countPathComponents:()=>qF,forEachFileNameOfModule:()=>Txe,getModuleSpecifier:()=>HF,getModuleSpecifierPreferences:()=>Mw,getModuleSpecifiers:()=>yxe,getModuleSpecifiersWithCacheInfo:()=>bxe,getNodeModulesPackageName:()=>xje,tryGetJSExtensionForFile:()=>ple,tryGetModuleSpecifiersFromCache:()=>Rje,tryGetRealFileNameForNonJsDeclarationFileName:()=>Dxe,updateModuleSpecifier:()=>Ije});var _le=T({"src/compiler/_namespaces/ts.moduleSpecifiers.ts"(){mle()}});function wje(){this.flags=0}function as(e){return e.id||(e.id=vle,vle++),e.id}function Ta(e){return e.id||(e.id=gle,gle++),e.id}function Kq(e,t){const r=Kg(e);return r===1||t&&r===2}function hle(e){var t=[],r=n=>{t.push(n)},i,o=new Set,s,l,u=lu.getSymbolConstructor(),p=lu.getTypeConstructor(),h=lu.getSignatureConstructor(),m=0,b=0,A=0,I=0,R=0,M=0,C,O,U=!1,K=ua(),Z=[1],V=e.getCompilerOptions(),se=os(V),G=wu(V),ne=!!V.experimentalDecorators,he=dP(V),ye=Goe(V),$=FS(V),Y=fd(V,"strictNullChecks"),oe=fd(V,"strictFunctionTypes"),fe=fd(V,"strictBindCallApply"),Ne=fd(V,"strictPropertyInitialization"),pe=fd(V,"noImplicitAny"),ie=fd(V,"noImplicitThis"),ve=fd(V,"useUnknownInCatchVariables"),Le=!!V.keyofStringsOnly,He=Le?1:0,Ee=V.suppressExcessPropertyErrors?0:8192,De=V.exactOptionalPropertyTypes,Pe=fht(),We=qyt(),At=X_(),Se=ua(),je=Xa(4,"undefined");je.declarations=[];var at=Xa(1536,"globalThis",8);at.exports=Se,at.declarations=[],Se.set(at.escapedName,at);var Gt=Xa(4,"arguments"),vt=Xa(4,"require"),$e=V.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules",It=!V.verbatimModuleSyntax||!!V.importsNotUsedAsValues,tn,rn,Pn=0,Xn,hn=0;const Qt={getNodeCount:()=>od(e.getSourceFiles(),(n,a)=>n+a.nodeCount,0),getIdentifierCount:()=>od(e.getSourceFiles(),(n,a)=>n+a.identifierCount,0),getSymbolCount:()=>od(e.getSourceFiles(),(n,a)=>n+a.symbolCount,b),getTypeCount:()=>m,getInstantiationCount:()=>A,getRelationCacheSizes:()=>({assignable:qd.size,identity:ap.size,subtype:Ph.size,strictSubtype:Wf.size}),isUndefinedSymbol:n=>n===je,isArgumentsSymbol:n=>n===Gt,isUnknownSymbol:n=>n===ft,getMergedSymbol:rs,getDiagnostics:QFe,getGlobalDiagnostics:lyt,getRecursionIdentity:bee,getUnmatchedProperties:qve,getTypeOfSymbolAtLocation:(n,a)=>{const c=Do(a);return c?tft(n,c):_t},getTypeOfSymbol:dr,getSymbolsOfParameterPropertyDeclaration:(n,a)=>{const c=Do(n,Ao);return c===void 0?N.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node."):(N.assert(mp(c,c.parent)),M2(c,hl(a)))},getDeclaredTypeOfSymbol:el,getPropertiesOfType:gs,getPropertyOfType:(n,a)=>ya(n,hl(a)),getPrivateIdentifierPropertyOfType:(n,a,c)=>{const d=Do(c);if(!d)return;const _=hl(a),y=$ee(_,d);return y?Pye(n,y):void 0},getTypeOfPropertyOfType:(n,a)=>Xe(n,hl(a)),getIndexInfoOfType:(n,a)=>xg(n,a===0?ke:Tt),getIndexInfosOfType:yd,getIndexInfosOfIndexSymbol:Bge,getSignaturesOfType:Yo,getIndexTypeOfType:(n,a)=>dE(n,a===0?ke:Tt),getIndexType:n=>Q_(n),getBaseTypes:Mp,getBaseTypeOfLiteralType:bv,getWidenedType:Xp,getTypeFromTypeNode:n=>{const a=Do(n,ji);return a?Ei(a):_t},getParameterType:y_,getParameterIdentifierInfoAtPosition:P_t,getPromisedTypeOfPromise:i6,getAwaitedType:n=>dA(n),getReturnTypeOfSignature:ps,isNullableType:iB,getNullableType:V9,getNonNullableType:Ev,getNonOptionalType:Aee,getTypeArguments:Js,typeToTypeNode:At.typeToTypeNode,indexInfoToIndexSignatureDeclaration:At.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:At.signatureToSignatureDeclaration,symbolToEntityName:At.symbolToEntityName,symbolToExpression:At.symbolToExpression,symbolToNode:At.symbolToNode,symbolToTypeParameterDeclarations:At.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:At.symbolToParameterDeclaration,typeParameterToDeclaration:At.typeParameterToDeclaration,getSymbolsInScope:(n,a)=>{const c=Do(n);return c?cyt(c,a):[]},getSymbolAtLocation:n=>{const a=Do(n);return a?Hm(a,!0):void 0},getIndexInfosAtLocation:n=>{const a=Do(n);return a?gyt(a):void 0},getShorthandAssignmentValueSymbol:n=>{const a=Do(n);return a?vyt(a):void 0},getExportSpecifierLocalTargetSymbol:n=>{const a=Do(n,Ku);return a?yyt(a):void 0},getExportSymbolOfSymbol(n){return rs(n.exportSymbol||n)},getTypeAtLocation:n=>{const a=Do(n);return a?Ix(a):_t},getTypeOfAssignmentPattern:n=>{const a=Do(n,gC);return a&&Rte(a)||_t},getPropertySymbolOfDestructuringAssignment:n=>{const a=Do(n,Ve);return a?byt(a):void 0},signatureToString:(n,a,c,d)=>Oh(n,Do(a),c,d),typeToString:(n,a,c)=>Un(n,Do(a),c),symbolToString:(n,a,c,d)=>bi(n,Do(a),c,d),typePredicateToString:(n,a,c)=>Wh(n,Do(a),c),writeSignature:(n,a,c,d,_)=>Oh(n,Do(a),c,d,_),writeType:(n,a,c,d)=>Un(n,Do(a),c,d),writeSymbol:(n,a,c,d,_)=>bi(n,Do(a),c,d,_),writeTypePredicate:(n,a,c,d)=>Wh(n,Do(a),c,d),getAugmentedPropertiesOfType:Mbe,getRootSymbols:a7e,getSymbolOfExpando:ate,getContextualType:(n,a)=>{const c=Do(n,yt);if(c)return a&4?ao(c,()=>Yd(c,a)):Yd(c,a)},getContextualTypeForObjectLiteralElement:n=>{const a=Do(n,Wg);return a?gye(a,void 0):void 0},getContextualTypeForArgumentAtIndex:(n,a)=>{const c=Do(n,wE);return c&&hye(c,a)},getContextualTypeForJsxAttribute:n=>{const a=Do(n,M4);return a&&b3e(a,void 0)},isContextSensitive:Uf,getTypeOfPropertyOfContextualType:bE,getFullyQualifiedName:qp,getResolvedSignature:(n,a,c)=>Oi(n,a,c,0),getCandidateSignaturesForStringLiteralCompletions:$t,getResolvedSignatureForSignatureHelp:(n,a,c)=>_i(n,()=>Oi(n,a,c,16)),getExpandedParameters:E8e,hasEffectiveRestParameter:Hh,containsArgumentsReference:Wge,getConstantValue:n=>{const a=Do(n,d7e);return a?Lbe(a):void 0},isValidPropertyAccess:(n,a)=>{const c=Do(n,jre);return!!c&&Bmt(c,hl(a))},isValidPropertyAccessForCompletions:(n,a,c)=>{const d=Do(n,Fr);return!!d&&Y3e(d,a,c)},getSignatureFromDeclaration:n=>{const a=Do(n,ea);return a?fm(a):void 0},isImplementationOfOverload:n=>{const a=Do(n,ea);return a?c7e(a):void 0},getImmediateAliasedSymbol:Sye,getAliasedSymbol:Fc,getEmitResolver:ly,getExportsOfModule:wT,getExportsAndPropertiesOfModule:dN,forEachExportAndPropertyOfModule:pN,getSymbolWalker:lle(Tct,jf,ps,Mp,__,dr,jm,Ld,Vp,Js),getAmbientModules:wbt,getJsxIntrinsicTagNamesAt:ymt,isOptionalParameter:n=>{const a=Do(n,Ao);return a?N8(a):!1},tryGetMemberInModuleExports:(n,a)=>OT(hl(n),a),tryGetMemberInModuleExportsAndProperties:(n,a)=>fN(hl(n),a),tryFindAmbientModule:n=>qZ(n,!0),tryFindAmbientModuleWithoutAugmentations:n=>qZ(n,!1),getApparentType:kd,getUnionType:ti,isTypeAssignableTo:Ea,createAnonymousType:Ls,createSignature:Ig,createSymbol:Xa,createIndexInfo:Vh,getAnyType:()=>j,getStringType:()=>ke,getStringLiteralType:Xd,getNumberType:()=>Tt,getNumberLiteralType:g_,getBigIntType:()=>kt,createPromiseType:_B,createArrayType:Vu,getElementTypeOfArrayType:G9,getBooleanType:()=>Ni,getFalseType:n=>n?en:bn,getTrueType:n=>n?Bn:Hn,getVoidType:()=>ir,getUndefinedType:()=>Oe,getNullType:()=>me,getESSymbolType:()=>Ai,getNeverType:()=>jr,getOptionalType:()=>J,getPromiseType:()=>I9(!1),getPromiseLikeType:()=>l6e(!1),getAsyncIterableType:()=>{const n=nee(!1);if(n!==ko)return n},isSymbolAccessible:ki,isArrayType:qf,isTupleType:Ba,isArrayLikeType:by,isEmptyAnonymousObjectType:Uh,isTypeInvalidDueToUnionDiscriminant:ict,getExactOptionalProperties:Pdt,getAllPossiblePropertiesOfTypes:oct,getSuggestedSymbolForNonexistentProperty:kye,getSuggestionForNonexistentProperty:wye,getSuggestedSymbolForNonexistentJSXAttribute:K3e,getSuggestedSymbolForNonexistentSymbol:(n,a,c)=>Oye(n,hl(a),c),getSuggestionForNonexistentSymbol:(n,a,c)=>Omt(n,hl(a),c),getSuggestedSymbolForNonexistentModule:Zee,getSuggestionForNonexistentExport:Wmt,getSuggestedSymbolForNonexistentClassMember:J3e,getBaseConstraintOfType:Gu,getDefaultFromTypeParameter:n=>n&&n.flags&262144?JT(n):void 0,resolveName(n,a,c,d){return bl(a,hl(n),c,void 0,void 0,!1,d)},getJsxNamespace:n=>Vi(J0(n)),getJsxFragmentFactory:n=>{const a=wbe(n);return a&&Vi(Vp(a).escapedText)},getAccessibleSymbolChain:Ib,getTypePredicateOfSignature:jf,resolveExternalModuleName:n=>{const a=Do(n,yt);return a&&vd(a,a,!0)},resolveExternalModuleSymbol:Np,tryGetThisTypeAt:(n,a,c)=>{const d=Do(n);return d&&pye(d,a,c)},getTypeArgumentConstraint:n=>{const a=Do(n,ji);return a&&Hht(a)},getSuggestionDiagnostics:(n,a)=>{const c=Do(n,$i)||N.fail("Could not determine parsed source file.");if(ZC(c,V,e))return et;let d;try{return i=a,Cbe(c),N.assert(!!(ei(c).flags&1)),d=Jr(d,vT.getDiagnostics(c.fileName)),mFe($Fe(c),(_,y,x)=>{!aR(_)&&!YFe(y,!!(_.flags&33554432))&&(d||(d=[])).push({...x,category:2})}),d||et}finally{i=void 0}},runWithCancellationToken:(n,a)=>{try{return i=n,a(Qt)}finally{i=void 0}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:kr,isDeclarationVisible:d_,isPropertyAccessible:Fye,getTypeOnlyAliasDeclaration:Ff,getMemberOverrideModifierStatus:Tvt,isTypeParameterPossiblyReferenced:M9,typeHasCallOrConstructSignatures:Dte};function $t(n,a){const c=new Set,d=[];ao(a,()=>Oi(n,d,void 0,0));for(const _ of d)c.add(_);d.length=0,_i(a,()=>Oi(n,d,void 0,0));for(const _ of d)c.add(_);return zo(c)}function _i(n,a){if(n=Gn(n,cj),n){const c=[],d=[];for(;n;){const y=ei(n);if(c.push([y,y.resolvedSignature]),y.resolvedSignature=void 0,QE(n)){const x=Xi(Ir(n)),k=x.type;d.push([x,k]),x.type=void 0}n=Gn(n.parent,cj)}const _=a();for(const[y,x]of c)y.resolvedSignature=x;for(const[y,x]of d)y.type=x;return _}return a()}function ao(n,a){const c=Gn(n,wE);if(c){let _=n;do ei(_).skipDirectInference=!0,_=_.parent;while(_&&_!==c)}U=!0;const d=_i(n,a);if(U=!1,c){let _=n;do ei(_).skipDirectInference=void 0,_=_.parent;while(_&&_!==c)}return d}function Oi(n,a,c,d){const _=Do(n,wE);tn=c;const y=_?WN(_,a,d):void 0;return tn=void 0,y}var No=new Map,Mn=new Map,Di=new Map,Ar=new Map,sn=new Map,tt=new Map,zt=new Map,Rn=new Map,li=new Map,hi=new Map,Qi=new Map,Io=new Map,ma=new Map,Wa=new Map,Sn=new Map,kn=[],qe=new Map,mt=new Set,ft=Xa(4,"unknown"),Ct=Xa(0,"__resolving__"),le=new Map,Fe=new Map,pt=new Set,j=cc(1,"any"),ot=cc(1,"any",262144,"auto"),Rt=cc(1,"any",void 0,"wildcard"),Ye=cc(1,"any",void 0,"blocked string"),_t=cc(1,"error"),Vt=cc(1,"unresolved"),vn=cc(1,"any",65536,"non-inferrable"),fn=cc(1,"intrinsic"),_n=cc(2,"unknown"),q=cc(2,"unknown",void 0,"non-null"),Oe=cc(32768,"undefined"),Lt=Y?Oe:cc(32768,"undefined",65536,"widening"),L=cc(32768,"undefined",void 0,"missing"),_e=De?L:Oe,J=cc(32768,"undefined",void 0,"optional"),me=cc(65536,"null"),Ge=Y?me:cc(65536,"null",65536,"widening"),ke=cc(4,"string"),Tt=cc(8,"number"),kt=cc(64,"bigint"),en=cc(512,"false",void 0,"fresh"),bn=cc(512,"false"),Bn=cc(512,"true",void 0,"fresh"),Hn=cc(512,"true");Bn.regularType=Hn,Bn.freshType=Bn,Hn.regularType=Hn,Hn.freshType=Bn,en.regularType=bn,en.freshType=en,bn.regularType=bn,bn.freshType=en;var Ni=ti([bn,Hn]),Ai=cc(4096,"symbol"),ir=cc(16384,"void"),jr=cc(131072,"never"),vo=cc(131072,"never",262144,"silent"),Ci=cc(131072,"never",void 0,"implicit"),Ii=cc(131072,"never",void 0,"unreachable"),Kr=cc(67108864,"object"),xo=ti([ke,Tt]),Dn=ti([ke,Tt,Ai]),Fs=Le?ke:Dn,Ql=ti([Tt,kt]),Lo=ti([ke,Tt,Ni,kt,me,Oe]),cs=XT(["",""],[Tt]),Vs=P9(n=>n.flags&262144?idt(n):n,()=>"(restrictive mapper)"),vl=P9(n=>n.flags&262144?Rt:n,()=>"(permissive mapper)"),uu=cc(131072,"never",void 0,"unique literal"),ho=P9(n=>n.flags&262144?uu:n,()=>"(unique literal mapper)"),pa,du=P9(n=>(pa&&(n===Ip||n===Ms||n===Rc)&&pa(!0),n),()=>"(unmeasurable reporter)"),As=P9(n=>(pa&&(n===Ip||n===Ms||n===Rc)&&pa(!1),n),()=>"(unreliable reporter)"),La=Ls(void 0,K,et,et,et),_l=Ls(void 0,K,et,et,et);_l.objectFlags|=2048;var wf=Xa(2048,"__type");wf.members=ua();var lc=Ls(wf,K,et,et,et),Nl=Ls(void 0,K,et,et,et),ul=Y?ti([Oe,me,Nl]):_n,ko=Ls(void 0,K,et,et,et);ko.instantiations=new Map;var nn=Ls(void 0,K,et,et,et);nn.objectFlags|=262144;var js=Ls(void 0,K,et,et,et),nu=Ls(void 0,K,et,et,et),pu=Ls(void 0,K,et,et,et),Ip=yf(),Ms=yf();Ms.constraint=Ip;var Rc=yf(),de=yf(),ee=yf();ee.constraint=de;var we=T9(1,"<<unresolved>>",0,j),Et=Ig(void 0,void 0,void 0,et,j,void 0,0,0),un=Ig(void 0,void 0,void 0,et,_t,void 0,0,0),Er=Ig(void 0,void 0,void 0,et,j,void 0,0,0),vr=Ig(void 0,void 0,void 0,et,vo,void 0,0,0),Ur=Vh(Tt,ke,!0),xi=new Map,Lr={get yieldType(){return N.fail("Not supported")},get returnType(){return N.fail("Not supported")},get nextType(){return N.fail("Not supported")}},$o=Ty(j,j,j),Tl=Ty(j,j,_n),Hc=Ty(jr,j,Oe),Us={iterableCacheKey:"iterationTypesOfAsyncIterable",iteratorCacheKey:"iterationTypesOfAsyncIterator",iteratorSymbolName:"asyncIterator",getGlobalIteratorType:Fct,getGlobalIterableType:nee,getGlobalIterableIteratorType:zct,getGlobalGeneratorType:Bct,resolveIterationType:(n,a)=>dA(n,a,f.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member),mustHaveANextMethodDiagnostic:f.An_async_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:f.The_0_property_of_an_async_iterator_must_be_a_method,mustHaveAValueDiagnostic:f.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property},vc={iterableCacheKey:"iterationTypesOfIterable",iteratorCacheKey:"iterationTypesOfIterator",iteratorSymbolName:"iterator",getGlobalIteratorType:Gct,getGlobalIterableType:Qge,getGlobalIterableIteratorType:Vct,getGlobalGeneratorType:jct,resolveIterationType:(n,a)=>n,mustHaveANextMethodDiagnostic:f.An_iterator_must_have_a_next_method,mustBeAMethodDiagnostic:f.The_0_property_of_an_iterator_must_be_a_method,mustHaveAValueDiagnostic:f.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property},Ss,qc=new Map,op=[],Wc,cm,gd,Ce,Wt,Jn,yo,Qo,na,Zl,yc,dl,yl,Vl,ec,Jc,ff,jd,Cd,Of,U_,Ch,$g,Bu,Qg,xp,_g,Ud,te,ct,Ft,jt,F,Te,st,Jt,rr,oi,$r,io,Fa,za,Ol,fu,Dc,Rp,Hd,pb,us,km,wm,Ui,Zg,ay,Om,x1,R1,mf=new Map,H_=0,_f=0,ev=0,ze=!1,Ze=0,Mt,Ht,yn,Yn=[],gn=[],$n=[],fi=0,cr=[],ri=[],fr=0,Zo=Xd(""),Ka=g_(0),Zu=see({negative:!1,base10Value:"0"}),mu=[],tv=[],j0=[],JI=0,U0=!1,QD=0,ZD=10,eN=[],hT=[],D1=[],KI=[],tN=[],XI=[],YI=[],$I=[],QI=[],gT=[],ZI=[],N1=[],C1=[],fb=[],mb=[],hg=[],H0=[],ts=RR(),vT=RR(),nN=wh(),q0,nv,Ph=new Map,Wf=new Map,qd=new Map,Dp=new Map,ap=new Map,sy=new Map,yT=ua();yT.set(je.escapedName,je);var rN=[[".mts",".mjs"],[".ts",".js"],[".cts",".cjs"],[".mjs",".mjs"],[".js",".js"],[".cjs",".cjs"],[".tsx",V.jsx===1?".jsx":".js"],[".jsx",".jsx"],[".json",".json"]];return Jyt(),Qt;function ex(n){return n?Sn.get(n):void 0}function _b(n,a){return n&&Sn.set(n,a),a}function J0(n){if(n){const a=jn(n);if(a)if(hI(n)){if(a.localJsxFragmentNamespace)return a.localJsxFragmentNamespace;const c=a.pragmas.get("jsxfrag");if(c){const _=To(c)?c[0]:c;if(a.localJsxFragmentFactory=bI(_.arguments.factory,se),nt(a.localJsxFragmentFactory,bc,Zd),a.localJsxFragmentFactory)return a.localJsxFragmentNamespace=Vp(a.localJsxFragmentFactory).escapedText}const d=wbe(n);if(d)return a.localJsxFragmentFactory=d,a.localJsxFragmentNamespace=Vp(d).escapedText}else{const c=tx(a);if(c)return a.localJsxNamespace=c}}return q0||(q0="React",V.jsxFactory?(nv=bI(V.jsxFactory,se),nt(nv,bc),nv&&(q0=Vp(nv).escapedText)):V.reactNamespace&&(q0=hl(V.reactNamespace))),nv||(nv=w.createQualifiedName(w.createIdentifier(Vi(q0)),"createElement")),q0}function tx(n){if(n.localJsxNamespace)return n.localJsxNamespace;const a=n.pragmas.get("jsx");if(a){const c=To(a)?a[0]:a;if(n.localJsxFactory=bI(c.arguments.factory,se),nt(n.localJsxFactory,bc,Zd),n.localJsxFactory)return n.localJsxNamespace=Vp(n.localJsxFactory).escapedText}}function bc(n){return vh(n,-1,-1),In(n,bc,void 0)}function ly(n,a){return QFe(n,a),We}function nx(n,a,...c){const d=n?wr(n,a,...c):Hl(a,...c),_=ts.lookup(d);return _||(ts.add(d),d)}function a_(n,a,c,...d){const _=Je(a,c,...d);return _.skippedOn=n,_}function bT(n,a,...c){return n?wr(n,a,...c):Hl(a,...c)}function Je(n,a,...c){const d=bT(n,a,...c);return ts.add(d),d}function s_(n,a){n?ts.add(a):vT.add({...a,category:2})}function _u(n,a,c,...d){if(a.pos<0||a.end<0){if(!n)return;const _=jn(a);s_(n,"message"in c?Qc(_,0,0,c,...d):Lj(_,c));return}s_(n,"message"in c?wr(a,c,...d):Fg(jn(a),a,c))}function K0(n,a,c,...d){const _=Je(n,c,...d);if(a){const y=wr(n,f.Did_you_forget_to_use_await);wa(_,y)}return _}function rx(n,a){const c=Array.isArray(n)?Ue(n,XV):XV(n);return c&&wa(a,wr(c,f.The_declaration_was_marked_as_deprecated_here)),vT.add(a),a}function hb(n){const a=Pd(n);return a&&Me(n.declarations)>1?a.flags&64?bt(n.declarations,cy):Zn(n.declarations,cy):!!n.valueDeclaration&&cy(n.valueDeclaration)||Me(n.declarations)&&Zn(n.declarations,cy)}function cy(n){return!!(aS(n)&536870912)}function uy(n,a,c){const d=wr(n,f._0_is_deprecated,c);return rx(a,d)}function P2(n,a,c,d){const _=c?wr(n,f.The_signature_0_of_1_is_deprecated,d,c):wr(n,f._0_is_deprecated,d);return rx(a,_)}function Xa(n,a,c){b++;const d=new u(n|33554432,a);return d.links=new Ele,d.links.checkFlags=c||0,d}function l_(n,a){const c=Xa(1,n);return c.links.type=a,c}function ET(n,a){const c=Xa(4,n);return c.links.type=a,c}function ST(n){let a=0;return n&2&&(a|=111551),n&1&&(a|=111550),n&4&&(a|=0),n&8&&(a|=900095),n&16&&(a|=110991),n&32&&(a|=899503),n&64&&(a|=788872),n&256&&(a|=899327),n&128&&(a|=899967),n&512&&(a|=110735),n&8192&&(a|=103359),n&32768&&(a|=46015),n&65536&&(a|=78783),n&262144&&(a|=526824),n&524288&&(a|=788968),n&2097152&&(a|=2097152),a}function X0(n,a){a.mergeId||(a.mergeId=yle,yle++),eN[a.mergeId]=n}function TT(n){const a=Xa(n.flags,n.escapedName);return a.declarations=n.declarations?n.declarations.slice():[],a.parent=n.parent,n.valueDeclaration&&(a.valueDeclaration=n.valueDeclaration),n.constEnumOnlyModule&&(a.constEnumOnlyModule=!0),n.members&&(a.members=new Map(n.members)),n.exports&&(a.exports=new Map(n.exports)),X0(a,n),a}function um(n,a,c=!1){if(!(n.flags&ST(a.flags))||(a.flags|n.flags)&67108864){if(a===n)return n;if(!(n.flags&33554432)){const _=jl(n);if(_===ft)return a;n=TT(_)}a.flags&512&&n.flags&512&&n.constEnumOnlyModule&&!a.constEnumOnlyModule&&(n.constEnumOnlyModule=!1),n.flags|=a.flags,a.valueDeclaration&&YL(n,a.valueDeclaration),Jr(n.declarations,a.declarations),a.members&&(n.members||(n.members=ua()),c_(n.members,a.members,c)),a.exports&&(n.exports||(n.exports=ua()),c_(n.exports,a.exports,c)),c||X0(n,a)}else if(n.flags&1024)n!==at&&Je(a.declarations&&Mo(a.declarations[0]),f.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,bi(n));else{const _=!!(n.flags&384||a.flags&384),y=!!(n.flags&2||a.flags&2),x=_?f.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:y?f.Cannot_redeclare_block_scoped_variable_0:f.Duplicate_identifier_0,k=a.declarations&&jn(a.declarations[0]),z=n.declarations&&jn(n.declarations[0]),H=RL(k,V.checkJs),re=RL(z,V.checkJs),be=bi(a);if(k&&z&&Ss&&!_&&k!==z){const ge=Lg(k.path,z.path)===-1?k:z,Ke=ge===k?z:k,gt=n0(Ss,`${ge.path}|${Ke.path}`,()=>({firstFile:ge,secondFile:Ke,conflictingSymbols:new Map})),Dt=n0(gt.conflictingSymbols,be,()=>({isBlockScoped:y,firstFileLocations:[],secondFileLocations:[]}));H||d(Dt.firstFileLocations,a),re||d(Dt.secondFileLocations,n)}else H||dm(a,x,be,n),re||dm(n,x,be,a)}return n;function d(_,y){if(y.declarations)for(const x of y.declarations)Tf(_,x)}}function dm(n,a,c,d){Ue(n.declarations,_=>{rv(_,a,c,d.declarations)})}function rv(n,a,c,d){const _=(g0(n,!1)?jj(n):Mo(n))||n,y=nx(_,a,c);for(const x of d||et){const k=(g0(x,!1)?jj(x):Mo(x))||x;if(k===_)continue;y.relatedInformation=y.relatedInformation||[];const z=wr(k,f._0_was_also_declared_here,c),H=wr(k,f.and_here);Me(y.relatedInformation)>=5||bt(y.relatedInformation,re=>KC(re,H)===0||KC(re,z)===0)||wa(y,Me(y.relatedInformation)?H:z)}}function ix(n,a){if(!(n!=null&&n.size))return a;if(!(a!=null&&a.size))return n;const c=ua();return c_(c,n),c_(c,a),c}function c_(n,a,c=!1){a.forEach((d,_)=>{const y=n.get(_);n.set(_,y?um(y,d,c):rs(d))})}function iN(n){var a,c,d;const _=n.parent;if(((a=_.symbol.declarations)==null?void 0:a[0])!==_){N.assert(_.symbol.declarations.length>1);return}if(R_(_))c_(Se,_.symbol.exports);else{const y=n.parent.parent.flags&33554432?void 0:f.Invalid_module_name_in_augmentation_module_0_cannot_be_found;let x=sv(n,n,y,!0);if(!x)return;if(x=Np(x),x.flags&1920)if(bt(cm,k=>x===k.symbol)){const k=um(_.symbol,x,!0);gd||(gd=new Map),gd.set(n.text,k)}else{if((c=x.exports)!=null&&c.get("__export")&&((d=_.symbol.exports)!=null&&d.size)){const k=bge(x,"resolvedExports");for(const[z,H]of zo(_.symbol.exports.entries()))k.has(z)&&!x.exports.has(z)&&um(k.get(z),H)}um(x,_.symbol)}else Je(n,f.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,n.text)}}function P1(n,a,c){a.forEach((_,y)=>{const x=n.get(y);x?Ue(x.declarations,d(Vi(y),c)):n.set(y,_)});function d(_,y){return x=>ts.add(wr(x,y,_))}}function Xi(n){if(n.flags&33554432)return n.links;const a=Ta(n);return hT[a]??(hT[a]=new Ele)}function ei(n){const a=as(n);return D1[a]||(D1[a]=new wje)}function Mh(n){return n.kind===312&&!zp(n)}function Jd(n,a,c){if(c){const d=rs(n.get(a));if(d&&(N.assert((xl(d)&1)===0,"Should never get an instantiated symbol here."),d.flags&c||d.flags&2097152&&Au(d)&c))return d}}function M2(n,a){const c=n.parent,d=n.parent.parent,_=Jd(c.locals,a,111551),y=Jd(Ob(d.symbol),a,111551);return _&&y?[_,y]:N.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function iv(n,a){const c=jn(n),d=jn(a),_=hh(n);if(c!==d){if(G&&(c.externalModuleIndicator||d.externalModuleIndicator)||!Ps(V)||kS(a)||n.flags&33554432||x(a,n))return!0;const z=e.getSourceFiles();return z.indexOf(c)<=z.indexOf(d)}if(a.flags&16777216||kS(a)||Zve(a))return!0;if(n.pos<=a.pos&&!(Jo(n)&&FL(a.parent)&&!n.initializer&&!n.exclamationToken)){if(n.kind===208){const z=b0(a,208);return z?Gn(z,Qa)!==Gn(n,Qa)||n.pos<z.pos:iv(b0(n,260),a)}else{if(n.kind===260)return!y(n,a);if(ui(n))return!Gn(a,z=>Za(z)&&z.parent.parent===n);if(Jo(n))return!k(n,a,!1);if(mp(n,n.parent))return!(ye&&su(n)===su(a)&&x(a,n))}return!0}if(a.parent.kind===281||a.parent.kind===277&&a.parent.isExportEquals||a.kind===277&&a.isExportEquals)return!0;if(x(a,n))return ye&&su(n)&&(Jo(n)||mp(n,n.parent))?!k(n,a,!0):!0;return!1;function y(z,H){switch(z.parent.parent.kind){case 243:case 248:case 250:if(L1(H,z,_))return!0;break}const re=z.parent.parent;return nR(re)&&L1(H,re.expression,_)}function x(z,H){return!!Gn(z,re=>{if(re===_)return"quit";if(ea(re))return!0;if(Rl(re))return H.pos<z.pos;const be=ii(re.parent,Jo);if(be&&be.initializer===re){if(sa(re.parent)){if(H.kind===174)return!0;if(Jo(H)&&su(z)===su(H)){const Ke=H.name;if(Ve(Ke)||Ji(Ke)){const gt=dr(Ir(H)),Dt=nr(H.parent.members,Rl);if(Nvt(Ke,gt,Dt,H.parent.pos,re.pos))return!0}}}else if(!(H.kind===172&&!sa(H))||su(z)!==su(H))return!0}return!1})}function k(z,H,re){return H.end>z.end?!1:Gn(H,ge=>{if(ge===z)return"quit";switch(ge.kind){case 219:return!0;case 172:return re&&(Jo(z)&&ge.parent===z.parent||mp(z,z.parent)&&ge.parent===z.parent.parent)?"quit":!0;case 241:switch(ge.parent.kind){case 177:case 174:case 178:return!0;default:return!1}default:return!1}})===void 0}}function L2(n,a,c){const d=os(V),_=a;if(Ao(c)&&_.body&&n.valueDeclaration&&n.valueDeclaration.pos>=_.body.pos&&n.valueDeclaration.end<=_.body.end&&d>=2){const k=ei(_);return k.declarationRequiresScopeChange===void 0&&(k.declarationRequiresScopeChange=Ue(_.parameters,y)||!1),!k.declarationRequiresScopeChange}return!1;function y(k){return x(k.name)||!!k.initializer&&x(k.initializer)}function x(k){switch(k.kind){case 219:case 218:case 262:case 176:return!1;case 174:case 177:case 178:case 303:return x(k.name);case 172:return mc(k)?!ye:x(k.name);default:return ZV(k)||qu(k)?d<7:Qa(k)&&k.dotDotDotToken&&am(k.parent)?d<4:ji(k)?!1:Ho(k,x)||!1}}}function gb(n){return bS(n)&&Og(n.type)||xP(n)&&Og(n.typeExpression)}function bl(n,a,c,d,_,y,x=!1,k=!0){return Up(n,a,c,d,_,y,x,k,Jd)}function Up(n,a,c,d,_,y,x,k,z){var H,re,be;const ge=n;let Ke,gt,Dt,an,cn,ar=!1;const On=n;let ln,zn=!1;e:for(;n;){if(a==="const"&&gb(n))return;if(SL(n)&&gt&&n.name===gt&&(gt=n,n=n.parent),fh(n)&&n.locals&&!Mh(n)&&(Ke=z(n.locals,a,c))){let er=!0;if(ea(n)&&gt&&gt!==n.body?(c&Ke.flags&788968&&gt.kind!==327&&(er=Ke.flags&262144?gt===n.type||gt.kind===169||gt.kind===348||gt.kind===349||gt.kind===168:!1),c&Ke.flags&3&&(L2(Ke,n,gt)?er=!1:Ke.flags&1&&(er=gt.kind===169||gt===n.type&&!!Gn(Ke.valueDeclaration,Ao)))):n.kind===194&&(er=gt===n.trueType),er)break e;Ke=void 0}switch(ar=ar||pm(n,gt),n.kind){case 312:if(!zp(n))break;zn=!0;case 267:const er=((H=Ir(n))==null?void 0:H.exports)||K;if(n.kind===312||Xl(n)&&n.flags&33554432&&!R_(n)){if(Ke=er.get("default")){const Ro=MR(Ke);if(Ro&&Ke.flags&c&&Ro.escapedName===a)break e;Ke=void 0}const tr=er.get(a);if(tr&&tr.flags===2097152&&(fl(tr,281)||fl(tr,280)))break}if(a!=="default"&&(Ke=z(er,a,c&2623475)))if($i(n)&&n.commonJsModuleIndicator&&!((re=Ke.declarations)!=null&&re.some(Zf)))Ke=void 0;else break e;break;case 266:if(Ke=z(((be=Ir(n))==null?void 0:be.exports)||K,a,c&8)){d&&om(V)&&!(n.flags&33554432)&&jn(n)!==jn(Ke.valueDeclaration)&&Je(On,f.Cannot_access_0_from_another_file_without_qualification_when_1_is_enabled_Use_2_instead,Vi(a),$e,`${Vi(gf(n).escapedName)}.${Vi(a)}`);break e}break;case 172:if(!sa(n)){const tr=lv(n.parent);tr&&tr.locals&&z(tr.locals,a,c&111551)&&(N.assertNode(n,Jo),an=n)}break;case 263:case 231:case 264:if(Ke=z(Ir(n).members||K,a,c&788968)){if(!ov(Ke,n)){Ke=void 0;break}if(gt&&sa(gt)){d&&Je(On,f.Static_members_cannot_reference_class_type_parameters);return}break e}if(Zc(n)&&c&32){const tr=n.name;if(tr&&a===tr.escapedText){Ke=n.symbol;break e}}break;case 233:if(gt===n.expression&&n.parent.token===96){const tr=n.parent.parent;if(ui(tr)&&(Ke=z(Ir(tr).members,a,c&788968))){d&&Je(On,f.Base_class_expressions_cannot_reference_class_type_parameters);return}}break;case 167:if(ln=n.parent.parent,(ui(ln)||ln.kind===264)&&(Ke=z(Ir(ln).members,a,c&788968))){d&&Je(On,f.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type);return}break;case 219:if(os(V)>=2)break;case 174:case 176:case 177:case 178:case 262:if(c&3&&a==="arguments"){Ke=Gt;break e}break;case 218:if(c&3&&a==="arguments"){Ke=Gt;break e}if(c&16){const tr=n.name;if(tr&&a===tr.escapedText){Ke=n.symbol;break e}}break;case 170:n.parent&&n.parent.kind===169&&(n=n.parent),n.parent&&($c(n.parent)||n.parent.kind===263)&&(n=n.parent);break;case 353:case 345:case 347:const qn=SR(n);qn&&(n=qn.parent);break;case 169:gt&&(gt===n.initializer||gt===n.name&&ta(gt))&&(cn||(cn=n));break;case 208:gt&&(gt===n.initializer||gt===n.name&&ta(gt))&&HE(n)&&!cn&&(cn=n);break;case 195:if(c&262144){const tr=n.typeParameter.name;if(tr&&a===tr.escapedText){Ke=n.typeParameter.symbol;break e}}break;case 281:gt&&gt===n.propertyName&&n.parent.parent.moduleSpecifier&&(n=n.parent.parent.parent);break}vb(n)&&(Dt=n),gt=n,n=sm(n)?g3(n)||n.parent:(r_(n)||uF(n))&&v0(n)||n.parent}if(y&&Ke&&(!Dt||Ke!==Dt.symbol)&&(Ke.isReferenced|=c),!Ke){if(gt&&(N.assertNode(gt,$i),gt.commonJsModuleIndicator&&a==="exports"&&c&gt.symbol.flags))return gt.symbol;x||(Ke=z(Se,a,c))}if(!Ke&&ge&&lr(ge)&&ge.parent&&Ad(ge.parent,!1))return vt;function Fn(){return an&&!ye?(Je(On,On&&an.type&&sL(an.type,On.pos)?f.Type_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:f.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,Rs(an.name),Wm(_)),!0):!1}if(Ke){if(d&&Fn())return}else{d&&r(()=>{if(!On||On.parent.kind!==331&&!M1(On,a,_)&&!Fn()&&!AT(On)&&!ox(On,a,c)&&!dy(On,a)&&!IT(On,a,c)&&!oN(On,a,c)&&!yg(On,a,c)){let er,qn;if(_&&(qn=kmt(_),qn&&Je(On,d,Wm(_),qn)),!qn&&k&&QD<ZD&&(er=Oye(ge,a,c),(er==null?void 0:er.valueDeclaration)&&ku(er.valueDeclaration)&&R_(er.valueDeclaration)&&(er=void 0),er)){const Ro=bi(er),Eo=Lye(ge,er,!1),Bo=c===1920||_&&typeof _!="string"&&$s(_)?f.Cannot_find_namespace_0_Did_you_mean_1:Eo?f.Could_not_find_name_0_Did_you_mean_1:f.Cannot_find_name_0_Did_you_mean_1,_o=bT(On,Bo,Wm(_),Ro);s_(!Eo,_o),er.valueDeclaration&&wa(_o,wr(er.valueDeclaration,f._0_is_declared_here,Ro))}!er&&!qn&&_&&Je(On,d,Wm(_)),QD++}});return}return d&&r(()=>{var er;if(On&&(c&2||(c&32||c&384)&&(c&111551)===111551)){const qn=vf(Ke);(qn.flags&2||qn.flags&32||qn.flags&384)&&Zs(qn,On)}if(Ke&&zn&&(c&111551)===111551&&!(ge.flags&16777216)){const qn=rs(Ke);Me(qn.declarations)&&Zn(qn.declarations,tr=>Zk(tr)||$i(tr)&&!!tr.symbol.globalExports)&&_u(!V.allowUmdGlobalAccess,On,f._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,Vi(a))}if(Ke&&cn&&!ar&&(c&111551)===111551){const qn=rs(jZ(Ke)),tr=C_(cn);qn===Ir(cn)?Je(On,f.Parameter_0_cannot_reference_itself,Rs(cn.name)):qn.valueDeclaration&&qn.valueDeclaration.pos>cn.pos&&tr.parent.locals&&z(tr.parent.locals,qn.escapedName,c)===qn&&Je(On,f.Parameter_0_cannot_reference_identifier_1_declared_after_it,Rs(cn.name),Rs(On))}if(Ke&&On&&c&111551&&Ke.flags&2097152&&!(Ke.flags&111551)&&!T0(On)){const qn=Ff(Ke,111551);if(qn){const tr=qn.kind===281||qn.kind===278||qn.kind===280?f._0_cannot_be_used_as_a_value_because_it_was_exported_using_export_type:f._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type,Ro=Vi(a);gg(Je(On,tr,Ro),qn,Ro)}}if(V.isolatedModules&&Ke&&zn&&(c&111551)===111551){const tr=z(Se,a,c)===Ke&&$i(gt)&&gt.locals&&z(gt.locals,a,-111552);if(tr){const Ro=(er=tr.declarations)==null?void 0:er.find(Eo=>Eo.kind===276||Eo.kind===273||Eo.kind===274||Eo.kind===271);Ro&&!_L(Ro)&&Je(Ro,f.Import_0_conflicts_with_global_value_used_in_this_file_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,Vi(a))}}}),Ke}function gg(n,a,c){return a?wa(n,wr(a,a.kind===281||a.kind===278||a.kind===280?f._0_was_exported_here:f._0_was_imported_here,c)):n}function pm(n,a){return n.kind!==219&&n.kind!==218?lI(n)||(Bs(n)||n.kind===172&&!sa(n))&&(!a||a!==n.name):a&&a===n.name?!1:n.asteriskToken||Zr(n,1024)?!0:!xS(n)}function vb(n){switch(n.kind){case 262:case 263:case 264:case 266:case 265:case 267:return!0;default:return!1}}function Wm(n){return Po(n)?Vi(n):Rs(n)}function ov(n,a){if(n.declarations){for(const c of n.declarations)if(c.kind===168&&(sm(c.parent)?CS(c.parent):c.parent)===a)return!(sm(c.parent)&&An(c.parent.parent.tags,Zf))}return!1}function M1(n,a,c){if(!Ve(n)||n.escapedText!==a||ZFe(n)||kS(n))return!1;const d=Fd(n,!1,!1);let _=d;for(;_;){if(ui(_.parent)){const y=Ir(_.parent);if(!y)break;const x=dr(y);if(ya(x,a))return Je(n,f.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,Wm(c),bi(y)),!0;if(_===d&&!sa(_)){const k=el(y).thisType;if(ya(k,a))return Je(n,f.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,Wm(c)),!0}}_=_.parent}return!1}function AT(n){const a=vg(n);return a&&Hs(a,64,!0)?(Je(n,f.Cannot_extend_an_interface_0_Did_you_mean_implements,fc(a)),!0):!1}function vg(n){switch(n.kind){case 80:case 211:return n.parent?vg(n.parent):void 0;case 233:if(Gl(n.expression))return n.expression;default:return}}function ox(n,a,c){const d=1920|(lr(n)?111551:0);if(c===d){const _=jl(bl(n,a,788968&~d,void 0,void 0,!1)),y=n.parent;if(_){if(xd(y)){N.assert(y.left===n,"Should only be resolving left side of qualified name as a namespace");const x=y.right.escapedText;if(ya(el(_),x))return Je(y,f.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,Vi(a),Vi(x)),!0}return Je(n,f._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,Vi(a)),!0}}return!1}function yg(n,a,c){if(c&788584){const d=jl(bl(n,a,111127,void 0,void 0,!1));if(d&&!(d.flags&1920))return Je(n,f._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,Vi(a)),!0}return!1}function q_(n){return n==="any"||n==="string"||n==="number"||n==="boolean"||n==="never"||n==="unknown"}function dy(n,a){return q_(a)&&n.parent.kind===281?(Je(n,f.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,a),!0):!1}function oN(n,a,c){if(c&111551){if(q_(a)){const y=n.parent.parent;if(y&&y.parent&&of(y)){const x=y.token,k=y.parent.kind;k===264&&x===96?Je(n,f.An_interface_cannot_extend_a_primitive_type_like_0_It_can_only_extend_other_named_object_types,Vi(a)):k===263&&x===96?Je(n,f.A_class_cannot_extend_a_primitive_type_like_0_Classes_can_only_extend_constructable_values,Vi(a)):k===263&&x===119&&Je(n,f.A_class_cannot_implement_a_primitive_type_like_0_It_can_only_implement_other_named_object_types,Vi(a))}else Je(n,f._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,Vi(a));return!0}const d=jl(bl(n,a,788544,void 0,void 0,!1)),_=d&&Au(d);if(d&&_!==void 0&&!(_&111551)){const y=Vi(a);return sN(a)?Je(n,f._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later,y):aN(n,d)?Je(n,f._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0,y,y==="K"?"P":"K"):Je(n,f._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,y),!0}}return!1}function aN(n,a){const c=Gn(n.parent,d=>Za(d)||yp(d)?!1:Ep(d)||"quit");if(c&&c.members.length===1){const d=el(a);return!!(d.flags&1048576)&&vB(d,384,!0)}return!1}function sN(n){switch(n){case"Promise":case"Symbol":case"Map":case"WeakMap":case"Set":case"WeakSet":return!0}return!1}function IT(n,a,c){if(c&111127){if(jl(bl(n,a,1024,void 0,void 0,!1)))return Je(n,f.Cannot_use_namespace_0_as_a_value,Vi(a)),!0}else if(c&788544&&jl(bl(n,a,1536,void 0,void 0,!1)))return Je(n,f.Cannot_use_namespace_0_as_a_type,Vi(a)),!0;return!1}function Zs(n,a){var c;if(N.assert(!!(n.flags&2||n.flags&32||n.flags&384)),n.flags&67108881&&n.flags&32)return;const d=(c=n.declarations)==null?void 0:c.find(_=>Sj(_)||ui(_)||_.kind===266);if(d===void 0)return N.fail("checkResolvedBlockScopedVariable could not find block-scoped declaration");if(!(d.flags&33554432)&&!iv(d,a)){let _;const y=Rs(Mo(d));n.flags&2?_=Je(a,f.Block_scoped_variable_0_used_before_its_declaration,y):n.flags&32?_=Je(a,f.Class_0_used_before_its_declaration,y):n.flags&256?_=Je(a,f.Enum_0_used_before_its_declaration,y):(N.assert(!!(n.flags&128)),om(V)&&(_=Je(a,f.Enum_0_used_before_its_declaration,y))),_&&wa(_,wr(d,f._0_is_declared_here,y))}}function L1(n,a,c){return!!a&&!!Gn(n,d=>d===a||(d===c||ea(d)&&(!xS(d)||Vc(d)&3)?"quit":!1))}function xT(n){switch(n.kind){case 271:return n;case 273:return n.parent;case 274:return n.parent.parent;case 276:return n.parent.parent.parent;default:return}}function Fm(n){return n.declarations&&Oo(n.declarations,yb)}function yb(n){return n.kind===271||n.kind===270||n.kind===273&&!!n.name||n.kind===274||n.kind===280||n.kind===276||n.kind===281||n.kind===277&&TR(n)||mr(n)&&Bl(n)===2&&TR(n)||ws(n)&&mr(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===64&&lN(n.parent.right)||n.kind===304||n.kind===303&&lN(n.initializer)||n.kind===260&&GE(n)||n.kind===208&&GE(n.parent.parent)}function lN(n){return ok(n)||Os(n)&&nh(n)}function RT(n,a){const c=Eb(n);if(c){const _=kR(c.expression).arguments[0];return Ve(c.name)?jl(ya(G8e(_),c.name.escapedText)):void 0}if(wi(n)||n.moduleReference.kind===283){const _=vd(n,Bj(n)||xC(n)),y=Np(_);return sp(n,_,y,!1),y}const d=sx(n.moduleReference,a);return k2(n,d),d}function k2(n,a){if(sp(n,void 0,a,!1)&&!n.isTypeOnly){const c=Ff(Ir(n)),d=c.kind===281||c.kind===278,_=d?f.An_import_alias_cannot_reference_a_declaration_that_was_exported_using_export_type:f.An_import_alias_cannot_reference_a_declaration_that_was_imported_using_import_type,y=d?f._0_was_exported_here:f._0_was_imported_here,x=c.kind===278?"*":Vi(c.name.escapedText);wa(Je(n.moduleReference,_),wr(c,y,x))}}function hr(n,a,c,d){const _=n.exports.get("export="),y=_?ya(dr(_),a,!0):n.exports.get(a),x=jl(y,d);return sp(c,y,x,!1),x}function ru(n){return kl(n)&&!n.isExportEquals||Zr(n,2048)||Ku(n)||Th(n)}function to(n){return ls(n)?e.getModeForUsageLocation(jn(n),n):void 0}function hf(n,a){return n===99&&a===1}function py(n){return to(n)===99&&Al(n.text,".json")}function J_(n,a,c,d){const _=n&&to(d);if(n&&_!==void 0&&100<=G&&G<=199){const y=hf(_,n.impliedNodeFormat);if(_===99||y)return y}if(!$)return!1;if(!n||n.isDeclarationFile){const y=hr(a,"default",void 0,!0);return!(y&&bt(y.declarations,ru)||hr(a,hl("__esModule"),void 0,c))}return dd(n)?typeof n.externalModuleIndicator!="object"&&!hr(a,hl("__esModule"),void 0,c):fy(a)}function ur(n,a){const c=vd(n,n.parent.moduleSpecifier);if(c)return DT(c,n,a)}function DT(n,a,c){var d;let _;EC(n)?_=n:_=hr(n,"default",a,c);const y=(d=n.declarations)==null?void 0:d.find($i),x=Y0(a);if(!x)return _;const k=py(x),z=J_(y,n,c,x);if(!_&&!z&&!k)if(fy(n)&&!$){const H=G>=5?"allowSyntheticDefaultImports":"esModuleInterop",be=n.exports.get("export=").valueDeclaration,ge=Je(a.name,f.Module_0_can_only_be_default_imported_using_the_1_flag,bi(n),H);be&&wa(ge,wr(be,f.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag,H))}else Sh(a)?Kc(n,a):NT(n,n,a,CA(a)&&a.propertyName||a.name);else if(z||k){const H=Np(n,c)||jl(n,c);return sp(a,n,H,!1),H}return sp(a,_,void 0,!1),_}function Y0(n){switch(n.kind){case 273:return n.parent.moduleSpecifier;case 271:return Ah(n.moduleReference)?n.moduleReference.expression:void 0;case 274:return n.parent.parent.moduleSpecifier;case 276:return n.parent.parent.parent.moduleSpecifier;case 281:return n.parent.parent.moduleSpecifier;default:return N.assertNever(n)}}function Kc(n,a){var c,d,_;if((c=n.exports)!=null&&c.has(a.symbol.escapedName))Je(a.name,f.Module_0_has_no_default_export_Did_you_mean_to_use_import_1_from_0_instead,bi(n),bi(a.symbol));else{const y=Je(a.name,f.Module_0_has_no_default_export,bi(n)),x=(d=n.exports)==null?void 0:d.get("__export");if(x){const k=(_=x.declarations)==null?void 0:_.find(z=>{var H,re;return!!(Yl(z)&&z.moduleSpecifier&&((re=(H=vd(z,z.moduleSpecifier))==null?void 0:H.exports)!=null&&re.has("default")))});k&&wa(y,wr(k,f.export_Asterisk_does_not_re_export_a_default))}}}function Lh(n,a){const c=n.parent.parent.moduleSpecifier,d=vd(n,c),_=lp(d,c,a,!1);return sp(n,d,_,!1),_}function zm(n,a){const c=n.parent.moduleSpecifier,d=c&&vd(n,c),_=c&&lp(d,c,a,!1);return sp(n,d,_,!1),_}function k1(n,a){if(n===ft&&a===ft)return ft;if(n.flags&790504)return n;const c=Xa(n.flags|a.flags,n.escapedName);return N.assert(n.declarations||a.declarations),c.declarations=DE(So(n.declarations,a.declarations),Mv),c.parent=n.parent||a.parent,n.valueDeclaration&&(c.valueDeclaration=n.valueDeclaration),a.members&&(c.members=new Map(a.members)),n.exports&&(c.exports=new Map(n.exports)),c}function w1(n,a,c,d){var _;if(n.flags&1536){const y=Cp(n).get(a.escapedText),x=jl(y,d),k=(_=Xi(n).typeOnlyExportStarMap)==null?void 0:_.get(a.escapedText);return sp(c,y,x,!1,k,a.escapedText),x}}function bb(n,a){if(n.flags&3){const c=n.valueDeclaration.type;if(c)return jl(ya(Ei(c),a))}}function av(n,a,c=!1){var d;const _=Bj(n)||n.moduleSpecifier,y=vd(n,_),x=!Fr(a)&&a.propertyName||a.name;if(!Ve(x))return;const k=x.escapedText==="default"&&$,z=lp(y,_,!1,k);if(z&&x.escapedText){if(EC(y))return y;let H;y&&y.exports&&y.exports.get("export=")?H=ya(dr(z),x.escapedText,!0):H=bb(z,x.escapedText),H=jl(H,c);let re=w1(z,x,a,c);if(re===void 0&&x.escapedText==="default"){const ge=(d=y.declarations)==null?void 0:d.find($i);(py(_)||J_(ge,y,c,_))&&(re=Np(y,c)||jl(y,c))}const be=re&&H&&re!==H?k1(H,re):re||H;return be||NT(y,z,n,x),be}}function NT(n,a,c,d){var _;const y=qp(n,c),x=Rs(d),k=Zee(d,a);if(k!==void 0){const z=bi(k),H=Je(d,f._0_has_no_exported_member_named_1_Did_you_mean_2,y,x,z);k.valueDeclaration&&wa(H,wr(k.valueDeclaration,f._0_is_declared_here,z))}else(_=n.exports)!=null&&_.has("default")?Je(d,f.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead,y,x):Bm(c,d,x,n,y)}function Bm(n,a,c,d,_){var y,x;const k=(x=(y=ii(d.valueDeclaration,fh))==null?void 0:y.locals)==null?void 0:x.get(a.escapedText),z=d.exports;if(k){const H=z==null?void 0:z.get("export=");if(H)u_(H,k)?$0(n,a,c,_):Je(a,f.Module_0_has_no_exported_member_1,_,c);else{const re=z?An(Oge(z),ge=>!!u_(ge,k)):void 0,be=re?Je(a,f.Module_0_declares_1_locally_but_it_is_exported_as_2,_,c,bi(re)):Je(a,f.Module_0_declares_1_locally_but_it_is_not_exported,_,c);k.declarations&&wa(be,...wt(k.declarations,(ge,Ke)=>wr(ge,Ke===0?f._0_is_declared_here:f.and_here,c)))}}else Je(a,f.Module_0_has_no_exported_member_1,_,c)}function $0(n,a,c,d){if(G>=5){const _=yh(V)?f._0_can_only_be_imported_by_using_a_default_import:f._0_can_only_be_imported_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Je(a,_,c)}else if(lr(n)){const _=yh(V)?f._0_can_only_be_imported_by_using_a_require_call_or_by_using_a_default_import:f._0_can_only_be_imported_by_using_a_require_call_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Je(a,_,c)}else{const _=yh(V)?f._0_can_only_be_imported_by_using_import_1_require_2_or_a_default_import:f._0_can_only_be_imported_by_using_import_1_require_2_or_by_turning_on_the_esModuleInterop_flag_and_using_a_default_import;Je(a,_,c,c,d)}}function bg(n,a){if(np(n)&&Sr(n.propertyName||n.name)==="default"){const x=Y0(n),k=x&&vd(n,x);if(k)return DT(k,n,a)}const c=Qa(n)?C_(n):n.parent.parent.parent,d=Eb(c),_=av(c,d||n,a),y=n.propertyName||n.name;return d&&_&&Ve(y)?jl(ya(dr(_),y.escapedText),a):(sp(n,void 0,_,!1),_)}function Eb(n){if(wi(n)&&n.initializer&&Fr(n.initializer))return n.initializer}function ax(n,a){if(x_(n.parent)){const c=Np(n.parent.symbol,a);return sp(n,void 0,c,!1),c}}function Q0(n,a,c){if(Sr(n.propertyName||n.name)==="default"){const _=Y0(n),y=_&&vd(n,_);if(y)return DT(y,n,!!c)}const d=n.parent.parent.moduleSpecifier?av(n.parent.parent,n,c):Hs(n.propertyName||n.name,a,!1,c);return sp(n,void 0,d,!1),d}function cN(n,a){const c=kl(n)?n.expression:n.right,d=O1(c,a);return sp(n,void 0,d,!1),d}function O1(n,a){if(Zc(n))return nc(n).symbol;if(!Zd(n)&&!Gl(n))return;const c=Hs(n,901119,!0,a);return c||(nc(n),ei(n).resolvedSymbol)}function CT(n,a){if(mr(n.parent)&&n.parent.left===n&&n.parent.operatorToken.kind===64)return O1(n.parent.right,a)}function Hp(n,a=!1){switch(n.kind){case 271:case 260:return RT(n,a);case 273:return ur(n,a);case 274:return Lh(n,a);case 280:return zm(n,a);case 276:case 208:return bg(n,a);case 281:return Q0(n,901119,a);case 277:case 226:return cN(n,a);case 270:return ax(n,a);case 304:return Hs(n.name,901119,!0,a);case 303:return O1(n.initializer,a);case 212:case 211:return CT(n,a);default:return N.fail()}}function PT(n,a=901119){return n?(n.flags&(2097152|a))===2097152||!!(n.flags&2097152&&n.flags&67108864):!1}function jl(n,a){return!a&&PT(n)?Fc(n):n}function Fc(n){N.assert((n.flags&2097152)!==0,"Should only get Alias here.");const a=Xi(n);if(a.aliasTarget)a.aliasTarget===Ct&&(a.aliasTarget=ft);else{a.aliasTarget=Ct;const c=Fm(n);if(!c)return N.fail();const d=Hp(c);a.aliasTarget===Ct?a.aliasTarget=d||ft:Je(c,f.Circular_definition_of_import_alias_0,bi(n))}return a.aliasTarget}function MT(n){if(Xi(n).aliasTarget!==Ct)return Fc(n)}function Au(n,a,c){const d=a&&Ff(n),_=d&&Yl(d),y=d&&(_?vd(d.moduleSpecifier,d.moduleSpecifier,!0):Fc(d.symbol)),x=_&&y?kh(y):void 0;let k=c?0:n.flags,z;for(;n.flags&2097152;){const H=vf(Fc(n));if(!_&&H===y||(x==null?void 0:x.get(H.escapedName))===H)break;if(H===ft)return-1;if(H===n||z!=null&&z.has(H))break;H.flags&2097152&&(z?z.add(H):z=new Set([n,H])),k|=H.flags,n=H}return k}function sp(n,a,c,d,_,y){if(!n||Fr(n))return!1;const x=Ir(n);if(m0(n)){const z=Xi(x);return z.typeOnlyDeclaration=n,!0}if(_){const z=Xi(x);return z.typeOnlyDeclaration=_,x.escapedName!==y&&(z.typeOnlyExportStarName=y),!0}const k=Xi(x);return Z0(k,a,d)||Z0(k,c,d)}function Z0(n,a,c){var d;if(a&&(n.typeOnlyDeclaration===void 0||c&&n.typeOnlyDeclaration===!1)){const _=((d=a.exports)==null?void 0:d.get("export="))??a,y=_.declarations&&An(_.declarations,m0);n.typeOnlyDeclaration=y??Xi(_).typeOnlyDeclaration??!1}return!!n.typeOnlyDeclaration}function Ff(n,a){if(!(n.flags&2097152))return;const c=Xi(n);if(a===void 0)return c.typeOnlyDeclaration||void 0;if(c.typeOnlyDeclaration){const d=c.typeOnlyDeclaration.kind===278?jl(kh(c.typeOnlyDeclaration.symbol.parent).get(c.typeOnlyExportStarName||n.escapedName)):Fc(c.typeOnlyDeclaration.symbol);return Au(d)&a?c.typeOnlyDeclaration:void 0}}function Sb(n){if(!It)return;const a=Ir(n),c=Fc(a);c&&(c===ft||Au(a,!0)&111551&&!u6(c))&&Tb(a)}function Tb(n){N.assert(It);const a=Xi(n);if(!a.referenced){a.referenced=!0;const c=Fm(n);if(!c)return N.fail();hR(c)&&Au(jl(n))&111551&&nc(c.moduleReference)}}function iu(n){const a=Xi(n);a.constEnumReferenced||(a.constEnumReferenced=!0)}function sx(n,a){return n.kind===80&&VC(n)&&(n=n.parent),n.kind===80||n.parent.kind===166?Hs(n,1920,!1,a):(N.assert(n.parent.kind===271),Hs(n,901119,!1,a))}function qp(n,a){return n.parent?qp(n.parent,a)+"."+bi(n):bi(n,a,void 0,36)}function LT(n){for(;xd(n.parent);)n=n.parent;return n}function kT(n){let a=Vp(n),c=bl(a,a.escapedText,111551,void 0,a,!0);if(c){for(;xd(a.parent);){const d=dr(c);if(c=ya(d,a.parent.right.escapedText),!c)return;a=a.parent}return c}}function Hs(n,a,c,d,_){if(zl(n))return;const y=1920|(lr(n)?a&111551:0);let x;if(n.kind===80){const k=a===y||$s(n)?f.Cannot_find_namespace_0:k4e(Vp(n)),z=lr(n)&&!$s(n)?uN(n,a):void 0;if(x=rs(bl(_||n,n.escapedText,a,c||z?void 0:k,n,!0,!1)),!x)return rs(z)}else if(n.kind===166||n.kind===211){const k=n.kind===166?n.left:n.expression,z=n.kind===166?n.right:n.name;let H=Hs(k,y,c,!1,_);if(!H||zl(z))return;if(H===ft)return H;if(H.valueDeclaration&&lr(H.valueDeclaration)&&md(V)!==100&&wi(H.valueDeclaration)&&H.valueDeclaration.initializer&&vWe(H.valueDeclaration.initializer)){const re=H.valueDeclaration.initializer.arguments[0],be=vd(re,re);if(be){const ge=Np(be);ge&&(H=ge)}}if(x=rs(Jd(Cp(H),z.escapedText,a)),!x&&H.flags&2097152&&(x=rs(Jd(Cp(Fc(H)),z.escapedText,a))),!x){if(!c){const re=qp(H),be=Rs(z),ge=Zee(z,H);if(ge){Je(z,f._0_has_no_exported_member_named_1_Did_you_mean_2,re,be,bi(ge));return}const Ke=xd(n)&&LT(n);if(Ce&&a&788968&&Ke&&!KR(Ke.parent)&&kT(Ke)){Je(Ke,f._0_refers_to_a_value_but_is_being_used_as_a_type_here_Did_you_mean_typeof_0,_p(Ke));return}if(a&1920&&xd(n.parent)){const Dt=rs(Jd(Cp(H),z.escapedText,788968));if(Dt){Je(n.parent.right,f.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,bi(Dt),Vi(n.parent.right.escapedText));return}}Je(z,f.Namespace_0_has_no_exported_member_1,re,be)}return}}else N.assertNever(n,"Unknown entity name kind.");return N.assert((xl(x)&1)===0,"Should never get an instantiated symbol here."),!$s(n)&&Zd(n)&&(x.flags&2097152||n.parent.kind===277)&&sp(Qj(n),x,void 0,!0),x.flags&a||d?x:Fc(x)}function uN(n,a){if(eee(n.parent)){const c=eE(n.parent);if(c)return bl(c,n.escapedText,a,void 0,n,!0)}}function eE(n){if(Gn(n,_=>rR(_)||_.flags&16777216?Zf(_):"quit"))return;const c=CS(n);if(c&&eu(c)&&XL(c.expression)){const _=Ir(c.expression.left);if(_)return W1(_)}if(c&&Os(c)&&XL(c.parent)&&eu(c.parent.parent)){const _=Ir(c.parent.left);if(_)return W1(_)}if(c&&(xm(c)||hc(c))&&mr(c.parent.parent)&&Bl(c.parent.parent)===6){const _=Ir(c.parent.parent.left);if(_)return W1(_)}const d=y0(n);if(d&&ea(d)){const _=Ir(d);return _&&_.valueDeclaration}}function W1(n){const a=n.parent.valueDeclaration;return a?(RC(a)?OA(a):ES(a)?UL(a):void 0)||a:void 0}function w2(n){const a=n.valueDeclaration;if(!a||!lr(a)||n.flags&524288||g0(a,!1))return;const c=wi(a)?UL(a):OA(a);if(c){const d=gf(c);if(d)return Hye(d,n)}}function vd(n,a,c){const _=md(V)===1?f.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:f.Cannot_find_module_0_or_its_corresponding_type_declarations;return sv(n,a,c?void 0:_)}function sv(n,a,c,d=!1){return ls(a)?K_(n,a.text,c,a,d):void 0}function K_(n,a,c,d,_=!1){var y,x,k,z,H,re,be,ge,Ke,gt,Dt;if(uo(a,"@types/")){const tr=f.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1,Ro=QN(a,"@types/");Je(d,tr,Ro,a)}const an=qZ(a,!0);if(an)return an;const cn=jn(n),ar=ls(n)?n:((y=Xl(n)?n:n.parent&&Xl(n.parent)&&n.parent.name===n?n.parent:void 0)==null?void 0:y.name)||((x=Vy(n)?n:void 0)==null?void 0:x.argument.literal)||(wi(n)&&n.initializer&&Ad(n.initializer,!0)?n.initializer.arguments[0]:void 0)||((k=Gn(n,Bp))==null?void 0:k.arguments[0])||((z=Gn(n,kc))==null?void 0:z.moduleSpecifier)||((H=Gn(n,h0))==null?void 0:H.moduleReference.expression)||((re=Gn(n,Yl))==null?void 0:re.moduleSpecifier),On=ar&&ls(ar)?e.getModeForUsageLocation(cn,ar):cn.impliedNodeFormat,ln=md(V),zn=(be=e.getResolvedModule(cn,a,On))==null?void 0:be.resolvedModule,Fn=zn&&KJ(V,zn,cn),er=zn&&(!Fn||Fn===f.Module_0_was_resolved_to_1_but_jsx_is_not_set)&&e.getSourceFile(zn.resolvedFileName);if(er){if(Fn&&Je(d,Fn,a,zn.resolvedFileName),zn.resolvedUsingTsExtension&&Su(a)){const tr=((ge=Gn(n,kc))==null?void 0:ge.importClause)||Gn(n,Ym(tu,Yl));(tr&&!tr.isTypeOnly||Gn(n,Bp))&&Je(d,f.A_declaration_file_cannot_be_imported_without_import_type_Did_you_mean_to_import_an_implementation_file_0_instead,qn(N.checkDefined(k3(a))))}else if(zn.resolvedUsingTsExtension&&!fD(V,cn.fileName)){const tr=((Ke=Gn(n,kc))==null?void 0:Ke.importClause)||Gn(n,Ym(tu,Yl));if(!(tr!=null&&tr.isTypeOnly||Gn(n,ug))){const Ro=N.checkDefined(k3(a));Je(d,f.An_import_path_can_only_end_with_a_0_extension_when_allowImportingTsExtensions_is_enabled,Ro)}}if(er.symbol){if(zn.isExternalLibraryImport&&!$C(zn.extension)&&lx(!1,d,cn,On,zn,a),ln===3||ln===99){const tr=cn.impliedNodeFormat===1&&!Gn(n,Bp)||!!Gn(n,tu),Ro=Gn(n,Eo=>ug(Eo)||Yl(Eo)||kc(Eo));if(tr&&er.impliedNodeFormat===99&&!lae(Ro))if(Gn(n,tu))Je(d,f.Module_0_cannot_be_imported_using_this_construct_The_specifier_only_resolves_to_an_ES_module_which_cannot_be_imported_with_require_Use_an_ECMAScript_import_instead,a);else{let Eo;const Bo=jg(cn.fileName);if(Bo===".ts"||Bo===".js"||Bo===".tsx"||Bo===".jsx"){const _o=cn.packageJsonScope,Cc=Bo===".ts"?".mts":Bo===".js"?".mjs":void 0;_o&&!_o.contents.packageJsonContent.type?Cc?Eo=jo(void 0,f.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_add_the_field_type_Colon_module_to_1,Cc,Qr(_o.packageDirectory,"package.json")):Eo=jo(void 0,f.To_convert_this_file_to_an_ECMAScript_module_add_the_field_type_Colon_module_to_0,Qr(_o.packageDirectory,"package.json")):Cc?Eo=jo(void 0,f.To_convert_this_file_to_an_ECMAScript_module_change_its_file_extension_to_0_or_create_a_local_package_json_file_with_type_Colon_module,Cc):Eo=jo(void 0,f.To_convert_this_file_to_an_ECMAScript_module_create_a_local_package_json_file_with_type_Colon_module)}ts.add(Fg(jn(d),d,jo(Eo,f.The_current_file_is_a_CommonJS_module_whose_imports_will_produce_require_calls_however_the_referenced_file_is_an_ECMAScript_module_and_cannot_be_imported_with_require_Consider_writing_a_dynamic_import_0_call_instead,a)))}}return rs(er.symbol)}c&&Je(d,f.File_0_is_not_a_module,er.fileName);return}if(cm){const tr=SG(cm,Ro=>Ro.pattern,a);if(tr){const Ro=gd&&gd.get(a);return rs(Ro||tr.symbol)}}if(zn&&!$C(zn.extension)&&Fn===void 0||Fn===f.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(_){const tr=f.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;Je(d,tr,a,zn.resolvedFileName)}else lx(pe&&!!c,d,cn,On,zn,a);return}if(c){if(zn){const tr=e.getProjectReferenceRedirect(zn.resolvedFileName);if(tr){Je(d,f.Output_file_0_has_not_been_built_from_source_file_1,tr,zn.resolvedFileName);return}}if(Fn)Je(d,Fn,a,zn.resolvedFileName);else{const tr=Wp(a)&&!xA(a),Ro=ln===3||ln===99;if(!A0(V)&&Il(a,".json")&&ln!==1&&U3(V))Je(d,f.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,a);else if(On===99&&Ro&&tr){const Eo=go(a,ai(cn.path)),Bo=(gt=rN.find(([_o,Cc])=>e.fileExists(Eo+_o)))==null?void 0:gt[1];Bo?Je(d,f.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Did_you_mean_0,a+Bo):Je(d,f.Relative_import_paths_need_explicit_file_extensions_in_ECMAScript_imports_when_moduleResolution_is_node16_or_nodenext_Consider_adding_an_extension_to_the_import_path)}else if((Dt=e.getResolvedModule(cn,a,On))!=null&&Dt.alternateResult){const Eo=z4(cn,e,a,On,a);_u(!0,d,jo(Eo,c,a))}else Je(d,c,a)}}return;function qn(tr){const Ro=Tk(a,tr);if(j3(G)||On===99){const Eo=Su(a)&&fD(V);return Ro+(tr===".mts"||tr===".d.mts"?Eo?".mts":".mjs":tr===".cts"||tr===".d.mts"?Eo?".cts":".cjs":Eo?".ts":".js")}return Ro}}function lx(n,a,c,d,{packageId:_,resolvedFileName:y},x){let k;!Yc(x)&&_&&(k=z4(c,e,x,d,_.name)),_u(n,a,jo(k,f.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,x,y))}function Np(n,a){if(n!=null&&n.exports){const c=jl(n.exports.get("export="),a),d=cx(rs(c),rs(n));return rs(d)||n}}function cx(n,a){if(!n||n===ft||n===a||a.exports.size===1||n.flags&2097152)return n;const c=Xi(n);if(c.cjsExportMerged)return c.cjsExportMerged;const d=n.flags&33554432?n:TT(n);return d.flags=d.flags|512,d.exports===void 0&&(d.exports=ua()),a.exports.forEach((_,y)=>{y!=="export="&&d.exports.set(y,d.exports.has(y)?um(d.exports.get(y),_):_)}),d===n&&(Xi(d).resolvedExports=void 0,Xi(d).resolvedMembers=void 0),Xi(d).cjsExportMerged=d,c.cjsExportMerged=d}function lp(n,a,c,d){var _;const y=Np(n,c);if(!c&&y){if(!d&&!(y.flags&1539)&&!fl(y,312)){const k=G>=5?"allowSyntheticDefaultImports":"esModuleInterop";return Je(a,f.This_module_can_only_be_referenced_with_ECMAScript_imports_Slashexports_by_turning_on_the_0_flag_and_referencing_its_default_export,k),y}const x=a.parent;if(kc(x)&&bR(x)||Bp(x)){const k=Bp(x)?x.arguments[0]:x.moduleSpecifier,z=dr(y),H=hWe(z,y,n,k);if(H)return ux(y,H,x);const re=(_=n==null?void 0:n.declarations)==null?void 0:_.find($i),be=re&&hf(to(k),re.impliedNodeFormat);if(yh(V)||be){let ge=S9(z,0);if((!ge||!ge.length)&&(ge=S9(z,1)),ge&&ge.length||ya(z,"default",!0)||be){const Ke=z.flags&3670016?gWe(z,y,n,k):qye(y,y.parent);return ux(y,Ke,x)}}}}return y}function ux(n,a,c){const d=Xa(n.flags,n.escapedName);d.declarations=n.declarations?n.declarations.slice():[],d.parent=n.parent,d.links.target=n,d.links.originatingImport=c,n.valueDeclaration&&(d.valueDeclaration=n.valueDeclaration),n.constEnumOnlyModule&&(d.constEnumOnlyModule=!0),n.members&&(d.members=new Map(n.members)),n.exports&&(d.exports=new Map(n.exports));const _=__(a);return d.links.type=Ls(d,_.members,et,et,_.indexInfos),d}function fy(n){return n.exports.get("export=")!==void 0}function wT(n){return Oge(kh(n))}function dN(n){const a=wT(n),c=Np(n);if(c!==n){const d=dr(c);Ab(d)&&Jr(a,gs(d))}return a}function pN(n,a){kh(n).forEach((_,y)=>{B1(y)||a(_,y)});const d=Np(n);if(d!==n){const _=dr(d);Ab(_)&&rct(_,(y,x)=>{a(y,x)})}}function OT(n,a){const c=kh(a);if(c)return c.get(n)}function fN(n,a){const c=OT(n,a);if(c)return c;const d=Np(a);if(d===a)return;const _=dr(d);return Ab(_)?ya(_,n):void 0}function Ab(n){return!(n.flags&402784252||Wr(n)&1||qf(n)||Ba(n))}function Cp(n){return n.flags&6256?bge(n,"resolvedExports"):n.flags&1536?kh(n):n.exports||K}function kh(n){const a=Xi(n);if(!a.resolvedExports){const{exports:c,typeOnlyExportStarMap:d}=WT(n);a.resolvedExports=c,a.typeOnlyExportStarMap=d}return a.resolvedExports}function mN(n,a,c,d){a&&a.forEach((_,y)=>{if(y==="default")return;const x=n.get(y);if(!x)n.set(y,_),c&&d&&c.set(y,{specifierText:fc(d.moduleSpecifier)});else if(c&&d&&x&&jl(x)!==jl(_)){const k=c.get(y);k.exportsWithDuplicate?k.exportsWithDuplicate.push(d):k.exportsWithDuplicate=[d]}})}function WT(n){const a=[];let c;const d=new Set;n=Np(n);const _=y(n)||K;return c&&d.forEach(x=>c.delete(x)),{exports:_,typeOnlyExportStarMap:c};function y(x,k,z){if(!z&&(x!=null&&x.exports)&&x.exports.forEach((be,ge)=>d.add(ge)),!(x&&x.exports&&Tf(a,x)))return;const H=new Map(x.exports),re=x.exports.get("__export");if(re){const be=ua(),ge=new Map;if(re.declarations)for(const Ke of re.declarations){const gt=vd(Ke,Ke.moduleSpecifier),Dt=y(gt,Ke,z||Ke.isTypeOnly);mN(be,Dt,ge,Ke)}ge.forEach(({exportsWithDuplicate:Ke},gt)=>{if(!(gt==="export="||!(Ke&&Ke.length)||H.has(gt)))for(const Dt of Ke)ts.add(wr(Dt,f.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,ge.get(gt).specifierText,Vi(gt)))}),mN(H,be)}return k!=null&&k.isTypeOnly&&(c??(c=new Map),H.forEach((be,ge)=>c.set(ge,k))),H}}function rs(n){let a;return n&&n.mergeId&&(a=eN[n.mergeId])?a:n}function Ir(n){return rs(n.symbol&&jZ(n.symbol))}function gf(n){return x_(n)?Ir(n):void 0}function Pd(n){return rs(n.parent&&jZ(n.parent))}function F1(n){var a,c;return(((a=n.valueDeclaration)==null?void 0:a.kind)===219||((c=n.valueDeclaration)==null?void 0:c.kind)===218)&&gf(n.valueDeclaration.parent)||n}function _N(n,a){const c=jn(a),d=as(c),_=Xi(n);let y;if(_.extendedContainersByFile&&(y=_.extendedContainersByFile.get(d)))return y;if(c&&c.imports){for(const k of c.imports){if($s(k))continue;const z=vd(a,k,!0);!z||!Eg(z,n)||(y=xn(y,z))}if(Me(y))return(_.extendedContainersByFile||(_.extendedContainersByFile=new Map)).set(d,y),y}if(_.extendedContainers)return _.extendedContainers;const x=e.getSourceFiles();for(const k of x){if(!sc(k))continue;const z=Ir(k);Eg(z,n)&&(y=xn(y,z))}return _.extendedContainers=y||et}function tE(n,a,c){const d=Pd(n);if(d&&!(n.flags&262144))return z(d);const _=Hi(n.declarations,re=>{if(!ku(re)&&re.parent){if(ed(re.parent))return Ir(re.parent);if(O_(re.parent)&&re.parent.parent&&Np(Ir(re.parent.parent))===n)return Ir(re.parent.parent)}if(Zc(re)&&mr(re.parent)&&re.parent.operatorToken.kind===64&&ws(re.parent.left)&&Gl(re.parent.left.expression))return rg(re.parent.left)||RS(re.parent.left.expression)?Ir(jn(re)):(nc(re.parent.left.expression),ei(re.parent.left.expression).resolvedSymbol)});if(!Me(_))return;const y=Hi(_,re=>Eg(re,n)?re:void 0);let x=[],k=[];for(const re of y){const[be,...ge]=z(re);x=xn(x,be),k=Jr(k,ge)}return So(x,k);function z(re){const be=Hi(re.declarations,H),ge=a&&_N(n,a),Ke=z1(re,c);if(a&&re.flags&cv(c)&&Ib(re,a,1920,!1))return xn(So(So([re],be),ge),Ke);const gt=!(re.flags&cv(c))&&re.flags&788968&&el(re).flags&524288&&c===111551?V1(a,an=>Gc(an,cn=>{if(cn.flags&cv(c)&&dr(cn)===el(re))return cn})):void 0;let Dt=gt?[gt,...be,re]:[...be,re];return Dt=xn(Dt,Ke),Dt=Jr(Dt,ge),Dt}function H(re){return d&&FT(re,d)}}function z1(n,a){const c=!!Me(n.declarations)&&Ha(n.declarations);if(a&111551&&c&&c.parent&&wi(c.parent)&&(Oa(c)&&c===c.parent.initializer||Ep(c)&&c===c.parent.type))return Ir(c.parent)}function FT(n,a){const c=no(n),d=c&&c.exports&&c.exports.get("export=");return d&&u_(d,a)?c:void 0}function Eg(n,a){if(n===Pd(a))return a;const c=n.exports&&n.exports.get("export=");if(c&&u_(c,a))return n;const d=Cp(n),_=d.get(a.escapedName);return _&&u_(_,a)?_:Gc(d,y=>{if(u_(y,a))return y})}function u_(n,a){if(rs(jl(rs(n)))===rs(jl(rs(a))))return n}function vf(n){return rs(n&&(n.flags&1048576)!==0&&n.exportSymbol||n)}function Gm(n,a){return!!(n.flags&111551||n.flags&2097152&&Au(n,!a)&111551)}function lv(n){const a=n.members;for(const c of a)if(c.kind===176&&Yf(c.body))return c}function Sg(n){var a;const c=new p(Qt,n);return m++,c.id=m,(a=sr)==null||a.recordType(c),c}function Tg(n,a){const c=Sg(n);return c.symbol=a,c}function dx(n){return new p(Qt,n)}function cc(n,a,c=0,d){hN(a,d);const _=Sg(n);return _.intrinsicName=a,_.debugIntrinsicName=d,_.objectFlags=c|524288|2097152|33554432|16777216,_}function hN(n,a){const c=`${n},${a??""}`;pt.has(c)&&N.fail(`Duplicate intrinsic type name ${n}${a?` (${a})`:""}; you may need to pass a name to createIntrinsicType.`),pt.add(c)}function zf(n,a){const c=Tg(524288,a);return c.objectFlags=n,c.members=void 0,c.properties=void 0,c.callSignatures=void 0,c.constructSignatures=void 0,c.indexInfos=void 0,c}function wh(){return ti(zo($q.keys(),Xd))}function yf(n){return Tg(262144,n)}function B1(n){return n.charCodeAt(0)===95&&n.charCodeAt(1)===95&&n.charCodeAt(2)!==95&&n.charCodeAt(2)!==64&&n.charCodeAt(2)!==35}function nE(n){let a;return n.forEach((c,d)=>{px(c,d)&&(a||(a=[])).push(c)}),a||et}function px(n,a){return!B1(a)&&Gm(n)}function zT(n){const a=nE(n),c=XZ(n);return c?So(a,[c]):a}function bf(n,a,c,d,_){const y=n;return y.members=a,y.properties=et,y.callSignatures=c,y.constructSignatures=d,y.indexInfos=_,a!==K&&(y.properties=nE(a)),y}function Ls(n,a,c,d,_){return bf(zf(16,n),a,c,d,_)}function G1(n){if(n.constructSignatures.length===0)return n;if(n.objectTypeWithoutAbstractConstructSignatures)return n.objectTypeWithoutAbstractConstructSignatures;const a=nr(n.constructSignatures,d=>!(d.flags&4));if(n.constructSignatures===a)return n;const c=Ls(n.symbol,n.members,n.callSignatures,bt(a)?a:et,n.indexInfos);return n.objectTypeWithoutAbstractConstructSignatures=c,c.objectTypeWithoutAbstractConstructSignatures=c,c}function V1(n,a){let c;for(let d=n;d;d=d.parent){if(fh(d)&&d.locals&&!Mh(d)&&(c=a(d.locals,void 0,!0,d)))return c;switch(d.kind){case 312:if(!zp(d))break;case 267:const _=Ir(d);if(c=a((_==null?void 0:_.exports)||K,void 0,!0,d))return c;break;case 263:case 231:case 264:let y;if((Ir(d).members||K).forEach((x,k)=>{x.flags&788968&&(y||(y=ua())).set(k,x)}),y&&(c=a(y,void 0,!1,d)))return c;break}}return a(Se,void 0,!0)}function cv(n){return n===111551?111551:1920}function Ib(n,a,c,d,_=new Map){if(!(n&&!D(n)))return;const y=Xi(n),x=y.accessibleChainCache||(y.accessibleChainCache=new Map),k=V1(a,(cn,ar,On,ln)=>ln),z=`${d?0:1}|${k&&as(k)}|${c}`;if(x.has(z))return x.get(z);const H=Ta(n);let re=_.get(H);re||_.set(H,re=[]);const be=V1(a,ge);return x.set(z,be),be;function ge(cn,ar,On){if(!Tf(re,cn))return;const ln=Dt(cn,ar,On);return re.pop(),ln}function Ke(cn,ar){return!rE(cn,a,ar)||!!Ib(cn.parent,a,cv(ar),d,_)}function gt(cn,ar,On){return(n===(ar||cn)||rs(n)===rs(ar||cn))&&!bt(cn.declarations,ed)&&(On||Ke(rs(cn),c))}function Dt(cn,ar,On){return gt(cn.get(n.escapedName),void 0,ar)?[n]:Gc(cn,zn=>{if(zn.flags&2097152&&zn.escapedName!=="export="&&zn.escapedName!=="default"&&!(z3(zn)&&a&&sc(jn(a)))&&(!d||bt(zn.declarations,h0))&&(!On||!bt(zn.declarations,zie))&&(ar||!fl(zn,281))){const Fn=Fc(zn),er=an(zn,Fn,ar);if(er)return er}if(zn.escapedName===n.escapedName&&zn.exportSymbol&&gt(rs(zn.exportSymbol),void 0,ar))return[n]})||(cn===Se?an(at,at,ar):void 0)}function an(cn,ar,On){if(gt(cn,ar,On))return[cn];const ln=Cp(ar),zn=ln&&ge(ln,!0);if(zn&&Ke(cn,cv(c)))return[cn].concat(zn)}}function rE(n,a,c){let d=!1;return V1(a,_=>{let y=rs(_.get(n.escapedName));if(!y)return!1;if(y===n)return!0;const x=y.flags&2097152&&!fl(y,281);return y=x?Fc(y):y,(x?Au(y):y.flags)&c?(d=!0,!0):!1}),d}function D(n){if(n.declarations&&n.declarations.length){for(const a of n.declarations)switch(a.kind){case 172:case 174:case 177:case 178:continue;default:return!1}return!0}return!1}function ae(n,a){return gi(n,a,788968,!1,!0).accessibility===0}function ht(n,a){return gi(n,a,111551,!1,!0).accessibility===0}function on(n,a,c){return gi(n,a,c,!1,!1).accessibility===0}function Or(n,a,c,d,_,y){if(!Me(n))return;let x,k=!1;for(const z of n){const H=Ib(z,a,d,!1);if(H){x=z;const ge=Md(H[0],_);if(ge)return ge}if(y&&bt(z.declarations,ed)){if(_){k=!0;continue}return{accessibility:0}}const re=tE(z,a,d),be=Or(re,a,c,c===z?cv(d):d,_,y);if(be)return be}if(k)return{accessibility:0};if(x)return{accessibility:1,errorSymbolName:bi(c,a,d),errorModuleName:x!==c?bi(x,a,1920):void 0}}function ki(n,a,c,d){return gi(n,a,c,d,!0)}function gi(n,a,c,d,_){if(n&&a){const y=Or([n],a,n,c,d,_);if(y)return y;const x=Ue(n.declarations,no);if(x){const k=no(a);if(x!==k)return{accessibility:2,errorSymbolName:bi(n,a,c),errorModuleName:bi(x),errorNode:lr(a)?a:void 0}}return{accessibility:1,errorSymbolName:bi(n,a,c)}}return{accessibility:0}}function no(n){const a=Gn(n,va);return a&&Ir(a)}function va(n){return ku(n)||n.kind===312&&zp(n)}function ed(n){return H4(n)||n.kind===312&&zp(n)}function Md(n,a){let c;if(!Zn(nr(n.declarations,y=>y.kind!==80),d))return;return{accessibility:0,aliasesToMakeVisible:c};function d(y){var x,k;if(!d_(y)){const z=xT(y);if(z&&!Zr(z,32)&&d_(z.parent))return _(y,z);if(wi(y)&&Ll(y.parent.parent)&&!Zr(y.parent.parent,32)&&d_(y.parent.parent.parent))return _(y,y.parent.parent);if(q4(y)&&!Zr(y,32)&&d_(y.parent))return _(y,y);if(Qa(y)){if(n.flags&2097152&&lr(y)&&((x=y.parent)!=null&&x.parent)&&wi(y.parent.parent)&&((k=y.parent.parent.parent)!=null&&k.parent)&&Ll(y.parent.parent.parent.parent)&&!Zr(y.parent.parent.parent.parent,32)&&y.parent.parent.parent.parent.parent&&d_(y.parent.parent.parent.parent.parent))return _(y,y.parent.parent.parent.parent);if(n.flags&2){const H=Gn(y,Ll);return Zr(H,32)?!0:d_(H.parent)?_(y,H):!1}}return!1}return!0}function _(y,x){return a&&(ei(y).isVisible=!0,c=Mg(c,x)),!0}}function Bf(n){let a;return n.parent.kind===186||n.parent.kind===233&&!tg(n.parent)||n.parent.kind===167?a=1160127:n.kind===166||n.kind===211||n.parent.kind===271||n.parent.kind===166&&n.parent.left===n||n.parent.kind===211&&n.parent.expression===n||n.parent.kind===212&&n.parent.expression===n?a=1920:a=788968,a}function xb(n,a){const c=Bf(n),d=Vp(n),_=bl(a,d.escapedText,c,void 0,void 0,!1);return _&&_.flags&262144&&c&788968?{accessibility:0}:!_&&KE(d)&&ki(Ir(Fd(d,!1,!1)),d,c,!1).accessibility===0?{accessibility:0}:_&&Md(_,!0)||{accessibility:1,errorSymbolName:fc(d),errorNode:d}}function bi(n,a,c,d=4,_){let y=70221824;d&2&&(y|=128),d&1&&(y|=512),d&8&&(y|=16384),d&32&&(y|=134217728),d&16&&(y|=1073741824);const x=d&4?At.symbolToNode:At.symbolToEntityName;return _?k(_).getText():yC(k);function k(z){const H=x(n,c,a,y),re=(a==null?void 0:a.kind)===312?xJ():g1(),be=a&&jn(a);return re.writeNode(4,H,be,z),z}}function Oh(n,a,c=0,d,_){return _?y(_).getText():yC(y);function y(x){let k;c&262144?k=d===1?185:184:k=d===1?180:179;const z=At.signatureToSignatureDeclaration(n,k,a,BT(c)|70221824|512),H=Bw(),re=a&&jn(a);return H.writeNode(4,z,re,pU(x)),x}}function Un(n,a,c=1064960,d=pk("")){const _=V.noErrorTruncation||c&1,y=At.typeToTypeNode(n,a,BT(c)|70221824|(_?1:0));if(y===void 0)return N.fail("should always get typenode");const x=n!==Vt?g1():IJ(),k=a&&jn(a);x.writeNode(4,y,k,d);const z=d.getText(),H=_?dW*2:Nk*2;return H&&z&&z.length>=H?z.substr(0,H-3)+"...":z}function fx(n,a){let c=Db(n.symbol)?Un(n,n.symbol.valueDeclaration):Un(n),d=Db(a.symbol)?Un(a,a.symbol.valueDeclaration):Un(a);return c===d&&(c=Rb(n),d=Rb(a)),[c,d]}function Rb(n){return Un(n,void 0,64)}function Db(n){return n&&!!n.valueDeclaration&&yt(n.valueDeclaration)&&!Uf(n.valueDeclaration)}function BT(n=0){return n&848330095}function j1(n){return!!n.symbol&&!!(n.symbol.flags&32)&&(n===Vf(n.symbol)||!!(n.flags&524288)&&!!(Wr(n)&16777216))}function X_(){return{typeToTypeNode:(ut,Ae,Ln,Mr)=>a(Ae,Ln,Mr,di=>d(ut,di)),indexInfoToIndexSignatureDeclaration:(ut,Ae,Ln,Mr)=>a(Ae,Ln,Mr,di=>re(ut,di,void 0)),signatureToSignatureDeclaration:(ut,Ae,Ln,Mr,di)=>a(Ln,Mr,di,Si=>be(ut,Ae,Si)),symbolToEntityName:(ut,Ae,Ln,Mr,di)=>a(Ln,Mr,di,Si=>_o(ut,Si,Ae,!1)),symbolToExpression:(ut,Ae,Ln,Mr,di)=>a(Ln,Mr,di,Si=>Cc(ut,Si,Ae)),symbolToTypeParameterDeclarations:(ut,Ae,Ln,Mr)=>a(Ae,Ln,Mr,di=>zn(ut,di)),symbolToParameterDeclaration:(ut,Ae,Ln,Mr)=>a(Ae,Ln,Mr,di=>an(ut,di)),typeParameterToDeclaration:(ut,Ae,Ln,Mr)=>a(Ae,Ln,Mr,di=>gt(ut,di)),symbolTableToDeclarationStatements:(ut,Ae,Ln,Mr,di)=>a(Ae,Ln,Mr,Si=>El(ut,Si,di)),symbolToNode:(ut,Ae,Ln,Mr,di)=>a(Ln,Mr,di,Si=>n(ut,Si,Ae))};function n(ut,Ae,Ln){if(Ae.flags&1073741824){if(ut.valueDeclaration){const di=Mo(ut.valueDeclaration);if(di&&Za(di))return di}const Mr=Xi(ut).nameType;if(Mr&&Mr.flags&9216)return Ae.enclosingDeclaration=Mr.symbol.valueDeclaration,w.createComputedPropertyName(Cc(Mr.symbol,Ae,Ln))}return Cc(ut,Ae,Ln)}function a(ut,Ae,Ln,Mr){N.assert(ut===void 0||(ut.flags&16)===0);const di=Ln!=null&&Ln.trackSymbol?Ln.moduleResolverHost:Ae&134217728?Wje(e):void 0,Si={enclosingDeclaration:ut,flags:Ae||0,tracker:void 0,encounteredError:!1,reportedDiagnostic:!1,visitedTypes:void 0,symbolDepth:void 0,inferTypeParameters:void 0,approximateLength:0,trackedSymbols:void 0};Si.tracker=new Qq(Si,Ln,di);const Ti=Mr(Si);return Si.truncating&&Si.flags&1&&Si.tracker.reportTruncationError(),Si.encounteredError?void 0:Ti}function c(ut){return ut.truncating?ut.truncating:ut.truncating=ut.approximateLength>(ut.flags&1?dW:Nk)}function d(ut,Ae){const Ln=Ae.flags,Mr=_(ut,Ae);return Ae.flags=Ln,Mr}function _(ut,Ae){var Ln,Mr;i&&i.throwIfCancellationRequested&&i.throwIfCancellationRequested();const di=Ae.flags&8388608;if(Ae.flags&=-8388609,!ut){if(!(Ae.flags&262144)){Ae.encounteredError=!0;return}return Ae.approximateLength+=3,w.createKeywordTypeNode(133)}if(Ae.flags&536870912||(ut=h_(ut)),ut.flags&1)return ut.aliasSymbol?w.createTypeReferenceNode(tr(ut.aliasSymbol),z(ut.aliasTypeArguments,Ae)):ut===Vt?fP(w.createKeywordTypeNode(133),3,"unresolved"):(Ae.approximateLength+=3,w.createKeywordTypeNode(ut===fn?141:133));if(ut.flags&2)return w.createKeywordTypeNode(159);if(ut.flags&4)return Ae.approximateLength+=6,w.createKeywordTypeNode(154);if(ut.flags&8)return Ae.approximateLength+=6,w.createKeywordTypeNode(150);if(ut.flags&64)return Ae.approximateLength+=6,w.createKeywordTypeNode(163);if(ut.flags&16&&!ut.aliasSymbol)return Ae.approximateLength+=7,w.createKeywordTypeNode(136);if(ut.flags&1056){if(ut.symbol.flags&8){const Nn=Pd(ut.symbol),ni=Ro(Nn,Ae,788968);if(el(Nn)===ut)return ni;const Zi=Sl(ut.symbol);return tf(Zi,0)?Li(ni,w.createTypeReferenceNode(Zi,void 0)):ug(ni)?(ni.isTypeOf=!0,w.createIndexedAccessTypeNode(ni,w.createLiteralTypeNode(w.createStringLiteral(Zi)))):Cf(ni)?w.createIndexedAccessTypeNode(w.createTypeQueryNode(ni.typeName),w.createLiteralTypeNode(w.createStringLiteral(Zi))):N.fail("Unhandled type node kind returned from `symbolToTypeNode`.")}return Ro(ut.symbol,Ae,788968)}if(ut.flags&128)return Ae.approximateLength+=ut.value.length+2,w.createLiteralTypeNode(pr(w.createStringLiteral(ut.value,!!(Ae.flags&268435456)),16777216));if(ut.flags&256){const Nn=ut.value;return Ae.approximateLength+=(""+Nn).length,w.createLiteralTypeNode(Nn<0?w.createPrefixUnaryExpression(41,w.createNumericLiteral(-Nn)):w.createNumericLiteral(Nn))}if(ut.flags&2048)return Ae.approximateLength+=$E(ut.value).length+1,w.createLiteralTypeNode(w.createBigIntLiteral(ut.value));if(ut.flags&512)return Ae.approximateLength+=ut.intrinsicName.length,w.createLiteralTypeNode(ut.intrinsicName==="true"?w.createTrue():w.createFalse());if(ut.flags&8192){if(!(Ae.flags&1048576)){if(ht(ut.symbol,Ae.enclosingDeclaration))return Ae.approximateLength+=6,Ro(ut.symbol,Ae,111551);Ae.tracker.reportInaccessibleUniqueSymbolError&&Ae.tracker.reportInaccessibleUniqueSymbolError()}return Ae.approximateLength+=13,w.createTypeOperatorNode(158,w.createKeywordTypeNode(155))}if(ut.flags&16384)return Ae.approximateLength+=4,w.createKeywordTypeNode(116);if(ut.flags&32768)return Ae.approximateLength+=9,w.createKeywordTypeNode(157);if(ut.flags&65536)return Ae.approximateLength+=4,w.createLiteralTypeNode(w.createNull());if(ut.flags&131072)return Ae.approximateLength+=5,w.createKeywordTypeNode(146);if(ut.flags&4096)return Ae.approximateLength+=6,w.createKeywordTypeNode(155);if(ut.flags&67108864)return Ae.approximateLength+=6,w.createKeywordTypeNode(151);if(oP(ut))return Ae.flags&4194304&&(!Ae.encounteredError&&!(Ae.flags&32768)&&(Ae.encounteredError=!0),(Mr=(Ln=Ae.tracker).reportInaccessibleThisError)==null||Mr.call(Ln)),Ae.approximateLength+=4,w.createThisTypeNode();if(!di&&ut.aliasSymbol&&(Ae.flags&16384||ae(ut.aliasSymbol,Ae.enclosingDeclaration))){const Nn=z(ut.aliasTypeArguments,Ae);return B1(ut.aliasSymbol.escapedName)&&!(ut.aliasSymbol.flags&32)?w.createTypeReferenceNode(w.createIdentifier(""),Nn):Me(Nn)===1&&ut.aliasSymbol===Qo.symbol?w.createArrayTypeNode(Nn[0]):Ro(ut.aliasSymbol,Ae,788968,Nn)}const Si=Wr(ut);if(Si&4)return N.assert(!!(ut.flags&524288)),ut.node?qt(ut,Wn):Wn(ut);if(ut.flags&262144||Si&3){if(ut.flags&262144&&Nr(Ae.inferTypeParameters,ut)){Ae.approximateLength+=Sl(ut.symbol).length+6;let ni;const Zi=Ld(ut);if(Zi){const fo=H8e(ut,!0);fo&&vv(Zi,fo)||(Ae.approximateLength+=9,ni=Zi&&d(Zi,Ae))}return w.createInferTypeNode(Ke(ut,Ae,ni))}if(Ae.flags&4&&ut.flags&262144){const ni=Bo(ut,Ae);return Ae.approximateLength+=Sr(ni).length,w.createTypeReferenceNode(w.createIdentifier(Sr(ni)),void 0)}if(ut.symbol)return Ro(ut.symbol,Ae,788968);const Nn=(ut===de||ut===ee)&&O&&O.symbol?(ut===ee?"sub-":"super-")+Sl(O.symbol):"?";return w.createTypeReferenceNode(w.createIdentifier(Nn),void 0)}if(ut.flags&1048576&&ut.origin&&(ut=ut.origin),ut.flags&3145728){const Nn=ut.flags&1048576?gN(ut.types):ut.types;if(Me(Nn)===1)return d(Nn[0],Ae);const ni=z(Nn,Ae,!0);if(ni&&ni.length>0)return ut.flags&1048576?w.createUnionTypeNode(ni):w.createIntersectionTypeNode(ni);!Ae.encounteredError&&!(Ae.flags&262144)&&(Ae.encounteredError=!0);return}if(Si&48)return N.assert(!!(ut.flags&524288)),pn(ut);if(ut.flags&4194304){const Nn=ut.type;Ae.approximateLength+=6;const ni=d(Nn,Ae);return w.createTypeOperatorNode(143,ni)}if(ut.flags&134217728){const Nn=ut.texts,ni=ut.types,Zi=w.createTemplateHead(Nn[0]),fo=w.createNodeArray(wt(ni,(Sa,Ec)=>w.createTemplateLiteralTypeSpan(d(Sa,Ae),(Ec<ni.length-1?w.createTemplateMiddle:w.createTemplateTail)(Nn[Ec+1]))));return Ae.approximateLength+=2,w.createTemplateLiteralType(Zi,fo)}if(ut.flags&268435456){const Nn=d(ut.type,Ae);return Ro(ut.symbol,Ae,788968,[Nn])}if(ut.flags&8388608){const Nn=d(ut.objectType,Ae),ni=d(ut.indexType,Ae);return Ae.approximateLength+=2,w.createIndexedAccessTypeNode(Nn,ni)}if(ut.flags&16777216)return qt(ut,Nn=>Ti(Nn));if(ut.flags&33554432){const Nn=d(ut.baseType,Ae),ni=H2(ut)&&Xge("NoInfer",!1);return ni?Ro(ni,Ae,788968,[Nn]):Nn}return N.fail("Should be unreachable.");function Ti(Nn){const ni=d(Nn.checkType,Ae);if(Ae.approximateLength+=15,Ae.flags&4&&Nn.root.isDistributive&&!(Nn.checkType.flags&262144)){const ks=yf(Xa(262144,"T")),Ns=Bo(ks,Ae),Du=w.createTypeReferenceNode(Ns);Ae.approximateLength+=37;const Ks=ZT(Nn.root.checkType,ks,Nn.mapper),E_=Ae.inferTypeParameters;Ae.inferTypeParameters=Nn.root.inferTypeParameters;const rt=d(so(Nn.root.extendsType,Ks),Ae);Ae.inferTypeParameters=E_;const St=Hr(so(Ei(Nn.root.node.trueType),Ks)),Zt=Hr(so(Ei(Nn.root.node.falseType),Ks));return w.createConditionalTypeNode(ni,w.createInferTypeNode(w.createTypeParameterDeclaration(void 0,w.cloneNode(Du.typeName))),w.createConditionalTypeNode(w.createTypeReferenceNode(w.cloneNode(Ns)),d(Nn.checkType,Ae),w.createConditionalTypeNode(Du,rt,St,Zt),w.createKeywordTypeNode(146)),w.createKeywordTypeNode(146))}const Zi=Ae.inferTypeParameters;Ae.inferTypeParameters=Nn.root.inferTypeParameters;const fo=d(Nn.extendsType,Ae);Ae.inferTypeParameters=Zi;const Sa=Hr(fE(Nn)),Ec=Hr(mE(Nn));return w.createConditionalTypeNode(ni,fo,Sa,Ec)}function Hr(Nn){var ni,Zi,fo;return Nn.flags&1048576?(ni=Ae.visitedTypes)!=null&&ni.has(bd(Nn))?(Ae.flags&131072||(Ae.encounteredError=!0,(fo=(Zi=Ae.tracker)==null?void 0:Zi.reportCyclicStructureError)==null||fo.call(Zi)),y(Ae)):qt(Nn,Sa=>d(Sa,Ae)):d(Nn,Ae)}function xr(Nn){return!!W8(Nn)}function lt(Nn){return!!Nn.target&&xr(Nn.target)&&!xr(Nn)}function Ot(Nn){var ni;N.assert(!!(Nn.flags&524288));const Zi=Nn.declaration.readonlyToken?w.createToken(Nn.declaration.readonlyToken.kind):void 0,fo=Nn.declaration.questionToken?w.createToken(Nn.declaration.questionToken.kind):void 0;let Sa,Ec;const ks=!AN(Nn)&&!(UT(Nn).flags&2)&&Ae.flags&4&&!(Ef(Nn).flags&262144&&((ni=Ld(Ef(Nn)))==null?void 0:ni.flags)&4194304);if(AN(Nn)){if(lt(Nn)&&Ae.flags&4){const St=yf(Xa(262144,"T")),Zt=Bo(St,Ae);Ec=w.createTypeReferenceNode(Zt)}Sa=w.createTypeOperatorNode(143,Ec||d(UT(Nn),Ae))}else if(ks){const St=yf(Xa(262144,"T")),Zt=Bo(St,Ae);Ec=w.createTypeReferenceNode(Zt),Sa=Ec}else Sa=d(Ef(Nn),Ae);const Ns=Ke(m_(Nn),Ae,Sa),Du=Nn.declaration.nameType?d(_y(Nn),Ae):void 0,Ks=d(Jb(mv(Nn),!!(Bh(Nn)&4)),Ae),E_=w.createMappedTypeNode(Zi,Ns,Du,fo,Ks,void 0);Ae.approximateLength+=10;const rt=pr(E_,1);if(lt(Nn)&&Ae.flags&4){const St=so(Ld(Ei(Nn.declaration.typeParameter.constraint.type))||_n,Nn.mapper);return w.createConditionalTypeNode(d(UT(Nn),Ae),w.createInferTypeNode(w.createTypeParameterDeclaration(void 0,w.cloneNode(Ec.typeName),St.flags&2?void 0:d(St,Ae))),rt,w.createKeywordTypeNode(146))}else if(ks)return w.createConditionalTypeNode(d(Ef(Nn),Ae),w.createInferTypeNode(w.createTypeParameterDeclaration(void 0,w.cloneNode(Ec.typeName),w.createTypeOperatorNode(143,d(UT(Nn),Ae)))),rt,w.createKeywordTypeNode(146));return rt}function pn(Nn){var ni,Zi;const fo=Nn.id,Sa=Nn.symbol;if(Sa){if(!!(Wr(Nn)&8388608)){const Ks=Nn.node;if(lI(Ks)&&Ei(Ks)===Nn){const E_=Wl(Ae,Ks);if(E_)return E_}return(ni=Ae.visitedTypes)!=null&&ni.has(fo)?y(Ae):qt(Nn,mn)}const Ns=j1(Nn)?788968:111551;if(nh(Sa.valueDeclaration))return Ro(Sa,Ae,Ns);if(Sa.flags&32&&!FZ(Sa)&&!(Sa.valueDeclaration&&ui(Sa.valueDeclaration)&&Ae.flags&2048&&(!Ic(Sa.valueDeclaration)||ki(Sa,Ae.enclosingDeclaration,Ns,!1).accessibility!==0))||Sa.flags&896||Ec())return Ro(Sa,Ae,Ns);if((Zi=Ae.visitedTypes)!=null&&Zi.has(fo)){const Du=u9(Nn);return Du?Ro(Du,Ae,788968):y(Ae)}else return qt(Nn,mn)}else return mn(Nn);function Ec(){var ks;const Ns=!!(Sa.flags&8192)&&bt(Sa.declarations,Ks=>sa(Ks)),Du=!!(Sa.flags&16)&&(Sa.parent||Ue(Sa.declarations,Ks=>Ks.parent.kind===312||Ks.parent.kind===268));if(Ns||Du)return(!!(Ae.flags&4096)||((ks=Ae.visitedTypes)==null?void 0:ks.has(fo)))&&(!(Ae.flags&8)||ht(Sa,Ae.enclosingDeclaration))}}function qt(Nn,ni){var Zi,fo,Sa;const Ec=Nn.id,ks=Wr(Nn)&16&&Nn.symbol&&Nn.symbol.flags&32,Ns=Wr(Nn)&4&&Nn.node?"N"+as(Nn.node):Nn.flags&16777216?"N"+as(Nn.root.node):Nn.symbol?(ks?"+":"")+Ta(Nn.symbol):void 0;Ae.visitedTypes||(Ae.visitedTypes=new Set),Ns&&!Ae.symbolDepth&&(Ae.symbolDepth=new Map);const Du=Ae.enclosingDeclaration&&ei(Ae.enclosingDeclaration),Ks=`${bd(Nn)}|${Ae.flags}`;Du&&(Du.serializedTypes||(Du.serializedTypes=new Map));const E_=(Zi=Du==null?void 0:Du.serializedTypes)==null?void 0:Zi.get(Ks);if(E_)return(fo=E_.trackedSymbols)==null||fo.forEach(([qr,zi,Fo])=>Ae.tracker.trackSymbol(qr,zi,Fo)),E_.truncating&&(Ae.truncating=!0),Ae.approximateLength+=E_.addedLength,Tn(E_.node);let rt;if(Ns){if(rt=Ae.symbolDepth.get(Ns)||0,rt>10)return y(Ae);Ae.symbolDepth.set(Ns,rt+1)}Ae.visitedTypes.add(Ec);const St=Ae.trackedSymbols;Ae.trackedSymbols=void 0;const Zt=Ae.approximateLength,Kn=ni(Nn),Rr=Ae.approximateLength-Zt;return!Ae.reportedDiagnostic&&!Ae.encounteredError&&((Sa=Du==null?void 0:Du.serializedTypes)==null||Sa.set(Ks,{node:Kn,truncating:Ae.truncating,addedLength:Rr,trackedSymbols:Ae.trackedSymbols})),Ae.visitedTypes.delete(Ec),Ns&&Ae.symbolDepth.set(Ns,rt),Ae.trackedSymbols=St,Kn;function Tn(qr){return!$s(qr)&&Do(qr)===qr?qr:dt(w.cloneNode(In(qr,Tn,void 0,gr)),qr)}function gr(qr,zi,Fo,_a,ha){return qr&&qr.length===0?dt(w.createNodeArray(void 0,qr.hasTrailingComma),qr):Vn(qr,zi,Fo,_a,ha)}}function mn(Nn){if(Kd(Nn)||Nn.containsError)return Ot(Nn);const ni=__(Nn);if(!ni.properties.length&&!ni.indexInfos.length){if(!ni.callSignatures.length&&!ni.constructSignatures.length)return Ae.approximateLength+=2,pr(w.createTypeLiteralNode(void 0),1);if(ni.callSignatures.length===1&&!ni.constructSignatures.length){const ks=ni.callSignatures[0];return be(ks,184,Ae)}if(ni.constructSignatures.length===1&&!ni.callSignatures.length){const ks=ni.constructSignatures[0];return be(ks,185,Ae)}}const Zi=nr(ni.constructSignatures,ks=>!!(ks.flags&4));if(bt(Zi)){const ks=wt(Zi,KT);return ni.callSignatures.length+(ni.constructSignatures.length-Zi.length)+ni.indexInfos.length+(Ae.flags&2048?au(ni.properties,Du=>!(Du.flags&4194304)):Me(ni.properties))&&ks.push(G1(ni)),d(ba(ks),Ae)}const fo=Ae.flags;Ae.flags|=4194304;const Sa=Go(ni);Ae.flags=fo;const Ec=w.createTypeLiteralNode(Sa);return Ae.approximateLength+=2,pr(Ec,Ae.flags&1024?0:1),Ec}function Wn(Nn){let ni=Js(Nn);if(Nn.target===Qo||Nn.target===na){if(Ae.flags&2){const Sa=d(ni[0],Ae);return w.createTypeReferenceNode(Nn.target===Qo?"Array":"ReadonlyArray",[Sa])}const Zi=d(ni[0],Ae),fo=w.createArrayTypeNode(Zi);return Nn.target===Qo?fo:w.createTypeOperatorNode(148,fo)}else if(Nn.target.objectFlags&8){if(ni=eo(ni,(Zi,fo)=>Jb(Zi,!!(Nn.target.elementFlags[fo]&2))),ni.length>0){const Zi=gy(Nn),fo=z(ni.slice(0,Zi),Ae);if(fo){const{labeledElementDeclarations:Sa}=Nn.target;for(let ks=0;ks<fo.length;ks++){const Ns=Nn.target.elementFlags[ks],Du=Sa==null?void 0:Sa[ks];Du?fo[ks]=w.createNamedTupleMember(Ns&12?w.createToken(26):void 0,w.createIdentifier(Vi(Yye(Du))),Ns&2?w.createToken(58):void 0,Ns&4?w.createArrayTypeNode(fo[ks]):fo[ks]):fo[ks]=Ns&12?w.createRestTypeNode(Ns&4?w.createArrayTypeNode(fo[ks]):fo[ks]):Ns&2?w.createOptionalTypeNode(fo[ks]):fo[ks]}const Ec=pr(w.createTupleTypeNode(fo),1);return Nn.target.readonly?w.createTypeOperatorNode(148,Ec):Ec}}if(Ae.encounteredError||Ae.flags&524288){const Zi=pr(w.createTupleTypeNode([]),1);return Nn.target.readonly?w.createTypeOperatorNode(148,Zi):Zi}Ae.encounteredError=!0;return}else{if(Ae.flags&2048&&Nn.symbol.valueDeclaration&&ui(Nn.symbol.valueDeclaration)&&!ht(Nn.symbol,Ae.enclosingDeclaration))return pn(Nn);{const Zi=Nn.target.outerTypeParameters;let fo=0,Sa;if(Zi){const Du=Zi.length;for(;fo<Du;){const Ks=fo,E_=q8e(Zi[fo]);do fo++;while(fo<Du&&q8e(Zi[fo])===E_);if(!pG(Zi,ni,Ks,fo)){const rt=z(ni.slice(Ks,fo),Ae),St=Ae.flags;Ae.flags|=16;const Zt=Ro(E_,Ae,788968,rt);Ae.flags=St,Sa=Sa?Li(Sa,Zt):Zt}}}let Ec;if(ni.length>0){const Du=(Nn.target.typeParameters||et).length;Ec=z(ni.slice(fo,Du),Ae)}const ks=Ae.flags;Ae.flags|=16;const Ns=Ro(Nn.symbol,Ae,788968,Ec);return Ae.flags=ks,Sa?Li(Sa,Ns):Ns}}}function Li(Nn,ni){if(ug(Nn)){let Zi=Nn.typeArguments,fo=Nn.qualifier;fo&&(Ve(fo)?Zi!==zS(fo)&&(fo=Jv(w.cloneNode(fo),Zi)):Zi!==zS(fo.right)&&(fo=w.updateQualifiedName(fo,fo.left,Jv(w.cloneNode(fo.right),Zi)))),Zi=ni.typeArguments;const Sa=Br(ni);for(const Ec of Sa)fo=fo?w.createQualifiedName(fo,Ec):Ec;return w.updateImportTypeNode(Nn,Nn.argument,Nn.attributes,fo,Zi,Nn.isTypeOf)}else{let Zi=Nn.typeArguments,fo=Nn.typeName;Ve(fo)?Zi!==zS(fo)&&(fo=Jv(w.cloneNode(fo),Zi)):Zi!==zS(fo.right)&&(fo=w.updateQualifiedName(fo,fo.left,Jv(w.cloneNode(fo.right),Zi))),Zi=ni.typeArguments;const Sa=Br(ni);for(const Ec of Sa)fo=w.createQualifiedName(fo,Ec);return w.updateTypeReferenceNode(Nn,fo,Zi)}}function Br(Nn){let ni=Nn.typeName;const Zi=[];for(;!Ve(ni);)Zi.unshift(ni.right),ni=ni.left;return Zi.unshift(ni),Zi}function Go(Nn){if(c(Ae))return[w.createPropertySignature(void 0,"...",void 0,void 0)];const ni=[];for(const Sa of Nn.callSignatures)ni.push(be(Sa,179,Ae));for(const Sa of Nn.constructSignatures)Sa.flags&4||ni.push(be(Sa,180,Ae));for(const Sa of Nn.indexInfos)ni.push(re(Sa,Ae,Nn.objectFlags&1024?y(Ae):void 0));const Zi=Nn.properties;if(!Zi)return ni;let fo=0;for(const Sa of Zi){if(fo++,Ae.flags&2048){if(Sa.flags&4194304)continue;Df(Sa)&6&&Ae.tracker.reportPrivateInBaseOfClassExpression&&Ae.tracker.reportPrivateInBaseOfClassExpression(Vi(Sa.escapedName))}if(c(Ae)&&fo+2<Zi.length-1){ni.push(w.createPropertySignature(void 0,`... ${Zi.length-fo} more ...`,void 0,void 0)),k(Zi[Zi.length-1],Ae,ni);break}k(Sa,Ae,ni)}return ni.length?ni:void 0}}function y(ut){return ut.approximateLength+=3,ut.flags&1?w.createKeywordTypeNode(133):w.createTypeReferenceNode(w.createIdentifier("..."),void 0)}function x(ut,Ae){var Ln;return!!(xl(ut)&8192)&&(Nr(Ae.reverseMappedStack,ut)||((Ln=Ae.reverseMappedStack)==null?void 0:Ln[0])&&!(Wr(Ya(Ae.reverseMappedStack).links.propertyType)&16))}function k(ut,Ae,Ln){var Mr;const di=!!(xl(ut)&8192),Si=x(ut,Ae)?j:kb(ut),Ti=Ae.enclosingDeclaration;if(Ae.enclosingDeclaration=void 0,Ae.tracker.canTrackSymbol&&x8(ut.escapedName))if(ut.declarations){const mn=Ha(ut.declarations);if(h9(mn))if(mr(mn)){const Wn=Mo(mn);Wn&&Qs(Wn)&&_k(Wn.argumentExpression)&&ar(Wn.argumentExpression,Ti,Ae)}else ar(mn.name.expression,Ti,Ae)}else Ae.tracker.reportNonSerializableProperty(bi(ut));Ae.enclosingDeclaration=ut.valueDeclaration||((Mr=ut.declarations)==null?void 0:Mr[0])||Ti;const Hr=wn(ut,Ae);if(Ae.enclosingDeclaration=Ti,Ae.approximateLength+=Sl(ut).length+1,ut.flags&98304){const mn=U1(ut);if(Si!==mn&&!Kt(Si)&&!Kt(mn)){const Wn=fl(ut,177),Li=fm(Wn);Ln.push(ac(be(Li,177,Ae,{name:Hr}),Wn));const Br=fl(ut,178),Go=fm(Br);Ln.push(ac(be(Go,178,Ae,{name:Hr}),Br));return}}const xr=ut.flags&16777216?w.createToken(58):void 0;if(ut.flags&8208&&!Wb(Si).length&&!b_(ut)){const mn=Yo(dc(Si,Wn=>!(Wn.flags&32768)),0);for(const Wn of mn){const Li=be(Wn,173,Ae,{name:Hr,questionToken:xr});Ln.push(qt(Li))}if(mn.length||!xr)return}let lt;x(ut,Ae)?lt=y(Ae):(di&&(Ae.reverseMappedStack||(Ae.reverseMappedStack=[]),Ae.reverseMappedStack.push(ut)),lt=Si?Ts(Ae,Si,ut,Ti):w.createKeywordTypeNode(133),di&&Ae.reverseMappedStack.pop());const Ot=b_(ut)?[w.createToken(148)]:void 0;Ot&&(Ae.approximateLength+=9);const pn=w.createPropertySignature(Ot,Hr,xr,lt);Ln.push(qt(pn));function qt(mn){var Wn;const Li=(Wn=ut.declarations)==null?void 0:Wn.find(Br=>Br.kind===355);if(Li){const Br=fL(Li.comment);Br&&I0(mn,[{kind:3,text:`*
+ * `+Br.replace(/\n/g,`
+ * `)+`
+ `,pos:-1,end:-1,hasTrailingNewLine:!0}])}else ut.valueDeclaration&&ac(mn,ut.valueDeclaration);return mn}}function z(ut,Ae,Ln){if(bt(ut)){if(c(Ae))if(Ln){if(ut.length>2)return[d(ut[0],Ae),w.createTypeReferenceNode(`... ${ut.length-2} more ...`,void 0),d(ut[ut.length-1],Ae)]}else return[w.createTypeReferenceNode("...",void 0)];const di=!(Ae.flags&64)?Zp():void 0,Si=[];let Ti=0;for(const Hr of ut){if(Ti++,c(Ae)&&Ti+2<ut.length-1){Si.push(w.createTypeReferenceNode(`... ${ut.length-Ti} more ...`,void 0));const lt=d(ut[ut.length-1],Ae);lt&&Si.push(lt);break}Ae.approximateLength+=2;const xr=d(Hr,Ae);xr&&(Si.push(xr),di&&Zoe(xr)&&di.add(xr.typeName.escapedText,[Hr,Si.length-1]))}if(di){const Hr=Ae.flags;Ae.flags|=64,di.forEach(xr=>{if(!eae(xr,([lt],[Ot])=>H(lt,Ot)))for(const[lt,Ot]of xr)Si[Ot]=d(lt,Ae)}),Ae.flags=Hr}return Si}}function H(ut,Ae){return ut===Ae||!!ut.symbol&&ut.symbol===Ae.symbol||!!ut.aliasSymbol&&ut.aliasSymbol===Ae.aliasSymbol}function re(ut,Ae,Ln){const Mr=Eie(ut)||"x",di=d(ut.keyType,Ae),Si=w.createParameterDeclaration(void 0,void 0,Mr,void 0,di,void 0);return Ln||(Ln=d(ut.type||j,Ae)),!ut.type&&!(Ae.flags&2097152)&&(Ae.encounteredError=!0),Ae.approximateLength+=Mr.length+4,w.createIndexSignature(ut.isReadonly?[w.createToken(148)]:void 0,[Si],Ln)}function be(ut,Ae,Ln,Mr){var di;const Si=Ln.flags&256;Si&&(Ln.flags&=-257),Ln.approximateLength+=3;let Ti,Hr;Ln.flags&32&&ut.target&&ut.mapper&&ut.target.typeParameters?Hr=ut.target.typeParameters.map(Br=>d(so(Br,ut.mapper),Ln)):Ti=ut.typeParameters&&ut.typeParameters.map(Br=>gt(Br,Ln));const xr=E8e(ut,!0)[0];let lt;if(Ln.enclosingDeclaration&&ut.declaration&&ut.declaration!==Ln.enclosingDeclaration&&!lr(ut.declaration)&&(bt(xr)||bt(ut.typeParameters))){let Br=function(Go,Nn){N.assert(Ln.enclosingDeclaration);let ni;ei(Ln.enclosingDeclaration).fakeScopeForSignatureDeclaration===Go?ni=Ln.enclosingDeclaration:Ln.enclosingDeclaration.parent&&ei(Ln.enclosingDeclaration.parent).fakeScopeForSignatureDeclaration===Go&&(ni=Ln.enclosingDeclaration.parent),N.assertOptionalNode(ni,Xo);const Zi=(ni==null?void 0:ni.locals)??ua();let fo;if(Nn((ks,Ns)=>{Zi.has(ks)||(fo=xn(fo,ks),Zi.set(ks,Ns))}),!fo)return;const Sa=lt;function Ec(){Ue(fo,ks=>Zi.delete(ks)),Sa==null||Sa()}if(ni)lt=Ec;else{const ks=Ih.createBlock(et);ei(ks).fakeScopeForSignatureDeclaration=Go,ks.locals=Zi;const Ns=Ln.enclosingDeclaration;qa(ks,Ns),Ln.enclosingDeclaration=ks,lt=()=>{Ln.enclosingDeclaration=Ns,Ec()}}};Br("params",Go=>{for(const Nn of xr)Go(Nn.escapedName,Nn)}),Ln.flags&4&&Br("typeParams",Go=>{for(const Nn of ut.typeParameters??et){const ni=Bo(Nn,Ln).escapedText;Go(ni,Nn.symbol)}})}const Ot=(bt(xr,Br=>Br!==xr[xr.length-1]&&!!(xl(Br)&32768))?ut.parameters:xr).map(Br=>an(Br,Ln,Ae===176,Mr==null?void 0:Mr.privateSymbolVisitor,Mr==null?void 0:Mr.bundledImports)),pn=Ln.flags&33554432?void 0:ge(ut,Ln);pn&&Ot.unshift(pn);let qt;const mn=jf(ut);if(mn){const Br=mn.kind===2||mn.kind===3?w.createToken(131):void 0,Go=mn.kind===1||mn.kind===3?pr(w.createIdentifier(mn.parameterName),16777216):w.createThisTypeNode(),Nn=mn.type&&d(mn.type,Ln);qt=w.createTypePredicateNode(Br,Go,Nn)}else{const Br=ps(ut);Br&&!(Si&&Nt(Br))?qt=Ga(Ln,Br,ut,Mr==null?void 0:Mr.privateSymbolVisitor,Mr==null?void 0:Mr.bundledImports):Si||(qt=w.createKeywordTypeNode(133))}let Wn=Mr==null?void 0:Mr.modifiers;if(Ae===185&&ut.flags&4){const Br=M_(Wn);Wn=w.createModifiersFromModifierFlags(Br|64)}const Li=Ae===179?w.createCallSignature(Ti,Ot,qt):Ae===180?w.createConstructSignature(Ti,Ot,qt):Ae===173?w.createMethodSignature(Wn,(Mr==null?void 0:Mr.name)??w.createIdentifier(""),Mr==null?void 0:Mr.questionToken,Ti,Ot,qt):Ae===174?w.createMethodDeclaration(Wn,void 0,(Mr==null?void 0:Mr.name)??w.createIdentifier(""),void 0,Ti,Ot,qt,void 0):Ae===176?w.createConstructorDeclaration(Wn,Ot,void 0):Ae===177?w.createGetAccessorDeclaration(Wn,(Mr==null?void 0:Mr.name)??w.createIdentifier(""),Ot,qt,void 0):Ae===178?w.createSetAccessorDeclaration(Wn,(Mr==null?void 0:Mr.name)??w.createIdentifier(""),Ot,void 0):Ae===181?w.createIndexSignature(Wn,Ot,qt):Ae===324?w.createJSDocFunctionType(Ot,qt):Ae===184?w.createFunctionTypeNode(Ti,Ot,qt??w.createTypeReferenceNode(w.createIdentifier(""))):Ae===185?w.createConstructorTypeNode(Wn,Ti,Ot,qt??w.createTypeReferenceNode(w.createIdentifier(""))):Ae===262?w.createFunctionDeclaration(Wn,void 0,Mr!=null&&Mr.name?aa(Mr.name,Ve):w.createIdentifier(""),Ti,Ot,qt,void 0):Ae===218?w.createFunctionExpression(Wn,void 0,Mr!=null&&Mr.name?aa(Mr.name,Ve):w.createIdentifier(""),Ti,Ot,qt,w.createBlock([])):Ae===219?w.createArrowFunction(Wn,Ti,Ot,qt,void 0,w.createBlock([])):N.assertNever(Ae);if(Hr&&(Li.typeArguments=w.createNodeArray(Hr)),((di=ut.declaration)==null?void 0:di.kind)===330&&ut.declaration.parent.kind===346){const Br=fc(ut.declaration.parent.parent,!0).slice(2,-2).split(/\r\n|\n|\r/).map(Go=>Go.replace(/^\s+/," ")).join(`
+`);fP(Li,3,Br,!0)}return lt==null||lt(),Li}function ge(ut,Ae){if(ut.thisParameter)return an(ut.thisParameter,Ae);if(ut.declaration&&lr(ut.declaration)){const Ln=E4(ut.declaration);if(Ln&&Ln.typeExpression)return w.createParameterDeclaration(void 0,void 0,"this",void 0,d(Ei(Ln.typeExpression),Ae))}}function Ke(ut,Ae,Ln){const Mr=Ae.flags;Ae.flags&=-513;const di=w.createModifiersFromModifierFlags(Pve(ut)),Si=Bo(ut,Ae),Ti=JT(ut),Hr=Ti&&d(Ti,Ae);return Ae.flags=Mr,w.createTypeParameterDeclaration(di,Si,Ln,Hr)}function gt(ut,Ae,Ln=Ld(ut)){const Mr=Ln&&d(Ln,Ae);return Ke(ut,Ae,Mr)}function Dt(ut){const Ae=fl(ut,169);if(Ae)return Ae;if(!mh(ut))return fl(ut,348)}function an(ut,Ae,Ln,Mr,di){const Si=Dt(ut);let Ti=dr(ut);Si&&u7e(Si)&&(Ti=qb(Ti));const Hr=Ts(Ae,Ti,ut,Ae.enclosingDeclaration,Mr,di),xr=!(Ae.flags&8192)&&Ln&&Si&&Cm(Si)?wt(ME(Si),w.cloneNode):void 0,Ot=Si&&Zh(Si)||xl(ut)&32768?w.createToken(26):void 0,pn=cn(ut,Si,Ae),mn=Si&&N8(Si)||xl(ut)&16384?w.createToken(58):void 0,Wn=w.createParameterDeclaration(xr,Ot,pn,mn,Hr,void 0);return Ae.approximateLength+=Sl(ut).length+3,Wn}function cn(ut,Ae,Ln){return Ae&&Ae.name?Ae.name.kind===80?pr(w.cloneNode(Ae.name),16777216):Ae.name.kind===166?pr(w.cloneNode(Ae.name.right),16777216):Mr(Ae.name):Sl(ut);function Mr(di){return Si(di);function Si(Ti){Ln.tracker.canTrackSymbol&&Za(Ti)&&yge(Ti)&&ar(Ti.expression,Ln.enclosingDeclaration,Ln);let Hr=In(Ti,Si,void 0,void 0,Si);return Qa(Hr)&&(Hr=w.updateBindingElement(Hr,Hr.dotDotDotToken,Hr.propertyName,Hr.name,void 0)),$s(Hr)||(Hr=w.cloneNode(Hr)),pr(Hr,16777217)}}}function ar(ut,Ae,Ln){if(!Ln.tracker.canTrackSymbol)return;const Mr=Vp(ut),di=bl(Mr,Mr.escapedText,1160127,void 0,void 0,!0);di&&Ln.tracker.trackSymbol(di,Ae,111551)}function On(ut,Ae,Ln,Mr){return Ae.tracker.trackSymbol(ut,Ae.enclosingDeclaration,Ln),ln(ut,Ae,Ln,Mr)}function ln(ut,Ae,Ln,Mr){let di;return!(ut.flags&262144)&&(Ae.enclosingDeclaration||Ae.flags&64)&&!(Ae.flags&134217728)?(di=N.checkDefined(Ti(ut,Ln,!0)),N.assert(di&&di.length>0)):di=[ut],di;function Ti(Hr,xr,lt){let Ot=Ib(Hr,Ae.enclosingDeclaration,xr,!!(Ae.flags&128)),pn;if(!Ot||rE(Ot[0],Ae.enclosingDeclaration,Ot.length===1?xr:cv(xr))){const mn=tE(Ot?Ot[0]:Hr,Ae.enclosingDeclaration,xr);if(Me(mn)){pn=mn.map(Br=>bt(Br.declarations,ed)?qn(Br,Ae):void 0);const Wn=mn.map((Br,Go)=>Go);Wn.sort(qt);const Li=Wn.map(Br=>mn[Br]);for(const Br of Li){const Go=Ti(Br,cv(xr),!1);if(Go){if(Br.exports&&Br.exports.get("export=")&&u_(Br.exports.get("export="),Hr)){Ot=Go;break}Ot=Go.concat(Ot||[Eg(Br,Hr)||Hr]);break}}}}if(Ot)return Ot;if(lt||!(Hr.flags&6144))return!lt&&!Mr&&Ue(Hr.declarations,ed)?void 0:[Hr];function qt(mn,Wn){const Li=pn[mn],Br=pn[Wn];if(Li&&Br){const Go=Wp(Br);return Wp(Li)===Go?qF(Li)-qF(Br):Go?-1:1}return 0}}}function zn(ut,Ae){let Ln;return GN(ut).flags&524384&&(Ln=w.createNodeArray(wt(kr(ut),di=>gt(di,Ae)))),Ln}function Fn(ut,Ae,Ln){var Mr;N.assert(ut&&0<=Ae&&Ae<ut.length);const di=ut[Ae],Si=Ta(di);if((Mr=Ln.typeParameterSymbolList)!=null&&Mr.has(Si))return;(Ln.typeParameterSymbolList||(Ln.typeParameterSymbolList=new Set)).add(Si);let Ti;if(Ln.flags&512&&Ae<ut.length-1){const Hr=di,xr=ut[Ae+1];if(xl(xr)&1){const lt=Fi(Hr.flags&2097152?Fc(Hr):Hr);Ti=z(wt(lt,Ot=>Vb(Ot,xr.links.mapper)),Ln)}else Ti=zn(di,Ln)}return Ti}function er(ut){return jS(ut.objectType)?er(ut.objectType):ut}function qn(ut,Ae,Ln){let Mr=fl(ut,312);if(!Mr){const lt=Ut(ut.declarations,Ot=>FT(Ot,ut));lt&&(Mr=fl(lt,312))}if(Mr&&Mr.moduleName!==void 0)return Mr.moduleName;if(!Mr){if(Ae.tracker.trackReferencedAmbientModule){const lt=nr(ut.declarations,ku);if(Me(lt))for(const Ot of lt)Ae.tracker.trackReferencedAmbientModule(Ot,ut)}if(Yq.test(ut.escapedName))return ut.escapedName.substring(1,ut.escapedName.length-1)}if(!Ae.enclosingDeclaration||!Ae.tracker.moduleResolverHost)return Yq.test(ut.escapedName)?ut.escapedName.substring(1,ut.escapedName.length-1):jn(xj(ut)).fileName;const di=jn(Pl(Ae.enclosingDeclaration)),Si=Ln||(di==null?void 0:di.impliedNodeFormat),Ti=WP(di.path,Si),Hr=Xi(ut);let xr=Hr.specifierCache&&Hr.specifierCache.get(Ti);if(!xr){const lt=!!Ps(V),{moduleResolverHost:Ot}=Ae.tracker,pn=lt?{...V,baseUrl:Ot.getCommonSourceDirectory()}:V;xr=Ha(yxe(ut,Qt,pn,di,Ot,{importModuleSpecifierPreference:lt?"non-relative":"project-relative",importModuleSpecifierEnding:lt?"minimal":Si===99?"js":void 0},{overrideImportMode:Ln})),Hr.specifierCache??(Hr.specifierCache=new Map),Hr.specifierCache.set(Ti,xr)}return xr}function tr(ut){const Ae=w.createIdentifier(Vi(ut.escapedName));return ut.parent?w.createQualifiedName(tr(ut.parent),Ae):Ae}function Ro(ut,Ae,Ln,Mr){const di=On(ut,Ae,Ln,!(Ae.flags&16384)),Si=Ln===111551;if(bt(di[0].declarations,ed)){const xr=di.length>1?Hr(di,di.length-1,1):void 0,lt=Mr||Fn(di,0,Ae),Ot=jn(Pl(Ae.enclosingDeclaration)),pn=G4(di[0]);let qt,mn;if((md(V)===3||md(V)===99)&&(pn==null?void 0:pn.impliedNodeFormat)===99&&pn.impliedNodeFormat!==(Ot==null?void 0:Ot.impliedNodeFormat)&&(qt=qn(di[0],Ae,99),mn=w.createImportAttributes(w.createNodeArray([w.createImportAttribute(w.createStringLiteral("resolution-mode"),w.createStringLiteral("import"))]))),qt||(qt=qn(di[0],Ae)),!(Ae.flags&67108864)&&md(V)!==1&&qt.includes("/node_modules/")){const Li=qt;if(md(V)===3||md(V)===99){const Br=(Ot==null?void 0:Ot.impliedNodeFormat)===99?1:99;qt=qn(di[0],Ae,Br),qt.includes("/node_modules/")?qt=Li:mn=w.createImportAttributes(w.createNodeArray([w.createImportAttribute(w.createStringLiteral("resolution-mode"),w.createStringLiteral(Br===99?"import":"require"))]))}mn||(Ae.encounteredError=!0,Ae.tracker.reportLikelyUnsafeImportRequiredError&&Ae.tracker.reportLikelyUnsafeImportRequiredError(Li))}const Wn=w.createLiteralTypeNode(w.createStringLiteral(qt));if(Ae.tracker.trackExternalModuleSymbolOfImportTypeNode&&Ae.tracker.trackExternalModuleSymbolOfImportTypeNode(di[0]),Ae.approximateLength+=qt.length+10,!xr||Zd(xr)){if(xr){const Li=Ve(xr)?xr:xr.right;Jv(Li,void 0)}return w.createImportTypeNode(Wn,mn,xr,lt,Si)}else{const Li=er(xr),Br=Li.objectType.typeName;return w.createIndexedAccessTypeNode(w.createImportTypeNode(Wn,mn,Br,lt,Si),Li.indexType)}}const Ti=Hr(di,di.length-1,0);if(jS(Ti))return Ti;if(Si)return w.createTypeQueryNode(Ti);{const xr=Ve(Ti)?Ti:Ti.right,lt=zS(xr);return Jv(xr,void 0),w.createTypeReferenceNode(Ti,lt)}function Hr(xr,lt,Ot){const pn=lt===xr.length-1?Mr:Fn(xr,lt,Ae),qt=xr[lt],mn=xr[lt-1];let Wn;if(lt===0)Ae.flags|=16777216,Wn=iE(qt,Ae),Ae.approximateLength+=(Wn?Wn.length:0)+1,Ae.flags^=16777216;else if(mn&&Cp(mn)){const Br=Cp(mn);Gc(Br,(Go,Nn)=>{if(u_(Go,qt)&&!x8(Nn)&&Nn!=="export=")return Wn=Vi(Nn),!0})}if(Wn===void 0){const Br=Ut(qt.declarations,Mo);if(Br&&Za(Br)&&Zd(Br.expression)){const Go=Hr(xr,lt-1,Ot);return Zd(Go)?w.createIndexedAccessTypeNode(w.createParenthesizedType(w.createTypeQueryNode(Go)),w.createTypeQueryNode(Br.expression)):Go}Wn=iE(qt,Ae)}if(Ae.approximateLength+=Wn.length+1,!(Ae.flags&16)&&mn&&Ob(mn)&&Ob(mn).get(qt.escapedName)&&u_(Ob(mn).get(qt.escapedName),qt)){const Br=Hr(xr,lt-1,Ot);return jS(Br)?w.createIndexedAccessTypeNode(Br,w.createLiteralTypeNode(w.createStringLiteral(Wn))):w.createIndexedAccessTypeNode(w.createTypeReferenceNode(Br,pn),w.createLiteralTypeNode(w.createStringLiteral(Wn)))}const Li=pr(w.createIdentifier(Wn),16777216);if(pn&&Jv(Li,w.createNodeArray(pn)),Li.symbol=qt,lt>Ot){const Br=Hr(xr,lt-1,Ot);return Zd(Br)?w.createQualifiedName(Br,Li):N.fail("Impossible construct - an export of an indexed access cannot be reachable")}return Li}}function Eo(ut,Ae,Ln){const Mr=bl(Ae.enclosingDeclaration,ut,788968,void 0,ut,!1);return Mr&&Mr.flags&262144?Mr!==Ln.symbol:!1}function Bo(ut,Ae){var Ln,Mr;if(Ae.flags&4&&Ae.typeParameterNames){const Si=Ae.typeParameterNames.get(bd(ut));if(Si)return Si}let di=_o(ut.symbol,Ae,788968,!0);if(!(di.kind&80))return w.createIdentifier("(Missing type parameter)");if(Ae.flags&4){const Si=di.escapedText;let Ti=((Ln=Ae.typeParameterNamesByTextNextNameCount)==null?void 0:Ln.get(Si))||0,Hr=Si;for(;(Mr=Ae.typeParameterNamesByText)!=null&&Mr.has(Hr)||Eo(Hr,Ae,ut);)Ti++,Hr=`${Si}_${Ti}`;if(Hr!==Si){const xr=zS(di);di=w.createIdentifier(Hr),Jv(di,xr)}(Ae.typeParameterNamesByTextNextNameCount||(Ae.typeParameterNamesByTextNextNameCount=new Map)).set(Si,Ti),(Ae.typeParameterNames||(Ae.typeParameterNames=new Map)).set(bd(ut),di),(Ae.typeParameterNamesByText||(Ae.typeParameterNamesByText=new Set)).add(Hr)}return di}function _o(ut,Ae,Ln,Mr){const di=On(ut,Ae,Ln);return Mr&&di.length!==1&&!Ae.encounteredError&&!(Ae.flags&65536)&&(Ae.encounteredError=!0),Si(di,di.length-1);function Si(Ti,Hr){const xr=Fn(Ti,Hr,Ae),lt=Ti[Hr];Hr===0&&(Ae.flags|=16777216);const Ot=iE(lt,Ae);Hr===0&&(Ae.flags^=16777216);const pn=pr(w.createIdentifier(Ot),16777216);return xr&&Jv(pn,w.createNodeArray(xr)),pn.symbol=lt,Hr>0?w.createQualifiedName(Si(Ti,Hr-1),pn):pn}}function Cc(ut,Ae,Ln){const Mr=On(ut,Ae,Ln);return di(Mr,Mr.length-1);function di(Si,Ti){const Hr=Fn(Si,Ti,Ae),xr=Si[Ti];Ti===0&&(Ae.flags|=16777216);let lt=iE(xr,Ae);Ti===0&&(Ae.flags^=16777216);let Ot=lt.charCodeAt(0);if(VL(Ot)&&bt(xr.declarations,ed))return w.createStringLiteral(qn(xr,Ae));if(Ti===0||HU(lt,se)){const pn=pr(w.createIdentifier(lt),16777216);return Hr&&Jv(pn,w.createNodeArray(Hr)),pn.symbol=xr,Ti>0?w.createPropertyAccessExpression(di(Si,Ti-1),pn):pn}else{Ot===91&&(lt=lt.substring(1,lt.length-1),Ot=lt.charCodeAt(0));let pn;if(VL(Ot)&&!(xr.flags&8)?pn=w.createStringLiteral(tm(lt).replace(/\\./g,qt=>qt.substring(1)),Ot===39):""+ +lt===lt&&(pn=w.createNumericLiteral(+lt)),!pn){const qt=pr(w.createIdentifier(lt),16777216);Hr&&Jv(qt,w.createNodeArray(Hr)),qt.symbol=xr,pn=qt}return w.createElementAccessExpression(di(Si,Ti-1),pn)}}}function Jf(ut){const Ae=Mo(ut);return Ae?Za(Ae)?!!(mo(Ae.expression).flags&402653316):Qs(Ae)?!!(mo(Ae.argumentExpression).flags&402653316):Ma(Ae):!1}function dp(ut){const Ae=Mo(ut);return!!(Ae&&Ma(Ae)&&(Ae.singleQuote||!$s(Ae)&&uo(fc(Ae,!1),"'")))}function wn(ut,Ae){const Ln=!!Me(ut.declarations)&&Zn(ut.declarations,Jf),Mr=!!Me(ut.declarations)&&Zn(ut.declarations,dp),di=!!(ut.flags&8192),Si=Qn(ut,Ae,Mr,Ln,di);if(Si)return Si;const Ti=Vi(ut.escapedName);return oW(Ti,os(V),Mr,Ln,di)}function Qn(ut,Ae,Ln,Mr,di){const Si=Xi(ut).nameType;if(Si){if(Si.flags&384){const Ti=""+Si.value;return!tf(Ti,os(V))&&(Mr||!cg(Ti))?w.createStringLiteral(Ti,!!Ln):cg(Ti)&&uo(Ti,"-")?w.createComputedPropertyName(w.createPrefixUnaryExpression(41,w.createNumericLiteral(-Ti))):oW(Ti,os(V),Ln,Mr,di)}if(Si.flags&8192)return w.createComputedPropertyName(Cc(Si.symbol,Ae,111551))}}function oo(ut){const Ae={...ut};return Ae.typeParameterNames&&(Ae.typeParameterNames=new Map(Ae.typeParameterNames)),Ae.typeParameterNamesByText&&(Ae.typeParameterNamesByText=new Set(Ae.typeParameterNamesByText)),Ae.typeParameterSymbolList&&(Ae.typeParameterSymbolList=new Set(Ae.typeParameterSymbolList)),Ae.tracker=new Qq(Ae,Ae.tracker.inner,Ae.tracker.moduleResolverHost),Ae}function br(ut,Ae){return ut.declarations&&An(ut.declarations,Ln=>!!yu(Ln)&&(!Ae||!!Gn(Ln,Mr=>Mr===Ae)))}function Co(ut,Ae){return!(Wr(Ae)&4)||!Cf(ut)||Me(ut.typeArguments)>=Gh(Ae.target.typeParameters)}function ss(ut){for(;ei(ut).fakeScopeForSignatureDeclaration;)ut=ut.parent;return ut}function Ts(ut,Ae,Ln,Mr,di,Si){if(!Kt(Ae)&&Mr){const xr=br(Ln,ss(Mr));if(xr&&!Bs(xr)&&!rf(xr)){const lt=yu(xr);if(ju(lt,xr,Ae)&&Co(lt,Ae)){const Ot=Wl(ut,lt,di,Si);if(Ot)return Ot}}}const Ti=ut.flags;Ae.flags&8192&&Ae.symbol===Ln&&(!ut.enclosingDeclaration||bt(Ln.declarations,xr=>jn(xr)===jn(ut.enclosingDeclaration)))&&(ut.flags|=1048576);const Hr=d(Ae,ut);return ut.flags=Ti,Hr}function ju(ut,Ae,Ln){const Mr=Ei(ut);return Mr===Ln?!0:Ao(Ae)&&Ae.questionToken?hm(Ln,524288)===Mr:!1}function Ga(ut,Ae,Ln,Mr,di){if(!Kt(Ae)&&ut.enclosingDeclaration){const Si=Ln.declaration&&nm(Ln.declaration),Ti=ss(ut.enclosingDeclaration);if(Gn(Si,Hr=>Hr===Ti)&&Si){const Hr=Ei(Si);if((Hr.flags&262144&&Hr.isThisType?so(Hr,Ln.mapper):Hr)===Ae&&Co(Si,Ae)){const lt=Wl(ut,Si,Mr,di);if(lt)return lt}}}return d(Ae,ut)}function wd(ut,Ae,Ln){let Mr=!1;const di=Vp(ut);if(lr(ut)&&(RS(di)||rg(di.parent)||xd(di.parent)&&Uj(di.parent.left)&&RS(di.parent.right)))return Mr=!0,{introducesError:Mr,node:ut};const Si=Bf(ut),Ti=Hs(di,Si,!0,!0);if(Ti&&(ki(Ti,Ae.enclosingDeclaration,Si,!1).accessibility!==0?Mr=!0:(Ae.tracker.trackSymbol(Ti,Ae.enclosingDeclaration,Si),Ln==null||Ln(Ti)),Ve(ut))){const Hr=el(Ti),xr=Ti.flags&262144?Bo(Hr,Ae):w.cloneNode(ut);return xr.symbol=Ti,{introducesError:Mr,node:pr(Cr(xr,ut),16777216)}}return{introducesError:Mr,node:ut}}function Wl(ut,Ae,Ln,Mr){i&&i.throwIfCancellationRequested&&i.throwIfCancellationRequested();let di=!1;const Si=jn(Ae),Ti=nt(Ae,Hr,ji);if(di)return;return Ti===Ae?dt(w.cloneNode(Ae),Ae):Ti;function Hr(xr){if($ae(xr)||xr.kind===326)return w.createKeywordTypeNode(133);if(Qae(xr))return w.createKeywordTypeNode(159);if($R(xr))return w.createUnionTypeNode([nt(xr.type,Hr,ji),w.createLiteralTypeNode(w.createNull())]);if(WH(xr))return w.createUnionTypeNode([nt(xr.type,Hr,ji),w.createKeywordTypeNode(157)]);if(sF(xr))return nt(xr.type,Hr);if(lF(xr))return w.createArrayTypeNode(nt(xr.type,Hr,ji));if(XS(xr))return w.createTypeLiteralNode(wt(xr.jsDocPropertyTags,qt=>{const mn=Ve(qt.name)?qt.name:qt.name.right,Wn=Xe(Ei(xr),mn.escapedText),Li=Wn&&qt.typeExpression&&Ei(qt.typeExpression.type)!==Wn?d(Wn,ut):void 0;return w.createPropertySignature(void 0,mn,qt.isBracketed||qt.typeExpression&&WH(qt.typeExpression.type)?w.createToken(58):void 0,Li||qt.typeExpression&&nt(qt.typeExpression.type,Hr,ji)||w.createKeywordTypeNode(133))}));if(Cf(xr)&&Ve(xr.typeName)&&xr.typeName.escapedText==="")return Cr(w.createKeywordTypeNode(133),xr);if((Kv(xr)||Cf(xr))&&u3(xr))return w.createTypeLiteralNode([w.createIndexSignature(void 0,[w.createParameterDeclaration(void 0,void 0,"x",void 0,nt(xr.typeArguments[0],Hr,ji))],nt(xr.typeArguments[1],Hr,ji))]);if(QR(xr))if(ER(xr)){let qt;return w.createConstructorTypeNode(void 0,Vn(xr.typeParameters,Hr,gl),Hi(xr.parameters,(mn,Wn)=>mn.name&&Ve(mn.name)&&mn.name.escapedText==="new"?(qt=mn.type,void 0):w.createParameterDeclaration(void 0,lt(mn),Ot(mn,Wn),mn.questionToken,nt(mn.type,Hr,ji),void 0)),nt(qt||xr.type,Hr,ji)||w.createKeywordTypeNode(133))}else return w.createFunctionTypeNode(Vn(xr.typeParameters,Hr,gl),wt(xr.parameters,(qt,mn)=>w.createParameterDeclaration(void 0,lt(qt),Ot(qt,mn),qt.questionToken,nt(qt.type,Hr,ji),void 0)),nt(xr.type,Hr,ji)||w.createKeywordTypeNode(133));if(Cf(xr)&&GL(xr)&&(!Co(xr,Ei(xr))||e6e(xr)||ft===DN(xr,788968,!0)))return Cr(d(Ei(xr),ut),xr);if(Vy(xr)){const qt=ei(xr).resolvedSymbol;return GL(xr)&&qt&&(!xr.isTypeOf&&!(qt.flags&788968)||!(Me(xr.typeArguments)>=Gh(kr(qt))))?Cr(d(Ei(xr),ut),xr):w.updateImportTypeNode(xr,w.updateLiteralTypeNode(xr.argument,pn(xr,xr.argument.literal)),xr.attributes,xr.qualifier,Vn(xr.typeArguments,Hr,ji),xr.isTypeOf)}if(Zd(xr)||Gl(xr)){const{introducesError:qt,node:mn}=wd(xr,ut,Ln);if(di=di||qt,mn!==xr)return mn}return Si&&cI(xr)&&bs(Si,xr.pos).line===bs(Si,xr.end).line&&pr(xr,1),In(xr,Hr,void 0);function lt(qt){return qt.dotDotDotToken||(qt.type&&lF(qt.type)?w.createToken(26):void 0)}function Ot(qt,mn){return qt.name&&Ve(qt.name)&&qt.name.escapedText==="this"?"this":lt(qt)?"args":`arg${mn}`}function pn(qt,mn){if(Mr){if(ut.tracker&&ut.tracker.moduleResolverHost){const Wn=Obe(qt);if(Wn){const Br={getCanonicalFileName:Mu(!!e.useCaseSensitiveFileNames),getCurrentDirectory:()=>ut.tracker.moduleResolverHost.getCurrentDirectory(),getCommonSourceDirectory:()=>ut.tracker.moduleResolverHost.getCommonSourceDirectory()},Go=T3(Br,Wn);return w.createStringLiteral(Go)}}}else if(ut.tracker&&ut.tracker.trackExternalModuleSymbolOfImportTypeNode){const Wn=sv(mn,mn,void 0);Wn&&ut.tracker.trackExternalModuleSymbolOfImportTypeNode(Wn)}return mn}}}function El(ut,Ae,Ln){var Mr;const di=fs(w.createPropertyDeclaration,174,!0),Si=fs((Pt,Dr,pi,Xr)=>w.createPropertySignature(Pt,Dr,pi,Xr),173,!1),Ti=Ae.enclosingDeclaration;let Hr=[];const xr=new Set,lt=[],Ot=Ae;Ae={...Ot,usedSymbolNames:new Set(Ot.usedSymbolNames),remappedSymbolNames:new Map,remappedSymbolReferences:new Map((Mr=Ot.remappedSymbolReferences)==null?void 0:Mr.entries()),tracker:void 0};const pn={...Ot.tracker.inner,trackSymbol:(Pt,Dr,pi)=>{var Xr,ci;if((Xr=Ae.remappedSymbolNames)!=null&&Xr.has(Ta(Pt)))return!1;if(ki(Pt,Dr,pi,!1).accessibility===0){const da=ln(Pt,Ae,pi);if(!(Pt.flags&4)){const qo=da[0],zs=jn(Ot.enclosingDeclaration);bt(qo.declarations,ms=>jn(ms)===zs)&&Ns(qo)}}else if((ci=Ot.tracker.inner)!=null&&ci.trackSymbol)return Ot.tracker.inner.trackSymbol(Pt,Dr,pi);return!1}};Ae.tracker=new Qq(Ae,pn,Ot.tracker.moduleResolverHost),Gc(ut,(Pt,Dr)=>{const pi=Vi(Dr);qm(Pt,pi)});let qt=!Ln;const mn=ut.get("export=");return mn&&ut.size>1&&mn.flags&2098688&&(ut=ua(),ut.set("export=",mn)),Sa(ut),ni(Hr);function Wn(Pt){return!!Pt&&Pt.kind===80}function Li(Pt){return Ll(Pt)?nr(wt(Pt.declarationList.declarations,Mo),Wn):nr([Mo(Pt)],Wn)}function Br(Pt){const Dr=An(Pt,kl),pi=Gr(Pt,Xl);let Xr=pi!==-1?Pt[pi]:void 0;if(Xr&&Dr&&Dr.isExportEquals&&Ve(Dr.expression)&&Ve(Xr.name)&&Sr(Xr.name)===Sr(Dr.expression)&&Xr.body&&O_(Xr.body)){const ci=nr(Pt,qo=>!!(pd(qo)&32)),ns=Xr.name;let da=Xr.body;if(Me(ci)&&(Xr=w.updateModuleDeclaration(Xr,Xr.modifiers,Xr.name,da=w.updateModuleBlock(da,w.createNodeArray([...Xr.body.statements,w.createExportDeclaration(void 0,!1,w.createNamedExports(wt(Pi(ci,qo=>Li(qo)),qo=>w.createExportSpecifier(!1,void 0,qo))),void 0)]))),Pt=[...Pt.slice(0,pi),Xr,...Pt.slice(pi+1)]),!An(Pt,qo=>qo!==Xr&&uL(qo,ns))){Hr=[];const qo=!bt(da.statements,zs=>Zr(zs,32)||kl(zs)||Yl(zs));Ue(da.statements,zs=>{Ks(zs,qo?32:0)}),Pt=[...nr(Pt,zs=>zs!==Xr&&zs!==Dr),...Hr]}}return Pt}function Go(Pt){const Dr=nr(Pt,Xr=>Yl(Xr)&&!Xr.moduleSpecifier&&!!Xr.exportClause&&Pf(Xr.exportClause));Me(Dr)>1&&(Pt=[...nr(Pt,ci=>!Yl(ci)||!!ci.moduleSpecifier||!ci.exportClause),w.createExportDeclaration(void 0,!1,w.createNamedExports(Pi(Dr,ci=>aa(ci.exportClause,Pf).elements)),void 0)]);const pi=nr(Pt,Xr=>Yl(Xr)&&!!Xr.moduleSpecifier&&!!Xr.exportClause&&Pf(Xr.exportClause));if(Me(pi)>1){const Xr=YN(pi,ci=>Ma(ci.moduleSpecifier)?">"+ci.moduleSpecifier.text:">");if(Xr.length!==pi.length)for(const ci of Xr)ci.length>1&&(Pt=[...nr(Pt,ns=>!ci.includes(ns)),w.createExportDeclaration(void 0,!1,w.createNamedExports(Pi(ci,ns=>aa(ns.exportClause,Pf).elements)),ci[0].moduleSpecifier)])}return Pt}function Nn(Pt){const Dr=Gr(Pt,pi=>Yl(pi)&&!pi.moduleSpecifier&&!pi.attributes&&!!pi.exportClause&&Pf(pi.exportClause));if(Dr>=0){const pi=Pt[Dr],Xr=Hi(pi.exportClause.elements,ci=>{if(!ci.propertyName){const ns=OM(Pt),da=nr(ns,qo=>uL(Pt[qo],ci.name));if(Me(da)&&Zn(da,qo=>Ik(Pt[qo]))){for(const qo of da)Pt[qo]=Zi(Pt[qo]);return}}return ci});Me(Xr)?Pt[Dr]=w.updateExportDeclaration(pi,pi.modifiers,pi.isTypeOnly,w.updateNamedExports(pi.exportClause,Xr),pi.moduleSpecifier,pi.attributes):Dy(Pt,Dr)}return Pt}function ni(Pt){return Pt=Br(Pt),Pt=Go(Pt),Pt=Nn(Pt),Ti&&($i(Ti)&&zp(Ti)||Xl(Ti))&&(!bt(Pt,EL)||!Kre(Pt)&&bt(Pt,C4))&&Pt.push(tw(w)),Pt}function Zi(Pt){const Dr=(pd(Pt)|32)&-129;return w.replaceModifiers(Pt,Dr)}function fo(Pt){const Dr=pd(Pt)&-33;return w.replaceModifiers(Pt,Dr)}function Sa(Pt,Dr,pi){Dr||lt.push(new Map),Pt.forEach(Xr=>{Ec(Xr,!1,!!pi)}),Dr||(lt[lt.length-1].forEach(Xr=>{Ec(Xr,!0,!!pi)}),lt.pop())}function Ec(Pt,Dr,pi){const Xr=rs(Pt);if(xr.has(Ta(Xr)))return;if(xr.add(Ta(Xr)),!Dr||Me(Pt.declarations)&&bt(Pt.declarations,ns=>!!Gn(ns,da=>da===Ti))){const ns=Ae;Ae=oo(Ae),ks(Pt,Dr,pi),Ae.reportedDiagnostic&&(Ot.reportedDiagnostic=Ae.reportedDiagnostic),Ae.trackedSymbols&&(ns.trackedSymbols?N.assert(Ae.trackedSymbols===ns.trackedSymbols):ns.trackedSymbols=Ae.trackedSymbols),Ae=ns}}function ks(Pt,Dr,pi,Xr=Pt.escapedName){var ci,ns,da,qo,zs,ms;const Va=Vi(Xr),Nu=Xr==="default";if(Dr&&!(Ae.flags&131072)&&GA(Va)&&!Nu){Ae.encounteredError=!0;return}let Cu=Nu&&!!(Pt.flags&-113||Pt.flags&16&&Me(gs(dr(Pt))))&&!(Pt.flags&2097152),Sd=!Cu&&!Dr&&GA(Va)&&!Nu;(Cu||Sd)&&(Dr=!0);const Jl=(Dr?0:32)|(Nu&&!Cu?2048:0),Pu=Pt.flags&1536&&Pt.flags&7&&Xr!=="export=",$d=Pu&&Cs(dr(Pt),Pt);if((Pt.flags&8208||$d)&&Tn(dr(Pt),Pt,qm(Pt,Va),Jl),Pt.flags&524288&&E_(Pt,Va,Jl),Pt.flags&98311&&Xr!=="export="&&!(Pt.flags&4194304)&&!(Pt.flags&32)&&!(Pt.flags&8192)&&!$d)if(pi)Da(Pt)&&(Sd=!1,Cu=!1);else{const ou=dr(Pt),wp=qm(Pt,Va);if(ou.symbol&&ou.symbol!==Pt&&ou.symbol.flags&16&&bt(ou.symbol.declarations,QE)&&((ci=ou.symbol.members)!=null&&ci.size||(ns=ou.symbol.exports)!=null&&ns.size))Ae.remappedSymbolReferences||(Ae.remappedSymbolReferences=new Map),Ae.remappedSymbolReferences.set(Ta(ou.symbol),Pt),ks(ou.symbol,Dr,pi,Xr),Ae.remappedSymbolReferences.delete(Ta(ou.symbol));else if(!(Pt.flags&16)&&Cs(ou,Pt))Tn(ou,Pt,wp,Jl);else{const Dx=Pt.flags&2?rM(Pt)?2:1:(da=Pt.parent)!=null&&da.valueDeclaration&&$i((qo=Pt.parent)==null?void 0:qo.valueDeclaration)?2:void 0,ih=Cu||!(Pt.flags&4)?wp:S_(wp,Pt);let Yb=Pt.declarations&&An(Pt.declarations,p6=>wi(p6));Yb&&Uc(Yb.parent)&&Yb.parent.declarations.length===1&&(Yb=Yb.parent.parent);const $b=(zs=Pt.declarations)==null?void 0:zs.find(Fr);if($b&&mr($b.parent)&&Ve($b.parent.right)&&((ms=ou.symbol)!=null&&ms.valueDeclaration)&&$i(ou.symbol.valueDeclaration)){const p6=wp===$b.parent.right.escapedText?void 0:$b.parent.right;Ks(w.createExportDeclaration(void 0,!1,w.createNamedExports([w.createExportSpecifier(!1,p6,wp)])),0),Ae.tracker.trackSymbol(ou.symbol,Ae.enclosingDeclaration,111551)}else{const p6=dt(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(ih,void 0,Ts(Ae,ou,Pt,Ti,Ns,Ln))],Dx)),Yb);Ks(p6,ih!==wp?Jl&-33:Jl),ih!==wp&&!Dr&&(Ks(w.createExportDeclaration(void 0,!1,w.createNamedExports([w.createExportSpecifier(!1,ih,wp)])),0),Sd=!1,Cu=!1)}}}if(Pt.flags&384&&Rr(Pt,Va,Jl),Pt.flags&32&&(Pt.flags&4&&Pt.valueDeclaration&&mr(Pt.valueDeclaration.parent)&&Zc(Pt.valueDeclaration.parent.right)?vi(Pt,qm(Pt,Va),Jl):_a(Pt,qm(Pt,Va),Jl)),(Pt.flags&1536&&(!Pu||Zt(Pt))||$d)&&Kn(Pt,Va,Jl),Pt.flags&64&&!(Pt.flags&32)&&rt(Pt,Va,Jl),Pt.flags&2097152&&vi(Pt,qm(Pt,Va),Jl),Pt.flags&4&&Pt.escapedName==="export="&&Da(Pt),Pt.flags&8388608&&Pt.declarations)for(const ou of Pt.declarations){const wp=vd(ou,ou.moduleSpecifier);wp&&Ks(w.createExportDeclaration(void 0,ou.isTypeOnly,void 0,w.createStringLiteral(qn(wp,Ae))),0)}Cu?Ks(w.createExportAssignment(void 0,!1,w.createIdentifier(qm(Pt,Va))),0):Sd&&Ks(w.createExportDeclaration(void 0,!1,w.createNamedExports([w.createExportSpecifier(!1,qm(Pt,Va),Va)])),0)}function Ns(Pt){if(bt(Pt.declarations,HE))return;N.assertIsDefined(lt[lt.length-1]),S_(Vi(Pt.escapedName),Pt);const Dr=!!(Pt.flags&2097152)&&!bt(Pt.declarations,pi=>!!Gn(pi,Yl)||Th(pi)||tu(pi)&&!Ah(pi.moduleReference));lt[Dr?0:lt.length-1].set(Ta(Pt),Pt)}function Du(Pt){return $i(Pt)&&(zp(Pt)||Qf(Pt))||ku(Pt)&&!R_(Pt)}function Ks(Pt,Dr){if(Cm(Pt)){let pi=0;const Xr=Ae.enclosingDeclaration&&(Zf(Ae.enclosingDeclaration)?jn(Ae.enclosingDeclaration):Ae.enclosingDeclaration);Dr&32&&Xr&&(Du(Xr)||Xl(Xr))&&Ik(Pt)&&(pi|=32),qt&&!(pi&32)&&(!Xr||!(Xr.flags&33554432))&&(x0(Pt)||Ll(Pt)||Ac(Pt)||Ic(Pt)||Xl(Pt))&&(pi|=128),Dr&2048&&(Ic(Pt)||hd(Pt)||Ac(Pt))&&(pi|=2048),pi&&(Pt=w.replaceModifiers(Pt,pi|pd(Pt)))}Hr.push(Pt)}function E_(Pt,Dr,pi){var Xr;const ci=c8e(Pt),ns=Xi(Pt).typeParameters,da=wt(ns,Cu=>gt(Cu,Ae)),qo=(Xr=Pt.declarations)==null?void 0:Xr.find(Zf),zs=fL(qo?qo.comment||qo.parent.comment:void 0),ms=Ae.flags;Ae.flags|=8388608;const Va=Ae.enclosingDeclaration;Ae.enclosingDeclaration=qo;const Nu=qo&&qo.typeExpression&&d1(qo.typeExpression)&&Wl(Ae,qo.typeExpression.type,Ns,Ln)||d(ci,Ae);Ks(I0(w.createTypeAliasDeclaration(void 0,qm(Pt,Dr),da,Nu),zs?[{kind:3,text:`*
+ * `+zs.replace(/\n/g,`
+ * `)+`
+ `,pos:-1,end:-1,hasTrailingNewLine:!0}]:[]),pi),Ae.flags=ms,Ae.enclosingDeclaration=Va}function rt(Pt,Dr,pi){const Xr=Vf(Pt),ci=kr(Pt),ns=wt(ci,Sd=>gt(Sd,Ae)),da=Mp(Xr),qo=Me(da)?ba(da):void 0,zs=Pi(gs(Xr),Sd=>Pc(Sd,qo)),ms=qh(0,Xr,qo,179),Va=qh(1,Xr,qo,180),Nu=Av(Xr,qo),Cu=Me(da)?[w.createHeritageClause(96,Hi(da,Sd=>fA(Sd,111551)))]:void 0;Ks(w.createInterfaceDeclaration(void 0,qm(Pt,Dr),ns,Cu,[...Nu,...Va,...ms,...zs]),pi)}function St(Pt){let Dr=zo(Cp(Pt).values());const pi=rs(Pt);if(pi!==Pt){const Xr=new Set(Dr);for(const ci of Cp(pi).values())Au(jl(ci))&111551||Xr.add(ci);Dr=zo(Xr)}return nr(Dr,Xr=>zi(Xr)&&tf(Xr.escapedName,99))}function Zt(Pt){return Zn(St(Pt),Dr=>!(Au(jl(Dr))&111551))}function Kn(Pt,Dr,pi){const Xr=St(Pt),ci=FM(Xr,qo=>qo.parent&&qo.parent===Pt?"real":"merged"),ns=ci.get("real")||et,da=ci.get("merged")||et;if(Me(ns)){const qo=qm(Pt,Dr);qr(ns,qo,pi,!!(Pt.flags&67108880))}if(Me(da)){const qo=jn(Ae.enclosingDeclaration),zs=qm(Pt,Dr),ms=w.createModuleBlock([w.createExportDeclaration(void 0,!1,w.createNamedExports(Hi(nr(da,Va=>Va.escapedName!=="export="),Va=>{var Nu,Cu;const Sd=Vi(Va.escapedName),Jl=qm(Va,Sd),Pu=Va.declarations&&Fm(Va);if(qo&&(Pu?qo!==jn(Pu):!bt(Va.declarations,wp=>jn(wp)===qo))){(Cu=(Nu=Ae.tracker)==null?void 0:Nu.reportNonlocalAugmentation)==null||Cu.call(Nu,qo,Pt,Va);return}const $d=Pu&&Hp(Pu,!0);Ns($d||Va);const ou=$d?qm($d,Vi($d.escapedName)):Jl;return w.createExportSpecifier(!1,Sd===ou?void 0:ou,Sd)})))]);Ks(w.createModuleDeclaration(void 0,w.createIdentifier(zs),ms,32),0)}}function Rr(Pt,Dr,pi){Ks(w.createEnumDeclaration(w.createModifiersFromModifierFlags(rbe(Pt)?4096:0),qm(Pt,Dr),wt(nr(gs(dr(Pt)),Xr=>!!(Xr.flags&8)),Xr=>{const ci=Xr.declarations&&Xr.declarations[0]&&u1(Xr.declarations[0])?Lbe(Xr.declarations[0]):void 0;return w.createEnumMember(Vi(Xr.escapedName),ci===void 0?void 0:typeof ci=="string"?w.createStringLiteral(ci):w.createNumericLiteral(ci))})),pi)}function Tn(Pt,Dr,pi,Xr){const ci=Yo(Pt,0);for(const ns of ci){const da=be(ns,262,Ae,{name:w.createIdentifier(pi),privateSymbolVisitor:Ns,bundledImports:Ln});Ks(dt(da,gr(ns)),Xr)}if(!(Dr.flags&1536&&Dr.exports&&Dr.exports.size)){const ns=nr(gs(Pt),zi);qr(ns,pi,Xr,!0)}}function gr(Pt){if(Pt.declaration&&Pt.declaration.parent){if(mr(Pt.declaration.parent)&&Bl(Pt.declaration.parent)===5)return Pt.declaration.parent;if(wi(Pt.declaration.parent)&&Pt.declaration.parent.parent)return Pt.declaration.parent.parent}return Pt.declaration}function qr(Pt,Dr,pi,Xr){if(Me(Pt)){const ns=FM(Pt,Jl=>!Me(Jl.declarations)||bt(Jl.declarations,Pu=>jn(Pu)===jn(Ae.enclosingDeclaration))?"local":"remote").get("local")||et;let da=Ih.createModuleDeclaration(void 0,w.createIdentifier(Dr),w.createModuleBlock([]),32);qa(da,Ti),da.locals=ua(Pt),da.symbol=Pt[0].parent;const qo=Hr;Hr=[];const zs=qt;qt=!1;const ms={...Ae,enclosingDeclaration:da},Va=Ae;Ae=ms,Sa(ua(ns),Xr,!0),Ae=Va,qt=zs;const Nu=Hr;Hr=qo;const Cu=wt(Nu,Jl=>kl(Jl)&&!Jl.isExportEquals&&Ve(Jl.expression)?w.createExportDeclaration(void 0,!1,w.createNamedExports([w.createExportSpecifier(!1,Jl.expression,w.createIdentifier("default"))])):Jl),Sd=Zn(Cu,Jl=>Zr(Jl,32))?wt(Cu,fo):Cu;da=w.updateModuleDeclaration(da,da.modifiers,da.name,w.createModuleBlock(Sd)),Ks(da,pi)}}function zi(Pt){return!!(Pt.flags&2887656)||!(Pt.flags&4194304||Pt.escapedName==="prototype"||Pt.valueDeclaration&&sa(Pt.valueDeclaration)&&ui(Pt.valueDeclaration.parent))}function Fo(Pt){const Dr=Hi(Pt,pi=>{const Xr=Ae.enclosingDeclaration;Ae.enclosingDeclaration=pi;let ci=pi.expression;if(Gl(ci)){if(Ve(ci)&&Sr(ci)==="")return ns(void 0);let da;if({introducesError:da,node:ci}=wd(ci,Ae,Ns),da)return ns(void 0)}return ns(w.createExpressionWithTypeArguments(ci,wt(pi.typeArguments,da=>Wl(Ae,da,Ns,Ln)||d(Ei(da),Ae))));function ns(da){return Ae.enclosingDeclaration=Xr,da}});if(Dr.length===Pt.length)return Dr}function _a(Pt,Dr,pi){var Xr,ci;const ns=(Xr=Pt.declarations)==null?void 0:Xr.find(ui),da=Ae.enclosingDeclaration;Ae.enclosingDeclaration=ns||da;const qo=kr(Pt),zs=wt(qo,oh=>gt(oh,Ae)),ms=Kp(Vf(Pt)),Va=Mp(ms),Nu=ns&&AR(ns),Cu=Nu&&Fo(Nu)||Hi(f_(ms),hM),Sd=dr(Pt),Jl=!!((ci=Sd.symbol)!=null&&ci.valueDeclaration)&&ui(Sd.symbol.valueDeclaration),Pu=Jl?Pp(Sd):j,$d=[...Me(Va)?[w.createHeritageClause(96,wt(Va,oh=>pA(oh,Pu,Dr)))]:[],...Me(Cu)?[w.createHeritageClause(119,Cu)]:[]],ou=xvt(ms,Va,gs(ms)),wp=nr(ou,oh=>{const gM=oh.valueDeclaration;return!!gM&&!(ld(gM)&&Ji(gM.name))}),ih=bt(ou,oh=>{const gM=oh.valueDeclaration;return!!gM&&ld(gM)&&Ji(gM.name)})?[w.createPropertyDeclaration(void 0,w.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:et,Yb=Pi(wp,oh=>di(oh,!1,Va[0])),$b=Pi(nr(gs(Sd),oh=>!(oh.flags&4194304)&&oh.escapedName!=="prototype"&&!zi(oh)),oh=>di(oh,!0,Pu)),jbt=!Jl&&!!Pt.valueDeclaration&&lr(Pt.valueDeclaration)&&!bt(Yo(Sd,1))?[w.createConstructorDeclaration(w.createModifiersFromModifierFlags(2),[],void 0)]:qh(1,Sd,Pu,176),Ubt=Av(ms,Va[0]);Ae.enclosingDeclaration=da,Ks(dt(w.createClassDeclaration(void 0,Dr,zs,$d,[...Ubt,...$b,...jbt,...Yb,...ih]),Pt.declarations&&nr(Pt.declarations,oh=>Ic(oh)||Zc(oh))[0]),pi)}function ha(Pt){return Ut(Pt,Dr=>{if(np(Dr)||Ku(Dr))return Sr(Dr.propertyName||Dr.name);if(mr(Dr)||kl(Dr)){const pi=kl(Dr)?Dr.expression:Dr.right;if(Fr(pi))return Sr(pi.name)}if(yb(Dr)){const pi=Mo(Dr);if(pi&&Ve(pi))return Sr(pi)}})}function vi(Pt,Dr,pi){var Xr,ci,ns,da,qo,zs;const ms=Fm(Pt);if(!ms)return N.fail();const Va=rs(Hp(ms,!0));if(!Va)return;let Nu=EC(Va)&&ha(Pt.declarations)||Vi(Va.escapedName);Nu==="export="&&$&&(Nu="default");const Cu=qm(Va,Nu);switch(Ns(Va),ms.kind){case 208:if(((ci=(Xr=ms.parent)==null?void 0:Xr.parent)==null?void 0:ci.kind)===260){const Pu=qn(Va.parent||Va,Ae),{propertyName:$d}=ms;Ks(w.createImportDeclaration(void 0,w.createImportClause(!1,void 0,w.createNamedImports([w.createImportSpecifier(!1,$d&&Ve($d)?w.createIdentifier(Sr($d)):void 0,w.createIdentifier(Dr))])),w.createStringLiteral(Pu),void 0),0);break}N.failBadSyntaxKind(((ns=ms.parent)==null?void 0:ns.parent)||ms,"Unhandled binding element grandparent kind in declaration serialization");break;case 304:((qo=(da=ms.parent)==null?void 0:da.parent)==null?void 0:qo.kind)===226&&wo(Vi(Pt.escapedName),Cu);break;case 260:if(Fr(ms.initializer)){const Pu=ms.initializer,$d=w.createUniqueName(Dr),ou=qn(Va.parent||Va,Ae);Ks(w.createImportEqualsDeclaration(void 0,!1,$d,w.createExternalModuleReference(w.createStringLiteral(ou))),0),Ks(w.createImportEqualsDeclaration(void 0,!1,w.createIdentifier(Dr),w.createQualifiedName($d,Pu.name)),pi);break}case 271:if(Va.escapedName==="export="&&bt(Va.declarations,Pu=>$i(Pu)&&Qf(Pu))){Da(Pt);break}const Sd=!(Va.flags&512)&&!wi(ms);Ks(w.createImportEqualsDeclaration(void 0,!1,w.createIdentifier(Dr),Sd?_o(Va,Ae,-1,!1):w.createExternalModuleReference(w.createStringLiteral(qn(Va,Ae)))),Sd?pi:0);break;case 270:Ks(w.createNamespaceExportDeclaration(Sr(ms.name)),0);break;case 273:{const Pu=qn(Va.parent||Va,Ae),$d=Ln?w.createStringLiteral(Pu):ms.parent.moduleSpecifier;Ks(w.createImportDeclaration(void 0,w.createImportClause(!1,w.createIdentifier(Dr),void 0),$d,ms.parent.attributes),0);break}case 274:{const Pu=qn(Va.parent||Va,Ae),$d=Ln?w.createStringLiteral(Pu):ms.parent.parent.moduleSpecifier;Ks(w.createImportDeclaration(void 0,w.createImportClause(!1,void 0,w.createNamespaceImport(w.createIdentifier(Dr))),$d,ms.parent.attributes),0);break}case 280:Ks(w.createExportDeclaration(void 0,!1,w.createNamespaceExport(w.createIdentifier(Dr)),w.createStringLiteral(qn(Va,Ae))),0);break;case 276:{const Pu=qn(Va.parent||Va,Ae),$d=Ln?w.createStringLiteral(Pu):ms.parent.parent.parent.moduleSpecifier;Ks(w.createImportDeclaration(void 0,w.createImportClause(!1,void 0,w.createNamedImports([w.createImportSpecifier(!1,Dr!==Nu?w.createIdentifier(Nu):void 0,w.createIdentifier(Dr))])),$d,ms.parent.parent.parent.attributes),0);break}case 281:const Jl=ms.parent.parent.moduleSpecifier;Jl&&((zs=ms.propertyName)==null?void 0:zs.escapedText)==="default"&&(Nu="default"),wo(Vi(Pt.escapedName),Jl?Nu:Cu,Jl&&ls(Jl)?w.createStringLiteral(Jl.text):void 0);break;case 277:Da(Pt);break;case 226:case 211:case 212:Pt.escapedName==="default"||Pt.escapedName==="export="?Da(Pt):wo(Dr,Cu);break;default:return N.failBadSyntaxKind(ms,"Unhandled alias declaration kind in symbol serializer!")}}function wo(Pt,Dr,pi){Ks(w.createExportDeclaration(void 0,!1,w.createNamedExports([w.createExportSpecifier(!1,Pt!==Dr?Dr:void 0,Pt)]),pi),0)}function Da(Pt){var Dr;if(Pt.flags&4194304)return!1;const pi=Vi(Pt.escapedName),Xr=pi==="export=",ns=Xr||pi==="default",da=Pt.declarations&&Fm(Pt),qo=da&&Hp(da,!0);if(qo&&Me(qo.declarations)&&bt(qo.declarations,zs=>jn(zs)===jn(Ti))){const zs=da&&(kl(da)||mr(da)?Zj(da):Yie(da)),ms=zs&&Gl(zs)?Bvt(zs):void 0,Va=ms&&Hs(ms,-1,!0,!0,Ti);(Va||qo)&&Ns(Va||qo);const Nu=Ae.tracker.disableTrackSymbol;if(Ae.tracker.disableTrackSymbol=!0,ns)Hr.push(w.createExportAssignment(void 0,Xr,Cc(qo,Ae,-1)));else if(ms===zs&&ms)wo(pi,Sr(ms));else if(zs&&Zc(zs))wo(pi,qm(qo,Sl(qo)));else{const Cu=S_(pi,Pt);Ks(w.createImportEqualsDeclaration(void 0,!1,w.createIdentifier(Cu),_o(qo,Ae,-1,!1)),0),wo(pi,Cu)}return Ae.tracker.disableTrackSymbol=Nu,!0}else{const zs=S_(pi,Pt),ms=Xp(dr(rs(Pt)));if(Cs(ms,Pt))Tn(ms,Pt,zs,ns?0:32);else{const Va=((Dr=Ae.enclosingDeclaration)==null?void 0:Dr.kind)===267&&(!(Pt.flags&98304)||Pt.flags&65536)?1:2,Nu=w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(zs,void 0,Ts(Ae,ms,Pt,Ti,Ns,Ln))],Va));Ks(Nu,qo&&qo.flags&4&&qo.escapedName==="export="?128:pi===zs?32:0)}return ns?(Hr.push(w.createExportAssignment(void 0,Xr,w.createIdentifier(zs))),!0):pi!==zs?(wo(pi,zs),!0):!1}}function Cs(Pt,Dr){const pi=jn(Ae.enclosingDeclaration);return Wr(Pt)&48&&!Me(yd(Pt))&&!j1(Pt)&&!!(Me(nr(gs(Pt),zi))||Me(Yo(Pt,0)))&&!Me(Yo(Pt,1))&&!br(Dr,Ti)&&!(Pt.symbol&&bt(Pt.symbol.declarations,Xr=>jn(Xr)!==pi))&&!bt(gs(Pt),Xr=>x8(Xr.escapedName))&&!bt(gs(Pt),Xr=>bt(Xr.declarations,ci=>jn(ci)!==pi))&&Zn(gs(Pt),Xr=>tf(Sl(Xr),se)?Xr.flags&98304?kb(Xr)===U1(Xr):!0:!1)}function fs(Pt,Dr,pi){return function(ci,ns,da){var qo,zs,ms,Va,Nu;const Cu=Df(ci),Sd=!!(Cu&2);if(ns&&ci.flags&2887656)return[];if(ci.flags&4194304||ci.escapedName==="constructor"||da&&ya(da,ci.escapedName)&&b_(ya(da,ci.escapedName))===b_(ci)&&(ci.flags&16777216)===(ya(da,ci.escapedName).flags&16777216)&&vv(dr(ci),Xe(da,ci.escapedName)))return[];const Jl=Cu&-1025|(ns?256:0),Pu=wn(ci,Ae),$d=(qo=ci.declarations)==null?void 0:qo.find(Ym(Jo,Oy,wi,yp,mr,Fr));if(ci.flags&98304&&pi){const ou=[];if(ci.flags&65536){const wp=ci.declarations&&Ue(ci.declarations,ih=>{if(ih.kind===178)return ih;if(la(ih)&&DS(ih))return Ue(ih.arguments[2].properties,Yb=>{const $b=Mo(Yb);if($b&&Ve($b)&&Sr($b)==="set")return Yb})});N.assert(!!wp);const Dx=Bs(wp)?fm(wp).parameters[0]:void 0;ou.push(dt(w.createSetAccessorDeclaration(w.createModifiersFromModifierFlags(Jl),Pu,[w.createParameterDeclaration(void 0,void 0,Dx?cn(Dx,Dt(Dx),Ae):"value",void 0,Sd?void 0:Ts(Ae,dr(ci),ci,Ti,Ns,Ln))],void 0),((zs=ci.declarations)==null?void 0:zs.find(Fv))||$d))}if(ci.flags&32768){const wp=Cu&2;ou.push(dt(w.createGetAccessorDeclaration(w.createModifiersFromModifierFlags(Jl),Pu,[],wp?void 0:Ts(Ae,dr(ci),ci,Ti,Ns,Ln),void 0),((ms=ci.declarations)==null?void 0:ms.find(Fy))||$d))}return ou}else if(ci.flags&98311)return dt(Pt(w.createModifiersFromModifierFlags((b_(ci)?8:0)|Jl),Pu,ci.flags&16777216?w.createToken(58):void 0,Sd?void 0:Ts(Ae,U1(ci),ci,Ti,Ns,Ln),void 0),((Va=ci.declarations)==null?void 0:Va.find(Ym(Jo,wi)))||$d);if(ci.flags&8208){const ou=dr(ci),wp=Yo(ou,0);if(Jl&2)return dt(Pt(w.createModifiersFromModifierFlags((b_(ci)?8:0)|Jl),Pu,ci.flags&16777216?w.createToken(58):void 0,void 0,void 0),((Nu=ci.declarations)==null?void 0:Nu.find(Bs))||wp[0]&&wp[0].declaration||ci.declarations&&ci.declarations[0]);const Dx=[];for(const ih of wp){const Yb=be(ih,Dr,Ae,{name:Pu,questionToken:ci.flags&16777216?w.createToken(58):void 0,modifiers:Jl?w.createModifiersFromModifierFlags(Jl):void 0}),$b=ih.declaration&&XL(ih.declaration.parent)?ih.declaration.parent:ih.declaration;Dx.push(dt(Yb,$b))}return Dx}return N.fail(`Unhandled class member kind! ${ci.__debugFlags||ci.flags}`)}}function Pc(Pt,Dr){return Si(Pt,!1,Dr)}function qh(Pt,Dr,pi,Xr){const ci=Yo(Dr,Pt);if(Pt===1){if(!pi&&Zn(ci,qo=>Me(qo.parameters)===0))return[];if(pi){const qo=Yo(pi,1);if(!Me(qo)&&Zn(ci,zs=>Me(zs.parameters)===0))return[];if(qo.length===ci.length){let zs=!1;for(let ms=0;ms<qo.length;ms++)if(!z9(ci[ms],qo[ms],!1,!1,!0,z8)){zs=!0;break}if(!zs)return[]}}let da=0;for(const qo of ci)qo.declaration&&(da|=jA(qo.declaration,6));if(da)return[dt(w.createConstructorDeclaration(w.createModifiersFromModifierFlags(da),[],void 0),ci[0].declaration)]}const ns=[];for(const da of ci){const qo=be(da,Xr,Ae);ns.push(dt(qo,da.declaration))}return ns}function Av(Pt,Dr){const pi=[];for(const Xr of yd(Pt)){if(Dr){const ci=xg(Dr,Xr.keyType);if(ci&&vv(Xr.type,ci.type))continue}pi.push(re(Xr,Ae,void 0))}return pi}function pA(Pt,Dr,pi){const Xr=fA(Pt,111551);if(Xr)return Xr;const ci=S_(`${pi}_base`),ns=w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(ci,void 0,d(Dr,Ae))],2));return Ks(ns,0),w.createExpressionWithTypeArguments(w.createIdentifier(ci),void 0)}function fA(Pt,Dr){let pi,Xr;if(Pt.target&&on(Pt.target.symbol,Ti,Dr)?(pi=wt(Js(Pt),ci=>d(ci,Ae)),Xr=Cc(Pt.target.symbol,Ae,788968)):Pt.symbol&&on(Pt.symbol,Ti,Dr)&&(Xr=Cc(Pt.symbol,Ae,788968)),Xr)return w.createExpressionWithTypeArguments(Xr,pi)}function hM(Pt){const Dr=fA(Pt,788968);if(Dr)return Dr;if(Pt.symbol)return w.createExpressionWithTypeArguments(Cc(Pt.symbol,Ae,788968),void 0)}function S_(Pt,Dr){var pi,Xr;const ci=Dr?Ta(Dr):void 0;if(ci&&Ae.remappedSymbolNames.has(ci))return Ae.remappedSymbolNames.get(ci);Dr&&(Pt=Rx(Dr,Pt));let ns=0;const da=Pt;for(;(pi=Ae.usedSymbolNames)!=null&&pi.has(Pt);)ns++,Pt=`${da}_${ns}`;return(Xr=Ae.usedSymbolNames)==null||Xr.add(Pt),ci&&Ae.remappedSymbolNames.set(ci,Pt),Pt}function Rx(Pt,Dr){if(Dr==="default"||Dr==="__class"||Dr==="__function"){const pi=Ae.flags;Ae.flags|=16777216;const Xr=iE(Pt,Ae);Ae.flags=pi,Dr=Xr.length>0&&VL(Xr.charCodeAt(0))?tm(Xr):Xr}return Dr==="default"?Dr="_default":Dr==="export="&&(Dr="_exports"),Dr=tf(Dr,se)&&!GA(Dr)?Dr:"_"+Dr.replace(/[^a-zA-Z0-9]/g,"_"),Dr}function qm(Pt,Dr){const pi=Ta(Pt);return Ae.remappedSymbolNames.has(pi)?Ae.remappedSymbolNames.get(pi):(Dr=Rx(Pt,Dr),Ae.remappedSymbolNames.set(pi,Dr),Dr)}}}function Wh(n,a,c=16384,d){return d?_(d).getText():yC(_);function _(y){const x=w.createTypePredicateNode(n.kind===2||n.kind===3?w.createToken(131):void 0,n.kind===1||n.kind===3?w.createIdentifier(n.parameterName):w.createThisTypeNode(),n.type&&At.typeToTypeNode(n.type,a,BT(c)|70221824|512)),k=g1(),z=a&&jn(a);return k.writeNode(4,x,z,y),y}}function gN(n){const a=[];let c=0;for(let d=0;d<n.length;d++){const _=n[d];if(c|=_.flags,!(_.flags&98304)){if(_.flags&1568){const y=_.flags&512?Ni:VZ(_);if(y.flags&1048576){const x=y.types.length;if(d+x<=n.length&&Ed(n[d+x-1])===Ed(y.types[x-1])){a.push(y),d+=x-1;continue}}}a.push(_)}}return c&65536&&a.push(me),c&32768&&a.push(Oe),a||n}function GT(n){return n===2?"private":n===4?"protected":"public"}function u9(n){if(n.symbol&&n.symbol.flags&2048&&n.symbol.declarations){const a=nk(n.symbol.declarations[0].parent);if(Nm(a))return Ir(a)}}function Nb(n){return n&&n.parent&&n.parent.kind===268&&WE(n.parent.parent)}function S8(n){return n.kind===312||ku(n)}function T8(n,a){const c=Xi(n).nameType;if(c){if(c.flags&384){const d=""+c.value;return!tf(d,os(V))&&!cg(d)?`"${og(d,34)}"`:cg(d)&&uo(d,"-")?`[${d}]`:d}if(c.flags&8192)return`[${iE(c.symbol,a)}]`}}function iE(n,a){var c;if((c=a==null?void 0:a.remappedSymbolReferences)!=null&&c.has(Ta(n))&&(n=a.remappedSymbolReferences.get(Ta(n))),a&&n.escapedName==="default"&&!(a.flags&16384)&&(!(a.flags&16777216)||!n.declarations||a.enclosingDeclaration&&Gn(n.declarations[0],S8)!==Gn(a.enclosingDeclaration,S8)))return"default";if(n.declarations&&n.declarations.length){let _=Ut(n.declarations,x=>Mo(x)?x:void 0);const y=_&&Mo(_);if(_&&y){if(la(_)&&DS(_))return Sl(n);if(Za(y)&&!(xl(n)&4096)){const x=Xi(n).nameType;if(x&&x.flags&384){const k=T8(n,a);if(k!==void 0)return k}}return Rs(y)}if(_||(_=n.declarations[0]),_.parent&&_.parent.kind===260)return Rs(_.parent.name);switch(_.kind){case 231:case 218:case 219:return a&&!a.encounteredError&&!(a.flags&131072)&&(a.encounteredError=!0),_.kind===231?"(Anonymous class)":"(Anonymous function)"}}const d=T8(n,a);return d!==void 0?d:Sl(n)}function d_(n){if(n){const c=ei(n);return c.isVisible===void 0&&(c.isVisible=!!a()),c.isVisible}return!1;function a(){switch(n.kind){case 345:case 353:case 347:return!!(n.parent&&n.parent.parent&&n.parent.parent.parent&&$i(n.parent.parent.parent));case 208:return d_(n.parent.parent);case 260:if(ta(n.name)&&!n.name.elements.length)return!1;case 267:case 263:case 264:case 265:case 262:case 266:case 271:if(WE(n))return!0;const c=Q(n);return!(kte(n)&32)&&!(n.kind!==271&&c.kind!==312&&c.flags&33554432)?Mh(c):d_(c);case 172:case 171:case 177:case 178:case 174:case 173:if(gp(n,6))return!1;case 176:case 180:case 179:case 181:case 169:case 268:case 184:case 185:case 187:case 183:case 188:case 189:case 192:case 193:case 196:case 202:return d_(n.parent);case 273:case 274:case 276:return!1;case 168:case 312:case 270:return!0;case 277:return!1;default:return!1}}}function O2(n,a){let c;n.parent&&n.parent.kind===277?c=bl(n,n.escapedText,2998271,void 0,n,!1):n.parent.kind===281&&(c=Q0(n.parent,2998271));let d,_;return c&&(_=new Set,_.add(Ta(c)),y(c.declarations)),d;function y(x){Ue(x,k=>{const z=xT(k)||k;if(a?ei(k).isVisible=!0:(d=d||[],Tf(d,z)),hR(k)){const H=k.moduleReference,re=Vp(H),be=bl(k,re.escapedText,901119,void 0,void 0,!1);be&&_&&Rv(_,Ta(be))&&y(be.declarations)}})}}function Fh(n,a){const c=mx(n,a);if(c>=0){const{length:d}=mu;for(let _=c;_<d;_++)tv[_]=!1;return!1}return mu.push(n),tv.push(!0),j0.push(a),!0}function mx(n,a){for(let c=mu.length-1;c>=JI;c--){if(A8(mu[c],j0[c]))return-1;if(mu[c]===n&&j0[c]===a)return c}return-1}function A8(n,a){switch(a){case 0:return!!Xi(n).type;case 5:return!!ei(n).resolvedEnumType;case 2:return!!Xi(n).declaredType;case 1:return!!n.resolvedBaseConstructorType;case 3:return!!n.resolvedReturnType;case 4:return!!n.immediateBaseConstraint;case 6:return!!n.resolvedTypeArguments;case 7:return!!n.baseTypesResolved;case 8:return!!Xi(n).writeType;case 9:return ei(n).parameterInitializerContainsUndefined!==void 0}return N.assertNever(a)}function Y_(){return mu.pop(),j0.pop(),tv.pop()}function Q(n){return Gn(C_(n),a=>{switch(a.kind){case 260:case 261:case 276:case 275:case 274:case 273:return!1;default:return!0}}).parent}function xe(n){const a=el(Pd(n));return a.typeParameters?hy(a,wt(a.typeParameters,c=>j)):a}function Xe(n,a){const c=ya(n,a);return c?dr(c):void 0}function xt(n,a){var c;let d;return Xe(n,a)||(d=(c=gx(n,a))==null?void 0:c.type)&&cp(d,!0,!0)}function Nt(n){return n&&(n.flags&1)!==0}function Kt(n){return n===_t||!!(n.flags&1&&n.aliasSymbol)}function zr(n,a){if(a!==0)return VT(n,!1,a);const c=Ir(n);return c&&Xi(c).type||VT(n,!1,a)}function Wi(n,a,c){if(n=dc(n,z=>!(z.flags&98304)),n.flags&131072)return La;if(n.flags&1048576)return pl(n,z=>Wi(z,a,c));let d=ti(wt(a,vy));const _=[],y=[];for(const z of gs(n)){const H=NN(z,8576);!Ea(H,d)&&!(Df(z)&6)&&aee(z)?_.push(z):y.push(H)}if($T(n)||QT(d)){if(y.length&&(d=ti([d,...y])),d.flags&131072)return n;const z=Kct();return z?RN(z,[n,d]):_t}const x=ua();for(const z of _)x.set(z.escapedName,hve(z,!1));const k=Ls(c,x,et,et,yd(n));return k.objectFlags|=4194304,k}function Ri(n){return!!(n.flags&465829888)&&Cl(Gu(n)||_n,32768)}function mi(n){const a=Um(n,Ri)?pl(n,c=>c.flags&465829888?_v(c):c):n;return hm(a,524288)}function Yi(n,a){const c=ds(n);return c?Kb(c,a):a}function ds(n){const a=Ds(n);if(a&&ZL(a)&&a.flowNode){const c=es(n);if(c){const d=dt(Ih.createStringLiteral(c),n),_=ep(a)?a:Ih.createParenthesizedExpression(a),y=dt(Ih.createElementAccessExpression(_,d),n);return qa(d,y),qa(y,n),_!==a&&qa(_,y),y.flowNode=a.flowNode,y}}}function Ds(n){const a=n.parent.parent;switch(a.kind){case 208:case 303:return ds(a);case 209:return ds(n.parent);case 260:return a.initializer;case 226:return a.right}}function es(n){const a=n.parent;return n.kind===208&&a.kind===206?Gf(n.propertyName||n.name):n.kind===303||n.kind===304?Gf(n.name):""+a.elements.indexOf(n)}function Gf(n){const a=vy(n);return a.flags&384?""+a.value:void 0}function $_(n){const a=n.dotDotDotToken?32:0,c=zr(n.parent.parent,a);return c&&Ag(n,c,!1)}function Ag(n,a,c){if(Nt(a))return a;const d=n.parent;Y&&n.flags&33554432&&HE(n)?a=Ev(a):Y&&d.parent.initializer&&!_m(H4e(d.parent.initializer),65536)&&(a=hm(a,524288));let _;if(d.kind===206)if(n.dotDotDotToken){if(a=h_(a),a.flags&2||!eB(a))return Je(n,f.Rest_types_may_only_be_created_from_object_types),_t;const y=[];for(const x of d.elements)x.dotDotDotToken||y.push(x.propertyName||x.name);_=Wi(a,y,n.symbol)}else{const y=n.propertyName||n.name,x=vy(y),k=Lp(a,x,32,y);_=Yi(n,k)}else{const y=Sy(65|(n.dotDotDotToken?0:128),a,Oe,d),x=d.elements.indexOf(n);if(n.dotDotDotToken){const k=pl(a,z=>z.flags&58982400?_v(z):z);_=up(k,Ba)?pl(k,z=>J2(z,x)):Vu(y)}else if(by(a)){const k=g_(x),z=32|(c||iM(n)?16:0),H=Bb(a,k,z,n.name)||_t;_=Yi(n,H)}else _=y}return n.initializer?yu($x(n))?Y&&!_m(aM(n,0),16777216)?mi(_):_:dte(n,ti([mi(_),aM(n,0)],2)):_}function uv(n){const a=p0(n);if(a)return Ei(a)}function dv(n){const a=hs(n,!0);return a.kind===106||a.kind===80&&jm(a)===je}function Cb(n){const a=hs(n,!0);return a.kind===209&&a.elements.length===0}function cp(n,a=!1,c=!0){return Y&&c?qb(n,a):n}function VT(n,a,c){if(wi(n)&&n.parent.parent.kind===249){const x=Q_(Cye(mo(n.parent.parent.expression,c)));return x.flags&4456448?D6e(x):ke}if(wi(n)&&n.parent.parent.kind===250){const x=n.parent.parent;return xB(x)||j}if(ta(n.parent))return $_(n);const d=Jo(n)&&!P_(n)||yp(n)||ese(n),_=a&&aP(n),y=ro(n);if(Tj(n))return y?Nt(y)||y===_n?y:_t:ve?_n:j;if(y)return cp(y,d,_);if((pe||lr(n))&&wi(n)&&!ta(n.name)&&!(kte(n)&32)&&!(n.flags&33554432)){if(!(aS(n)&6)&&(!n.initializer||dv(n.initializer)))return ot;if(n.initializer&&Cb(n.initializer))return Jc}if(Ao(n)){const x=n.parent;if(x.kind===178&&TN(x)){const H=fl(Ir(n.parent),177);if(H){const re=fm(H),be=zbe(x);return be&&n===be?(N.assert(!be.type),dr(re.thisParameter)):ps(re)}}const k=bct(x,n);if(k)return k;const z=n.symbol.escapedName==="this"?m3e(x):_3e(n);if(z)return cp(z,!1,_)}if(ES(n)&&n.initializer){if(lr(n)&&!Ao(n)){const k=Ua(n,Ir(n),UL(n));if(k)return k}const x=dte(n,aM(n,c));return cp(x,d,_)}if(Jo(n)&&(pe||lr(n)))if(mc(n)){const x=nr(n.parent.members,Rl),k=x.length?pv(n.symbol,x):pd(n)&128?yee(n.symbol):void 0;return k&&cp(k,!0,_)}else{const x=lv(n.parent),k=x?Pb(n.symbol,x):pd(n)&128?yee(n.symbol):void 0;return k&&cp(k,!0,_)}if(F_(n))return Bn;if(ta(n.name))return P(n.name,!1,!0)}function vN(n){if(n.valueDeclaration&&mr(n.valueDeclaration)){const a=Xi(n);return a.isConstructorDeclaredProperty===void 0&&(a.isConstructorDeclaredProperty=!1,a.isConstructorDeclaredProperty=!!F2(n)&&Zn(n.declarations,c=>mr(c)&&Uee(c)&&(c.left.kind!==212||nf(c.left.argumentExpression))&&!uc(void 0,c,n,c))),a.isConstructorDeclaredProperty}return!1}function W2(n){const a=n.valueDeclaration;return a&&Jo(a)&&!yu(a)&&!a.initializer&&(pe||lr(a))}function F2(n){if(n.declarations)for(const a of n.declarations){const c=Fd(a,!1,!1);if(c&&(c.kind===176||nh(c)))return c}}function oE(n){const a=jn(n.declarations[0]),c=Vi(n.escapedName),d=n.declarations.every(y=>lr(y)&&ws(y)&&rg(y.expression)),_=d?w.createPropertyAccessExpression(w.createPropertyAccessExpression(w.createIdentifier("module"),w.createIdentifier("exports")),c):w.createPropertyAccessExpression(w.createIdentifier("exports"),c);return d&&qa(_.expression.expression,_.expression),qa(_.expression,_),qa(_,a),_.flowNode=a.endFlowNode,Kb(_,ot,Oe)}function pv(n,a){const c=uo(n.escapedName,"__#")?w.createPrivateIdentifier(n.escapedName.split("@")[1]):Vi(n.escapedName);for(const d of a){const _=w.createPropertyAccessExpression(w.createThis(),c);qa(_.expression,_),qa(_,d),_.flowNode=d.returnFlowNode;const y=yN(_,n);if(pe&&(y===ot||y===Jc)&&Je(n.valueDeclaration,f.Member_0_implicitly_has_an_1_type,bi(n),Un(y)),!up(y,iB))return c6(y)}}function Pb(n,a){const c=uo(n.escapedName,"__#")?w.createPrivateIdentifier(n.escapedName.split("@")[1]):Vi(n.escapedName),d=w.createPropertyAccessExpression(w.createThis(),c);qa(d.expression,d),qa(d,a),d.flowNode=a.returnFlowNode;const _=yN(d,n);return pe&&(_===ot||_===Jc)&&Je(n.valueDeclaration,f.Member_0_implicitly_has_an_1_type,bi(n),Un(_)),up(_,iB)?void 0:c6(_)}function yN(n,a){const c=(a==null?void 0:a.valueDeclaration)&&(!W2(a)||pd(a.valueDeclaration)&128)&&yee(a)||Oe;return Kb(n,ot,c)}function Jp(n,a){const c=OA(n.valueDeclaration);if(c){const k=lr(c)?d0(c):void 0;return k&&k.typeExpression?Ei(k.typeExpression):n.valueDeclaration&&Ua(n.valueDeclaration,n,c)||Q1(nc(c))}let d,_=!1,y=!1;if(vN(n)&&(d=Pb(n,F2(n))),!d){let k;if(n.declarations){let z;for(const H of n.declarations){const re=mr(H)||la(H)?H:ws(H)?mr(H.parent)?H.parent:H:void 0;if(!re)continue;const be=ws(re)?KL(re):Bl(re);(be===4||mr(re)&&Uee(re,be))&&(z2(re)?_=!0:y=!0),la(re)||(z=uc(z,re,n,H)),z||(k||(k=[])).push(mr(re)||la(re)?aE(n,a,re,be):jr)}d=z}if(!d){if(!Me(k))return _t;let z=_&&n.declarations?Mb(k,n.declarations):void 0;if(y){const re=yee(n);re&&((z||(z=[])).push(re),_=!0)}const H=bt(z,re=>!!(re.flags&-98305))?z:k;d=ti(H)}}const x=Xp(cp(d,!1,y&&!_));return n.valueDeclaration&&lr(n.valueDeclaration)&&dc(x,k=>!!(k.flags&-98305))===jr?(gE(n.valueDeclaration,j),j):x}function Ua(n,a,c){var d,_;if(!lr(n)||!c||!Oa(c)||c.properties.length)return;const y=ua();for(;mr(n)||Fr(n);){const z=gf(n);(d=z==null?void 0:z.exports)!=null&&d.size&&c_(y,z.exports),n=mr(n)?n.parent:n.parent.parent}const x=gf(n);(_=x==null?void 0:x.exports)!=null&&_.size&&c_(y,x.exports);const k=Ls(a,y,et,et,et);return k.objectFlags|=4096,k}function uc(n,a,c,d){var _;const y=yu(a.parent);if(y){const x=Xp(Ei(y));if(n)!Kt(n)&&!Kt(x)&&!vv(n,x)&&yFe(void 0,n,d,x);else return x}if((_=c.parent)!=null&&_.valueDeclaration){const x=F1(c.parent);if(x.valueDeclaration){const k=yu(x.valueDeclaration);if(k){const z=ya(Ei(k),c.escapedName);if(z)return kb(z)}}}return n}function aE(n,a,c,d){if(la(c)){if(a)return dr(a);const x=nc(c.arguments[2]),k=Xe(x,"value");if(k)return k;const z=Xe(x,"get");if(z){const re=cA(z);if(re)return ps(re)}const H=Xe(x,"set");if(H){const re=cA(H);if(re)return $ye(re)}return j}if(_x(c.left,c.right))return j;const _=d===1&&(Fr(c.left)||Qs(c.left))&&(rg(c.left.expression)||Ve(c.left.expression)&&RS(c.left.expression)),y=a?dr(a):_?Ed(nc(c.right)):Q1(nc(c.right));if(y.flags&524288&&d===2&&n.escapedName==="export="){const x=__(y),k=ua();F4(x.members,k);const z=k.size;a&&!a.exports&&(a.exports=ua()),(a||n).exports.forEach((re,be)=>{var ge;const Ke=k.get(be);if(Ke&&Ke!==re&&!(re.flags&2097152))if(re.flags&111551&&Ke.flags&111551){if(re.valueDeclaration&&Ke.valueDeclaration&&jn(re.valueDeclaration)!==jn(Ke.valueDeclaration)){const Dt=Vi(re.escapedName),an=((ge=ii(Ke.valueDeclaration,ld))==null?void 0:ge.name)||Ke.valueDeclaration;wa(Je(re.valueDeclaration,f.Duplicate_identifier_0,Dt),wr(an,f._0_was_also_declared_here,Dt)),wa(Je(an,f.Duplicate_identifier_0,Dt),wr(re.valueDeclaration,f._0_was_also_declared_here,Dt))}const gt=Xa(re.flags|Ke.flags,be);gt.links.type=ti([dr(re),dr(Ke)]),gt.valueDeclaration=Ke.valueDeclaration,gt.declarations=So(Ke.declarations,re.declarations),k.set(be,gt)}else k.set(be,um(re,Ke));else k.set(be,re)});const H=Ls(z!==k.size?void 0:x.symbol,k,x.callSignatures,x.constructSignatures,x.indexInfos);if(z===k.size&&(y.aliasSymbol&&(H.aliasSymbol=y.aliasSymbol,H.aliasTypeArguments=y.aliasTypeArguments),Wr(y)&4)){H.aliasSymbol=y.symbol;const re=Js(y);H.aliasTypeArguments=Me(re)?re:void 0}return H.objectFlags|=Wr(y)&4096,H.symbol&&H.symbol.flags&32&&y===Vf(H.symbol)&&(H.objectFlags|=16777216),H}return Eee(y)?(gE(c,ec),ec):y}function _x(n,a){return Fr(n)&&n.expression.kind===110&&CP(a,c=>Iu(n,c))}function z2(n){const a=Fd(n,!1,!1);return a.kind===176||a.kind===262||a.kind===218&&!XL(a.parent)}function Mb(n,a){return N.assert(n.length===a.length),n.filter((c,d)=>{const _=a[d],y=mr(_)?_:mr(_.parent)?_.parent:void 0;return y&&z2(y)})}function B2(n,a,c){if(n.initializer){const d=ta(n.name)?P(n.name,!0,!1):_n;return cp(dte(n,aM(n,c?0:1,d)))}return ta(n.name)?P(n.name,a,c):(c&&!yr(n)&&gE(n,j),a?vn:j)}function or(n,a,c){const d=ua();let _,y=131200;Ue(n.elements,k=>{const z=k.propertyName||k.name;if(k.dotDotDotToken){_=Vh(ke,j,!1);return}const H=vy(z);if(!rm(H)){y|=512;return}const re=im(H),be=4|(k.initializer?16777216:0),ge=Xa(be,re);ge.links.type=B2(k,a,c),ge.links.bindingElement=k,d.set(ge.escapedName,ge)});const x=Ls(void 0,d,et,et,_?[_]:et);return x.objectFlags|=y,a&&(x.pattern=n,x.objectFlags|=131072),x}function E(n,a,c){const d=n.elements,_=tl(d),y=_&&_.kind===208&&_.dotDotDotToken?_:void 0;if(d.length===0||d.length===1&&y)return se>=2?p6e(j):ec;const x=wt(d,re=>jc(re)?j:B2(re,a,c)),k=Bi(d,re=>!(re===y||jc(re)||iM(re)),d.length-1)+1,z=wt(d,(re,be)=>re===y?4:be>=k?2:1);let H=jh(x,z);return a&&(H=J8e(H),H.pattern=n,H.objectFlags|=131072),H}function P(n,a=!1,c=!1){return n.kind===206?or(n,a,c):E(n,a,c)}function B(n,a){return Xt(VT(n,!0,0),n,a)}function ce(n){const a=ei(n);if(!a.resolvedType){const c=Xa(4096,"__importAttributes"),d=ua();Ue(n.elements,y=>{const x=Xa(4,cW(y));x.parent=c,x.links.type=Gvt(y),x.links.target=x,d.set(x.escapedName,x)});const _=Ls(c,d,et,et,et);_.objectFlags|=262272,a.resolvedType=_}return a.resolvedType}function Qe(n){const a=gf(n),c=Oct(!1);return c&&a&&a===c}function Xt(n,a,c){return n?(n.flags&4096&&Qe(a.parent)&&(n=gve(a)),c&&Nee(a,n),n.flags&8192&&(Qa(a)||!a.type)&&n.symbol!==Ir(a)&&(n=Ai),Xp(n)):(n=Ao(a)&&a.dotDotDotToken?ec:j,c&&(yr(a)||gE(a,n)),n)}function yr(n){const a=C_(n),c=a.kind===169?a.parent:a;return EB(c)}function ro(n){const a=yu(n);if(a)return Ei(a)}function qs(n){let a=n.valueDeclaration;return a?(Qa(a)&&(a=$x(a)),Ao(a)?pee(a.parent):!1):!1}function p_(n,a){const c=Xi(n);if(!c.type){const d=Lb(n,a);return!c.type&&!qs(n)&&!a&&(c.type=d),d}return c.type}function Lb(n,a){if(n.flags&4194304)return xe(n);if(n===vt)return j;if(n.flags&134217728&&n.valueDeclaration){const _=Ir(jn(n.valueDeclaration)),y=Xa(_.flags,"exports");y.declarations=_.declarations?_.declarations.slice():[],y.parent=n,y.links.target=_,_.valueDeclaration&&(y.valueDeclaration=_.valueDeclaration),_.members&&(y.members=new Map(_.members)),_.exports&&(y.exports=new Map(_.exports));const x=ua();return x.set("exports",y),Ls(n,x,et,et,et)}N.assertIsDefined(n.valueDeclaration);const c=n.valueDeclaration;if($i(c)&&Qf(c))return c.statements.length?Xp(Q1(mo(c.statements[0].expression))):La;if(Oy(c))return lE(n);if(!Fh(n,0))return n.flags&512&&!(n.flags&67108864)?G2(n):Qa(c)&&a===1?_t:bN(n);let d;if(c.kind===277)d=Xt(ro(c)||nc(c.expression),c);else if(mr(c)||lr(c)&&(la(c)||(Fr(c)||m3(c))&&mr(c.parent)))d=Jp(n);else if(Fr(c)||Qs(c)||Ve(c)||ls(c)||vp(c)||Ic(c)||Ac(c)||ql(c)&&!xm(c)||bh(c)||$i(c)){if(n.flags&9136)return G2(n);d=mr(c.parent)?Jp(n):ro(c)||j}else if(hc(c))d=ro(c)||HWe(c);else if(F_(c))d=ro(c)||R3e(c);else if(rp(c))d=ro(c)||lM(c.name,0);else if(xm(c))d=ro(c)||qWe(c,0);else if(Ao(c)||Jo(c)||yp(c)||wi(c)||Qa(c)||fC(c))d=B(c,!0);else if(x0(c))d=G2(n);else if(u1(c))d=zZ(n);else return N.fail("Unhandled declaration kind! "+N.formatSyntaxKind(c.kind)+" for "+N.formatSymbol(n));return Y_()?d:n.flags&512&&!(n.flags&67108864)?G2(n):Qa(c)&&a===1?d:bN(n)}function Vm(n){if(n)switch(n.kind){case 177:return nm(n);case 178:return aoe(n);case 172:return N.assert(P_(n)),yu(n)}}function sE(n){const a=Vm(n);return a&&Ei(a)}function WZ(n){const a=zbe(n);return a&&a.symbol}function _ge(n){return pE(fm(n))}function lE(n){const a=Xi(n);if(!a.type){if(!Fh(n,0))return _t;const c=fl(n,177),d=fl(n,178),_=ii(fl(n,172),Wd);let y=c&&lr(c)&&uv(c)||sE(c)||sE(d)||sE(_)||c&&c.body&&lte(c)||_&&_.initializer&&B(_,!0);y||(d&&!EB(d)?_u(pe,d,f.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,bi(n)):c&&!EB(c)?_u(pe,c,f.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,bi(n)):_&&!EB(_)&&_u(pe,_,f.Member_0_implicitly_has_an_1_type,bi(n),"any"),y=j),Y_()||(Vm(c)?Je(c,f._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,bi(n)):Vm(d)||Vm(_)?Je(d,f._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,bi(n)):c&&pe&&Je(c,f._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,bi(n)),y=j),a.type=y}return a.type}function d9(n){const a=Xi(n);if(!a.writeType){if(!Fh(n,8))return _t;const c=fl(n,178)??ii(fl(n,172),Wd);let d=sE(c);Y_()||(Vm(c)&&Je(c,f._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,bi(n)),d=j),a.writeType=d||lE(n)}return a.writeType}function FZ(n){const a=Pp(Vf(n));return a.flags&8650752?a:a.flags&2097152?An(a.types,c=>!!(c.flags&8650752)):void 0}function G2(n){let a=Xi(n);const c=a;if(!a.type){const d=n.valueDeclaration&&ate(n.valueDeclaration,!1);if(d){const _=Hye(n,d);_&&(n=_,a=_.links)}c.type=a.type=p9(n)}return a.type}function p9(n){const a=n.valueDeclaration;if(n.flags&1536&&EC(n))return j;if(a&&(a.kind===226||ws(a)&&a.parent.kind===226))return Jp(n);if(n.flags&512&&a&&$i(a)&&a.commonJsModuleIndicator){const d=Np(n);if(d!==n){if(!Fh(n,0))return _t;const _=rs(n.exports.get("export=")),y=Jp(_,_===d?void 0:d);return Y_()?y:bN(n)}}const c=zf(16,n);if(n.flags&32){const d=FZ(n);return d?ba([c,d]):c}else return Y&&n.flags&16777216?qb(c,!0):c}function zZ(n){const a=Xi(n);return a.type||(a.type=p8e(n))}function BZ(n){const a=Xi(n);if(!a.type){if(!Fh(n,0))return _t;const c=Fc(n),d=n.declarations&&Hp(Fm(n),!0),_=Ut(d==null?void 0:d.declarations,y=>kl(y)?ro(y):void 0);if(a.type=d!=null&&d.declarations&&Ite(d.declarations)&&n.declarations.length?oE(d):Ite(n.declarations)?ot:_||(Au(c)&111551?dr(c):_t),!Y_())return bN(d??n),a.type=_t}return a.type}function hge(n){const a=Xi(n);return a.type||(a.type=so(dr(a.target),a.mapper))}function gge(n){const a=Xi(n);return a.writeType||(a.writeType=so(U1(a.target),a.mapper))}function bN(n){const a=n.valueDeclaration;if(a){if(yu(a))return Je(n.valueDeclaration,f._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,bi(n)),_t;pe&&(a.kind!==169||a.initializer)&&Je(n.valueDeclaration,f._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,bi(n))}else if(n.flags&2097152){const c=Fm(n);c&&Je(c,f.Circular_definition_of_import_alias_0,bi(n))}return j}function GZ(n){const a=Xi(n);return a.type||(N.assertIsDefined(a.deferralParent),N.assertIsDefined(a.deferralConstituents),a.type=a.deferralParent.flags&1048576?ti(a.deferralConstituents):ba(a.deferralConstituents)),a.type}function f9(n){const a=Xi(n);return!a.writeType&&a.deferralWriteConstituents&&(N.assertIsDefined(a.deferralParent),N.assertIsDefined(a.deferralConstituents),a.writeType=a.deferralParent.flags&1048576?ti(a.deferralWriteConstituents):ba(a.deferralWriteConstituents)),a.writeType}function U1(n){const a=xl(n);return n.flags&4?a&2?a&65536?f9(n)||GZ(n):n.links.writeType||n.links.type:Jb(dr(n),!!(n.flags&16777216)):n.flags&98304?a&1?gge(n):d9(n):dr(n)}function dr(n,a){const c=xl(n);return c&65536?GZ(n):c&1?hge(n):c&262144?tct(n):c&8192?_pt(n):n.flags&7?p_(n,a):n.flags&9136?G2(n):n.flags&8?zZ(n):n.flags&98304?lE(n):n.flags&2097152?BZ(n):_t}function kb(n){return Jb(dr(n),!!(n.flags&16777216))}function wb(n,a){return n!==void 0&&a!==void 0&&(Wr(n)&4)!==0&&n.target===a}function my(n){return Wr(n)&4?n.target:n}function EN(n,a){return c(n);function c(d){if(Wr(d)&7){const _=my(d);return _===a||bt(Mp(_),c)}else if(d.flags&2097152)return bt(d.types,c);return!1}}function cE(n,a){for(const c of a)n=Mg(n,jT(Ir(c)));return n}function Cn(n,a){for(;;){if(n=n.parent,n&&mr(n)){const c=Bl(n);if(c===6||c===3){const d=Ir(n.left);d&&d.parent&&!Gn(d.parent.valueDeclaration,_=>n===_)&&(n=d.parent.valueDeclaration)}}if(!n)return;switch(n.kind){case 263:case 231:case 264:case 179:case 180:case 173:case 184:case 185:case 324:case 262:case 174:case 218:case 219:case 265:case 352:case 353:case 347:case 345:case 200:case 194:{const d=Cn(n,a);if(n.kind===200)return xn(d,jT(Ir(n.typeParameter)));if(n.kind===194)return So(d,z6e(n));const _=cE(d,ky(n)),y=a&&(n.kind===263||n.kind===231||n.kind===264||nh(n))&&Vf(Ir(n)).thisType;return y?xn(_,y):_}case 348:const c=tk(n);c&&(n=c.valueDeclaration);break;case 327:{const d=Cn(n,a);return n.tags?cE(d,Pi(n.tags,_=>sm(_)?_.typeParameters:void 0)):d}}}}function Vr(n){var a;const c=n.flags&32||n.flags&16?n.valueDeclaration:(a=n.declarations)==null?void 0:a.find(d=>{if(d.kind===264)return!0;if(d.kind!==260)return!1;const _=d.initializer;return!!_&&(_.kind===218||_.kind===219)});return N.assert(!!c,"Class was missing valueDeclaration -OR- non-class had no interface declarations"),Cn(c)}function kr(n){if(!n.declarations)return;let a;for(const c of n.declarations)(c.kind===264||c.kind===263||c.kind===231||nh(c)||QL(c))&&(a=cE(a,ky(c)));return a}function Fi(n){return So(Vr(n),kr(n))}function Mi(n){const a=Yo(n,1);if(a.length===1){const c=a[0];if(!c.typeParameters&&c.parameters.length===1&&Yu(c)){const d=pB(c.parameters[0]);return Nt(d)||G9(d)===j}}return!1}function is(n){if(Yo(n,1).length>0)return!0;if(n.flags&8650752){const a=Gu(n);return!!a&&Mi(a)}return!1}function Is(n){const a=Vg(n.symbol);return a&&D_(a)}function td(n,a,c){const d=Me(a),_=lr(c);return nr(Yo(n,1),y=>(_||d>=Gh(y.typeParameters))&&d<=Me(y.typeParameters))}function zh(n,a,c){const d=td(n,a,c),_=wt(a,Ei);return eo(d,y=>bt(y.typeParameters)?C8(y,_,lr(c)):y)}function Pp(n){if(!n.resolvedBaseConstructorType){const a=Vg(n.symbol),c=a&&D_(a),d=Is(n);if(!d)return n.resolvedBaseConstructorType=Oe;if(!Fh(n,1))return _t;const _=mo(d.expression);if(c&&d!==c&&(N.assert(!c.typeArguments),mo(c.expression)),_.flags&2621440&&__(_),!Y_())return Je(n.symbol.valueDeclaration,f._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,bi(n.symbol)),n.resolvedBaseConstructorType=_t;if(!(_.flags&1)&&_!==Ge&&!is(_)){const y=Je(d.expression,f.Type_0_is_not_a_constructor_function_type,Un(_));if(_.flags&262144){const x=U2(_);let k=_n;if(x){const z=Yo(x,1);z[0]&&(k=ps(z[0]))}_.symbol.declarations&&wa(y,wr(_.symbol.declarations[0],f.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,bi(_.symbol),Un(k)))}return n.resolvedBaseConstructorType=_t}n.resolvedBaseConstructorType=_}return n.resolvedBaseConstructorType}function f_(n){let a=et;if(n.symbol.declarations)for(const c of n.symbol.declarations){const d=AR(c);if(d)for(const _ of d){const y=Ei(_);Kt(y)||(a===et?a=[y]:a.push(y))}}return a}function fv(n,a){Je(n,f.Type_0_recursively_references_itself_as_a_base_type,Un(a,void 0,2))}function Mp(n){if(!n.baseTypesResolved){if(Fh(n,7)&&(n.objectFlags&8?n.resolvedBaseTypes=[SN(n)]:n.symbol.flags&96?(n.symbol.flags&32&&I8(n),n.symbol.flags&64&&Clt(n)):N.fail("type must be class or interface"),!Y_()&&n.symbol.declarations))for(const a of n.symbol.declarations)(a.kind===263||a.kind===264)&&fv(a,n);n.baseTypesResolved=!0}return n.resolvedBaseTypes}function SN(n){const a=eo(n.typeParameters,(c,d)=>n.elementFlags[d]&8?Lp(c,Tt):c);return Vu(ti(a||et),n.readonly)}function I8(n){n.resolvedBaseTypes=uW;const a=kd(Pp(n));if(!(a.flags&2621441))return n.resolvedBaseTypes=et;const c=Is(n);let d;const _=a.symbol?el(a.symbol):void 0;if(a.symbol&&a.symbol.flags&32&&Nlt(_))d=K8e(c,a.symbol);else if(a.flags&1)d=a;else{const x=zh(a,c.typeArguments,c);if(!x.length)return Je(c.expression,f.No_base_constructor_has_the_specified_number_of_type_arguments),n.resolvedBaseTypes=et;d=ps(x[0])}if(Kt(d))return n.resolvedBaseTypes=et;const y=h_(d);if(!m9(y)){const x=Pge(void 0,d),k=jo(x,f.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,Un(y));return ts.add(Fg(jn(c.expression),c.expression,k)),n.resolvedBaseTypes=et}return n===y||EN(y,n)?(Je(n.symbol.valueDeclaration,f.Type_0_recursively_references_itself_as_a_base_type,Un(n,void 0,2)),n.resolvedBaseTypes=et):(n.resolvedBaseTypes===uW&&(n.members=void 0),n.resolvedBaseTypes=[y])}function Nlt(n){const a=n.outerTypeParameters;if(a){const c=a.length-1,d=Js(n);return a[c].symbol!==d[c].symbol}return!0}function m9(n){if(n.flags&262144){const a=Gu(n);if(a)return m9(a)}return!!(n.flags&67633153&&!Kd(n)||n.flags&2097152&&Zn(n.types,m9))}function Clt(n){if(n.resolvedBaseTypes=n.resolvedBaseTypes||et,n.symbol.declarations){for(const a of n.symbol.declarations)if(a.kind===264&&PC(a))for(const c of PC(a)){const d=h_(Ei(c));Kt(d)||(m9(d)?n!==d&&!EN(d,n)?n.resolvedBaseTypes===et?n.resolvedBaseTypes=[d]:n.resolvedBaseTypes.push(d):fv(a,n):Je(c,f.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members))}}}function Plt(n){if(!n.declarations)return!0;for(const a of n.declarations)if(a.kind===264){if(a.flags&256)return!1;const c=PC(a);if(c){for(const d of c)if(Gl(d.expression)){const _=Hs(d.expression,788968,!0);if(!_||!(_.flags&64)||Vf(_).thisType)return!1}}}return!0}function Vf(n){let a=Xi(n);const c=a;if(!a.declaredType){const d=n.flags&32?1:2,_=Hye(n,n.valueDeclaration&&y_t(n.valueDeclaration));_&&(n=_,a=_.links);const y=c.declaredType=a.declaredType=zf(d,n),x=Vr(n),k=kr(n);(x||k||d===1||!Plt(n))&&(y.objectFlags|=4,y.typeParameters=So(x,k),y.outerTypeParameters=x,y.localTypeParameters=k,y.instantiations=new Map,y.instantiations.set(mm(y.typeParameters),y),y.target=y,y.resolvedTypeArguments=y.typeParameters,y.thisType=yf(n),y.thisType.isThisType=!0,y.thisType.constraint=y)}return a.declaredType}function c8e(n){var a;const c=Xi(n);if(!c.declaredType){if(!Fh(n,2))return _t;const d=N.checkDefined((a=n.declarations)==null?void 0:a.find(QL),"Type alias symbol with no valid declaration found"),_=Zf(d)?d.typeExpression:d.type;let y=_?Ei(_):_t;if(Y_()){const x=kr(n);x&&(c.typeParameters=x,c.instantiations=new Map,c.instantiations.set(mm(x),y))}else y=_t,d.kind===347?Je(d.typeExpression.type,f.Type_alias_0_circularly_references_itself,bi(n)):Je(ld(d)&&d.name||d,f.Type_alias_0_circularly_references_itself,bi(n));c.declaredType=y}return c.declaredType}function VZ(n){return n.flags&1056&&n.symbol.flags&8?el(Pd(n.symbol)):n}function u8e(n){const a=Xi(n);if(!a.declaredType){const c=[];if(n.declarations){for(const _ of n.declarations)if(_.kind===266){for(const y of _.members)if(TN(y)){const x=Ir(y),k=jN(y),z=Ex(k!==void 0?Yut(k,Ta(n),x):d8e(x));Xi(x).declaredType=z,c.push(Ed(z))}}}const d=c.length?ti(c,1,n,void 0):d8e(n);d.flags&1048576&&(d.flags|=1024,d.symbol=n),a.declaredType=d}return a.declaredType}function d8e(n){const a=Tg(32,n),c=Tg(32,n);return a.regularType=a,a.freshType=c,c.regularType=a,c.freshType=c,a}function p8e(n){const a=Xi(n);if(!a.declaredType){const c=u8e(Pd(n));a.declaredType||(a.declaredType=c)}return a.declaredType}function jT(n){const a=Xi(n);return a.declaredType||(a.declaredType=yf(n))}function Mlt(n){const a=Xi(n);return a.declaredType||(a.declaredType=el(Fc(n)))}function el(n){return f8e(n)||_t}function f8e(n){if(n.flags&96)return Vf(n);if(n.flags&524288)return c8e(n);if(n.flags&262144)return jT(n);if(n.flags&384)return u8e(n);if(n.flags&8)return p8e(n);if(n.flags&2097152)return Mlt(n)}function _9(n){switch(n.kind){case 133:case 159:case 154:case 150:case 163:case 136:case 155:case 151:case 116:case 157:case 146:case 201:return!0;case 188:return _9(n.elementType);case 183:return!n.typeArguments||n.typeArguments.every(_9)}return!1}function Llt(n){const a=Zx(n);return!a||_9(a)}function m8e(n){const a=yu(n);return a?_9(a):!zy(n)}function klt(n){const a=nm(n),c=ky(n);return(n.kind===176||!!a&&_9(a))&&n.parameters.every(m8e)&&c.every(Llt)}function wlt(n){if(n.declarations&&n.declarations.length===1){const a=n.declarations[0];if(a)switch(a.kind){case 172:case 171:return m8e(a);case 174:case 173:case 176:case 177:case 178:return klt(a)}}return!1}function _8e(n,a,c){const d=ua();for(const _ of n)d.set(_.escapedName,c&&wlt(_)?_:bve(_,a));return d}function h8e(n,a){for(const c of a){if(g8e(c))continue;const d=n.get(c.escapedName);(!d||d.valueDeclaration&&mr(d.valueDeclaration)&&!vN(d)&&!wie(d.valueDeclaration))&&(n.set(c.escapedName,c),n.set(c.escapedName,c))}}function g8e(n){return!!n.valueDeclaration&&cd(n.valueDeclaration)&&sa(n.valueDeclaration)}function vge(n){if(!n.declaredProperties){const a=n.symbol,c=Ob(a);n.declaredProperties=nE(c),n.declaredCallSignatures=et,n.declaredConstructSignatures=et,n.declaredIndexInfos=et,n.declaredCallSignatures=H1(c.get("__call")),n.declaredConstructSignatures=H1(c.get("__new")),n.declaredIndexInfos=U8e(a)}return n}function yge(n){if(!Za(n)&&!Qs(n))return!1;const a=Za(n)?n.expression:n.argumentExpression;return Gl(a)&&rm(Za(n)?Rg(n):nc(a))}function x8(n){return n.charCodeAt(0)===95&&n.charCodeAt(1)===95&&n.charCodeAt(2)===64}function h9(n){const a=Mo(n);return!!a&&yge(a)}function TN(n){return!jy(n)||h9(n)}function Olt(n){return E3(n)&&!yge(n)}function Wlt(n,a,c){N.assert(!!(xl(n)&4096),"Expected a late-bound symbol."),n.flags|=c,Xi(a.symbol).lateSymbol=n,n.declarations?a.symbol.isReplaceableByMethod||n.declarations.push(a):n.declarations=[a],c&111551&&(!n.valueDeclaration||n.valueDeclaration.kind!==a.kind)&&(n.valueDeclaration=a)}function v8e(n,a,c,d){N.assert(!!d.symbol,"The member is expected to have a symbol.");const _=ei(d);if(!_.resolvedSymbol){_.resolvedSymbol=d.symbol;const y=mr(d)?d.left:d.name,x=Qs(y)?nc(y.argumentExpression):Rg(y);if(rm(x)){const k=im(x),z=d.symbol.flags;let H=c.get(k);H||c.set(k,H=Xa(0,k,4096));const re=a&&a.get(k);if(!(n.flags&32)&&(H.flags&ST(z)||re)){const be=re?So(re.declarations,H.declarations):H.declarations,ge=!(x.flags&8192)&&Vi(k)||Rs(y);Ue(be,Ke=>Je(Mo(Ke)||Ke,f.Property_0_was_also_declared_here,ge)),Je(y||d,f.Duplicate_property_0,ge),H=Xa(0,k,4096)}return H.links.nameType=x,Wlt(H,d,z),H.parent?N.assert(H.parent===n,"Existing symbol parent should match new one"):H.parent=n,_.resolvedSymbol=H}}return _.resolvedSymbol}function bge(n,a){const c=Xi(n);if(!c[a]){const d=a==="resolvedExports",_=d?n.flags&1536?WT(n).exports:n.exports:n.members;c[a]=_||K;const y=ua();for(const z of n.declarations||et){const H=Rie(z);if(H)for(const re of H)d===mc(re)&&h9(re)&&v8e(n,_,y,re)}const x=F1(n).assignmentDeclarationMembers;if(x){const z=zo(x.values());for(const H of z){const re=Bl(H),be=re===3||mr(H)&&Uee(H,re)||re===9||re===6;d===!be&&h9(H)&&v8e(n,_,y,H)}}let k=ix(_,y);if(n.flags&33554432&&c.cjsExportMerged&&n.declarations)for(const z of n.declarations){const H=Xi(z.symbol)[a];if(!k){k=H;continue}H&&H.forEach((re,be)=>{const ge=k.get(be);if(!ge)k.set(be,re);else{if(ge===re)return;k.set(be,um(ge,re))}})}c[a]=k||K}return c[a]}function Ob(n){return n.flags&6256?bge(n,"resolvedMembers"):n.members||K}function jZ(n){if(n.flags&106500&&n.escapedName==="__computed"){const a=Xi(n);if(!a.lateSymbol&&bt(n.declarations,h9)){const c=rs(n.parent);bt(n.declarations,mc)?Cp(c):Ob(c)}return a.lateSymbol||(a.lateSymbol=n)}return n}function Kp(n,a,c){if(Wr(n)&4){const d=n.target,_=Js(n);return Me(d.typeParameters)===Me(_)?hy(d,So(_,[a||d.thisType])):n}else if(n.flags&2097152){const d=eo(n.types,_=>Kp(_,a,c));return d!==n.types?ba(d):n}return c?kd(n):n}function y8e(n,a,c,d){let _,y,x,k,z;pG(c,d,0,c.length)?(y=a.symbol?Ob(a.symbol):ua(a.declaredProperties),x=a.declaredCallSignatures,k=a.declaredConstructSignatures,z=a.declaredIndexInfos):(_=kp(c,d),y=_8e(a.declaredProperties,_,c.length===1),x=uee(a.declaredCallSignatures,_),k=uee(a.declaredConstructSignatures,_),z=H6e(a.declaredIndexInfos,_));const H=Mp(a);if(H.length){if(a.symbol&&y===Ob(a.symbol)){const be=ua(a.declaredProperties),ge=zge(a.symbol);ge&&be.set("__index",ge),y=be}bf(n,y,x,k,z);const re=tl(d);for(const be of H){const ge=re?Kp(so(be,_),re):be;h8e(y,gs(ge)),x=So(x,Yo(ge,0)),k=So(k,Yo(ge,1));const Ke=ge!==j?yd(ge):[Vh(ke,j,!1)];z=So(z,nr(Ke,gt=>!Mge(z,gt.keyType)))}}bf(n,y,x,k,z)}function Flt(n){y8e(n,vge(n),et,et)}function zlt(n){const a=vge(n.target),c=So(a.typeParameters,[a.thisType]),d=Js(n),_=d.length===c.length?d:So(d,[n]);y8e(n,a,c,_)}function Ig(n,a,c,d,_,y,x,k){const z=new h(Qt,k);return z.declaration=n,z.typeParameters=a,z.parameters=d,z.thisParameter=c,z.resolvedReturnType=_,z.resolvedTypePredicate=y,z.minArgumentCount=x,z.resolvedMinArgumentCount=void 0,z.target=void 0,z.mapper=void 0,z.compositeSignatures=void 0,z.compositeKind=void 0,z}function R8(n){const a=Ig(n.declaration,n.typeParameters,n.thisParameter,n.parameters,void 0,void 0,n.minArgumentCount,n.flags&167);return a.target=n.target,a.mapper=n.mapper,a.compositeSignatures=n.compositeSignatures,a.compositeKind=n.compositeKind,a}function b8e(n,a){const c=R8(n);return c.compositeSignatures=a,c.compositeKind=1048576,c.target=void 0,c.mapper=void 0,c}function Blt(n,a){if((n.flags&24)===a)return n;n.optionalCallSignatureCache||(n.optionalCallSignatureCache={});const c=a===8?"inner":"outer";return n.optionalCallSignatureCache[c]||(n.optionalCallSignatureCache[c]=Glt(n,a))}function Glt(n,a){N.assert(a===8||a===16,"An optional call signature can either be for an inner call chain or an outer call chain, but not both.");const c=R8(n);return c.flags|=a,c}function E8e(n,a){if(Yu(n)){const _=n.parameters.length-1,y=n.parameters[_].escapedName,x=dr(n.parameters[_]);if(Ba(x))return[c(x,_,y)];if(!a&&x.flags&1048576&&Zn(x.types,Ba))return wt(x.types,k=>c(k,_,y))}return[n.parameters];function c(_,y,x){const k=Js(_),z=d(_,x),H=wt(k,(re,be)=>{const ge=z&&z[be]?z[be]:oM(n,y+be,_),Ke=_.target.elementFlags[be],gt=Ke&12?32768:Ke&2?16384:0,Dt=Xa(1,ge,gt);return Dt.links.type=Ke&4?Vu(re):re,Dt});return So(n.parameters.slice(0,y),H)}function d(_,y){const x=new Map;return wt(_.target.labeledElementDeclarations,(k,z)=>{const H=Yye(k,z,y),re=x.get(H);return re===void 0?(x.set(H,1),H):(x.set(H,re+1),`${H}_${re}`)})}}function Vlt(n){const a=Pp(n),c=Yo(a,1),d=Vg(n.symbol),_=!!d&&Zr(d,64);if(c.length===0)return[Ig(void 0,n.localTypeParameters,void 0,et,n,void 0,0,_?4:0)];const y=Is(n),x=lr(y),k=A9(y),z=Me(k),H=[];for(const re of c){const be=Gh(re.typeParameters),ge=Me(re.typeParameters);if(x||z>=be&&z<=ge){const Ke=ge?KZ(re,Fb(k,re.typeParameters,be,x)):R8(re);Ke.typeParameters=n.localTypeParameters,Ke.resolvedReturnType=n,Ke.flags=_?Ke.flags|4:Ke.flags&-5,H.push(Ke)}}return H}function UZ(n,a,c,d,_){for(const y of n)if(z9(y,a,c,d,_,c?_dt:z8))return y}function jlt(n,a,c){if(a.typeParameters){if(c>0)return;for(let _=1;_<n.length;_++)if(!UZ(n[_],a,!1,!1,!1))return;return[a]}let d;for(let _=0;_<n.length;_++){const y=_===c?a:UZ(n[_],a,!1,!1,!0)||UZ(n[_],a,!0,!1,!0);if(!y)return;d=Mg(d,y)}return d}function Ege(n){let a,c;for(let d=0;d<n.length;d++){if(n[d].length===0)return et;n[d].length>1&&(c=c===void 0?d:-1);for(const _ of n[d])if(!a||!UZ(a,_,!1,!1,!0)){const y=jlt(n,_,d);if(y){let x=_;if(y.length>1){let k=_.thisParameter;const z=Ue(y,H=>H.thisParameter);if(z){const H=ba(Hi(y,re=>re.thisParameter&&dr(re.thisParameter)));k=tA(z,H)}x=b8e(_,y),x.thisParameter=k}(a||(a=[])).push(x)}}}if(!Me(a)&&c!==-1){const d=n[c!==void 0?c:0];let _=d.slice();for(const y of n)if(y!==d){const x=y[0];if(N.assert(!!x,"getUnionSignatures bails early on empty signature lists and should not have empty lists on second pass"),_=x.typeParameters&&bt(_,k=>!!k.typeParameters&&!S8e(x.typeParameters,k.typeParameters))?void 0:wt(_,k=>qlt(k,x)),!_)break}a=_}return a||et}function S8e(n,a){if(Me(n)!==Me(a))return!1;if(!n||!a)return!0;const c=kp(a,n);for(let d=0;d<n.length;d++){const _=n[d],y=a[d];if(_!==y&&!vv(U2(_)||_n,so(U2(y)||_n,c)))return!1}return!0}function Ult(n,a,c){if(!n||!a)return n||a;const d=ba([dr(n),so(dr(a),c)]);return tA(n,d)}function Hlt(n,a,c){const d=Yp(n),_=Yp(a),y=d>=_?n:a,x=y===n?a:n,k=y===n?d:_,z=Hh(n)||Hh(a),H=z&&!Hh(y),re=new Array(k+(H?1:0));for(let be=0;be<k;be++){let ge=nS(y,be);y===a&&(ge=so(ge,c));let Ke=nS(x,be)||_n;x===a&&(Ke=so(Ke,c));const gt=ba([ge,Ke]),Dt=z&&!H&&be===k-1,an=be>=rh(y)&&be>=rh(x),cn=be>=d?void 0:oM(n,be),ar=be>=_?void 0:oM(a,be),On=cn===ar?cn:cn?ar?void 0:cn:ar,ln=Xa(1|(an&&!Dt?16777216:0),On||`arg${be}`,Dt?32768:an?16384:0);ln.links.type=Dt?Vu(gt):gt,re[be]=ln}if(H){const be=Xa(1,"args",32768);be.links.type=Vu(y_(x,k)),x===a&&(be.links.type=so(be.links.type,c)),re[k]=be}return re}function qlt(n,a){const c=n.typeParameters||a.typeParameters;let d;n.typeParameters&&a.typeParameters&&(d=kp(a.typeParameters,n.typeParameters));const _=n.declaration,y=Hlt(n,a,d),x=Ult(n.thisParameter,a.thisParameter,d),k=Math.max(n.minArgumentCount,a.minArgumentCount),z=Ig(_,c,x,y,void 0,void 0,k,(n.flags|a.flags)&167);return z.compositeKind=1048576,z.compositeSignatures=So(n.compositeKind!==2097152&&n.compositeSignatures||[n],[a]),d?z.mapper=n.compositeKind!==2097152&&n.mapper&&n.compositeSignatures?$1(n.mapper,d):d:n.compositeKind!==2097152&&n.mapper&&n.compositeSignatures&&(z.mapper=n.mapper),z}function T8e(n){const a=yd(n[0]);if(a){const c=[];for(const d of a){const _=d.keyType;Zn(n,y=>!!xg(y,_))&&c.push(Vh(_,ti(wt(n,y=>dE(y,_))),bt(n,y=>xg(y,_).isReadonly)))}return c}return et}function Jlt(n){const a=Ege(wt(n.types,_=>_===Wt?[un]:Yo(_,0))),c=Ege(wt(n.types,_=>Yo(_,1))),d=T8e(n.types);bf(n,K,a,c,d)}function g9(n,a){return n?a?ba([n,a]):n:a}function A8e(n){const a=au(n,d=>Yo(d,1).length>0),c=wt(n,Mi);if(a>0&&a===au(c,d=>d)){const d=c.indexOf(!0);c[d]=!1}return c}function Klt(n,a,c,d){const _=[];for(let y=0;y<a.length;y++)y===d?_.push(n):c[y]&&_.push(ps(Yo(a[y],1)[0]));return ba(_)}function Xlt(n){let a,c,d;const _=n.types,y=A8e(_),x=au(y,k=>k);for(let k=0;k<_.length;k++){const z=n.types[k];if(!y[k]){let H=Yo(z,1);H.length&&x>0&&(H=wt(H,re=>{const be=R8(re);return be.resolvedReturnType=Klt(ps(re),_,y,k),be})),c=I8e(c,H)}a=I8e(a,Yo(z,0)),d=od(yd(z),(H,re)=>x8e(H,re,!1),d)}bf(n,K,a||et,c||et,d||et)}function I8e(n,a){for(const c of a)(!n||Zn(n,d=>!z9(d,c,!1,!1,!1,z8)))&&(n=xn(n,c));return n}function x8e(n,a,c){if(n)for(let d=0;d<n.length;d++){const _=n[d];if(_.keyType===a.keyType)return n[d]=Vh(_.keyType,c?ti([_.type,a.type]):ba([_.type,a.type]),c?_.isReadonly||a.isReadonly:_.isReadonly&&a.isReadonly),n}return xn(n,a)}function Ylt(n){if(n.target){bf(n,K,et,et,et);const x=_8e(Wb(n.target),n.mapper,!1),k=uee(Yo(n.target,0),n.mapper),z=uee(Yo(n.target,1),n.mapper),H=H6e(yd(n.target),n.mapper);bf(n,x,k,z,H);return}const a=rs(n.symbol);if(a.flags&2048){bf(n,K,et,et,et);const x=Ob(a),k=H1(x.get("__call")),z=H1(x.get("__new")),H=U8e(a);bf(n,x,k,z,H);return}let c=Cp(a),d;if(a===at){const x=new Map;c.forEach(k=>{var z;!(k.flags&418)&&!(k.flags&512&&((z=k.declarations)!=null&&z.length)&&Zn(k.declarations,ku))&&x.set(k.escapedName,k)}),c=x}let _;if(bf(n,c,et,et,et),a.flags&32){const x=Vf(a),k=Pp(x);k.flags&11272192?(c=ua(zT(c)),h8e(c,gs(k))):k===j&&(_=Vh(ke,j,!1))}const y=XZ(c);if(y?d=Bge(y):(_&&(d=xn(d,_)),a.flags&384&&(el(a).flags&32||bt(n.properties,x=>!!(dr(x).flags&296)))&&(d=xn(d,Ur))),bf(n,c,et,et,d||et),a.flags&8208&&(n.callSignatures=H1(a)),a.flags&32){const x=Vf(a);let k=a.members?H1(a.members.get("__constructor")):et;a.flags&16&&(k=Jr(k.slice(),Hi(n.callSignatures,z=>nh(z.declaration)?Ig(z.declaration,z.typeParameters,z.thisParameter,z.parameters,x,void 0,z.minArgumentCount,z.flags&167):void 0))),k.length||(k=Vlt(x)),n.constructSignatures=k}}function $lt(n,a,c){return so(n,kp([a.indexType,a.objectType],[g_(0),jh([c])]))}function Qlt(n){const a=Ef(n.mappedType);if(!(a.flags&1048576||a.flags&2097152))return;const c=a.flags&1048576?a.origin:a;if(!c||!(c.flags&2097152))return;const d=ba(c.types.filter(_=>_!==n.constraintType));return d!==jr?d:void 0}function Zlt(n){const a=xg(n.source,ke),c=Bh(n.mappedType),d=!(c&1),_=c&4?0:16777216,y=a?[Vh(ke,Pee(a.type,n.mappedType,n.constraintType),d&&a.isReadonly)]:et,x=ua(),k=Qlt(n);for(const z of gs(n.source)){if(k){const be=NN(z,8576);if(!Ea(be,k))continue}const H=8192|(d&&b_(z)?8:0),re=Xa(4|z.flags&_,z.escapedName,H);if(re.declarations=z.declarations,re.links.nameType=Xi(z).nameType,re.links.propertyType=dr(z),n.constraintType.type.flags&8388608&&n.constraintType.type.objectType.flags&262144&&n.constraintType.type.indexType.flags&262144){const be=n.constraintType.type.objectType,ge=$lt(n.mappedType,n.constraintType.type,be);re.links.mappedType=ge,re.links.constraintType=Q_(be)}else re.links.mappedType=n.mappedType,re.links.constraintType=n.constraintType;x.set(z.escapedName,re)}bf(n,x,et,et,y)}function v9(n){if(n.flags&4194304){const a=kd(n.type);return Hb(a)?h6e(a):Q_(a)}if(n.flags&16777216){if(n.root.isDistributive){const a=n.checkType,c=v9(a);if(c!==a)return Sve(n,ZT(n.root.checkType,c,n.mapper),!1)}return n}if(n.flags&1048576)return pl(n,v9,!0);if(n.flags&2097152){const a=n.types;return a.length===2&&a[0].flags&76&&a[1]===lc?n:ba(eo(n.types,v9))}return n}function Sge(n){return xl(n)&4096}function Tge(n,a,c,d){for(const _ of gs(n))d(NN(_,a));if(n.flags&1)d(ke);else for(const _ of yd(n))(!c||_.keyType.flags&134217732)&&d(_.keyType)}function ect(n){const a=ua();let c;bf(n,K,et,et,et);const d=m_(n),_=Ef(n),y=n.target||n,x=_y(y),k=HZ(y)!==2,z=mv(y),H=kd(UT(n)),re=Bh(n),be=Le?128:8576;AN(n)?Tge(H,be,Le,ge):oA(v9(_),ge),bf(n,a,et,et,c||et);function ge(gt){const Dt=x?so(x,O8(n.mapper,d,gt)):gt;oA(Dt,an=>Ke(gt,an))}function Ke(gt,Dt){if(rm(Dt)){const an=im(Dt),cn=a.get(an);if(cn)cn.links.nameType=ti([cn.links.nameType,Dt]),cn.links.keyType=ti([cn.links.keyType,gt]);else{const ar=rm(gt)?ya(H,im(gt)):void 0,On=!!(re&4||!(re&8)&&ar&&ar.flags&16777216),ln=!!(re&1||!(re&2)&&ar&&b_(ar)),zn=Y&&!On&&ar&&ar.flags&16777216,Fn=ar?Sge(ar):0,er=Xa(4|(On?16777216:0),an,Fn|262144|(ln?8:0)|(zn?524288:0));er.links.mappedType=n,er.links.nameType=Dt,er.links.keyType=gt,ar&&(er.links.syntheticOrigin=ar,er.declarations=k?ar.declarations:void 0),a.set(an,er)}}else if(YZ(Dt)||Dt.flags&33){const an=Dt.flags&5?ke:Dt.flags&40?Tt:Dt,cn=so(z,O8(n.mapper,d,gt)),ar=D8(H,Dt),On=!!(re&1||!(re&2)&&(ar!=null&&ar.isReadonly)),ln=Vh(an,cn,On);c=x8e(c,ln,!0)}}}function tct(n){if(!n.links.type){const a=n.links.mappedType;if(!Fh(n,0))return a.containsError=!0,_t;const c=mv(a.target||a),d=O8(a.mapper,m_(a),n.links.keyType),_=so(c,d);let y=Y&&n.flags&16777216&&!Cl(_,49152)?qb(_,!0):n.links.checkFlags&524288?xee(_):_;Y_()||(Je(C,f.Type_of_property_0_circularly_references_itself_in_mapped_type_1,bi(n),Un(a)),y=_t),n.links.type=y}return n.links.type}function m_(n){return n.typeParameter||(n.typeParameter=jT(Ir(n.declaration.typeParameter)))}function Ef(n){return n.constraintType||(n.constraintType=Ld(m_(n))||_t)}function _y(n){return n.declaration.nameType?n.nameType||(n.nameType=so(Ei(n.declaration.nameType),n.mapper)):void 0}function mv(n){return n.templateType||(n.templateType=n.declaration.type?so(cp(Ei(n.declaration.type),!0,!!(Bh(n)&4)),n.mapper):_t)}function R8e(n){return Zx(n.declaration.typeParameter)}function AN(n){const a=R8e(n);return a.kind===198&&a.operator===143}function UT(n){if(!n.modifiersType)if(AN(n))n.modifiersType=so(Ei(R8e(n).type),n.mapper);else{const a=pve(n.declaration),c=Ef(a),d=c&&c.flags&262144?Ld(c):c;n.modifiersType=d&&d.flags&4194304?so(d.type,n.mapper):_n}return n.modifiersType}function Bh(n){const a=n.declaration;return(a.readonlyToken?a.readonlyToken.kind===41?2:1:0)|(a.questionToken?a.questionToken.kind===41?8:4:0)}function D8e(n){const a=Bh(n);return a&8?-1:a&4?1:0}function Age(n){const a=D8e(n),c=UT(n);return a||(Kd(c)?D8e(c):0)}function nct(n){return!!(Wr(n)&32&&Bh(n)&4)}function Kd(n){if(Wr(n)&32){const a=Ef(n);if(QT(a))return!0;const c=_y(n);if(c&&QT(so(c,Y1(m_(n),a))))return!0}return!1}function HZ(n){const a=_y(n);return a?Ea(a,m_(n))?1:2:0}function __(n){return n.members||(n.flags&524288?n.objectFlags&4?zlt(n):n.objectFlags&3?Flt(n):n.objectFlags&1024?Zlt(n):n.objectFlags&16?Ylt(n):n.objectFlags&32?ect(n):N.fail("Unhandled object type "+N.formatObjectFlags(n.objectFlags)):n.flags&1048576?Jlt(n):n.flags&2097152?Xlt(n):N.fail("Unhandled type "+N.formatTypeFlags(n.flags))),n}function Wb(n){return n.flags&524288?__(n).properties:et}function uE(n,a){if(n.flags&524288){const d=__(n).members.get(a);if(d&&Gm(d))return d}}function y9(n){if(!n.resolvedProperties){const a=ua();for(const c of n.types){for(const d of gs(c))if(!a.has(d.escapedName)){const _=E9(n,d.escapedName,!!(n.flags&2097152));_&&a.set(d.escapedName,_)}if(n.flags&1048576&&yd(c).length===0)break}n.resolvedProperties=nE(a)}return n.resolvedProperties}function gs(n){return n=V2(n),n.flags&3145728?y9(n):Wb(n)}function rct(n,a){n=V2(n),n.flags&3670016&&__(n).members.forEach((c,d)=>{px(c,d)&&a(c,d)})}function ict(n,a){return a.properties.some(d=>{const _=d.name&&(t_(d.name)?Xd(Dk(d.name)):vy(d.name)),y=_&&rm(_)?im(_):void 0,x=y===void 0?void 0:Xe(n,y);return!!x&&V8(x)&&!Ea(Ix(d),x)})}function oct(n){const a=ti(n);if(!(a.flags&1048576))return Mbe(a);const c=ua();for(const d of n)for(const{escapedName:_}of Mbe(d))if(!c.has(_)){const y=w8e(a,_);y&&c.set(_,y)}return zo(c.values())}function HT(n){return n.flags&262144?Ld(n):n.flags&8388608?sct(n):n.flags&16777216?P8e(n):Gu(n)}function Ld(n){return b9(n)?U2(n):void 0}function act(n,a){const c=W8(n);return!!c&&qT(c,a)}function qT(n,a=0){var c;return a<5&&!!(n&&(n.flags&262144&&bt((c=n.symbol)==null?void 0:c.declarations,d=>Zr(d,4096))||n.flags&3145728&&bt(n.types,d=>qT(d,a))||n.flags&8388608&&qT(n.objectType,a+1)||n.flags&16777216&&qT(P8e(n),a+1)||n.flags&33554432&&qT(n.baseType,a)||Wr(n)&32&&act(n,a)||Hb(n)&&Gr(J1(n),(d,_)=>!!(n.target.elementFlags[_]&8)&&qT(d,a))>=0))}function sct(n){return b9(n)?lct(n):void 0}function Ige(n){const a=gv(n,!1);return a!==n?a:HT(n)}function lct(n){if(Nge(n))return iee(n.objectType,n.indexType);const a=Ige(n.indexType);if(a&&a!==n.indexType){const d=Bb(n.objectType,a,n.accessFlags);if(d)return d}const c=Ige(n.objectType);if(c&&c!==n.objectType)return Bb(c,n.indexType,n.accessFlags)}function xge(n){if(!n.resolvedDefaultConstraint){const a=Uut(n),c=mE(n);n.resolvedDefaultConstraint=Nt(a)?c:Nt(c)?a:ti([a,c])}return n.resolvedDefaultConstraint}function N8e(n){if(n.resolvedConstraintOfDistributive!==void 0)return n.resolvedConstraintOfDistributive||void 0;if(n.root.isDistributive&&n.restrictiveInstantiation!==n){const a=gv(n.checkType,!1),c=a===n.checkType?HT(a):a;if(c&&c!==n.checkType){const d=Sve(n,ZT(n.root.checkType,c,n.mapper),!0);if(!(d.flags&131072))return n.resolvedConstraintOfDistributive=d,d}}n.resolvedConstraintOfDistributive=!1}function C8e(n){return N8e(n)||xge(n)}function P8e(n){return b9(n)?C8e(n):void 0}function cct(n,a){let c,d=!1;for(const _ of n)if(_.flags&465829888){let y=HT(_);for(;y&&y.flags&21233664;)y=HT(y);y&&(c=xn(c,y),a&&(c=xn(c,_)))}else(_.flags&469892092||Uh(_))&&(d=!0);if(c&&(a||d)){if(d)for(const _ of n)(_.flags&469892092||Uh(_))&&(c=xn(c,_));return O9(ba(c),!1)}}function Gu(n){if(n.flags&464781312||Hb(n)){const a=Rge(n);return a!==js&&a!==nu?a:void 0}return n.flags&4194304?Fs:void 0}function _v(n){return Gu(n)||n}function b9(n){return Rge(n)!==nu}function Rge(n){if(n.resolvedBaseConstraint)return n.resolvedBaseConstraint;const a=[];return n.resolvedBaseConstraint=c(n);function c(y){if(!y.immediateBaseConstraint){if(!Fh(y,4))return nu;let x;const k=bee(y);if((a.length<10||a.length<50&&!Nr(a,k))&&(a.push(k),x=_(gv(y,!1)),a.pop()),!Y_()){if(y.flags&262144){const z=Gge(y);if(z){const H=Je(z,f.Type_parameter_0_has_a_circular_constraint,Un(y));C&&!jE(z,C)&&!jE(C,z)&&wa(H,wr(C,f.Circularity_originates_in_type_at_this_location))}}x=nu}y.immediateBaseConstraint=x||js}return y.immediateBaseConstraint}function d(y){const x=c(y);return x!==js&&x!==nu?x:void 0}function _(y){if(y.flags&262144){const x=U2(y);return y.isThisType||!x?x:d(x)}if(y.flags&3145728){const x=y.types,k=[];let z=!1;for(const H of x){const re=d(H);re?(re!==H&&(z=!0),k.push(re)):z=!0}return z?y.flags&1048576&&k.length===x.length?ti(k):y.flags&2097152&&k.length?ba(k):void 0:y}if(y.flags&4194304)return Fs;if(y.flags&134217728){const x=y.types,k=Hi(x,d);return k.length===x.length?XT(y.texts,k):ke}if(y.flags&268435456){const x=d(y.type);return x&&x!==y.type?yx(y.symbol,x):ke}if(y.flags&8388608){if(Nge(y))return d(iee(y.objectType,y.indexType));const x=d(y.objectType),k=d(y.indexType),z=x&&k&&Bb(x,k,y.accessFlags);return z&&d(z)}if(y.flags&16777216){const x=C8e(y);return x&&d(x)}if(y.flags&33554432)return d(qge(y));if(Hb(y)){const x=wt(J1(y),(k,z)=>{const H=k.flags&262144&&y.target.elementFlags[z]&8&&d(k)||k;return H!==k&&up(H,re=>hE(re)&&!Hb(re))?H:k});return jh(x,y.target.elementFlags,y.target.readonly,y.target.labeledElementDeclarations)}return y}}function uct(n,a){return n.resolvedApparentType||(n.resolvedApparentType=Kp(n,a,!0))}function Dge(n){if(n.default)n.default===pu&&(n.default=nu);else if(n.target){const a=Dge(n.target);n.default=a?so(a,n.mapper):js}else{n.default=pu;const a=n.symbol&&Ue(n.symbol.declarations,d=>gl(d)&&d.default),c=a?Ei(a):js;n.default===pu&&(n.default=c)}return n.default}function JT(n){const a=Dge(n);return a!==js&&a!==nu?a:void 0}function dct(n){return Dge(n)!==nu}function M8e(n){return!!(n.symbol&&Ue(n.symbol.declarations,a=>gl(a)&&a.default))}function L8e(n){return n.resolvedApparentType||(n.resolvedApparentType=pct(n))}function pct(n){const a=n.target??n,c=W8(a);if(c&&!a.declaration.nameType){const d=UT(n),_=Kd(d)?L8e(d):Gu(d);if(_&&up(_,y=>hE(y)||k8e(y)))return so(a,ZT(c,_,n.mapper))}return n}function k8e(n){return!!(n.flags&2097152)&&Zn(n.types,hE)}function Nge(n){let a;return!!(n.flags&8388608&&Wr(a=n.objectType)&32&&!Kd(a)&&QT(n.indexType)&&!(Bh(a)&8)&&!a.declaration.nameType)}function kd(n){const a=n.flags&465829888?Gu(n)||_n:n,c=Wr(a);return c&32?L8e(a):c&4&&a!==n?Kp(a,n):a.flags&2097152?uct(a,n):a.flags&402653316?Zl:a.flags&296?yc:a.flags&2112?Xct():a.flags&528?dl:a.flags&12288?s6e():a.flags&67108864?La:a.flags&4194304?Fs:a.flags&2&&!Y?La:a}function V2(n){return h_(kd(h_(n)))}function w8e(n,a,c){var d,_,y;let x,k,z;const H=n.flags&1048576;let re,be=4,ge=H?0:8,Ke=!1;for(const er of n.types){const qn=kd(er);if(!(Kt(qn)||qn.flags&131072)){const tr=ya(qn,a,c),Ro=tr?Df(tr):0;if(tr){if(tr.flags&106500&&(re??(re=H?0:16777216),H?re|=tr.flags&16777216:re&=tr.flags),!x)x=tr;else if(tr!==x)if((GN(tr)||tr)===(GN(x)||x)&&Mve(x,tr,(Bo,_o)=>Bo===_o?-1:0)===-1)Ke=!!x.parent&&!!Me(kr(x.parent));else{k||(k=new Map,k.set(Ta(x),x));const Bo=Ta(tr);k.has(Bo)||k.set(Bo,tr)}H&&b_(tr)?ge|=8:!H&&!b_(tr)&&(ge&=-9),ge|=(Ro&6?0:256)|(Ro&4?512:0)|(Ro&2?1024:0)|(Ro&256?2048:0),Dye(tr)||(be=2)}else if(H){const Eo=!x8(a)&&gx(qn,a);Eo?(ge|=32|(Eo.isReadonly?8:0),z=xn(z,Ba(qn)?Tee(qn)||Oe:Eo.type)):yE(qn)&&!(Wr(qn)&2097152)?(ge|=32,z=xn(z,Oe)):ge|=16}}}if(!x||H&&(k||ge&48)&&ge&1536&&!(k&&fct(k.values())))return;if(!k&&!(ge&16)&&!z)if(Ke){const er=(d=ii(x,mh))==null?void 0:d.links,qn=tA(x,er==null?void 0:er.type);return qn.parent=(y=(_=x.valueDeclaration)==null?void 0:_.symbol)==null?void 0:y.parent,qn.links.containingType=n,qn.links.mapper=er==null?void 0:er.mapper,qn.links.writeType=U1(x),qn}else return x;const gt=k?zo(k.values()):[x];let Dt,an,cn;const ar=[];let On,ln,zn=!1;for(const er of gt){ln?er.valueDeclaration&&er.valueDeclaration!==ln&&(zn=!0):ln=er.valueDeclaration,Dt=Jr(Dt,er.declarations);const qn=dr(er);an||(an=qn,cn=Xi(er).nameType);const tr=U1(er);(On||tr!==qn)&&(On=xn(On||ar.slice(),tr)),qn!==an&&(ge|=64),(V8(qn)||YT(qn))&&(ge|=128),qn.flags&131072&&qn!==uu&&(ge|=131072),ar.push(qn)}Jr(ar,z);const Fn=Xa(4|(re??0),a,be|ge);return Fn.links.containingType=n,!zn&&ln&&(Fn.valueDeclaration=ln,ln.symbol.parent&&(Fn.parent=ln.symbol.parent)),Fn.declarations=Dt,Fn.links.nameType=cn,ar.length>2?(Fn.links.checkFlags|=65536,Fn.links.deferralParent=n,Fn.links.deferralConstituents=ar,Fn.links.deferralWriteConstituents=On):(Fn.links.type=H?ti(ar):ba(ar),On&&(Fn.links.writeType=H?ti(On):ba(On))),Fn}function O8e(n,a,c){var d,_,y;let x=c?(d=n.propertyCacheWithoutObjectFunctionPropertyAugment)==null?void 0:d.get(a):(_=n.propertyCache)==null?void 0:_.get(a);return x||(x=w8e(n,a,c),x&&((c?n.propertyCacheWithoutObjectFunctionPropertyAugment||(n.propertyCacheWithoutObjectFunctionPropertyAugment=ua()):n.propertyCache||(n.propertyCache=ua())).set(a,x),c&&!(xl(x)&48)&&!((y=n.propertyCache)!=null&&y.get(a))&&(n.propertyCache||(n.propertyCache=ua())).set(a,x))),x}function fct(n){let a;for(const c of n){if(!c.declarations)return;if(!a){a=new Set(c.declarations);continue}if(a.forEach(d=>{Nr(c.declarations,d)||a.delete(d)}),a.size===0)return}return a}function E9(n,a,c){const d=O8e(n,a,c);return d&&!(xl(d)&16)?d:void 0}function h_(n){return n.flags&1048576&&n.objectFlags&16777216?n.resolvedReducedType||(n.resolvedReducedType=mct(n)):n.flags&2097152?(n.objectFlags&16777216||(n.objectFlags|=16777216|(bt(y9(n),_ct)?33554432:0)),n.objectFlags&33554432?jr:n):n}function mct(n){const a=eo(n.types,h_);if(a===n.types)return n;const c=ti(a);return c.flags&1048576&&(c.resolvedReducedType=c),c}function _ct(n){return W8e(n)||F8e(n)}function W8e(n){return!(n.flags&16777216)&&(xl(n)&131264)===192&&!!(dr(n).flags&131072)}function F8e(n){return!n.valueDeclaration&&!!(xl(n)&1024)}function Cge(n){return!!(n.flags&1048576&&n.objectFlags&16777216&&bt(n.types,Cge)||n.flags&2097152&&hct(n))}function hct(n){const a=n.uniqueLiteralFilledInstantiation||(n.uniqueLiteralFilledInstantiation=so(n,ho));return h_(a)!==a}function Pge(n,a){if(a.flags&2097152&&Wr(a)&33554432){const c=An(y9(a),W8e);if(c)return jo(n,f.The_intersection_0_was_reduced_to_never_because_property_1_has_conflicting_types_in_some_constituents,Un(a,void 0,536870912),bi(c));const d=An(y9(a),F8e);if(d)return jo(n,f.The_intersection_0_was_reduced_to_never_because_property_1_exists_in_multiple_constituents_and_is_private_in_some,Un(a,void 0,536870912),bi(d))}return n}function ya(n,a,c,d){var _,y;if(n=V2(n),n.flags&524288){const x=__(n),k=x.members.get(a);if(k&&!d&&((_=n.symbol)==null?void 0:_.flags)&512&&((y=Xi(n.symbol).typeOnlyExportStarMap)!=null&&y.has(a)))return;if(k&&Gm(k,d))return k;if(c)return;const z=x===nn?Wt:x.callSignatures.length?Jn:x.constructSignatures.length?yo:void 0;if(z){const H=uE(z,a);if(H)return H}return uE(Ce,a)}if(n.flags&2097152){const x=E9(n,a,!0);return x||(c?void 0:E9(n,a,c))}if(n.flags&1048576)return E9(n,a,c)}function S9(n,a){if(n.flags&3670016){const c=__(n);return a===0?c.callSignatures:c.constructSignatures}return et}function Yo(n,a){const c=S9(V2(n),a);if(a===0&&!Me(c)&&n.flags&1048576){if(n.arrayFallbackSignatures)return n.arrayFallbackSignatures;let d;if(up(n,_=>{var y;return!!((y=_.symbol)!=null&&y.parent)&&gct(_.symbol.parent)&&(d?d===_.symbol.escapedName:(d=_.symbol.escapedName,!0))})){const _=pl(n,x=>Vb((z8e(x.symbol.parent)?na:Qo).typeParameters[0],x.mapper)),y=Vu(_,Um(n,x=>z8e(x.symbol.parent)));return n.arrayFallbackSignatures=Yo(Xe(y,d),a)}n.arrayFallbackSignatures=c}return c}function gct(n){return!n||!Qo.symbol||!na.symbol?!1:!!u_(n,Qo.symbol)||!!u_(n,na.symbol)}function z8e(n){return!n||!na.symbol?!1:!!u_(n,na.symbol)}function Mge(n,a){return An(n,c=>c.keyType===a)}function Lge(n,a){let c,d,_;for(const y of n)y.keyType===ke?c=y:hx(a,y.keyType)&&(d?(_||(_=[d])).push(y):d=y);return _?Vh(_n,ba(wt(_,y=>y.type)),od(_,(y,x)=>y&&x.isReadonly,!0)):d||(c&&hx(a,ke)?c:void 0)}function hx(n,a){return Ea(n,a)||a===ke&&Ea(n,Tt)||a===Tt&&(n===cs||!!(n.flags&128)&&cg(n.value))}function kge(n){return n.flags&3670016?__(n).indexInfos:et}function yd(n){return kge(V2(n))}function xg(n,a){return Mge(yd(n),a)}function dE(n,a){var c;return(c=xg(n,a))==null?void 0:c.type}function wge(n,a){return yd(n).filter(c=>hx(a,c.keyType))}function D8(n,a){return Lge(yd(n),a)}function gx(n,a){return D8(n,x8(a)?Ai:Xd(Vi(a)))}function B8e(n){var a;let c;for(const d of ky(n))c=Mg(c,jT(d.symbol));return c!=null&&c.length?c:Ac(n)?(a=j2(n))==null?void 0:a.typeParameters:void 0}function Oge(n){const a=[];return n.forEach((c,d)=>{B1(d)||a.push(c)}),a}function qZ(n,a){if(Yc(n))return;const c=Jd(Se,'"'+n+'"',512);return c&&a?rs(c):c}function N8(n){if(FA(n)||xk(n)||Rk(n))return!0;if(n.initializer){const c=fm(n.parent),d=n.parent.parameters.indexOf(n);return N.assert(d>=0),d>=rh(c,3)}const a=xS(n.parent);return a?!n.type&&!n.dotDotDotToken&&n.parent.parameters.indexOf(n)>=ite(a).length:!1}function vct(n){return Jo(n)&&!P_(n)&&n.questionToken}function T9(n,a,c,d){return{kind:n,parameterName:a,parameterIndex:c,type:d}}function Gh(n){let a=0;if(n)for(let c=0;c<n.length;c++)M8e(n[c])||(a=c+1);return a}function Fb(n,a,c,d){const _=Me(a);if(!_)return[];const y=Me(n);if(d||y>=c&&y<=_){const x=n?n.slice():[];for(let z=y;z<_;z++)x[z]=_t;const k=$ve(d);for(let z=y;z<_;z++){let H=JT(a[z]);d&&H&&(vv(H,_n)||vv(H,La))&&(H=j),x[z]=H?so(H,kp(a,x)):k}return x.length=a.length,x}return n&&n.slice()}function fm(n){const a=ei(n);if(!a.resolvedSignature){const c=[];let d=0,_=0,y,x=lr(n)?E4(n):void 0,k=!1;const z=xS(n),H=ER(n);!z&&lr(n)&&Jie(n)&&!xre(n)&&!p0(n)&&(d|=32);for(let gt=H?1:0;gt<n.parameters.length;gt++){const Dt=n.parameters[gt];if(lr(Dt)&&UH(Dt)){x=Dt;continue}let an=Dt.symbol;const cn=r_(Dt)?Dt.typeExpression&&Dt.typeExpression.type:Dt.type;an&&an.flags&4&&!ta(Dt.name)&&(an=bl(Dt,an.escapedName,111551,void 0,void 0,!1)),gt===0&&an.escapedName==="this"?(k=!0,y=Dt.symbol):c.push(an),cn&&cn.kind===201&&(d|=2),xk(Dt)||Dt.initializer||Dt.questionToken||Zh(Dt)||z&&c.length>z.arguments.length&&!cn||Rk(Dt)||(_=c.length)}if((n.kind===177||n.kind===178)&&TN(n)&&(!k||!y)){const gt=n.kind===177?178:177,Dt=fl(Ir(n),gt);Dt&&(y=WZ(Dt))}x&&x.typeExpression&&(y=tA(Xa(1,"this"),Ei(x.typeExpression)));const be=D0(n)?y0(n):n,ge=be&&Ml(be)?Vf(rs(be.parent.symbol)):void 0,Ke=ge?ge.localTypeParameters:B8e(n);(mj(n)||lr(n)&&yct(n,c))&&(d|=1),(HR(n)&&Zr(n,64)||Ml(n)&&Zr(n.parent,64))&&(d|=4),a.resolvedSignature=Ig(n,Ke,y,c,void 0,void 0,_,d)}return a.resolvedSignature}function yct(n,a){if(D0(n)||!Wge(n))return!1;const c=tl(n.parameters),d=c?Qx(c):f0(n).filter(r_),_=Ut(d,x=>x.typeExpression&&lF(x.typeExpression.type)?x.typeExpression.type:void 0),y=Xa(3,"args",32768);return _?y.links.type=Vu(Ei(_.type)):(y.links.checkFlags|=65536,y.links.deferralParent=jr,y.links.deferralConstituents=[ec],y.links.deferralWriteConstituents=[ec]),_&&a.pop(),a.push(y),!0}function j2(n){if(!(lr(n)&&Bs(n)))return;const a=d0(n);return(a==null?void 0:a.typeExpression)&&cA(Ei(a.typeExpression))}function bct(n,a){const c=j2(n);if(!c)return;const d=n.parameters.indexOf(a);return a.dotDotDotToken?fB(c,d):y_(c,d)}function Ect(n){const a=j2(n);return a&&ps(a)}function Wge(n){const a=ei(n);return a.containsArgumentsReference===void 0&&(a.flags&512?a.containsArgumentsReference=!0:a.containsArgumentsReference=c(n.body)),a.containsArgumentsReference;function c(d){if(!d)return!1;switch(d.kind){case 80:return d.escapedText===Gt.escapedName&&d6(d)===Gt;case 172:case 174:case 177:case 178:return d.name.kind===167&&c(d.name);case 211:case 212:return c(d.expression);case 303:return c(d.initializer);default:return!oU(d)&&!tg(d)&&!!Ho(d,c)}}}function H1(n){if(!n||!n.declarations)return et;const a=[];for(let c=0;c<n.declarations.length;c++){const d=n.declarations[c];if(ea(d)){if(c>0&&d.body){const _=n.declarations[c-1];if(d.parent===_.parent&&d.kind===_.kind&&d.pos===_.end)continue}if(lr(d)&&d.jsDoc){const _=Xj(d);if(Me(_)){for(const y of _){const x=y.typeExpression;x.type===void 0&&!Ml(d)&&gE(x,j),a.push(fm(x))}continue}}a.push(!QE(d)&&!xm(d)&&j2(d)||fm(d))}}return a}function G8e(n){const a=vd(n,n);if(a){const c=Np(a);if(c)return dr(c)}return j}function pE(n){if(n.thisParameter)return dr(n.thisParameter)}function jf(n){if(!n.resolvedTypePredicate){if(n.target){const a=jf(n.target);n.resolvedTypePredicate=a?odt(a,n.mapper):we}else if(n.compositeSignatures)n.resolvedTypePredicate=but(n.compositeSignatures,n.compositeKind)||we;else{const a=n.declaration&&nm(n.declaration);let c;if(!a){const d=j2(n.declaration);d&&n!==d&&(c=jf(d))}n.resolvedTypePredicate=a&&Kk(a)?Sct(a,n):c||we}N.assert(!!n.resolvedTypePredicate)}return n.resolvedTypePredicate===we?void 0:n.resolvedTypePredicate}function Sct(n,a){const c=n.parameterName,d=n.type&&Ei(n.type);return c.kind===197?T9(n.assertsModifier?2:0,void 0,void 0,d):T9(n.assertsModifier?3:1,c.escapedText,Gr(a.parameters,_=>_.escapedName===c.escapedText),d)}function V8e(n,a,c){return a!==2097152?ti(n,c):ba(n)}function ps(n){if(!n.resolvedReturnType){if(!Fh(n,3))return _t;let a=n.target?so(ps(n.target),n.mapper):n.compositeSignatures?so(V8e(wt(n.compositeSignatures,ps),n.compositeKind,2),n.mapper):IN(n.declaration)||(zl(n.declaration.body)?j:lte(n.declaration));if(n.flags&8?a=S4e(a):n.flags&16&&(a=qb(a)),!Y_()){if(n.declaration){const c=nm(n.declaration);if(c)Je(c,f.Return_type_annotation_circularly_references_itself);else if(pe){const d=n.declaration,_=Mo(d);_?Je(_,f._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,Rs(_)):Je(d,f.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}a=j}n.resolvedReturnType=a}return n.resolvedReturnType}function IN(n){if(n.kind===176)return Vf(rs(n.parent.symbol));const a=nm(n);if(D0(n)){const c=SR(n);if(c&&Ml(c.parent)&&!a)return Vf(rs(c.parent.parent.symbol))}if(ER(n))return Ei(n.parameters[0].type);if(a)return Ei(a);if(n.kind===177&&TN(n)){const c=lr(n)&&uv(n);if(c)return c;const d=fl(Ir(n),178),_=sE(d);if(_)return _}return Ect(n)}function JZ(n){return n.compositeSignatures&&bt(n.compositeSignatures,JZ)||!n.resolvedReturnType&&mx(n,3)>=0}function Tct(n){return j8e(n)||j}function j8e(n){if(Yu(n)){const a=dr(n.parameters[n.parameters.length-1]),c=Ba(a)?Tee(a):a;return c&&dE(c,Tt)}}function C8(n,a,c,d){const _=Fge(n,Fb(a,n.typeParameters,Gh(n.typeParameters),c));if(d){const y=tWe(ps(_));if(y){const x=R8(y);x.typeParameters=d;const k=R8(_);return k.resolvedReturnType=KT(x),k}}return _}function Fge(n,a){const c=n.instantiations||(n.instantiations=new Map),d=mm(a);let _=c.get(d);return _||c.set(d,_=KZ(n,a)),_}function KZ(n,a){return MN(n,Act(n,a),!0)}function Act(n,a){return kp(n.typeParameters,a)}function P8(n){return n.typeParameters?n.erasedSignatureCache||(n.erasedSignatureCache=Ict(n)):n}function Ict(n){return MN(n,q6e(n.typeParameters),!0)}function xct(n){return n.typeParameters?n.canonicalSignatureCache||(n.canonicalSignatureCache=Rct(n)):n}function Rct(n){return C8(n,wt(n.typeParameters,a=>a.target&&!Ld(a.target)?a.target:a),lr(n.declaration))}function Dct(n){const a=n.typeParameters;if(a){if(n.baseSignatureCache)return n.baseSignatureCache;const c=q6e(a),d=kp(a,wt(a,y=>Ld(y)||_n));let _=wt(a,y=>so(y,d)||_n);for(let y=0;y<a.length-1;y++)_=yy(_,d);return _=yy(_,c),n.baseSignatureCache=MN(n,kp(a,_),!0)}return n}function KT(n){var a;if(!n.isolatedSignatureType){const c=(a=n.declaration)==null?void 0:a.kind,d=c===void 0||c===176||c===180||c===185,_=zf(16);_.members=K,_.properties=et,_.callSignatures=d?et:[n],_.constructSignatures=d?[n]:et,_.indexInfos=et,n.isolatedSignatureType=_}return n.isolatedSignatureType}function zge(n){return n.members?XZ(n.members):void 0}function XZ(n){return n.get("__index")}function Vh(n,a,c,d){return{keyType:n,type:a,isReadonly:c,declaration:d}}function U8e(n){const a=zge(n);return a?Bge(a):et}function Bge(n){if(n.declarations){const a=[];for(const c of n.declarations)if(c.parameters.length===1){const d=c.parameters[0];d.type&&oA(Ei(d.type),_=>{YZ(_)&&!Mge(a,_)&&a.push(Vh(_,c.type?Ei(c.type):j,gp(c,8),c))})}return a}return et}function YZ(n){return!!(n.flags&4108)||YT(n)||!!(n.flags&2097152)&&!CN(n)&&bt(n.types,YZ)}function Gge(n){return Hi(nr(n.symbol&&n.symbol.declarations,gl),Zx)[0]}function H8e(n,a){var c;let d;if((c=n.symbol)!=null&&c.declarations){for(const _ of n.symbol.declarations)if(_.parent.kind===195){const[y=_.parent,x]=Kie(_.parent.parent);if(x.kind===183&&!a){const k=x,z=dbe(k);if(z){const H=k.typeArguments.indexOf(y);if(H<z.length){const re=Ld(z[H]);if(re){const be=vve(z,z.map((Ke,gt)=>()=>jht(k,z,gt))),ge=so(re,be);ge!==n&&(d=xn(d,ge))}}}}else if(x.kind===169&&x.dotDotDotToken||x.kind===191||x.kind===202&&x.dotDotDotToken)d=xn(d,Vu(_n));else if(x.kind===204)d=xn(d,ke);else if(x.kind===168&&x.parent.kind===200)d=xn(d,Fs);else if(x.kind===200&&x.type&&hs(x.type)===_.parent&&x.parent.kind===194&&x.parent.extendsType===x&&x.parent.checkType.kind===200&&x.parent.checkType.type){const k=x.parent.checkType,z=Ei(k.type);d=xn(d,so(z,Y1(jT(Ir(k.typeParameter)),k.typeParameter.constraint?Ei(k.typeParameter.constraint):Fs)))}}}return d&&ba(d)}function U2(n){if(!n.constraint)if(n.target){const a=Ld(n.target);n.constraint=a?so(a,n.mapper):js}else{const a=Gge(n);if(!a)n.constraint=H8e(n)||js;else{let c=Ei(a);c.flags&1&&!Kt(c)&&(c=a.parent.parent.kind===200?Fs:_n),n.constraint=c}}return n.constraint===js?void 0:n.constraint}function q8e(n){const a=fl(n.symbol,168),c=sm(a.parent)?g3(a.parent):a.parent;return c&&gf(c)}function mm(n){let a="";if(n){const c=n.length;let d=0;for(;d<c;){const _=n[d].id;let y=1;for(;d+y<c&&n[d+y].id===_+y;)y++;a.length&&(a+=","),a+=_,y>1&&(a+=":"+y),d+=y}}return a}function vx(n,a){return n?`@${Ta(n)}`+(a?`:${mm(a)}`:""):""}function $Z(n,a){let c=0;for(const d of n)(a===void 0||!(d.flags&a))&&(c|=Wr(d));return c&458752}function xN(n,a){return bt(a)&&n===ko?_n:hy(n,a)}function hy(n,a){const c=mm(a);let d=n.instantiations.get(c);return d||(d=zf(4,n.symbol),n.instantiations.set(c,d),d.objectFlags|=a?$Z(a):0,d.target=n,d.resolvedTypeArguments=a),d}function J8e(n){const a=Tg(n.flags,n.symbol);return a.objectFlags=n.objectFlags,a.target=n.target,a.resolvedTypeArguments=n.resolvedTypeArguments,a}function Vge(n,a,c,d,_){if(!d){d=bx(a);const x=PN(d);_=c?yy(x,c):x}const y=zf(4,n.symbol);return y.target=n,y.node=a,y.mapper=c,y.aliasSymbol=d,y.aliasTypeArguments=_,y}function Js(n){var a,c;if(!n.resolvedTypeArguments){if(!Fh(n,6))return((a=n.target.localTypeParameters)==null?void 0:a.map(()=>_t))||et;const d=n.node,_=d?d.kind===183?So(n.target.outerTypeParameters,fte(d,n.target.localTypeParameters)):d.kind===188?[Ei(d.elementType)]:wt(d.elements,Ei):et;Y_()?n.resolvedTypeArguments=n.mapper?yy(_,n.mapper):_:(n.resolvedTypeArguments=((c=n.target.localTypeParameters)==null?void 0:c.map(()=>_t))||et,Je(n.node||C,n.target.symbol?f.Type_arguments_for_0_circularly_reference_themselves:f.Tuple_type_arguments_circularly_reference_themselves,n.target.symbol&&bi(n.target.symbol)))}return n.resolvedTypeArguments}function gy(n){return Me(n.target.typeParameters)}function K8e(n,a){const c=el(rs(a)),d=c.localTypeParameters;if(d){const _=Me(n.typeArguments),y=Gh(d),x=lr(n);if(!(!pe&&x)&&(_<y||_>d.length)){const H=x&&Kv(n)&&!vI(n.parent),re=y===d.length?H?f.Expected_0_type_arguments_provide_these_with_an_extends_tag:f.Generic_type_0_requires_1_type_argument_s:H?f.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:f.Generic_type_0_requires_between_1_and_2_type_arguments,be=Un(c,void 0,2);if(Je(n,re,be,y,d.length),!x)return _t}if(n.kind===183&&m6e(n,Me(n.typeArguments)!==d.length))return Vge(c,n,void 0);const z=So(c.outerTypeParameters,Fb(A9(n),d,y,x));return hy(c,z)}return q1(n,a)?c:_t}function RN(n,a,c,d){const _=el(n);if(_===fn){const H=QF.get(n.escapedName);if(H!==void 0&&a&&a.length===1)return H===4?jge(a[0]):yx(n,a[0])}const y=Xi(n),x=y.typeParameters,k=mm(a)+vx(c,d);let z=y.instantiations.get(k);return z||y.instantiations.set(k,z=X6e(_,kp(x,Fb(a,x,Gh(x),lr(n.valueDeclaration))),c,d)),z}function Nct(n,a){if(xl(a)&1048576){const _=A9(n),y=vx(a,_);let x=Fe.get(y);return x||(x=cc(1,"error",void 0,`alias ${y}`),x.aliasSymbol=a,x.aliasTypeArguments=_,Fe.set(y,x)),x}const c=el(a),d=Xi(a).typeParameters;if(d){const _=Me(n.typeArguments),y=Gh(d);if(_<y||_>d.length)return Je(n,y===d.length?f.Generic_type_0_requires_1_type_argument_s:f.Generic_type_0_requires_between_1_and_2_type_arguments,bi(a),y,d.length),_t;const x=bx(n);let k=x&&(X8e(a)||!X8e(x))?x:void 0,z;if(k)z=PN(k);else if(O4(n)){const H=DN(n,2097152,!0);if(H&&H!==ft){const re=Fc(H);re&&re.flags&524288&&(k=re,z=A9(n)||(d?[]:void 0))}}return RN(a,A9(n),k,z)}return q1(n,a)?c:_t}function X8e(n){var a;const c=(a=n.declarations)==null?void 0:a.find(QL);return!!(c&&Gp(c))}function Cct(n){switch(n.kind){case 183:return n.typeName;case 233:const a=n.expression;if(Gl(a))return a}}function Y8e(n){return n.parent?`${Y8e(n.parent)}.${n.escapedName}`:n.escapedName}function QZ(n){const c=(n.kind===166?n.right:n.kind===211?n.name:n).escapedText;if(c){const d=n.kind===166?QZ(n.left):n.kind===211?QZ(n.expression):void 0,_=d?`${Y8e(d)}.${c}`:c;let y=le.get(_);return y||(le.set(_,y=Xa(524288,c,1048576)),y.parent=d,y.links.declaredType=Vt),y}return ft}function DN(n,a,c){const d=Cct(n);if(!d)return ft;const _=Hs(d,a,c);return _&&_!==ft?_:c?ft:QZ(d)}function ZZ(n,a){if(a===ft)return _t;if(a=w2(a)||a,a.flags&96)return K8e(n,a);if(a.flags&524288)return Nct(n,a);const c=f8e(a);if(c)return q1(n,a)?Ed(c):_t;if(a.flags&111551&&eee(n)){const d=Pct(n,a);return d||(DN(n,788968),dr(a))}return _t}function Pct(n,a){const c=ei(n);if(!c.resolvedJSDocType){const d=dr(a);let _=d;if(a.valueDeclaration){const y=n.kind===205&&n.qualifier;d.symbol&&d.symbol!==a&&y&&(_=ZZ(n,d.symbol))}c.resolvedJSDocType=_}return c.resolvedJSDocType}function jge(n){return Uge(n)?$8e(n,_n):n}function Uge(n){return!!(n.flags&3145728&&bt(n.types,Uge)||n.flags&33554432&&!H2(n)&&Uge(n.baseType)||n.flags&524288&&!Uh(n)||n.flags&432275456&&!YT(n))}function H2(n){return!!(n.flags&33554432&&n.constraint.flags&2)}function Hge(n,a){return a.flags&3||a===n||n.flags&1?n:$8e(n,a)}function $8e(n,a){const c=`${bd(n)}>${bd(a)}`,d=Io.get(c);if(d)return d;const _=Sg(33554432);return _.baseType=n,_.constraint=a,Io.set(c,_),_}function qge(n){return H2(n)?n.baseType:ba([n.constraint,n.baseType])}function Q8e(n){return n.kind===189&&n.elements.length===1}function Z8e(n,a,c){return Q8e(a)&&Q8e(c)?Z8e(n,a.elements[0],c.elements[0]):Gb(Ei(a))===Gb(n)?Ei(c):void 0}function Mct(n,a){let c,d=!0;for(;a&&!qi(a)&&a.kind!==327;){const _=a.parent;if(_.kind===169&&(d=!d),(d||n.flags&8650752)&&_.kind===194&&a===_.trueType){const y=Z8e(n,_.checkType,_.extendsType);y&&(c=xn(c,y))}else if(n.flags&262144&&_.kind===200&&!_.nameType&&a===_.type){const y=Ei(_);if(m_(y)===Gb(n)){const x=W8(y);if(x){const k=Ld(x);k&&up(k,hE)&&(c=xn(c,ti([Tt,cs])))}}}a=_}return c?Hge(n,ba(c)):n}function eee(n){return!!(n.flags&16777216)&&(n.kind===183||n.kind===205)}function q1(n,a){return n.typeArguments?(Je(n,f.Type_0_is_not_generic,a?bi(a):n.typeName?Rs(n.typeName):KF),!1):!0}function e6e(n){if(Ve(n.typeName)){const a=n.typeArguments;switch(n.typeName.escapedText){case"String":return q1(n),ke;case"Number":return q1(n),Tt;case"Boolean":return q1(n),Ni;case"Void":return q1(n),ir;case"Undefined":return q1(n),Oe;case"Null":return q1(n),me;case"Function":case"function":return q1(n),Wt;case"array":return(!a||!a.length)&&!pe?ec:void 0;case"promise":return(!a||!a.length)&&!pe?_B(j):void 0;case"Object":if(a&&a.length===2){if(u3(n)){const c=Ei(a[0]),d=Ei(a[1]),_=c===ke||c===Tt?[Vh(c,d,!1)]:et;return Ls(void 0,K,et,et,_)}return j}return q1(n),pe?void 0:j}}}function Lct(n){const a=Ei(n.type);return Y?V9(a,65536):a}function Jge(n){const a=ei(n);if(!a.resolvedType){if(Og(n)&&bS(n.parent))return a.resolvedSymbol=ft,a.resolvedType=nc(n.parent.expression);let c,d;const _=788968;eee(n)&&(d=e6e(n),d||(c=DN(n,_,!0),c===ft?c=DN(n,_|111551):DN(n,_),d=ZZ(n,c))),d||(c=DN(n,_),d=ZZ(n,c)),a.resolvedSymbol=c,a.resolvedType=d}return a.resolvedType}function A9(n){return wt(n.typeArguments,Ei)}function t6e(n){const a=ei(n);if(!a.resolvedType){const c=EWe(n);a.resolvedType=Ed(Xp(c))}return a.resolvedType}function n6e(n,a){function c(_){const y=_.declarations;if(y)for(const x of y)switch(x.kind){case 263:case 264:case 266:return x}}if(!n)return a?ko:La;const d=el(n);return d.flags&524288?Me(d.typeParameters)!==a?(Je(c(n),f.Global_type_0_must_have_1_type_parameter_s,Sl(n),a),a?ko:La):d:(Je(c(n),f.Global_type_0_must_be_a_class_or_interface_type,Sl(n)),a?ko:La)}function Kge(n,a){return q2(n,111551,a?f.Cannot_find_global_value_0:void 0)}function Xge(n,a){return q2(n,788968,a?f.Cannot_find_global_type_0:void 0)}function tee(n,a,c){const d=q2(n,788968,c?f.Cannot_find_global_type_0:void 0);if(d&&(el(d),Me(Xi(d).typeParameters)!==a)){const _=d.declarations&&An(d.declarations,Nm);Je(_,f.Global_type_0_must_have_1_type_parameter_s,Sl(d),a);return}return d}function q2(n,a,c){return bl(void 0,n,a,c,n,!1,!1,!1)}function tc(n,a,c){const d=Xge(n,c);return d||c?n6e(d,a):void 0}function kct(){return Ch||(Ch=tc("TypedPropertyDescriptor",1,!0)||ko)}function wct(){return rr||(rr=tc("TemplateStringsArray",0,!0)||La)}function r6e(){return oi||(oi=tc("ImportMeta",0,!0)||La)}function i6e(){if(!$r){const n=Xa(0,"ImportMetaExpression"),a=r6e(),c=Xa(4,"meta",8);c.parent=n,c.links.type=a;const d=ua([c]);n.members=d,$r=Ls(n,d,et,et,et)}return $r}function o6e(n){return io||(io=tc("ImportCallOptions",0,n))||La}function Yge(n){return Fa||(Fa=tc("ImportAttributes",0,n))||La}function a6e(n){return Cd||(Cd=Kge("Symbol",n))}function Oct(n){return Of||(Of=Xge("SymbolConstructor",n))}function s6e(){return U_||(U_=tc("Symbol",0,!1))||La}function I9(n){return $g||($g=tc("Promise",1,n))||ko}function l6e(n){return Bu||(Bu=tc("PromiseLike",1,n))||ko}function $ge(n){return Qg||(Qg=Kge("Promise",n))}function Wct(n){return xp||(xp=tc("PromiseConstructorLike",0,n))||La}function nee(n){return F||(F=tc("AsyncIterable",1,n))||ko}function Fct(n){return Te||(Te=tc("AsyncIterator",3,n))||ko}function zct(n){return st||(st=tc("AsyncIterableIterator",1,n))||ko}function Bct(n){return Jt||(Jt=tc("AsyncGenerator",3,n))||ko}function Qge(n){return _g||(_g=tc("Iterable",1,n))||ko}function Gct(n){return Ud||(Ud=tc("Iterator",3,n))||ko}function Vct(n){return te||(te=tc("IterableIterator",1,n))||ko}function jct(n){return ct||(ct=tc("Generator",3,n))||ko}function Uct(n){return Ft||(Ft=tc("IteratorYieldResult",1,n))||ko}function Hct(n){return jt||(jt=tc("IteratorReturnResult",1,n))||ko}function c6e(n){return za||(za=tc("Disposable",0,n))||La}function qct(n){return Ol||(Ol=tc("AsyncDisposable",0,n))||La}function u6e(n,a=0){const c=q2(n,788968,void 0);return c&&n6e(c,a)}function Jct(){return fu||(fu=tee("Extract",2,!0)||ft),fu===ft?void 0:fu}function Kct(){return Dc||(Dc=tee("Omit",2,!0)||ft),Dc===ft?void 0:Dc}function Zge(n){return Rp||(Rp=tee("Awaited",1,n)||(n?ft:void 0)),Rp===ft?void 0:Rp}function Xct(){return Hd||(Hd=tc("BigInt",0,!1))||La}function Yct(n){return km??(km=tc("ClassDecoratorContext",1,n))??ko}function $ct(n){return wm??(wm=tc("ClassMethodDecoratorContext",2,n))??ko}function Qct(n){return Ui??(Ui=tc("ClassGetterDecoratorContext",2,n))??ko}function Zct(n){return Zg??(Zg=tc("ClassSetterDecoratorContext",2,n))??ko}function eut(n){return ay??(ay=tc("ClassAccessorDecoratorContext",2,n))??ko}function tut(n){return Om??(Om=tc("ClassAccessorDecoratorTarget",2,n))??ko}function nut(n){return x1??(x1=tc("ClassAccessorDecoratorResult",2,n))??ko}function rut(n){return R1??(R1=tc("ClassFieldDecoratorContext",2,n))??ko}function iut(){return pb||(pb=Kge("NaN",!1))}function out(){return us||(us=tee("Record",2,!0)||ft),us===ft?void 0:us}function M8(n,a){return n!==ko?hy(n,a):La}function d6e(n){return M8(kct(),[n])}function p6e(n){return M8(Qge(!0),[n])}function Vu(n,a){return M8(a?na:Qo,[n])}function eve(n){switch(n.kind){case 190:return 2;case 191:return f6e(n);case 202:return n.questionToken?2:n.dotDotDotToken?f6e(n):1;default:return 1}}function f6e(n){return C9(n.type)?4:8}function aut(n){const a=cut(n.parent);if(C9(n))return a?na:Qo;const d=wt(n.elements,eve);return tve(d,a,wt(n.elements,sut))}function sut(n){return qR(n)||Ao(n)?n:void 0}function m6e(n,a){return!!bx(n)||_6e(n)&&(n.kind===188?zb(n.elementType):n.kind===189?bt(n.elements,zb):a||bt(n.typeArguments,zb))}function _6e(n){const a=n.parent;switch(a.kind){case 196:case 202:case 183:case 192:case 193:case 199:case 194:case 198:case 188:case 189:return _6e(a);case 265:return!0}return!1}function zb(n){switch(n.kind){case 183:return eee(n)||!!(DN(n,788968).flags&524288);case 186:return!0;case 198:return n.operator!==158&&zb(n.type);case 196:case 190:case 202:case 323:case 321:case 322:case 316:return zb(n.type);case 191:return n.type.kind!==188||zb(n.type.elementType);case 192:case 193:return bt(n.types,zb);case 199:return zb(n.objectType)||zb(n.indexType);case 194:return zb(n.checkType)||zb(n.extendsType)||zb(n.trueType)||zb(n.falseType)}return!1}function lut(n){const a=ei(n);if(!a.resolvedType){const c=aut(n);if(c===ko)a.resolvedType=La;else if(!(n.kind===189&&bt(n.elements,d=>!!(eve(d)&8)))&&m6e(n))a.resolvedType=n.kind===189&&n.elements.length===0?c:Vge(c,n,void 0);else{const d=n.kind===188?[Ei(n.elementType)]:wt(n.elements,Ei);a.resolvedType=nve(c,d)}}return a.resolvedType}function cut(n){return VS(n)&&n.operator===148}function jh(n,a,c=!1,d=[]){const _=tve(a||wt(n,y=>1),c,d);return _===ko?La:n.length?nve(_,n):_}function tve(n,a,c){if(n.length===1&&n[0]&4)return a?na:Qo;const d=wt(n,y=>y&1?"#":y&2?"?":y&4?".":"*").join()+(a?"R":"")+(bt(c,y=>!!y)?","+wt(c,y=>y?as(y):"_").join(","):"");let _=No.get(d);return _||No.set(d,_=uut(n,a,c)),_}function uut(n,a,c){const d=n.length,_=au(n,be=>!!(be&9));let y;const x=[];let k=0;if(d){y=new Array(d);for(let be=0;be<d;be++){const ge=y[be]=yf(),Ke=n[be];if(k|=Ke,!(k&12)){const gt=Xa(4|(Ke&2?16777216:0),""+be,a?8:0);gt.links.tupleLabelDeclaration=c==null?void 0:c[be],gt.links.type=ge,x.push(gt)}}}const z=x.length,H=Xa(4,"length",a?8:0);if(k&12)H.links.type=Tt;else{const be=[];for(let ge=_;ge<=d;ge++)be.push(g_(ge));H.links.type=ti(be)}x.push(H);const re=zf(12);return re.typeParameters=y,re.outerTypeParameters=void 0,re.localTypeParameters=y,re.instantiations=new Map,re.instantiations.set(mm(re.typeParameters),re),re.target=re,re.resolvedTypeArguments=re.typeParameters,re.thisType=yf(),re.thisType.isThisType=!0,re.thisType.constraint=re,re.declaredProperties=x,re.declaredCallSignatures=et,re.declaredConstructSignatures=et,re.declaredIndexInfos=et,re.elementFlags=n,re.minLength=_,re.fixedLength=z,re.hasRestElement=!!(k&12),re.combinedFlags=k,re.readonly=a,re.labeledElementDeclarations=c,re}function nve(n,a){return n.objectFlags&8?rve(n,a):hy(n,a)}function rve(n,a){var c,d,_,y;if(!(n.combinedFlags&14))return hy(n,a);if(n.combinedFlags&8){const gt=Gr(a,(Dt,an)=>!!(n.elementFlags[an]&8&&Dt.flags&1179648));if(gt>=0)return R9(wt(a,(Dt,an)=>n.elementFlags[an]&8?Dt:_n))?pl(a[gt],Dt=>rve(n,_G(a,gt,Dt))):_t}const x=[],k=[],z=[];let H=-1,re=-1,be=-1;for(let gt=0;gt<a.length;gt++){const Dt=a[gt],an=n.elementFlags[gt];if(an&8)if(Dt.flags&1)Ke(Dt,4,(c=n.labeledElementDeclarations)==null?void 0:c[gt]);else if(Dt.flags&58982400||Kd(Dt))Ke(Dt,8,(d=n.labeledElementDeclarations)==null?void 0:d[gt]);else if(Ba(Dt)){const cn=J1(Dt);if(cn.length+x.length>=1e4)return Je(C,tg(C)?f.Type_produces_a_tuple_type_that_is_too_large_to_represent:f.Expression_produces_a_tuple_type_that_is_too_large_to_represent),_t;Ue(cn,(ar,On)=>{var ln;return Ke(ar,Dt.target.elementFlags[On],(ln=Dt.target.labeledElementDeclarations)==null?void 0:ln[On])})}else Ke(by(Dt)&&dE(Dt,Tt)||_t,4,(_=n.labeledElementDeclarations)==null?void 0:_[gt]);else Ke(Dt,an,(y=n.labeledElementDeclarations)==null?void 0:y[gt])}for(let gt=0;gt<H;gt++)k[gt]&2&&(k[gt]=1);re>=0&&re<be&&(x[re]=ti(eo(x.slice(re,be+1),(gt,Dt)=>k[re+Dt]&8?Lp(gt,Tt):gt)),x.splice(re+1,be-re),k.splice(re+1,be-re),z.splice(re+1,be-re));const ge=tve(k,n.readonly,z);return ge===ko?La:k.length?hy(ge,x):ge;function Ke(gt,Dt,an){Dt&1&&(H=k.length),Dt&4&&re<0&&(re=k.length),Dt&6&&(be=k.length),x.push(Dt&2?cp(gt,!0):gt),k.push(Dt),z.push(an)}}function J2(n,a,c=0){const d=n.target,_=gy(n)-c;return a>d.fixedLength?Ydt(n)||jh(et):jh(Js(n).slice(a,_),d.elementFlags.slice(a,_),!1,d.labeledElementDeclarations&&d.labeledElementDeclarations.slice(a,_))}function h6e(n){return ti(xn(Rne(n.target.fixedLength,a=>Xd(""+a)),Q_(n.target.readonly?na:Qo)))}function dut(n,a){const c=Gr(n.elementFlags,d=>!(d&a));return c>=0?c:n.elementFlags.length}function L8(n,a){return n.elementFlags.length-Bi(n.elementFlags,c=>!(c&a))-1}function ive(n){return n.fixedLength+L8(n,3)}function J1(n){const a=Js(n),c=gy(n);return a.length===c?a:a.slice(0,c)}function put(n){return cp(Ei(n.type),!0)}function bd(n){return n.id}function hv(n,a){return Nv(n,a,bd,rl)>=0}function x9(n,a){const c=Nv(n,a,bd,rl);return c<0?(n.splice(~c,0,a),!0):!1}function fut(n,a,c){const d=c.flags;if(!(d&131072))if(a|=d&473694207,d&465829888&&(a|=33554432),d&2097152&&Wr(c)&67108864&&(a|=536870912),c===Rt&&(a|=8388608),!Y&&d&98304)Wr(c)&65536||(a|=4194304);else{const _=n.length,y=_&&c.id>n[_-1].id?~_:Nv(n,c,bd,rl);y<0&&n.splice(~y,0,c)}return a}function g6e(n,a,c){let d;for(const _ of c)_!==d&&(a=_.flags&1048576?g6e(n,a|(yut(_)?1048576:0),_.types):fut(n,a,_),d=_);return a}function mut(n,a){var c;if(n.length<2)return n;const d=mm(n),_=ma.get(d);if(_)return _;const y=a&&bt(n,H=>!!(H.flags&524288)&&!Kd(H)&&xve(__(H))),x=n.length;let k=x,z=0;for(;k>0;){k--;const H=n[k];if(y||H.flags&469499904){if(H.flags&262144&&_v(H).flags&1048576){Z_(H,ti(wt(n,ge=>ge===H?jr:ge)),Wf)&&Dy(n,k);continue}const re=H.flags&61603840?An(gs(H),ge=>v_(dr(ge))):void 0,be=re&&Ed(dr(re));for(const ge of n)if(H!==ge){if(z===1e5&&z/(x-k)*x>1e6){(c=sr)==null||c.instant(sr.Phase.CheckTypes,"removeSubtypes_DepthLimit",{typeIds:n.map(gt=>gt.id)}),Je(C,f.Expression_produces_a_union_type_that_is_too_complex_to_represent);return}if(z++,re&&ge.flags&61603840){const Ke=Xe(ge,re.escapedName);if(Ke&&v_(Ke)&&Ed(Ke)!==be)continue}if(Z_(H,ge,Wf)&&(!(Wr(my(H))&1)||!(Wr(my(ge))&1)||_E(H,ge))){Dy(n,k);break}}}}return ma.set(d,n),n}function _ut(n,a,c){let d=n.length;for(;d>0;){d--;const _=n[d],y=_.flags;(y&402653312&&a&4||y&256&&a&8||y&2048&&a&64||y&8192&&a&4096||c&&y&32768&&a&16384||X1(_)&&hv(n,_.regularType))&&Dy(n,d)}}function hut(n){const a=nr(n,YT);if(a.length){let c=n.length;for(;c>0;){c--;const d=n[c];d.flags&128&&bt(a,_=>gut(d,_))&&Dy(n,c)}}}function gut(n,a){return a.flags&134217728?Lee(n,a):Mee(n,a)}function vut(n){const a=[];for(const c of n)if(c.flags&2097152&&Wr(c)&67108864){const d=c.types[0].flags&8650752?0:1;Tf(a,c.types[d])}for(const c of a){const d=[];for(const y of n)if(y.flags&2097152&&Wr(y)&67108864){const x=y.types[0].flags&8650752?0:1;y.types[x]===c&&x9(d,y.types[1-x])}const _=Gu(c);if(up(_,y=>hv(d,y))){let y=n.length;for(;y>0;){y--;const x=n[y];if(x.flags&2097152&&Wr(x)&67108864){const k=x.types[0].flags&8650752?0:1;x.types[k]===c&&hv(d,x.types[1-k])&&Dy(n,y)}}x9(n,c)}}}function yut(n){return!!(n.flags&1048576&&(n.aliasSymbol||n.origin))}function v6e(n,a){for(const c of a)if(c.flags&1048576){const d=c.origin;c.aliasSymbol||d&&!(d.flags&1048576)?Tf(n,c):d&&d.flags&1048576&&v6e(n,d.types)}}function ove(n,a){const c=dx(n);return c.types=a,c}function ti(n,a=1,c,d,_){if(n.length===0)return jr;if(n.length===1)return n[0];if(n.length===2&&!_&&(n[0].flags&1048576||n[1].flags&1048576)){const y=a===0?"N":a===2?"S":"L",x=n[0].id<n[1].id?0:1,k=n[x].id+y+n[1-x].id+vx(c,d);let z=Di.get(k);return z||(z=y6e(n,a,c,d,void 0),Di.set(k,z)),z}return y6e(n,a,c,d,_)}function y6e(n,a,c,d,_){let y=[];const x=g6e(y,0,n);if(a!==0){if(x&3)return x&1?x&8388608?Rt:j:x&65536||hv(y,_n)?_n:q;if(x&32768&&y.length>=2&&y[0]===Oe&&y[1]===L&&Dy(y,1),(x&402664352||x&16384&&x&32768)&&_ut(y,x,!!(a&2)),x&128&&x&402653184&&hut(y),x&536870912&&vut(y),a===2&&(y=mut(y,!!(x&524288)),!y))return _t;if(y.length===0)return x&65536?x&4194304?me:Ge:x&32768?x&4194304?Oe:Lt:jr}if(!_&&x&1048576){const z=[];v6e(z,n);const H=[];for(const be of y)bt(z,ge=>hv(ge.types,be))||H.push(be);if(!c&&z.length===1&&H.length===0)return z[0];if(od(z,(be,ge)=>be+ge.types.length,0)+H.length===y.length){for(const be of z)x9(H,be);_=ove(1048576,H)}}const k=(x&36323331?0:32768)|(x&2097152?16777216:0);return sve(y,k,c,d,_)}function but(n,a){let c;const d=[];for(const y of n){const x=jf(y);if(x){if(x.kind!==0&&x.kind!==1||c&&!ave(c,x))return;c=x,d.push(x.type)}else{const k=a!==2097152?ps(y):void 0;if(k!==en&&k!==bn)return}}if(!c)return;const _=V8e(d,a);return T9(c.kind,c.parameterName,c.parameterIndex,_)}function ave(n,a){return n.kind===a.kind&&n.parameterIndex===a.parameterIndex}function sve(n,a,c,d,_){if(n.length===0)return jr;if(n.length===1)return n[0];const x=(_?_.flags&1048576?`|${mm(_.types)}`:_.flags&2097152?`&${mm(_.types)}`:`#${_.type.id}|${mm(n)}`:mm(n))+vx(c,d);let k=Mn.get(x);return k||(k=Sg(1048576),k.objectFlags=a|$Z(n,98304),k.types=n,k.origin=_,k.aliasSymbol=c,k.aliasTypeArguments=d,n.length===2&&n[0].flags&512&&n[1].flags&512&&(k.flags|=16,k.intrinsicName="boolean"),Mn.set(x,k)),k}function Eut(n){const a=ei(n);if(!a.resolvedType){const c=bx(n);a.resolvedType=ti(wt(n.types,Ei),1,c,PN(c))}return a.resolvedType}function Sut(n,a,c){const d=c.flags;return d&2097152?b6e(n,a,c.types):(Uh(c)?a&16777216||(a|=16777216,n.set(c.id.toString(),c)):(d&3?c===Rt&&(a|=8388608):(Y||!(d&98304))&&(c===L&&(a|=262144,c=Oe),n.has(c.id.toString())||(c.flags&109472&&a&109472&&(a|=67108864),n.set(c.id.toString(),c))),a|=d&473694207),a)}function b6e(n,a,c){for(const d of c)a=Sut(n,a,Ed(d));return a}function Tut(n,a){let c=n.length;for(;c>0;){c--;const d=n[c];(d.flags&4&&a&402653312||d.flags&8&&a&256||d.flags&64&&a&2048||d.flags&4096&&a&8192||d.flags&16384&&a&32768||Uh(d)&&a&470302716)&&Dy(n,c)}}function Aut(n,a){for(const c of n)if(!hv(c.types,a)){const d=a.flags&128?ke:a.flags&288?Tt:a.flags&2048?kt:a.flags&8192?Ai:void 0;if(!d||!hv(c.types,d))return!1}return!0}function Iut(n){let a=n.length;const c=nr(n,d=>!!(d.flags&128));for(;a>0;){a--;const d=n[a];if(d.flags&402653184){for(const _ of c)if(jb(_,d)){Dy(n,a);break}else if(YT(d))return!0}}return!1}function E6e(n,a){for(let c=0;c<n.length;c++)n[c]=dc(n[c],d=>!(d.flags&a))}function xut(n){let a;const c=Gr(n,x=>!!(Wr(x)&32768));if(c<0)return!1;let d=c+1;for(;d<n.length;){const x=n[d];Wr(x)&32768?((a||(a=[n[c]])).push(x),Dy(n,d)):d++}if(!a)return!1;const _=[],y=[];for(const x of a)for(const k of x.types)x9(_,k)&&Aut(a,k)&&x9(y,k);return n[c]=sve(y,32768),!0}function Rut(n,a,c,d){const _=Sg(2097152);return _.objectFlags=a|$Z(n,98304),_.types=n,_.aliasSymbol=c,_.aliasTypeArguments=d,_}function ba(n,a,c,d){const _=new Map,y=b6e(_,0,n),x=zo(_.values());let k=0;if(y&131072)return Nr(x,vo)?vo:jr;if(Y&&y&98304&&y&84410368||y&67108864&&y&402783228||y&402653316&&y&67238776||y&296&&y&469891796||y&2112&&y&469889980||y&12288&&y&469879804||y&49152&&y&469842940||y&402653184&&y&128&&Iut(x))return jr;if(y&1)return y&8388608?Rt:j;if(!Y&&y&98304)return y&16777216?jr:y&32768?Oe:me;if((y&4&&y&402653312||y&8&&y&256||y&64&&y&2048||y&4096&&y&8192||y&16384&&y&32768||y&16777216&&y&470302716)&&(d||Tut(x,y)),y&262144&&(x[x.indexOf(Oe)]=L),x.length===0)return _n;if(x.length===1)return x[0];if(x.length===2){const re=x[0].flags&8650752?0:1,be=x[re],ge=x[1-re];if(be.flags&8650752&&(ge.flags&469893116&&!M6e(ge)||y&16777216)){const Ke=Gu(be);if(Ke&&up(Ke,gt=>!!(gt.flags&469893116)||Uh(gt))){if(L9(Ke,ge))return be;if(!(Ke.flags&1048576&&Um(Ke,gt=>L9(gt,ge)))&&!L9(ge,Ke))return jr;k=67108864}}}const z=mm(x)+vx(a,c);let H=Ar.get(z);if(!H){if(y&1048576)if(xut(x))H=ba(x,a,c);else if(Zn(x,re=>!!(re.flags&1048576&&re.types[0].flags&32768))){const re=bt(x,U8)?L:Oe;E6e(x,32768),H=ti([ba(x),re],1,a,c)}else if(Zn(x,re=>!!(re.flags&1048576&&(re.types[0].flags&65536||re.types[1].flags&65536))))E6e(x,65536),H=ti([ba(x),me],1,a,c);else if(x.length>=4){const re=Math.floor(x.length/2);H=ba([ba(x.slice(0,re)),ba(x.slice(re))],a,c)}else{if(!R9(x))return _t;const re=Dut(x),be=bt(re,ge=>!!(ge.flags&2097152))&&lve(re)>lve(x)?ove(2097152,x):void 0;H=ti(re,1,a,c,be)}else H=Rut(x,k,a,c);Ar.set(z,H)}return H}function S6e(n){return od(n,(a,c)=>c.flags&1048576?a*c.types.length:c.flags&131072?0:a,1)}function R9(n){var a;const c=S6e(n);return c>=1e5?((a=sr)==null||a.instant(sr.Phase.CheckTypes,"checkCrossProductUnion_DepthLimit",{typeIds:n.map(d=>d.id),size:c}),Je(C,f.Expression_produces_a_union_type_that_is_too_complex_to_represent),!1):!0}function Dut(n){const a=S6e(n),c=[];for(let d=0;d<a;d++){const _=n.slice();let y=d;for(let k=n.length-1;k>=0;k--)if(n[k].flags&1048576){const z=n[k].types,H=z.length;_[k]=z[y%H],y=Math.floor(y/H)}const x=ba(_);x.flags&131072||c.push(x)}return c}function T6e(n){return!(n.flags&3145728)||n.aliasSymbol?1:n.flags&1048576&&n.origin?T6e(n.origin):lve(n.types)}function lve(n){return od(n,(a,c)=>a+T6e(c),0)}function Nut(n){const a=ei(n);if(!a.resolvedType){const c=bx(n),d=wt(n.types,Ei),_=d.length===2?d.indexOf(lc):-1,y=_>=0?d[1-_]:_n,x=!!(y.flags&76||y.flags&134217728&&YT(y));a.resolvedType=ba(d,c,PN(c),x)}return a.resolvedType}function A6e(n,a){const c=Sg(4194304);return c.type=n,c.indexFlags=a,c}function Cut(n){const a=dx(4194304);return a.type=n,a}function I6e(n,a){return a&1?n.resolvedStringIndexType||(n.resolvedStringIndexType=A6e(n,1)):n.resolvedIndexType||(n.resolvedIndexType=A6e(n,0))}function x6e(n,a){const c=m_(n),d=Ef(n),_=_y(n.target||n);if(!_&&!(a&2))return d;const y=[];if(QT(d)){if(AN(n))return I6e(n,a);oA(d,k)}else if(AN(n)){const z=kd(UT(n));Tge(z,8576,!!(a&1),k)}else oA(v9(d),k);const x=a&2?dc(ti(y),z=>!(z.flags&5)):ti(y);if(x.flags&1048576&&d.flags&1048576&&mm(x.types)===mm(d.types))return d;return x;function k(z){const H=_?so(_,O8(n.mapper,c,z)):z;y.push(H===ke?xo:H)}}function Put(n){const a=m_(n);return c(_y(n)||a);function c(d){return d.flags&470810623?!0:d.flags&16777216?d.root.isDistributive&&d.checkType===a:d.flags&137363456?Zn(d.types,c):d.flags&8388608?c(d.objectType)&&c(d.indexType):d.flags&33554432?c(d.baseType)&&c(d.constraint):d.flags&268435456?c(d.type):!1}}function vy(n){if(Ji(n))return jr;if(vp(n))return Ed(mo(n));if(Za(n))return Ed(Rg(n));const a=PS(n);return a!==void 0?Xd(Vi(a)):yt(n)?Ed(mo(n)):jr}function NN(n,a,c){if(c||!(Df(n)&6)){let d=Xi(jZ(n)).nameType;if(!d){const _=Mo(n.valueDeclaration);d=n.escapedName==="default"?Xd("default"):_&&vy(_)||(lk(n)?void 0:Xd(Sl(n)))}if(d&&d.flags&a)return d}return jr}function R6e(n,a){return!!(n.flags&a||n.flags&2097152&&bt(n.types,c=>R6e(c,a)))}function Mut(n,a,c){const d=c&&(Wr(n)&7||n.aliasSymbol)?Cut(n):void 0,_=wt(gs(n),x=>NN(x,a)),y=wt(yd(n),x=>x!==Ur&&R6e(x.keyType,a)?x.keyType===ke&&a&8?xo:x.keyType:jr);return ti(So(_,y),1,void 0,void 0,d)}function cve(n,a=0){return!!(n.flags&58982400||Hb(n)||Kd(n)&&(!Put(n)||HZ(n)===2)||n.flags&1048576&&!(a&4)&&Cge(n)||n.flags&2097152&&Cl(n,465829888)&&bt(n.types,Uh))}function Q_(n,a=He){return n=h_(n),H2(n)?jge(Q_(n.baseType,a)):cve(n,a)?I6e(n,a):n.flags&1048576?ba(wt(n.types,c=>Q_(c,a))):n.flags&2097152?ti(wt(n.types,c=>Q_(c,a))):Wr(n)&32?x6e(n,a):n===Rt?Rt:n.flags&2?jr:n.flags&131073?Fs:Mut(n,(a&2?128:402653316)|(a&1?0:12584),a===He)}function D6e(n){if(Le)return n;const a=Jct();return a?RN(a,[n,ke]):ke}function Lut(n){const a=D6e(Q_(n));return a.flags&131072?ke:a}function kut(n){const a=ei(n);if(!a.resolvedType)switch(n.operator){case 143:a.resolvedType=Q_(Ei(n.type));break;case 158:a.resolvedType=n.type.kind===155?gve(nk(n.parent)):_t;break;case 148:a.resolvedType=Ei(n.type);break;default:N.assertNever(n.operator)}return a.resolvedType}function wut(n){const a=ei(n);return a.resolvedType||(a.resolvedType=XT([n.head.text,...wt(n.templateSpans,c=>c.literal.text)],wt(n.templateSpans,c=>Ei(c.type)))),a.resolvedType}function XT(n,a){const c=Gr(a,H=>!!(H.flags&1179648));if(c>=0)return R9(a)?pl(a[c],H=>XT(n,_G(a,c,H))):_t;if(Nr(a,Rt))return Rt;const d=[],_=[];let y=n[0];if(!z(n,a))return ke;if(d.length===0)return Xd(y);if(_.push(y),Zn(_,H=>H==="")){if(Zn(d,H=>!!(H.flags&4)))return ke;if(d.length===1&&YT(d[0]))return d[0]}const x=`${mm(d)}|${wt(_,H=>H.length).join(",")}|${_.join("")}`;let k=hi.get(x);return k||hi.set(x,k=Wut(_,d)),k;function z(H,re){for(let be=0;be<re.length;be++){const ge=re[be];if(ge.flags&101248)y+=Out(ge)||"",y+=H[be+1];else if(ge.flags&134217728){if(y+=ge.texts[0],!z(ge.texts,ge.types))return!1;y+=H[be+1]}else if(QT(ge)||D9(ge))d.push(ge),_.push(y),y=H[be+1];else return!1}return!0}}function Out(n){return n.flags&128?n.value:n.flags&256?""+n.value:n.flags&2048?$E(n.value):n.flags&98816?n.intrinsicName:void 0}function Wut(n,a){const c=Sg(134217728);return c.texts=n,c.types=a,c}function yx(n,a){return a.flags&1179648?pl(a,c=>yx(n,c)):a.flags&128?Xd(N6e(n,a.value)):a.flags&134217728?XT(...Fut(n,a.texts,a.types)):a.flags&268435456&&n===a.symbol?a:a.flags&268435461||QT(a)?C6e(n,a):D9(a)?C6e(n,XT(["",""],[a])):a}function N6e(n,a){switch(QF.get(n.escapedName)){case 0:return a.toUpperCase();case 1:return a.toLowerCase();case 2:return a.charAt(0).toUpperCase()+a.slice(1);case 3:return a.charAt(0).toLowerCase()+a.slice(1)}return a}function Fut(n,a,c){switch(QF.get(n.escapedName)){case 0:return[a.map(d=>d.toUpperCase()),c.map(d=>yx(n,d))];case 1:return[a.map(d=>d.toLowerCase()),c.map(d=>yx(n,d))];case 2:return[a[0]===""?a:[a[0].charAt(0).toUpperCase()+a[0].slice(1),...a.slice(1)],a[0]===""?[yx(n,c[0]),...c.slice(1)]:c];case 3:return[a[0]===""?a:[a[0].charAt(0).toLowerCase()+a[0].slice(1),...a.slice(1)],a[0]===""?[yx(n,c[0]),...c.slice(1)]:c]}return[a,c]}function C6e(n,a){const c=`${Ta(n)},${bd(a)}`;let d=Qi.get(c);return d||Qi.set(c,d=zut(n,a)),d}function zut(n,a){const c=Tg(268435456,n);return c.type=a,c}function But(n,a,c,d,_){const y=Sg(8388608);return y.objectType=n,y.indexType=a,y.accessFlags=c,y.aliasSymbol=d,y.aliasTypeArguments=_,y}function k8(n){if(pe)return!1;if(Wr(n)&4096)return!0;if(n.flags&1048576)return Zn(n.types,k8);if(n.flags&2097152)return bt(n.types,k8);if(n.flags&465829888){const a=Rge(n);return a!==n&&k8(a)}return!1}function ree(n,a){return rm(n)?im(n):a&&oc(a)?PS(a):void 0}function uve(n,a){if(a.flags&8208){const c=Gn(n.parent,d=>!ws(d))||n.parent;return wE(c)?I_(c)&&Ve(n)&&z4e(c,n):Zn(a.declarations,d=>!ea(d)||cy(d))}return!0}function P6e(n,a,c,d,_,y){const x=_&&_.kind===212?_:void 0,k=_&&Ji(_)?void 0:ree(c,_);if(k!==void 0){if(y&256)return bE(a,k)||j;const H=ya(a,k);if(H){if(y&64&&_&&H.declarations&&hb(H)&&uve(_,H)){const be=(x==null?void 0:x.argumentExpression)??(jS(_)?_.indexType:_);uy(be,H.declarations,k)}if(x){if(aB(H,x,X3e(x.expression,a.symbol)),FWe(x,H,BA(x))){Je(x.argumentExpression,f.Cannot_assign_to_0_because_it_is_a_read_only_property,bi(H));return}if(y&8&&(ei(_).resolvedSymbol=H),V3e(x,H))return ot}const re=y&4?U1(H):dr(H);return x&&BA(x)!==1?Kb(x,re):_&&jS(_)&&U8(re)?ti([re,Oe]):re}if(up(a,Ba)&&cg(k)){const re=+k;if(_&&up(a,be=>!be.target.hasRestElement)&&!(y&16)){const be=dve(_);if(Ba(a)){if(re<0)return Je(be,f.A_tuple_type_cannot_be_indexed_with_a_negative_value),Oe;Je(be,f.Tuple_type_0_of_length_1_has_no_element_at_index_2,Un(a),gy(a),Vi(k))}else Je(be,f.Property_0_does_not_exist_on_type_1,Vi(k),Un(a))}if(re>=0)return z(xg(a,Tt)),y4e(a,re,y&1?L:void 0)}}if(!(c.flags&98304)&&xu(c,402665900)){if(a.flags&131073)return a;const H=D8(a,c)||xg(a,ke);if(H){if(y&2&&H.keyType!==Tt){x&&(y&4?Je(x,f.Type_0_is_generic_and_can_only_be_indexed_for_reading,Un(n)):Je(x,f.Type_0_cannot_be_used_to_index_type_1,Un(c),Un(n)));return}if(_&&H.keyType===ke&&!xu(c,12)){const re=dve(_);return Je(re,f.Type_0_cannot_be_used_as_an_index_type,Un(c)),y&1?ti([H.type,L]):H.type}return z(H),y&1&&!(a.symbol&&a.symbol.flags&384&&c.symbol&&c.flags&1024&&Pd(c.symbol)===a.symbol)?ti([H.type,L]):H.type}if(c.flags&131072)return jr;if(k8(a))return j;if(x&&!ute(a)){if(yE(a)){if(pe&&c.flags&384)return ts.add(wr(x,f.Property_0_does_not_exist_on_type_1,c.value,Un(a))),Oe;if(c.flags&12){const re=wt(a.properties,be=>dr(be));return ti(xn(re,Oe))}}if(a.symbol===at&&k!==void 0&&at.exports.has(k)&&at.exports.get(k).flags&418)Je(x,f.Property_0_does_not_exist_on_type_1,Vi(k),Un(a));else if(pe&&!V.suppressImplicitAnyIndexErrors&&!(y&128))if(k!==void 0&&q3e(k,a)){const re=Un(a);Je(x,f.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,k,re,re+"["+fc(x.argumentExpression)+"]")}else if(dE(a,Tt))Je(x.argumentExpression,f.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number);else{let re;if(k!==void 0&&(re=wye(k,a)))re!==void 0&&Je(x.argumentExpression,f.Property_0_does_not_exist_on_type_1_Did_you_mean_2,k,Un(a),re);else{const be=Fmt(a,x,c);if(be!==void 0)Je(x,f.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_Did_you_mean_to_call_1,Un(a),be);else{let ge;if(c.flags&1024)ge=jo(void 0,f.Property_0_does_not_exist_on_type_1,"["+Un(c)+"]",Un(a));else if(c.flags&8192){const Ke=qp(c.symbol,x);ge=jo(void 0,f.Property_0_does_not_exist_on_type_1,"["+Ke+"]",Un(a))}else c.flags&128||c.flags&256?ge=jo(void 0,f.Property_0_does_not_exist_on_type_1,c.value,Un(a)):c.flags&12&&(ge=jo(void 0,f.No_index_signature_with_a_parameter_of_type_0_was_found_on_type_1,Un(c),Un(a)));ge=jo(ge,f.Element_implicitly_has_an_any_type_because_expression_of_type_0_can_t_be_used_to_index_type_1,Un(d),Un(a)),ts.add(Fg(jn(x),x,ge))}}}return}}if(k8(a))return j;if(_){const H=dve(_);c.flags&384?Je(H,f.Property_0_does_not_exist_on_type_1,""+c.value,Un(a)):c.flags&12?Je(H,f.Type_0_has_no_matching_index_signature_for_type_1,Un(a),Un(c)):Je(H,f.Type_0_cannot_be_used_as_an_index_type,Un(c))}if(Nt(c))return c;return;function z(H){H&&H.isReadonly&&x&&(ig(x)||$j(x))&&Je(x,f.Index_signature_in_type_0_only_permits_reading,Un(a))}}function dve(n){return n.kind===212?n.argumentExpression:n.kind===199?n.indexType:n.kind===167?n.expression:n}function D9(n){if(n.flags&2097152){let a=!1;for(const c of n.types)if(c.flags&101248||D9(c))a=!0;else if(!(c.flags&524288))return!1;return a}return!!(n.flags&77)||YT(n)}function YT(n){return!!(n.flags&134217728)&&Zn(n.types,D9)||!!(n.flags&268435456)&&D9(n.type)}function M6e(n){return!!(n.flags&402653184)&&!YT(n)}function CN(n){return!!w8(n)}function $T(n){return!!(w8(n)&4194304)}function QT(n){return!!(w8(n)&8388608)}function w8(n){return n.flags&3145728?(n.objectFlags&2097152||(n.objectFlags|=2097152|od(n.types,(a,c)=>a|w8(c),0)),n.objectFlags&12582912):n.flags&33554432?(n.objectFlags&2097152||(n.objectFlags|=2097152|w8(n.baseType)|w8(n.constraint)),n.objectFlags&12582912):(n.flags&58982400||Kd(n)||Hb(n)?4194304:0)|(n.flags&63176704||M6e(n)?8388608:0)}function gv(n,a){return n.flags&8388608?Vut(n,a):n.flags&16777216?jut(n,a):n}function L6e(n,a,c){if(n.flags&1048576||n.flags&2097152&&!cve(n)){const d=wt(n.types,_=>gv(Lp(_,a),c));return n.flags&2097152||c?ba(d):ti(d)}}function Gut(n,a,c){if(a.flags&1048576){const d=wt(a.types,_=>gv(Lp(n,_),c));return c?ba(d):ti(d)}}function Vut(n,a){const c=a?"simplifiedForWriting":"simplifiedForReading";if(n[c])return n[c]===nu?n:n[c];n[c]=nu;const d=gv(n.objectType,a),_=gv(n.indexType,a),y=Gut(d,_,a);if(y)return n[c]=y;if(!(_.flags&465829888)){const x=L6e(d,_,a);if(x)return n[c]=x}if(Hb(d)&&_.flags&296){const x=Q2(d,_.flags&8?0:d.target.fixedLength,0,a);if(x)return n[c]=x}return Kd(d)&&HZ(d)!==2?n[c]=pl(iee(d,n.indexType),x=>gv(x,a)):n[c]=n}function jut(n,a){const c=n.checkType,d=n.extendsType,_=fE(n),y=mE(n);if(y.flags&131072&&Gb(_)===Gb(c)){if(c.flags&1||Ea(eA(c),eA(d)))return gv(_,a);if(k6e(c,d))return jr}else if(_.flags&131072&&Gb(y)===Gb(c)){if(!(c.flags&1)&&Ea(eA(c),eA(d)))return jr;if(c.flags&1||k6e(c,d))return gv(y,a)}return n}function k6e(n,a){return!!(ti([g9(n,a),jr]).flags&131072)}function iee(n,a){const c=kp([m_(n)],[a]),d=$1(n.mapper,c);return so(mv(n.target||n),d)}function Lp(n,a,c=0,d,_,y){return Bb(n,a,c,d,_,y)||(d?_t:_n)}function w6e(n,a){return up(n,c=>{if(c.flags&384){const d=im(c);if(cg(d)){const _=+d;return _>=0&&_<a}}return!1})}function Bb(n,a,c=0,d,_,y){if(n===Rt||a===Rt)return Rt;if(n=h_(n),i4e(n)&&!(a.flags&98304)&&xu(a,12)&&(a=ke),V.noUncheckedIndexedAccess&&c&32&&(c|=1),QT(a)||(d&&d.kind!==199?Hb(n)&&!w6e(a,ive(n.target)):$T(n)&&!(Ba(n)&&w6e(a,ive(n.target)))||Cge(n))){if(n.flags&3)return n;const k=c&1,z=n.id+","+a.id+","+k+vx(_,y);let H=li.get(z);return H||li.set(z,H=But(n,a,k,_,y)),H}const x=V2(n);if(a.flags&1048576&&!(a.flags&16)){const k=[];let z=!1;for(const H of a.types){const re=P6e(n,x,H,a,d,c|(z?128:0));if(re)k.push(re);else if(d)z=!0;else return}return z?void 0:c&4?ba(k,_,y):ti(k,1,_,y)}return P6e(n,x,a,a,d,c|8|64)}function O6e(n){const a=ei(n);if(!a.resolvedType){const c=Ei(n.objectType),d=Ei(n.indexType),_=bx(n);a.resolvedType=Lp(c,d,0,n,_,PN(_))}return a.resolvedType}function pve(n){const a=ei(n);if(!a.resolvedType){const c=zf(32,n.symbol);c.declaration=n,c.aliasSymbol=bx(n),c.aliasTypeArguments=PN(c.aliasSymbol),a.resolvedType=c,Ef(c)}return a.resolvedType}function Gb(n){return n.flags&33554432?Gb(n.baseType):n.flags&8388608&&(n.objectType.flags&33554432||n.indexType.flags&33554432)?Lp(Gb(n.objectType),Gb(n.indexType)):n}function W6e(n){return cI(n)&&Me(n.elements)>0&&!bt(n.elements,a=>tF(a)||nF(a)||qR(a)&&!!(a.questionToken||a.dotDotDotToken))}function F6e(n,a){return CN(n)||a&&Ba(n)&&bt(J1(n),CN)}function fve(n,a,c,d,_){let y,x,k=0;for(;;){if(k===1e3)return Je(C,f.Type_instantiation_is_excessively_deep_and_possibly_infinite),_t;const H=so(Gb(n.checkType),a),re=so(n.extendsType,a);if(H===_t||re===_t)return _t;if(H===Rt||re===Rt)return Rt;const be=rk(n.node.checkType),ge=rk(n.node.extendsType),Ke=W6e(be)&&W6e(ge)&&Me(be.elements)===Me(ge.elements),gt=F6e(H,Ke);let Dt;if(n.inferTypeParameters){const cn=q8(n.inferTypeParameters,void 0,0);a&&(cn.nonFixingMapper=$1(cn.nonFixingMapper,a)),gt||Sv(cn.inferences,H,re,1536),Dt=a?$1(cn.mapper,a):cn.mapper}const an=Dt?so(n.extendsType,Dt):re;if(!gt&&!F6e(an,Ke)){if(!(an.flags&3)&&(H.flags&1||!Ea(F8(H),F8(an)))){(H.flags&1||c&&!(an.flags&131072)&&Um(F8(an),ar=>Ea(ar,F8(H))))&&(x||(x=[])).push(so(Ei(n.node.trueType),Dt||a));const cn=Ei(n.node.falseType);if(cn.flags&16777216){const ar=cn.root;if(ar.node.parent===n.node&&(!ar.isDistributive||ar.checkType===n.checkType)){n=ar;continue}if(z(cn,a))continue}y=so(cn,a);break}if(an.flags&3||Ea(eA(H),eA(an))){const cn=Ei(n.node.trueType),ar=Dt||a;if(z(cn,ar))continue;y=so(cn,ar);break}}y=Sg(16777216),y.root=n,y.checkType=so(n.checkType,a),y.extendsType=so(n.extendsType,a),y.mapper=a,y.combinedMapper=Dt,y.aliasSymbol=d||n.aliasSymbol,y.aliasTypeArguments=d?_:yy(n.aliasTypeArguments,a);break}return x?ti(xn(x,y)):y;function z(H,re){if(H.flags&16777216&&re){const be=H.root;if(be.outerTypeParameters){const ge=$1(H.mapper,re),Ke=wt(be.outerTypeParameters,an=>Vb(an,ge)),gt=kp(be.outerTypeParameters,Ke),Dt=be.isDistributive?Vb(be.checkType,gt):void 0;if(!Dt||Dt===be.checkType||!(Dt.flags&1179648))return n=be,a=gt,d=void 0,_=void 0,be.aliasSymbol&&k++,!0}}return!1}}function fE(n){return n.resolvedTrueType||(n.resolvedTrueType=so(Ei(n.root.node.trueType),n.mapper))}function mE(n){return n.resolvedFalseType||(n.resolvedFalseType=so(Ei(n.root.node.falseType),n.mapper))}function Uut(n){return n.resolvedInferredTrueType||(n.resolvedInferredTrueType=n.combinedMapper?so(Ei(n.root.node.trueType),n.combinedMapper):fE(n))}function z6e(n){let a;return n.locals&&n.locals.forEach(c=>{c.flags&262144&&(a=xn(a,el(c)))}),a}function Hut(n){return n.isDistributive&&(M9(n.checkType,n.node.trueType)||M9(n.checkType,n.node.falseType))}function qut(n){const a=ei(n);if(!a.resolvedType){const c=Ei(n.checkType),d=bx(n),_=PN(d),y=Cn(n,!0),x=_?y:nr(y,z=>M9(z,n)),k={node:n,checkType:c,extendsType:Ei(n.extendsType),isDistributive:!!(c.flags&262144),inferTypeParameters:z6e(n),outerTypeParameters:x,instantiations:void 0,aliasSymbol:d,aliasTypeArguments:_};a.resolvedType=fve(k,void 0,!1),x&&(k.instantiations=new Map,k.instantiations.set(mm(x),a.resolvedType))}return a.resolvedType}function Jut(n){const a=ei(n);return a.resolvedType||(a.resolvedType=jT(Ir(n.typeParameter))),a.resolvedType}function B6e(n){return Ve(n)?[n]:xn(B6e(n.left),n.right)}function Kut(n){var a;const c=ei(n);if(!c.resolvedType){if(!Vy(n))return Je(n.argument,f.String_literal_expected),c.resolvedSymbol=ft,c.resolvedType=_t;const d=n.isTypeOf?111551:n.flags&16777216?900095:788968,_=vd(n,n.argument.literal);if(!_)return c.resolvedSymbol=ft,c.resolvedType=_t;const y=!!((a=_.exports)!=null&&a.get("export=")),x=Np(_,!1);if(zl(n.qualifier))if(x.flags&d)c.resolvedType=G6e(n,c,x,d);else{const k=d===111551?f.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:f.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;Je(n,k,n.argument.literal.text),c.resolvedSymbol=ft,c.resolvedType=_t}else{const k=B6e(n.qualifier);let z=x,H;for(;H=k.shift();){const re=k.length?1920:d,be=rs(jl(z)),ge=n.isTypeOf||lr(n)&&y?ya(dr(be),H.escapedText,!1,!0):void 0,gt=(n.isTypeOf?void 0:Jd(Cp(be),H.escapedText,re))??ge;if(!gt)return Je(H,f.Namespace_0_has_no_exported_member_1,qp(z),Rs(H)),c.resolvedType=_t;ei(H).resolvedSymbol=gt,ei(H.parent).resolvedSymbol=gt,z=gt}c.resolvedType=G6e(n,c,z,d)}}return c.resolvedType}function G6e(n,a,c,d){const _=jl(c);return a.resolvedSymbol=_,d===111551?SWe(dr(c),n):ZZ(n,_)}function V6e(n){const a=ei(n);if(!a.resolvedType){const c=bx(n);if(Ob(n.symbol).size===0&&!c)a.resolvedType=lc;else{let d=zf(16,n.symbol);d.aliasSymbol=c,d.aliasTypeArguments=PN(c),XS(n)&&n.isArrayType&&(d=Vu(d)),a.resolvedType=d}}return a.resolvedType}function bx(n){let a=n.parent;for(;GS(a)||d1(a)||VS(a)&&a.operator===148;)a=a.parent;return QL(a)?Ir(a):void 0}function PN(n){return n?kr(n):void 0}function oee(n){return!!(n.flags&524288)&&!Kd(n)}function mve(n){return yv(n)||!!(n.flags&474058748)}function _ve(n,a){if(!(n.flags&1048576))return n;if(Zn(n.types,mve))return An(n.types,yv)||La;const c=An(n.types,y=>!mve(y));if(!c||An(n.types,y=>y!==c&&!mve(y)))return n;return _(c);function _(y){const x=ua();for(const z of gs(y))if(!(Df(z)&6)){if(aee(z)){const H=z.flags&65536&&!(z.flags&32768),be=Xa(16777220,z.escapedName,Sge(z)|(a?8:0));be.links.type=H?Oe:cp(dr(z),!0),be.declarations=z.declarations,be.links.nameType=Xi(z).nameType,be.links.syntheticOrigin=z,x.set(z.escapedName,be)}}const k=Ls(y.symbol,x,et,et,yd(y));return k.objectFlags|=131200,k}}function K1(n,a,c,d,_){if(n.flags&1||a.flags&1)return j;if(n.flags&2||a.flags&2)return _n;if(n.flags&131072)return a;if(a.flags&131072)return n;if(n=_ve(n,_),n.flags&1048576)return R9([n,a])?pl(n,H=>K1(H,a,c,d,_)):_t;if(a=_ve(a,_),a.flags&1048576)return R9([n,a])?pl(a,H=>K1(n,H,c,d,_)):_t;if(a.flags&473960444)return n;if($T(n)||$T(a)){if(yv(n))return a;if(n.flags&2097152){const H=n.types,re=H[H.length-1];if(oee(re)&&oee(a))return ba(So(H.slice(0,H.length-1),[K1(re,a,c,d,_)]))}return ba([n,a])}const y=ua(),x=new Set,k=n===La?yd(a):T8e([n,a]);for(const H of gs(a))Df(H)&6?x.add(H.escapedName):aee(H)&&y.set(H.escapedName,hve(H,_));for(const H of gs(n))if(!(x.has(H.escapedName)||!aee(H)))if(y.has(H.escapedName)){const re=y.get(H.escapedName),be=dr(re);if(re.flags&16777216){const ge=So(H.declarations,re.declarations),Ke=4|H.flags&16777216,gt=Xa(Ke,H.escapedName),Dt=dr(H),an=xee(Dt),cn=xee(be);gt.links.type=an===cn?Dt:ti([Dt,cn],2),gt.links.leftSpread=H,gt.links.rightSpread=re,gt.declarations=ge,gt.links.nameType=Xi(H).nameType,y.set(H.escapedName,gt)}}else y.set(H.escapedName,hve(H,_));const z=Ls(c,y,et,et,eo(k,H=>Xut(H,_)));return z.objectFlags|=2228352|d,z}function aee(n){var a;return!bt(n.declarations,cd)&&(!(n.flags&106496)||!((a=n.declarations)!=null&&a.some(c=>ui(c.parent))))}function hve(n,a){const c=n.flags&65536&&!(n.flags&32768);if(!c&&a===b_(n))return n;const d=4|n.flags&16777216,_=Xa(d,n.escapedName,Sge(n)|(a?8:0));return _.links.type=c?Oe:dr(n),_.declarations=n.declarations,_.links.nameType=Xi(n).nameType,_.links.syntheticOrigin=n,_}function Xut(n,a){return n.isReadonly!==a?Vh(n.keyType,n.type,a,n.declaration):n}function N9(n,a,c,d){const _=Tg(n,c);return _.value=a,_.regularType=d||_,_}function Ex(n){if(n.flags&2976){if(!n.freshType){const a=N9(n.flags,n.value,n.symbol,n);a.freshType=a,n.freshType=a}return n.freshType}return n}function Ed(n){return n.flags&2976?n.regularType:n.flags&1048576?n.regularType||(n.regularType=pl(n,Ed)):n}function X1(n){return!!(n.flags&2976)&&n.freshType===n}function Xd(n){let a;return sn.get(n)||(sn.set(n,a=N9(128,n)),a)}function g_(n){let a;return tt.get(n)||(tt.set(n,a=N9(256,n)),a)}function see(n){let a;const c=$E(n);return zt.get(c)||(zt.set(c,a=N9(2048,n)),a)}function Yut(n,a,c){let d;const _=`${a}${typeof n=="string"?"@":"#"}${n}`,y=1024|(typeof n=="string"?128:256);return Rn.get(_)||(Rn.set(_,d=N9(y,n,c)),d)}function $ut(n){if(n.literal.kind===106)return me;const a=ei(n);return a.resolvedType||(a.resolvedType=Ed(mo(n.literal))),a.resolvedType}function Qut(n){const a=Tg(8192,n);return a.escapedName=`__@${a.symbol.escapedName}@${Ta(a.symbol)}`,a}function gve(n){if(lr(n)&&d1(n)){const a=CS(n);a&&(n=zA(a)||a)}if(Cie(n)){const a=Q4(n)?gf(n.left):gf(n);if(a){const c=Xi(a);return c.uniqueESSymbolType||(c.uniqueESSymbolType=Qut(a))}}return Ai}function Zut(n){const a=Fd(n,!1,!1),c=a&&a.parent;if(c&&(ui(c)||c.kind===264)&&!sa(a)&&(!Ml(a)||jE(n,a.body)))return Vf(Ir(c)).thisType;if(c&&Oa(c)&&mr(c.parent)&&Bl(c.parent)===6)return Vf(gf(c.parent.left).parent).thisType;const d=n.flags&16777216?v0(n):void 0;return d&&Os(d)&&mr(d.parent)&&Bl(d.parent)===3?Vf(gf(d.parent.left).parent).thisType:nh(a)&&jE(n,a.body)?Vf(Ir(a)).thisType:(Je(n,f.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface),_t)}function lee(n){const a=ei(n);return a.resolvedType||(a.resolvedType=Zut(n)),a.resolvedType}function j6e(n){return Ei(C9(n.type)||n.type)}function C9(n){switch(n.kind){case 196:return C9(n.type);case 189:if(n.elements.length===1&&(n=n.elements[0],n.kind===191||n.kind===202&&n.dotDotDotToken))return C9(n.type);break;case 188:return n.elementType}}function edt(n){const a=ei(n);return a.resolvedType||(a.resolvedType=n.dotDotDotToken?j6e(n):cp(Ei(n.type),!0,!!n.questionToken))}function Ei(n){return Mct(U6e(n),n)}function U6e(n){switch(n.kind){case 133:case 319:case 320:return j;case 159:return _n;case 154:return ke;case 150:return Tt;case 163:return kt;case 136:return Ni;case 155:return Ai;case 116:return ir;case 157:return Oe;case 106:return me;case 146:return jr;case 151:return n.flags&524288&&!pe?j:Kr;case 141:return fn;case 197:case 110:return lee(n);case 201:return $ut(n);case 183:return Jge(n);case 182:return n.assertsModifier?ir:Ni;case 233:return Jge(n);case 186:return t6e(n);case 188:case 189:return lut(n);case 190:return put(n);case 192:return Eut(n);case 193:return Nut(n);case 321:return Lct(n);case 323:return cp(Ei(n.type));case 202:return edt(n);case 196:case 322:case 316:return Ei(n.type);case 191:return j6e(n);case 325:return nyt(n);case 184:case 185:case 187:case 329:case 324:case 330:return V6e(n);case 198:return kut(n);case 199:return O6e(n);case 200:return pve(n);case 194:return qut(n);case 195:return Jut(n);case 203:return wut(n);case 205:return Kut(n);case 80:case 166:case 211:const a=Hm(n);return a?el(a):_t;default:return _t}}function cee(n,a,c){if(n&&n.length)for(let d=0;d<n.length;d++){const _=n[d],y=c(_,a);if(_!==y){const x=d===0?[]:n.slice(0,d);for(x.push(y),d++;d<n.length;d++)x.push(c(n[d],a));return x}}return n}function yy(n,a){return cee(n,a,so)}function uee(n,a){return cee(n,a,MN)}function H6e(n,a){return cee(n,a,fdt)}function kp(n,a){return n.length===1?Y1(n[0],a?a[0]:j):tdt(n,a)}function Vb(n,a){switch(a.kind){case 0:return n===a.source?a.target:n;case 1:{const d=a.sources,_=a.targets;for(let y=0;y<d.length;y++)if(n===d[y])return _?_[y]:j;return n}case 2:{const d=a.sources,_=a.targets;for(let y=0;y<d.length;y++)if(n===d[y])return _[y]();return n}case 3:return a.func(n);case 4:case 5:const c=Vb(n,a.mapper1);return c!==n&&a.kind===4?so(c,a.mapper2):Vb(c,a.mapper2)}}function Y1(n,a){return N.attachDebugPrototypeIfDebug({kind:0,source:n,target:a})}function tdt(n,a){return N.attachDebugPrototypeIfDebug({kind:1,sources:n,targets:a})}function P9(n,a){return N.attachDebugPrototypeIfDebug({kind:3,func:n,debugInfo:N.isDebugging?a:void 0})}function vve(n,a){return N.attachDebugPrototypeIfDebug({kind:2,sources:n,targets:a})}function dee(n,a,c){return N.attachDebugPrototypeIfDebug({kind:n,mapper1:a,mapper2:c})}function q6e(n){return kp(n,void 0)}function ndt(n,a){const c=n.inferences.slice(a);return kp(wt(c,d=>d.typeParameter),wt(c,()=>_n))}function $1(n,a){return n?dee(4,n,a):a}function rdt(n,a){return n?dee(5,n,a):a}function ZT(n,a,c){return c?dee(5,Y1(n,a),c):Y1(n,a)}function O8(n,a,c){return n?dee(5,n,Y1(a,c)):Y1(a,c)}function idt(n){return!n.constraint&&!Gge(n)||n.constraint===js?n:n.restrictiveInstantiation||(n.restrictiveInstantiation=yf(n.symbol),n.restrictiveInstantiation.constraint=js,n.restrictiveInstantiation)}function yve(n){const a=yf(n.symbol);return a.target=n,a}function odt(n,a){return T9(n.kind,n.parameterName,n.parameterIndex,so(n.type,a))}function MN(n,a,c){let d;if(n.typeParameters&&!c){d=wt(n.typeParameters,yve),a=$1(kp(n.typeParameters,d),a);for(const y of d)y.mapper=a}const _=Ig(n.declaration,d,n.thisParameter&&bve(n.thisParameter,a),cee(n.parameters,a,bve),void 0,void 0,n.minArgumentCount,n.flags&167);return _.target=n,_.mapper=a,_}function bve(n,a){const c=Xi(n);if(c.type&&!vE(c.type)&&(!(n.flags&65536)||c.writeType&&!vE(c.writeType)))return n;xl(n)&1&&(n=c.target,a=$1(c.mapper,a));const d=Xa(n.flags,n.escapedName,1|xl(n)&53256);return d.declarations=n.declarations,d.parent=n.parent,d.links.target=n,d.links.mapper=a,n.valueDeclaration&&(d.valueDeclaration=n.valueDeclaration),c.nameType&&(d.links.nameType=c.nameType),d}function adt(n,a,c,d){const _=n.objectFlags&4||n.objectFlags&8388608?n.node:n.symbol.declarations[0],y=ei(_),x=n.objectFlags&4?y.resolvedType:n.objectFlags&64?n.target:n;let k=y.outerTypeParameters;if(!k){let z=Cn(_,!0);if(nh(_)){const re=B8e(_);z=Jr(z,re)}k=z||et;const H=n.objectFlags&8388612?[_]:n.symbol.declarations;k=(x.objectFlags&8388612||x.symbol.flags&8192||x.symbol.flags&2048)&&!x.aliasTypeArguments?nr(k,re=>bt(H,be=>M9(re,be))):k,y.outerTypeParameters=k}if(k.length){const z=$1(n.mapper,a),H=wt(k,gt=>Vb(gt,z)),re=c||n.aliasSymbol,be=c?d:yy(n.aliasTypeArguments,a),ge=mm(H)+vx(re,be);x.instantiations||(x.instantiations=new Map,x.instantiations.set(mm(k)+vx(x.aliasSymbol,x.aliasTypeArguments),x));let Ke=x.instantiations.get(ge);if(!Ke){const gt=kp(k,H);Ke=x.objectFlags&4?Vge(n.target,n.node,gt,re,be):x.objectFlags&32?ldt(x,gt,re,be):Eve(x,gt,re,be),x.instantiations.set(ge,Ke);const Dt=Wr(Ke);if(Ke.flags&3899393&&!(Dt&524288)){const an=bt(H,vE);Wr(Ke)&524288||(Dt&52?Ke.objectFlags|=524288|(an?1048576:0):Ke.objectFlags|=an?0:524288)}}return Ke}return n}function sdt(n){return!(n.parent.kind===183&&n.parent.typeArguments&&n===n.parent.typeName||n.parent.kind===205&&n.parent.typeArguments&&n===n.parent.qualifier)}function M9(n,a){if(n.symbol&&n.symbol.declarations&&n.symbol.declarations.length===1){const d=n.symbol.declarations[0].parent;for(let _=a;_!==d;_=_.parent)if(!_||_.kind===241||_.kind===194&&Ho(_.extendsType,c))return!0;return c(a)}return!0;function c(d){switch(d.kind){case 197:return!!n.isThisType;case 80:return!n.isThisType&&tg(d)&&sdt(d)&&U6e(d)===n;case 186:const _=d.exprName,y=Vp(_);if(!KE(y)){const x=jm(y),k=n.symbol.declarations[0],z=k.kind===168?k.parent:n.isThisType?k:void 0;if(x.declarations&&z)return bt(x.declarations,H=>jE(H,z))||bt(d.typeArguments,c)}return!0;case 174:case 173:return!d.type&&!!d.body||bt(d.typeParameters,c)||bt(d.parameters,c)||!!d.type&&c(d.type)}return!!Ho(d,c)}}function W8(n){const a=Ef(n);if(a.flags&4194304){const c=Gb(a.type);if(c.flags&262144)return c}}function ldt(n,a,c,d){const _=W8(n);if(_){const x=so(_,a);if(_!==x)return X4e(h_(x),y,c,d)}return so(Ef(n),a)===Rt?Rt:Eve(n,a,c,d);function y(x){if(x.flags&61603843&&x!==Rt&&!Kt(x)){if(!n.declaration.nameType){let k;if(qf(x)||x.flags&1&&mx(_,4)<0&&(k=Ld(_))&&up(k,hE))return udt(x,n,ZT(_,x,a));if(Ba(x))return cdt(x,n,_,a);if(k8e(x))return ba(wt(x.types,y))}return Eve(n,ZT(_,x,a))}return x}}function J6e(n,a){return a&1?!0:a&2?!1:n}function cdt(n,a,c,d){const _=n.target.elementFlags,y=n.target.fixedLength,x=y?ZT(c,n,d):d,k=wt(J1(n),(be,ge)=>{const Ke=_[ge];return ge<y?K6e(a,Xd(""+ge),!!(Ke&2),x):Ke&8?so(a,ZT(c,be,d)):G9(so(a,ZT(c,Vu(be),d)))??_n}),z=Bh(a),H=z&4?wt(_,be=>be&1?2:be):z&8?wt(_,be=>be&2?1:be):_,re=J6e(n.target.readonly,Bh(a));return Nr(k,_t)?_t:jh(k,H,re,n.target.labeledElementDeclarations)}function udt(n,a,c){const d=K6e(a,Tt,!0,c);return Kt(d)?_t:Vu(d,J6e(Y2(n),Bh(a)))}function K6e(n,a,c,d){const _=O8(d,m_(n),a),y=so(mv(n.target||n),_),x=Bh(n);return Y&&x&4&&!Cl(y,49152)?qb(y,!0):Y&&x&8&&c?hm(y,524288):y}function Eve(n,a,c,d){N.assert(n.symbol,"anonymous type must have symbol to be instantiated");const _=zf(n.objectFlags&-1572865|64,n.symbol);if(n.objectFlags&32){_.declaration=n.declaration;const y=m_(n),x=yve(y);_.typeParameter=x,a=$1(Y1(y,x),a),x.mapper=a}return n.objectFlags&8388608&&(_.node=n.node),_.target=n,_.mapper=a,_.aliasSymbol=c||n.aliasSymbol,_.aliasTypeArguments=c?d:yy(n.aliasTypeArguments,a),_.objectFlags|=_.aliasTypeArguments?$Z(_.aliasTypeArguments):0,_}function Sve(n,a,c,d,_){const y=n.root;if(y.outerTypeParameters){const x=wt(y.outerTypeParameters,H=>Vb(H,a)),k=(c?"C":"")+mm(x)+vx(d,_);let z=y.instantiations.get(k);if(!z){const H=kp(y.outerTypeParameters,x),re=y.checkType,be=y.isDistributive?h_(Vb(re,H)):void 0;z=be&&re!==be&&be.flags&1179648?X4e(be,ge=>fve(y,ZT(re,ge,H),c),d,_):fve(y,H,c,d,_),y.instantiations.set(k,z)}return z}return n}function so(n,a){return n&&a?X6e(n,a,void 0,void 0):n}function X6e(n,a,c,d){var _;if(!vE(n))return n;if(R===100||I>=5e6)return(_=sr)==null||_.instant(sr.Phase.CheckTypes,"instantiateType_DepthLimit",{typeId:n.id,instantiationDepth:R,instantiationCount:I}),Je(C,f.Type_instantiation_is_excessively_deep_and_possibly_infinite),_t;A++,I++,R++;const y=ddt(n,a,c,d);return R--,y}function ddt(n,a,c,d){const _=n.flags;if(_&262144)return Vb(n,a);if(_&524288){const y=n.objectFlags;if(y&52){if(y&4&&!n.node){const x=n.resolvedTypeArguments,k=yy(x,a);return k!==x?nve(n.target,k):n}return y&1024?pdt(n,a):adt(n,a,c,d)}return n}if(_&3145728){const y=n.flags&1048576?n.origin:void 0,x=y&&y.flags&3145728?y.types:n.types,k=yy(x,a);if(k===x&&c===n.aliasSymbol)return n;const z=c||n.aliasSymbol,H=c?d:yy(n.aliasTypeArguments,a);return _&2097152||y&&y.flags&2097152?ba(k,z,H):ti(k,1,z,H)}if(_&4194304)return Q_(so(n.type,a));if(_&134217728)return XT(n.texts,yy(n.types,a));if(_&268435456)return yx(n.symbol,so(n.type,a));if(_&8388608){const y=c||n.aliasSymbol,x=c?d:yy(n.aliasTypeArguments,a);return Lp(so(n.objectType,a),so(n.indexType,a),n.accessFlags,void 0,y,x)}if(_&16777216)return Sve(n,$1(n.mapper,a),!1,c,d);if(_&33554432){const y=so(n.baseType,a);if(H2(n))return jge(y);const x=so(n.constraint,a);return y.flags&8650752&&CN(x)?Hge(y,x):x.flags&3||Ea(eA(y),eA(x))?y:y.flags&8650752?Hge(y,x):ba([x,y])}return n}function pdt(n,a){const c=so(n.mappedType,a);if(!(Wr(c)&32))return n;const d=so(n.constraintType,a);if(!(d.flags&4194304))return n;const _=R4e(so(n.source,a),c,d);return _||n}function F8(n){return n.flags&402915327?n:n.permissiveInstantiation||(n.permissiveInstantiation=so(n,vl))}function eA(n){return n.flags&402915327?n:(n.restrictiveInstantiation||(n.restrictiveInstantiation=so(n,Vs),n.restrictiveInstantiation.restrictiveInstantiation=n.restrictiveInstantiation),n.restrictiveInstantiation)}function fdt(n,a){return Vh(n.keyType,so(n.type,a),n.isReadonly,n.declaration)}function Uf(n){switch(N.assert(n.kind!==174||xm(n)),n.kind){case 218:case 219:case 174:case 262:return Y6e(n);case 210:return bt(n.properties,Uf);case 209:return bt(n.elements,Uf);case 227:return Uf(n.whenTrue)||Uf(n.whenFalse);case 226:return(n.operatorToken.kind===57||n.operatorToken.kind===61)&&(Uf(n.left)||Uf(n.right));case 303:return Uf(n.initializer);case 217:return Uf(n.expression);case 292:return bt(n.properties,Uf)||W_(n.parent)&&bt(n.parent.parent.children,Uf);case 291:{const{initializer:a}=n;return!!a&&Uf(a)}case 294:{const{expression:a}=n;return!!a&&Uf(a)}}return!1}function Y6e(n){return iW(n)||mdt(n)}function mdt(n){return n.typeParameters||nm(n)||!n.body?!1:n.body.kind!==241?Uf(n.body):!!zE(n.body,a=>!!a.expression&&Uf(a.expression))}function pee(n){return(QE(n)||xm(n))&&Y6e(n)}function $6e(n){if(n.flags&524288){const a=__(n);if(a.constructSignatures.length||a.callSignatures.length){const c=zf(16,n.symbol);return c.members=a.members,c.properties=a.properties,c.callSignatures=et,c.constructSignatures=et,c.indexInfos=et,c}}else if(n.flags&2097152)return ba(wt(n.types,$6e));return n}function vv(n,a){return Z_(n,a,ap)}function z8(n,a){return Z_(n,a,ap)?-1:0}function Tve(n,a){return Z_(n,a,qd)?-1:0}function _dt(n,a){return Z_(n,a,Ph)?-1:0}function jb(n,a){return Z_(n,a,Ph)}function L9(n,a){return Z_(n,a,Wf)}function Ea(n,a){return Z_(n,a,qd)}function _E(n,a){return n.flags&1048576?Zn(n.types,c=>_E(c,a)):a.flags&1048576?bt(a.types,c=>_E(n,c)):n.flags&2097152?bt(n.types,c=>_E(c,a)):n.flags&58982400?_E(Gu(n)||_n,a):Uh(a)?!!(n.flags&67633152):a===Ce?!!(n.flags&67633152)&&!Uh(n):a===Wt?!!(n.flags&524288)&&nye(n):EN(n,my(a))||qf(a)&&!Y2(a)&&_E(n,na)}function fee(n,a){return Z_(n,a,Dp)}function k9(n,a){return fee(n,a)||fee(a,n)}function nd(n,a,c,d,_,y){return Hf(n,a,qd,c,d,_,y)}function Ub(n,a,c,d,_,y){return Ave(n,a,qd,c,d,_,y,void 0)}function Ave(n,a,c,d,_,y,x,k){return Z_(n,a,c)?!0:!d||!B8(_,n,a,c,y,x,k)?Hf(n,a,c,d,y,x,k):!1}function Q6e(n){return!!(n.flags&16777216||n.flags&2097152&&bt(n.types,Q6e))}function B8(n,a,c,d,_,y,x){if(!n||Q6e(c))return!1;if(!Hf(a,c,d,void 0)&&hdt(n,a,c,d,_,y,x))return!0;switch(n.kind){case 234:if(!gb(n))break;case 294:case 217:return B8(n.expression,a,c,d,_,y,x);case 226:switch(n.operatorToken.kind){case 64:case 28:return B8(n.right,a,c,d,_,y,x)}break;case 210:return Adt(n,a,c,d,y,x);case 209:return Sdt(n,a,c,d,y,x);case 292:return Edt(n,a,c,d,y,x);case 219:return gdt(n,a,c,d,y,x)}return!1}function hdt(n,a,c,d,_,y,x){const k=Yo(a,0),z=Yo(a,1);for(const H of[z,k])if(bt(H,re=>{const be=ps(re);return!(be.flags&131073)&&Hf(be,c,d,void 0)})){const re=x||{};nd(a,c,n,_,y,re);const be=re.errors[re.errors.length-1];return wa(be,wr(n,H===z?f.Did_you_mean_to_use_new_with_this_expression:f.Did_you_mean_to_call_this_expression)),!0}return!1}function gdt(n,a,c,d,_,y){if(Xo(n.body)||bt(n.parameters,w4))return!1;const x=cA(a);if(!x)return!1;const k=Yo(c,0);if(!Me(k))return!1;const z=n.body,H=ps(x),re=ti(wt(k,ps));if(!Hf(H,re,d,void 0)){const be=z&&B8(z,H,re,d,void 0,_,y);if(be)return be;const ge=y||{};if(Hf(H,re,d,z,void 0,_,ge),ge.errors)return c.symbol&&Me(c.symbol.declarations)&&wa(ge.errors[ge.errors.length-1],wr(c.symbol.declarations[0],f.The_expected_type_comes_from_the_return_type_of_this_signature)),!(Vc(n)&2)&&!Xe(H,"then")&&Hf(_B(H),re,d,void 0)&&wa(ge.errors[ge.errors.length-1],wr(n,f.Did_you_mean_to_mark_this_function_as_async)),!0}return!1}function Z6e(n,a,c){const d=Bb(a,c);if(d)return d;if(a.flags&1048576){const _=s4e(n,a);if(_)return Bb(_,c)}}function e4e(n,a){Z9(n,a,!1);const c=lM(n,1);return Y8(),c}function w9(n,a,c,d,_,y){let x=!1;for(const k of n){const{errorNode:z,innerExpression:H,nameType:re,errorMessage:be}=k;let ge=Z6e(a,c,re);if(!ge||ge.flags&8388608)continue;let Ke=Bb(a,re);if(!Ke)continue;const gt=ree(re,void 0);if(!Hf(Ke,ge,d,void 0)){const Dt=H&&B8(H,Ke,ge,d,void 0,_,y);if(x=!0,!Dt){const an=y||{},cn=H?e4e(H,Ke):Ke;if(De&&_ee(cn,ge)){const ar=wr(z,f.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Un(cn),Un(ge));ts.add(ar),an.errors=[ar]}else{const ar=!!(gt&&(ya(c,gt)||ft).flags&16777216),On=!!(gt&&(ya(a,gt)||ft).flags&16777216);ge=Jb(ge,ar),Ke=Jb(Ke,ar&&On),Hf(cn,ge,d,z,be,_,an)&&cn!==Ke&&Hf(Ke,ge,d,z,be,_,an)}if(an.errors){const ar=an.errors[an.errors.length-1],On=rm(re)?im(re):void 0,ln=On!==void 0?ya(c,On):void 0;let zn=!1;if(!ln){const Fn=D8(c,re);Fn&&Fn.declaration&&!jn(Fn.declaration).hasNoDefaultLib&&(zn=!0,wa(ar,wr(Fn.declaration,f.The_expected_type_comes_from_this_index_signature)))}if(!zn&&(ln&&Me(ln.declarations)||c.symbol&&Me(c.symbol.declarations))){const Fn=ln&&Me(ln.declarations)?ln.declarations[0]:c.symbol.declarations[0];jn(Fn).hasNoDefaultLib||wa(ar,wr(Fn,f.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,On&&!(re.flags&8192)?Vi(On):Un(re),Un(c)))}}}}}return x}function vdt(n,a,c,d,_,y){const x=dc(c,See),k=dc(c,re=>!See(re)),z=k!==jr?bbe(13,0,k,void 0):void 0;let H=!1;for(let re=n.next();!re.done;re=n.next()){const{errorNode:be,innerExpression:ge,nameType:Ke,errorMessage:gt}=re.value;let Dt=z;const an=x!==jr?Z6e(a,x,Ke):void 0;if(an&&!(an.flags&8388608)&&(Dt=z?ti([z,an]):an),!Dt)continue;let cn=Bb(a,Ke);if(!cn)continue;const ar=ree(Ke,void 0);if(!Hf(cn,Dt,d,void 0)){const On=ge&&B8(ge,cn,Dt,d,void 0,_,y);if(H=!0,!On){const ln=y||{},zn=ge?e4e(ge,cn):cn;if(De&&_ee(zn,Dt)){const Fn=wr(be,f.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target,Un(zn),Un(Dt));ts.add(Fn),ln.errors=[Fn]}else{const Fn=!!(ar&&(ya(x,ar)||ft).flags&16777216),er=!!(ar&&(ya(a,ar)||ft).flags&16777216);Dt=Jb(Dt,Fn),cn=Jb(cn,Fn&&er),Hf(zn,Dt,d,be,gt,_,ln)&&zn!==cn&&Hf(cn,Dt,d,be,gt,_,ln)}}}}return H}function*ydt(n){if(Me(n.properties))for(const a of n.properties)gI(a)||Tye(Dk(a.name))||(yield{errorNode:a.name,innerExpression:a.initializer,nameType:Xd(Dk(a.name))})}function*bdt(n,a){if(!Me(n.children))return;let c=0;for(let d=0;d<n.children.length;d++){const _=n.children[d],y=g_(d-c),x=t4e(_,y,a);x?yield x:c++}}function t4e(n,a,c){switch(n.kind){case 294:return{errorNode:n,innerExpression:n.expression,nameType:a};case 12:if(n.containsOnlyTriviaWhiteSpaces)break;return{errorNode:n,innerExpression:void 0,nameType:a,errorMessage:c()};case 284:case 285:case 288:return{errorNode:n,innerExpression:n,nameType:a};default:return N.assertNever(n,"Found invalid jsx child")}}function Edt(n,a,c,d,_,y){let x=w9(ydt(n),a,c,d,_,y),k;if(W_(n.parent)&&dg(n.parent.parent)){const H=n.parent.parent,re=tB(sA(n)),be=re===void 0?"children":Vi(re),ge=Xd(be),Ke=Lp(c,ge),gt=xR(H.children);if(!Me(gt))return x;const Dt=Me(gt)>1;let an,cn;if(Qge(!1)!==ko){const On=p6e(j);an=dc(Ke,ln=>Ea(ln,On)),cn=dc(Ke,ln=>!Ea(ln,On))}else an=dc(Ke,See),cn=dc(Ke,On=>!See(On));if(Dt){if(an!==jr){const On=jh(Kee(H,0)),ln=bdt(H,z);x=vdt(ln,On,an,d,_,y)||x}else if(!Z_(Lp(a,ge),Ke,d)){x=!0;const On=Je(H.openingElement.tagName,f.This_JSX_tag_s_0_prop_expects_a_single_child_of_type_1_but_multiple_children_were_provided,be,Un(Ke));y&&y.skipLogging&&(y.errors||(y.errors=[])).push(On)}}else if(cn!==jr){const On=gt[0],ln=t4e(On,ge,z);ln&&(x=w9(function*(){yield ln}(),a,c,d,_,y)||x)}else if(!Z_(Lp(a,ge),Ke,d)){x=!0;const On=Je(H.openingElement.tagName,f.This_JSX_tag_s_0_prop_expects_type_1_which_requires_multiple_children_but_only_a_single_child_was_provided,be,Un(Ke));y&&y.skipLogging&&(y.errors||(y.errors=[])).push(On)}}return x;function z(){if(!k){const H=fc(n.parent.tagName),re=tB(sA(n)),be=re===void 0?"children":Vi(re),ge=Lp(c,Xd(be)),Ke=f._0_components_don_t_accept_text_as_child_elements_Text_in_JSX_has_the_type_string_but_the_expected_type_of_1_is_2;k={...Ke,key:"!!ALREADY FORMATTED!!",message:MU(Ke,H,be,Un(ge))}}return k}}function*n4e(n,a){const c=Me(n.elements);if(c)for(let d=0;d<c;d++){if($2(a)&&!ya(a,""+d))continue;const _=n.elements[d];if(jc(_))continue;const y=g_(d),x=rte(_);yield{errorNode:x,innerExpression:x,nameType:y}}}function Sdt(n,a,c,d,_,y){if(c.flags&402915324)return!1;if($2(a))return w9(n4e(n,c),a,c,d,_,y);Z9(n,c,!1);const x=A3e(n,1,!0);return Y8(),$2(x)?w9(n4e(n,c),x,c,d,_,y):!1}function*Tdt(n){if(Me(n.properties))for(const a of n.properties){if(Xv(a))continue;const c=NN(Ir(a),8576);if(!(!c||c.flags&131072))switch(a.kind){case 178:case 177:case 174:case 304:yield{errorNode:a.name,innerExpression:void 0,nameType:c};break;case 303:yield{errorNode:a.name,innerExpression:a.initializer,nameType:c,errorMessage:PL(a.name)?f.Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:void 0};break;default:N.assertNever(a)}}}function Adt(n,a,c,d,_,y){return c.flags&402915324?!1:w9(Tdt(n),a,c,d,_,y)}function r4e(n,a,c,d,_){return Hf(n,a,Dp,c,d,_)}function Idt(n,a,c){return Ive(n,a,4,!1,void 0,void 0,Tve,void 0)!==0}function mee(n){if(!n.typeParameters&&(!n.thisParameter||Nt(pB(n.thisParameter)))&&n.parameters.length===1&&Yu(n)){const a=pB(n.parameters[0]);return!!((qf(a)?Js(a)[0]:a).flags&131073&&ps(n).flags&3)}return!1}function Ive(n,a,c,d,_,y,x,k){if(n===a||!(c&16&&mee(n))&&mee(a))return-1;if(c&16&&mee(n)&&!mee(a))return 0;const z=Yp(a);if(!Hh(a)&&(c&8?Hh(n)||Yp(n)>z:rh(n)>z))return d&&!(c&8)&&_(f.Target_signature_provides_too_few_arguments_Expected_0_or_more_but_got_1,rh(n),z),0;n.typeParameters&&n.typeParameters!==a.typeParameters&&(a=xct(a),n=nWe(n,a,void 0,x));const re=Yp(n),be=e6(n),ge=e6(a);(be||ge)&&so(be||ge,k);const Ke=a.declaration?a.declaration.kind:0,gt=!(c&3)&&oe&&Ke!==174&&Ke!==173&&Ke!==176;let Dt=-1;const an=pE(n);if(an&&an!==ir){const On=pE(a);if(On){const ln=!gt&&x(an,On,!1)||x(On,an,d);if(!ln)return d&&_(f.The_this_types_of_each_signature_are_incompatible),0;Dt&=ln}}const cn=be||ge?Math.min(re,z):Math.max(re,z),ar=be||ge?cn-1:-1;for(let On=0;On<cn;On++){const ln=On===ar?xWe(n,On):nS(n,On),zn=On===ar?xWe(a,On):nS(a,On);if(ln&&zn){const Fn=c&3||eWe(n,On)?void 0:cA(Ev(ln)),er=c&3||eWe(a,On)?void 0:cA(Ev(zn));let tr=Fn&&er&&!jf(Fn)&&!jf(er)&&eM(ln,50331648)===eM(zn,50331648)?Ive(er,Fn,c&8|(gt?2:1),d,_,y,x,k):!(c&3)&&!gt&&x(ln,zn,!1)||x(zn,ln,d);if(tr&&c&8&&On>=rh(n)&&On<rh(a)&&x(ln,zn,!1)&&(tr=0),!tr)return d&&_(f.Types_of_parameters_0_and_1_are_incompatible,Vi(oM(n,On)),Vi(oM(a,On))),0;Dt&=tr}}if(!(c&4)){const On=JZ(a)?j:a.declaration&&nh(a.declaration)?Vf(rs(a.declaration.symbol)):ps(a);if(On===ir||On===j)return Dt;const ln=JZ(n)?j:n.declaration&&nh(n.declaration)?Vf(rs(n.declaration.symbol)):ps(n),zn=jf(a);if(zn){const Fn=jf(n);if(Fn)Dt&=xdt(Fn,zn,d,_,x);else if(Mie(zn))return d&&_(f.Signature_0_must_be_a_type_predicate,Oh(n)),0}else Dt&=c&1&&x(On,ln,!1)||x(ln,On,d),!Dt&&d&&y&&y(ln,On)}return Dt}function xdt(n,a,c,d,_){if(n.kind!==a.kind)return c&&(d(f.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard),d(f.Type_predicate_0_is_not_assignable_to_1,Wh(n),Wh(a))),0;if((n.kind===1||n.kind===3)&&n.parameterIndex!==a.parameterIndex)return c&&(d(f.Parameter_0_is_not_in_the_same_position_as_parameter_1,n.parameterName,a.parameterName),d(f.Type_predicate_0_is_not_assignable_to_1,Wh(n),Wh(a))),0;const y=n.type===a.type?-1:n.type&&a.type?_(n.type,a.type,c):0;return y===0&&c&&d(f.Type_predicate_0_is_not_assignable_to_1,Wh(n),Wh(a)),y}function Rdt(n,a){const c=P8(n),d=P8(a),_=ps(c),y=ps(d);return y===ir||Z_(y,_,qd)||Z_(_,y,qd)?Idt(c,d):!1}function xve(n){return n!==nn&&n.properties.length===0&&n.callSignatures.length===0&&n.constructSignatures.length===0&&n.indexInfos.length===0}function yv(n){return n.flags&524288?!Kd(n)&&xve(__(n)):n.flags&67108864?!0:n.flags&1048576?bt(n.types,yv):n.flags&2097152?Zn(n.types,yv):!1}function Uh(n){return!!(Wr(n)&16&&(n.members&&xve(n)||n.symbol&&n.symbol.flags&2048&&Ob(n.symbol).size===0))}function Ddt(n){if(Y&&n.flags&1048576){if(!(n.objectFlags&33554432)){const a=n.types;n.objectFlags|=33554432|(a.length>=3&&a[0].flags&32768&&a[1].flags&65536&&bt(a,Uh)?67108864:0)}return!!(n.objectFlags&67108864)}return!1}function K2(n){return!!((n.flags&1048576?n.types[0]:n).flags&32768)}function i4e(n){return n.flags&524288&&!Kd(n)&&gs(n).length===0&&yd(n).length===1&&!!xg(n,ke)||n.flags&3145728&&Zn(n.types,i4e)||!1}function Rve(n,a,c){const d=n.flags&8?Pd(n):n,_=a.flags&8?Pd(a):a;if(d===_)return!0;if(d.escapedName!==_.escapedName||!(d.flags&256)||!(_.flags&256))return!1;const y=Ta(d)+","+Ta(_),x=sy.get(y);if(x!==void 0&&!(!(x&4)&&x&2&&c))return!!(x&1);const k=dr(_);for(const z of gs(dr(d)))if(z.flags&8){const H=ya(k,z.escapedName);if(!H||!(H.flags&8))return c?(c(f.Property_0_is_missing_in_type_1,Sl(z),Un(el(_),void 0,64)),sy.set(y,6)):sy.set(y,2),!1;const re=jN(fl(z,306)),be=jN(fl(H,306));if(re!==be){const ge=typeof re=="string",Ke=typeof be=="string";if(re!==void 0&&be!==void 0){if(!c)sy.set(y,2);else{const gt=ge?`"${og(re)}"`:re,Dt=Ke?`"${og(be)}"`:be;c(f.Each_declaration_of_0_1_differs_in_its_value_where_2_was_expected_but_3_was_given,Sl(_),Sl(H),Dt,gt),sy.set(y,6)}return!1}if(ge||Ke){if(!c)sy.set(y,2);else{const gt=re??be;N.assert(typeof gt=="string");const Dt=`"${og(gt)}"`;c(f.One_value_of_0_1_is_the_string_2_and_the_other_is_assumed_to_be_an_unknown_numeric_value,Sl(_),Sl(H),Dt),sy.set(y,6)}return!1}}}return sy.set(y,1),!0}function G8(n,a,c,d){const _=n.flags,y=a.flags;return y&1||_&131072||n===Rt||y&2&&!(c===Wf&&_&1)?!0:y&131072?!1:!!(_&402653316&&y&4||_&128&&_&1024&&y&128&&!(y&1024)&&n.value===a.value||_&296&&y&8||_&256&&_&1024&&y&256&&!(y&1024)&&n.value===a.value||_&2112&&y&64||_&528&&y&16||_&12288&&y&4096||_&32&&y&32&&n.symbol.escapedName===a.symbol.escapedName&&Rve(n.symbol,a.symbol,d)||_&1024&&y&1024&&(_&1048576&&y&1048576&&Rve(n.symbol,a.symbol,d)||_&2944&&y&2944&&n.value===a.value&&Rve(n.symbol,a.symbol,d))||_&32768&&(!Y&&!(y&3145728)||y&49152)||_&65536&&(!Y&&!(y&3145728)||y&65536)||_&524288&&y&67108864&&!(c===Wf&&Uh(n)&&!(Wr(n)&8192))||(c===qd||c===Dp)&&(_&1||_&8&&(y&32||y&256&&y&1024)||_&256&&!(_&1024)&&(y&32||y&256&&y&1024&&n.value===a.value)||Ddt(a)))}function Z_(n,a,c){if(X1(n)&&(n=n.regularType),X1(a)&&(a=a.regularType),n===a)return!0;if(c!==ap){if(c===Dp&&!(a.flags&131072)&&G8(a,n,c)||G8(n,a,c))return!0}else if(!((n.flags|a.flags)&61865984)){if(n.flags!==a.flags)return!1;if(n.flags&67358815)return!0}if(n.flags&524288&&a.flags&524288){const d=c.get(vee(n,a,0,c,!1));if(d!==void 0)return!!(d&1)}return n.flags&469499904||a.flags&469499904?Hf(n,a,c,void 0):!1}function o4e(n,a){return Wr(n)&2048&&Tye(a.escapedName)}function O9(n,a){for(;;){const c=X1(n)?n.regularType:Hb(n)?Cdt(n,a):Wr(n)&4?n.node?hy(n.target,Js(n)):kve(n)||n:n.flags&3145728?Ndt(n,a):n.flags&33554432?a?n.baseType:qge(n):n.flags&25165824?gv(n,a):n;if(c===n)return c;n=c}}function Ndt(n,a){const c=h_(n);if(c!==n)return c;if(n.flags&2097152&&bt(n.types,Uh)){const d=eo(n.types,_=>O9(_,a));if(d!==n.types)return ba(d)}return n}function Cdt(n,a){const c=J1(n),d=eo(c,_=>_.flags&25165824?gv(_,a):_);return c!==d?rve(n.target,d):n}function Hf(n,a,c,d,_,y,x){var k;let z,H,re,be,ge,Ke,gt=0,Dt=0,an=0,cn=0,ar=!1,On=0,ln=0,zn,Fn,er=16e6-c.size>>3;N.assert(c!==ap||!d,"no error reporting in identity checking");const qn=br(n,a,3,!!d,_);if(Fn&&Bo(),ar){const rt=vee(n,a,0,c,!1);c.set(rt,6),(k=sr)==null||k.instant(sr.Phase.CheckTypes,"checkTypeRelatedTo_DepthLimit",{sourceId:n.id,targetId:a.id,depth:Dt,targetDepth:an});const St=er<=0?f.Excessive_complexity_comparing_types_0_and_1:f.Excessive_stack_depth_comparing_types_0_and_1,Zt=Je(d||C,St,Un(n),Un(a));x&&(x.errors||(x.errors=[])).push(Zt)}else if(z){if(y){const Zt=y();Zt&&(Foe(Zt,z),z=Zt)}let rt;if(_&&d&&!qn&&n.symbol){const Zt=Xi(n.symbol);if(Zt.originatingImport&&!Bp(Zt.originatingImport)&&Hf(dr(Zt.target),a,c,void 0)){const Rr=wr(Zt.originatingImport,f.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);rt=xn(rt,Rr)}}const St=Fg(jn(d),d,z,rt);H&&wa(St,...H),x&&(x.errors||(x.errors=[])).push(St),(!x||!x.skipLogging)&&ts.add(St)}return d&&x&&x.skipLogging&&qn===0&&N.assert(!!x.errors,"missed opportunity to interact with error."),qn!==0;function tr(rt){z=rt.errorInfo,zn=rt.lastSkippedInfo,Fn=rt.incompatibleStack,On=rt.overrideNextErrorInfo,ln=rt.skipParentCounter,H=rt.relatedInfo}function Ro(){return{errorInfo:z,lastSkippedInfo:zn,incompatibleStack:Fn==null?void 0:Fn.slice(),overrideNextErrorInfo:On,skipParentCounter:ln,relatedInfo:H==null?void 0:H.slice()}}function Eo(rt,...St){On++,zn=void 0,(Fn||(Fn=[])).push([rt,...St])}function Bo(){const rt=Fn||[];Fn=void 0;const St=zn;if(zn=void 0,rt.length===1){_o(...rt[0]),St&&dp(void 0,...St);return}let Zt="";const Kn=[];for(;rt.length;){const[Rr,...Tn]=rt.pop();switch(Rr.code){case f.Types_of_property_0_are_incompatible.code:{Zt.indexOf("new ")===0&&(Zt=`(${Zt})`);const gr=""+Tn[0];Zt.length===0?Zt=`${gr}`:tf(gr,os(V))?Zt=`${Zt}.${gr}`:gr[0]==="["&&gr[gr.length-1]==="]"?Zt=`${Zt}${gr}`:Zt=`${Zt}[${gr}]`;break}case f.Call_signature_return_types_0_and_1_are_incompatible.code:case f.Construct_signature_return_types_0_and_1_are_incompatible.code:case f.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:case f.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code:{if(Zt.length===0){let gr=Rr;Rr.code===f.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?gr=f.Call_signature_return_types_0_and_1_are_incompatible:Rr.code===f.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code&&(gr=f.Construct_signature_return_types_0_and_1_are_incompatible),Kn.unshift([gr,Tn[0],Tn[1]])}else{const gr=Rr.code===f.Construct_signature_return_types_0_and_1_are_incompatible.code||Rr.code===f.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"new ":"",qr=Rr.code===f.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code||Rr.code===f.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1.code?"":"...";Zt=`${gr}${Zt}(${qr})`}break}case f.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target.code:{Kn.unshift([f.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,Tn[0],Tn[1]]);break}case f.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target.code:{Kn.unshift([f.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Tn[0],Tn[1],Tn[2]]);break}default:return N.fail(`Unhandled Diagnostic: ${Rr.code}`)}}Zt?_o(Zt[Zt.length-1]===")"?f.The_types_returned_by_0_are_incompatible_between_these_types:f.The_types_of_0_are_incompatible_between_these_types,Zt):Kn.shift();for(const[Rr,...Tn]of Kn){const gr=Rr.elidedInCompatabilityPyramid;Rr.elidedInCompatabilityPyramid=!1,_o(Rr,...Tn),Rr.elidedInCompatabilityPyramid=gr}St&&dp(void 0,...St)}function _o(rt,...St){N.assert(!!d),Fn&&Bo(),!rt.elidedInCompatabilityPyramid&&(ln===0?z=jo(z,rt,...St):ln--)}function Cc(rt,...St){_o(rt,...St),ln++}function Jf(rt){N.assert(!!z),H?H.push(rt):H=[rt]}function dp(rt,St,Zt){Fn&&Bo();const[Kn,Rr]=fx(St,Zt);let Tn=St,gr=Kn;if(V8(St)&&!Dve(Zt)&&(Tn=bv(St),N.assert(!Ea(Tn,Zt),"generalized source shouldn't be assignable"),gr=Rb(Tn)),(Zt.flags&8388608&&!(St.flags&8388608)?Zt.objectType.flags:Zt.flags)&262144&&Zt!==de&&Zt!==ee){const zi=Gu(Zt);let Fo;zi&&(Ea(Tn,zi)||(Fo=Ea(St,zi)))?_o(f._0_is_assignable_to_the_constraint_of_type_1_but_1_could_be_instantiated_with_a_different_subtype_of_constraint_2,Fo?Kn:gr,Rr,Un(zi)):(z=void 0,_o(f._0_could_be_instantiated_with_an_arbitrary_type_which_could_be_unrelated_to_1,Rr,gr))}if(rt)rt===f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1&&De&&a4e(St,Zt).length&&(rt=f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties);else if(c===Dp)rt=f.Type_0_is_not_comparable_to_type_1;else if(Kn===Rr)rt=f.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated;else if(De&&a4e(St,Zt).length)rt=f.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties;else{if(St.flags&128&&Zt.flags&1048576){const zi=zmt(St,Zt);if(zi){_o(f.Type_0_is_not_assignable_to_type_1_Did_you_mean_2,gr,Rr,Un(zi));return}}rt=f.Type_0_is_not_assignable_to_type_1}_o(rt,gr,Rr)}function wn(rt,St){const Zt=Db(rt.symbol)?Un(rt,rt.symbol.valueDeclaration):Un(rt),Kn=Db(St.symbol)?Un(St,St.symbol.valueDeclaration):Un(St);(Zl===rt&&ke===St||yc===rt&&Tt===St||dl===rt&&Ni===St||s6e()===rt&&Ai===St)&&_o(f._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,Kn,Zt)}function Qn(rt,St,Zt){return Ba(rt)?rt.target.readonly&&B9(St)?(Zt&&_o(f.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Un(rt),Un(St)),!1):hE(St):Y2(rt)&&B9(St)?(Zt&&_o(f.The_type_0_is_readonly_and_cannot_be_assigned_to_the_mutable_type_1,Un(rt),Un(St)),!1):Ba(St)?qf(rt):!0}function oo(rt,St,Zt){return br(rt,St,3,Zt)}function br(rt,St,Zt=3,Kn=!1,Rr,Tn=0){if(rt===St)return-1;if(rt.flags&524288&&St.flags&402784252)return c===Dp&&!(St.flags&131072)&&G8(St,rt,c)||G8(rt,St,c,Kn?_o:void 0)?-1:(Kn&&Co(rt,St,rt,St,Rr),0);const gr=O9(rt,!1);let qr=O9(St,!0);if(gr===qr)return-1;if(c===ap)return gr.flags!==qr.flags?0:gr.flags&67358815?-1:(ss(gr,qr),Si(gr,qr,!1,0,Zt));if(gr.flags&262144&&HT(gr)===qr)return-1;if(gr.flags&470302716&&qr.flags&1048576){const zi=qr.types,Fo=zi.length===2&&zi[0].flags&98304?zi[1]:zi.length===3&&zi[0].flags&98304&&zi[1].flags&98304?zi[2]:void 0;if(Fo&&!(Fo.flags&98304)&&(qr=O9(Fo,!0),gr===qr))return-1}if(c===Dp&&!(qr.flags&131072)&&G8(qr,gr,c)||G8(gr,qr,c,Kn?_o:void 0))return-1;if(gr.flags&469499904||qr.flags&469499904){if(!(Tn&2)&&yE(gr)&&Wr(gr)&8192&&ju(gr,qr,Kn))return Kn&&dp(Rr,gr,St.aliasSymbol?St:qr),0;const Fo=(c!==Dp||v_(gr))&&!(Tn&2)&&gr.flags&405405692&&gr!==Ce&&qr.flags&2621440&&l4e(qr)&&(gs(gr).length>0||Dte(gr)),_a=!!(Wr(gr)&2048);if(Fo&&!Mdt(gr,qr,_a)){if(Kn){const wo=Un(rt.aliasSymbol?rt:gr),Da=Un(St.aliasSymbol?St:qr),Cs=Yo(gr,0),fs=Yo(gr,1);Cs.length>0&&br(ps(Cs[0]),qr,1,!1)||fs.length>0&&br(ps(fs[0]),qr,1,!1)?_o(f.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,wo,Da):_o(f.Type_0_has_no_properties_in_common_with_type_1,wo,Da)}return 0}ss(gr,qr);const vi=gr.flags&1048576&&gr.types.length<4&&!(qr.flags&1048576)||qr.flags&1048576&&qr.types.length<4&&!(gr.flags&469499904)?wd(gr,qr,Kn,Tn):Si(gr,qr,Kn,Tn,Zt);if(vi)return vi}return Kn&&Co(rt,St,gr,qr,Rr),0}function Co(rt,St,Zt,Kn,Rr){var Tn,gr;const qr=!!kve(rt),zi=!!kve(St);Zt=rt.aliasSymbol||qr?rt:Zt,Kn=St.aliasSymbol||zi?St:Kn;let Fo=On>0;if(Fo&&On--,Zt.flags&524288&&Kn.flags&524288){const _a=z;Qn(Zt,Kn,!0),z!==_a&&(Fo=!!z)}if(Zt.flags&524288&&Kn.flags&402784252)wn(Zt,Kn);else if(Zt.symbol&&Zt.flags&524288&&Ce===Zt)_o(f.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead);else if(Wr(Zt)&2048&&Kn.flags&2097152){const _a=Kn.types,ha=tS(sf.IntrinsicAttributes,d),vi=tS(sf.IntrinsicClassAttributes,d);if(!Kt(ha)&&!Kt(vi)&&(Nr(_a,ha)||Nr(_a,vi)))return}else z=Pge(z,St);if(!Rr&&Fo){zn=[Zt,Kn];return}if(dp(Rr,Zt,Kn),Zt.flags&262144&&((gr=(Tn=Zt.symbol)==null?void 0:Tn.declarations)!=null&&gr[0])&&!HT(Zt)){const _a=yve(Zt);if(_a.constraint=so(Kn,Y1(Zt,_a)),b9(_a)){const ha=Un(Kn,Zt.symbol.declarations[0]);Jf(wr(Zt.symbol.declarations[0],f.This_type_parameter_might_need_an_extends_0_constraint,ha))}}}function ss(rt,St){if(sr&&rt.flags&3145728&&St.flags&3145728){const Zt=rt,Kn=St;if(Zt.objectFlags&Kn.objectFlags&32768)return;const Rr=Zt.types.length,Tn=Kn.types.length;Rr*Tn>1e6&&sr.instant(sr.Phase.CheckTypes,"traceUnionsOrIntersectionsTooLarge_DepthLimit",{sourceId:rt.id,sourceSize:Rr,targetId:St.id,targetSize:Tn,pos:d==null?void 0:d.pos,end:d==null?void 0:d.end})}}function Ts(rt,St){return ti(od(rt,(Kn,Rr)=>{var Tn;Rr=kd(Rr);const gr=Rr.flags&3145728?E9(Rr,St):uE(Rr,St),qr=gr&&dr(gr)||((Tn=gx(Rr,St))==null?void 0:Tn.type)||Oe;return xn(Kn,qr)},void 0)||et)}function ju(rt,St,Zt){var Kn;if(!rB(St)||!pe&&Wr(St)&4096)return!1;const Rr=!!(Wr(rt)&2048);if((c===qd||c===Dp)&&(tM(Ce,St)||!Rr&&yv(St)))return!1;let Tn=St,gr;St.flags&1048576&&(Tn=I7e(rt,St,br)||Vbt(St),gr=Tn.flags&1048576?Tn.types:[Tn]);for(const qr of gs(rt))if(Ga(qr,rt.symbol)&&!o4e(rt,qr)){if(!xye(Tn,qr.escapedName,Rr)){if(Zt){const zi=dc(Tn,rB);if(!d)return N.fail();if(l1(d)||ud(d)||ud(d.parent)){qr.valueDeclaration&&F_(qr.valueDeclaration)&&jn(d)===jn(qr.valueDeclaration.name)&&(d=qr.valueDeclaration.name);const Fo=bi(qr),_a=K3e(Fo,zi),ha=_a?bi(_a):void 0;ha?_o(f.Property_0_does_not_exist_on_type_1_Did_you_mean_2,Fo,Un(zi),ha):_o(f.Property_0_does_not_exist_on_type_1,Fo,Un(zi))}else{const Fo=((Kn=rt.symbol)==null?void 0:Kn.declarations)&&Xc(rt.symbol.declarations);let _a;if(qr.valueDeclaration&&Gn(qr.valueDeclaration,ha=>ha===Fo)&&jn(Fo)===jn(d)){const ha=qr.valueDeclaration;N.assertNode(ha,Wg);const vi=ha.name;d=vi,Ve(vi)&&(_a=wye(vi,zi))}_a!==void 0?Cc(f.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,bi(qr),Un(zi),_a):Cc(f.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,bi(qr),Un(zi))}}return!0}if(gr&&!br(dr(qr),Ts(gr,qr.escapedName),3,Zt))return Zt&&Eo(f.Types_of_property_0_are_incompatible,bi(qr)),!0}return!1}function Ga(rt,St){return rt.valueDeclaration&&St.valueDeclaration&&rt.valueDeclaration.parent===St.valueDeclaration}function wd(rt,St,Zt,Kn){if(rt.flags&1048576){if(St.flags&1048576){const Rr=rt.origin;if(Rr&&Rr.flags&2097152&&St.aliasSymbol&&Nr(Rr.types,St))return-1;const Tn=St.origin;if(Tn&&Tn.flags&1048576&&rt.aliasSymbol&&Nr(Tn.types,rt))return-1}return c===Dp?Ae(rt,St,Zt&&!(rt.flags&402784252),Kn):Mr(rt,St,Zt&&!(rt.flags&402784252),Kn)}if(St.flags&1048576)return El(H8(rt),St,Zt&&!(rt.flags&402784252)&&!(St.flags&402784252),Kn);if(St.flags&2097152)return ut(rt,St,Zt,2);if(c===Dp&&St.flags&402784252){const Rr=eo(rt.types,Tn=>Tn.flags&465829888?Gu(Tn)||_n:Tn);if(Rr!==rt.types){if(rt=ba(Rr),rt.flags&131072)return 0;if(!(rt.flags&2097152))return br(rt,St,1,!1)||br(St,rt,1,!1)}}return Ae(rt,St,!1,1)}function Wl(rt,St){let Zt=-1;const Kn=rt.types;for(const Rr of Kn){const Tn=El(Rr,St,!1,0);if(!Tn)return 0;Zt&=Tn}return Zt}function El(rt,St,Zt,Kn){const Rr=St.types;if(St.flags&1048576){if(hv(Rr,rt))return-1;if(c!==Dp&&Wr(St)&32768&&!(rt.flags&1024)&&(rt.flags&2688||(c===Ph||c===Wf)&&rt.flags&256)){const gr=rt===rt.regularType?rt.freshType:rt.regularType,qr=rt.flags&128?ke:rt.flags&256?Tt:rt.flags&2048?kt:void 0;return qr&&hv(Rr,qr)||gr&&hv(Rr,gr)?-1:0}const Tn=W4e(St,rt);if(Tn){const gr=br(rt,Tn,2,!1,void 0,Kn);if(gr)return gr}}for(const Tn of Rr){const gr=br(rt,Tn,2,!1,void 0,Kn);if(gr)return gr}if(Zt){const Tn=s4e(rt,St,br);Tn&&br(rt,Tn,2,!0,void 0,Kn)}return 0}function ut(rt,St,Zt,Kn){let Rr=-1;const Tn=St.types;for(const gr of Tn){const qr=br(rt,gr,2,Zt,void 0,Kn);if(!qr)return 0;Rr&=qr}return Rr}function Ae(rt,St,Zt,Kn){const Rr=rt.types;if(rt.flags&1048576&&hv(Rr,St))return-1;const Tn=Rr.length;for(let gr=0;gr<Tn;gr++){const qr=br(Rr[gr],St,1,Zt&&gr===Tn-1,void 0,Kn);if(qr)return qr}return 0}function Ln(rt,St){return rt.flags&1048576&&St.flags&1048576&&!(rt.types[0].flags&32768)&&St.types[0].flags&32768?nM(St,-32769):St}function Mr(rt,St,Zt,Kn){let Rr=-1;const Tn=rt.types,gr=Ln(rt,St);for(let qr=0;qr<Tn.length;qr++){const zi=Tn[qr];if(gr.flags&1048576&&Tn.length>=gr.types.length&&Tn.length%gr.types.length===0){const _a=br(zi,gr.types[qr%gr.types.length],3,!1,void 0,Kn);if(_a){Rr&=_a;continue}}const Fo=br(zi,St,1,Zt,void 0,Kn);if(!Fo)return 0;Rr&=Fo}return Rr}function di(rt=et,St=et,Zt=et,Kn,Rr){if(rt.length!==St.length&&c===ap)return 0;const Tn=rt.length<=St.length?rt.length:St.length;let gr=-1;for(let qr=0;qr<Tn;qr++){const zi=qr<Zt.length?Zt[qr]:1,Fo=zi&7;if(Fo!==4){const _a=rt[qr],ha=St[qr];let vi=-1;if(zi&8?vi=c===ap?br(_a,ha,3,!1):z8(_a,ha):Fo===1?vi=br(_a,ha,3,Kn,void 0,Rr):Fo===2?vi=br(ha,_a,3,Kn,void 0,Rr):Fo===3?(vi=br(ha,_a,3,!1),vi||(vi=br(_a,ha,3,Kn,void 0,Rr))):(vi=br(_a,ha,3,Kn,void 0,Rr),vi&&(vi&=br(ha,_a,3,Kn,void 0,Rr))),!vi)return 0;gr&=vi}}return gr}function Si(rt,St,Zt,Kn,Rr){var Tn,gr,qr;if(ar)return 0;const zi=vee(rt,St,Kn,c,!1),Fo=c.get(zi);if(Fo!==void 0&&!(Zt&&Fo&2&&!(Fo&4))){if(pa){const fs=Fo&24;fs&8&&so(rt,As),fs&16&&so(rt,du)}return Fo&1?-1:0}if(er<=0)return ar=!0,0;if(!re)re=[],be=new Set,ge=[],Ke=[];else{if(be.has(zi))return 3;const fs=zi.startsWith("*")?vee(rt,St,Kn,c,!0):void 0;if(fs&&be.has(fs))return 3;if(Dt===100||an===100)return ar=!0,0}const _a=gt;re[gt]=zi,be.add(zi),gt++;const ha=cn;Rr&1&&(ge[Dt]=rt,Dt++,!(cn&1)&&X2(rt,ge,Dt)&&(cn|=1)),Rr&2&&(Ke[an]=St,an++,!(cn&2)&&X2(St,Ke,an)&&(cn|=2));let vi,wo=0;pa&&(vi=pa,pa=fs=>(wo|=fs?16:8,vi(fs)));let Da;return cn===3?((Tn=sr)==null||Tn.instant(sr.Phase.CheckTypes,"recursiveTypeRelatedTo_DepthLimit",{sourceId:rt.id,sourceIdStack:ge.map(fs=>fs.id),targetId:St.id,targetIdStack:Ke.map(fs=>fs.id),depth:Dt,targetDepth:an}),Da=3):((gr=sr)==null||gr.push(sr.Phase.CheckTypes,"structuredTypeRelatedTo",{sourceId:rt.id,targetId:St.id}),Da=Ti(rt,St,Zt,Kn),(qr=sr)==null||qr.pop()),pa&&(pa=vi),Rr&1&&Dt--,Rr&2&&an--,cn=ha,Da?(Da===-1||Dt===0&&an===0)&&Cs(Da===-1||Da===3):(c.set(zi,(Zt?4:0)|2|wo),er--,Cs(!1)),Da;function Cs(fs){for(let Pc=_a;Pc<gt;Pc++)be.delete(re[Pc]),fs&&(c.set(re[Pc],1|wo),er--);gt=_a}}function Ti(rt,St,Zt,Kn){const Rr=Ro();let Tn=xr(rt,St,Zt,Kn,Rr);if(c!==ap){if(!Tn&&(rt.flags&2097152||rt.flags&262144&&St.flags&1048576)){const gr=cct(rt.flags&2097152?rt.types:[rt],!!(St.flags&1048576));gr&&up(gr,qr=>qr!==rt)&&(Tn=br(gr,St,1,!1,void 0,Kn))}Tn&&!(Kn&2)&&St.flags&2097152&&!$T(St)&&rt.flags&2621440?(Tn&=Li(rt,St,Zt,void 0,!1,0),Tn&&yE(rt)&&Wr(rt)&8192&&(Tn&=Ns(rt,St,!1,Zt,0))):Tn&&oee(St)&&!hE(St)&&rt.flags&2097152&&kd(rt).flags&3670016&&!bt(rt.types,gr=>gr===St||!!(Wr(gr)&262144))&&(Tn&=Li(rt,St,Zt,void 0,!0,Kn))}return Tn&&tr(Rr),Tn}function Hr(rt,St){const Zt=kd(UT(St)),Kn=[];return Tge(Zt,8576,!1,Rr=>void Kn.push(so(rt,O8(St.mapper,m_(St),Rr)))),ti(Kn)}function xr(rt,St,Zt,Kn,Rr){let Tn,gr,qr=!1,zi=rt.flags;const Fo=St.flags;if(c===ap){if(zi&3145728){let vi=Wl(rt,St);return vi&&(vi&=Wl(St,rt)),vi}if(zi&4194304)return br(rt.type,St.type,3,!1);if(zi&8388608&&(Tn=br(rt.objectType,St.objectType,3,!1))&&(Tn&=br(rt.indexType,St.indexType,3,!1))||zi&16777216&&rt.root.isDistributive===St.root.isDistributive&&(Tn=br(rt.checkType,St.checkType,3,!1))&&(Tn&=br(rt.extendsType,St.extendsType,3,!1))&&(Tn&=br(fE(rt),fE(St),3,!1))&&(Tn&=br(mE(rt),mE(St),3,!1))||zi&33554432&&(Tn=br(rt.baseType,St.baseType,3,!1))&&(Tn&=br(rt.constraint,St.constraint,3,!1)))return Tn;if(!(zi&524288))return 0}else if(zi&3145728||Fo&3145728){if(Tn=wd(rt,St,Zt,Kn))return Tn;if(!(zi&465829888||zi&524288&&Fo&1048576||zi&2097152&&Fo&467402752))return 0}if(zi&17301504&&rt.aliasSymbol&&rt.aliasTypeArguments&&rt.aliasSymbol===St.aliasSymbol&&!(hee(rt)||hee(St))){const vi=c4e(rt.aliasSymbol);if(vi===et)return 1;const wo=Xi(rt.aliasSymbol).typeParameters,Da=Gh(wo),Cs=Fb(rt.aliasTypeArguments,wo,Da,lr(rt.aliasSymbol.valueDeclaration)),fs=Fb(St.aliasTypeArguments,wo,Da,lr(rt.aliasSymbol.valueDeclaration)),Pc=ha(Cs,fs,vi,Kn);if(Pc!==void 0)return Pc}if(v4e(rt)&&!rt.target.readonly&&(Tn=br(Js(rt)[0],St,1))||v4e(St)&&(St.target.readonly||B9(Gu(rt)||rt))&&(Tn=br(rt,Js(St)[0],2)))return Tn;if(Fo&262144){if(Wr(rt)&32&&!rt.declaration.nameType&&br(Q_(St),Ef(rt),3)&&!(Bh(rt)&4)){const vi=mv(rt),wo=Lp(St,m_(rt));if(Tn=br(vi,wo,3,Zt))return Tn}if(c===Dp&&zi&262144){let vi=Ld(rt);if(vi)for(;vi&&Um(vi,wo=>!!(wo.flags&262144));){if(Tn=br(vi,St,1,!1))return Tn;vi=Ld(vi)}return 0}}else if(Fo&4194304){const vi=St.type;if(zi&4194304&&(Tn=br(vi,rt.type,3,!1)))return Tn;if(Ba(vi)){if(Tn=br(rt,h6e(vi),2,Zt))return Tn}else{const wo=Ige(vi);if(wo){if(br(rt,Q_(wo,St.indexFlags|4),2,Zt)===-1)return-1}else if(Kd(vi)){const Da=_y(vi),Cs=Ef(vi);let fs;if(Da&&AN(vi)){const Pc=Hr(Da,vi);fs=ti([Pc,Da])}else fs=Da||Cs;if(br(rt,fs,2,Zt)===-1)return-1}}}else if(Fo&8388608){if(zi&8388608){if((Tn=br(rt.objectType,St.objectType,3,Zt))&&(Tn&=br(rt.indexType,St.indexType,3,Zt)),Tn)return Tn;Zt&&(gr=z)}if(c===qd||c===Dp){const vi=St.objectType,wo=St.indexType,Da=Gu(vi)||vi,Cs=Gu(wo)||wo;if(!$T(Da)&&!QT(Cs)){const fs=4|(Da!==vi?2:0),Pc=Bb(Da,Cs,fs);if(Pc){if(Zt&&gr&&tr(Rr),Tn=br(rt,Pc,2,Zt,void 0,Kn))return Tn;Zt&&gr&&z&&(z=_a([gr])<=_a([z])?gr:z)}}}Zt&&(gr=void 0)}else if(Kd(St)&&c!==ap){const vi=!!St.declaration.nameType,wo=mv(St),Da=Bh(St);if(!(Da&8)){if(!vi&&wo.flags&8388608&&wo.objectType===rt&&wo.indexType===m_(St))return-1;if(!Kd(rt)){const Cs=vi?_y(St):Ef(St),fs=Q_(rt,2),Pc=Da&4,qh=Pc?g9(Cs,fs):void 0;if(Pc?!(qh.flags&131072):br(Cs,fs,3)){const Av=mv(St),pA=m_(St),fA=nM(Av,-98305);if(!vi&&fA.flags&8388608&&fA.indexType===pA){if(Tn=br(rt,fA.objectType,2,Zt))return Tn}else{const hM=vi?qh||Cs:qh?ba([qh,pA]):pA,S_=Lp(rt,hM);if(Tn=br(S_,Av,3,Zt))return Tn}}gr=z,tr(Rr)}}}else if(Fo&16777216){if(X2(St,Ke,an,10))return 3;const vi=St;if(!vi.root.inferTypeParameters&&!Hut(vi.root)&&!(rt.flags&16777216&&rt.root===vi.root)){const wo=!Ea(F8(vi.checkType),F8(vi.extendsType)),Da=!wo&&Ea(eA(vi.checkType),eA(vi.extendsType));if((Tn=wo?-1:br(rt,fE(vi),2,!1,void 0,Kn))&&(Tn&=Da?-1:br(rt,mE(vi),2,!1,void 0,Kn),Tn))return Tn}}else if(Fo&134217728){if(zi&134217728){if(c===Dp)return vpt(rt,St)?0:-1;so(rt,du)}if(Lee(rt,St))return-1}else if(St.flags&268435456&&!(rt.flags&268435456)&&Mee(rt,St))return-1;if(zi&8650752){if(!(zi&8388608&&Fo&8388608)){const vi=HT(rt)||_n;if(Tn=br(vi,St,1,!1,void 0,Kn))return Tn;if(Tn=br(Kp(vi,rt),St,1,Zt&&vi!==_n&&!(Fo&zi&262144),void 0,Kn))return Tn;if(Nge(rt)){const wo=HT(rt.indexType);if(wo&&(Tn=br(Lp(rt.objectType,wo),St,1,Zt)))return Tn}}}else if(zi&4194304){const vi=cve(rt.type,rt.indexFlags)&&Wr(rt.type)&32;if(Tn=br(Fs,St,1,Zt&&!vi))return Tn;if(vi){const wo=rt.type,Da=_y(wo),Cs=Da&&AN(wo)?Hr(Da,wo):Da||Ef(wo);if(Tn=br(Cs,St,1,Zt))return Tn}}else if(zi&134217728&&!(Fo&524288)){if(!(Fo&134217728)){const vi=Gu(rt);if(vi&&vi!==rt&&(Tn=br(vi,St,1,Zt)))return Tn}}else if(zi&268435456)if(Fo&268435456){if(rt.symbol!==St.symbol)return 0;if(Tn=br(rt.type,St.type,3,Zt))return Tn}else{const vi=Gu(rt);if(vi&&(Tn=br(vi,St,1,Zt)))return Tn}else if(zi&16777216){if(X2(rt,ge,Dt,10))return 3;if(Fo&16777216){const Da=rt.root.inferTypeParameters;let Cs=rt.extendsType,fs;if(Da){const Pc=q8(Da,void 0,0,oo);Sv(Pc.inferences,St.extendsType,Cs,1536),Cs=so(Cs,Pc.mapper),fs=Pc.mapper}if(vv(Cs,St.extendsType)&&(br(rt.checkType,St.checkType,3)||br(St.checkType,rt.checkType,3))&&((Tn=br(so(fE(rt),fs),fE(St),3,Zt))&&(Tn&=br(mE(rt),mE(St),3,Zt)),Tn))return Tn}const vi=xge(rt);if(vi&&(Tn=br(vi,St,1,Zt)))return Tn;const wo=!(Fo&16777216)&&b9(rt)?N8e(rt):void 0;if(wo&&(tr(Rr),Tn=br(wo,St,1,Zt)))return Tn}else{if(c!==Ph&&c!==Wf&&nct(St)&&yv(rt))return-1;if(Kd(St))return Kd(rt)&&(Tn=lt(rt,St,Zt))?Tn:0;const vi=!!(zi&402784252);if(c!==ap)rt=kd(rt),zi=rt.flags;else if(Kd(rt))return 0;if(Wr(rt)&4&&Wr(St)&4&&rt.target===St.target&&!Ba(rt)&&!(hee(rt)||hee(St))){if(Eee(rt))return-1;const wo=Cve(rt.target);if(wo===et)return 1;const Da=ha(Js(rt),Js(St),wo,Kn);if(Da!==void 0)return Da}else{if(Y2(St)?up(rt,hE):qf(St)&&up(rt,wo=>Ba(wo)&&!wo.target.readonly))return c!==ap?br(dE(rt,Tt)||j,dE(St,Tt)||j,3,Zt):0;if(Hb(rt)&&Ba(St)&&!Hb(St)){const wo=_v(rt);if(wo!==rt)return br(wo,St,1,Zt)}else if((c===Ph||c===Wf)&&yv(St)&&Wr(St)&8192&&!yv(rt))return 0}if(zi&2621440&&Fo&524288){const wo=Zt&&z===Rr.errorInfo&&!vi;if(Tn=Li(rt,St,wo,void 0,!1,Kn),Tn&&(Tn&=Go(rt,St,0,wo,Kn),Tn&&(Tn&=Go(rt,St,1,wo,Kn),Tn&&(Tn&=Ns(rt,St,vi,wo,Kn)))),qr&&Tn)z=gr||z||Rr.errorInfo;else if(Tn)return Tn}if(zi&2621440&&Fo&1048576){const wo=nM(St,36175872);if(wo.flags&1048576){const Da=Ot(rt,wo);if(Da)return Da}}}return 0;function _a(vi){return vi?od(vi,(wo,Da)=>wo+1+_a(Da.next),0):0}function ha(vi,wo,Da,Cs){if(Tn=di(vi,wo,Da,Zt,Cs))return Tn;if(bt(Da,Pc=>!!(Pc&24))){gr=void 0,tr(Rr);return}const fs=wo&&Ldt(wo,Da);if(qr=!fs,Da!==et&&!fs){if(qr&&!(Zt&&bt(Da,Pc=>(Pc&7)===0)))return 0;gr=z,tr(Rr)}}}function lt(rt,St,Zt){if(c===Dp||(c===ap?Bh(rt)===Bh(St):Age(rt)<=Age(St))){let Rr;const Tn=Ef(St),gr=so(Ef(rt),Age(rt)<0?As:du);if(Rr=br(Tn,gr,3,Zt)){const qr=kp([m_(rt)],[m_(St)]);if(so(_y(rt),qr)===so(_y(St),qr))return Rr&br(so(mv(rt),qr),mv(St),3,Zt)}}return 0}function Ot(rt,St){var Zt;const Kn=gs(rt),Rr=O4e(Kn,St);if(!Rr)return 0;let Tn=1;for(const ha of Rr)if(Tn*=qpt(kb(ha)),Tn>25)return(Zt=sr)==null||Zt.instant(sr.Phase.CheckTypes,"typeRelatedToDiscriminatedType_DepthLimit",{sourceId:rt.id,targetId:St.id,numCombinations:Tn}),0;const gr=new Array(Rr.length),qr=new Set;for(let ha=0;ha<Rr.length;ha++){const vi=Rr[ha],wo=kb(vi);gr[ha]=wo.flags&1048576?wo.types:[wo],qr.add(vi.escapedName)}const zi=zne(gr),Fo=[];for(const ha of zi){let vi=!1;e:for(const wo of St.types){for(let Da=0;Da<Rr.length;Da++){const Cs=Rr[Da],fs=ya(wo,Cs.escapedName);if(!fs)continue e;if(Cs===fs)continue;if(!mn(rt,St,Cs,fs,qh=>ha[Da],!1,0,Y||c===Dp))continue e}Tf(Fo,wo,Mv),vi=!0}if(!vi)return 0}let _a=-1;for(const ha of Fo)if(_a&=Li(rt,ha,!1,qr,!1,0),_a&&(_a&=Go(rt,ha,0,!1,0),_a&&(_a&=Go(rt,ha,1,!1,0),_a&&!(Ba(rt)&&Ba(ha))&&(_a&=Ns(rt,ha,!1,!1,0)))),!_a)return _a;return _a}function pn(rt,St){if(!St||rt.length===0)return rt;let Zt;for(let Kn=0;Kn<rt.length;Kn++)St.has(rt[Kn].escapedName)?Zt||(Zt=rt.slice(0,Kn)):Zt&&Zt.push(rt[Kn]);return Zt||rt}function qt(rt,St,Zt,Kn,Rr){const Tn=Y&&!!(xl(St)&48),gr=cp(kb(St),!1,Tn),qr=Zt(rt);return br(qr,gr,3,Kn,void 0,Rr)}function mn(rt,St,Zt,Kn,Rr,Tn,gr,qr){const zi=Df(Zt),Fo=Df(Kn);if(zi&2||Fo&2){if(Zt.valueDeclaration!==Kn.valueDeclaration)return Tn&&(zi&2&&Fo&2?_o(f.Types_have_separate_declarations_of_a_private_property_0,bi(Kn)):_o(f.Property_0_is_private_in_type_1_but_not_in_type_2,bi(Kn),Un(zi&2?rt:St),Un(zi&2?St:rt))),0}else if(Fo&4){if(!Fdt(Zt,Kn))return Tn&&_o(f.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2,bi(Kn),Un(Sx(Zt)||rt),Un(Sx(Kn)||St)),0}else if(zi&4)return Tn&&_o(f.Property_0_is_protected_in_type_1_but_public_in_type_2,bi(Kn),Un(rt),Un(St)),0;if(c===Wf&&b_(Zt)&&!b_(Kn))return 0;const _a=qt(Zt,Kn,Rr,Tn,gr);return _a?!qr&&Zt.flags&16777216&&Kn.flags&106500&&!(Kn.flags&16777216)?(Tn&&_o(f.Property_0_is_optional_in_type_1_but_required_in_type_2,bi(Kn),Un(rt),Un(St)),0):_a:(Tn&&Eo(f.Types_of_property_0_are_incompatible,bi(Kn)),0)}function Wn(rt,St,Zt,Kn){let Rr=!1;if(Zt.valueDeclaration&&ld(Zt.valueDeclaration)&&Ji(Zt.valueDeclaration.name)&&rt.symbol&&rt.symbol.flags&32){const gr=Zt.valueDeclaration.name.escapedText,qr=sk(rt.symbol,gr);if(qr&&ya(rt,qr)){const zi=w.getDeclarationName(rt.symbol.valueDeclaration),Fo=w.getDeclarationName(St.symbol.valueDeclaration);_o(f.Property_0_in_type_1_refers_to_a_different_member_that_cannot_be_accessed_from_within_type_2,Wm(gr),Wm(zi.escapedText===""?KF:zi),Wm(Fo.escapedText===""?KF:Fo));return}}const Tn=zo(qve(rt,St,Kn,!1));if((!_||_.code!==f.Class_0_incorrectly_implements_interface_1.code&&_.code!==f.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code)&&(Rr=!0),Tn.length===1){const gr=bi(Zt,void 0,0,20);_o(f.Property_0_is_missing_in_type_1_but_required_in_type_2,gr,...fx(rt,St)),Me(Zt.declarations)&&Jf(wr(Zt.declarations[0],f._0_is_declared_here,gr)),Rr&&z&&On++}else Qn(rt,St,!1)&&(Tn.length>5?_o(f.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,Un(rt),Un(St),wt(Tn.slice(0,4),gr=>bi(gr)).join(", "),Tn.length-4):_o(f.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,Un(rt),Un(St),wt(Tn,gr=>bi(gr)).join(", ")),Rr&&z&&On++)}function Li(rt,St,Zt,Kn,Rr,Tn){if(c===ap)return Br(rt,St,Kn);let gr=-1;if(Ba(St)){if(hE(rt)){if(!St.target.readonly&&(Y2(rt)||Ba(rt)&&rt.target.readonly))return 0;const ha=gy(rt),vi=gy(St),wo=Ba(rt)?rt.target.combinedFlags&4:4,Da=St.target.combinedFlags&4,Cs=Ba(rt)?rt.target.minLength:0,fs=St.target.minLength;if(!wo&&ha<fs)return Zt&&_o(f.Source_has_0_element_s_but_target_requires_1,ha,fs),0;if(!Da&&vi<Cs)return Zt&&_o(f.Source_has_0_element_s_but_target_allows_only_1,Cs,vi),0;if(!Da&&(wo||vi<ha))return Zt&&(Cs<fs?_o(f.Target_requires_0_element_s_but_source_may_have_fewer,fs):_o(f.Target_allows_only_0_element_s_but_source_may_have_more,vi)),0;const Pc=Js(rt),qh=Js(St),Av=dut(St.target,11),pA=L8(St.target,11),fA=St.target.hasRestElement;let hM=!!Kn;for(let S_=0;S_<ha;S_++){const Rx=Ba(rt)?rt.target.elementFlags[S_]:4,qm=ha-1-S_,Pt=fA&&S_>=Av?vi-1-Math.min(qm,pA):S_,Dr=St.target.elementFlags[Pt];if(Dr&8&&!(Rx&8))return Zt&&_o(f.Source_provides_no_match_for_variadic_element_at_position_0_in_target,Pt),0;if(Rx&8&&!(Dr&12))return Zt&&_o(f.Variadic_element_at_position_0_in_source_does_not_match_element_at_position_1_in_target,S_,Pt),0;if(Dr&1&&!(Rx&1))return Zt&&_o(f.Source_provides_no_match_for_required_element_at_position_0_in_target,Pt),0;if(hM&&((Rx&12||Dr&12)&&(hM=!1),hM&&(Kn!=null&&Kn.has(""+S_))))continue;const pi=Jb(Pc[S_],!!(Rx&Dr&2)),Xr=qh[Pt],ci=Rx&8&&Dr&4?Vu(Xr):Jb(Xr,!!(Dr&2)),ns=br(pi,ci,3,Zt,void 0,Tn);if(!ns)return Zt&&(vi>1||ha>1)&&(fA&&S_>=Av&&qm>=pA&&Av!==ha-pA-1?Eo(f.Type_at_positions_0_through_1_in_source_is_not_compatible_with_type_at_position_2_in_target,Av,ha-pA-1,Pt):Eo(f.Type_at_position_0_in_source_is_not_compatible_with_type_at_position_1_in_target,S_,Pt)),0;gr&=ns}return gr}if(St.target.combinedFlags&12)return 0}const qr=(c===Ph||c===Wf)&&!yE(rt)&&!Eee(rt)&&!Ba(rt),zi=Jve(rt,St,qr,!1);if(zi)return Zt&&Nn(rt,St)&&Wn(rt,St,zi,qr),0;if(yE(St)){for(const ha of pn(gs(rt),Kn))if(!uE(St,ha.escapedName)&&!(dr(ha).flags&32768))return Zt&&_o(f.Property_0_does_not_exist_on_type_1,bi(ha),Un(St)),0}const Fo=gs(St),_a=Ba(rt)&&Ba(St);for(const ha of pn(Fo,Kn)){const vi=ha.escapedName;if(!(ha.flags&4194304)&&(!_a||cg(vi)||vi==="length")&&(!Rr||ha.flags&16777216)){const wo=ya(rt,vi);if(wo&&wo!==ha){const Da=mn(rt,St,wo,ha,kb,Zt,Tn,c===Dp);if(!Da)return 0;gr&=Da}}}return gr}function Br(rt,St,Zt){if(!(rt.flags&524288&&St.flags&524288))return 0;const Kn=pn(Wb(rt),Zt),Rr=pn(Wb(St),Zt);if(Kn.length!==Rr.length)return 0;let Tn=-1;for(const gr of Kn){const qr=uE(St,gr.escapedName);if(!qr)return 0;const zi=Mve(gr,qr,br);if(!zi)return 0;Tn&=zi}return Tn}function Go(rt,St,Zt,Kn,Rr){var Tn,gr;if(c===ap)return Sa(rt,St,Zt);if(St===nn||rt===nn)return-1;const qr=rt.symbol&&nh(rt.symbol.valueDeclaration),zi=St.symbol&&nh(St.symbol.valueDeclaration),Fo=Yo(rt,qr&&Zt===1?0:Zt),_a=Yo(St,zi&&Zt===1?0:Zt);if(Zt===1&&Fo.length&&_a.length){const Cs=!!(Fo[0].flags&4),fs=!!(_a[0].flags&4);if(Cs&&!fs)return Kn&&_o(f.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type),0;if(!E_(Fo[0],_a[0],Kn))return 0}let ha=-1;const vi=Zt===1?Zi:ni,wo=Wr(rt),Da=Wr(St);if(wo&64&&Da&64&&rt.symbol===St.symbol||wo&4&&Da&4&&rt.target===St.target){N.assertEqual(Fo.length,_a.length);for(let Cs=0;Cs<_a.length;Cs++){const fs=fo(Fo[Cs],_a[Cs],!0,Kn,Rr,vi(Fo[Cs],_a[Cs]));if(!fs)return 0;ha&=fs}}else if(Fo.length===1&&_a.length===1){const Cs=c===Dp||!!V.noStrictGenericChecks,fs=Ha(Fo),Pc=Ha(_a);if(ha=fo(fs,Pc,Cs,Kn,Rr,vi(fs,Pc)),!ha&&Kn&&Zt===1&&wo&Da&&(((Tn=Pc.declaration)==null?void 0:Tn.kind)===176||((gr=fs.declaration)==null?void 0:gr.kind)===176)){const qh=Av=>Oh(Av,void 0,262144,Zt);return _o(f.Type_0_is_not_assignable_to_type_1,qh(fs),qh(Pc)),_o(f.Types_of_construct_signatures_are_incompatible),ha}}else e:for(const Cs of _a){const fs=Ro();let Pc=Kn;for(const qh of Fo){const Av=fo(qh,Cs,!0,Pc,Rr,vi(qh,Cs));if(Av){ha&=Av,tr(fs);continue e}Pc=!1}return Pc&&_o(f.Type_0_provides_no_match_for_the_signature_1,Un(rt),Oh(Cs,void 0,void 0,Zt)),0}return ha}function Nn(rt,St){const Zt=S9(rt,0),Kn=S9(rt,1),Rr=Wb(rt);return(Zt.length||Kn.length)&&!Rr.length?!!(Yo(St,0).length&&Zt.length||Yo(St,1).length&&Kn.length):!0}function ni(rt,St){return rt.parameters.length===0&&St.parameters.length===0?(Zt,Kn)=>Eo(f.Call_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Un(Zt),Un(Kn)):(Zt,Kn)=>Eo(f.Call_signature_return_types_0_and_1_are_incompatible,Un(Zt),Un(Kn))}function Zi(rt,St){return rt.parameters.length===0&&St.parameters.length===0?(Zt,Kn)=>Eo(f.Construct_signatures_with_no_arguments_have_incompatible_return_types_0_and_1,Un(Zt),Un(Kn)):(Zt,Kn)=>Eo(f.Construct_signature_return_types_0_and_1_are_incompatible,Un(Zt),Un(Kn))}function fo(rt,St,Zt,Kn,Rr,Tn){const gr=c===Ph?16:c===Wf?24:0;return Ive(Zt?P8(rt):rt,Zt?P8(St):St,gr,Kn,_o,Tn,qr,du);function qr(zi,Fo,_a){return br(zi,Fo,3,_a,void 0,Rr)}}function Sa(rt,St,Zt){const Kn=Yo(rt,Zt),Rr=Yo(St,Zt);if(Kn.length!==Rr.length)return 0;let Tn=-1;for(let gr=0;gr<Kn.length;gr++){const qr=z9(Kn[gr],Rr[gr],!1,!1,!1,br);if(!qr)return 0;Tn&=qr}return Tn}function Ec(rt,St,Zt,Kn){let Rr=-1;const Tn=St.keyType,gr=rt.flags&2097152?y9(rt):Wb(rt);for(const qr of gr)if(!o4e(rt,qr)&&hx(NN(qr,8576),Tn)){const zi=kb(qr),Fo=De||zi.flags&32768||Tn===Tt||!(qr.flags&16777216)?zi:hm(zi,524288),_a=br(Fo,St.type,3,Zt,void 0,Kn);if(!_a)return Zt&&_o(f.Property_0_is_incompatible_with_index_signature,bi(qr)),0;Rr&=_a}for(const qr of yd(rt))if(hx(qr.keyType,Tn)){const zi=ks(qr,St,Zt,Kn);if(!zi)return 0;Rr&=zi}return Rr}function ks(rt,St,Zt,Kn){const Rr=br(rt.type,St.type,3,Zt,void 0,Kn);return!Rr&&Zt&&(rt.keyType===St.keyType?_o(f._0_index_signatures_are_incompatible,Un(rt.keyType)):_o(f._0_and_1_index_signatures_are_incompatible,Un(rt.keyType),Un(St.keyType))),Rr}function Ns(rt,St,Zt,Kn,Rr){if(c===ap)return Ks(rt,St);const Tn=yd(St),gr=bt(Tn,zi=>zi.keyType===ke);let qr=-1;for(const zi of Tn){const Fo=c!==Wf&&!Zt&&gr&&zi.type.flags&1?-1:Kd(rt)&&gr?br(mv(rt),zi.type,3,Kn):Du(rt,zi,Kn,Rr);if(!Fo)return 0;qr&=Fo}return qr}function Du(rt,St,Zt,Kn){const Rr=D8(rt,St.keyType);return Rr?ks(Rr,St,Zt,Kn):!(Kn&1)&&(c!==Wf||Wr(rt)&8192)&&Ree(rt)?Ec(rt,St,Zt,Kn):(Zt&&_o(f.Index_signature_for_type_0_is_missing_in_type_1,Un(St.keyType),Un(rt)),0)}function Ks(rt,St){const Zt=yd(rt),Kn=yd(St);if(Zt.length!==Kn.length)return 0;for(const Rr of Kn){const Tn=xg(rt,Rr.keyType);if(!(Tn&&br(Tn.type,Rr.type,3)&&Tn.isReadonly===Rr.isReadonly))return 0}return-1}function E_(rt,St,Zt){if(!rt.declaration||!St.declaration)return!0;const Kn=jA(rt.declaration,6),Rr=jA(St.declaration,6);return Rr===2||Rr===4&&Kn!==2||Rr!==4&&!Kn?!0:(Zt&&_o(f.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,GT(Kn),GT(Rr)),!1)}}function Dve(n){if(n.flags&16)return!1;if(n.flags&3145728)return!!Ue(n.types,Dve);if(n.flags&465829888){const a=HT(n);if(a&&a!==n)return Dve(a)}return v_(n)||!!(n.flags&134217728)||!!(n.flags&268435456)}function a4e(n,a){return Ba(n)&&Ba(a)?et:gs(a).filter(c=>_ee(Xe(n,c.escapedName),dr(c)))}function _ee(n,a){return!!n&&!!a&&Cl(n,32768)&&!!U8(a)}function Pdt(n){return gs(n).filter(a=>U8(dr(a)))}function s4e(n,a,c=Tve){return I7e(n,a,c)||Fbt(n,a)||zbt(n,a)||Bbt(n,a)||Gbt(n,a)}function Nve(n,a,c){const d=n.types,_=d.map(x=>x.flags&402784252?0:-1);for(const[x,k]of a){let z=!1;for(let H=0;H<d.length;H++)if(_[H]){const re=xt(d[H],k);re&&c(x(),re)?z=!0:_[H]=3}for(let H=0;H<d.length;H++)_[H]===3&&(_[H]=z?0:-1)}const y=Nr(_,0)?ti(d.filter((x,k)=>_[k]),0):n;return y.flags&131072?n:y}function l4e(n){if(n.flags&524288){const a=__(n);return a.callSignatures.length===0&&a.constructSignatures.length===0&&a.indexInfos.length===0&&a.properties.length>0&&Zn(a.properties,c=>!!(c.flags&16777216))}return n.flags&2097152?Zn(n.types,l4e):!1}function Mdt(n,a,c){for(const d of gs(n))if(xye(a,d.escapedName,c))return!0;return!1}function Cve(n){return n===Qo||n===na||n.objectFlags&8?Z:u4e(n.symbol,n.typeParameters)}function c4e(n){return u4e(n,Xi(n).typeParameters)}function u4e(n,a=et){var c,d;const _=Xi(n);if(!_.variances){(c=sr)==null||c.push(sr.Phase.CheckTypes,"getVariancesWorker",{arity:a.length,id:bd(el(n))});const y=U0;U0||(U0=!0,JI=mu.length),_.variances=et;const x=[];for(const k of a){const z=Pve(k);let H=z&16384?z&8192?0:1:z&8192?2:void 0;if(H===void 0){let re=!1,be=!1;const ge=pa;pa=Dt=>Dt?be=!0:re=!0;const Ke=W9(n,k,Ip),gt=W9(n,k,Ms);H=(Ea(gt,Ke)?1:0)|(Ea(Ke,gt)?2:0),H===3&&Ea(W9(n,k,Rc),Ke)&&(H=4),pa=ge,(re||be)&&(re&&(H|=8),be&&(H|=16))}x.push(H)}y||(U0=!1,JI=0),_.variances=x,(d=sr)==null||d.pop({variances:x.map(N.formatVariance)})}return _.variances}function W9(n,a,c){const d=Y1(a,c),_=el(n);if(Kt(_))return _;const y=n.flags&524288?RN(n,yy(Xi(n).typeParameters,d)):hy(_,yy(_.typeParameters,d));return mt.add(bd(y)),y}function hee(n){return mt.has(bd(n))}function Pve(n){var a;return od((a=n.symbol)==null?void 0:a.declarations,(c,d)=>c|pd(d),0)&28672}function Ldt(n,a){for(let c=0;c<a.length;c++)if((a[c]&7)===1&&n[c].flags&16384)return!0;return!1}function kdt(n){return n.flags&262144&&!Ld(n)}function wdt(n){return!!(Wr(n)&4)&&!n.node}function gee(n){return wdt(n)&&bt(Js(n),a=>!!(a.flags&262144)||gee(a))}function Odt(n,a,c,d){const _=[];let y="";const x=z(n,0),k=z(a,0);return`${y}${x},${k}${c}`;function z(H,re=0){let be=""+H.target.id;for(const ge of Js(H)){if(ge.flags&262144){if(d||kdt(ge)){let Ke=_.indexOf(ge);Ke<0&&(Ke=_.length,_.push(ge)),be+="="+Ke;continue}y="*"}else if(re<4&&gee(ge)){be+="<"+z(ge,re+1)+">";continue}be+="-"+ge.id}return be}}function vee(n,a,c,d,_){if(d===ap&&n.id>a.id){const x=n;n=a,a=x}const y=c?":"+c:"";return gee(n)&&gee(a)?Odt(n,a,y,_):`${n.id},${a.id}${y}`}function F9(n,a){if(xl(n)&6){for(const c of n.links.containingType.types){const d=ya(c,n.escapedName),_=d&&F9(d,a);if(_)return _}return}return a(n)}function Sx(n){return n.parent&&n.parent.flags&32?el(Pd(n)):void 0}function yee(n){const a=Sx(n),c=a&&Mp(a)[0];return c&&Xe(c,n.escapedName)}function Wdt(n,a){return F9(n,c=>{const d=Sx(c);return d?EN(d,a):!1})}function Fdt(n,a){return!F9(a,c=>Df(c)&4?!Wdt(n,Sx(c)):!1)}function d4e(n,a,c){return F9(a,d=>Df(d,c)&4?!EN(n,Sx(d)):!1)?void 0:n}function X2(n,a,c,d=3){if(c>=d){if((Wr(n)&96)===96&&(n=p4e(n)),n.flags&2097152)return bt(n.types,k=>X2(k,a,c,d));const _=bee(n);let y=0,x=0;for(let k=0;k<c;k++){const z=a[k];if(f4e(z,_)){if(z.id>=x&&(y++,y>=d))return!0;x=z.id}}}return!1}function p4e(n){let a;for(;(Wr(n)&96)===96&&(a=UT(n))&&(a.symbol||a.flags&2097152&&bt(a.types,c=>!!c.symbol));)n=a;return n}function f4e(n,a){return(Wr(n)&96)===96&&(n=p4e(n)),n.flags&2097152?bt(n.types,c=>f4e(c,a)):bee(n)===a}function bee(n){if(n.flags&524288&&!Xve(n)){if(Wr(n)&4&&n.node)return n.node;if(n.symbol&&!(Wr(n)&16&&n.symbol.flags&32))return n.symbol;if(Ba(n))return n.target}if(n.flags&262144)return n.symbol;if(n.flags&8388608){do n=n.objectType;while(n.flags&8388608);return n}return n.flags&16777216?n.root:n}function zdt(n,a){return Mve(n,a,z8)!==0}function Mve(n,a,c){if(n===a)return-1;const d=Df(n)&6,_=Df(a)&6;if(d!==_)return 0;if(d){if(GN(n)!==GN(a))return 0}else if((n.flags&16777216)!==(a.flags&16777216))return 0;return b_(n)!==b_(a)?0:c(dr(n),dr(a))}function Bdt(n,a,c){const d=Yp(n),_=Yp(a),y=rh(n),x=rh(a),k=Hh(n),z=Hh(a);return!!(d===_&&y===x&&k===z||c&&y<=x)}function z9(n,a,c,d,_,y){if(n===a)return-1;if(!Bdt(n,a,c)||Me(n.typeParameters)!==Me(a.typeParameters))return 0;if(a.typeParameters){const z=kp(n.typeParameters,a.typeParameters);for(let H=0;H<a.typeParameters.length;H++){const re=n.typeParameters[H],be=a.typeParameters[H];if(!(re===be||y(so(U2(re),z)||_n,U2(be)||_n)&&y(so(JT(re),z)||_n,JT(be)||_n)))return 0}n=MN(n,z,!0)}let x=-1;if(!d){const z=pE(n);if(z){const H=pE(a);if(H){const re=y(z,H);if(!re)return 0;x&=re}}}const k=Yp(a);for(let z=0;z<k;z++){const H=y_(n,z),re=y_(a,z),be=y(re,H);if(!be)return 0;x&=be}if(!_){const z=jf(n),H=jf(a);x&=z||H?Gdt(z,H,y):y(ps(n),ps(a))}return x}function Gdt(n,a,c){return n&&a&&ave(n,a)?n.type===a.type?-1:n.type&&a.type?c(n.type,a.type):0:0}function Vdt(n){let a;for(const c of n)if(!(c.flags&131072)){const d=bv(c);if(a??(a=d),d===c||d!==a)return!1}return!0}function m4e(n){return od(n,(a,c)=>a|(c.flags&1048576?m4e(c.types):c.flags),0)}function jdt(n){if(n.length===1)return n[0];const a=Y?eo(n,d=>dc(d,_=>!(_.flags&98304))):n,c=Vdt(a)?ti(a):od(a,(d,_)=>jb(d,_)?_:d);return a===n?c:V9(c,m4e(n)&98304)}function Udt(n){return od(n,(a,c)=>jb(c,a)?c:a)}function qf(n){return!!(Wr(n)&4)&&(n.target===Qo||n.target===na)}function Y2(n){return!!(Wr(n)&4)&&n.target===na}function hE(n){return qf(n)||Ba(n)}function B9(n){return qf(n)&&!Y2(n)||Ba(n)&&!n.target.readonly}function G9(n){return qf(n)?Js(n)[0]:void 0}function by(n){return qf(n)||!(n.flags&98304)&&Ea(n,ff)}function Lve(n){return B9(n)||!(n.flags&98305)&&Ea(n,ec)}function kve(n){if(!(Wr(n)&4)||!(Wr(n.target)&3))return;if(Wr(n)&33554432)return Wr(n)&67108864?n.cachedEquivalentBaseType:void 0;n.objectFlags|=33554432;const a=n.target;if(Wr(a)&1){const _=Is(a);if(_&&_.expression.kind!==80&&_.expression.kind!==211)return}const c=Mp(a);if(c.length!==1||Ob(n.symbol).size)return;let d=Me(a.typeParameters)?so(c[0],kp(a.typeParameters,Js(n).slice(0,a.typeParameters.length))):c[0];return Me(Js(n))>Me(a.typeParameters)&&(d=Kp(d,Ya(Js(n)))),n.objectFlags|=67108864,n.cachedEquivalentBaseType=d}function _4e(n){return Y?n===Ci:n===Lt}function Eee(n){const a=G9(n);return!!a&&_4e(a)}function $2(n){let a;return Ba(n)||!!ya(n,"0")||by(n)&&!!(a=Xe(n,"length"))&&up(a,c=>!!(c.flags&256))}function See(n){return by(n)||$2(n)}function Hdt(n,a){const c=Xe(n,""+a);if(c)return c;if(up(n,Ba))return y4e(n,a,V.noUncheckedIndexedAccess?Oe:void 0)}function qdt(n){return!(n.flags&240544)}function v_(n){return!!(n.flags&109472)}function h4e(n){const a=_v(n);return a.flags&2097152?bt(a.types,v_):v_(a)}function Jdt(n){return n.flags&2097152&&An(n.types,v_)||n}function V8(n){return n.flags&16?!0:n.flags&1048576?n.flags&1024?!0:Zn(n.types,v_):v_(n)}function bv(n){return n.flags&1056?VZ(n):n.flags&402653312?ke:n.flags&256?Tt:n.flags&2048?kt:n.flags&512?Ni:n.flags&1048576?Kdt(n):n}function Kdt(n){const a=`B${bd(n)}`;return ex(a)??_b(a,pl(n,bv))}function wve(n){return n.flags&402653312?ke:n.flags&288?Tt:n.flags&2048?kt:n.flags&512?Ni:n.flags&1048576?pl(n,wve):n}function Q1(n){return n.flags&1056&&X1(n)?VZ(n):n.flags&128&&X1(n)?ke:n.flags&256&&X1(n)?Tt:n.flags&2048&&X1(n)?kt:n.flags&512&&X1(n)?Ni:n.flags&1048576?pl(n,Q1):n}function g4e(n){return n.flags&8192?Ai:n.flags&1048576?pl(n,g4e):n}function Ove(n,a){return pte(n,a)||(n=g4e(Q1(n))),Ed(n)}function Xdt(n,a,c){if(n&&v_(n)){const d=a?c?i6(a):a:void 0;n=Ove(n,d)}return n}function Wve(n,a,c,d){if(n&&v_(n)){const _=a?rS(c,a,d):void 0;n=Ove(n,_)}return n}function Ba(n){return!!(Wr(n)&4&&n.target.objectFlags&8)}function Hb(n){return Ba(n)&&!!(n.target.combinedFlags&8)}function v4e(n){return Hb(n)&&n.target.elementFlags.length===1}function Tee(n){return Q2(n,n.target.fixedLength)}function y4e(n,a,c){return pl(n,d=>{const _=d,y=Tee(_);return y?c&&a>=ive(_.target)?ti([y,c]):y:Oe})}function Ydt(n){const a=Tee(n);return a&&Vu(a)}function Q2(n,a,c=0,d=!1,_=!1){const y=gy(n)-c;if(a<y){const x=Js(n),k=[];for(let z=a;z<y;z++){const H=x[z];k.push(n.target.elementFlags[z]&8?Lp(H,Tt):H)}return d?ba(k):ti(k,_?0:1)}}function $dt(n,a){return gy(n)===gy(a)&&Zn(n.target.elementFlags,(c,d)=>(c&12)===(a.target.elementFlags[d]&12))}function b4e({value:n}){return n.base10Value==="0"}function E4e(n){return dc(n,a=>_m(a,4194304))}function Qdt(n){return pl(n,Zdt)}function Zdt(n){return n.flags&4?Zo:n.flags&8?Ka:n.flags&64?Zu:n===bn||n===en||n.flags&114691||n.flags&128&&n.value===""||n.flags&256&&n.value===0||n.flags&2048&&b4e(n)?n:jr}function V9(n,a){const c=a&~n.flags&98304;return c===0?n:ti(c===32768?[n,Oe]:c===65536?[n,me]:[n,Oe,me])}function qb(n,a=!1){N.assert(Y);const c=a?_e:Oe;return n===c||n.flags&1048576&&n.types[0]===c?n:ti([n,c])}function ept(n){return jd||(jd=q2("NonNullable",524288,void 0)||ft),jd!==ft?RN(jd,[n]):ba([n,La])}function Ev(n){return Y?iA(n,2097152):n}function S4e(n){return Y?ti([n,J]):n}function Aee(n){return Y?Oee(n,J):n}function Iee(n,a,c){return c?dC(a)?qb(n):S4e(n):n}function j8(n,a){return I4(a)?Ev(n):qu(a)?Aee(n):n}function Jb(n,a){return De&&a?Oee(n,L):n}function U8(n){return n===L||!!(n.flags&1048576)&&n.types[0]===L}function xee(n){return De?Oee(n,L):hm(n,524288)}function tpt(n,a){return(n.flags&524)!==0&&(a.flags&28)!==0}function Ree(n){const a=Wr(n);return n.flags&2097152?Zn(n.types,Ree):!!(n.symbol&&n.symbol.flags&7040&&!(n.symbol.flags&32)&&!Dte(n))||!!(a&4194304)||!!(a&1024&&Ree(n.source))}function tA(n,a){const c=Xa(n.flags,n.escapedName,xl(n)&8);c.declarations=n.declarations,c.parent=n.parent,c.links.type=a,c.links.target=n,n.valueDeclaration&&(c.valueDeclaration=n.valueDeclaration);const d=Xi(n).nameType;return d&&(c.links.nameType=d),c}function npt(n,a){const c=ua();for(const d of Wb(n)){const _=dr(d),y=a(_);c.set(d.escapedName,y===_?d:tA(d,y))}return c}function H8(n){if(!(yE(n)&&Wr(n)&8192))return n;const a=n.regularType;if(a)return a;const c=n,d=npt(n,H8),_=Ls(c.symbol,d,c.callSignatures,c.constructSignatures,c.indexInfos);return _.flags=c.flags,_.objectFlags|=c.objectFlags&-8193,n.regularType=_,_}function T4e(n,a,c){return{parent:n,propertyName:a,siblings:c,resolvedProperties:void 0}}function A4e(n){if(!n.siblings){const a=[];for(const c of A4e(n.parent))if(yE(c)){const d=uE(c,n.propertyName);d&&oA(dr(d),_=>{a.push(_)})}n.siblings=a}return n.siblings}function rpt(n){if(!n.resolvedProperties){const a=new Map;for(const c of A4e(n))if(yE(c)&&!(Wr(c)&2097152))for(const d of gs(c))a.set(d.escapedName,d);n.resolvedProperties=zo(a.values())}return n.resolvedProperties}function ipt(n,a){if(!(n.flags&4))return n;const c=dr(n),d=a&&T4e(a,n.escapedName,void 0),_=Fve(c,d);return _===c?n:tA(n,_)}function opt(n){const a=qe.get(n.escapedName);if(a)return a;const c=tA(n,_e);return c.flags|=16777216,qe.set(n.escapedName,c),c}function apt(n,a){const c=ua();for(const _ of Wb(n))c.set(_.escapedName,ipt(_,a));if(a)for(const _ of rpt(a))c.has(_.escapedName)||c.set(_.escapedName,opt(_));const d=Ls(n.symbol,c,et,et,eo(yd(n),_=>Vh(_.keyType,Xp(_.type),_.isReadonly)));return d.objectFlags|=Wr(n)&266240,d}function Xp(n){return Fve(n,void 0)}function Fve(n,a){if(Wr(n)&196608){if(a===void 0&&n.widened)return n.widened;let c;if(n.flags&98305)c=j;else if(yE(n))c=apt(n,a);else if(n.flags&1048576){const d=a||T4e(void 0,void 0,n.types),_=eo(n.types,y=>y.flags&98304?y:Fve(y,d));c=ti(_,bt(_,yv)?2:1)}else n.flags&2097152?c=ba(eo(n.types,Xp)):hE(n)&&(c=hy(n.target,eo(Js(n),Xp)));return c&&a===void 0&&(n.widened=c),c||n}return n}function Dee(n){let a=!1;if(Wr(n)&65536){if(n.flags&1048576)if(bt(n.types,yv))a=!0;else for(const c of n.types)Dee(c)&&(a=!0);if(hE(n))for(const c of Js(n))Dee(c)&&(a=!0);if(yE(n))for(const c of Wb(n)){const d=dr(c);Wr(d)&65536&&(Dee(d)||Je(c.valueDeclaration,f.Object_literal_s_property_0_implicitly_has_an_1_type,bi(c),Un(Xp(d))),a=!0)}}return a}function gE(n,a,c){const d=Un(Xp(a));if(lr(n)&&!Ak(jn(n),V))return;let _;switch(n.kind){case 226:case 172:case 171:_=pe?f.Member_0_implicitly_has_an_1_type:f.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 169:const y=n;if(Ve(y.name)){const x=u0(y.name);if((sI(y.parent)||bh(y.parent)||Eh(y.parent))&&y.parent.parameters.includes(y)&&(bl(y,y.name.escapedText,788968,void 0,y.name.escapedText,!0)||x&&CU(x))){const k="arg"+y.parent.parameters.indexOf(y),z=Rs(y.name)+(y.dotDotDotToken?"[]":"");_u(pe,n,f.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,k,z);return}}_=n.dotDotDotToken?pe?f.Rest_parameter_0_implicitly_has_an_any_type:f.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:pe?f.Parameter_0_implicitly_has_an_1_type:f.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 208:if(_=f.Binding_element_0_implicitly_has_an_1_type,!pe)return;break;case 324:Je(n,f.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,d);return;case 330:pe&&ZR(n.parent)&&Je(n.parent.tagName,f.This_overload_implicitly_returns_the_type_0_because_it_lacks_a_return_type_annotation,d);return;case 262:case 174:case 173:case 177:case 178:case 218:case 219:if(pe&&!n.name){c===3?Je(n,f.Generator_implicitly_has_yield_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type_annotation,d):Je(n,f.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,d);return}_=pe?c===3?f._0_which_lacks_return_type_annotation_implicitly_has_an_1_yield_type:f._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:f._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 200:pe&&Je(n,f.Mapped_object_type_implicitly_has_an_any_template_type);return;default:_=pe?f.Variable_0_implicitly_has_an_1_type:f.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}_u(pe,n,_,Rs(Mo(n)),d)}function Nee(n,a,c){r(()=>{pe&&Wr(a)&65536&&(!c||!bye(n))&&(Dee(a)||gE(n,a,c))})}function zve(n,a,c){const d=Yp(n),_=Yp(a),y=Z8(n),x=Z8(a),k=x?_-1:_,z=y?k:Math.min(d,k),H=pE(n);if(H){const re=pE(a);re&&c(H,re)}for(let re=0;re<z;re++)c(y_(n,re),y_(a,re));x&&c(fB(n,z,qT(x)&&!Um(x,Lve)),x)}function Bve(n,a,c){const d=jf(n),_=jf(a);d&&_&&ave(d,_)&&d.type&&_.type?c(d.type,_.type):c(ps(n),ps(a))}function q8(n,a,c,d){return Gve(n.map(jve),a,c,d||Tve)}function spt(n,a=0){return n&&Gve(wt(n.inferences,I4e),n.signature,n.flags|a,n.compareTypes)}function Gve(n,a,c,d){const _={inferences:n,signature:a,flags:c,compareTypes:d,mapper:As,nonFixingMapper:As};return _.mapper=lpt(_),_.nonFixingMapper=cpt(_),_}function lpt(n){return vve(wt(n.inferences,a=>a.typeParameter),wt(n.inferences,(a,c)=>()=>(a.isFixed||(upt(n),Cee(n.inferences),a.isFixed=!0),Yve(n,c))))}function cpt(n){return vve(wt(n.inferences,a=>a.typeParameter),wt(n.inferences,(a,c)=>()=>Yve(n,c)))}function Cee(n){for(const a of n)a.isFixed||(a.inferredType=void 0)}function Vve(n,a,c){(n.intraExpressionInferenceSites??(n.intraExpressionInferenceSites=[])).push({node:a,type:c})}function upt(n){if(n.intraExpressionInferenceSites){for(const{node:a,type:c}of n.intraExpressionInferenceSites){const d=a.kind===174?y3e(a,2):Yd(a,2);d&&Sv(n.inferences,c,d)}n.intraExpressionInferenceSites=void 0}}function jve(n){return{typeParameter:n,candidates:void 0,contraCandidates:void 0,inferredType:void 0,priority:void 0,topLevel:!0,isFixed:!1,impliedArity:void 0}}function I4e(n){return{typeParameter:n.typeParameter,candidates:n.candidates&&n.candidates.slice(),contraCandidates:n.contraCandidates&&n.contraCandidates.slice(),inferredType:n.inferredType,priority:n.priority,topLevel:n.topLevel,isFixed:n.isFixed,impliedArity:n.impliedArity}}function dpt(n){const a=nr(n.inferences,zN);return a.length?Gve(wt(a,I4e),n.signature,n.flags,n.compareTypes):void 0}function Uve(n){return n&&n.mapper}function vE(n){const a=Wr(n);if(a&524288)return!!(a&1048576);const c=!!(n.flags&465829888||n.flags&524288&&!x4e(n)&&(a&4&&(n.node||bt(Js(n),vE))||a&16&&n.symbol&&n.symbol.flags&14384&&n.symbol.declarations||a&12583968)||n.flags&3145728&&!(n.flags&1024)&&!x4e(n)&&bt(n.types,vE));return n.flags&3899393&&(n.objectFlags|=524288|(c?1048576:0)),c}function x4e(n){if(n.aliasSymbol&&!n.aliasTypeArguments){const a=fl(n.aliasSymbol,265);return!!(a&&Gn(a.parent,c=>c.kind===312?!0:c.kind===267?!1:"quit"))}return!1}function J8(n,a,c=0){return!!(n===a||n.flags&3145728&&bt(n.types,d=>J8(d,a,c))||c<3&&n.flags&16777216&&(J8(fE(n),a,c+1)||J8(mE(n),a,c+1)))}function ppt(n,a){const c=jf(n);return c?!!c.type&&J8(c.type,a):J8(ps(n),a)}function fpt(n){const a=ua();oA(n,d=>{if(!(d.flags&128))return;const _=hl(d.value),y=Xa(4,_);y.links.type=j,d.symbol&&(y.declarations=d.symbol.declarations,y.valueDeclaration=d.symbol.valueDeclaration),a.set(_,y)});const c=n.flags&4?[Vh(ke,La,!1)]:et;return Ls(void 0,a,et,et,c)}function R4e(n,a,c){const d=n.id+","+a.id+","+c.id;if(qc.has(d))return qc.get(d);const _=n.id+","+(a.target||a).id;if(Nr(op,_))return;op.push(_);const y=mpt(n,a,c);return op.pop(),qc.set(d,y),y}function Hve(n){return!(Wr(n)&262144)||yE(n)&&bt(gs(n),a=>Hve(dr(a)))||Ba(n)&&bt(J1(n),Hve)}function mpt(n,a,c){if(!(xg(n,ke)||gs(n).length!==0&&Hve(n)))return;if(qf(n))return Vu(Pee(Js(n)[0],a,c),Y2(n));if(Ba(n)){const _=wt(J1(n),x=>Pee(x,a,c)),y=Bh(a)&4?eo(n.target.elementFlags,x=>x&2?1:x):n.target.elementFlags;return jh(_,y,n.target.readonly,n.target.labeledElementDeclarations)}const d=zf(1040,void 0);return d.source=n,d.mappedType=a,d.constraintType=c,d}function _pt(n){const a=Xi(n);return a.type||(a.type=Pee(n.links.propertyType,n.links.mappedType,n.links.constraintType)),a.type}function Pee(n,a,c){const d=Lp(c.type,m_(a)),_=mv(a),y=jve(d);return Sv([y],n,_),D4e(y)||_n}function*qve(n,a,c,d){const _=gs(a);for(const y of _)if(!g8e(y)&&(c||!(y.flags&16777216||xl(y)&48))){const x=ya(n,y.escapedName);if(!x)yield y;else if(d){const k=dr(y);if(k.flags&109472){const z=dr(x);z.flags&1||Ed(z)===Ed(k)||(yield y)}}}}function Jve(n,a,c,d){return L6(qve(n,a,c,d))}function hpt(n,a){return!(a.target.combinedFlags&8)&&a.target.minLength>n.target.minLength||!a.target.hasRestElement&&(n.target.hasRestElement||a.target.fixedLength<n.target.fixedLength)}function gpt(n,a){return Ba(n)&&Ba(a)?hpt(n,a):!!Jve(n,a,!1,!0)&&!!Jve(a,n,!1,!1)}function D4e(n){return n.candidates?ti(n.candidates,2):n.contraCandidates?ba(n.contraCandidates):void 0}function Kve(n){return!!ei(n).skipDirectInference}function N4e(n){return!!(n.symbol&&bt(n.symbol.declarations,Kve))}function vpt(n,a){const c=n.texts[0],d=a.texts[0],_=n.texts[n.texts.length-1],y=a.texts[a.texts.length-1],x=Math.min(c.length,d.length),k=Math.min(_.length,y.length);return c.slice(0,x)!==d.slice(0,x)||_.slice(_.length-k)!==y.slice(y.length-k)}function C4e(n,a){if(n==="")return!1;const c=+n;return isFinite(c)&&(!a||""+c===n)}function ypt(n){return see(jU(n))}function Mee(n,a){if(a.flags&1)return!0;if(a.flags&134217732)return Ea(n,a);if(a.flags&268435456){const c=[];for(;a.flags&268435456;)c.unshift(a.symbol),a=a.type;return od(c,(_,y)=>yx(y,_),n)===n&&Mee(n,a)}return!1}function P4e(n,a){if(a.flags&2097152)return Zn(a.types,c=>c===lc||P4e(n,c));if(a.flags&4||Ea(n,a))return!0;if(n.flags&128){const c=n.value;return!!(a.flags&8&&C4e(c,!1)||a.flags&64&&rW(c,!1)||a.flags&98816&&c===a.intrinsicName||a.flags&268435456&&Mee(Xd(c),a)||a.flags&134217728&&Lee(n,a))}if(n.flags&134217728){const c=n.texts;return c.length===2&&c[0]===""&&c[1]===""&&Ea(n.types[0],a)}return!1}function M4e(n,a){return n.flags&128?L4e([n.value],et,a):n.flags&134217728?Ca(n.texts,a.texts)?wt(n.types,bpt):L4e(n.texts,n.types,a):void 0}function Lee(n,a){const c=M4e(n,a);return!!c&&Zn(c,(d,_)=>P4e(d,a.types[_]))}function bpt(n){return n.flags&402653317?n:XT(["",""],[n])}function L4e(n,a,c){const d=n.length-1,_=n[0],y=n[d],x=c.texts,k=x.length-1,z=x[0],H=x[k];if(d===0&&_.length<z.length+H.length||!_.startsWith(z)||!y.endsWith(H))return;const re=y.slice(0,y.length-H.length),be=[];let ge=0,Ke=z.length;for(let an=1;an<k;an++){const cn=x[an];if(cn.length>0){let ar=ge,On=Ke;for(;On=gt(ar).indexOf(cn,On),!(On>=0);){if(ar++,ar===n.length)return;On=0}Dt(ar,On),Ke+=cn.length}else if(Ke<gt(ge).length)Dt(ge,Ke+1);else if(ge<d)Dt(ge+1,0);else return}return Dt(d,gt(d).length),be;function gt(an){return an<d?n[an]:re}function Dt(an,cn){const ar=an===ge?Xd(gt(an).slice(Ke,cn)):XT([n[ge].slice(Ke),...n.slice(ge+1,an),gt(an).slice(0,cn)],a.slice(ge,an));be.push(ar),ge=an,Ke=cn}}function Sv(n,a,c,d=0,_=!1){let y=!1,x,k=2048,z,H,re,be=0;ge(a,c);function ge(wn,Qn){if(!(!vE(Qn)||H2(Qn))){if(wn===Rt||wn===Ye){const oo=x;x=wn,ge(Qn,Qn),x=oo;return}if(wn.aliasSymbol&&wn.aliasSymbol===Qn.aliasSymbol){if(wn.aliasTypeArguments){const oo=Xi(wn.aliasSymbol).typeParameters,br=Gh(oo),Co=Fb(wn.aliasTypeArguments,oo,br,lr(wn.aliasSymbol.valueDeclaration)),ss=Fb(Qn.aliasTypeArguments,oo,br,lr(wn.aliasSymbol.valueDeclaration));ar(Co,ss,c4e(wn.aliasSymbol))}return}if(wn===Qn&&wn.flags&3145728){for(const oo of wn.types)ge(oo,oo);return}if(Qn.flags&1048576){const[oo,br]=cn(wn.flags&1048576?wn.types:[wn],Qn.types,Ept),[Co,ss]=cn(oo,br,Spt);if(ss.length===0)return;if(Qn=ti(ss),Co.length===0){Ke(wn,Qn,1);return}wn=ti(Co)}else if(Qn.flags&2097152&&!Zn(Qn.types,oee)&&!(wn.flags&1048576)){const[oo,br]=cn(wn.flags&2097152?wn.types:[wn],Qn.types,vv);if(oo.length===0||br.length===0)return;wn=ba(oo),Qn=ba(br)}if(Qn.flags&41943040){if(H2(Qn))return;Qn=Gb(Qn)}if(Qn.flags&8650752){if(N4e(wn))return;const oo=zn(Qn);if(oo){if(Wr(wn)&262144||wn===vn)return;if(!oo.isFixed){const Co=x||wn;if(Co===Ye)return;(oo.priority===void 0||d<oo.priority)&&(oo.candidates=void 0,oo.contraCandidates=void 0,oo.topLevel=!0,oo.priority=d),d===oo.priority&&(_&&!y?Nr(oo.contraCandidates,Co)||(oo.contraCandidates=xn(oo.contraCandidates,Co),Cee(n)):Nr(oo.candidates,Co)||(oo.candidates=xn(oo.candidates,Co),Cee(n))),!(d&128)&&Qn.flags&262144&&oo.topLevel&&!J8(c,Qn)&&(oo.topLevel=!1,Cee(n))}k=Math.min(k,d);return}const br=gv(Qn,!1);if(br!==Qn)ge(wn,br);else if(Qn.flags&8388608){const Co=gv(Qn.indexType,!1);if(Co.flags&465829888){const ss=L6e(gv(Qn.objectType,!1),Co,!1);ss&&ss!==Qn&&ge(wn,ss)}}}if(Wr(wn)&4&&Wr(Qn)&4&&(wn.target===Qn.target||qf(wn)&&qf(Qn))&&!(wn.node&&Qn.node))ar(Js(wn),Js(Qn),Cve(wn.target));else if(wn.flags&4194304&&Qn.flags&4194304)On(wn.type,Qn.type);else if((V8(wn)||wn.flags&4)&&Qn.flags&4194304){const oo=fpt(wn);gt(oo,Qn.type,256)}else if(wn.flags&8388608&&Qn.flags&8388608)ge(wn.objectType,Qn.objectType),ge(wn.indexType,Qn.indexType);else if(wn.flags&268435456&&Qn.flags&268435456)wn.symbol===Qn.symbol&&ge(wn.type,Qn.type);else if(wn.flags&33554432)ge(wn.baseType,Qn),Ke(qge(wn),Qn,4);else if(Qn.flags&16777216)an(wn,Qn,tr);else if(Qn.flags&3145728)er(wn,Qn.types,Qn.flags);else if(wn.flags&1048576){const oo=wn.types;for(const br of oo)ge(br,Qn)}else if(Qn.flags&134217728)Ro(wn,Qn);else{if(wn=h_(wn),Kd(wn)&&Kd(Qn)&&an(wn,Qn,Eo),!(d&512&&wn.flags&467927040)){const oo=kd(wn);if(oo!==wn&&!(oo.flags&2621440))return ge(oo,Qn);wn=oo}wn.flags&2621440&&an(wn,Qn,Bo)}}}function Ke(wn,Qn,oo){const br=d;d|=oo,ge(wn,Qn),d=br}function gt(wn,Qn,oo){const br=d;d|=oo,On(wn,Qn),d=br}function Dt(wn,Qn,oo,br){const Co=d;d|=br,er(wn,Qn,oo),d=Co}function an(wn,Qn,oo){const br=wn.id+","+Qn.id,Co=z&&z.get(br);if(Co!==void 0){k=Math.min(k,Co);return}(z||(z=new Map)).set(br,-1);const ss=k;k=2048;const Ts=be;(H??(H=[])).push(wn),(re??(re=[])).push(Qn),X2(wn,H,H.length,2)&&(be|=1),X2(Qn,re,re.length,2)&&(be|=2),be!==3?oo(wn,Qn):k=-1,re.pop(),H.pop(),be=Ts,z.set(br,k),k=Math.min(k,ss)}function cn(wn,Qn,oo){let br,Co;for(const ss of Qn)for(const Ts of wn)oo(Ts,ss)&&(ge(Ts,ss),br=Mg(br,Ts),Co=Mg(Co,ss));return[br?nr(wn,ss=>!Nr(br,ss)):wn,Co?nr(Qn,ss=>!Nr(Co,ss)):Qn]}function ar(wn,Qn,oo){const br=wn.length<Qn.length?wn.length:Qn.length;for(let Co=0;Co<br;Co++)Co<oo.length&&(oo[Co]&7)===2?On(wn[Co],Qn[Co]):ge(wn[Co],Qn[Co])}function On(wn,Qn){_=!_,ge(wn,Qn),_=!_}function ln(wn,Qn){oe||d&1024?On(wn,Qn):ge(wn,Qn)}function zn(wn){if(wn.flags&8650752){for(const Qn of n)if(wn===Qn.typeParameter)return Qn}}function Fn(wn){let Qn;for(const oo of wn){const br=oo.flags&2097152&&An(oo.types,Co=>!!zn(Co));if(!br||Qn&&br!==Qn)return;Qn=br}return Qn}function er(wn,Qn,oo){let br=0;if(oo&1048576){let Co;const ss=wn.flags&1048576?wn.types:[wn],Ts=new Array(ss.length);let ju=!1;for(const Ga of Qn)if(zn(Ga))Co=Ga,br++;else for(let wd=0;wd<ss.length;wd++){const Wl=k;k=2048,ge(ss[wd],Ga),k===d&&(Ts[wd]=!0),ju=ju||k===-1,k=Math.min(k,Wl)}if(br===0){const Ga=Fn(Qn);Ga&&Ke(wn,Ga,1);return}if(br===1&&!ju){const Ga=Pi(ss,(wd,Wl)=>Ts[Wl]?void 0:wd);if(Ga.length){ge(ti(Ga),Co);return}}}else for(const Co of Qn)zn(Co)?br++:ge(wn,Co);if(oo&2097152?br===1:br>0)for(const Co of Qn)zn(Co)&&Ke(wn,Co,1)}function qn(wn,Qn,oo){if(oo.flags&1048576||oo.flags&2097152){let br=!1;for(const Co of oo.types)br=qn(wn,Qn,Co)||br;return br}if(oo.flags&4194304){const br=zn(oo.type);if(br&&!br.isFixed&&!N4e(wn)){const Co=R4e(wn,Qn,oo);Co&&Ke(Co,br.typeParameter,Wr(wn)&262144?16:8)}return!0}if(oo.flags&262144){Ke(Q_(wn,wn.pattern?2:0),oo,32);const br=HT(oo);if(br&&qn(wn,Qn,br))return!0;const Co=wt(gs(wn),dr),ss=wt(yd(wn),Ts=>Ts!==Ur?Ts.type:jr);return ge(ti(So(Co,ss)),mv(Qn)),!0}return!1}function tr(wn,Qn){if(wn.flags&16777216)ge(wn.checkType,Qn.checkType),ge(wn.extendsType,Qn.extendsType),ge(fE(wn),fE(Qn)),ge(mE(wn),mE(Qn));else{const oo=[fE(Qn),mE(Qn)];Dt(wn,oo,Qn.flags,_?64:0)}}function Ro(wn,Qn){const oo=M4e(wn,Qn),br=Qn.types;if(oo||Zn(Qn.texts,Co=>Co.length===0))for(let Co=0;Co<br.length;Co++){const ss=oo?oo[Co]:jr,Ts=br[Co];if(ss.flags&128&&Ts.flags&8650752){const ju=zn(Ts),Ga=ju?Gu(ju.typeParameter):void 0;if(Ga&&!Nt(Ga)){const wd=Ga.flags&1048576?Ga.types:[Ga];let Wl=od(wd,(El,ut)=>El|ut.flags,0);if(!(Wl&4)){const El=ss.value;Wl&296&&!C4e(El,!0)&&(Wl&=-297),Wl&2112&&!rW(El,!0)&&(Wl&=-2113);const ut=od(wd,(Ae,Ln)=>Ln.flags&Wl?Ae.flags&4?Ae:Ln.flags&4?ss:Ae.flags&134217728?Ae:Ln.flags&134217728&&Lee(ss,Ln)?ss:Ae.flags&268435456?Ae:Ln.flags&268435456&&El===N6e(Ln.symbol,El)?ss:Ae.flags&128?Ae:Ln.flags&128&&Ln.value===El?Ln:Ae.flags&8?Ae:Ln.flags&8?g_(+El):Ae.flags&32?Ae:Ln.flags&32?g_(+El):Ae.flags&256?Ae:Ln.flags&256&&Ln.value===+El?Ln:Ae.flags&64?Ae:Ln.flags&64?ypt(El):Ae.flags&2048?Ae:Ln.flags&2048&&$E(Ln.value)===El?Ln:Ae.flags&16?Ae:Ln.flags&16?El==="true"?Bn:El==="false"?en:Ni:Ae.flags&512?Ae:Ln.flags&512&&Ln.intrinsicName===El?Ln:Ae.flags&32768?Ae:Ln.flags&32768&&Ln.intrinsicName===El?Ln:Ae.flags&65536?Ae:Ln.flags&65536&&Ln.intrinsicName===El?Ln:Ae:Ae,jr);if(!(ut.flags&131072)){ge(ut,Ts);continue}}}}ge(ss,Ts)}}function Eo(wn,Qn){ge(Ef(wn),Ef(Qn)),ge(mv(wn),mv(Qn));const oo=_y(wn),br=_y(Qn);oo&&br&&ge(oo,br)}function Bo(wn,Qn){var oo,br;if(Wr(wn)&4&&Wr(Qn)&4&&(wn.target===Qn.target||qf(wn)&&qf(Qn))){ar(Js(wn),Js(Qn),Cve(wn.target));return}if(Kd(wn)&&Kd(Qn)&&Eo(wn,Qn),Wr(Qn)&32&&!Qn.declaration.nameType){const Co=Ef(Qn);if(qn(wn,Qn,Co))return}if(!gpt(wn,Qn)){if(hE(wn)){if(Ba(Qn)){const Co=gy(wn),ss=gy(Qn),Ts=Js(Qn),ju=Qn.target.elementFlags;if(Ba(wn)&&$dt(wn,Qn)){for(let Wl=0;Wl<ss;Wl++)ge(Js(wn)[Wl],Ts[Wl]);return}const Ga=Ba(wn)?Math.min(wn.target.fixedLength,Qn.target.fixedLength):0,wd=Math.min(Ba(wn)?L8(wn.target,3):0,Qn.target.hasRestElement?L8(Qn.target,3):0);for(let Wl=0;Wl<Ga;Wl++)ge(Js(wn)[Wl],Ts[Wl]);if(!Ba(wn)||Co-Ga-wd===1&&wn.target.elementFlags[Ga]&4){const Wl=Js(wn)[Ga];for(let El=Ga;El<ss-wd;El++)ge(ju[El]&8?Vu(Wl):Wl,Ts[El])}else{const Wl=ss-Ga-wd;if(Wl===2){if(ju[Ga]&ju[Ga+1]&8){const El=zn(Ts[Ga]);El&&El.impliedArity!==void 0&&(ge(J2(wn,Ga,wd+Co-El.impliedArity),Ts[Ga]),ge(J2(wn,Ga+El.impliedArity,wd),Ts[Ga+1]))}else if(ju[Ga]&8&&ju[Ga+1]&4){const El=(oo=zn(Ts[Ga]))==null?void 0:oo.typeParameter,ut=El&&Gu(El);if(ut&&Ba(ut)&&!ut.target.hasRestElement){const Ae=ut.target.fixedLength;ge(J2(wn,Ga,Co-(Ga+Ae)),Ts[Ga]),ge(Q2(wn,Ga+Ae,wd),Ts[Ga+1])}}else if(ju[Ga]&4&&ju[Ga+1]&8){const El=(br=zn(Ts[Ga+1]))==null?void 0:br.typeParameter,ut=El&&Gu(El);if(ut&&Ba(ut)&&!ut.target.hasRestElement){const Ae=ut.target.fixedLength,Ln=Co-L8(Qn.target,3),Mr=Ln-Ae,di=jh(Js(wn).slice(Mr,Ln),wn.target.elementFlags.slice(Mr,Ln),!1,wn.target.labeledElementDeclarations&&wn.target.labeledElementDeclarations.slice(Mr,Ln));ge(Q2(wn,Ga,wd+Ae),Ts[Ga]),ge(di,Ts[Ga+1])}}}else if(Wl===1&&ju[Ga]&8){const El=Qn.target.elementFlags[ss-1]&2,ut=J2(wn,Ga,wd);Ke(ut,Ts[Ga],El?2:0)}else if(Wl===1&&ju[Ga]&4){const El=Q2(wn,Ga,wd);El&&ge(El,Ts[Ga])}}for(let Wl=0;Wl<wd;Wl++)ge(Js(wn)[Co-Wl-1],Ts[ss-Wl-1]);return}if(qf(Qn)){dp(wn,Qn);return}}_o(wn,Qn),Cc(wn,Qn,0),Cc(wn,Qn,1),dp(wn,Qn)}}function _o(wn,Qn){const oo=Wb(Qn);for(const br of oo){const Co=ya(wn,br.escapedName);Co&&!bt(Co.declarations,Kve)&&ge(dr(Co),dr(br))}}function Cc(wn,Qn,oo){const br=Yo(wn,oo),Co=br.length;if(Co>0){const ss=Yo(Qn,oo),Ts=ss.length;for(let ju=0;ju<Ts;ju++){const Ga=Math.max(Co-Ts+ju,0);Jf(Dct(br[Ga]),P8(ss[ju]))}}}function Jf(wn,Qn){if(!(wn.flags&64)){const oo=y,br=Qn.declaration?Qn.declaration.kind:0;y=y||br===174||br===173||br===176,zve(wn,Qn,ln),y=oo}Bve(wn,Qn,ge)}function dp(wn,Qn){const oo=Wr(wn)&Wr(Qn)&32?8:0,br=yd(Qn);if(Ree(wn))for(const Co of br){const ss=[];for(const Ts of gs(wn))if(hx(NN(Ts,8576),Co.keyType)){const ju=dr(Ts);ss.push(Ts.flags&16777216?xee(ju):ju)}for(const Ts of yd(wn))hx(Ts.keyType,Co.keyType)&&ss.push(Ts.type);ss.length&&Ke(ti(ss),Co.type,oo)}for(const Co of br){const ss=D8(wn,Co.keyType);ss&&Ke(ss.type,Co.type,oo)}}}function Ept(n,a){return a===L?n===a:vv(n,a)||!!(a.flags&4&&n.flags&128||a.flags&8&&n.flags&256)}function Spt(n,a){return!!(n.flags&524288&&a.flags&524288&&n.symbol&&n.symbol===a.symbol||n.aliasSymbol&&n.aliasTypeArguments&&n.aliasSymbol===a.aliasSymbol)}function Tpt(n){const a=Ld(n);return!!a&&Cl(a.flags&16777216?xge(a):a,406978556)}function yE(n){return!!(Wr(n)&128)}function Xve(n){return!!(Wr(n)&16512)}function Apt(n){if(n.length>1){const a=nr(n,Xve);if(a.length){const c=ti(a,2);return So(nr(n,d=>!Xve(d)),[c])}}return n}function Ipt(n){return n.priority&416?ba(n.contraCandidates):Udt(n.contraCandidates)}function xpt(n,a){const c=Apt(n.candidates),d=Tpt(n.typeParameter)||qT(n.typeParameter),_=!d&&n.topLevel&&(n.isFixed||!ppt(a,n.typeParameter)),y=d?eo(c,Ed):_?eo(c,Q1):c,x=n.priority&416?ti(y,2):jdt(y);return Xp(x)}function Yve(n,a){const c=n.inferences[a];if(!c.inferredType){let d,_;if(n.signature){const x=c.candidates?xpt(c,n.signature):void 0,k=c.contraCandidates?Ipt(c):void 0;if(x||k){const z=x&&(!k||!(x.flags&131072)&&bt(c.contraCandidates,H=>jb(x,H))&&Zn(n.inferences,H=>H!==c&&Ld(H.typeParameter)!==c.typeParameter||Zn(H.candidates,re=>jb(re,x))));d=z?x:k,_=z?k:x}else if(n.flags&1)d=vo;else{const z=JT(c.typeParameter);z&&(d=so(z,rdt(ndt(n,a),n.nonFixingMapper)))}}else d=D4e(c);c.inferredType=d||$ve(!!(n.flags&2));const y=Ld(c.typeParameter);if(y){const x=so(y,n.nonFixingMapper);(!d||!n.compareTypes(d,Kp(x,d)))&&(c.inferredType=_&&n.compareTypes(_,Kp(x,_))?_:x)}}return c.inferredType}function $ve(n){return n?j:_n}function Qve(n){const a=[];for(let c=0;c<n.inferences.length;c++)a.push(Yve(n,c));return a}function k4e(n){switch(n.escapedText){case"document":case"console":return f.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom;case"$":return V.types?f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery;case"describe":case"suite":case"it":case"test":return V.types?f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha;case"process":case"require":case"Buffer":case"module":return V.types?f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode;case"Bun":return V.types?f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun_and_then_add_bun_to_the_types_field_in_your_tsconfig:f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_Bun_Try_npm_i_save_dev_types_Slashbun;case"Map":case"Set":case"Promise":case"Symbol":case"WeakMap":case"WeakSet":case"Iterator":case"AsyncIterator":case"SharedArrayBuffer":case"Atomics":case"AsyncIterable":case"AsyncIterableIterator":case"AsyncGenerator":case"AsyncGeneratorFunction":case"BigInt":case"Reflect":case"BigInt64Array":case"BigUint64Array":return f.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later;case"await":if(la(n.parent))return f.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function;default:return n.parent.kind===304?f.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer:f.Cannot_find_name_0}}function jm(n){const a=ei(n);return a.resolvedSymbol||(a.resolvedSymbol=!zl(n)&&bl(n,n.escapedText,1160127,k4e(n),n,!F3(n),!1)||ft),a.resolvedSymbol}function Zve(n){return!!(n.flags&33554432||Gn(n,a=>hd(a)||Nm(a)||Ep(a)))}function kee(n,a,c,d){switch(n.kind){case 80:if(!VA(n)){const x=jm(n);return x!==ft?`${d?as(d):"-1"}|${bd(a)}|${bd(c)}|${Ta(x)}`:void 0}case 110:return`0|${d?as(d):"-1"}|${bd(a)}|${bd(c)}`;case 235:case 217:return kee(n.expression,a,c,d);case 166:const _=kee(n.left,a,c,d);return _&&_+"."+n.right.escapedText;case 211:case 212:const y=nA(n);if(y!==void 0){const x=kee(n.expression,a,c,d);return x&&x+"."+y}break;case 206:case 207:case 262:case 218:case 219:case 174:return`${as(n)}#${bd(a)}`}}function Iu(n,a){switch(a.kind){case 217:case 235:return Iu(n,a.expression);case 226:return Lc(a)&&Iu(n,a.left)||mr(a)&&a.operatorToken.kind===28&&Iu(n,a.right)}switch(n.kind){case 236:return a.kind===236&&n.keywordToken===a.keywordToken&&n.name.escapedText===a.name.escapedText;case 80:case 81:return VA(n)?a.kind===110:a.kind===80&&jm(n)===jm(a)||(wi(a)||Qa(a))&&vf(jm(n))===Ir(a);case 110:return a.kind===110;case 108:return a.kind===108;case 235:case 217:return Iu(n.expression,a);case 211:case 212:const c=nA(n),d=ws(a)?nA(a):void 0;return c!==void 0&&d!==void 0&&d===c&&Iu(n.expression,a.expression);case 166:return ws(a)&&n.right.escapedText===nA(a)&&Iu(n.left,a.expression);case 226:return mr(n)&&n.operatorToken.kind===28&&Iu(n.right,a)}return!1}function nA(n){if(Fr(n))return n.name.escapedText;if(Qs(n))return Rpt(n);if(Qa(n)){const a=es(n);return a?hl(a):void 0}if(Ao(n))return""+n.parent.parameters.indexOf(n)}function eye(n){return n.flags&8192?n.escapedName:n.flags&384?hl(""+n.value):void 0}function Rpt(n){return nf(n.argumentExpression)?hl(n.argumentExpression.text):Gl(n.argumentExpression)?Dpt(n.argumentExpression):void 0}function Dpt(n){const a=Hs(n,111551,!0);if(!a||!(rM(a)||a.flags&8))return;const c=a.valueDeclaration;if(c===void 0)return;const d=ro(c);if(d){const _=eye(d);if(_!==void 0)return _}if(ES(c)&&iv(c,n)){const _=jL(c);if(_){const y=ta(c.parent)?$_(c):Ru(_);return y&&eye(y)}if(u1(c))return lR(c.name)}}function w4e(n,a){for(;ws(n);)if(n=n.expression,Iu(n,a))return!0;return!1}function rA(n,a){for(;qu(n);)if(n=n.expression,Iu(n,a))return!0;return!1}function Z2(n,a){if(n&&n.flags&1048576){const c=O8e(n,a);if(c&&xl(c)&2)return c.links.isDiscriminantProperty===void 0&&(c.links.isDiscriminantProperty=(c.links.checkFlags&192)===192&&!CN(dr(c))),!!c.links.isDiscriminantProperty}return!1}function O4e(n,a){let c;for(const d of n)if(Z2(a,d.escapedName)){if(c){c.push(d);continue}c=[d]}return c}function Npt(n,a){const c=new Map;let d=0;for(const _ of n)if(_.flags&61603840){const y=Xe(_,a);if(y){if(!V8(y))return;let x=!1;oA(y,k=>{const z=bd(Ed(k)),H=c.get(z);H?H!==_n&&(c.set(z,_n),x=!0):c.set(z,_)}),x||d++}}return d>=10&&d*2>=n.length?c:void 0}function j9(n){const a=n.types;if(!(a.length<10||Wr(n)&32768||au(a,c=>!!(c.flags&59506688))<10)){if(n.keyPropertyName===void 0){const c=Ue(a,_=>_.flags&59506688?Ue(gs(_),y=>v_(dr(y))?y.escapedName:void 0):void 0),d=c&&Npt(a,c);n.keyPropertyName=d?c:"",n.constituentMap=d}return n.keyPropertyName.length?n.keyPropertyName:void 0}}function U9(n,a){var c;const d=(c=n.constituentMap)==null?void 0:c.get(bd(Ed(a)));return d!==_n?d:void 0}function W4e(n,a){const c=j9(n),d=c&&Xe(a,c);return d&&U9(n,d)}function Cpt(n,a){const c=j9(n),d=c&&An(a.properties,y=>y.symbol&&y.kind===303&&y.symbol.escapedName===c&&Q9(y.initializer)),_=d&&bB(d.initializer);return _&&U9(n,_)}function F4e(n,a){return Iu(n,a)||w4e(n,a)}function z4e(n,a){if(n.arguments){for(const c of n.arguments)if(F4e(a,c)||rA(c,a))return!0}return!!(n.expression.kind===211&&F4e(a,n.expression.expression))}function tye(n){return(!n.id||n.id<0)&&(n.id=ble,ble++),n.id}function Ppt(n,a){if(!(n.flags&1048576))return Ea(n,a);for(const c of n.types)if(Ea(c,a))return!0;return!1}function Mpt(n,a){if(n===a)return n;if(a.flags&131072)return a;const c=`A${bd(n)},${bd(a)}`;return ex(c)??_b(c,Lpt(n,a))}function Lpt(n,a){const c=dc(n,_=>Ppt(a,_)),d=a.flags&512&&X1(a)?pl(c,Ex):c;return Ea(a,d)?d:n}function nye(n){const a=__(n);return!!(a.callSignatures.length||a.constructSignatures.length||a.members.get("bind")&&jb(n,Wt))}function eM(n,a){return rye(n,a)&a}function _m(n,a){return eM(n,a)!==0}function rye(n,a){n.flags&467927040&&(n=Gu(n)||_n);const c=n.flags;if(c&268435460)return Y?16317953:16776705;if(c&134217856){const d=c&128&&n.value==="";return Y?d?12123649:7929345:d?12582401:16776705}if(c&40)return Y?16317698:16776450;if(c&256){const d=n.value===0;return Y?d?12123394:7929090:d?12582146:16776450}if(c&64)return Y?16317188:16775940;if(c&2048){const d=b4e(n);return Y?d?12122884:7928580:d?12581636:16775940}return c&16?Y?16316168:16774920:c&528?Y?n===en||n===bn?12121864:7927560:n===en||n===bn?12580616:16774920:c&524288?a&(Y?83427327:83886079)?Wr(n)&16&&yv(n)?Y?83427327:83886079:nye(n)?Y?7880640:16728e3:Y?7888800:16736160:0:c&16384?9830144:c&32768?26607360:c&65536?42917664:c&12288?Y?7925520:16772880:c&67108864?Y?7888800:16736160:c&131072?0:c&1048576?od(n.types,(d,_)=>d|rye(_,a),0):c&2097152?kpt(n,a):83886079}function kpt(n,a){const c=Cl(n,402784252);let d=0,_=134217727;for(const y of n.types)if(!(c&&y.flags&524288)){const x=rye(y,a);d|=x,_&=x}return d&8256|_&134209471}function hm(n,a){return dc(n,c=>_m(c,a))}function iA(n,a){const c=B4e(hm(Y&&n.flags&2?ul:n,a));if(Y)switch(a){case 524288:return pl(c,d=>_m(d,65536)?ba([d,_m(d,131072)&&!Cl(c,65536)?ti([La,me]):La]):d);case 1048576:return pl(c,d=>_m(d,131072)?ba([d,_m(d,65536)&&!Cl(c,32768)?ti([La,Oe]):La]):d);case 2097152:case 4194304:return pl(c,d=>_m(d,262144)?ept(d):d)}return c}function B4e(n){return n===ul?_n:n}function iye(n,a){return a?ti([mi(n),Ru(a)]):n}function G4e(n,a){var c;const d=vy(a);if(!rm(d))return _t;const _=im(d);return Xe(n,_)||K8((c=gx(n,_))==null?void 0:c.type)||_t}function V4e(n,a){return up(n,$2)&&Hdt(n,a)||K8(Sy(65,n,Oe,void 0))||_t}function K8(n){return n&&(V.noUncheckedIndexedAccess?ti([n,L]):n)}function j4e(n){return Vu(Sy(65,n,Oe,void 0)||_t)}function wpt(n){return n.parent.kind===209&&oye(n.parent)||n.parent.kind===303&&oye(n.parent.parent)?iye(H9(n),n.right):Ru(n.right)}function oye(n){return n.parent.kind===226&&n.parent.left===n||n.parent.kind===250&&n.parent.initializer===n}function Opt(n,a){return V4e(H9(n),n.elements.indexOf(a))}function Wpt(n){return j4e(H9(n.parent))}function U4e(n){return G4e(H9(n.parent),n.name)}function Fpt(n){return iye(U4e(n),n.objectAssignmentInitializer)}function H9(n){const{parent:a}=n;switch(a.kind){case 249:return ke;case 250:return xB(a)||_t;case 226:return wpt(a);case 220:return Oe;case 209:return Opt(a,n);case 230:return Wpt(a);case 303:return U4e(a);case 304:return Fpt(a)}return _t}function zpt(n){const a=n.parent,c=q4e(a.parent),d=a.kind===206?G4e(c,n.propertyName||n.name):n.dotDotDotToken?j4e(c):V4e(c,a.elements.indexOf(n));return iye(d,n.initializer)}function H4e(n){return ei(n).resolvedType||Ru(n)}function Bpt(n){return n.initializer?H4e(n.initializer):n.parent.parent.kind===249?ke:n.parent.parent.kind===250&&xB(n.parent.parent)||_t}function q4e(n){return n.kind===260?Bpt(n):zpt(n)}function Gpt(n){return n.kind===260&&n.initializer&&Cb(n.initializer)||n.kind!==208&&n.parent.kind===226&&Cb(n.parent.right)}function Z1(n){switch(n.kind){case 217:return Z1(n.expression);case 226:switch(n.operatorToken.kind){case 64:case 76:case 77:case 78:return Z1(n.left);case 28:return Z1(n.right)}}return n}function J4e(n){const{parent:a}=n;return a.kind===217||a.kind===226&&a.operatorToken.kind===64&&a.left===n||a.kind===226&&a.operatorToken.kind===28&&a.right===n?J4e(a):n}function Vpt(n){return n.kind===296?Ed(Ru(n.expression)):jr}function wee(n){const a=ei(n);if(!a.switchTypes){a.switchTypes=[];for(const c of n.caseBlock.clauses)a.switchTypes.push(Vpt(c))}return a.switchTypes}function K4e(n){if(bt(n.caseBlock.clauses,c=>c.kind===296&&!ls(c.expression)))return;const a=[];for(const c of n.caseBlock.clauses){const d=c.kind===296?c.expression.text:void 0;a.push(d&&!Nr(a,d)?d:void 0)}return a}function jpt(n,a){return n.flags&1048576?!Ue(n.types,c=>!Nr(a,c)):Nr(a,n)}function tM(n,a){return!!(n===a||n.flags&131072||a.flags&1048576&&Upt(n,a))}function Upt(n,a){if(n.flags&1048576){for(const c of n.types)if(!hv(a.types,c))return!1;return!0}return n.flags&1056&&VZ(n)===a?!0:hv(a.types,n)}function oA(n,a){return n.flags&1048576?Ue(n.types,a):a(n)}function Um(n,a){return n.flags&1048576?bt(n.types,a):a(n)}function up(n,a){return n.flags&1048576?Zn(n.types,a):a(n)}function Hpt(n,a){return n.flags&3145728?Zn(n.types,a):a(n)}function dc(n,a){if(n.flags&1048576){const c=n.types,d=nr(c,a);if(d===c)return n;const _=n.origin;let y;if(_&&_.flags&1048576){const x=_.types,k=nr(x,z=>!!(z.flags&1048576)||a(z));if(x.length-k.length===c.length-d.length){if(k.length===1)return k[0];y=ove(1048576,k)}}return sve(d,n.objectFlags&16809984,void 0,void 0,y)}return n.flags&131072||a(n)?n:jr}function Oee(n,a){return dc(n,c=>c!==a)}function qpt(n){return n.flags&1048576?n.types.length:1}function pl(n,a,c){if(n.flags&131072)return n;if(!(n.flags&1048576))return a(n);const d=n.origin,_=d&&d.flags&1048576?d.types:n.types;let y,x=!1;for(const k of _){const z=k.flags&1048576?pl(k,a,c):a(k);x||(x=k!==z),z&&(y?y.push(z):y=[z])}return x?y&&ti(y,c?0:1):n}function X4e(n,a,c,d){return n.flags&1048576&&c?ti(wt(n.types,a),1,c,d):pl(n,a)}function nM(n,a){return dc(n,c=>(c.flags&a)!==0)}function Y4e(n,a){return Cl(n,134217804)&&Cl(a,402655616)?pl(n,c=>c.flags&4?nM(a,402653316):YT(c)&&!Cl(a,402653188)?nM(a,128):c.flags&8?nM(a,264):c.flags&64?nM(a,2112):c):n}function LN(n){return n.flags===0}function aA(n){return n.flags===0?n.type:n}function kN(n,a){return a?{flags:0,type:n.flags&131072?vo:n}:n}function Jpt(n){const a=zf(256);return a.elementType=n,a}function aye(n){return kn[n.id]||(kn[n.id]=Jpt(n))}function $4e(n,a){const c=H8(bv(bB(a)));return tM(c,n.elementType)?n:aye(ti([n.elementType,c]))}function Kpt(n){return n.flags&131072?Jc:Vu(n.flags&1048576?ti(n.types,2):n)}function Xpt(n){return n.finalArrayType||(n.finalArrayType=Kpt(n.elementType))}function q9(n){return Wr(n)&256?Xpt(n):n}function Ypt(n){return Wr(n)&256?n.elementType:jr}function $pt(n){let a=!1;for(const c of n)if(!(c.flags&131072)){if(!(Wr(c)&256))return!1;a=!0}return a}function Q4e(n){const a=J4e(n),c=a.parent,d=Fr(c)&&(c.name.escapedText==="length"||c.parent.kind===213&&Ve(c.name)&&iU(c.name)),_=c.kind===212&&c.expression===a&&c.parent.kind===226&&c.parent.operatorToken.kind===64&&c.parent.left===c&&!ig(c.parent)&&xu(Ru(c.argumentExpression),296);return d||_}function Qpt(n){return(wi(n)||Jo(n)||yp(n)||Ao(n))&&!!(yu(n)||lr(n)&&zy(n)&&n.initializer&&QE(n.initializer)&&nm(n.initializer))}function Wee(n,a){if(n=jl(n),n.flags&8752)return dr(n);if(n.flags&7){if(xl(n)&262144){const d=n.links.syntheticOrigin;if(d&&Wee(d))return dr(n)}const c=n.valueDeclaration;if(c){if(Qpt(c))return dr(n);if(wi(c)&&c.parent.parent.kind===250){const d=c.parent.parent,_=J9(d.expression,void 0);if(_){const y=d.awaitModifier?15:13;return Sy(y,_,Oe,void 0)}}a&&wa(a,wr(c,f._0_needs_an_explicit_type_annotation,bi(n)))}}}function J9(n,a){if(!(n.flags&67108864))switch(n.kind){case 80:const c=vf(jm(n));return Wee(c,a);case 110:return yft(n);case 108:return fye(n);case 211:{const d=J9(n.expression,a);if(d){const _=n.name;let y;if(Ji(_)){if(!d.symbol)return;y=ya(d,sk(d.symbol,_.escapedText))}else y=ya(d,_.escapedText);return y&&Wee(y,a)}return}case 217:return J9(n.expression,a)}}function K9(n){const a=ei(n);let c=a.effectsSignature;if(c===void 0){let d;if(mr(n)){const x=wN(n.right);d=ibe(x)}else n.parent.kind===244?d=J9(n.expression,void 0):n.expression.kind!==108&&(qu(n)?d=eh(j8(mo(n.expression),n.expression),n.expression):d=wN(n.expression));const _=Yo(d&&kd(d)||_n,0),y=_.length===1&&!_[0].typeParameters?_[0]:bt(_,Z4e)?WN(n):void 0;c=a.effectsSignature=y&&Z4e(y)?y:un}return c===un?void 0:c}function Z4e(n){return!!(jf(n)||n.declaration&&(IN(n.declaration)||_n).flags&131072)}function Zpt(n,a){if(n.kind===1||n.kind===3)return a.arguments[n.parameterIndex];const c=hs(a.expression);return ws(c)?hs(c.expression):void 0}function eft(n){const a=Gn(n,aj),c=jn(n),d=gh(c,a.statements.pos);ts.add(Qc(c,d.start,d.length,f.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function X9(n){const a=Fee(n,!1);return Mt=n,Ht=a,a}function Y9(n){const a=hs(n,!0);return a.kind===97||a.kind===226&&(a.operatorToken.kind===56&&(Y9(a.left)||Y9(a.right))||a.operatorToken.kind===57&&Y9(a.left)&&Y9(a.right))}function Fee(n,a){for(;;){if(n===Mt)return Ht;const c=n.flags;if(c&4096){if(!a){const d=tye(n),_=gT[d];return _!==void 0?_:gT[d]=Fee(n,!0)}a=!1}if(c&368)n=n.antecedent;else if(c&512){const d=K9(n.node);if(d){const _=jf(d);if(_&&_.kind===3&&!_.type){const y=n.node.arguments[_.parameterIndex];if(y&&Y9(y))return!1}if(ps(d).flags&131072)return!1}n=n.antecedent}else{if(c&4)return bt(n.antecedents,d=>Fee(d,!1));if(c&8){const d=n.antecedents;if(d===void 0||d.length===0)return!1;n=d[0]}else if(c&128){if(n.clauseStart===n.clauseEnd&&kWe(n.switchStatement))return!1;n=n.antecedent}else if(c&1024){Mt=void 0;const d=n.target,_=d.antecedents;d.antecedents=n.antecedents;const y=Fee(n.antecedent,!1);return d.antecedents=_,y}else return!(c&1)}}}function zee(n,a){for(;;){const c=n.flags;if(c&4096){if(!a){const d=tye(n),_=ZI[d];return _!==void 0?_:ZI[d]=zee(n,!0)}a=!1}if(c&496)n=n.antecedent;else if(c&512){if(n.node.expression.kind===108)return!0;n=n.antecedent}else{if(c&4)return Zn(n.antecedents,d=>zee(d,!1));if(c&8)n=n.antecedents[0];else if(c&1024){const d=n.target,_=d.antecedents;d.antecedents=n.antecedents;const y=zee(n.antecedent,!1);return d.antecedents=_,y}else return!!(c&1)}}}function e3e(n){switch(n.kind){case 110:return!0;case 80:if(!VA(n)){const c=jm(n);return rM(c)||Gee(c)&&!t3e(c)}break;case 211:case 212:return e3e(n.expression)&&b_(ei(n).resolvedSymbol||ft);case 206:case 207:const a=C_(n.parent);return Ao(a)||iae(a)?!sye(a):wi(a)&&MB(a)}return!1}function Kb(n,a,c=a,d,_=(y=>(y=ii(n,ZL))==null?void 0:y.flowNode)()){let y,x=!1,k=0;if(ze)return _t;if(!_)return a;Ze++;const z=ev,H=aA(ge(_));ev=z;const re=Wr(H)&256&&Q4e(n)?Jc:q9(H);if(re===Ii||n.parent&&n.parent.kind===235&&!(re.flags&131072)&&hm(re,2097152).flags&131072)return a;return re===q?_n:re;function be(){return x?y:(x=!0,y=kee(n,a,c,d))}function ge(lt){var Ot;if(k===2e3)return(Ot=sr)==null||Ot.instant(sr.Phase.CheckTypes,"getTypeAtFlowNode_DepthLimit",{flowId:lt.id}),ze=!0,eft(n),_t;k++;let pn;for(;;){const qt=lt.flags;if(qt&4096){for(let Wn=z;Wn<ev;Wn++)if($I[Wn]===lt)return k--,QI[Wn];pn=lt}let mn;if(qt&16){if(mn=gt(lt),!mn){lt=lt.antecedent;continue}}else if(qt&512){if(mn=an(lt),!mn){lt=lt.antecedent;continue}}else if(qt&96)mn=ar(lt);else if(qt&128)mn=On(lt);else if(qt&12){if(lt.antecedents.length===1){lt=lt.antecedents[0];continue}mn=qt&4?ln(lt):zn(lt)}else if(qt&256){if(mn=cn(lt),!mn){lt=lt.antecedent;continue}}else if(qt&1024){const Wn=lt.target,Li=Wn.antecedents;Wn.antecedents=lt.antecedents,mn=ge(lt.antecedent),Wn.antecedents=Li}else if(qt&2){const Wn=lt.node;if(Wn&&Wn!==d&&n.kind!==211&&n.kind!==212&&!(n.kind===110&&Wn.kind!==219)){lt=Wn.flowNode;continue}mn=c}else mn=c6(a);return pn&&($I[ev]=pn,QI[ev]=mn,ev++),k--,mn}}function Ke(lt){const Ot=lt.node;return lye(Ot.kind===260||Ot.kind===208?q4e(Ot):H9(Ot),n)}function gt(lt){const Ot=lt.node;if(Iu(n,Ot)){if(!X9(lt))return Ii;if(BA(Ot)===2){const qt=ge(lt.antecedent);return kN(bv(aA(qt)),LN(qt))}if(a===ot||a===Jc){if(Gpt(Ot))return aye(jr);const qt=Q1(Ke(lt));return Ea(qt,a)?qt:ec}const pn=Yj(Ot)?bv(a):a;return pn.flags&1048576?Mpt(pn,Ke(lt)):pn}if(w4e(n,Ot)){if(!X9(lt))return Ii;if(wi(Ot)&&(lr(Ot)||MB(Ot))){const pn=UL(Ot);if(pn&&(pn.kind===218||pn.kind===219))return ge(lt.antecedent)}return a}if(wi(Ot)&&Ot.parent.parent.kind===249&&(Iu(n,Ot.parent.parent.expression)||rA(Ot.parent.parent.expression,n)))return Cye(q9(aA(ge(lt.antecedent))))}function Dt(lt,Ot){const pn=hs(Ot,!0);if(pn.kind===97)return Ii;if(pn.kind===226){if(pn.operatorToken.kind===56)return Dt(Dt(lt,pn.left),pn.right);if(pn.operatorToken.kind===57)return ti([Dt(lt,pn.left),Dt(lt,pn.right)])}return Hr(lt,pn,!0)}function an(lt){const Ot=K9(lt.node);if(Ot){const pn=jf(Ot);if(pn&&(pn.kind===2||pn.kind===3)){const qt=ge(lt.antecedent),mn=q9(aA(qt)),Wn=pn.type?Ti(mn,pn,lt.node,!0):pn.kind===3&&pn.parameterIndex>=0&&pn.parameterIndex<lt.node.arguments.length?Dt(mn,lt.node.arguments[pn.parameterIndex]):mn;return Wn===mn?qt:kN(Wn,LN(qt))}if(ps(Ot).flags&131072)return Ii}}function cn(lt){if(a===ot||a===Jc){const Ot=lt.node,pn=Ot.kind===213?Ot.expression.expression:Ot.left.expression;if(Iu(n,Z1(pn))){const qt=ge(lt.antecedent),mn=aA(qt);if(Wr(mn)&256){let Wn=mn;if(Ot.kind===213)for(const Li of Ot.arguments)Wn=$4e(Wn,Li);else{const Li=bB(Ot.left.argumentExpression);xu(Li,296)&&(Wn=$4e(Wn,Ot.right))}return Wn===mn?qt:kN(Wn,LN(qt))}return qt}}}function ar(lt){const Ot=ge(lt.antecedent),pn=aA(Ot);if(pn.flags&131072)return Ot;const qt=(lt.flags&32)!==0,mn=q9(pn),Wn=Hr(mn,lt.node,qt);return Wn===mn?Ot:kN(Wn,LN(Ot))}function On(lt){const Ot=hs(lt.switchStatement.expression),pn=ge(lt.antecedent);let qt=aA(pn);if(Iu(n,Ot))qt=Ts(qt,lt.switchStatement,lt.clauseStart,lt.clauseEnd);else if(Ot.kind===221&&Iu(n,Ot.expression))qt=wd(qt,lt.switchStatement,lt.clauseStart,lt.clauseEnd);else if(Ot.kind===112)qt=Wl(qt,lt.switchStatement,lt.clauseStart,lt.clauseEnd);else{Y&&(rA(Ot,n)?qt=ss(qt,lt.switchStatement,lt.clauseStart,lt.clauseEnd,Wn=>!(Wn.flags&163840)):Ot.kind===221&&rA(Ot.expression,n)&&(qt=ss(qt,lt.switchStatement,lt.clauseStart,lt.clauseEnd,Wn=>!(Wn.flags&131072||Wn.flags&128&&Wn.value==="undefined"))));const mn=qn(Ot,qt);mn&&(qt=Eo(qt,mn,lt.switchStatement,lt.clauseStart,lt.clauseEnd))}return kN(qt,LN(pn))}function ln(lt){const Ot=[];let pn=!1,qt=!1,mn;for(const Wn of lt.antecedents){if(!mn&&Wn.flags&128&&Wn.clauseStart===Wn.clauseEnd){mn=Wn;continue}const Li=ge(Wn),Br=aA(Li);if(Br===a&&a===c)return Br;Tf(Ot,Br),tM(Br,c)||(pn=!0),LN(Li)&&(qt=!0)}if(mn){const Wn=ge(mn),Li=aA(Wn);if(!(Li.flags&131072)&&!Nr(Ot,Li)&&!kWe(mn.switchStatement)){if(Li===a&&a===c)return Li;Ot.push(Li),tM(Li,c)||(pn=!0),LN(Wn)&&(qt=!0)}}return kN(Fn(Ot,pn?2:1),qt)}function zn(lt){const Ot=tye(lt),pn=KI[Ot]||(KI[Ot]=new Map),qt=be();if(!qt)return a;const mn=pn.get(qt);if(mn)return mn;for(let Nn=H_;Nn<_f;Nn++)if(tN[Nn]===lt&&XI[Nn]===qt&&YI[Nn].length)return kN(Fn(YI[Nn],1),!0);const Wn=[];let Li=!1,Br;for(const Nn of lt.antecedents){let ni;if(!Br)ni=Br=ge(Nn);else{tN[_f]=lt,XI[_f]=qt,YI[_f]=Wn,_f++;const fo=yn;yn=void 0,ni=ge(Nn),yn=fo,_f--;const Sa=pn.get(qt);if(Sa)return Sa}const Zi=aA(ni);if(Tf(Wn,Zi),tM(Zi,c)||(Li=!0),Zi===a)break}const Go=Fn(Wn,Li?2:1);return LN(Br)?kN(Go,!0):(pn.set(qt,Go),Go)}function Fn(lt,Ot){if($pt(lt))return aye(ti(wt(lt,Ypt)));const pn=B4e(ti(eo(lt,q9),Ot));return pn!==a&&pn.flags&a.flags&1048576&&Ca(pn.types,a.types)?a:pn}function er(lt){if(ta(n)||QE(n)||xm(n)){if(Ve(lt)){const pn=jm(lt).valueDeclaration;if(pn&&(Qa(pn)||Ao(pn))&&n===pn.parent&&!pn.initializer&&!pn.dotDotDotToken)return pn}}else if(ws(lt)){if(Iu(n,lt.expression))return lt}else if(Ve(lt)){const Ot=jm(lt);if(rM(Ot)){const pn=Ot.valueDeclaration;if(wi(pn)&&!pn.type&&pn.initializer&&ws(pn.initializer)&&Iu(n,pn.initializer.expression))return pn.initializer;if(Qa(pn)&&!pn.initializer){const qt=pn.parent.parent;if(wi(qt)&&!qt.type&&qt.initializer&&(Ve(qt.initializer)||ws(qt.initializer))&&Iu(n,qt.initializer))return pn}}}}function qn(lt,Ot){if(a.flags&1048576||Ot.flags&1048576){const pn=er(lt);if(pn){const qt=nA(pn);if(qt){const mn=a.flags&1048576&&tM(Ot,a)?a:Ot;if(Z2(mn,qt))return pn}}}}function tr(lt,Ot,pn){const qt=nA(Ot);if(qt===void 0)return lt;const mn=qu(Ot),Wn=Y&&(mn||aae(Ot))&&Cl(lt,98304);let Li=Xe(Wn?hm(lt,2097152):lt,qt);if(!Li)return lt;Li=Wn&&mn?qb(Li):Li;const Br=pn(Li);return dc(lt,Go=>{const Nn=xt(Go,qt)||_n;return!(Nn.flags&131072)&&!(Br.flags&131072)&&k9(Br,Nn)})}function Ro(lt,Ot,pn,qt,mn){if((pn===37||pn===38)&&lt.flags&1048576){const Wn=j9(lt);if(Wn&&Wn===nA(Ot)){const Li=U9(lt,Ru(qt));if(Li)return pn===(mn?37:38)?Li:v_(Xe(Li,Wn)||_n)?Oee(lt,Li):lt}}return tr(lt,Ot,Wn=>oo(Wn,pn,qt,mn))}function Eo(lt,Ot,pn,qt,mn){if(qt<mn&&lt.flags&1048576&&j9(lt)===nA(Ot)){const Wn=wee(pn).slice(qt,mn),Li=ti(wt(Wn,Br=>U9(lt,Br)||_n));if(Li!==_n)return Li}return tr(lt,Ot,Wn=>Ts(Wn,pn,qt,mn))}function Bo(lt,Ot,pn){if(Iu(n,Ot))return iA(lt,pn?4194304:8388608);Y&&pn&&rA(Ot,n)&&(lt=iA(lt,2097152));const qt=qn(Ot,lt);return qt?tr(lt,qt,mn=>hm(mn,pn?4194304:8388608)):lt}function _o(lt,Ot,pn){const qt=ya(lt,Ot);return qt?!!(qt.flags&16777216||xl(qt)&48)||pn:!!gx(lt,Ot)||!pn}function Cc(lt,Ot,pn){const qt=im(Ot);if(Um(lt,Wn=>_o(Wn,qt,!0)))return dc(lt,Wn=>_o(Wn,qt,pn));if(pn){const Wn=out();if(Wn)return ba([lt,RN(Wn,[Ot,_n])])}return lt}function Jf(lt,Ot,pn,qt,mn){return mn=mn!==(pn.kind===112)!=(qt!==38&&qt!==36),Hr(lt,Ot,mn)}function dp(lt,Ot,pn){switch(Ot.operatorToken.kind){case 64:case 76:case 77:case 78:return Bo(Hr(lt,Ot.right,pn),Ot.left,pn);case 35:case 36:case 37:case 38:const qt=Ot.operatorToken.kind,mn=Z1(Ot.left),Wn=Z1(Ot.right);if(mn.kind===221&&ls(Wn))return br(lt,mn,qt,Wn,pn);if(Wn.kind===221&&ls(mn))return br(lt,Wn,qt,mn,pn);if(Iu(n,mn))return oo(lt,qt,Wn,pn);if(Iu(n,Wn))return oo(lt,qt,mn,pn);Y&&(rA(mn,n)?lt=Qn(lt,qt,Wn,pn):rA(Wn,n)&&(lt=Qn(lt,qt,mn,pn)));const Li=qn(mn,lt);if(Li)return Ro(lt,Li,qt,Wn,pn);const Br=qn(Wn,lt);if(Br)return Ro(lt,Br,qt,mn,pn);if(El(mn))return ut(lt,qt,Wn,pn);if(El(Wn))return ut(lt,qt,mn,pn);if(hC(Wn)&&!ws(mn))return Jf(lt,mn,Wn,qt,pn);if(hC(mn)&&!ws(Wn))return Jf(lt,Wn,mn,qt,pn);break;case 104:return Ae(lt,Ot,pn);case 103:if(Ji(Ot.left))return wn(lt,Ot,pn);const Go=Z1(Ot.right);if(U8(lt)&&ws(n)&&Iu(n.expression,Go)){const Nn=Ru(Ot.left);if(rm(Nn)&&nA(n)===im(Nn))return hm(lt,pn?524288:65536)}if(Iu(n,Go)){const Nn=Ru(Ot.left);if(rm(Nn))return Cc(lt,Nn,pn)}break;case 28:return Hr(lt,Ot.right,pn);case 56:return pn?Hr(Hr(lt,Ot.left,!0),Ot.right,!0):ti([Hr(lt,Ot.left,!1),Hr(lt,Ot.right,!1)]);case 57:return pn?ti([Hr(lt,Ot.left,!0),Hr(lt,Ot.right,!0)]):Hr(Hr(lt,Ot.left,!1),Ot.right,!1)}return lt}function wn(lt,Ot,pn){const qt=Z1(Ot.right);if(!Iu(n,qt))return lt;N.assertNode(Ot.left,Ji);const mn=Qee(Ot.left);if(mn===void 0)return lt;const Wn=mn.parent,Li=mc(N.checkDefined(mn.valueDeclaration,"should always have a declaration"))?dr(Wn):el(Wn);return Mr(lt,Li,pn,!0)}function Qn(lt,Ot,pn,qt){const mn=Ot===35||Ot===37,Wn=Ot===35||Ot===36?98304:32768,Li=Ru(pn);return mn!==qt&&up(Li,Go=>!!(Go.flags&Wn))||mn===qt&&up(Li,Go=>!(Go.flags&(3|Wn)))?iA(lt,2097152):lt}function oo(lt,Ot,pn,qt){if(lt.flags&1)return lt;(Ot===36||Ot===38)&&(qt=!qt);const mn=Ru(pn),Wn=Ot===35||Ot===36;if(mn.flags&98304){if(!Y)return lt;const Li=Wn?qt?262144:2097152:mn.flags&65536?qt?131072:1048576:qt?65536:524288;return iA(lt,Li)}if(qt){if(!Wn&&(lt.flags&2||Um(lt,Uh))){if(mn.flags&469893116||Uh(mn))return mn;if(mn.flags&524288)return Kr}const Li=dc(lt,Br=>k9(Br,mn)||Wn&&tpt(Br,mn));return Y4e(Li,mn)}return v_(mn)?dc(lt,Li=>!(h4e(Li)&&k9(Li,mn))):lt}function br(lt,Ot,pn,qt,mn){(pn===36||pn===38)&&(mn=!mn);const Wn=Z1(Ot.expression);if(!Iu(n,Wn)){Y&&rA(Wn,n)&&mn===(qt.text!=="undefined")&&(lt=iA(lt,2097152));const Li=qn(Wn,lt);return Li?tr(lt,Li,Br=>Co(Br,qt,mn)):lt}return Co(lt,qt,mn)}function Co(lt,Ot,pn){return pn?ju(lt,Ot.text):iA(lt,$q.get(Ot.text)||32768)}function ss(lt,Ot,pn,qt,mn){return pn!==qt&&Zn(wee(Ot).slice(pn,qt),mn)?hm(lt,2097152):lt}function Ts(lt,Ot,pn,qt){const mn=wee(Ot);if(!mn.length)return lt;const Wn=mn.slice(pn,qt),Li=pn===qt||Nr(Wn,jr);if(lt.flags&2&&!Li){let ni;for(let Zi=0;Zi<Wn.length;Zi+=1){const fo=Wn[Zi];if(fo.flags&469893116)ni!==void 0&&ni.push(fo);else if(fo.flags&524288)ni===void 0&&(ni=Wn.slice(0,Zi)),ni.push(Kr);else return lt}return ti(ni===void 0?Wn:ni)}const Br=ti(Wn),Go=Br.flags&131072?jr:Y4e(dc(lt,ni=>k9(Br,ni)),Br);if(!Li)return Go;const Nn=dc(lt,ni=>!(h4e(ni)&&Nr(mn,Ed(Jdt(ni)))));return Go.flags&131072?Nn:ti([Go,Nn])}function ju(lt,Ot){switch(Ot){case"string":return Ga(lt,ke,1);case"number":return Ga(lt,Tt,2);case"bigint":return Ga(lt,kt,4);case"boolean":return Ga(lt,Ni,8);case"symbol":return Ga(lt,Ai,16);case"object":return lt.flags&1?lt:ti([Ga(lt,Kr,32),Ga(lt,me,131072)]);case"function":return lt.flags&1?lt:Ga(lt,Wt,64);case"undefined":return Ga(lt,Oe,65536)}return Ga(lt,Kr,128)}function Ga(lt,Ot,pn){return pl(lt,qt=>Z_(qt,Ot,Wf)?_m(qt,pn)?qt:jr:jb(Ot,qt)?Ot:_m(qt,pn)?ba([qt,Ot]):jr)}function wd(lt,Ot,pn,qt){const mn=K4e(Ot);if(!mn)return lt;const Wn=Gr(Ot.caseBlock.clauses,Go=>Go.kind===297);if(pn===qt||Wn>=pn&&Wn<qt){const Go=LWe(pn,qt,mn);return dc(lt,Nn=>eM(Nn,Go)===Go)}const Br=mn.slice(pn,qt);return ti(wt(Br,Go=>Go?ju(lt,Go):jr))}function Wl(lt,Ot,pn,qt){const mn=Gr(Ot.caseBlock.clauses,Br=>Br.kind===297),Wn=pn===qt||mn>=pn&&mn<qt;for(let Br=0;Br<pn;Br++){const Go=Ot.caseBlock.clauses[Br];Go.kind===296&&(lt=Hr(lt,Go.expression,!1))}if(Wn){for(let Br=qt;Br<Ot.caseBlock.clauses.length;Br++){const Go=Ot.caseBlock.clauses[Br];Go.kind===296&&(lt=Hr(lt,Go.expression,!1))}return lt}const Li=Ot.caseBlock.clauses.slice(pn,qt);return ti(wt(Li,Br=>Br.kind===296?Hr(lt,Br.expression,!0):jr))}function El(lt){return(Fr(lt)&&Sr(lt.name)==="constructor"||Qs(lt)&&ls(lt.argumentExpression)&&lt.argumentExpression.text==="constructor")&&Iu(n,lt.expression)}function ut(lt,Ot,pn,qt){if(qt?Ot!==35&&Ot!==37:Ot!==36&&Ot!==38)return lt;const mn=Ru(pn);if(!kbe(mn)&&!is(mn))return lt;const Wn=ya(mn,"prototype");if(!Wn)return lt;const Li=dr(Wn),Br=Nt(Li)?void 0:Li;if(!Br||Br===Ce||Br===Wt)return lt;if(Nt(lt))return Br;return dc(lt,Nn=>Go(Nn,Br));function Go(Nn,ni){return Nn.flags&524288&&Wr(Nn)&1||ni.flags&524288&&Wr(ni)&1?Nn.symbol===ni.symbol:jb(Nn,ni)}}function Ae(lt,Ot,pn){const qt=Z1(Ot.left);if(!Iu(n,qt))return pn&&Y&&rA(qt,n)?iA(lt,2097152):lt;const mn=Ot.right,Wn=Ru(mn);if(!_E(Wn,Ce))return lt;const Li=K9(Ot),Br=Li&&jf(Li);if(Br&&Br.kind===1&&Br.parameterIndex===0)return Mr(lt,Br.type,pn,!0);if(!_E(Wn,Wt))return lt;const Go=pl(Wn,Ln);return Nt(lt)&&(Go===Ce||Go===Wt)||!pn&&!(Go.flags&524288&&!Uh(Go))?lt:Mr(lt,Go,pn,!0)}function Ln(lt){const Ot=Xe(lt,"prototype");if(Ot&&!Nt(Ot))return Ot;const pn=Yo(lt,1);return pn.length?ti(wt(pn,qt=>ps(P8(qt)))):La}function Mr(lt,Ot,pn,qt){const mn=lt.flags&1048576?`N${bd(lt)},${bd(Ot)},${(pn?1:0)|(qt?2:0)}`:void 0;return ex(mn)??_b(mn,di(lt,Ot,pn,qt))}function di(lt,Ot,pn,qt){if(!pn){if(lt===Ot)return jr;if(qt)return dc(lt,Go=>!_E(Go,Ot));const Br=Mr(lt,Ot,!0,!1);return dc(lt,Go=>!tM(Go,Br))}if(lt.flags&3||lt===Ot)return Ot;const mn=qt?_E:jb,Wn=lt.flags&1048576?j9(lt):void 0,Li=pl(Ot,Br=>{const Go=Wn&&Xe(Br,Wn),Nn=Go&&U9(lt,Go),ni=pl(Nn||lt,qt?Zi=>_E(Zi,Br)?Zi:_E(Br,Zi)?Br:jr:Zi=>L9(Zi,Br)?Zi:L9(Br,Zi)?Br:jb(Zi,Br)?Zi:jb(Br,Zi)?Br:jr);return ni.flags&131072?pl(lt,Zi=>Cl(Zi,465829888)&&mn(Br,Gu(Zi)||_n)?ba([Zi,Br]):jr):ni});return Li.flags&131072?jb(Ot,lt)?Ot:Ea(lt,Ot)?lt:Ea(Ot,lt)?Ot:ba([lt,Ot]):Li}function Si(lt,Ot,pn){if(z4e(Ot,n)){const qt=pn||!hS(Ot)?K9(Ot):void 0,mn=qt&&jf(qt);if(mn&&(mn.kind===0||mn.kind===1))return Ti(lt,mn,Ot,pn)}if(U8(lt)&&ws(n)&&Fr(Ot.expression)){const qt=Ot.expression;if(Iu(n.expression,Z1(qt.expression))&&Ve(qt.name)&&qt.name.escapedText==="hasOwnProperty"&&Ot.arguments.length===1){const mn=Ot.arguments[0];if(ls(mn)&&nA(n)===hl(mn.text))return hm(lt,pn?524288:65536)}}return lt}function Ti(lt,Ot,pn,qt){if(Ot.type&&!(Nt(lt)&&(Ot.type===Ce||Ot.type===Wt))){const mn=Zpt(Ot,pn);if(mn){if(Iu(n,mn))return Mr(lt,Ot.type,qt,!1);Y&&rA(mn,n)&&(qt&&!_m(Ot.type,65536)||!qt&&up(Ot.type,iB))&&(lt=iA(lt,2097152));const Wn=qn(mn,lt);if(Wn)return tr(lt,Wn,Li=>Mr(Li,Ot.type,qt,!1))}}return lt}function Hr(lt,Ot,pn){if(I4(Ot)||mr(Ot.parent)&&(Ot.parent.operatorToken.kind===61||Ot.parent.operatorToken.kind===78)&&Ot.parent.left===Ot)return xr(lt,Ot,pn);switch(Ot.kind){case 80:if(!Iu(n,Ot)&&M<5){const qt=jm(Ot);if(rM(qt)){const mn=qt.valueDeclaration;if(mn&&wi(mn)&&!mn.type&&mn.initializer&&e3e(n)){M++;const Wn=Hr(lt,mn.initializer,pn);return M--,Wn}}}case 110:case 108:case 211:case 212:return Bo(lt,Ot,pn);case 213:return Si(lt,Ot,pn);case 217:case 235:return Hr(lt,Ot.expression,pn);case 226:return dp(lt,Ot,pn);case 224:if(Ot.operator===54)return Hr(lt,Ot.operand,!pn);break}return lt}function xr(lt,Ot,pn){if(Iu(n,Ot))return iA(lt,pn?2097152:262144);const qt=qn(Ot,lt);return qt?tr(lt,qt,mn=>hm(mn,pn?2097152:262144)):lt}}function tft(n,a){if(n=vf(n),(a.kind===80||a.kind===81)&&(VC(a)&&(a=a.parent),ng(a)&&(!ig(a)||HA(a)))){const c=Aee(HA(a)&&a.kind===211?Yee(a,void 0,!0):Ru(a));if(vf(ei(a).resolvedSymbol)===n)return c}return Bg(a)&&Fv(a.parent)&&Vm(a.parent)?d9(a.parent.symbol):SU(a)&&HA(a.parent)?U1(n):kb(n)}function X8(n){return Gn(n.parent,a=>ea(a)&&!xS(a)||a.kind===268||a.kind===312||a.kind===172)}function t3e(n){return!n3e(n,void 0)}function n3e(n,a){const c=Gn(n.valueDeclaration,Bee);if(!c)return!1;const d=ei(c);return d.flags&131072||(d.flags|=131072,nft(c)||i3e(c)),!n.lastAssignmentPos||a&&n.lastAssignmentPos<a.pos}function sye(n){return N.assert(wi(n)||Ao(n)),r3e(n.name)}function r3e(n){return n.kind===80?t3e(Ir(n.parent)):bt(n.elements,a=>a.kind!==232&&r3e(a.name))}function nft(n){return!!Gn(n.parent,a=>Bee(a)&&!!(ei(a).flags&131072))}function Bee(n){return Bs(n)||$i(n)}function i3e(n){switch(n.kind){case 80:if(ig(n)){const c=jm(n);if(Gee(c)&&c.lastAssignmentPos!==Number.MAX_VALUE){const d=Gn(n,Bee),_=Gn(c.valueDeclaration,Bee);c.lastAssignmentPos=d===_?rft(n,c.valueDeclaration):Number.MAX_VALUE}}return;case 281:const a=n.parent.parent;if(!n.isTypeOnly&&!a.isTypeOnly&&!a.moduleSpecifier){const c=Hs(n.propertyName||n.name,111551,!0,!0);c&&Gee(c)&&(c.lastAssignmentPos=Number.MAX_VALUE)}return;case 264:case 265:case 266:return}ji(n)||Ho(n,i3e)}function rft(n,a){let c=n.pos;for(;n&&n.pos>a.pos;){switch(n.kind){case 243:case 244:case 245:case 246:case 247:case 248:case 249:case 250:case 254:case 255:case 258:case 263:c=n.end}n=n.parent}return c}function rM(n){return n.flags&3&&(Rye(n)&6)!==0}function Gee(n){const a=n.valueDeclaration&&C_(n.valueDeclaration);return!!a&&(Ao(a)||wi(a)&&(c1(a.parent)||ift(a)))}function ift(n){return!!(n.parent.flags&1)&&!(c0(n)&32||n.parent.parent.kind===243&&Mh(n.parent.parent.parent))}function oft(n){const a=ei(n);if(a.parameterInitializerContainsUndefined===void 0){if(!Fh(n,9))return bN(n.symbol),!0;const c=!!_m(aM(n,0),16777216);if(!Y_())return bN(n.symbol),!0;a.parameterInitializerContainsUndefined=c}return a.parameterInitializerContainsUndefined}function aft(n,a){return Y&&a.kind===169&&a.initializer&&_m(n,16777216)&&!oft(a)?hm(n,524288):n}function sft(n,a){const c=a.parent;return c.kind===211||c.kind===166||c.kind===213&&c.expression===a||c.kind===212&&c.expression===a&&!(Um(n,a3e)&&QT(Ru(c.argumentExpression)))}function o3e(n){return n.flags&2097152?bt(n.types,o3e):!!(n.flags&465829888&&_v(n).flags&1146880)}function a3e(n){return n.flags&2097152?bt(n.types,a3e):!!(n.flags&465829888&&!Cl(_v(n),98304))}function lft(n,a){const c=(Ve(n)||Fr(n)||Qs(n))&&!((W_(n.parent)||JS(n.parent))&&n.parent.tagName===n)&&(a&&a&32?Yd(n,8):Yd(n,void 0));return c&&!CN(c)}function lye(n,a,c){return!(c&&c&2)&&Um(n,o3e)&&(sft(n,a)||lft(a,c))?pl(n,_v):n}function s3e(n){return!!Gn(n,a=>{const c=a.parent;return c===void 0?"quit":kl(c)?c.expression===a&&Gl(a):Ku(c)?c.name===a||c.propertyName===a:!1})}function Vee(n,a){if(It&&PT(n,111551)&&!kS(a)){const c=Fc(n);Au(n,!0)&1160127&&(om(V)||e1(V)&&s3e(a)||!u6(vf(c))?Tb(n):iu(n))}}function cft(n,a,c){var d;const _=dr(n,c),y=n.valueDeclaration;if(y){if(Qa(y)&&!y.initializer&&!y.dotDotDotToken&&y.parent.elements.length>=2){const x=y.parent.parent,k=C_(x);if(k.kind===260&&aS(k)&6||k.kind===169){const z=ei(x);if(!(z.flags&4194304)){z.flags|=4194304;const H=zr(x,0),re=H&&pl(H,_v);if(z.flags&=-4194305,re&&re.flags&1048576&&!(k.kind===169&&sye(k))){const be=y.parent,ge=Kb(be,re,re,void 0,a.flowNode);return ge.flags&131072?jr:Ag(y,ge,!0)}}}}if(Ao(y)&&!y.type&&!y.initializer&&!y.dotDotDotToken){const x=y.parent;if(x.parameters.length>=2&&pee(x)){const k=$8(x);if(k&&k.parameters.length===1&&Yu(k)){const z=V2(so(dr(k.parameters[0]),(d=eS(x))==null?void 0:d.nonFixingMapper));if(z.flags&1048576&&up(z,Ba)&&!bt(x.parameters,sye)){const H=Kb(x,z,z,void 0,a.flowNode),re=x.parameters.indexOf(y)-(qE(x)?1:0);return Lp(H,g_(re))}}}}}return _}function uft(n,a){if(VA(n))return $9(n);const c=jm(n);if(c===ft)return _t;if(c===Gt){if(U3e(n))return Je(n,f.arguments_cannot_be_referenced_in_property_initializers),_t;let ln=Gp(n);if(ln)for(se<2&&(ln.kind===219?Je(n,f.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression):Zr(ln,1024)&&Je(n,f.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method)),ei(ln).flags|=512;ln&&Gs(ln);)ln=Gp(ln),ln&&(ei(ln).flags|=512);return dr(c)}pft(n)&&Vee(c,n);const d=vf(c),_=Dbe(d,n);hb(_)&&uve(n,_)&&_.declarations&&uy(n,_.declarations,n.escapedText);let y=d.valueDeclaration;if(y&&d.flags&32&&ui(y)&&y.name!==n){let ln=Fd(n,!1,!1);for(;ln.kind!==312&&ln.parent!==y;)ln=Fd(ln,!1,!1);ln.kind!==312&&(ei(y).flags|=262144,ei(ln).flags|=262144,ei(n).flags|=536870912)}_ft(n,c);let x=cft(d,n,a);const k=BA(n);if(k){if(!(d.flags&3)&&!(lr(n)&&d.flags&512)){const ln=d.flags&384?f.Cannot_assign_to_0_because_it_is_an_enum:d.flags&32?f.Cannot_assign_to_0_because_it_is_a_class:d.flags&1536?f.Cannot_assign_to_0_because_it_is_a_namespace:d.flags&16?f.Cannot_assign_to_0_because_it_is_a_function:d.flags&2097152?f.Cannot_assign_to_0_because_it_is_an_import:f.Cannot_assign_to_0_because_it_is_not_a_variable;return Je(n,ln,bi(c)),_t}if(b_(d))return d.flags&3?Je(n,f.Cannot_assign_to_0_because_it_is_a_constant,bi(c)):Je(n,f.Cannot_assign_to_0_because_it_is_a_read_only_property,bi(c)),_t}const z=d.flags&2097152;if(d.flags&3){if(k===1)return Yj(n)?bv(x):x}else if(z)y=Fm(c);else return x;if(!y)return x;x=lye(x,n,a);const H=C_(y).kind===169,re=X8(y);let be=X8(n);const ge=be!==re,Ke=n.parent&&n.parent.parent&&Xv(n.parent)&&oye(n.parent.parent),gt=c.flags&134217728,Dt=x===ot||x===Jc,an=Dt&&n.parent.kind===235;for(;be!==re&&(be.kind===218||be.kind===219||Z4(be))&&(rM(d)&&x!==Jc||Gee(d)&&n3e(d,n));)be=X8(be);const cn=H||z||ge||Ke||gt||dft(n,y)||x!==ot&&x!==Jc&&(!Y||(x.flags&16387)!==0||kS(n)||Zve(n)||n.parent.kind===281)||n.parent.kind===235||y.kind===260&&y.exclamationToken||y.flags&33554432,ar=an?Oe:cn?H?aft(x,y):x:Dt?Oe:qb(x),On=an?Ev(Kb(n,x,ar,be)):Kb(n,x,ar,be);if(!Q4e(n)&&(x===ot||x===Jc)){if(On===ot||On===Jc)return pe&&(Je(Mo(y),f.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,bi(c),Un(On)),Je(n,f.Variable_0_implicitly_has_an_1_type,bi(c),Un(On))),c6(On)}else if(!cn&&!K2(x)&&K2(On))return Je(n,f.Variable_0_is_used_before_being_assigned,bi(c)),x;return k?bv(On):On}function dft(n,a){if(Qa(a)){const c=Gn(n,Qa);return c&&C_(c)===C_(a)}}function pft(n){var a;const c=n.parent;if(c){if(Fr(c)&&c.expression===n||Ku(c)&&c.isTypeOnly)return!1;const d=(a=c.parent)==null?void 0:a.parent;if(d&&Yl(d)&&d.isTypeOnly)return!1}return!0}function fft(n,a){return!!Gn(n,c=>c===a?"quit":ea(c)||c.parent&&Jo(c.parent)&&!mc(c.parent)&&c.parent.initializer===c)}function mft(n,a){return Gn(n,c=>c===a?"quit":c===a.initializer||c===a.condition||c===a.incrementor||c===a.statement)}function cye(n){return Gn(n,a=>!a||oU(a)?"quit":Wy(a,!1))}function _ft(n,a){if(se>=2||!(a.flags&34)||!a.valueDeclaration||$i(a.valueDeclaration)||a.valueDeclaration.parent.kind===299)return;const c=hh(a.valueDeclaration),d=fft(n,c),_=cye(c);if(_){if(d){let y=!0;if(HS(c)){const x=b0(a.valueDeclaration,261);if(x&&x.parent===c){const k=mft(n.parent,c);if(k){const z=ei(k);z.flags|=8192;const H=z.capturedBlockScopeBindings||(z.capturedBlockScopeBindings=[]);Tf(H,a),k===c.initializer&&(y=!1)}}}y&&(ei(_).flags|=4096)}if(HS(c)){const y=b0(a.valueDeclaration,261);y&&y.parent===c&&gft(n,c)&&(ei(a.valueDeclaration).flags|=65536)}ei(a.valueDeclaration).flags|=32768}d&&(ei(a.valueDeclaration).flags|=16384)}function hft(n,a){const c=ei(n);return!!c&&Nr(c.capturedBlockScopeBindings,Ir(a))}function gft(n,a){let c=n;for(;c.parent.kind===217;)c=c.parent;let d=!1;if(ig(c))d=!0;else if(c.parent.kind===224||c.parent.kind===225){const _=c.parent;d=_.operator===46||_.operator===47}return d?!!Gn(c,_=>_===a?"quit":_===a.statement):!1}function uye(n,a){if(ei(n).flags|=2,a.kind===172||a.kind===176){const c=a.parent;ei(c).flags|=4}else ei(a).flags|=4}function l3e(n){return IS(n)?n:ea(n)?void 0:Ho(n,l3e)}function dye(n){const a=Ir(n),c=el(a);return Pp(c)===Ge}function c3e(n,a,c){const d=a.parent;UE(d)&&!dye(d)&&ZL(n)&&n.flowNode&&!zee(n.flowNode,!1)&&Je(n,c)}function vft(n,a){Jo(a)&&mc(a)&&ne&&a.initializer&&sL(a.initializer,n.pos)&&If(a.parent)&&Je(n,f.Cannot_use_this_in_a_static_property_initializer_of_a_decorated_class)}function $9(n){const a=kS(n);let c=Fd(n,!0,!0),d=!1,_=!1;for(c.kind===176&&c3e(n,c,f.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class);;){if(c.kind===219&&(c=Fd(c,!1,!_),d=!0),c.kind===167){c=Fd(c,!d,!1),_=!0;continue}break}if(vft(n,c),_)Je(n,f.this_cannot_be_referenced_in_a_computed_property_name);else switch(c.kind){case 267:Je(n,f.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 266:Je(n,f.this_cannot_be_referenced_in_current_location);break;case 176:u3e(n,c)&&Je(n,f.this_cannot_be_referenced_in_constructor_arguments);break}!a&&d&&se<2&&uye(n,c);const y=pye(n,!0,c);if(ie){const x=dr(at);if(y===x&&d)Je(n,f.The_containing_arrow_function_captures_the_global_value_of_this);else if(!y){const k=Je(n,f.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!$i(c)){const z=pye(c);z&&z!==x&&wa(k,wr(c,f.An_outer_value_of_this_is_shadowed_by_this_container))}}}return y||j}function pye(n,a=!0,c=Fd(n,!1,!1)){const d=lr(n);if(ea(c)&&(!_ye(n)||qE(c))){let _=_ge(c)||d&&Eft(c);if(!_){const y=bft(c);if(d&&y){const x=mo(y).symbol;x&&x.members&&x.flags&16&&(_=el(x).thisType)}else nh(c)&&(_=el(rs(c.symbol)).thisType);_||(_=m3e(c))}if(_)return Kb(n,_)}if(ui(c.parent)){const _=Ir(c.parent),y=sa(c)?dr(_):el(_).thisType;return Kb(n,y)}if($i(c))if(c.commonJsModuleIndicator){const _=Ir(c);return _&&dr(_)}else{if(c.externalModuleIndicator)return Oe;if(a)return dr(at)}}function yft(n){const a=Fd(n,!1,!1);if(ea(a)){const c=fm(a);if(c.thisParameter)return Wee(c.thisParameter)}if(ui(a.parent)){const c=Ir(a.parent);return sa(a)?dr(c):el(c).thisType}}function bft(n){if(n.kind===218&&mr(n.parent)&&Bl(n.parent)===3)return n.parent.left.expression.expression;if(n.kind===174&&n.parent.kind===210&&mr(n.parent.parent)&&Bl(n.parent.parent)===6)return n.parent.parent.left.expression;if(n.kind===218&&n.parent.kind===303&&n.parent.parent.kind===210&&mr(n.parent.parent.parent)&&Bl(n.parent.parent.parent)===6)return n.parent.parent.parent.left.expression;if(n.kind===218&&hc(n.parent)&&Ve(n.parent.name)&&(n.parent.name.escapedText==="value"||n.parent.name.escapedText==="get"||n.parent.name.escapedText==="set")&&Oa(n.parent.parent)&&la(n.parent.parent.parent)&&n.parent.parent.parent.arguments[2]===n.parent.parent&&Bl(n.parent.parent.parent)===9)return n.parent.parent.parent.arguments[0].expression;if(ql(n)&&Ve(n.name)&&(n.name.escapedText==="value"||n.name.escapedText==="get"||n.name.escapedText==="set")&&Oa(n.parent)&&la(n.parent.parent)&&n.parent.parent.arguments[2]===n.parent&&Bl(n.parent.parent)===9)return n.parent.parent.arguments[0].expression}function Eft(n){const a=E4(n);if(a&&a.typeExpression)return Ei(a.typeExpression);const c=j2(n);if(c)return pE(c)}function u3e(n,a){return!!Gn(n,c=>Bs(c)?"quit":c.kind===169&&c.parent===a)}function fye(n){const a=n.parent.kind===213&&n.parent.expression===n,c=WL(n,!0);let d=c,_=!1,y=!1;if(!a){for(;d&&d.kind===219;)Zr(d,1024)&&(y=!0),d=WL(d,!0),_=se<2;d&&Zr(d,1024)&&(y=!0)}let x=0;if(!d||!re(d)){const be=Gn(n,ge=>ge===d?"quit":ge.kind===167);return be&&be.kind===167?Je(n,f.super_cannot_be_referenced_in_a_computed_property_name):a?Je(n,f.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors):!d||!d.parent||!(ui(d.parent)||d.parent.kind===210)?Je(n,f.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions):Je(n,f.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class),_t}if(!a&&c.kind===176&&c3e(n,d,f.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class),sa(d)||a?(x=32,!a&&se>=2&&se<=8&&(Jo(d)||Rl(d))&&bie(n.parent,be=>{(!$i(be)||zp(be))&&(ei(be).flags|=2097152)})):x=16,ei(n).flags|=x,d.kind===174&&y&&(zd(n.parent)&&ig(n.parent)?ei(d).flags|=256:ei(d).flags|=128),_&&uye(n.parent,d),d.parent.kind===210)return se<2?(Je(n,f.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher),_t):j;const k=d.parent;if(!UE(k))return Je(n,f.super_can_only_be_referenced_in_a_derived_class),_t;if(dye(k))return a?_t:Ge;const z=el(Ir(k)),H=z&&Mp(z)[0];if(!H)return _t;if(d.kind===176&&u3e(n,d))return Je(n,f.super_cannot_be_referenced_in_constructor_arguments),_t;return x===32?Pp(z):Kp(H,z.thisType);function re(be){return a?be.kind===176:ui(be.parent)||be.parent.kind===210?sa(be)?be.kind===174||be.kind===173||be.kind===177||be.kind===178||be.kind===172||be.kind===175:be.kind===174||be.kind===173||be.kind===177||be.kind===178||be.kind===172||be.kind===171||be.kind===176:!1}}function d3e(n){return(n.kind===174||n.kind===177||n.kind===178)&&n.parent.kind===210?n.parent:n.kind===218&&n.parent.kind===303?n.parent.parent:void 0}function p3e(n){return Wr(n)&4&&n.target===Vl?Js(n)[0]:void 0}function Sft(n){return pl(n,a=>a.flags&2097152?Ue(a.types,p3e):p3e(a))}function f3e(n,a){let c=n,d=a;for(;d;){const _=Sft(d);if(_)return _;if(c.parent.kind!==303)break;c=c.parent.parent,d=EE(c,void 0)}}function m3e(n){if(n.kind===219)return;if(pee(n)){const c=$8(n);if(c){const d=c.thisParameter;if(d)return dr(d)}}const a=lr(n);if(ie||a){const c=d3e(n);if(c){const _=EE(c,void 0),y=f3e(c,_);return y?so(y,Uve(eS(c))):Xp(_?Ev(_):nc(c))}const d=Bv(n.parent);if(Lc(d)){const _=d.left;if(ws(_)){const{expression:y}=_;if(a&&Ve(y)){const x=jn(d);if(x.commonJsModuleIndicator&&jm(y)===x.symbol)return}return Xp(nc(y))}}}}function _3e(n){const a=n.parent;if(!pee(a))return;const c=xS(a);if(c&&c.arguments){const _=ite(c),y=a.parameters.indexOf(n);if(n.dotDotDotToken)return Gye(_,y,_.length,j,void 0,0);const x=ei(c),k=x.resolvedSignature;x.resolvedSignature=Et;const z=y<_.length?Q1(mo(_[y])):n.initializer?void 0:Lt;return x.resolvedSignature=k,z}const d=$8(a);if(d){const _=a.parameters.indexOf(n)-(qE(a)?1:0);return n.dotDotDotToken&&tl(a.parameters)===n?fB(d,_):nS(d,_)}}function mye(n,a){const c=yu(n)||(lr(n)?sW(n):void 0);if(c)return Ei(c);switch(n.kind){case 169:return _3e(n);case 208:return Tft(n,a);case 172:if(sa(n))return Aft(n,a)}}function Tft(n,a){const c=n.parent.parent,d=n.propertyName||n.name,_=mye(c,a)||c.kind!==208&&c.initializer&&aM(c,n.dotDotDotToken?32:0);if(!_||ta(d)||PL(d))return;if(c.name.kind===207){const x=sR(n.parent.elements,n);return x<0?void 0:vye(_,x)}const y=vy(d);if(rm(y)){const x=im(y);return Xe(_,x)}}function Aft(n,a){const c=yt(n.parent)&&Yd(n.parent,a);if(c)return bE(c,Ir(n).escapedName)}function Ift(n,a){const c=n.parent;if(zy(c)&&n===c.initializer){const d=mye(c,a);if(d)return d;if(!(a&8)&&ta(c.name)&&c.name.elements.length>0)return P(c.name,!0,!1)}}function xft(n,a){const c=Gp(n);if(c){let d=jee(c,a);if(d){const _=Vc(c);if(_&1){const y=(_&2)!==0;d.flags&1048576&&(d=dc(d,k=>!!rS(1,k,y)));const x=rS(1,d,(_&2)!==0);if(!x)return;d=x}if(_&2){const y=pl(d,Ey);return y&&ti([y,CWe(y)])}return d}}}function Rft(n,a){const c=Yd(n,a);if(c){const d=Ey(c);return d&&ti([d,CWe(d)])}}function Dft(n,a){const c=Gp(n);if(c){const d=Vc(c);let _=jee(c,a);if(_){const y=(d&2)!==0;return!n.asteriskToken&&_.flags&1048576&&(_=dc(_,x=>!!rS(1,x,y))),n.asteriskToken?_:rS(0,_,y)}}}function _ye(n){let a=!1;for(;n.parent&&!ea(n.parent);){if(Ao(n.parent)&&(a||n.parent.initializer===n))return!0;Qa(n.parent)&&n.parent.initializer===n&&(a=!0),n=n.parent}return!1}function h3e(n,a){const c=!!(Vc(a)&2),d=jee(a,void 0);if(d)return rS(n,d,c)||void 0}function jee(n,a){const c=IN(n);if(c)return c;const d=bye(n);if(d&&!JZ(d)){const y=ps(d),x=Vc(n);return x&1?dc(y,k=>!!(k.flags&58998787)||lbe(k,x,void 0)):x&2?dc(y,k=>!!(k.flags&58998787)||!!cM(k)):y}const _=xS(n);if(_)return Yd(_,a)}function g3e(n,a){const d=ite(n).indexOf(a);return d===-1?void 0:hye(n,d)}function hye(n,a){if(Bp(n))return a===0?ke:a===1?o6e(!1):j;const c=ei(n).resolvedSignature===Er?Er:WN(n);if(ud(n)&&a===0)return Jee(c,n);const d=c.parameters.length-1;return Yu(c)&&a>=d?Lp(dr(c.parameters[d]),g_(a-d),256):y_(c,a)}function Nft(n){const a=ebe(n);return a?KT(a):void 0}function Cft(n,a){if(n.parent.kind===215)return g3e(n.parent,a)}function Pft(n,a){const c=n.parent,{left:d,operatorToken:_,right:y}=c;switch(_.kind){case 64:case 77:case 76:case 78:return n===y?Lft(c):void 0;case 57:case 61:const x=Yd(c,a);return n===y&&(x&&x.pattern||!x&&!Gie(c))?Ru(d):x;case 56:case 28:return n===y?Yd(c,a):void 0;default:return}}function Mft(n){if(x_(n)&&n.symbol)return n.symbol;if(Ve(n))return jm(n);if(Fr(n)){const c=Ru(n.expression);return Ji(n.name)?a(c,n.name):ya(c,n.name.escapedText)}if(Qs(n)){const c=nc(n.argumentExpression);if(!rm(c))return;const d=Ru(n.expression);return ya(d,im(c))}return;function a(c,d){const _=$ee(d.escapedText,d);return _&&Pye(c,_)}}function Lft(n){var a,c;const d=Bl(n);switch(d){case 0:case 4:const _=Mft(n.left),y=_&&_.valueDeclaration;if(y&&(Jo(y)||yp(y))){const z=yu(y);return z&&so(Ei(z),Xi(_).mapper)||(Jo(y)?y.initializer&&Ru(n.left):void 0)}return d===0?Ru(n.left):v3e(n);case 5:if(Uee(n,d))return v3e(n);if(!x_(n.left)||!n.left.symbol)return Ru(n.left);{const z=n.left.symbol.valueDeclaration;if(!z)return;const H=aa(n.left,ws),re=yu(z);if(re)return Ei(re);if(Ve(H.expression)){const be=H.expression,ge=bl(be,be.escapedText,111551,void 0,be.escapedText,!0);if(ge){const Ke=ge.valueDeclaration&&yu(ge.valueDeclaration);if(Ke){const gt=zg(H);if(gt!==void 0)return bE(Ei(Ke),gt)}return}}return lr(z)||z===n.left?void 0:Ru(n.left)}case 1:case 6:case 3:case 2:let x;d!==2&&(x=x_(n.left)?(a=n.left.symbol)==null?void 0:a.valueDeclaration:void 0),x||(x=(c=n.symbol)==null?void 0:c.valueDeclaration);const k=x&&yu(x);return k?Ei(k):void 0;case 7:case 8:case 9:return N.fail("Does not apply");default:return N.assertNever(d)}}function Uee(n,a=Bl(n)){if(a===4)return!0;if(!lr(n)||a!==5||!Ve(n.left.expression))return!1;const c=n.left.expression.escapedText,d=bl(n.left,c,111551,void 0,void 0,!0,!0);return i3(d==null?void 0:d.valueDeclaration)}function v3e(n){if(!n.symbol)return Ru(n.left);if(n.symbol.valueDeclaration){const _=yu(n.symbol.valueDeclaration);if(_){const y=Ei(_);if(y)return y}}const a=aa(n.left,ws);if(!xm(Fd(a.expression,!1,!1)))return;const c=$9(a.expression),d=zg(a);return d!==void 0&&bE(c,d)||void 0}function kft(n){return!!(xl(n)&262144&&!n.links.type&&mx(n,0)>=0)}function bE(n,a,c){return pl(n,d=>{var _;if(Kd(d)&&!d.declaration.nameType){const y=Ef(d),x=Gu(y)||y,k=c||Xd(Vi(a));if(Ea(k,x))return iee(d,k)}else if(d.flags&3670016){const y=ya(d,a);if(y)return kft(y)?void 0:Jb(dr(y),!!(y&&y.flags&16777216));if(Ba(d)&&cg(a)&&+a>=0){const x=Q2(d,d.target.fixedLength,0,!1,!0);if(x)return x}return(_=Lge(kge(d),c||Xd(Vi(a))))==null?void 0:_.type}},!0)}function y3e(n,a){if(N.assert(xm(n)),!(n.flags&67108864))return gye(n,a)}function gye(n,a){const c=n.parent,d=hc(n)&&mye(n,a);if(d)return d;const _=EE(c,a);if(_){if(TN(n)){const y=Ir(n);return bE(_,y.escapedName,Xi(y).nameType)}if(jy(n)){const y=Mo(n);if(y&&Za(y)){const x=mo(y.expression),k=rm(x)&&bE(_,im(x));if(k)return k}}if(n.name){const y=vy(n.name);return pl(_,x=>{var k;return(k=Lge(kge(x),y))==null?void 0:k.type},!0)}}}function wft(n){let a,c;for(let d=0;d<n.length;d++)e_(n[d])&&(a??(a=d),c=d);return{first:a,last:c}}function vye(n,a,c,d,_){return n&&pl(n,y=>{if(Ba(y)){if((d===void 0||a<d)&&a<y.target.fixedLength)return Jb(Js(y)[a],!!y.target.elementFlags[a]);const x=c!==void 0&&(_===void 0||a>_)?c-a:0,k=x>0&&y.target.hasRestElement?L8(y.target,3):0;return x>0&&x<=k?Js(y)[gy(y)-x]:Q2(y,d===void 0?y.target.fixedLength:Math.min(y.target.fixedLength,d),c===void 0||_===void 0?k:Math.min(k,c-_),!1,!0)}return(!d||a<d)&&bE(y,""+a)||ybe(1,y,Oe,void 0,!1)},!0)}function Oft(n,a){const c=n.parent;return n===c.whenTrue||n===c.whenFalse?Yd(c,a):void 0}function Wft(n,a,c){const d=EE(n.openingElement.attributes,c),_=tB(sA(n));if(!(d&&!Nt(d)&&_&&_!==""))return;const y=xR(n.children),x=y.indexOf(a),k=bE(d,_);return k&&(y.length===1?k:pl(k,z=>by(z)?Lp(z,g_(x)):z,!0))}function Fft(n,a){const c=n.parent;return M4(c)?Yd(n,a):dg(c)?Wft(c,n,a):void 0}function b3e(n,a){if(F_(n)){const c=EE(n.parent,a);return!c||Nt(c)?void 0:bE(c,sP(n.name))}else return Yd(n.parent,a)}function Q9(n){switch(n.kind){case 11:case 9:case 10:case 15:case 228:case 112:case 97:case 106:case 80:case 157:return!0;case 211:case 217:return Q9(n.expression);case 294:return!n.expression||Q9(n.expression)}return!1}function zft(n,a){return Cpt(a,n)||Nve(a,So(wt(nr(n.properties,c=>c.symbol?c.kind===303?Q9(c.initializer)&&Z2(a,c.symbol.escapedName):c.kind===304?Z2(a,c.symbol.escapedName):!1:!1),c=>[()=>bB(c.kind===303?c.initializer:c.name),c.symbol.escapedName]),wt(nr(gs(a),c=>{var d;return!!(c.flags&16777216)&&!!((d=n==null?void 0:n.symbol)!=null&&d.members)&&!n.symbol.members.has(c.escapedName)&&Z2(a,c.escapedName)}),c=>[()=>Oe,c.escapedName])),Ea)}function Bft(n,a){const c=tB(sA(n));return Nve(a,So(wt(nr(n.properties,d=>!!d.symbol&&d.kind===291&&Z2(a,d.symbol.escapedName)&&(!d.initializer||Q9(d.initializer))),d=>[d.initializer?()=>bB(d.initializer):()=>Bn,d.symbol.escapedName]),wt(nr(gs(a),d=>{var _;if(!(d.flags&16777216)||!((_=n==null?void 0:n.symbol)!=null&&_.members))return!1;const y=n.parent.parent;return d.escapedName===c&&dg(y)&&xR(y.children).length?!1:!n.symbol.members.has(d.escapedName)&&Z2(a,d.escapedName)}),d=>[()=>Oe,d.escapedName])),Ea)}function EE(n,a){const c=xm(n)?y3e(n,a):Yd(n,a),d=Hee(c,n,a);if(d&&!(a&&a&2&&d.flags&8650752)){const _=pl(d,y=>Wr(y)&32?y:kd(y),!0);return _.flags&1048576&&Oa(n)?zft(n,_):_.flags&1048576&&l1(n)?Bft(n,_):_}}function Hee(n,a,c){if(n&&Cl(n,465829888)){const d=eS(a);if(d&&c&1&&bt(d.inferences,Tht))return qee(n,d.nonFixingMapper);if(d!=null&&d.returnMapper){const _=qee(n,d.returnMapper);return _.flags&1048576&&hv(_.types,bn)&&hv(_.types,Hn)?dc(_,y=>y!==bn&&y!==Hn):_}}return n}function qee(n,a){return n.flags&465829888?so(n,a):n.flags&1048576?ti(wt(n.types,c=>qee(c,a)),0):n.flags&2097152?ba(wt(n.types,c=>qee(c,a))):n}function Yd(n,a){var c;if(n.flags&67108864)return;const d=S3e(n,!a);if(d>=0)return gn[d];const{parent:_}=n;switch(_.kind){case 260:case 169:case 172:case 171:case 208:return Ift(n,a);case 219:case 253:return xft(n,a);case 229:return Dft(_,a);case 223:return Rft(_,a);case 213:case 214:return g3e(_,n);case 170:return Nft(_);case 216:case 234:return Og(_.type)?Yd(_,a):Ei(_.type);case 226:return Pft(n,a);case 303:case 304:return gye(_,a);case 305:return Yd(_.parent,a);case 209:{const y=_,x=EE(y,a),k=sR(y.elements,n),z=(c=ei(y)).spreadIndices??(c.spreadIndices=wft(y.elements));return vye(x,k,y.elements.length,z.first,z.last)}case 227:return Oft(n,a);case 239:return N.assert(_.parent.kind===228),Cft(_.parent,n);case 217:{if(lr(_)){if(qU(_))return Ei(JU(_));const y=d0(_);if(y&&!Og(y.typeExpression.type))return Ei(y.typeExpression.type)}return Yd(_,a)}case 235:return Yd(_,a);case 238:return Ei(_.type);case 277:return ro(_);case 294:return Fft(_,a);case 291:case 293:return b3e(_,a);case 286:case 285:return Uft(_,a);case 301:return jft(_)}}function E3e(n){Z9(n,Yd(n,void 0),!0)}function Z9(n,a,c){Yn[fi]=n,gn[fi]=a,$n[fi]=c,fi++}function Y8(){fi--}function S3e(n,a){for(let c=fi-1;c>=0;c--)if(n===Yn[c]&&(a||!$n[c]))return c;return-1}function Gft(n,a){cr[fr]=n,ri[fr]=a,fr++}function Vft(){fr--}function eS(n){for(let a=fr-1;a>=0;a--)if(jE(n,cr[a]))return ri[a]}function jft(n){return bE(Yge(!1),cW(n))}function Uft(n,a){if(W_(n)&&a!==4){const c=S3e(n.parent,!a);if(c>=0)return gn[c]}return hye(n,0)}function Jee(n,a){return oWe(a)!==0?Hft(n,a):Kft(n,a)}function Hft(n,a){let c=Qye(n,_n);c=T3e(a,sA(a),c);const d=tS(sf.IntrinsicAttributes,a);return Kt(d)||(c=g9(d,c)),c}function qft(n,a){if(n.compositeSignatures){const d=[];for(const _ of n.compositeSignatures){const y=ps(_);if(Nt(y))return y;const x=Xe(y,a);if(!x)return;d.push(x)}return ba(d)}const c=ps(n);return Nt(c)?c:Xe(c,a)}function Jft(n){if(Tx(n.tagName)){const c=M3e(n),d=ote(n,c);return KT(d)}const a=nc(n.tagName);if(a.flags&128){const c=P3e(a,n);if(!c)return _t;const d=ote(n,c);return KT(d)}return a}function T3e(n,a,c){const d=mmt(a);if(d){const _=Jft(n),y=w3e(d,lr(n),_,c);if(y)return y}return c}function Kft(n,a){const c=sA(a),d=hmt(c);let _=d===void 0?Qye(n,_n):d===""?ps(n):qft(n,d);if(!_)return d&&Me(a.attributes.properties)&&Je(a,f.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,Vi(d)),_n;if(_=T3e(a,c,_),Nt(_))return _;{let y=_;const x=tS(sf.IntrinsicClassAttributes,a);if(!Kt(x)){const z=kr(x.symbol),H=ps(n);let re;if(z){const be=Fb([H],z,Gh(z),lr(a));re=so(x,kp(z,be))}else re=x;y=g9(re,y)}const k=tS(sf.IntrinsicAttributes,a);return Kt(k)||(y=g9(k,y)),y}}function Xft(n){return fd(V,"noImplicitAny")?od(n,(a,c)=>a===c||!a?a:S8e(a.typeParameters,c.typeParameters)?Qft(a,c):void 0):void 0}function Yft(n,a,c){if(!n||!a)return n||a;const d=ti([dr(n),so(dr(a),c)]);return tA(n,d)}function $ft(n,a,c){const d=Yp(n),_=Yp(a),y=d>=_?n:a,x=y===n?a:n,k=y===n?d:_,z=Hh(n)||Hh(a),H=z&&!Hh(y),re=new Array(k+(H?1:0));for(let be=0;be<k;be++){let ge=nS(y,be);y===a&&(ge=so(ge,c));let Ke=nS(x,be)||_n;x===a&&(Ke=so(Ke,c));const gt=ti([ge,Ke]),Dt=z&&!H&&be===k-1,an=be>=rh(y)&&be>=rh(x),cn=be>=d?void 0:oM(n,be),ar=be>=_?void 0:oM(a,be),On=cn===ar?cn:cn?ar?void 0:cn:ar,ln=Xa(1|(an&&!Dt?16777216:0),On||`arg${be}`);ln.links.type=Dt?Vu(gt):gt,re[be]=ln}if(H){const be=Xa(1,"args");be.links.type=Vu(y_(x,k)),x===a&&(be.links.type=so(be.links.type,c)),re[k]=be}return re}function Qft(n,a){const c=n.typeParameters||a.typeParameters;let d;n.typeParameters&&a.typeParameters&&(d=kp(a.typeParameters,n.typeParameters));const _=n.declaration,y=$ft(n,a,d),x=Yft(n.thisParameter,a.thisParameter,d),k=Math.max(n.minArgumentCount,a.minArgumentCount),z=Ig(_,c,x,y,void 0,void 0,k,(n.flags|a.flags)&167);return z.compositeKind=2097152,z.compositeSignatures=So(n.compositeKind===2097152&&n.compositeSignatures||[n],[a]),d&&(z.mapper=n.compositeKind===2097152&&n.mapper&&n.compositeSignatures?$1(n.mapper,d):d),z}function yye(n,a){const c=Yo(n,0),d=nr(c,_=>!Zft(_,a));return d.length===1?d[0]:Xft(d)}function Zft(n,a){let c=0;for(;c<a.parameters.length;c++){const d=a.parameters[c];if(d.initializer||d.questionToken||d.dotDotDotToken||Rk(d))break}return a.parameters.length&&JE(a.parameters[0])&&c--,!Hh(n)&&Yp(n)<c}function bye(n){return QE(n)||xm(n)?$8(n):void 0}function $8(n){N.assert(n.kind!==174||xm(n));const a=j2(n);if(a)return a;const c=EE(n,1);if(!c)return;if(!(c.flags&1048576))return yye(c,n);let d;const _=c.types;for(const y of _){const x=yye(y,n);if(x)if(!d)d=[x];else if(z9(d[0],x,!1,!0,!0,z8))d.push(x);else return}if(d)return d.length===1?d[0]:b8e(d[0],d)}function emt(n,a){se<2&&Nc(n,V.downlevelIteration?1536:1024);const c=mo(n.expression,a);return Sy(33,c,Oe,n.expression)}function tmt(n){return n.isSpread?Lp(n.type,Tt):n.type}function iM(n){return n.kind===208&&!!n.initializer||n.kind===226&&n.operatorToken.kind===64}function nmt(n){const a=Bv(n.parent);return e_(a)&&I_(a.parent)}function A3e(n,a,c){const d=n.elements,_=d.length,y=[],x=[];E3e(n);const k=ig(n),z=sM(n),H=EE(n,void 0),re=nmt(n)||!!H&&Um(H,ge=>$2(ge)||Kd(ge)&&!ge.nameType&&!!W8(ge.target||ge));let be=!1;for(let ge=0;ge<_;ge++){const Ke=d[ge];if(Ke.kind===230){se<2&&Nc(Ke,V.downlevelIteration?1536:1024);const gt=mo(Ke.expression,a,c);if(by(gt))y.push(gt),x.push(8);else if(k){const Dt=dE(gt,Tt)||ybe(65,gt,Oe,void 0,!1)||_n;y.push(Dt),x.push(4)}else y.push(Sy(33,gt,Oe,Ke.expression)),x.push(4)}else if(De&&Ke.kind===232)be=!0,y.push(_e),x.push(2);else{const gt=lM(Ke,a,c);if(y.push(cp(gt,!0,be)),x.push(be?2:1),re&&a&&a&2&&!(a&4)&&Uf(Ke)){const Dt=eS(n);N.assert(Dt),Vve(Dt,Ke,gt)}}}return Y8(),k?jh(y,x):I3e(c||z||re?jh(y,x,z&&!(H&&Um(H,Lve))):Vu(y.length?ti(eo(y,(ge,Ke)=>x[Ke]&8?Bb(ge,Tt)||j:ge),2):Y?Ci:Lt,z))}function I3e(n){if(!(Wr(n)&4))return n;let a=n.literalType;return a||(a=n.literalType=J8e(n),a.objectFlags|=147456),a}function rmt(n){switch(n.kind){case 167:return imt(n);case 80:return cg(n.escapedText);case 9:case 11:return cg(n.text);default:return!1}}function imt(n){return xu(Rg(n),296)}function Rg(n){const a=ei(n.expression);if(!a.resolvedType){if((Ep(n.parent.parent)||ui(n.parent.parent)||hd(n.parent.parent))&&mr(n.expression)&&n.expression.operatorToken.kind===103&&n.parent.kind!==177&&n.parent.kind!==178)return a.resolvedType=_t;if(a.resolvedType=mo(n.expression),Jo(n.parent)&&!mc(n.parent)&&Zc(n.parent.parent)){const c=hh(n.parent.parent),d=cye(c);d&&(ei(d).flags|=4096,ei(n).flags|=32768,ei(n.parent.parent).flags|=32768)}(a.resolvedType.flags&98304||!xu(a.resolvedType,402665900)&&!Ea(a.resolvedType,Dn))&&Je(n,f.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}return a.resolvedType}function omt(n){var a;const c=(a=n.declarations)==null?void 0:a[0];return cg(n.escapedName)||c&&ld(c)&&rmt(c.name)}function x3e(n){var a;const c=(a=n.declarations)==null?void 0:a[0];return lk(n)||c&&ld(c)&&Za(c.name)&&xu(Rg(c.name),4096)}function Eye(n,a,c,d){const _=[];for(let x=a;x<c.length;x++){const k=c[x];(d===ke&&!x3e(k)||d===Tt&&omt(k)||d===Ai&&x3e(k))&&_.push(dr(c[x]))}const y=_.length?ti(_,2):Oe;return Vh(d,y,sM(n))}function Sye(n){N.assert((n.flags&2097152)!==0,"Should only get Alias here.");const a=Xi(n);if(!a.immediateTarget){const c=Fm(n);if(!c)return N.fail();a.immediateTarget=Hp(c,!0)}return a.immediateTarget}function amt(n,a=0){var c;const d=ig(n);pbt(n,d);const _=Y?ua():void 0;let y=ua(),x=[],k=La;E3e(n);const z=EE(n,void 0),H=z&&z.pattern&&(z.pattern.kind===206||z.pattern.kind===210),re=sM(n),be=re?8:0,ge=lr(n)&&!c3(n),Ke=ge?YV(n):void 0,gt=!z&&ge&&!Ke;let Dt=Ee,an=!1,cn=!1,ar=!1,On=!1;for(const Fn of n.properties)Fn.name&&Za(Fn.name)&&Rg(Fn.name);let ln=0;for(const Fn of n.properties){let er=Ir(Fn);const qn=Fn.name&&Fn.name.kind===167?Rg(Fn.name):void 0;if(Fn.kind===303||Fn.kind===304||xm(Fn)){let tr=Fn.kind===303?HWe(Fn,a):Fn.kind===304?lM(!d&&Fn.objectAssignmentInitializer?Fn.objectAssignmentInitializer:Fn.name,a):qWe(Fn,a);if(ge){const Bo=uv(Fn);Bo?(nd(tr,Bo,Fn),tr=Bo):Ke&&Ke.typeExpression&&nd(tr,Ei(Ke.typeExpression),Fn)}Dt|=Wr(tr)&458752;const Ro=qn&&rm(qn)?qn:void 0,Eo=Ro?Xa(4|er.flags,im(Ro),be|4096):Xa(4|er.flags,er.escapedName,be);if(Ro&&(Eo.links.nameType=Ro),d)(Fn.kind===303&&iM(Fn.initializer)||Fn.kind===304&&Fn.objectAssignmentInitializer)&&(Eo.flags|=16777216);else if(H&&!(Wr(z)&512)){const Bo=ya(z,er.escapedName);Bo?Eo.flags|=Bo.flags&16777216:!V.suppressExcessPropertyErrors&&!xg(z,ke)&&Je(Fn.name,f.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,bi(er),Un(z))}if(Eo.declarations=er.declarations,Eo.parent=er.parent,er.valueDeclaration&&(Eo.valueDeclaration=er.valueDeclaration),Eo.links.type=tr,Eo.links.target=er,er=Eo,_==null||_.set(Eo.escapedName,Eo),z&&a&2&&!(a&4)&&(Fn.kind===303||Fn.kind===174)&&Uf(Fn)){const Bo=eS(n);N.assert(Bo);const _o=Fn.kind===303?Fn.initializer:Fn;Vve(Bo,_o,tr)}}else if(Fn.kind===305){se<2&&Nc(Fn,2),x.length>0&&(k=K1(k,zn(),n.symbol,Dt,re),x=[],y=ua(),cn=!1,ar=!1,On=!1);const tr=h_(mo(Fn.expression,a&2));if(eB(tr)){const Ro=_ve(tr,re);if(_&&D3e(Ro,_,Fn),ln=x.length,Kt(k))continue;k=K1(k,Ro,n.symbol,Dt,re)}else Je(Fn,f.Spread_types_may_only_be_created_from_object_types),k=_t;continue}else N.assert(Fn.kind===177||Fn.kind===178),Ax(Fn);qn&&!(qn.flags&8576)?Ea(qn,Dn)&&(Ea(qn,Tt)?ar=!0:Ea(qn,Ai)?On=!0:cn=!0,d&&(an=!0)):y.set(er.escapedName,er),x.push(er)}if(Y8(),H){const Fn=Gn(z.pattern.parent,qn=>qn.kind===260||qn.kind===226||qn.kind===169);if(Gn(n,qn=>qn===Fn||qn.kind===305).kind!==305)for(const qn of gs(z))!y.get(qn.escapedName)&&!ya(k,qn.escapedName)&&(qn.flags&16777216||Je(qn.valueDeclaration||((c=ii(qn,mh))==null?void 0:c.links.bindingElement),f.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value),y.set(qn.escapedName,qn),x.push(qn))}if(Kt(k))return _t;if(k!==La)return x.length>0&&(k=K1(k,zn(),n.symbol,Dt,re),x=[],y=ua(),cn=!1,ar=!1),pl(k,Fn=>Fn===La?zn():Fn);return zn();function zn(){const Fn=[];cn&&Fn.push(Eye(n,ln,x,ke)),ar&&Fn.push(Eye(n,ln,x,Tt)),On&&Fn.push(Eye(n,ln,x,Ai));const er=Ls(n.symbol,y,et,et,Fn);return er.objectFlags|=Dt|128|131072,gt&&(er.objectFlags|=4096),an&&(er.objectFlags|=512),d&&(er.pattern=n),er}}function eB(n){const a=E4e(pl(n,_v));return!!(a.flags&126615553||a.flags&3145728&&Zn(a.types,eB))}function smt(n){Iye(n)}function lmt(n,a){return Ax(n),nB(n)||j}function cmt(n){Iye(n.openingElement),Tx(n.closingElement.tagName)?Xee(n.closingElement):mo(n.closingElement.tagName),Kee(n)}function umt(n,a){return Ax(n),nB(n)||j}function dmt(n){Iye(n.openingFragment);const a=jn(n);return q3(V)&&(V.jsxFactory||a.pragmas.has("jsx"))&&!V.jsxFragmentFactory&&!a.pragmas.has("jsxfrag")&&Je(n,V.jsxFactory?f.The_jsxFragmentFactory_compiler_option_must_be_provided_to_use_JSX_fragments_with_the_jsxFactory_compiler_option:f.An_jsxFrag_pragma_is_required_when_using_an_jsx_pragma_with_JSX_fragments),Kee(n),nB(n)||j}function Tye(n){return n.includes("-")}function Tx(n){return Ve(n)&&DR(n.escapedText)||t_(n)}function R3e(n,a){return n.initializer?lM(n.initializer,a):Bn}function pmt(n,a=0){const c=n.attributes,d=Yd(c,0),_=Y?ua():void 0;let y=ua(),x=_l,k=!1,z,H=!1,re=2048;const be=tB(sA(n));for(const gt of c.properties){const Dt=gt.symbol;if(F_(gt)){const an=R3e(gt,a);re|=Wr(an)&458752;const cn=Xa(4|Dt.flags,Dt.escapedName);if(cn.declarations=Dt.declarations,cn.parent=Dt.parent,Dt.valueDeclaration&&(cn.valueDeclaration=Dt.valueDeclaration),cn.links.type=an,cn.links.target=Dt,y.set(cn.escapedName,cn),_==null||_.set(cn.escapedName,cn),sP(gt.name)===be&&(H=!0),d){const ar=ya(d,Dt.escapedName);ar&&ar.declarations&&hb(ar)&&Ve(gt.name)&&uy(gt.name,ar.declarations,gt.name.escapedText)}if(d&&a&2&&!(a&4)&&Uf(gt)){const ar=eS(c);N.assert(ar);const On=gt.initializer.expression;Vve(ar,On,an)}}else{N.assert(gt.kind===293),y.size>0&&(x=K1(x,Ke(),c.symbol,re,!1),y=ua());const an=h_(mo(gt.expression,a&2));Nt(an)&&(k=!0),eB(an)?(x=K1(x,an,c.symbol,re,!1),_&&D3e(an,_,gt)):(Je(gt.expression,f.Spread_types_may_only_be_created_from_object_types),z=z?ba([z,an]):an)}}k||y.size>0&&(x=K1(x,Ke(),c.symbol,re,!1));const ge=n.parent.kind===284?n.parent:void 0;if(ge&&ge.openingElement===n&&xR(ge.children).length>0){const gt=Kee(ge,a);if(!k&&be&&be!==""){H&&Je(c,f._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,Vi(be));const Dt=EE(n.attributes,void 0),an=Dt&&bE(Dt,be),cn=Xa(4,be);cn.links.type=gt.length===1?gt[0]:an&&Um(an,$2)?jh(gt):Vu(ti(gt)),cn.valueDeclaration=w.createPropertySignature(void 0,Vi(be),void 0,void 0),qa(cn.valueDeclaration,c),cn.valueDeclaration.symbol=cn;const ar=ua();ar.set(be,cn),x=K1(x,Ls(c.symbol,ar,et,et,et),c.symbol,re,!1)}}if(k)return j;if(z&&x!==_l)return ba([z,x]);return z||(x===_l?Ke():x);function Ke(){re|=Ee;const gt=Ls(c.symbol,y,et,et,et);return gt.objectFlags|=re|128|131072,gt}}function Kee(n,a){const c=[];for(const d of n.children)if(d.kind===12)d.containsOnlyTriviaWhiteSpaces||c.push(ke);else{if(d.kind===294&&!d.expression)continue;c.push(lM(d,a))}return c}function D3e(n,a,c){for(const d of gs(n))if(!(d.flags&16777216)){const _=a.get(d.escapedName);if(_){const y=Je(_.valueDeclaration,f._0_is_specified_more_than_once_so_this_usage_will_be_overwritten,Vi(_.escapedName));wa(y,wr(c,f.This_spread_always_overwrites_this_property))}}}function fmt(n,a){return pmt(n.parent,a)}function tS(n,a){const c=sA(a),d=c&&Cp(c),_=d&&Jd(d,n,788968);return _?el(_):_t}function Xee(n){const a=ei(n);if(!a.resolvedSymbol){const c=tS(sf.IntrinsicElements,n);if(Kt(c))return pe&&Je(n,f.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,Vi(sf.IntrinsicElements)),a.resolvedSymbol=ft;{if(!Ve(n.tagName)&&!t_(n.tagName))return N.fail();const d=t_(n.tagName)?YA(n.tagName):n.tagName.escapedText,_=ya(c,d);if(_)return a.jsxFlags|=1,a.resolvedSymbol=_;const y=n7e(c,Xd(Vi(d)));return y?(a.jsxFlags|=2,a.resolvedSymbol=y):xt(c,d)?(a.jsxFlags|=2,a.resolvedSymbol=c.symbol):(Je(n,f.Property_0_does_not_exist_on_type_1,KU(n.tagName),"JSX."+sf.IntrinsicElements),a.resolvedSymbol=ft)}}return a.resolvedSymbol}function Aye(n){const a=n&&jn(n),c=a&&ei(a);if(c&&c.jsxImplicitImportContainer===!1)return;if(c&&c.jsxImplicitImportContainer)return c.jsxImplicitImportContainer;const d=K3(J3(V,a),V);if(!d)return;const y=md(V)===1?f.Cannot_find_module_0_Did_you_mean_to_set_the_moduleResolution_option_to_nodenext_or_to_add_aliases_to_the_paths_option:f.Cannot_find_module_0_or_its_corresponding_type_declarations,x=V.importHelpers?1:0,k=a==null?void 0:a.imports[x];k&&N.assert($s(k)&&k.text===d,`Expected sourceFile.imports[${x}] to be the synthesized JSX runtime import`);const z=K_(k||n,d,y,n),H=z&&z!==ft?rs(jl(z)):void 0;return c&&(c.jsxImplicitImportContainer=H||!1),H}function sA(n){const a=n&&ei(n);if(a&&a.jsxNamespace)return a.jsxNamespace;if(!a||a.jsxNamespace!==!1){let d=Aye(n);if(!d||d===ft){const _=J0(n);d=bl(n,_,1920,void 0,_,!1)}if(d){const _=jl(Jd(Cp(jl(d)),sf.JSX,1920));if(_&&_!==ft)return a&&(a.jsxNamespace=_),_}a&&(a.jsxNamespace=!1)}const c=jl(q2(sf.JSX,1920,void 0));if(c!==ft)return c}function N3e(n,a){const c=a&&Jd(a.exports,n,788968),d=c&&el(c),_=d&&gs(d);if(_){if(_.length===0)return"";if(_.length===1)return _[0].escapedName;_.length>1&&c.declarations&&Je(c.declarations[0],f.The_global_type_JSX_0_may_not_have_more_than_one_property,Vi(n))}}function mmt(n){return n&&Jd(n.exports,sf.LibraryManagedAttributes,788968)}function _mt(n){return n&&Jd(n.exports,sf.ElementType,788968)}function hmt(n){return N3e(sf.ElementAttributesPropertyNameContainer,n)}function tB(n){return N3e(sf.ElementChildrenAttributeNameContainer,n)}function C3e(n,a){if(n.flags&4)return[Et];if(n.flags&128){const _=P3e(n,a);return _?[ote(a,_)]:(Je(a,f.Property_0_does_not_exist_on_type_1,n.value,"JSX."+sf.IntrinsicElements),et)}const c=kd(n);let d=Yo(c,1);return d.length===0&&(d=Yo(c,0)),d.length===0&&c.flags&1048576&&(d=Ege(wt(c.types,_=>C3e(_,a)))),d}function P3e(n,a){const c=tS(sf.IntrinsicElements,a);if(!Kt(c)){const d=n.value,_=ya(c,hl(d));if(_)return dr(_);const y=dE(c,ke);return y||void 0}return j}function gmt(n,a,c){if(n===1){const _=k3e(c);_&&Hf(a,_,qd,c.tagName,f.Its_return_type_0_is_not_a_valid_JSX_element,d)}else if(n===0){const _=L3e(c);_&&Hf(a,_,qd,c.tagName,f.Its_instance_type_0_is_not_a_valid_JSX_element,d)}else{const _=k3e(c),y=L3e(c);if(!_||!y)return;const x=ti([_,y]);Hf(a,x,qd,c.tagName,f.Its_element_type_0_is_not_a_valid_JSX_element,d)}function d(){const _=fc(c.tagName);return jo(void 0,f._0_cannot_be_used_as_a_JSX_component,_)}}function M3e(n){var a;N.assert(Tx(n.tagName));const c=ei(n);if(!c.resolvedJsxElementAttributesType){const d=Xee(n);if(c.jsxFlags&1)return c.resolvedJsxElementAttributesType=dr(d)||_t;if(c.jsxFlags&2){const _=t_(n.tagName)?YA(n.tagName):n.tagName.escapedText;return c.resolvedJsxElementAttributesType=((a=gx(tS(sf.IntrinsicElements,n),_))==null?void 0:a.type)||_t}else return c.resolvedJsxElementAttributesType=_t}return c.resolvedJsxElementAttributesType}function L3e(n){const a=tS(sf.ElementClass,n);if(!Kt(a))return a}function nB(n){return tS(sf.Element,n)}function k3e(n){const a=nB(n);if(a)return ti([a,me])}function vmt(n){const a=sA(n);if(!a)return;const c=_mt(a);if(!c)return;const d=w3e(c,lr(n));if(!(!d||Kt(d)))return d}function w3e(n,a,...c){const d=el(n);if(n.flags&524288){const _=Xi(n).typeParameters;if(Me(_)>=c.length){const y=Fb(c,_,c.length,a);return Me(y)===0?d:RN(n,y)}}if(Me(d.typeParameters)>=c.length){const _=Fb(c,d.typeParameters,c.length,a);return hy(d,_)}}function ymt(n){const a=tS(sf.IntrinsicElements,n);return a?gs(a):et}function bmt(n){(V.jsx||0)===0&&Je(n,f.Cannot_use_JSX_unless_the_jsx_flag_is_provided),nB(n)===void 0&&pe&&Je(n,f.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}function Iye(n){const a=ud(n);if(a&&fbt(n),bmt(n),!Aye(n)){const c=ts&&V.jsx===2?f.Cannot_find_name_0:void 0,d=J0(n),_=a?n.tagName:n;let y;if(hI(n)&&d==="null"||(y=bl(_,d,111551,c,d,!0)),y&&(y.isReferenced=-1,It&&y.flags&2097152&&!Ff(y)&&Tb(y)),hI(n)){const x=jn(n),k=tx(x);k&&bl(_,k,111551,c,k,!0)}}if(a){const c=n,d=WN(c);ste(d,n);const _=vmt(c);if(_!==void 0){const y=c.tagName,x=Tx(y)?Xd(KU(y)):mo(y);Hf(x,_,qd,y,f.Its_type_0_is_not_a_valid_JSX_element_type,()=>{const k=fc(y);return jo(void 0,f._0_cannot_be_used_as_a_JSX_component,k)})}else gmt(oWe(c),ps(d),c)}}function xye(n,a,c){if(n.flags&524288){if(uE(n,a)||gx(n,a)||x8(a)&&xg(n,ke)||c&&Tye(a))return!0}else if(n.flags&3145728&&rB(n)){for(const d of n.types)if(xye(d,a,c))return!0}return!1}function rB(n){return!!(n.flags&524288&&!(Wr(n)&512)||n.flags&67108864||n.flags&1048576&&bt(n.types,rB)||n.flags&2097152&&Zn(n.types,rB))}function Emt(n,a){if(_bt(n),n.expression){const c=mo(n.expression,a);return n.dotDotDotToken&&c!==j&&!qf(c)&&Je(n,f.JSX_spread_child_must_be_an_array_type),c}else return _t}function Rye(n){return n.valueDeclaration?aS(n.valueDeclaration):0}function Dye(n){if(n.flags&8192||xl(n)&4)return!0;if(lr(n.valueDeclaration)){const a=n.valueDeclaration.parent;return a&&mr(a)&&Bl(a)===3}}function Nye(n,a,c,d,_,y=!0){const x=y?n.kind===166?n.right:n.kind===205?n:n.kind===208&&n.propertyName?n.propertyName:n.name:void 0;return O3e(n,a,c,d,_,x)}function O3e(n,a,c,d,_,y){var x;const k=Df(_,c);if(a){if(se<2&&W3e(_))return y&&Je(y,f.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword),!1;if(k&64)return y&&Je(y,f.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,bi(_),Un(Sx(_))),!1;if(!(k&256)&&((x=_.declarations)!=null&&x.some(Bre)))return y&&Je(y,f.Class_field_0_defined_by_the_parent_class_is_not_accessible_in_the_child_class_via_super,bi(_)),!1}if(k&64&&W3e(_)&&(FL(n)||Fie(n)||am(n.parent)&&i3(n.parent.parent))){const H=Vg(Pd(_));if(H&&pyt(n))return y&&Je(y,f.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,bi(_),em(H.name)),!1}if(!(k&6))return!0;if(k&2){const H=Vg(Pd(_));return Pbe(n,H)?!0:(y&&Je(y,f.Property_0_is_private_and_only_accessible_within_class_1,bi(_),Un(Sx(_))),!1)}if(a)return!0;let z=e7e(n,H=>{const re=el(Ir(H));return d4e(re,_,c)});return!z&&(z=Smt(n),z=z&&d4e(z,_,c),k&256||!z)?(y&&Je(y,f.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,bi(_),Un(Sx(_)||d)),!1):k&256?!0:(d.flags&262144&&(d=d.isThisType?Ld(d):Gu(d)),!d||!EN(d,z)?(y&&Je(y,f.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_This_is_an_instance_of_class_2,bi(_),Un(z),Un(d)),!1):!0)}function Smt(n){const a=Tmt(n);let c=(a==null?void 0:a.type)&&Ei(a.type);if(c&&c.flags&262144&&(c=Ld(c)),c&&Wr(c)&7)return my(c)}function Tmt(n){const a=Fd(n,!1,!1);return a&&ea(a)?qE(a):void 0}function W3e(n){return!!F9(n,a=>!(a.flags&8192))}function wN(n){return eh(mo(n),n)}function iB(n){return _m(n,50331648)}function Cye(n){return iB(n)?Ev(n):n}function Amt(n,a){const c=Gl(n)?_p(n):void 0;if(n.kind===106){Je(n,f.The_value_0_cannot_be_used_here,"null");return}if(c!==void 0&&c.length<100){if(Ve(n)&&c==="undefined"){Je(n,f.The_value_0_cannot_be_used_here,"undefined");return}Je(n,a&16777216?a&33554432?f._0_is_possibly_null_or_undefined:f._0_is_possibly_undefined:f._0_is_possibly_null,c)}else Je(n,a&16777216?a&33554432?f.Object_is_possibly_null_or_undefined:f.Object_is_possibly_undefined:f.Object_is_possibly_null)}function Imt(n,a){Je(n,a&16777216?a&33554432?f.Cannot_invoke_an_object_which_is_possibly_null_or_undefined:f.Cannot_invoke_an_object_which_is_possibly_undefined:f.Cannot_invoke_an_object_which_is_possibly_null)}function F3e(n,a,c){if(Y&&n.flags&2){if(Gl(a)){const _=_p(a);if(_.length<100)return Je(a,f._0_is_of_type_unknown,_),_t}return Je(a,f.Object_is_of_type_unknown),_t}const d=eM(n,50331648);if(d&50331648){c(a,d);const _=Ev(n);return _.flags&229376?_t:_}return n}function eh(n,a){return F3e(n,a,Amt)}function z3e(n,a){const c=eh(n,a);if(c.flags&16384){if(Gl(a)){const d=_p(a);if(Ve(a)&&d==="undefined")return Je(a,f.The_value_0_cannot_be_used_here,d),c;if(d.length<100)return Je(a,f._0_is_possibly_undefined,d),c}Je(a,f.Object_is_possibly_undefined)}return c}function Yee(n,a,c){return n.flags&64?xmt(n,a):Mye(n,n.expression,wN(n.expression),n.name,a,c)}function xmt(n,a){const c=mo(n.expression),d=j8(c,n.expression);return Iee(Mye(n,n.expression,eh(d,n.expression),n.name,a),n,d!==c)}function B3e(n,a){const c=l3(n)&&KE(n.left)?eh($9(n.left),n.left):wN(n.left);return Mye(n,n.left,c,n.right,a)}function G3e(n){for(;n.parent.kind===217;)n=n.parent;return I_(n.parent)&&n.parent.expression===n}function $ee(n,a){for(let c=n3(a);c;c=su(c)){const{symbol:d}=c,_=sk(d,n),y=d.members&&d.members.get(_)||d.exports&&d.exports.get(_);if(y)return y}}function Rmt(n){if(!su(n))return En(n,f.Private_identifiers_are_not_allowed_outside_class_bodies);if(!aF(n.parent)){if(!ng(n))return En(n,f.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression);const a=mr(n.parent)&&n.parent.operatorToken.kind===103;if(!Qee(n)&&!a)return En(n,f.Cannot_find_name_0,Sr(n))}return!1}function Dmt(n){Rmt(n);const a=Qee(n);return a&&aB(a,void 0,!1),j}function Qee(n){if(!ng(n))return;const a=ei(n);return a.resolvedSymbol===void 0&&(a.resolvedSymbol=$ee(n.escapedText,n)),a.resolvedSymbol}function Pye(n,a){return ya(n,a.escapedName)}function Nmt(n,a,c){let d;const _=gs(n);_&&Ue(_,x=>{const k=x.valueDeclaration;if(k&&ld(k)&&Ji(k.name)&&k.name.escapedText===a.escapedText)return d=x,!0});const y=Wm(a);if(d){const x=N.checkDefined(d.valueDeclaration),k=N.checkDefined(su(x));if(c!=null&&c.valueDeclaration){const z=c.valueDeclaration,H=su(z);if(N.assert(!!H),Gn(H,re=>k===re)){const re=Je(a,f.The_property_0_cannot_be_accessed_on_type_1_within_this_class_because_it_is_shadowed_by_another_private_identifier_with_the_same_spelling,y,Un(n));return wa(re,wr(z,f.The_shadowing_declaration_of_0_is_defined_here,y),wr(x,f.The_declaration_of_0_that_you_probably_intended_to_use_is_defined_here,y)),!0}}return Je(a,f.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier,y,Wm(k.name||KF)),!0}return!1}function V3e(n,a){return(vN(a)||FL(n)&&W2(a))&&Fd(n,!0,!1)===F2(a)}function Mye(n,a,c,d,_,y){const x=ei(a).resolvedSymbol,k=BA(n),z=kd(k!==0||G3e(n)?Xp(c):c),H=Nt(z)||z===vo;let re;if(Ji(d)){se<99&&(k!==0&&Nc(n,1048576),k!==1&&Nc(n,524288));const ge=$ee(d.escapedText,d);if(k&&ge&&ge.valueDeclaration&&ql(ge.valueDeclaration)&&En(d,f.Cannot_assign_to_private_method_0_Private_methods_are_not_writable,Sr(d)),H){if(ge)return Kt(z)?_t:z;if(n3(d)===void 0)return En(d,f.Private_identifiers_are_not_allowed_outside_class_bodies),j}if(re=ge&&Pye(c,ge),re===void 0){if(Nmt(c,d,ge))return _t;const Ke=n3(d);Ke&&RL(jn(Ke),V.checkJs)&&En(d,f.Private_field_0_must_be_declared_in_an_enclosing_class,Sr(d))}else re.flags&65536&&!(re.flags&32768)&&k!==1&&Je(n,f.Private_accessor_was_defined_without_a_getter)}else{if(H)return Ve(a)&&x&&Vee(x,n),Kt(z)?_t:z;re=ya(z,d.escapedText,ute(z),n.kind===166)}Ve(a)&&x&&(om(V)||!(re&&(u6(re)||re.flags&8&&n.parent.kind===306))||e1(V)&&s3e(n))&&Vee(x,n);let be;if(re){const ge=Dbe(re,d);if(hb(ge)&&uve(n,ge)&&ge.declarations&&uy(d,ge.declarations,d.escapedText),Cmt(re,n,d),aB(re,n,X3e(a,x)),ei(n).resolvedSymbol=re,Nye(n,a.kind===108,HA(n),z,re),FWe(n,re,k))return Je(d,f.Cannot_assign_to_0_because_it_is_a_read_only_property,Sr(d)),_t;be=V3e(n,re)?ot:y||F3(n)?U1(re):dr(re)}else{const ge=!Ji(d)&&(k===0||!$T(c)||oP(c))?gx(z,d.escapedText):void 0;if(!(ge&&ge.type)){const Ke=Lye(n,c.symbol,!0);return!Ke&&k8(c)?j:c.symbol===at?(at.exports.has(d.escapedText)&&at.exports.get(d.escapedText).flags&418?Je(d,f.Property_0_does_not_exist_on_type_1,Vi(d.escapedText),Un(c)):pe&&Je(d,f.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,Un(c)),j):(d.escapedText&&!AT(n)&&H3e(d,oP(c)?z:c,Ke),_t)}ge.isReadonly&&(ig(n)||$j(n))&&Je(n,f.Index_signature_in_type_0_only_permits_reading,Un(z)),be=V.noUncheckedIndexedAccess&&!ig(n)?ti([ge.type,L]):ge.type,V.noPropertyAccessFromIndexSignature&&Fr(n)&&Je(d,f.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0,Vi(d.escapedText)),ge.declaration&&cy(ge.declaration)&&uy(d,[ge.declaration],d.escapedText)}return j3e(n,re,be,d,_)}function Lye(n,a,c){var d;const _=jn(n);if(_&&V.checkJs===void 0&&_.checkJsDirective===void 0&&(_.scriptKind===1||_.scriptKind===2)){const y=Ue(a==null?void 0:a.declarations,jn),x=!(a!=null&&a.valueDeclaration)||!ui(a.valueDeclaration)||((d=a.valueDeclaration.heritageClauses)==null?void 0:d.length)||zv(!1,a.valueDeclaration);return!(_!==y&&y&&Mh(y))&&!(c&&a&&a.flags&32&&x)&&!(n&&c&&Fr(n)&&n.expression.kind===110&&x)}return!1}function j3e(n,a,c,d,_){const y=BA(n);if(y===1)return Jb(c,!!(a&&a.flags&16777216));if(a&&!(a.flags&98311)&&!(a.flags&8192&&c.flags&1048576)&&!Ite(a.declarations))return c;if(c===ot)return yN(n,a);c=lye(c,n,_);let x=!1;if(Y&&Ne&&ws(n)&&n.expression.kind===110){const z=a&&a.valueDeclaration;if(z&&GFe(z)&&!sa(z)){const H=X8(n);H.kind===176&&H.parent===z.parent&&!(z.flags&33554432)&&(x=!0)}}else Y&&a&&a.valueDeclaration&&Fr(a.valueDeclaration)&&KL(a.valueDeclaration)&&X8(n)===X8(a.valueDeclaration)&&(x=!0);const k=Kb(n,c,x?qb(c):c);return x&&!K2(c)&&K2(k)?(Je(d,f.Property_0_is_used_before_being_assigned,bi(a)),c):y?bv(k):k}function Cmt(n,a,c){const{valueDeclaration:d}=n;if(!d||jn(a).isDeclarationFile)return;let _;const y=Sr(c);U3e(a)&&!vct(d)&&!(ws(a)&&ws(a.expression))&&!iv(d,c)&&!(ql(d)&&kte(d)&256)&&(he||!Pmt(n))?_=Je(c,f.Property_0_is_used_before_its_initialization,y):d.kind===263&&a.parent.kind!==183&&!(d.flags&33554432)&&!iv(d,c)&&(_=Je(c,f.Class_0_used_before_its_declaration,y)),_&&wa(_,wr(d,f._0_is_declared_here,y))}function U3e(n){return!!Gn(n,a=>{switch(a.kind){case 172:return!0;case 303:case 174:case 177:case 178:case 305:case 167:case 239:case 294:case 291:case 292:case 293:case 286:case 233:case 298:return!1;case 219:case 244:return Xo(a.parent)&&Rl(a.parent.parent)?!0:"quit";default:return ng(a)?!1:"quit"}})}function Pmt(n){if(!(n.parent.flags&32))return!1;let a=dr(n.parent);for(;;){if(a=a.symbol&&Mmt(a),!a)return!1;const c=ya(a,n.escapedName);if(c&&c.valueDeclaration)return!0}}function Mmt(n){const a=Mp(n);if(a.length!==0)return ba(a)}function H3e(n,a,c){let d,_;if(!Ji(n)&&a.flags&1048576&&!(a.flags&402784252)){for(const x of a.types)if(!ya(x,n.escapedText)&&!gx(x,n.escapedText)){d=jo(d,f.Property_0_does_not_exist_on_type_1,Rs(n),Un(x));break}}if(q3e(n.escapedText,a)){const x=Rs(n),k=Un(a);d=jo(d,f.Property_0_does_not_exist_on_type_1_Did_you_mean_to_access_the_static_member_2_instead,x,k,k+"."+x)}else{const x=i6(a);if(x&&ya(x,n.escapedText))d=jo(d,f.Property_0_does_not_exist_on_type_1,Rs(n),Un(a)),_=wr(n,f.Did_you_forget_to_use_await);else{const k=Rs(n),z=Un(a),H=wmt(k,a);if(H!==void 0)d=jo(d,f.Property_0_does_not_exist_on_type_1_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2_or_later,k,z,H);else{const re=kye(n,a);if(re!==void 0){const be=Sl(re),ge=c?f.Property_0_may_not_exist_on_type_1_Did_you_mean_2:f.Property_0_does_not_exist_on_type_1_Did_you_mean_2;d=jo(d,ge,k,z,be),_=re.valueDeclaration&&wr(re.valueDeclaration,f._0_is_declared_here,be)}else{const be=Lmt(a)?f.Property_0_does_not_exist_on_type_1_Try_changing_the_lib_compiler_option_to_include_dom:f.Property_0_does_not_exist_on_type_1;d=jo(Pge(d,a),be,k,z)}}}}const y=Fg(jn(n),n,d);_&&wa(y,_),s_(!c||d.code!==f.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,y)}function Lmt(n){return V.lib&&!V.lib.includes("dom")&&Hpt(n,a=>a.symbol&&/^(EventTarget|Node|((HTML[a-zA-Z]*)?Element))$/.test(Vi(a.symbol.escapedName)))&&yv(n)}function q3e(n,a){const c=a.symbol&&ya(dr(a.symbol),n);return c!==void 0&&!!c.valueDeclaration&&sa(c.valueDeclaration)}function kmt(n){const a=Wm(n),d=pW().get(a);return d&&fG(d.keys())}function wmt(n,a){const c=kd(a).symbol;if(!c)return;const d=Sl(c),y=pW().get(d);if(y){for(const[x,k]of y)if(Nr(k,n))return x}}function J3e(n,a){return oB(n,gs(a),106500)}function kye(n,a){let c=gs(a);if(typeof n!="string"){const d=n.parent;Fr(d)&&(c=nr(c,_=>Y3e(d,a,_))),n=Sr(n)}return oB(n,c,111551)}function K3e(n,a){const c=Po(n)?n:Sr(n),d=gs(a);return(c==="for"?An(d,y=>Sl(y)==="htmlFor"):c==="class"?An(d,y=>Sl(y)==="className"):void 0)??oB(c,d,111551)}function wye(n,a){const c=kye(n,a);return c&&Sl(c)}function Oye(n,a,c){return N.assert(a!==void 0,"outername should always be defined"),Up(n,a,c,void 0,a,!1,!1,!0,(_,y,x)=>{N.assertEqual(a,y,"name should equal outerName");const k=Jd(_,y,x);if(k)return k;let z;return _===Se?z=Hi(["string","number","boolean","object","bigint","symbol"],re=>_.has(re.charAt(0).toUpperCase()+re.slice(1))?Xa(524288,re):void 0).concat(zo(_.values())):z=zo(_.values()),oB(Vi(y),z,x)})}function Omt(n,a,c){const d=Oye(n,a,c);return d&&Sl(d)}function Zee(n,a){return a.exports&&oB(Sr(n),wT(a),2623475)}function Wmt(n,a){const c=Zee(n,a);return c&&Sl(c)}function Fmt(n,a,c){function d(x){const k=uE(n,x);if(k){const z=cA(dr(k));return!!z&&rh(z)>=1&&Ea(c,y_(z,0))}return!1}const _=ig(a)?"set":"get";if(!d(_))return;let y=hk(a.expression);return y===void 0?y=_:y+="."+_,y}function zmt(n,a){const c=a.types.filter(d=>!!(d.flags&128));return $N(n.value,c,d=>d.value)}function oB(n,a,c){return $N(n,a,d);function d(_){const y=Sl(_);if(!uo(y,'"')){if(_.flags&c)return y;if(_.flags&2097152){const x=MT(_);if(x&&x.flags&c)return y}}}}function aB(n,a,c){const d=n&&n.flags&106500&&n.valueDeclaration;if(!d)return;const _=gp(d,2),y=n.valueDeclaration&&ld(n.valueDeclaration)&&Ji(n.valueDeclaration.name);if(!(!_&&!y)&&!(a&&F3(a)&&!(n.flags&65536))){if(c){const x=Gn(a,Bs);if(x&&x.symbol===n)return}(xl(n)&1?Xi(n).target:n).isReferenced=-1}}function X3e(n,a){return n.kind===110||!!a&&Gl(n)&&a===jm(Vp(n))}function Bmt(n,a){switch(n.kind){case 211:return Wye(n,n.expression.kind===108,a,Xp(mo(n.expression)));case 166:return Wye(n,!1,a,Xp(mo(n.left)));case 205:return Wye(n,!1,a,Ei(n))}}function Y3e(n,a,c){return Fye(n,n.kind===211&&n.expression.kind===108,!1,a,c)}function Wye(n,a,c,d){if(Nt(d))return!0;const _=ya(d,c);return!!_&&Fye(n,a,!1,d,_)}function Fye(n,a,c,d,_){if(Nt(d))return!0;if(_.valueDeclaration&&cd(_.valueDeclaration)){const y=su(_.valueDeclaration);return!qu(n)&&!!Gn(n,x=>x===y)}return O3e(n,a,c,d,_)}function Gmt(n){const a=n.initializer;if(a.kind===261){const c=a.declarations[0];if(c&&!ta(c.name))return Ir(c)}else if(a.kind===80)return jm(a)}function Vmt(n){return yd(n).length===1&&!!xg(n,Tt)}function jmt(n){const a=hs(n);if(a.kind===80){const c=jm(a);if(c.flags&3){let d=n,_=n.parent;for(;_;){if(_.kind===249&&d===_.statement&&Gmt(_)===c&&Vmt(Ru(_.expression)))return!0;d=_,_=_.parent}}}return!1}function Umt(n,a){return n.flags&64?Hmt(n,a):$3e(n,wN(n.expression),a)}function Hmt(n,a){const c=mo(n.expression),d=j8(c,n.expression);return Iee($3e(n,eh(d,n.expression),a),n,d!==c)}function $3e(n,a,c){const d=BA(n)!==0||G3e(n)?Xp(a):a,_=n.argumentExpression,y=mo(_);if(Kt(d)||d===vo)return d;if(ute(d)&&!ls(_))return Je(_,f.A_const_enum_member_can_only_be_accessed_using_a_string_literal),_t;const x=jmt(_)?Tt:y,k=ig(n)?4|($T(d)&&!oP(d)?2:0):32,z=Bb(d,x,k,n)||_t;return oFe(j3e(n,ei(n).resolvedSymbol,z,_,c),n)}function Q3e(n){return I_(n)||i1(n)||ud(n)}function lA(n){return Q3e(n)&&Ue(n.typeArguments,Na),n.kind===215?mo(n.template):ud(n)?mo(n.attributes):mr(n)?mo(n.left):I_(n)&&Ue(n.arguments,a=>{mo(a)}),Et}function th(n){return lA(n),un}function qmt(n,a,c){let d,_,y=0,x,k=-1,z;N.assert(!a.length);for(const H of n){const re=H.declaration&&Ir(H.declaration),be=H.declaration&&H.declaration.parent;!_||re===_?d&&be===d?x=x+1:(d=be,x=y):(x=y=a.length,d=be),_=re,Xq(H)?(k++,z=k,y++):z=x,a.splice(z,0,c?Blt(H,c):H)}}function ete(n){return!!n&&(n.kind===230||n.kind===237&&n.isSpread)}function tte(n){return Gr(n,ete)}function Z3e(n){return!!(n.flags&16384)}function Jmt(n){return!!(n.flags&49155)}function nte(n,a,c,d=!1){let _,y=!1,x=Yp(c),k=rh(c);if(n.kind===215)if(_=a.length,n.template.kind===228){const z=Ya(n.template.templateSpans);y=zl(z.literal)||!!z.literal.isUnterminated}else{const z=n.template;N.assert(z.kind===15),y=!!z.isUnterminated}else if(n.kind===170)_=sWe(n,c);else if(n.kind===226)_=1;else if(ud(n)){if(y=n.attributes.end===n.end,y)return!0;_=k===0?a.length:1,x=a.length===0?x:1,k=Math.min(k,1)}else if(n.arguments){_=d?a.length+1:a.length,y=n.arguments.end===n.end;const z=tte(a);if(z>=0)return z>=rh(c)&&(Hh(c)||z<Yp(c))}else return N.assert(n.kind===214),rh(c)===0;if(!Hh(c)&&_>x)return!1;if(y||_>=k)return!0;for(let z=_;z<k;z++){const H=y_(c,z);if(dc(H,lr(n)&&!Y?Jmt:Z3e).flags&131072)return!1}return!0}function zye(n,a){const c=Me(n.typeParameters),d=Gh(n.typeParameters);return!bt(a)||a.length>=d&&a.length<=c}function eWe(n,a){let c;return!!(n.target&&(c=nS(n.target,a))&&CN(c))}function cA(n){return Q8(n,0,!1)}function tWe(n){return Q8(n,0,!1)||Q8(n,1,!1)}function Q8(n,a,c){if(n.flags&524288){const d=__(n);if(c||d.properties.length===0&&d.indexInfos.length===0){if(a===0&&d.callSignatures.length===1&&d.constructSignatures.length===0)return d.callSignatures[0];if(a===1&&d.constructSignatures.length===1&&d.callSignatures.length===0)return d.constructSignatures[0]}}}function nWe(n,a,c,d){const _=q8(n.typeParameters,n,0,d),y=Z8(a),x=c&&(y&&y.flags&262144?c.nonFixingMapper:c.mapper),k=x?MN(a,x):a;return zve(k,n,(z,H)=>{Sv(_.inferences,z,H)}),c||Bve(a,n,(z,H)=>{Sv(_.inferences,z,H,128)}),C8(n,Qve(_),lr(a.declaration))}function Kmt(n,a,c,d){const _=Jee(a,n),y=FN(n.attributes,_,d,c);return Sv(d.inferences,y,_),Qve(d)}function rWe(n){if(!n)return ir;const a=mo(n);return yoe(n)?a:uC(n.parent)?Ev(a):qu(n.parent)?Aee(a):a}function Bye(n,a,c,d,_){if(ud(n))return Kmt(n,a,d,_);if(n.kind!==170&&n.kind!==226){const z=Zn(a.typeParameters,re=>!!JT(re)),H=Yd(n,z?8:0);if(H){const re=ps(a);if(vE(re)){const be=eS(n);if(!(!z&&Yd(n,8)!==H)){const Dt=Uve(spt(be,1)),an=so(H,Dt),cn=cA(an),ar=cn&&cn.typeParameters?KT(Fge(cn,cn.typeParameters)):an;Sv(_.inferences,ar,re,128)}const Ke=q8(a.typeParameters,a,_.flags),gt=so(H,be&&be.returnMapper);Sv(Ke.inferences,gt,re),_.returnMapper=bt(Ke.inferences,zN)?Uve(dpt(Ke)):void 0}}}const y=e6(a),x=y?Math.min(Yp(a)-1,c.length):c.length;if(y&&y.flags&262144){const z=An(_.inferences,H=>H.typeParameter===y);z&&(z.impliedArity=Gr(c,ete,x)<0?c.length-x:void 0)}const k=pE(a);if(k&&vE(k)){const z=aWe(n);Sv(_.inferences,rWe(z),k)}for(let z=0;z<x;z++){const H=c[z];if(H.kind!==232){const re=y_(a,z);if(vE(re)){const be=FN(H,re,_,d);Sv(_.inferences,be,re)}}}if(y&&vE(y)){const z=Gye(c,x,c.length,y,_,d);Sv(_.inferences,z,y)}return Qve(_)}function iWe(n){return n.flags&1048576?pl(n,iWe):n.flags&1||B9(Gu(n)||n)?n:Ba(n)?jh(J1(n),n.target.elementFlags,!1,n.target.labeledElementDeclarations):jh([n],[8])}function Gye(n,a,c,d,_,y){const x=qT(d);if(a>=c-1){const re=n[c-1];if(ete(re)){const be=re.kind===237?re.type:FN(re.expression,d,_,y);return by(be)?iWe(be):Vu(Sy(33,be,Oe,re.kind===230?re.expression:re),x)}}const k=[],z=[],H=[];for(let re=a;re<c;re++){const be=n[re];if(ete(be)){const ge=be.kind===237?be.type:mo(be.expression);by(ge)?(k.push(ge),z.push(8)):(k.push(Sy(33,ge,Oe,be.kind===230?be.expression:be)),z.push(4))}else{const ge=Ba(d)?vye(d,re-a,c-a)||_n:Lp(d,g_(re-a),256),Ke=FN(be,ge,_,y),gt=x||Cl(ge,406978556);k.push(gt?Ed(Ke):Q1(Ke)),z.push(1)}be.kind===237&&be.tupleNameSource?H.push(be.tupleNameSource):H.push(void 0)}return jh(k,z,x&&!Um(d,Lve),H)}function Vye(n,a,c,d){const _=lr(n.declaration),y=n.typeParameters,x=Fb(wt(a,Ei),y,Gh(y),_);let k;for(let z=0;z<a.length;z++){N.assert(y[z]!==void 0,"Should not call checkTypeArguments with too many type arguments");const H=Ld(y[z]);if(H){const re=c&&d?()=>jo(void 0,f.Type_0_does_not_satisfy_the_constraint_1):void 0,be=d||f.Type_0_does_not_satisfy_the_constraint_1;k||(k=kp(y,x));const ge=x[z];if(!nd(ge,Kp(so(H,k),ge),c?a[z]:void 0,be,re))return}}return x}function oWe(n){if(Tx(n.tagName))return 2;const a=kd(mo(n.tagName));return Me(Yo(a,1))?0:Me(Yo(a,0))?1:2}function Xmt(n,a,c,d,_,y,x){const k=Jee(a,n),z=FN(n.attributes,k,void 0,d),H=d&4?H8(z):z;return re()&&Ave(H,k,c,_?n.tagName:void 0,n.attributes,void 0,y,x);function re(){var be;if(Aye(n))return!0;const ge=(W_(n)||JS(n))&&!(Tx(n.tagName)||t_(n.tagName))?mo(n.tagName):void 0;if(!ge)return!0;const Ke=Yo(ge,0);if(!Me(Ke))return!0;const gt=p7e(n);if(!gt)return!0;const Dt=Hs(gt,111551,!0,!1,n);if(!Dt)return!0;const an=dr(Dt),cn=Yo(an,0);if(!Me(cn))return!0;let ar=!1,On=0;for(const zn of cn){const Fn=y_(zn,0),er=Yo(Fn,0);if(Me(er))for(const qn of er){if(ar=!0,Hh(qn))return!0;const tr=Yp(qn);tr>On&&(On=tr)}}if(!ar)return!0;let ln=1/0;for(const zn of Ke){const Fn=rh(zn);Fn<ln&&(ln=Fn)}if(ln<=On)return!0;if(_){const zn=wr(n.tagName,f.Tag_0_expects_at_least_1_arguments_but_the_JSX_factory_2_provides_at_most_3,_p(n.tagName),ln,_p(gt),On),Fn=(be=Hm(n.tagName))==null?void 0:be.valueDeclaration;Fn&&wa(zn,wr(Fn,f._0_is_declared_here,_p(n.tagName))),x&&x.skipLogging&&(x.errors||(x.errors=[])).push(zn),x.skipLogging||ts.add(zn)}return!1}}function rte(n){return n=hs(n),MH(n)?hs(n.expression):n}function sB(n,a,c,d,_,y,x){const k={errors:void 0,skipLogging:!0};if(ud(n))return Xmt(n,c,d,_,y,x,k)?void 0:(N.assert(!y||!!k.errors,"jsx should have errors when reporting errors"),k.errors||et);const z=pE(c);if(z&&z!==ir&&!(r1(n)||la(n)&&zd(n.expression))){const Ke=aWe(n),gt=rWe(Ke),Dt=y?Ke||n:void 0,an=f.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1;if(!Hf(gt,z,d,Dt,an,x,k))return N.assert(!y||!!k.errors,"this parameter should have errors when reporting errors"),k.errors||et}const H=f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1,re=e6(c),be=re?Math.min(Yp(c)-1,a.length):a.length;for(let Ke=0;Ke<be;Ke++){const gt=a[Ke];if(gt.kind!==232){const Dt=y_(c,Ke),an=FN(gt,Dt,void 0,_),cn=_&4?H8(an):an,ar=rte(gt);if(!Ave(cn,Dt,d,y?ar:void 0,ar,H,x,k))return N.assert(!y||!!k.errors,"parameter should have errors when reporting errors"),ge(gt,cn,Dt),k.errors||et}}if(re){const Ke=Gye(a,be,a.length,re,void 0,_),gt=a.length-be,Dt=y?gt===0?n:gt===1?rte(a[be]):vh(lB(n,Ke),a[be].pos,a[a.length-1].end):void 0;if(!Hf(Ke,re,d,Dt,H,void 0,k))return N.assert(!y||!!k.errors,"rest parameter should have errors when reporting errors"),ge(Dt,Ke,re),k.errors||et}return;function ge(Ke,gt,Dt){if(Ke&&y&&k.errors&&k.errors.length){if(cM(Dt))return;const an=cM(gt);an&&Z_(an,Dt,d)&&wa(k.errors[0],wr(Ke,f.Did_you_forget_to_use_await))}}}function aWe(n){if(n.kind===226)return n.right;const a=n.kind===213?n.expression:n.kind===215?n.tag:n.kind===170&&!ne?n.expression:void 0;if(a){const c=$l(a);if(ws(c))return c.expression}}function lB(n,a,c,d){const _=Ih.createSyntheticExpression(a,c,d);return dt(_,n),qa(_,n),_}function ite(n){if(n.kind===215){const d=n.template,_=[lB(d,wct())];return d.kind===228&&Ue(d.templateSpans,y=>{_.push(y.expression)}),_}if(n.kind===170)return Ymt(n);if(n.kind===226)return[n.left];if(ud(n))return n.attributes.properties.length>0||W_(n)&&n.parent.children.length>0?[n.attributes]:et;const a=n.arguments||et,c=tte(a);if(c>=0){const d=a.slice(0,c);for(let _=c;_<a.length;_++){const y=a[_],x=y.kind===230&&(_f?mo(y.expression):nc(y.expression));x&&Ba(x)?Ue(J1(x),(k,z)=>{var H;const re=x.target.elementFlags[z],be=lB(y,re&4?Vu(k):k,!!(re&12),(H=x.target.labeledElementDeclarations)==null?void 0:H[z]);d.push(be)}):d.push(y)}return d}return a}function Ymt(n){const a=n.expression,c=ebe(n);if(c){const d=[];for(const _ of c.parameters){const y=dr(_);d.push(lB(a,y))}return d}return N.fail()}function sWe(n,a){return V.experimentalDecorators?$mt(n,a):2}function $mt(n,a){switch(n.parent.kind){case 263:case 231:return 1;case 172:return P_(n.parent)?3:2;case 174:case 177:case 178:return se===0||a.parameters.length<=2?2:3;case 169:return 3;default:return N.fail()}}function lWe(n){const a=jn(n),{start:c,length:d}=AS(a,Fr(n.expression)?n.expression.name:n.expression);return{start:c,length:d,sourceFile:a}}function cB(n,a,...c){if(la(n)){const{sourceFile:d,start:_,length:y}=lWe(n);return"message"in a?Qc(d,_,y,a,...c):Lj(d,a)}else return"message"in a?wr(n,a,...c):Fg(jn(n),n,a)}function Qmt(n){return I_(n)?Fr(n.expression)?n.expression.name:n.expression:i1(n)?Fr(n.tag)?n.tag.name:n.tag:ud(n)?n.tagName:n}function Zmt(n){if(!la(n)||!Ve(n.expression))return!1;const a=bl(n.expression,n.expression.escapedText,111551,void 0,void 0,!1),c=a==null?void 0:a.valueDeclaration;if(!c||!Ao(c)||!QE(c.parent)||!r1(c.parent.parent)||!Ve(c.parent.parent.expression))return!1;const d=$ge(!1);return d?Hm(c.parent.parent.expression,!0)===d:!1}function cWe(n,a,c,d){var _;const y=tte(c);if(y>-1)return wr(c[y],f.A_spread_argument_must_either_have_a_tuple_type_or_be_passed_to_a_rest_parameter);let x=Number.POSITIVE_INFINITY,k=Number.NEGATIVE_INFINITY,z=Number.NEGATIVE_INFINITY,H=Number.POSITIVE_INFINITY,re;for(const Dt of a){const an=rh(Dt),cn=Yp(Dt);an<x&&(x=an,re=Dt),k=Math.max(k,cn),an<c.length&&an>z&&(z=an),c.length<cn&&cn<H&&(H=cn)}const be=bt(a,Hh),ge=be?x:x<k?x+"-"+k:x,Ke=!be&&ge===1&&c.length===0&&Zmt(n);if(Ke&&lr(n))return cB(n,f.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments);const gt=Eu(n)?be?f.The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_at_least_0:f.The_runtime_will_invoke_the_decorator_with_1_arguments_but_the_decorator_expects_0:be?f.Expected_at_least_0_arguments_but_got_1:Ke?f.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise:f.Expected_0_arguments_but_got_1;if(x<c.length&&c.length<k){if(d){let Dt=jo(void 0,f.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,c.length,z,H);return Dt=jo(Dt,d),cB(n,Dt)}return cB(n,f.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,c.length,z,H)}else if(c.length<x){let Dt;if(d){let cn=jo(void 0,gt,ge,c.length);cn=jo(cn,d),Dt=cB(n,cn)}else Dt=cB(n,gt,ge,c.length);const an=(_=re==null?void 0:re.declaration)==null?void 0:_.parameters[re.thisParameter?c.length+1:c.length];if(an){const cn=ta(an.name)?[f.An_argument_matching_this_binding_pattern_was_not_provided]:Zh(an)?[f.Arguments_for_the_rest_parameter_0_were_not_provided,Sr(Vp(an.name))]:[f.An_argument_for_0_was_not_provided,an.name?Sr(Vp(an.name)):c.length],ar=wr(an,...cn);return wa(Dt,ar)}return Dt}else{const Dt=w.createNodeArray(c.slice(k)),an=Ha(Dt).pos;let cn=Ya(Dt).end;if(cn===an&&cn++,vh(Dt,an,cn),d){let ar=jo(void 0,gt,ge,c.length);return ar=jo(ar,d),ML(jn(n),Dt,ar)}return cR(jn(n),Dt,gt,ge,c.length)}}function e_t(n,a,c,d){const _=c.length;if(a.length===1){const k=a[0],z=Gh(k.typeParameters),H=Me(k.typeParameters);if(d){let re=jo(void 0,f.Expected_0_type_arguments_but_got_1,z<H?z+"-"+H:z,_);return re=jo(re,d),ML(jn(n),c,re)}return cR(jn(n),c,f.Expected_0_type_arguments_but_got_1,z<H?z+"-"+H:z,_)}let y=-1/0,x=1/0;for(const k of a){const z=Gh(k.typeParameters),H=Me(k.typeParameters);z>_?x=Math.min(x,z):H<_&&(y=Math.max(y,H))}if(y!==-1/0&&x!==1/0){if(d){let k=jo(void 0,f.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,_,y,x);return k=jo(k,d),ML(jn(n),c,k)}return cR(jn(n),c,f.No_overload_expects_0_type_arguments_but_overloads_do_exist_that_expect_either_1_or_2_type_arguments,_,y,x)}if(d){let k=jo(void 0,f.Expected_0_type_arguments_but_got_1,y===-1/0?x:y,_);return k=jo(k,d),ML(jn(n),c,k)}return cR(jn(n),c,f.Expected_0_type_arguments_but_got_1,y===-1/0?x:y,_)}function ON(n,a,c,d,_,y){const x=n.kind===215,k=n.kind===170,z=ud(n),H=n.kind===226,re=!U&&!c;let be;!k&&!H&&!IS(n)&&(be=n.typeArguments,(x||z||n.expression.kind!==108)&&Ue(be,Na));const ge=c||[];qmt(a,ge,_),N.assert(ge.length,"Revert #54442 and add a testcase with whatever triggered this");const Ke=ite(n),gt=ge.length===1&&!ge[0].typeParameters;let Dt=!k&&!gt&&bt(Ke,Uf)?4:0,an,cn,ar,On;const ln=!!(d&16)&&n.kind===213&&n.arguments.hasTrailingComma;if(ge.length>1&&(On=Fn(ge,Ph,gt,ln)),On||(On=Fn(ge,qd,gt,ln)),On)return On;if(On=t_t(n,ge,Ke,!!c,d),ei(n).resolvedSignature=On,re)if(!y&&H&&(y=f.The_left_hand_side_of_an_instanceof_expression_must_be_assignable_to_the_first_argument_of_the_right_hand_side_s_Symbol_hasInstance_method),an)if(an.length===1||an.length>3){const er=an[an.length-1];let qn;an.length>3&&(qn=jo(qn,f.The_last_overload_gave_the_following_error),qn=jo(qn,f.No_overload_matches_this_call)),y&&(qn=jo(qn,y));const tr=sB(n,Ke,er,qd,0,!0,()=>qn);if(tr)for(const Ro of tr)er.declaration&&an.length>3&&wa(Ro,wr(er.declaration,f.The_last_overload_is_declared_here)),zn(er,Ro),ts.add(Ro);else N.fail("No error for last overload signature")}else{const er=[];let qn=0,tr=Number.MAX_VALUE,Ro=0,Eo=0;for(const dp of an){const Qn=sB(n,Ke,dp,qd,0,!0,()=>jo(void 0,f.Overload_0_of_1_2_gave_the_following_error,Eo+1,ge.length,Oh(dp)));Qn?(Qn.length<=tr&&(tr=Qn.length,Ro=Eo),qn=Math.max(qn,Qn.length),er.push(Qn)):N.fail("No error for 3 or fewer overload signatures"),Eo++}const Bo=qn>1?er[Ro]:ia(er);N.assert(Bo.length>0,"No errors reported for 3 or fewer overload signatures");let _o=jo(wt(Bo,Tie),f.No_overload_matches_this_call);y&&(_o=jo(_o,y));const Cc=[...Pi(Bo,dp=>dp.relatedInformation)];let Jf;if(Zn(Bo,dp=>dp.start===Bo[0].start&&dp.length===Bo[0].length&&dp.file===Bo[0].file)){const{file:dp,start:wn,length:Qn}=Bo[0];Jf={file:dp,start:wn,length:Qn,code:_o.code,category:_o.category,messageText:_o,relatedInformation:Cc}}else Jf=Fg(jn(n),Qmt(n),_o,Cc);zn(an[0],Jf),ts.add(Jf)}else if(cn)ts.add(cWe(n,[cn],Ke,y));else if(ar)Vye(ar,n.typeArguments,!0,y);else{const er=nr(a,qn=>zye(qn,be));er.length===0?ts.add(e_t(n,a,be,y)):ts.add(cWe(n,er,Ke,y))}return On;function zn(er,qn){var tr,Ro;const Eo=an,Bo=cn,_o=ar,Cc=((Ro=(tr=er.declaration)==null?void 0:tr.symbol)==null?void 0:Ro.declarations)||et,dp=Cc.length>1?An(Cc,wn=>Bs(wn)&&Yf(wn.body)):void 0;if(dp){const wn=fm(dp),Qn=!wn.typeParameters;Fn([wn],qd,Qn)&&wa(qn,wr(dp,f.The_call_would_have_succeeded_against_this_implementation_but_implementation_signatures_of_overloads_are_not_externally_visible))}an=Eo,cn=Bo,ar=_o}function Fn(er,qn,tr,Ro=!1){if(an=void 0,cn=void 0,ar=void 0,tr){const Eo=er[0];if(bt(be)||!nte(n,Ke,Eo,Ro))return;if(sB(n,Ke,Eo,qn,0,!1,void 0)){an=[Eo];return}return Eo}for(let Eo=0;Eo<er.length;Eo++){const Bo=er[Eo];if(!zye(Bo,be)||!nte(n,Ke,Bo,Ro))continue;let _o,Cc;if(Bo.typeParameters){let Jf;if(bt(be)){if(Jf=Vye(Bo,be,!1),!Jf){ar=Bo;continue}}else Cc=q8(Bo.typeParameters,Bo,lr(n)?2:0),Jf=Bye(n,Bo,Ke,Dt|8,Cc),Dt|=Cc.flags&4?8:0;if(_o=C8(Bo,Jf,lr(Bo.declaration),Cc&&Cc.inferredTypeParameters),e6(Bo)&&!nte(n,Ke,_o,Ro)){cn=_o;continue}}else _o=Bo;if(sB(n,Ke,_o,qn,Dt,!1,void 0)){(an||(an=[])).push(_o);continue}if(Dt){if(Dt=0,Cc){const Jf=Bye(n,Bo,Ke,Dt,Cc);if(_o=C8(Bo,Jf,lr(Bo.declaration),Cc.inferredTypeParameters),e6(Bo)&&!nte(n,Ke,_o,Ro)){cn=_o;continue}}if(sB(n,Ke,_o,qn,Dt,!1,void 0)){(an||(an=[])).push(_o);continue}}return er[Eo]=_o,_o}}}function t_t(n,a,c,d,_){return N.assert(a.length>0),Ax(n),d||a.length===1||a.some(y=>!!y.typeParameters)?i_t(n,a,c,_):n_t(a)}function n_t(n){const a=Hi(n,z=>z.thisParameter);let c;a.length&&(c=uWe(a,a.map(pB)));const{min:d,max:_}=$oe(n,r_t),y=[];for(let z=0;z<_;z++){const H=Hi(n,re=>Yu(re)?z<re.parameters.length-1?re.parameters[z]:Ya(re.parameters):z<re.parameters.length?re.parameters[z]:void 0);N.assert(H.length!==0),y.push(uWe(H,Hi(n,re=>nS(re,z))))}const x=Hi(n,z=>Yu(z)?Ya(z.parameters):void 0);let k=128;if(x.length!==0){const z=Vu(ti(Hi(n,j8e),2));y.push(dWe(x,z)),k|=1}return n.some(Xq)&&(k|=2),Ig(n[0].declaration,void 0,c,y,ba(n.map(ps)),void 0,d,k)}function r_t(n){const a=n.parameters.length;return Yu(n)?a-1:a}function uWe(n,a){return dWe(n,ti(a,2))}function dWe(n,a){return tA(Ha(n),a)}function i_t(n,a,c,d){const _=s_t(a,tn===void 0?c.length:tn),y=a[_],{typeParameters:x}=y;if(!x)return y;const k=Q3e(n)?n.typeArguments:void 0,z=k?KZ(y,o_t(k,x,lr(n))):a_t(n,x,y,c,d);return a[_]=z,z}function o_t(n,a,c){const d=n.map(Ix);for(;d.length>a.length;)d.pop();for(;d.length<a.length;)d.push(JT(a[d.length])||Ld(a[d.length])||$ve(c));return d}function a_t(n,a,c,d,_){const y=q8(a,c,lr(n)?2:0),x=Bye(n,c,d,_|4|8,y);return KZ(c,x)}function s_t(n,a){let c=-1,d=-1;for(let _=0;_<n.length;_++){const y=n[_],x=Yp(y);if(Hh(y)||x>=a)return _;x>d&&(d=x,c=_)}return c}function l_t(n,a,c){if(n.expression.kind===108){const z=fye(n.expression);if(Nt(z)){for(const H of n.arguments)mo(H);return Et}if(!Kt(z)){const H=D_(su(n));if(H){const re=zh(z,H.typeArguments,H);return ON(n,re,a,c,0)}}return lA(n)}let d,_=mo(n.expression);if(hS(n)){const z=j8(_,n.expression);d=z===_?0:dC(n)?16:8,_=z}else d=0;if(_=F3e(_,n.expression,Imt),_===vo)return vr;const y=kd(_);if(Kt(y))return th(n);const x=Yo(y,0),k=Yo(y,1).length;if(uB(_,y,x.length,k))return!Kt(_)&&n.typeArguments&&Je(n,f.Untyped_function_calls_may_not_accept_type_arguments),lA(n);if(!x.length){if(k)Je(n,f.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Un(_));else{let z;if(n.arguments.length===1){const H=jn(n).text;Hu(H.charCodeAt(ka(H,n.expression.end,!0)-1))&&(z=wr(n.expression,f.Are_you_missing_a_semicolon))}Uye(n.expression,y,0,z)}return th(n)}return c&8&&!n.typeArguments&&x.some(c_t)?(KWe(n,c),Er):x.some(z=>lr(z.declaration)&&!!KV(z.declaration))?(Je(n,f.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,Un(_)),th(n)):ON(n,x,a,c,d)}function c_t(n){return!!(n.typeParameters&&kbe(ps(n)))}function uB(n,a,c,d){return Nt(n)||Nt(a)&&!!(n.flags&262144)||!c&&!d&&!(a.flags&1048576)&&!(h_(a).flags&131072)&&Ea(n,Wt)}function u_t(n,a,c){if(n.arguments&&se<1){const x=tte(n.arguments);x>=0&&Je(n.arguments[x],f.Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher)}let d=wN(n.expression);if(d===vo)return vr;if(d=kd(d),Kt(d))return th(n);if(Nt(d))return n.typeArguments&&Je(n,f.Untyped_function_calls_may_not_accept_type_arguments),lA(n);const _=Yo(d,1);if(_.length){if(!d_t(n,_[0]))return th(n);if(pWe(_,k=>!!(k.flags&4)))return Je(n,f.Cannot_create_an_instance_of_an_abstract_class),th(n);const x=d.symbol&&Vg(d.symbol);return x&&Zr(x,64)?(Je(n,f.Cannot_create_an_instance_of_an_abstract_class),th(n)):ON(n,_,a,c,0)}const y=Yo(d,0);if(y.length){const x=ON(n,y,a,c,0);return pe||(x.declaration&&!nh(x.declaration)&&ps(x)!==ir&&Je(n,f.Only_a_void_function_can_be_called_with_the_new_keyword),pE(x)===ir&&Je(n,f.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)),x}return Uye(n.expression,d,1),th(n)}function pWe(n,a){return To(n)?bt(n,c=>pWe(c,a)):n.compositeKind===1048576?bt(n.compositeSignatures,a):a(n)}function jye(n,a){const c=Mp(a);if(!Me(c))return!1;const d=c[0];if(d.flags&2097152){const _=d.types,y=A8e(_);let x=0;for(const k of d.types){if(!y[x]&&Wr(k)&3&&(k.symbol===n||jye(n,k)))return!0;x++}return!1}return d.symbol===n?!0:jye(n,d)}function d_t(n,a){if(!a||!a.declaration)return!0;const c=a.declaration,d=jA(c,6);if(!d||c.kind!==176)return!0;const _=Vg(c.parent.symbol),y=el(c.parent.symbol);if(!Pbe(n,_)){const x=su(n);if(x&&d&4){const k=Ix(x);if(jye(c.parent.symbol,k))return!0}return d&2&&Je(n,f.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,Un(y)),d&4&&Je(n,f.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,Un(y)),!1}return!0}function fWe(n,a,c){let d;const _=c===0,y=dA(a),x=y&&Yo(y,c).length>0;if(a.flags&1048576){const z=a.types;let H=!1;for(const re of z)if(Yo(re,c).length!==0){if(H=!0,d)break}else if(d||(d=jo(d,_?f.Type_0_has_no_call_signatures:f.Type_0_has_no_construct_signatures,Un(re)),d=jo(d,_?f.Not_all_constituents_of_type_0_are_callable:f.Not_all_constituents_of_type_0_are_constructable,Un(a))),H)break;H||(d=jo(void 0,_?f.No_constituent_of_type_0_is_callable:f.No_constituent_of_type_0_is_constructable,Un(a))),d||(d=jo(d,_?f.Each_member_of_the_union_type_0_has_signatures_but_none_of_those_signatures_are_compatible_with_each_other:f.Each_member_of_the_union_type_0_has_construct_signatures_but_none_of_those_signatures_are_compatible_with_each_other,Un(a)))}else d=jo(d,_?f.Type_0_has_no_call_signatures:f.Type_0_has_no_construct_signatures,Un(a));let k=_?f.This_expression_is_not_callable:f.This_expression_is_not_constructable;if(la(n.parent)&&n.parent.arguments.length===0){const{resolvedSymbol:z}=ei(n);z&&z.flags&32768&&(k=f.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without)}return{messageChain:jo(d,k),relatedMessage:x?f.Did_you_forget_to_use_await:void 0}}function Uye(n,a,c,d){const{messageChain:_,relatedMessage:y}=fWe(n,a,c),x=Fg(jn(n),n,_);if(y&&wa(x,wr(n,y)),la(n.parent)){const{start:k,length:z}=lWe(n.parent);x.start=k,x.length=z}ts.add(x),mWe(a,c,d?wa(x,d):x)}function mWe(n,a,c){if(!n.symbol)return;const d=Xi(n.symbol).originatingImport;if(d&&!Bp(d)){const _=Yo(dr(Xi(n.symbol).target),a);if(!_||!_.length)return;wa(c,wr(d,f.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}function p_t(n,a,c){const d=mo(n.tag),_=kd(d);if(Kt(_))return th(n);const y=Yo(_,0),x=Yo(_,1).length;if(uB(d,_,y.length,x))return lA(n);if(!y.length){if(_d(n.parent)){const k=wr(n.tag,f.It_is_likely_that_you_are_missing_a_comma_to_separate_these_two_template_expressions_They_form_a_tagged_template_expression_which_cannot_be_invoked);return ts.add(k),th(n)}return Uye(n.tag,_,0),th(n)}return ON(n,y,a,c,0)}function f_t(n){switch(n.parent.kind){case 263:case 231:return f.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 169:return f.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 172:return f.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 174:case 177:case 178:return f.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return N.fail()}}function m_t(n,a,c){const d=mo(n.expression),_=kd(d);if(Kt(_))return th(n);const y=Yo(_,0),x=Yo(_,1).length;if(uB(d,_,y.length,x))return lA(n);if(g_t(n,y)&&!Gd(n.expression)){const z=fc(n.expression,!1);return Je(n,f._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,z),th(n)}const k=f_t(n);if(!y.length){const z=fWe(n.expression,_,0),H=jo(z.messageChain,k),re=Fg(jn(n.expression),n.expression,H);return z.relatedMessage&&wa(re,wr(n.expression,z.relatedMessage)),ts.add(re),mWe(_,0,re),th(n)}return ON(n,y,a,c,0,k)}function ote(n,a){const c=sA(n),d=c&&Cp(c),_=d&&Jd(d,sf.Element,788968),y=_&&At.symbolToEntityName(_,788968,n),x=w.createFunctionTypeNode(void 0,[w.createParameterDeclaration(void 0,void 0,"props",void 0,At.typeToTypeNode(a,n))],y?w.createTypeReferenceNode(y,void 0):w.createKeywordTypeNode(133)),k=Xa(1,"props");return k.links.type=a,Ig(x,void 0,void 0,[k],_?el(_):_t,void 0,1,0)}function __t(n,a,c){if(Tx(n.tagName)){const x=M3e(n),k=ote(n,x);return Ub(FN(n.attributes,Jee(k,n),void 0,0),x,n.tagName,n.attributes),Me(n.typeArguments)&&(Ue(n.typeArguments,Na),ts.add(cR(jn(n),n.typeArguments,f.Expected_0_type_arguments_but_got_1,0,Me(n.typeArguments)))),k}const d=mo(n.tagName),_=kd(d);if(Kt(_))return th(n);const y=C3e(d,n);return uB(d,_,y.length,0)?lA(n):y.length===0?(Je(n.tagName,f.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,fc(n.tagName)),th(n)):ON(n,y,a,c,0)}function h_t(n,a,c){const d=mo(n.right);if(!Nt(d)){const _=ibe(d);if(_){const y=kd(_);if(Kt(y))return th(n);const x=Yo(y,0),k=Yo(y,1);if(uB(_,y,x.length,k.length))return lA(n);if(x.length)return ON(n,x,a,c,0)}else if(!(Dte(d)||jb(d,Wt)))return Je(n.right,f.The_right_hand_side_of_an_instanceof_expression_must_be_either_of_type_any_a_class_function_or_other_type_assignable_to_the_Function_interface_type_or_an_object_type_with_a_Symbol_hasInstance_method),th(n)}return Et}function g_t(n,a){return a.length&&Zn(a,c=>c.minArgumentCount===0&&!Yu(c)&&c.parameters.length<sWe(n,c))}function v_t(n,a,c){switch(n.kind){case 213:return l_t(n,a,c);case 214:return u_t(n,a,c);case 215:return p_t(n,a,c);case 170:return m_t(n,a,c);case 286:case 285:return __t(n,a,c);case 226:return h_t(n,a,c)}N.assertNever(n,"Branch in 'resolveSignature' should be unreachable.")}function WN(n,a,c){const d=ei(n),_=d.resolvedSignature;if(_&&_!==Er&&!a)return _;d.resolvedSignature=Er;let y=v_t(n,a,c||0);return y!==Er&&(d.resolvedSignature!==Er&&(y=d.resolvedSignature),d.resolvedSignature=H_===_f?y:_),y}function nh(n){var a;if(!n||!lr(n))return!1;const c=Ac(n)||Os(n)?n:(wi(n)||hc(n))&&n.initializer&&Os(n.initializer)?n.initializer:void 0;if(c){if(KV(n))return!0;if(hc(Bv(c.parent)))return!1;const d=Ir(c);return!!((a=d==null?void 0:d.members)!=null&&a.size)}return!1}function Hye(n,a){var c,d;if(a){const _=Xi(a);if(!_.inferredClassSymbol||!_.inferredClassSymbol.has(Ta(n))){const y=mh(n)?n:TT(n);return y.exports=y.exports||ua(),y.members=y.members||ua(),y.flags|=a.flags&32,(c=a.exports)!=null&&c.size&&c_(y.exports,a.exports),(d=a.members)!=null&&d.size&&c_(y.members,a.members),(_.inferredClassSymbol||(_.inferredClassSymbol=new Map)).set(Ta(y),y),y}return _.inferredClassSymbol.get(Ta(n))}}function y_t(n){var a;const c=n&&ate(n,!0),d=(a=c==null?void 0:c.exports)==null?void 0:a.get("prototype"),_=(d==null?void 0:d.valueDeclaration)&&b_t(d.valueDeclaration);return _?Ir(_):void 0}function ate(n,a){if(!n.parent)return;let c,d;if(wi(n.parent)&&n.parent.initializer===n){if(!lr(n)&&!(MB(n.parent)&&Bs(n)))return;c=n.parent.name,d=n.parent}else if(mr(n.parent)){const _=n.parent,y=n.parent.operatorToken.kind;if(y===64&&(a||_.right===n))c=_.left,d=c;else if((y===57||y===61)&&(wi(_.parent)&&_.parent.initializer===_?(c=_.parent.name,d=_.parent):mr(_.parent)&&_.parent.operatorToken.kind===64&&(a||_.parent.right===_)&&(c=_.parent.left,d=c),!c||!NS(c)||!gR(c,_.left)))return}else a&&Ac(n)&&(c=n.name,d=n);if(!(!d||!c||!a&&!g0(n,Hy(c))))return gf(d)}function b_t(n){if(!n.parent)return!1;let a=n.parent;for(;a&&a.kind===211;)a=a.parent;if(a&&mr(a)&&Hy(a.left)&&a.operatorToken.kind===64){const c=Hj(a);return Oa(c)&&c}}function E_t(n,a){var c,d,_;PB(n,n.typeArguments);const y=WN(n,void 0,a);if(y===Er)return vo;if(ste(y,n),n.expression.kind===108)return ir;if(n.kind===214){const k=y.declaration;if(k&&k.kind!==176&&k.kind!==180&&k.kind!==185&&!(D0(k)&&((d=(c=SR(k))==null?void 0:c.parent)==null?void 0:d.kind)===176)&&!ER(k)&&!nh(k))return pe&&Je(n,f.new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type),j}if(lr(n)&&vWe(n))return G8e(n.arguments[0]);const x=ps(y);if(x.flags&12288&&_We(n))return gve(Bv(n.parent));if(n.kind===213&&!n.questionDotToken&&n.parent.kind===244&&x.flags&16384&&jf(y)){if(!GC(n.expression))Je(n.expression,f.Assertions_require_the_call_target_to_be_an_identifier_or_qualified_name);else if(!K9(n)){const k=Je(n.expression,f.Assertions_require_every_name_in_the_call_target_to_be_declared_with_an_explicit_type_annotation);J9(n.expression,k)}}if(lr(n)){const k=ate(n,!1);if((_=k==null?void 0:k.exports)!=null&&_.size){const z=Ls(k,k.exports,et,et,et);return z.objectFlags|=4096,ba([x,z])}}return x}function ste(n,a){if(!(n.flags&128)&&n.declaration&&n.declaration.flags&536870912){const c=dB(a),d=hk(o3(a));P2(c,n.declaration,d,Oh(n))}}function dB(n){switch(n=hs(n),n.kind){case 213:case 170:case 214:return dB(n.expression);case 215:return dB(n.tag);case 286:case 285:return dB(n.tagName);case 212:return n.argumentExpression;case 211:return n.name;case 183:const a=n;return xd(a.typeName)?a.typeName.right:a;default:return n}}function _We(n){if(!la(n))return!1;let a=n.expression;if(Fr(a)&&a.name.escapedText==="for"&&(a=a.expression),!Ve(a)||a.escapedText!=="Symbol")return!1;const c=a6e(!1);return c?c===bl(a,"Symbol",111551,void 0,void 0,!1):!1}function S_t(n){if(Wbt(n),n.arguments.length===0)return hB(n,j);const a=n.arguments[0],c=nc(a),d=n.arguments.length>1?nc(n.arguments[1]):void 0;for(let y=2;y<n.arguments.length;++y)nc(n.arguments[y]);if((c.flags&32768||c.flags&65536||!Ea(c,ke))&&Je(a,f.Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0,Un(c)),d){const y=o6e(!0);y!==La&&nd(d,V9(y,32768),n.arguments[1])}const _=vd(n,a);if(_){const y=lp(_,a,!0,!1);if(y)return hB(n,hWe(dr(y),y,_,a)||gWe(dr(y),y,_,a))}return hB(n,j)}function qye(n,a,c){const d=ua(),_=Xa(2097152,"default");return _.parent=a,_.links.nameType=Xd("default"),_.links.aliasTarget=jl(n),d.set("default",_),Ls(c,d,et,et,et)}function hWe(n,a,c,d){if(py(d)&&n&&!Kt(n)){const y=n;if(!y.defaultOnlyType){const x=qye(a,c);y.defaultOnlyType=x}return y.defaultOnlyType}}function gWe(n,a,c,d){var _;if($&&n&&!Kt(n)){const y=n;if(!y.syntheticType){const x=(_=c.declarations)==null?void 0:_.find($i);if(J_(x,c,!1,d)){const z=Xa(2048,"__type"),H=qye(a,c,z);z.links.type=H,y.syntheticType=eB(n)?K1(n,H,z,0,!1):H}else y.syntheticType=n}return y.syntheticType}return n}function vWe(n){if(!Ad(n,!0))return!1;if(!Ve(n.expression))return N.fail();const a=bl(n.expression,n.expression.escapedText,111551,void 0,void 0,!0);if(a===vt)return!0;if(a.flags&2097152)return!1;const c=a.flags&16?262:a.flags&3?260:0;if(c!==0){const d=fl(a,c);return!!d&&!!(d.flags&33554432)}return!1}function T_t(n){cbt(n)||PB(n,n.typeArguments),se<2&&Nc(n,262144);const a=WN(n);return ste(a,n),ps(a)}function A_t(n,a){if(n.kind===216){const c=jn(n);c&&Tc(c.fileName,[".cts",".mts"])&&En(n,f.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Use_an_as_expression_instead)}return yWe(n,a)}function Jye(n){switch(n.kind){case 11:case 15:case 9:case 10:case 112:case 97:case 209:case 210:case 228:return!0;case 217:return Jye(n.expression);case 224:const a=n.operator,c=n.operand;return a===41&&(c.kind===9||c.kind===10)||a===40&&c.kind===9;case 211:case 212:const d=hs(n.expression),_=Gl(d)?Hs(d,111551,!0):void 0;return!!(_&&_.flags&384)}return!1}function yWe(n,a){const{type:c,expression:d}=bWe(n),_=mo(d,a);if(Og(c))return Jye(d)||Je(d,f.A_const_assertions_can_only_be_applied_to_references_to_enum_members_or_string_number_boolean_array_or_object_literals),Ed(_);const y=ei(n);return y.assertionExpressionType=_,Na(c),Ax(n),Ei(c)}function bWe(n){let a,c;switch(n.kind){case 234:case 216:a=n.type,c=n.expression;break;case 217:a=_F(n),c=n.expression;break}return{type:a,expression:c}}function I_t(n){const{type:a}=bWe(n),c=Gd(n)?a:n,d=ei(n);N.assertIsDefined(d.assertionExpressionType);const _=H8(bv(d.assertionExpressionType)),y=Ei(a);Kt(y)||r(()=>{const x=Xp(_);fee(y,x)||r4e(_,y,c,f.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first)})}function x_t(n){const a=mo(n.expression),c=j8(a,n.expression);return Iee(Ev(c),n,c!==a)}function R_t(n){return n.flags&64?x_t(n):Ev(mo(n.expression))}function EWe(n){if(_7e(n),Ue(n.typeArguments,Na),n.kind===233){const c=Bv(n.parent);c.kind===226&&c.operatorToken.kind===104&&jE(n,c.right)&&Je(n,f.The_right_hand_side_of_an_instanceof_expression_must_not_be_an_instantiation_expression)}const a=n.kind===233?mo(n.expression):KE(n.exprName)?$9(n.exprName):mo(n.exprName);return SWe(a,n)}function SWe(n,a){const c=a.typeArguments;if(n===vo||Kt(n)||!bt(c))return n;let d=!1,_;const y=k(n),x=d?_:n;return x&&ts.add(cR(jn(a),c,f.Type_0_has_no_signatures_for_which_the_type_argument_list_is_applicable,Un(x))),y;function k(H){let re=!1,be=!1;const ge=Ke(H);return d||(d=be),re&&!be&&(_??(_=H)),ge;function Ke(gt){if(gt.flags&524288){const Dt=__(gt),an=z(Dt.callSignatures),cn=z(Dt.constructSignatures);if(re||(re=Dt.callSignatures.length!==0||Dt.constructSignatures.length!==0),be||(be=an.length!==0||cn.length!==0),an!==Dt.callSignatures||cn!==Dt.constructSignatures){const ar=Ls(Xa(0,"__instantiationExpression"),Dt.members,an,cn,Dt.indexInfos);return ar.objectFlags|=8388608,ar.node=a,ar}}else if(gt.flags&58982400){const Dt=Gu(gt);if(Dt){const an=Ke(Dt);if(an!==Dt)return an}}else{if(gt.flags&1048576)return pl(gt,k);if(gt.flags&2097152)return ba(eo(gt.types,Ke))}return gt}}function z(H){const re=nr(H,be=>!!be.typeParameters&&zye(be,c));return eo(re,be=>{const ge=Vye(be,c,!0);return ge?C8(be,ge,lr(be.declaration)):be})}}function D_t(n){return Na(n.type),Kye(n.expression,n.type)}function Kye(n,a,c){const d=mo(n,c),_=Ei(a);if(Kt(_))return _;const y=Gn(a.parent,x=>x.kind===238||x.kind===357);return Ub(d,_,y,n,f.Type_0_does_not_satisfy_the_expected_type_1),d}function N_t(n){return Ibt(n),n.keywordToken===105?Xye(n):n.keywordToken===102?C_t(n):N.assertNever(n.keywordToken)}function TWe(n){switch(n.keywordToken){case 102:return i6e();case 105:const a=Xye(n);return Kt(a)?_t:J_t(a);default:N.assertNever(n.keywordToken)}}function Xye(n){const a=Wie(n);if(a)if(a.kind===176){const c=Ir(a.parent);return dr(c)}else{const c=Ir(a);return dr(c)}else return Je(n,f.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target"),_t}function C_t(n){G===100||G===199?jn(n).impliedNodeFormat!==99&&Je(n,f.The_import_meta_meta_property_is_not_allowed_in_files_which_will_build_into_CommonJS_output):G<6&&G!==4&&Je(n,f.The_import_meta_meta_property_is_only_allowed_when_the_module_option_is_es2020_es2022_esnext_system_node16_or_nodenext);const a=jn(n);return N.assert(!!(a.flags&8388608),"Containing file is missing import meta node flag."),n.name.escapedText==="meta"?r6e():_t}function pB(n){const a=n.valueDeclaration;return cp(dr(n),!1,!!a&&(zy(a)||aP(a)))}function Yye(n,a,c="arg"){return n?(N.assert(Ve(n.name)),n.name.escapedText):`${c}_${a}`}function oM(n,a,c){const d=n.parameters.length-(Yu(n)?1:0);if(a<d)return n.parameters[a].escapedName;const _=n.parameters[d]||ft,y=c||dr(_);if(Ba(y)){const x=y.target.labeledElementDeclarations,k=a-d;return Yye(x==null?void 0:x[k],k,_.escapedName)}return _.escapedName}function P_t(n,a){var c;if(((c=n.declaration)==null?void 0:c.kind)===324)return;const d=n.parameters.length-(Yu(n)?1:0);if(a<d){const k=n.parameters[a],z=AWe(k);return z?{parameter:z,parameterName:k.escapedName,isRestParameter:!1}:void 0}const _=n.parameters[d]||ft,y=AWe(_);if(!y)return;const x=dr(_);if(Ba(x)){const k=x.target.labeledElementDeclarations,z=a-d,H=k==null?void 0:k[z],re=!!(H!=null&&H.dotDotDotToken);return H?(N.assert(Ve(H.name)),{parameter:H.name,parameterName:H.name.escapedText,isRestParameter:re}):void 0}if(a===d)return{parameter:y,parameterName:_.escapedName,isRestParameter:!0}}function AWe(n){return n.valueDeclaration&&Ao(n.valueDeclaration)&&Ve(n.valueDeclaration.name)&&n.valueDeclaration.name}function IWe(n){return n.kind===202||Ao(n)&&n.name&&Ve(n.name)}function M_t(n,a){const c=n.parameters.length-(Yu(n)?1:0);if(a<c){const y=n.parameters[a].valueDeclaration;return y&&IWe(y)?y:void 0}const d=n.parameters[c]||ft,_=dr(d);if(Ba(_)){const y=_.target.labeledElementDeclarations,x=a-c;return y&&y[x]}return d.valueDeclaration&&IWe(d.valueDeclaration)?d.valueDeclaration:void 0}function y_(n,a){return nS(n,a)||j}function nS(n,a){const c=n.parameters.length-(Yu(n)?1:0);if(a<c)return pB(n.parameters[a]);if(Yu(n)){const d=dr(n.parameters[c]),_=a-c;if(!Ba(d)||d.target.hasRestElement||_<d.target.fixedLength)return Lp(d,g_(_))}}function fB(n,a,c){const d=Yp(n),_=rh(n),y=Z8(n);if(y&&a>=d-1)return a===d-1?y:Vu(Lp(y,Tt));const x=[],k=[],z=[];for(let H=a;H<d;H++)!y||H<d-1?(x.push(y_(n,H)),k.push(H<_?1:2)):(x.push(y),k.push(8)),z.push(M_t(n,H));return jh(x,k,c,z)}function xWe(n,a){const c=fB(n,a),d=c&&G9(c);return d&&Nt(d)?j:c}function Yp(n){const a=n.parameters.length;if(Yu(n)){const c=dr(n.parameters[a-1]);if(Ba(c))return a+c.target.fixedLength-(c.target.hasRestElement?0:1)}return a}function rh(n,a){const c=a&1,d=a&2;if(d||n.resolvedMinArgumentCount===void 0){let _;if(Yu(n)){const y=dr(n.parameters[n.parameters.length-1]);if(Ba(y)){const x=Gr(y.target.elementFlags,z=>!(z&1)),k=x<0?y.target.fixedLength:x;k>0&&(_=n.parameters.length-1+k)}}if(_===void 0){if(!c&&n.flags&32)return 0;_=n.minArgumentCount}if(d)return _;for(let y=_-1;y>=0;y--){const x=y_(n,y);if(dc(x,Z3e).flags&131072)break;_=y}n.resolvedMinArgumentCount=_}return n.resolvedMinArgumentCount}function Hh(n){if(Yu(n)){const a=dr(n.parameters[n.parameters.length-1]);return!Ba(a)||a.target.hasRestElement}return!1}function Z8(n){if(Yu(n)){const a=dr(n.parameters[n.parameters.length-1]);if(!Ba(a))return Nt(a)?ec:a;if(a.target.hasRestElement)return J2(a,a.target.fixedLength)}}function e6(n){const a=Z8(n);return a&&!qf(a)&&!Nt(a)?a:void 0}function $ye(n){return Qye(n,jr)}function Qye(n,a){return n.parameters.length>0?y_(n,0):a}function RWe(n,a,c){const d=n.parameters.length-(Yu(n)?1:0);for(let _=0;_<d;_++){const y=n.parameters[_].valueDeclaration,x=yu(y);if(x){const k=cp(Ei(x),!1,aP(y)),z=y_(a,_);Sv(c.inferences,k,z)}}}function L_t(n,a){if(a.typeParameters)if(!n.typeParameters)n.typeParameters=a.typeParameters;else return;if(a.thisParameter){const d=n.thisParameter;(!d||d.valueDeclaration&&!d.valueDeclaration.type)&&(d||(n.thisParameter=tA(a.thisParameter,void 0)),mB(n.thisParameter,dr(a.thisParameter)))}const c=n.parameters.length-(Yu(n)?1:0);for(let d=0;d<c;d++){const _=n.parameters[d],y=_.valueDeclaration;if(!yu(y)){let x=nS(a,d);if(x&&y.initializer){let k=aM(y,0);!Ea(k,x)&&Ea(x,k=dte(y,k))&&(x=k)}mB(_,x)}}if(Yu(n)){const d=Ya(n.parameters);if(d.valueDeclaration?!yu(d.valueDeclaration):xl(d)&65536){const _=fB(a,c);mB(d,_)}}}function k_t(n){n.thisParameter&&mB(n.thisParameter);for(const a of n.parameters)mB(a)}function mB(n,a){const c=Xi(n);if(c.type)a&&N.assertEqual(c.type,a,"Parameter symbol already has a cached type which differs from newly assigned type");else{const d=n.valueDeclaration;c.type=cp(a||(d?B(d,!0):dr(n)),!1,!!d&&!d.initializer&&aP(d)),d&&d.name.kind!==80&&(c.type===_n&&(c.type=P(d.name)),DWe(d.name,c.type))}}function DWe(n,a){for(const c of n.elements)if(!jc(c)){const d=Ag(c,a,!1);c.name.kind===80?Xi(Ir(c)).type=d:DWe(c.name,d)}}function w_t(n){return xN(Yct(!0),[n])}function O_t(n,a){return xN($ct(!0),[n,a])}function W_t(n,a){return xN(Qct(!0),[n,a])}function F_t(n,a){return xN(Zct(!0),[n,a])}function z_t(n,a){return xN(eut(!0),[n,a])}function B_t(n,a){return xN(rut(!0),[n,a])}function G_t(n,a,c){const d=`${a?"p":"P"}${c?"s":"S"}${n.id}`;let _=Wa.get(d);if(!_){const y=ua();y.set("name",ET("name",n)),y.set("private",ET("private",a?Bn:en)),y.set("static",ET("static",c?Bn:en)),_=Ls(void 0,y,et,et,et),Wa.set(d,_)}return _}function NWe(n,a,c){const d=mc(n),_=Ji(n.name),y=_?Xd(Sr(n.name)):vy(n.name),x=ql(n)?O_t(a,c):rf(n)?W_t(a,c):bp(n)?F_t(a,c):Wd(n)?z_t(a,c):Jo(n)?B_t(a,c):N.failBadSyntaxKind(n),k=G_t(y,_,d);return ba([x,k])}function V_t(n,a){return xN(tut(!0),[n,a])}function j_t(n,a){return xN(nut(!0),[n,a])}function U_t(n,a){const c=l_("this",n),d=l_("value",a);return fbe(void 0,c,[d],a,void 0,1)}function Zye(n,a,c){const d=l_("target",n),_=l_("context",a),y=ti([c,ir]);return a6(void 0,void 0,[d,_],y)}function H_t(n){const{parent:a}=n,c=ei(a);if(!c.decoratorSignature)switch(c.decoratorSignature=Et,a.kind){case 263:case 231:{const _=dr(Ir(a)),y=w_t(_);c.decoratorSignature=Zye(_,y,_);break}case 174:case 177:case 178:{const d=a;if(!ui(d.parent))break;const _=ql(d)?KT(fm(d)):Ix(d),y=mc(d)?dr(Ir(d.parent)):Vf(Ir(d.parent)),x=rf(d)?lFe(_):bp(d)?cFe(_):_,k=NWe(d,y,_),z=rf(d)?lFe(_):bp(d)?cFe(_):_;c.decoratorSignature=Zye(x,k,z);break}case 172:{const d=a;if(!ui(d.parent))break;const _=Ix(d),y=mc(d)?dr(Ir(d.parent)):Vf(Ir(d.parent)),x=P_(d)?V_t(y,_):Oe,k=NWe(d,y,_),z=P_(d)?j_t(y,_):U_t(y,_);c.decoratorSignature=Zye(x,k,z);break}}return c.decoratorSignature===Et?void 0:c.decoratorSignature}function q_t(n){const{parent:a}=n,c=ei(a);if(!c.decoratorSignature)switch(c.decoratorSignature=Et,a.kind){case 263:case 231:{const _=dr(Ir(a)),y=l_("target",_);c.decoratorSignature=a6(void 0,void 0,[y],ti([_,ir]));break}case 169:{const d=a;if(!Ml(d.parent)&&!(ql(d.parent)||bp(d.parent)&&ui(d.parent.parent))||qE(d.parent)===d)break;const _=qE(d.parent)?d.parent.parameters.indexOf(d)-1:d.parent.parameters.indexOf(d);N.assert(_>=0);const y=Ml(d.parent)?dr(Ir(d.parent.parent)):i7e(d.parent),x=Ml(d.parent)?Oe:o7e(d.parent),k=g_(_),z=l_("target",y),H=l_("propertyKey",x),re=l_("parameterIndex",k);c.decoratorSignature=a6(void 0,void 0,[z,H,re],ir);break}case 174:case 177:case 178:case 172:{const d=a;if(!ui(d.parent))break;const _=i7e(d),y=l_("target",_),x=o7e(d),k=l_("propertyKey",x),z=Jo(d)?ir:d6e(Ix(d));if(se!==0&&(!Jo(a)||P_(a))){const re=d6e(Ix(d)),be=l_("descriptor",re);c.decoratorSignature=a6(void 0,void 0,[y,k,be],ti([z,ir]))}else c.decoratorSignature=a6(void 0,void 0,[y,k],ti([z,ir]));break}}return c.decoratorSignature===Et?void 0:c.decoratorSignature}function ebe(n){return ne?q_t(n):H_t(n)}function _B(n){const a=I9(!0);return a!==ko?(n=Ey(uM(n))||_n,hy(a,[n])):_n}function CWe(n){const a=l6e(!0);return a!==ko?(n=Ey(uM(n))||_n,hy(a,[n])):_n}function hB(n,a){const c=_B(a);return c===_n?(Je(n,Bp(n)?f.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:f.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option),_t):($ge(!0)||Je(n,Bp(n)?f.A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:f.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option),c)}function J_t(n){const a=Xa(0,"NewTargetExpression"),c=Xa(4,"target",8);c.parent=a,c.links.type=n;const d=ua([c]);return a.members=d,Ls(a,d,et,et,et)}function lte(n,a){if(!n.body)return _t;const c=Vc(n),d=(c&2)!==0,_=(c&1)!==0;let y,x,k,z=ir;if(n.body.kind!==241)y=nc(n.body,a&&a&-9),d&&(y=uM(o6(y,!1,n,f.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)));else if(_){const H=OWe(n,a);H?H.length>0&&(y=ti(H,2)):z=jr;const{yieldTypes:re,nextTypes:be}=K_t(n,a);x=bt(re)?ti(re,2):void 0,k=bt(be)?ba(be):void 0}else{const H=OWe(n,a);if(!H)return c&2?hB(n,jr):jr;if(H.length===0){const re=jee(n,void 0),be=re&&(RB(re,c)||ir).flags&32768?Oe:ir;return c&2?hB(n,be):be}y=ti(H,2)}if(y||x||k){if(x&&Nee(n,x,3),y&&Nee(n,y,1),k&&Nee(n,k,2),y&&v_(y)||x&&v_(x)||k&&v_(k)){const H=bye(n),re=H?H===fm(n)?_?void 0:y:Hee(ps(H),n,void 0):void 0;_?(x=Wve(x,re,0,d),y=Wve(y,re,1,d),k=Wve(k,re,2,d)):y=Xdt(y,re,d)}x&&(x=Xp(x)),y&&(y=Xp(y)),k&&(k=Xp(k))}return _?PWe(x||jr,y||z,k||h3e(2,n)||_n,d):d?_B(y||z):y||z}function PWe(n,a,c,d){const _=d?Us:vc,y=_.getGlobalGeneratorType(!1);if(n=_.resolveIterationType(n,void 0)||_n,a=_.resolveIterationType(a,void 0)||_n,c=_.resolveIterationType(c,void 0)||_n,y===ko){const x=_.getGlobalIterableIteratorType(!1),k=x!==ko?TFe(x,_):void 0,z=k?k.returnType:j,H=k?k.nextType:Oe;return Ea(a,z)&&Ea(H,c)?x!==ko?M8(x,[n]):(_.getGlobalIterableIteratorType(!0),La):(_.getGlobalGeneratorType(!0),La)}return M8(y,[n,a,c])}function K_t(n,a){const c=[],d=[],_=(Vc(n)&2)!==0;return xie(n.body,y=>{const x=y.expression?mo(y.expression,a):Lt;Tf(c,MWe(y,x,j,_));let k;if(y.asteriskToken){const z=Ete(x,_?19:17,y.expression);k=z&&z.nextType}else k=Yd(y,void 0);k&&Tf(d,k)}),{yieldTypes:c,nextTypes:d}}function MWe(n,a,c,d){const _=n.expression||n,y=n.asteriskToken?Sy(d?19:17,a,c,_):a;return d?dA(y,_,n.asteriskToken?f.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:f.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):y}function LWe(n,a,c){let d=0;for(let _=0;_<c.length;_++){const y=_<n||_>=a?c[_]:void 0;d|=y!==void 0?$q.get(y)||32768:0}return d}function kWe(n){const a=ei(n);if(a.isExhaustive===void 0){a.isExhaustive=0;const c=X_t(n);a.isExhaustive===0&&(a.isExhaustive=c)}else a.isExhaustive===0&&(a.isExhaustive=!1);return a.isExhaustive}function X_t(n){if(n.expression.kind===221){const d=K4e(n);if(!d)return!1;const _=_v(nc(n.expression.expression)),y=LWe(0,0,d);return _.flags&3?(556800&y)===556800:!Um(_,x=>eM(x,y)===y)}const a=nc(n.expression);if(!V8(a))return!1;const c=wee(n);return!c.length||bt(c,qdt)?!1:jpt(pl(a,Ed),c)}function wWe(n){return n.endFlowNode&&X9(n.endFlowNode)}function OWe(n,a){const c=Vc(n),d=[];let _=wWe(n),y=!1;if(zE(n.body,x=>{let k=x.expression;if(k){if(k=hs(k,!0),c&2&&k.kind===223&&(k=hs(k.expression,!0)),k.kind===213&&k.expression.kind===80&&nc(k.expression).symbol===n.symbol){y=!0;return}let z=nc(k,a&&a&-9);c&2&&(z=uM(o6(z,!1,n,f.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member))),z.flags&131072&&(y=!0),Tf(d,z)}else _=!0}),!(d.length===0&&!_&&(y||Y_t(n))))return Y&&d.length&&_&&!(nh(n)&&d.some(x=>x.symbol===n.symbol))&&Tf(d,Oe),d}function Y_t(n){switch(n.kind){case 218:case 219:return!0;case 174:return n.parent.kind===210;default:return!1}}function tbe(n,a){r(c);return;function c(){const d=Vc(n),_=a&&RB(a,d);if(_&&(Cl(_,16384)||_.flags&32769)||n.kind===173||zl(n.body)||n.body.kind!==241||!wWe(n))return;const y=n.flags&1024,x=nm(n)||n;if(_&&_.flags&131072)Je(x,f.A_function_returning_never_cannot_have_a_reachable_end_point);else if(_&&!y)Je(x,f.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value);else if(_&&Y&&!Ea(Oe,_))Je(x,f.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined);else if(V.noImplicitReturns){if(!_){if(!y)return;const k=ps(fm(n));if(PFe(n,k))return}Je(x,f.Not_all_code_paths_return_a_value)}}}function WWe(n,a){if(N.assert(n.kind!==174||xm(n)),Ax(n),Os(n)&&dM(n,n.name),a&&a&4&&Uf(n)){if(!nm(n)&&!iW(n)){const d=$8(n);if(d&&vE(ps(d))){const _=ei(n);if(_.contextFreeType)return _.contextFreeType;const y=lte(n,a),x=Ig(void 0,void 0,void 0,et,y,void 0,0,64),k=Ls(n.symbol,K,[x],et,et);return k.objectFlags|=262144,_.contextFreeType=k}}return nn}return!Mte(n)&&n.kind===218&&Wbe(n),$_t(n,a),dr(Ir(n))}function $_t(n,a){const c=ei(n);if(!(c.flags&64)){const d=$8(n);if(!(c.flags&64)){c.flags|=64;const _=Xc(Yo(dr(Ir(n)),0));if(!_)return;if(Uf(n))if(d){const y=eS(n);let x;if(a&&a&2){RWe(_,d,y);const k=Z8(d);k&&k.flags&262144&&(x=MN(d,y.nonFixingMapper))}x||(x=y?MN(d,y.mapper):d),L_t(_,x)}else k_t(_);else if(d&&!n.typeParameters&&d.parameters.length>n.parameters.length){const y=eS(n);a&&a&2&&RWe(_,d,y)}if(d&&!IN(n)&&!_.resolvedReturnType){const y=lte(n,a);_.resolvedReturnType||(_.resolvedReturnType=y)}n6(n)}}}function Q_t(n){N.assert(n.kind!==174||xm(n));const a=Vc(n),c=IN(n);if(tbe(n,c),n.body)if(nm(n)||ps(fm(n)),n.body.kind===241)Na(n.body);else{const d=mo(n.body),_=c&&RB(c,a);if(_){const y=rte(n.body);if((a&3)===2){const x=o6(d,!1,y,f.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);Ub(x,_,y,y)}else Ub(d,_,y,y)}}}function cte(n,a,c,d=!1){if(!Ea(a,Ql)){const _=d&&cM(a);return K0(n,!!_&&Ea(_,Ql),c),!1}return!0}function Z_t(n){if(!la(n)||!DS(n))return!1;const a=nc(n.arguments[2]);if(Xe(a,"value")){const _=ya(a,"writable"),y=_&&dr(_);if(!y||y===en||y===bn)return!0;if(_&&_.valueDeclaration&&hc(_.valueDeclaration)){const x=_.valueDeclaration.initializer,k=mo(x);if(k===en||k===bn)return!0}return!1}return!ya(a,"set")}function b_(n){return!!(xl(n)&8||n.flags&4&&Df(n)&8||n.flags&3&&Rye(n)&6||n.flags&98304&&!(n.flags&65536)||n.flags&8||bt(n.declarations,Z_t))}function FWe(n,a,c){var d,_;if(c===0)return!1;if(b_(a)){if(a.flags&4&&ws(n)&&n.expression.kind===110){const y=Gp(n);if(!(y&&(y.kind===176||nh(y))))return!0;if(a.valueDeclaration){const x=mr(a.valueDeclaration),k=y.parent===a.valueDeclaration.parent,z=y===a.valueDeclaration.parent,H=x&&((d=a.parent)==null?void 0:d.valueDeclaration)===y.parent,re=x&&((_=a.parent)==null?void 0:_.valueDeclaration)===y;return!(k||z||H||re)}}return!0}if(ws(n)){const y=hs(n.expression);if(y.kind===80){const x=ei(y).resolvedSymbol;if(x.flags&2097152){const k=Fm(x);return!!k&&k.kind===274}}}return!1}function t6(n,a,c){const d=$l(n,7);return d.kind!==80&&!ws(d)?(Je(n,a),!1):d.flags&64?(Je(n,c),!1):!0}function eht(n){mo(n.expression);const a=hs(n.expression);if(!ws(a))return Je(a,f.The_operand_of_a_delete_operator_must_be_a_property_reference),Ni;Fr(a)&&Ji(a.name)&&Je(a,f.The_operand_of_a_delete_operator_cannot_be_a_private_identifier);const c=ei(a),d=vf(c.resolvedSymbol);return d&&(b_(d)?Je(a,f.The_operand_of_a_delete_operator_cannot_be_a_read_only_property):tht(a,d)),Ni}function tht(n,a){const c=dr(a);Y&&!(c.flags&131075)&&!(De?a.flags&16777216:_m(c,16777216))&&Je(n,f.The_operand_of_a_delete_operator_must_be_optional)}function nht(n){return mo(n.expression),nN}function rht(n){return Ax(n),Lt}function zWe(n){let a=!1;const c=t3(n);if(c&&Rl(c)){const d=eb(n)?f.await_expression_cannot_be_used_inside_a_class_static_block:f.await_using_statements_cannot_be_used_inside_a_class_static_block;Je(n,d),a=!0}else if(!(n.flags&65536))if(r3(n)){const d=jn(n);if(!iS(d)){let _;if(!wA(d,V)){_??(_=gh(d,n.pos));const y=eb(n)?f.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module:f.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module,x=Qc(d,_.start,_.length,y);ts.add(x),a=!0}switch(G){case 100:case 199:if(d.impliedNodeFormat===1){_??(_=gh(d,n.pos)),ts.add(Qc(d,_.start,_.length,f.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level)),a=!0;break}case 7:case 99:case 200:case 4:if(se>=4)break;default:_??(_=gh(d,n.pos));const y=eb(n)?f.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher:f.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher;ts.add(Qc(d,_.start,_.length,y)),a=!0;break}}}else{const d=jn(n);if(!iS(d)){const _=gh(d,n.pos),y=eb(n)?f.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules:f.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules,x=Qc(d,_.start,_.length,y);if(c&&c.kind!==176&&!(Vc(c)&2)){const k=wr(c,f.Did_you_mean_to_mark_this_function_as_async);wa(x,k)}ts.add(x),a=!0}}return eb(n)&&_ye(n)&&(Je(n,f.await_expressions_cannot_be_used_in_a_parameter_initializer),a=!0),a}function iht(n){r(()=>zWe(n));const a=mo(n.expression),c=o6(a,!0,n,f.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);return c===a&&!Kt(c)&&!(a.flags&3)&&s_(!1,wr(n,f.await_has_no_effect_on_the_type_of_this_expression)),c}function oht(n){const a=mo(n.operand);if(a===vo)return vo;switch(n.operand.kind){case 9:switch(n.operator){case 41:return Ex(g_(-n.operand.text));case 40:return Ex(g_(+n.operand.text))}break;case 10:if(n.operator===41)return Ex(see({negative:!0,base10Value:eP(n.operand.text)}))}switch(n.operator){case 40:case 41:case 55:return eh(a,n.operand),gB(a,12288)&&Je(n.operand,f.The_0_operator_cannot_be_applied_to_type_symbol,fa(n.operator)),n.operator===40?(gB(a,2112)&&Je(n.operand,f.Operator_0_cannot_be_applied_to_type_1,fa(n.operator),Un(bv(a))),Tt):nbe(a);case 54:vbe(a,n.operand);const c=eM(a,12582912);return c===4194304?en:c===8388608?Bn:Ni;case 46:case 47:return cte(n.operand,eh(a,n.operand),f.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&t6(n.operand,f.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,f.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),nbe(a)}return _t}function aht(n){const a=mo(n.operand);return a===vo?vo:(cte(n.operand,eh(a,n.operand),f.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type)&&t6(n.operand,f.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access,f.The_operand_of_an_increment_or_decrement_operator_may_not_be_an_optional_property_access),nbe(a))}function nbe(n){return Cl(n,2112)?xu(n,3)||Cl(n,296)?Ql:kt:Tt}function gB(n,a){if(Cl(n,a))return!0;const c=_v(n);return!!c&&Cl(c,a)}function Cl(n,a){if(n.flags&a)return!0;if(n.flags&3145728){const c=n.types;for(const d of c)if(Cl(d,a))return!0}return!1}function xu(n,a,c){return n.flags&a?!0:c&&n.flags&114691?!1:!!(a&296)&&Ea(n,Tt)||!!(a&2112)&&Ea(n,kt)||!!(a&402653316)&&Ea(n,ke)||!!(a&528)&&Ea(n,Ni)||!!(a&16384)&&Ea(n,ir)||!!(a&131072)&&Ea(n,jr)||!!(a&65536)&&Ea(n,me)||!!(a&32768)&&Ea(n,Oe)||!!(a&4096)&&Ea(n,Ai)||!!(a&67108864)&&Ea(n,Kr)}function vB(n,a,c){return n.flags&1048576?Zn(n.types,d=>vB(d,a,c)):xu(n,a,c)}function ute(n){return!!(Wr(n)&16)&&!!n.symbol&&rbe(n.symbol)}function rbe(n){return(n.flags&128)!==0}function ibe(n){const a=IFe("hasInstance"),c=uE(n,a);if(c){const d=dr(c);if(d&&Yo(d,0).length!==0)return d}}function sht(n,a,c,d,_){if(c===vo||d===vo)return vo;!Nt(c)&&vB(c,402784252)&&Je(n,f.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter),N.assert(L3(n.parent));const y=WN(n.parent,void 0,_);if(y===Er)return vo;const x=ps(y);return nd(x,Ni,a,f.An_object_s_Symbol_hasInstance_method_must_return_a_boolean_value_for_it_to_be_used_on_the_right_hand_side_of_an_instanceof_expression),Ni}function lht(n){return Um(n,a=>a===Nl||!!(a.flags&2097152)&&Uh(_v(a)))}function cht(n,a,c,d){if(c===vo||d===vo)return vo;if(Ji(n)){if(se<99&&Nc(n,2097152),!ei(n).resolvedSymbol&&su(n)){const _=Lye(n,d.symbol,!0);H3e(n,d,_)}}else nd(eh(c,n),Dn,n);return nd(eh(d,a),Kr,a)&&lht(d)&&Je(a,f.Type_0_may_represent_a_primitive_value_which_is_not_permitted_as_the_right_operand_of_the_in_operator,Un(d)),Ni}function uht(n,a,c){const d=n.properties;if(Y&&d.length===0)return eh(a,n);for(let _=0;_<d.length;_++)BWe(n,a,_,d,c);return a}function BWe(n,a,c,d,_=!1){const y=n.properties,x=y[c];if(x.kind===303||x.kind===304){const k=x.name,z=vy(k);if(rm(z)){const be=im(z),ge=ya(a,be);ge&&(aB(ge,x,_),Nye(x,!1,!0,a,ge))}const H=Lp(a,z,32,k),re=Yi(x,H);return uA(x.kind===304?x:x.initializer,re)}else if(x.kind===305)if(c<y.length-1)Je(x,f.A_rest_element_must_be_last_in_a_destructuring_pattern);else{se<99&&Nc(x,4);const k=[];if(d)for(const H of d)Xv(H)||k.push(H.name);const z=Wi(a,k,a.symbol);return xx(d,f.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),uA(x.expression,z)}else Je(x,f.Property_assignment_expected)}function dht(n,a,c){const d=n.elements;se<2&&V.downlevelIteration&&Nc(n,512);const _=Sy(193,a,Oe,n)||_t;let y=V.noUncheckedIndexedAccess?void 0:_;for(let x=0;x<d.length;x++){let k=_;n.elements[x].kind===230&&(k=y=y??(Sy(65,a,Oe,n)||_t)),GWe(n,a,x,k,c)}return a}function GWe(n,a,c,d,_){const y=n.elements,x=y[c];if(x.kind!==232){if(x.kind!==230){const k=g_(c);if(by(a)){const z=32|(iM(x)?16:0),H=Bb(a,k,z,lB(x,k))||_t,re=iM(x)?hm(H,524288):H,be=Yi(x,re);return uA(x,be,_)}return uA(x,d,_)}if(c<y.length-1)Je(x,f.A_rest_element_must_be_last_in_a_destructuring_pattern);else{const k=x.expression;if(k.kind===226&&k.operatorToken.kind===64)Je(k.operatorToken,f.A_rest_element_cannot_have_an_initializer);else{xx(n.elements,f.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma);const z=up(a,Ba)?pl(a,H=>J2(H,c)):Vu(d);return uA(k,z,_)}}}}function uA(n,a,c,d){let _;if(n.kind===304){const y=n;y.objectAssignmentInitializer&&(Y&&!_m(mo(y.objectAssignmentInitializer),16777216)&&(a=hm(a,524288)),_ht(y.name,y.equalsToken,y.objectAssignmentInitializer,c)),_=n.name}else _=n;return _.kind===226&&_.operatorToken.kind===64&&(Pe(_,c),_=_.left,Y&&(a=hm(a,524288))),_.kind===210?uht(_,a,d):_.kind===209?dht(_,a,c):pht(_,a,c)}function pht(n,a,c){const d=mo(n,c),_=n.parent.kind===305?f.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:f.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,y=n.parent.kind===305?f.The_target_of_an_object_rest_assignment_may_not_be_an_optional_property_access:f.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access;return t6(n,_,y)&&Ub(a,d,n,n),eR(n)&&Nc(n.parent,1048576),a}function yB(n){switch(n=hs(n),n.kind){case 80:case 11:case 14:case 215:case 228:case 15:case 9:case 10:case 112:case 97:case 106:case 157:case 218:case 231:case 219:case 209:case 210:case 221:case 235:case 285:case 284:return!0;case 227:return yB(n.whenTrue)&&yB(n.whenFalse);case 226:return Vv(n.operatorToken.kind)?!1:yB(n.left)&&yB(n.right);case 224:case 225:switch(n.operator){case 54:case 40:case 41:case 55:return!0}return!1;case 222:case 216:case 234:default:return!1}}function obe(n,a){return(a.flags&98304)!==0||fee(n,a)}function fht(){const n=yF(a,c,d,_,y,x);return(ge,Ke)=>{const gt=n(ge,Ke);return N.assertIsDefined(gt),gt};function a(ge,Ke,gt){return Ke?(Ke.stackIndex++,Ke.skip=!1,H(Ke,void 0),be(Ke,void 0)):Ke={checkMode:gt,skip:!1,stackIndex:0,typeStack:[void 0,void 0]},lr(ge)&&OA(ge)?(Ke.skip=!0,be(Ke,mo(ge.right,gt)),Ke):(mht(ge),ge.operatorToken.kind===64&&(ge.left.kind===210||ge.left.kind===209)&&(Ke.skip=!0,be(Ke,uA(ge.left,mo(ge.right,gt),gt,ge.right.kind===110))),Ke)}function c(ge,Ke,gt){if(!Ke.skip)return k(Ke,ge)}function d(ge,Ke,gt){if(!Ke.skip){const Dt=re(Ke);N.assertIsDefined(Dt),H(Ke,Dt),be(Ke,void 0);const an=ge.kind;if(fk(an)){let cn=gt.parent;for(;cn.kind===217||mk(cn);)cn=cn.parent;(an===56||US(cn))&&gbe(gt.left,Dt,US(cn)?cn.thenStatement:void 0),vbe(Dt,gt.left)}}}function _(ge,Ke,gt){if(!Ke.skip)return k(Ke,ge)}function y(ge,Ke){let gt;if(Ke.skip)gt=re(Ke);else{const Dt=z(Ke);N.assertIsDefined(Dt);const an=re(Ke);N.assertIsDefined(an),gt=VWe(ge.left,ge.operatorToken,ge.right,Dt,an,Ke.checkMode,ge)}return Ke.skip=!1,H(Ke,void 0),be(Ke,void 0),Ke.stackIndex--,gt}function x(ge,Ke,gt){return be(ge,Ke),ge}function k(ge,Ke){if(mr(Ke))return Ke;be(ge,mo(Ke,ge.checkMode))}function z(ge){return ge.typeStack[ge.stackIndex]}function H(ge,Ke){ge.typeStack[ge.stackIndex]=Ke}function re(ge){return ge.typeStack[ge.stackIndex+1]}function be(ge,Ke){ge.typeStack[ge.stackIndex+1]=Ke}}function mht(n){const{left:a,operatorToken:c,right:d}=n;c.kind===61&&(mr(a)&&(a.operatorToken.kind===57||a.operatorToken.kind===56)&&En(a,f._0_and_1_operations_cannot_be_mixed_without_parentheses,fa(a.operatorToken.kind),fa(c.kind)),mr(d)&&(d.operatorToken.kind===57||d.operatorToken.kind===56)&&En(d,f._0_and_1_operations_cannot_be_mixed_without_parentheses,fa(d.operatorToken.kind),fa(c.kind)))}function _ht(n,a,c,d,_){const y=a.kind;if(y===64&&(n.kind===210||n.kind===209))return uA(n,mo(c,d),d,c.kind===110);let x;fk(y)?x=pM(n,d):x=mo(n,d);const k=mo(c,d);return VWe(n,a,c,x,k,d,_)}function VWe(n,a,c,d,_,y,x){const k=a.kind;switch(k){case 42:case 43:case 67:case 68:case 44:case 69:case 45:case 70:case 41:case 66:case 48:case 71:case 49:case 72:case 50:case 73:case 52:case 75:case 53:case 79:case 51:case 74:if(d===vo||_===vo)return vo;d=eh(d,n),_=eh(_,c);let ln;if(d.flags&528&&_.flags&528&&(ln=ge(a.kind))!==void 0)return Je(x||a,f.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,fa(a.kind),fa(ln)),Tt;{const er=cte(n,d,f.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0),qn=cte(c,_,f.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type,!0);let tr;if(xu(d,3)&&xu(_,3)||!(Cl(d,2112)||Cl(_,2112)))tr=Tt;else if(z(d,_)){switch(k){case 50:case 73:an();break;case 43:case 68:se<3&&Je(x,f.Exponentiation_cannot_be_performed_on_bigint_values_unless_the_target_option_is_set_to_es2016_or_later)}tr=kt}else an(z),tr=_t;return er&&qn&&Ke(tr),tr}case 40:case 65:if(d===vo||_===vo)return vo;!xu(d,402653316)&&!xu(_,402653316)&&(d=eh(d,n),_=eh(_,c));let zn;return xu(d,296,!0)&&xu(_,296,!0)?zn=Tt:xu(d,2112,!0)&&xu(_,2112,!0)?zn=kt:xu(d,402653316,!0)||xu(_,402653316,!0)?zn=ke:(Nt(d)||Nt(_))&&(zn=Kt(d)||Kt(_)?_t:j),zn&&!be(k)?zn:zn?(k===65&&Ke(zn),zn):(an((qn,tr)=>xu(qn,402655727)&&xu(tr,402655727)),j);case 30:case 32:case 33:case 34:return be(k)&&(d=wve(eh(d,n)),_=wve(eh(_,c)),Dt((er,qn)=>{if(Nt(er)||Nt(qn))return!0;const tr=Ea(er,Ql),Ro=Ea(qn,Ql);return tr&&Ro||!tr&&!Ro&&k9(er,qn)})),Ni;case 35:case 36:case 37:case 38:if(!(y&&y&64)){if((rj(n)||rj(c))&&(!lr(n)||k===37||k===38)){const er=k===35||k===37;Je(x,f.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value,er?"false":"true")}ar(x,k,n,c),Dt((er,qn)=>obe(er,qn)||obe(qn,er))}return Ni;case 104:return sht(n,c,d,_,y);case 103:return cht(n,c,d,_);case 56:case 77:{const er=_m(d,4194304)?ti([Qdt(Y?d:bv(_)),_]):d;return k===77&&Ke(_),er}case 57:case 76:{const er=_m(d,8388608)?ti([Ev(E4e(d)),_],2):d;return k===76&&Ke(_),er}case 61:case 78:{const er=_m(d,262144)?ti([Ev(d),_],2):d;return k===78&&Ke(_),er}case 64:const Fn=mr(n.parent)?Bl(n.parent):0;return H(Fn,_),gt(Fn)?((!(_.flags&524288)||Fn!==2&&Fn!==6&&!yv(_)&&!nye(_)&&!(Wr(_)&1))&&Ke(_),d):(Ke(_),_);case 28:if(!V.allowUnreachableCode&&yB(n)&&!re(n.parent)){const er=jn(n),qn=er.text,tr=ka(qn,n.pos);er.parseDiagnostics.some(Eo=>Eo.code!==f.JSX_expressions_must_have_one_parent_element.code?!1:HV(Eo,tr))||Je(n,f.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return _;default:return N.fail()}function z(ln,zn){return xu(ln,2112)&&xu(zn,2112)}function H(ln,zn){if(ln===2)for(const Fn of Wb(zn)){const er=dr(Fn);if(er.symbol&&er.symbol.flags&32){const qn=Fn.escapedName,tr=bl(Fn.valueDeclaration,qn,788968,void 0,qn,!1);tr!=null&&tr.declarations&&tr.declarations.some(YS)&&(dm(tr,f.Duplicate_identifier_0,Vi(qn),Fn),dm(Fn,f.Duplicate_identifier_0,Vi(qn),tr))}}}function re(ln){return ln.parent.kind===217&&vp(ln.left)&&ln.left.text==="0"&&(la(ln.parent.parent)&&ln.parent.parent.expression===ln.parent||ln.parent.parent.kind===215)&&(ws(ln.right)||Ve(ln.right)&&ln.right.escapedText==="eval")}function be(ln){const zn=gB(d,12288)?n:gB(_,12288)?c:void 0;return zn?(Je(zn,f.The_0_operator_cannot_be_applied_to_type_symbol,fa(ln)),!1):!0}function ge(ln){switch(ln){case 52:case 75:return 57;case 53:case 79:return 38;case 51:case 74:return 56;default:return}}function Ke(ln){Vv(k)&&r(zn);function zn(){let Fn=d;if(BP(a.kind)&&n.kind===211&&(Fn=Yee(n,void 0,!0)),t6(n,f.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access,f.The_left_hand_side_of_an_assignment_expression_may_not_be_an_optional_property_access)){let er;if(De&&Fr(n)&&Cl(ln,32768)){const qn=Xe(Ru(n.expression),n.name.escapedText);_ee(ln,qn)&&(er=f.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target)}Ub(ln,Fn,n,c,er)}}}function gt(ln){var zn;switch(ln){case 2:return!0;case 1:case 5:case 6:case 3:case 4:const Fn=gf(n),er=OA(c);return!!er&&Oa(er)&&!!((zn=Fn==null?void 0:Fn.exports)!=null&&zn.size);default:return!1}}function Dt(ln){return ln(d,_)?!1:(an(ln),!0)}function an(ln){let zn=!1;const Fn=x||a;if(ln){const Eo=Ey(d),Bo=Ey(_);zn=!(Eo===d&&Bo===_)&&!!(Eo&&Bo)&&ln(Eo,Bo)}let er=d,qn=_;!zn&&ln&&([er,qn]=hht(d,_,ln));const[tr,Ro]=fx(er,qn);cn(Fn,zn,tr,Ro)||K0(Fn,zn,f.Operator_0_cannot_be_applied_to_types_1_and_2,fa(a.kind),tr,Ro)}function cn(ln,zn,Fn,er){switch(a.kind){case 37:case 35:case 38:case 36:return K0(ln,zn,f.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap,Fn,er);default:return}}function ar(ln,zn,Fn,er){const qn=On(hs(Fn)),tr=On(hs(er));if(qn||tr){const Ro=Je(ln,f.This_condition_will_always_return_0,fa(zn===37||zn===35?97:112));if(qn&&tr)return;const Eo=zn===38||zn===36?fa(54):"",Bo=qn?er:Fn,_o=hs(Bo);wa(Ro,wr(Bo,f.Did_you_mean_0,`${Eo}Number.isNaN(${Gl(_o)?_p(_o):"..."})`))}}function On(ln){if(Ve(ln)&&ln.escapedText==="NaN"){const zn=iut();return!!zn&&zn===jm(ln)}return!1}}function hht(n,a,c){let d=n,_=a;const y=bv(n),x=bv(a);return c(y,x)||(d=y,_=x),[d,_]}function ght(n){r(ge);const a=Gp(n);if(!a)return j;const c=Vc(a);if(!(c&1))return j;const d=(c&2)!==0;n.asteriskToken&&(d&&se<99&&Nc(n,26624),!d&&se<2&&V.downlevelIteration&&Nc(n,256));let _=IN(a);_&&_.flags&1048576&&(_=dc(_,Ke=>lbe(Ke,c,void 0)));const y=_&&CFe(_,d),x=y&&y.yieldType||j,k=y&&y.nextType||j,z=d?dA(k)||j:k,H=n.expression?mo(n.expression):Lt,re=MWe(n,H,z,d);if(_&&re&&Ub(re,x,n.expression||n,n.expression),n.asteriskToken)return bbe(d?19:17,1,H,n.expression)||j;if(_)return rS(2,_,d)||j;let be=h3e(2,a);return be||(be=j,r(()=>{if(pe&&!nae(n)){const Ke=Yd(n,void 0);(!Ke||Nt(Ke))&&Je(n,f.yield_expression_implicitly_results_in_an_any_type_because_its_containing_generator_lacks_a_return_type_annotation)}})),be;function ge(){n.flags&16384||hu(n,f.A_yield_expression_is_only_allowed_in_a_generator_body),_ye(n)&&Je(n,f.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}function vht(n,a){const c=pM(n.condition,a);gbe(n.condition,c,n.whenTrue);const d=mo(n.whenTrue,a),_=mo(n.whenFalse,a);return ti([d,_],2)}function jWe(n){const a=n.parent;return Gd(a)&&jWe(a)||Qs(a)&&a.argumentExpression===n}function yht(n){const a=[n.head.text],c=[];for(const _ of n.templateSpans){const y=mo(_.expression);gB(y,12288)&&Je(_.expression,f.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String),a.push(_.literal.text),c.push(Ea(y,Lo)?y:ke)}if(sM(n)||jWe(n)||Um(Yd(n,void 0)||_n,bht))return XT(a,c);const d=n.parent.kind!==215&&HFe(n);return d?Ex(Xd(d)):ke}function bht(n){return!!(n.flags&134217856||n.flags&58982400&&Cl(Gu(n)||_n,402653316))}function Eht(n){return l1(n)&&!JS(n.parent)?n.parent.parent:n}function FN(n,a,c,d){const _=Eht(n);Z9(_,a,!1),Gft(_,c);const y=mo(n,d|1|(c?2:0));c&&c.intraExpressionInferenceSites&&(c.intraExpressionInferenceSites=void 0);const x=Cl(y,2944)&&pte(y,Hee(a,n,void 0))?Ed(y):y;return Vft(),Y8(),x}function nc(n,a){if(a)return mo(n,a);const c=ei(n);if(!c.resolvedType){const d=H_,_=yn;H_=_f,yn=void 0,c.resolvedType=mo(n,a),yn=_,H_=d}return c.resolvedType}function UWe(n){return n=hs(n,!0),n.kind===216||n.kind===234||tD(n)}function aM(n,a,c){const d=jL(n);if(lr(n)){const y=sW(n);if(y)return Kye(d,y,a)}const _=sbe(d)||(c?FN(d,c,void 0,a||0):nc(d,a));return Ao(n)&&n.name.kind===207&&Ba(_)&&!_.target.hasRestElement&&gy(_)<n.name.elements.length?Sht(_,n.name):_}function Sht(n,a){const c=a.elements,d=J1(n).slice(),_=n.target.elementFlags.slice();for(let y=gy(n);y<c.length;y++){const x=c[y];(y<c.length-1||!(x.kind===208&&x.dotDotDotToken))&&(d.push(!jc(x)&&iM(x)?B2(x,!1,!1):j),_.push(2),!jc(x)&&!iM(x)&&gE(x,j))}return jh(d,_,n.target.readonly)}function dte(n,a){const c=aS(n)&6||K4(n)?a:Q1(a);if(lr(n)){if(_4e(c))return gE(n,j),j;if(Eee(c))return gE(n,ec),ec}return c}function pte(n,a){if(a){if(a.flags&3145728){const c=a.types;return bt(c,d=>pte(n,d))}if(a.flags&58982400){const c=Gu(a)||_n;return Cl(c,4)&&Cl(n,128)||Cl(c,8)&&Cl(n,256)||Cl(c,64)&&Cl(n,2048)||Cl(c,4096)&&Cl(n,8192)||pte(n,c)}return!!(a.flags&406847616&&Cl(n,128)||a.flags&256&&Cl(n,256)||a.flags&2048&&Cl(n,2048)||a.flags&512&&Cl(n,512)||a.flags&8192&&Cl(n,8192))}return!1}function sM(n){const a=n.parent;return bS(a)&&Og(a.type)||tD(a)&&Og(_F(a))||Jye(n)&&qT(Yd(n,0))||(Gd(a)||_d(a)||e_(a))&&sM(a)||(hc(a)||rp(a)||bP(a))&&sM(a.parent)}function lM(n,a,c){const d=mo(n,a,c);return sM(n)||Nie(n)?Ed(d):UWe(n)?d:Ove(d,Hee(Yd(n,void 0),n,void 0))}function HWe(n,a){return n.name.kind===167&&Rg(n.name),lM(n.initializer,a)}function qWe(n,a){v7e(n),n.name.kind===167&&Rg(n.name);const c=WWe(n,a);return JWe(n,c,a)}function JWe(n,a,c){if(c&&c&10){const d=Q8(a,0,!0),_=Q8(a,1,!0),y=d||_;if(y&&y.typeParameters){const x=EE(n,2);if(x){const k=Q8(Ev(x),d?0:1,!1);if(k&&!k.typeParameters){if(c&8)return KWe(n,c),nn;const z=eS(n),H=z.signature&&ps(z.signature),re=H&&tWe(H);if(re&&!re.typeParameters&&!Zn(z.inferences,zN)){const be=xht(z,y.typeParameters),ge=Fge(y,be),Ke=wt(z.inferences,gt=>jve(gt.typeParameter));if(zve(ge,k,(gt,Dt)=>{Sv(Ke,gt,Dt,0,!0)}),bt(Ke,zN)&&(Bve(ge,k,(gt,Dt)=>{Sv(Ke,gt,Dt)}),!Aht(z.inferences,Ke)))return Iht(z.inferences,Ke),z.inferredTypeParameters=So(z.inferredTypeParameters,be),KT(ge)}return KT(nWe(y,k,z))}}}}return a}function KWe(n,a){if(a&2){const c=eS(n);c.flags|=4}}function zN(n){return!!(n.candidates||n.contraCandidates)}function Tht(n){return!!(n.candidates||n.contraCandidates||M8e(n.typeParameter))}function Aht(n,a){for(let c=0;c<n.length;c++)if(zN(n[c])&&zN(a[c]))return!0;return!1}function Iht(n,a){for(let c=0;c<n.length;c++)!zN(n[c])&&zN(a[c])&&(n[c]=a[c])}function xht(n,a){const c=[];let d,_;for(const y of a){const x=y.symbol.escapedName;if(abe(n.inferredTypeParameters,x)||abe(c,x)){const k=Rht(So(n.inferredTypeParameters,c),x),z=Xa(262144,k),H=yf(z);H.target=y,d=xn(d,y),_=xn(_,H),c.push(H)}else c.push(y)}if(_){const y=kp(d,_);for(const x of _)x.mapper=y}return c}function abe(n,a){return bt(n,c=>c.symbol.escapedName===a)}function Rht(n,a){let c=a.length;for(;c>1&&a.charCodeAt(c-1)>=48&&a.charCodeAt(c-1)<=57;)c--;const d=a.slice(0,c);for(let _=1;;_++){const y=d+_;if(!abe(n,y))return y}}function XWe(n){const a=cA(n);if(a&&!a.typeParameters)return ps(a)}function Dht(n){const a=mo(n.expression),c=j8(a,n.expression),d=XWe(a);return d&&Iee(d,n,c!==a)}function Ru(n){const a=sbe(n);if(a)return a;if(n.flags&268435456&&yn){const _=yn[as(n)];if(_)return _}const c=Ze,d=mo(n,64);if(Ze!==c){const _=yn||(yn=[]);_[as(n)]=d,tae(n,n.flags|268435456)}return d}function sbe(n){let a=hs(n,!0);if(tD(a)){const c=_F(a);if(!Og(c))return Ei(c)}if(a=hs(n),eb(a)){const c=sbe(a.expression);return c?dA(c):void 0}if(la(a)&&a.expression.kind!==108&&!Ad(a,!0)&&!_We(a))return hS(a)?Dht(a):XWe(wN(a.expression));if(bS(a)&&!Og(a.type))return Ei(a.type);if(kE(n)||hC(n))return mo(n)}function bB(n){const a=ei(n);if(a.contextFreeType)return a.contextFreeType;Z9(n,j,!1);const c=a.contextFreeType=mo(n,4);return Y8(),c}function mo(n,a,c){var d,_;(d=sr)==null||d.push(sr.Phase.Check,"checkExpression",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath});const y=C;C=n,I=0;const x=Pht(n,a,c),k=JWe(n,x,a);return ute(k)&&Nht(n,k),C=y,(_=sr)==null||_.pop(),k}function Nht(n,a){n.parent.kind===211&&n.parent.expression===n||n.parent.kind===212&&n.parent.expression===n||(n.kind===80||n.kind===166)&&xte(n)||n.parent.kind===186&&n.parent.exprName===n||n.parent.kind===281||Je(n,f.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query),om(V)&&(N.assert(!!(a.symbol.flags&128)),a.symbol.valueDeclaration.flags&33554432&&!T0(n)&&Je(n,f.Cannot_access_ambient_const_enums_when_0_is_enabled,$e))}function Cht(n,a){if(Fp(n)){if(qU(n))return Kye(n.expression,JU(n),a);if(tD(n))return yWe(n,a)}return mo(n.expression,a)}function Pht(n,a,c){const d=n.kind;if(i)switch(d){case 231:case 218:case 219:i.throwIfCancellationRequested()}switch(d){case 80:return uft(n,a);case 81:return Dmt(n);case 110:return $9(n);case 108:return fye(n);case 106:return Ge;case 15:case 11:return Kve(n)?Ye:Ex(Xd(n.text));case 9:return Gbe(n),Ex(g_(+n.text));case 10:return Lbt(n),Ex(see({negative:!1,base10Value:eP(n.text)}));case 112:return Bn;case 97:return en;case 228:return yht(n);case 14:return yl;case 209:return A3e(n,a,c);case 210:return amt(n,a);case 211:return Yee(n,a);case 166:return B3e(n,a);case 212:return Umt(n,a);case 213:if(n.expression.kind===102)return S_t(n);case 214:return E_t(n,a);case 215:return T_t(n);case 217:return Cht(n,a);case 231:return vvt(n);case 218:case 219:return WWe(n,a);case 221:return nht(n);case 216:case 234:return A_t(n,a);case 235:return R_t(n);case 233:return EWe(n);case 238:return D_t(n);case 236:return N_t(n);case 220:return eht(n);case 222:return rht(n);case 223:return iht(n);case 224:return oht(n);case 225:return aht(n);case 226:return Pe(n,a);case 227:return vht(n,a);case 230:return emt(n,a);case 232:return Lt;case 229:return ght(n);case 237:return tmt(n);case 294:return Emt(n,a);case 284:return umt(n);case 285:return lmt(n);case 288:return dmt(n);case 292:return fmt(n,a);case 286:N.fail("Shouldn't ever directly check a JsxOpeningElement")}return _t}function YWe(n){Ng(n),n.expression&&hu(n.expression,f.Type_expected),Na(n.constraint),Na(n.default);const a=jT(Ir(n));Gu(a),dct(a)||Je(n.default,f.Type_parameter_0_has_a_circular_default,Un(a));const c=Ld(a),d=JT(a);c&&d&&nd(d,Kp(so(c,Y1(a,d)),d),n.default,f.Type_0_does_not_satisfy_the_constraint_1),Ax(n),r(()=>fM(n.name,f.Type_parameter_name_cannot_be_0))}function Mht(n){var a,c;if(hd(n.parent)||ui(n.parent)||Nm(n.parent)){const d=jT(Ir(n)),_=Pve(d)&24576;if(_){const y=Ir(n.parent);if(Nm(n.parent)&&!(Wr(el(y))&52))Je(n,f.Variance_annotations_are_only_supported_in_type_aliases_for_object_function_constructor_and_mapped_types);else if(_===8192||_===16384){(a=sr)==null||a.push(sr.Phase.CheckTypes,"checkTypeParameterDeferred",{parent:bd(el(y)),id:bd(d)});const x=W9(y,d,_===16384?ee:de),k=W9(y,d,_===16384?de:ee),z=d;O=d,nd(x,k,n,f.Type_0_is_not_assignable_to_type_1_as_implied_by_variance_annotation),O=z,(c=sr)==null||c.pop()}}}}function $We(n){Ng(n),IB(n);const a=Gp(n);Zr(n,31)&&(a.kind===176&&Yf(a.body)||Je(n,f.A_parameter_property_is_only_allowed_in_a_constructor_implementation),a.kind===176&&Ve(n.name)&&n.name.escapedText==="constructor"&&Je(n.name,f.constructor_cannot_be_used_as_a_parameter_property_name)),!n.initializer&&aP(n)&&ta(n.name)&&a.body&&Je(n,f.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature),n.name&&Ve(n.name)&&(n.name.escapedText==="this"||n.name.escapedText==="new")&&(a.parameters.indexOf(n)!==0&&Je(n,f.A_0_parameter_must_be_the_first_parameter,n.name.escapedText),(a.kind===176||a.kind===180||a.kind===185)&&Je(n,f.A_constructor_cannot_have_a_this_parameter),a.kind===219&&Je(n,f.An_arrow_function_cannot_have_a_this_parameter),(a.kind===177||a.kind===178)&&Je(n,f.get_and_set_accessors_cannot_declare_this_parameters)),n.dotDotDotToken&&!ta(n.name)&&!Ea(h_(dr(n.symbol)),ff)&&Je(n,f.A_rest_parameter_must_be_of_an_array_type)}function Lht(n){const a=kht(n);if(!a){Je(n,f.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}const c=fm(a),d=jf(c);if(!d)return;Na(n.type);const{parameterName:_}=n;if(d.kind===0||d.kind===2)lee(_);else if(d.parameterIndex>=0){if(Yu(c)&&d.parameterIndex===c.parameters.length-1)Je(_,f.A_type_predicate_cannot_reference_a_rest_parameter);else if(d.type){const y=()=>jo(void 0,f.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type);nd(d.type,dr(c.parameters[d.parameterIndex]),n.type,void 0,y)}}else if(_){let y=!1;for(const{name:x}of a.parameters)if(ta(x)&&QWe(x,_,d.parameterName)){y=!0;break}y||Je(n.parameterName,f.Cannot_find_parameter_0,d.parameterName)}}function kht(n){switch(n.parent.kind){case 219:case 179:case 262:case 218:case 184:case 174:case 173:const a=n.parent;if(n===a.type)return a}}function QWe(n,a,c){for(const d of n.elements){if(jc(d))continue;const _=d.name;if(_.kind===80&&_.escapedText===c)return Je(a,f.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,c),!0;if((_.kind===207||_.kind===206)&&QWe(_,a,c))return!0}}function n6(n){n.kind===181?sbt(n):(n.kind===184||n.kind===262||n.kind===185||n.kind===179||n.kind===176||n.kind===180)&&Mte(n);const a=Vc(n);a&4||((a&3)===3&&se<99&&Nc(n,6144),(a&3)===2&&se<4&&Nc(n,64),a&3&&se<2&&Nc(n,128)),DB(ky(n)),_vt(n),Ue(n.parameters,$We),n.type&&Na(n.type),r(c);function c(){Mgt(n);let d=nm(n),_=d;if(lr(n)){const y=d0(n);if(y&&y.typeExpression&&Cf(y.typeExpression.type)){const x=cA(Ei(y.typeExpression));x&&x.declaration&&(d=nm(x.declaration),_=y.typeExpression.type)}}if(pe&&!d)switch(n.kind){case 180:Je(n,f.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 179:Je(n,f.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break}if(d&&_){const y=Vc(n);if((y&5)===1){const x=Ei(d);x===ir?Je(_,f.A_generator_cannot_have_a_void_type_annotation):lbe(x,y,_)}else(y&3)===2&&dgt(n,d,_)}n.kind!==181&&n.kind!==324&&Xb(n)}}function lbe(n,a,c){const d=rS(0,n,(a&2)!==0)||j,_=rS(1,n,(a&2)!==0)||d,y=rS(2,n,(a&2)!==0)||_n,x=PWe(d,_,y,!!(a&2));return nd(x,n,c)}function wht(n){const a=new Map,c=new Map,d=new Map;for(const y of n.members)if(y.kind===176)for(const x of y.parameters)mp(x,y)&&!ta(x.name)&&_(a,x.name,x.name.escapedText,3);else{const x=sa(y),k=y.name;if(!k)continue;const z=Ji(k),H=z&&x?16:0,re=z?d:x?c:a,be=k&&Vbe(k);if(be)switch(y.kind){case 177:_(re,k,be,1|H);break;case 178:_(re,k,be,2|H);break;case 172:_(re,k,be,3|H);break;case 174:_(re,k,be,8|H);break}}function _(y,x,k,z){const H=y.get(k);if(H)if((H&16)!==(z&16))Je(x,f.Duplicate_identifier_0_Static_and_instance_elements_cannot_share_the_same_private_name,fc(x));else{const re=!!(H&8),be=!!(z&8);re||be?re!==be&&Je(x,f.Duplicate_identifier_0,fc(x)):H&z&-17?Je(x,f.Duplicate_identifier_0,fc(x)):y.set(k,H|z)}else y.set(k,z)}}function Oht(n){for(const a of n.members){const c=a.name;if(sa(a)&&c){const _=Vbe(c);switch(_){case"name":case"length":case"caller":case"arguments":if(he)break;case"prototype":const y=f.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1,x=iE(Ir(n));Je(c,y,_,x);break}}}}function ZWe(n){const a=new Map;for(const c of n.members)if(c.kind===171){let d;const _=c.name;switch(_.kind){case 11:case 9:d=_.text;break;case 80:d=Sr(_);break;default:continue}a.get(d)?(Je(Mo(c.symbol.valueDeclaration),f.Duplicate_identifier_0,d),Je(c.name,f.Duplicate_identifier_0,d)):a.set(d,!0)}}function cbe(n){if(n.kind===264){const c=Ir(n);if(c.declarations&&c.declarations.length>0&&c.declarations[0]!==n)return}const a=zge(Ir(n));if(a!=null&&a.declarations){const c=new Map;for(const d of a.declarations)d.parameters.length===1&&d.parameters[0].type&&oA(Ei(d.parameters[0].type),_=>{const y=c.get(bd(_));y?y.declarations.push(d):c.set(bd(_),{type:_,declarations:[d]})});c.forEach(d=>{if(d.declarations.length>1)for(const _ of d.declarations)Je(_,f.Duplicate_index_signature_for_type_0,Un(d.type))})}}function eFe(n){!Ng(n)&&!Nbt(n)&&Lte(n.name),IB(n),ube(n),Zr(n,64)&&n.kind===172&&n.initializer&&Je(n,f.Property_0_cannot_have_an_initializer_because_it_is_marked_abstract,Rs(n.name))}function Wht(n){return Ji(n.name)&&Je(n,f.Private_identifiers_are_not_allowed_outside_class_bodies),eFe(n)}function Fht(n){v7e(n)||Lte(n.name),ql(n)&&n.asteriskToken&&Ve(n.name)&&Sr(n.name)==="constructor"&&Je(n.name,f.Class_constructor_may_not_be_a_generator),fFe(n),Zr(n,64)&&n.kind===174&&n.body&&Je(n,f.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,Rs(n.name)),Ji(n.name)&&!su(n)&&Je(n,f.Private_identifiers_are_not_allowed_outside_class_bodies),ube(n)}function ube(n){if(Ji(n.name)&&se<99){for(let a=hh(n);a;a=hh(a))ei(a).flags|=1048576;if(Zc(n.parent)){const a=cye(n.parent);a&&(ei(n.name).flags|=32768,ei(a).flags|=4096)}}}function zht(n){Ng(n),Ho(n,Na)}function Bht(n){n6(n),Rbt(n)||Dbt(n),Na(n.body);const a=Ir(n),c=fl(a,n.kind);if(n===c&&_te(a),zl(n.body))return;r(_);return;function d(y){return cd(y)?!0:y.kind===172&&!sa(y)&&!!y.initializer}function _(){const y=n.parent;if(UE(y)){uye(n.parent,y);const x=dye(y),k=l3e(n.body);if(k){if(x&&Je(k,f.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null),!ye&&(bt(n.parent.members,d)||bt(n.parameters,H=>Zr(H,31))))if(!Ght(k,n.body))Je(k,f.A_super_call_must_be_a_root_level_statement_within_a_constructor_of_a_derived_class_that_contains_initialized_properties_parameter_properties_or_private_identifiers);else{let H;for(const re of n.body.statements){if(eu(re)&&IS($l(re.expression))){H=re;break}if(tFe(re))break}H===void 0&&Je(n,f.A_super_call_must_be_the_first_statement_in_the_constructor_to_refer_to_super_or_this_when_a_derived_class_contains_initialized_properties_parameter_properties_or_private_identifiers)}}else x||Je(n,f.Constructors_for_derived_classes_must_contain_a_super_call)}}}function Ght(n,a){const c=Bv(n.parent);return eu(c)&&c.parent===a}function tFe(n){return n.kind===108||n.kind===110?!0:Oie(n)?!1:!!Ho(n,tFe)}function nFe(n){Ve(n.name)&&Sr(n.name)==="constructor"&&ui(n.parent)&&Je(n.name,f.Class_constructor_may_not_be_an_accessor),r(a),Na(n.body),ube(n);function a(){if(!Mte(n)&&!hbt(n)&&Lte(n.name),SB(n),n6(n),n.kind===177&&!(n.flags&33554432)&&Yf(n.body)&&n.flags&512&&(n.flags&1024||Je(n.name,f.A_get_accessor_must_return_a_value)),n.name.kind===167&&Rg(n.name),TN(n)){const d=Ir(n),_=fl(d,177),y=fl(d,178);if(_&&y&&!(VN(_)&1)){ei(_).flags|=1;const x=pd(_),k=pd(y);(x&64)!==(k&64)&&(Je(_.name,f.Accessors_must_both_be_abstract_or_non_abstract),Je(y.name,f.Accessors_must_both_be_abstract_or_non_abstract)),(x&4&&!(k&6)||x&2&&!(k&2))&&(Je(_.name,f.A_get_accessor_must_be_at_least_as_accessible_as_the_setter),Je(y.name,f.A_get_accessor_must_be_at_least_as_accessible_as_the_setter))}}const c=lE(Ir(n));n.kind===177&&tbe(n,c)}}function Vht(n){SB(n)}function jht(n,a,c){return n.typeArguments&&c<n.typeArguments.length?Ei(n.typeArguments[c]):fte(n,a)[c]}function fte(n,a){return Fb(wt(n.typeArguments,Ei),a,Gh(a),lr(n))}function rFe(n,a){let c,d,_=!0;for(let y=0;y<a.length;y++){const x=Ld(a[y]);x&&(c||(c=fte(n,a),d=kp(a,c)),_=_&&nd(c[y],so(x,d),n.typeArguments[y],f.Type_0_does_not_satisfy_the_constraint_1))}return _}function Uht(n,a){if(!Kt(n))return a.flags&524288&&Xi(a).typeParameters||(Wr(n)&4?n.target.localTypeParameters:void 0)}function dbe(n){const a=Ei(n);if(!Kt(a)){const c=ei(n).resolvedSymbol;if(c)return Uht(a,c)}}function pbe(n){if(PB(n,n.typeArguments),n.kind===183&&!lr(n)&&!GL(n)&&n.typeArguments&&n.typeName.end!==n.typeArguments.pos){const a=jn(n);Iie(a,n.typeName.end)===25&&oS(n,ka(a.text,n.typeName.end),1,f.JSDoc_types_can_only_be_used_inside_documentation_comments)}Ue(n.typeArguments,Na),iFe(n)}function iFe(n){const a=Ei(n);if(!Kt(a)){n.typeArguments&&r(()=>{const d=dbe(n);d&&rFe(n,d)});const c=ei(n).resolvedSymbol;c&&bt(c.declarations,d=>BR(d)&&!!(d.flags&536870912))&&uy(dB(n),c.declarations,c.escapedName)}}function Hht(n){const a=ii(n.parent,O4);if(!a)return;const c=dbe(a);if(!c)return;const d=Ld(c[a.typeArguments.indexOf(n)]);return d&&so(d,kp(c,fte(a,c)))}function qht(n){t6e(n)}function Jht(n){Ue(n.members,Na),r(a);function a(){const c=V6e(n);Ste(c,c.symbol),cbe(n),ZWe(n)}}function Kht(n){Na(n.elementType)}function Xht(n){let a=!1,c=!1;for(const d of n.elements){let _=eve(d);if(_&8){const y=Ei(d.type);if(!by(y)){Je(d,f.A_rest_element_type_must_be_an_array_type);break}(qf(y)||Ba(y)&&y.target.combinedFlags&4)&&(_|=4)}if(_&4){if(c){En(d,f.A_rest_element_cannot_follow_another_rest_element);break}c=!0}else if(_&2){if(c){En(d,f.An_optional_element_cannot_follow_a_rest_element);break}a=!0}else if(_&1&&a){En(d,f.A_required_element_cannot_follow_an_optional_element);break}}Ue(n.elements,Na),Ei(n)}function Yht(n){Ue(n.types,Na),Ei(n)}function oFe(n,a){if(!(n.flags&8388608))return n;const c=n.objectType,d=n.indexType,_=Kd(c)&&HZ(c)===2?x6e(c,0):Q_(c,0),y=!!xg(c,Tt);if(up(d,x=>Ea(x,_)||y&&hx(x,Tt)))return a.kind===212&&ig(a)&&Wr(c)&32&&Bh(c)&1&&Je(a,f.Index_signature_in_type_0_only_permits_reading,Un(c)),n;if($T(c)){const x=ree(d,a);if(x){const k=oA(kd(c),z=>ya(z,x));if(k&&Df(k)&6)return Je(a,f.Private_or_protected_member_0_cannot_be_accessed_on_a_type_parameter,Vi(x)),_t}}return Je(a,f.Type_0_cannot_be_used_to_index_type_1,Un(d),Un(c)),_t}function $ht(n){Na(n.objectType),Na(n.indexType),oFe(O6e(n),n)}function Qht(n){Zht(n),Na(n.typeParameter),Na(n.nameType),Na(n.type),n.type||gE(n,j);const a=pve(n),c=_y(a);if(c)nd(c,Fs,n.nameType);else{const d=Ef(a);nd(d,Fs,Zx(n.typeParameter))}}function Zht(n){var a;if((a=n.members)!=null&&a.length)return En(n.members[0],f.A_mapped_type_may_not_declare_properties_or_methods)}function egt(n){lee(n)}function tgt(n){vbt(n),Na(n.type)}function ngt(n){Ho(n,Na)}function rgt(n){Gn(n,c=>c.parent&&c.parent.kind===194&&c.parent.extendsType===c)||En(n,f.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type),Na(n.typeParameter);const a=Ir(n.typeParameter);if(a.declarations&&a.declarations.length>1){const c=Xi(a);if(!c.typeParametersChecked){c.typeParametersChecked=!0;const d=jT(a),_=iie(a,168);if(!kFe(_,[d],y=>[y])){const y=bi(a);for(const x of _)Je(x.name,f.All_declarations_of_0_must_have_identical_constraints,y)}}}Xb(n)}function igt(n){for(const a of n.templateSpans){Na(a.type);const c=Ei(a.type);nd(c,Lo,a.type)}Ei(n)}function ogt(n){Na(n.argument),n.attributes&&hD(n.attributes,En),iFe(n)}function agt(n){n.dotDotDotToken&&n.questionToken&&En(n,f.A_tuple_member_cannot_be_both_optional_and_rest),n.type.kind===190&&En(n.type,f.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type),n.type.kind===191&&En(n.type,f.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type),Na(n.type),Ei(n)}function EB(n){return(gp(n,2)||cd(n))&&!!(n.flags&33554432)}function mte(n,a){let c=kte(n);if(n.parent.kind!==264&&n.parent.kind!==263&&n.parent.kind!==231&&n.flags&33554432){const d=Mj(n);d&&d.flags&128&&!(c&128)&&!(O_(n.parent)&&Xl(n.parent.parent)&&R_(n.parent.parent))&&(c|=32),c|=128}return c&a}function _te(n){r(()=>sgt(n))}function sgt(n){function a(ln,zn){return zn!==void 0&&zn.parent===ln[0].parent?zn:ln[0]}function c(ln,zn,Fn,er,qn){if((er^qn)!==0){const Ro=mte(a(ln,zn),Fn);Ue(ln,Eo=>{const Bo=mte(Eo,Fn)^Ro;Bo&32?Je(Mo(Eo),f.Overload_signatures_must_all_be_exported_or_non_exported):Bo&128?Je(Mo(Eo),f.Overload_signatures_must_all_be_ambient_or_non_ambient):Bo&6?Je(Mo(Eo)||Eo,f.Overload_signatures_must_all_be_public_private_or_protected):Bo&64&&Je(Mo(Eo),f.Overload_signatures_must_all_be_abstract_or_non_abstract)})}}function d(ln,zn,Fn,er){if(Fn!==er){const qn=FA(a(ln,zn));Ue(ln,tr=>{FA(tr)!==qn&&Je(Mo(tr),f.Overload_signatures_must_all_be_optional_or_required)})}}const _=230;let y=0,x=_,k=!1,z=!0,H=!1,re,be,ge;const Ke=n.declarations,gt=(n.flags&16384)!==0;function Dt(ln){if(ln.name&&zl(ln.name))return;let zn=!1;const Fn=Ho(ln.parent,qn=>{if(zn)return qn;zn=qn===ln});if(Fn&&Fn.pos===ln.end&&Fn.kind===ln.kind){const qn=Fn.name||Fn,tr=Fn.name;if(ln.name&&tr&&(Ji(ln.name)&&Ji(tr)&&ln.name.escapedText===tr.escapedText||Za(ln.name)&&Za(tr)&&vv(Rg(ln.name),Rg(tr))||N_(ln.name)&&N_(tr)&&LC(ln.name)===LC(tr))){if((ln.kind===174||ln.kind===173)&&sa(ln)!==sa(Fn)){const Eo=sa(ln)?f.Function_overload_must_be_static:f.Function_overload_must_not_be_static;Je(qn,Eo)}return}if(Yf(Fn.body)){Je(qn,f.Function_implementation_name_must_be_0,Rs(ln.name));return}}const er=ln.name||ln;gt?Je(er,f.Constructor_implementation_is_missing):Zr(ln,64)?Je(er,f.All_declarations_of_an_abstract_method_must_be_consecutive):Je(er,f.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}let an=!1,cn=!1,ar=!1;const On=[];if(Ke)for(const ln of Ke){const zn=ln,Fn=zn.flags&33554432,er=zn.parent&&(zn.parent.kind===264||zn.parent.kind===187)||Fn;if(er&&(ge=void 0),(zn.kind===263||zn.kind===231)&&!Fn&&(ar=!0),zn.kind===262||zn.kind===174||zn.kind===173||zn.kind===176){On.push(zn);const qn=mte(zn,_);y|=qn,x&=qn,k=k||FA(zn),z=z&&FA(zn);const tr=Yf(zn.body);tr&&re?gt?cn=!0:an=!0:(ge==null?void 0:ge.parent)===zn.parent&&ge.end!==zn.pos&&Dt(ge),tr?re||(re=zn):H=!0,ge=zn,er||(be=zn)}lr(ln)&&ea(ln)&&ln.jsDoc&&(H=Me(Xj(ln))>0)}if(cn&&Ue(On,ln=>{Je(ln,f.Multiple_constructor_implementations_are_not_allowed)}),an&&Ue(On,ln=>{Je(Mo(ln)||ln,f.Duplicate_function_implementation)}),ar&&!gt&&n.flags&16&&Ke){const ln=nr(Ke,zn=>zn.kind===263).map(zn=>wr(zn,f.Consider_adding_a_declare_modifier_to_this_class));Ue(Ke,zn=>{const Fn=zn.kind===263?f.Class_declaration_cannot_implement_overload_list_for_0:zn.kind===262?f.Function_with_bodies_can_only_merge_with_classes_that_are_ambient:void 0;Fn&&wa(Je(Mo(zn)||zn,Fn,Sl(n)),...ln)})}if(be&&!be.body&&!Zr(be,64)&&!be.questionToken&&Dt(be),H&&(Ke&&(c(Ke,re,_,y,x),d(Ke,re,k,z)),re)){const ln=H1(n),zn=fm(re);for(const Fn of ln)if(!Rdt(zn,Fn)){const er=Fn.declaration&&D0(Fn.declaration)?Fn.declaration.parent.tagName:Fn.declaration;wa(Je(er,f.This_overload_signature_is_not_compatible_with_its_implementation_signature),wr(re,f.The_implementation_signature_is_declared_here));break}}}function r6(n){r(()=>lgt(n))}function lgt(n){let a=n.localSymbol;if(!a&&(a=Ir(n),!a.exportSymbol)||fl(a,n.kind)!==n)return;let c=0,d=0,_=0;for(const H of a.declarations){const re=z(H),be=mte(H,2080);be&32?be&2048?_|=re:c|=re:d|=re}const y=c|d,x=c&d,k=_&y;if(x||k)for(const H of a.declarations){const re=z(H),be=Mo(H);re&k?Je(be,f.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,Rs(be)):re&x&&Je(be,f.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,Rs(be))}function z(H){let re=H;switch(re.kind){case 264:case 265:case 353:case 345:case 347:return 2;case 267:return ku(re)||Kg(re)!==0?5:4;case 263:case 266:case 306:return 3;case 312:return 7;case 277:case 226:const be=re,ge=kl(be)?be.expression:be.right;if(!Gl(ge))return 1;re=ge;case 271:case 274:case 273:let Ke=0;const gt=Fc(Ir(re));return Ue(gt.declarations,Dt=>{Ke|=z(Dt)}),Ke;case 260:case 208:case 262:case 276:case 80:return 1;case 173:case 171:return 2;default:return N.failBadSyntaxKind(re)}}}function cM(n,a,c,...d){const _=i6(n,a);return _&&dA(_,a,c,...d)}function i6(n,a,c){if(Nt(n))return;const d=n;if(d.promisedTypeOfPromise)return d.promisedTypeOfPromise;if(wb(n,I9(!1)))return d.promisedTypeOfPromise=Js(n)[0];if(vB(_v(n),402915324))return;const _=Xe(n,"then");if(Nt(_))return;const y=_?Yo(_,0):et;if(y.length===0){a&&Je(a,f.A_promise_must_have_a_then_method);return}let x,k;for(const re of y){const be=pE(re);be&&be!==ir&&!Z_(n,be,Ph)?x=be:k=xn(k,re)}if(!k){N.assertIsDefined(x),c&&(c.value=x),a&&Je(a,f.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Un(n),Un(x));return}const z=hm(ti(wt(k,$ye)),2097152);if(Nt(z))return;const H=Yo(z,0);if(H.length===0){a&&Je(a,f.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback);return}return d.promisedTypeOfPromise=ti(wt(H,$ye),2)}function o6(n,a,c,d,..._){return(a?dA(n,c,d,..._):Ey(n,c,d,..._))||_t}function aFe(n){if(vB(_v(n),402915324))return!1;const a=Xe(n,"then");return!!a&&Yo(hm(a,2097152),0).length>0}function hte(n){var a;if(n.flags&16777216){const c=Zge(!1);return!!c&&n.aliasSymbol===c&&((a=n.aliasTypeArguments)==null?void 0:a.length)===1}return!1}function uM(n){return n.flags&1048576?pl(n,uM):hte(n)?n.aliasTypeArguments[0]:n}function sFe(n){if(Nt(n)||hte(n))return!1;if($T(n)){const a=Gu(n);if(a?a.flags&3||yv(a)||Um(a,aFe):Cl(n,8650752))return!0}return!1}function cgt(n){const a=Zge(!0);if(a)return RN(a,[uM(n)])}function ugt(n){if(sFe(n)){const a=cgt(n);if(a)return a}return N.assert(hte(n)||i6(n)===void 0,"type provided should not be a non-generic 'promise'-like."),n}function dA(n,a,c,...d){const _=Ey(n,a,c,...d);return _&&ugt(_)}function Ey(n,a,c,...d){if(Nt(n)||hte(n))return n;const _=n;if(_.awaitedTypeOfType)return _.awaitedTypeOfType;if(n.flags&1048576){if(H0.lastIndexOf(n.id)>=0){a&&Je(a,f.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}const k=a?H=>Ey(H,a,c,...d):Ey;H0.push(n.id);const z=pl(n,k);return H0.pop(),_.awaitedTypeOfType=z}if(sFe(n))return _.awaitedTypeOfType=n;const y={value:void 0},x=i6(n,void 0,y);if(x){if(n.id===x.id||H0.lastIndexOf(x.id)>=0){a&&Je(a,f.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method);return}H0.push(n.id);const k=Ey(x,a,c,...d);return H0.pop(),k?_.awaitedTypeOfType=k:void 0}if(aFe(n)){if(a){N.assertIsDefined(c);let k;y.value&&(k=jo(k,f.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1,Un(n),Un(y.value))),k=jo(k,c,...d),ts.add(Fg(jn(a),a,k))}return}return _.awaitedTypeOfType=n}function dgt(n,a,c){const d=Ei(a);if(se>=2){if(Kt(d))return;const y=I9(!0);if(y!==ko&&!wb(d,y)){_(f.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0,a,c,Un(Ey(d)||ir));return}}else{if(fgt(a),Kt(d))return;const y=zL(a);if(y===void 0){_(f.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,a,c,Un(d));return}const x=Hs(y,111551,!0),k=x?dr(x):_t;if(Kt(k)){y.kind===80&&y.escapedText==="Promise"&&my(d)===I9(!1)?Je(c,f.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option):_(f.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,a,c,_p(y));return}const z=Wct(!0);if(z===La){_(f.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,a,c,_p(y));return}const H=f.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value;if(!nd(k,z,c,H,()=>a===c?void 0:jo(void 0,f.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type)))return;const be=y&&Vp(y),ge=Jd(n.locals,be.escapedText,111551);if(ge){Je(ge.valueDeclaration,f.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,Sr(be),_p(y));return}}o6(d,!1,n,f.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);function _(y,x,k,z){if(x===k)Je(k,y,z);else{const H=Je(k,f.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);wa(H,wr(x,y,z))}}}function pgt(n){const a=WN(n);ste(a,n);const c=ps(a);if(c.flags&1)return;const d=ebe(n);if(!(d!=null&&d.resolvedReturnType))return;let _;const y=d.resolvedReturnType;switch(n.parent.kind){case 263:case 231:_=f.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;case 172:if(!ne){_=f.Decorator_function_return_type_0_is_not_assignable_to_type_1;break}case 169:_=f.Decorator_function_return_type_is_0_but_is_expected_to_be_void_or_any;break;case 174:case 177:case 178:_=f.Decorator_function_return_type_0_is_not_assignable_to_type_1;break;default:return N.failBadSyntaxKind(n.parent)}nd(c,y,n.expression,_)}function a6(n,a,c,d,_,y=c.length,x=0){const k=w.createFunctionTypeNode(void 0,et,w.createKeywordTypeNode(133));return Ig(k,n,a,c,d,_,y,x)}function fbe(n,a,c,d,_,y,x){const k=a6(n,a,c,d,_,y,x);return KT(k)}function lFe(n){return fbe(void 0,void 0,et,n)}function cFe(n){const a=l_("value",n);return fbe(void 0,void 0,[a],ir)}function fgt(n){uFe(n&&zL(n),!1)}function uFe(n,a){if(!n)return;const c=Vp(n),d=(n.kind===80?788968:1920)|2097152,_=bl(c,c.escapedText,d,void 0,void 0,!0);if(_&&_.flags&2097152){if(It&&Gm(_)&&!u6(Fc(_))&&!Ff(_))Tb(_);else if(a&&om(V)&&wu(V)>=5&&!Gm(_)&&!bt(_.declarations,m0)){const y=Je(n,f.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled),x=An(_.declarations||et,yb);x&&wa(y,wr(x,f._0_was_imported_here,Sr(c)))}}}function BN(n){const a=mbe(n);a&&Zd(a)&&uFe(a,!0)}function mbe(n){if(n)switch(n.kind){case 193:case 192:return dFe(n.types);case 194:return dFe([n.trueType,n.falseType]);case 196:case 202:return mbe(n.type);case 183:return n.typeName}}function dFe(n){let a;for(let c of n){for(;c.kind===196||c.kind===202;)c=c.type;if(c.kind===146||!Y&&(c.kind===201&&c.literal.kind===106||c.kind===157))continue;const d=mbe(c);if(!d)return;if(a){if(!Ve(a)||!Ve(d)||a.escapedText!==d.escapedText)return}else a=d}return a}function gte(n){const a=yu(n);return Zh(n)?Oj(a):a}function SB(n){if(!QS(n)||!If(n)||!n.modifiers||!a3(ne,n,n.parent,n.parent.parent))return;const a=An(n.modifiers,Eu);if(a){if(ne?(Nc(a,8),n.kind===169&&Nc(a,32)):se<99&&(Nc(a,8),Ic(n)?n.name?wFe(n)&&Nc(a,8388608):Nc(a,8388608):Zc(n)||(Ji(n.name)&&(ql(n)||Oy(n)||Wd(n))&&Nc(a,8388608),Za(n.name)&&Nc(a,16777216))),V.emitDecoratorMetadata)switch(Nc(a,16),n.kind){case 263:const c=ag(n);if(c)for(const x of c.parameters)BN(gte(x));break;case 177:case 178:const d=n.kind===177?178:177,_=fl(Ir(n),d);BN(Vm(n)||_&&Vm(_));break;case 174:for(const x of n.parameters)BN(gte(x));BN(nm(n));break;case 172:BN(yu(n));break;case 169:BN(gte(n));const y=n.parent;for(const x of y.parameters)BN(gte(x));BN(nm(y));break}for(const c of n.modifiers)Eu(c)&&pgt(c)}}function mgt(n){r(a);function a(){fFe(n),Wbe(n),dM(n,n.name)}}function _gt(n){n.typeExpression||Je(n.name,f.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags),n.name&&fM(n.name,f.Type_alias_name_cannot_be_0),Na(n.typeExpression),DB(ky(n))}function hgt(n){Na(n.constraint);for(const a of n.typeParameters)Na(a)}function ggt(n){Na(n.typeExpression)}function vgt(n){Na(n.typeExpression);const a=y0(n);if(a){const c=S4(a,pF);if(Me(c)>1)for(let d=1;d<Me(c);d++){const _=c[d].tagName;Je(_,f._0_tag_already_specified,Sr(_))}}}function ygt(n){n.name&&CB(n.name,!0)}function bgt(n){Na(n.typeExpression)}function Egt(n){Na(n.typeExpression)}function Sgt(n){r(a),n6(n);function a(){!n.type&&!ER(n)&&gE(n,j)}}function Tgt(n){const a=y0(n);a&&Gs(a)&&Je(n.tagName,f.An_arrow_function_cannot_have_a_this_parameter)}function Agt(n){const a=y0(n);(!a||!Ic(a)&&!Zc(a))&&Je(a,f.JSDoc_0_is_not_attached_to_a_class,Sr(n.tagName))}function Igt(n){const a=y0(n);if(!a||!Ic(a)&&!Zc(a)){Je(a,f.JSDoc_0_is_not_attached_to_a_class,Sr(n.tagName));return}const c=f0(a).filter(vI);N.assert(c.length>0),c.length>1&&Je(c[1],f.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag);const d=pFe(n.class.expression),_=UE(a);if(_){const y=pFe(_.expression);y&&d.escapedText!==y.escapedText&&Je(d,f.JSDoc_0_1_does_not_match_the_extends_2_clause,Sr(n.tagName),Sr(d),Sr(y))}}function xgt(n){const a=CS(n);a&&cd(a)&&Je(n,f.An_accessibility_modifier_cannot_be_used_with_a_private_identifier)}function pFe(n){switch(n.kind){case 80:return n;case 211:return n.name;default:return}}function fFe(n){var a;SB(n),n6(n);const c=Vc(n);if(n.name&&n.name.kind===167&&Rg(n.name),TN(n)){const y=Ir(n),x=n.localSymbol||y,k=(a=x.declarations)==null?void 0:a.find(z=>z.kind===n.kind&&!(z.flags&524288));n===k&&_te(x),y.parent&&_te(y)}const d=n.kind===173?void 0:n.body;if(Na(d),tbe(n,IN(n)),r(_),lr(n)){const y=d0(n);y&&y.typeExpression&&!yye(Ei(y.typeExpression),n)&&Je(y.typeExpression.type,f.The_type_of_a_function_declaration_must_match_the_function_s_signature)}function _(){nm(n)||(zl(d)&&!EB(n)&&gE(n,j),c&1&&Yf(d)&&ps(fm(n)))}}function Xb(n){r(a);function a(){const c=jn(n);let d=mf.get(c.path);d||(d=[],mf.set(c.path,d)),d.push(n)}}function mFe(n,a){for(const c of n)switch(c.kind){case 263:case 231:Rgt(c,a),_be(c,a);break;case 312:case 267:case 241:case 269:case 248:case 249:case 250:gFe(c,a);break;case 176:case 218:case 262:case 219:case 174:case 177:case 178:c.body&&gFe(c,a),_be(c,a);break;case 173:case 179:case 180:case 184:case 185:case 265:case 264:_be(c,a);break;case 195:Dgt(c,a);break;default:N.assertNever(c,"Node should not have been registered for unused identifiers check")}}function _Fe(n,a,c){const d=Mo(n)||n,_=BR(n)?f._0_is_declared_but_never_used:f._0_is_declared_but_its_value_is_never_read;c(n,0,wr(d,_,a))}function s6(n){return Ve(n)&&Sr(n).charCodeAt(0)===95}function Rgt(n,a){for(const c of n.members)switch(c.kind){case 174:case 172:case 177:case 178:if(c.kind===178&&c.symbol.flags&32768)break;const d=Ir(c);!d.isReferenced&&(gp(c,2)||ld(c)&&Ji(c.name))&&!(c.flags&33554432)&&a(c,0,wr(c.name,f._0_is_declared_but_its_value_is_never_read,bi(d)));break;case 176:for(const _ of c.parameters)!_.symbol.isReferenced&&Zr(_,2)&&a(_,0,wr(_.name,f.Property_0_is_declared_but_its_value_is_never_read,Sl(_.symbol)));break;case 181:case 240:case 175:break;default:N.fail("Unexpected class member")}}function Dgt(n,a){const{typeParameter:c}=n;hbe(c)&&a(n,1,wr(n,f._0_is_declared_but_its_value_is_never_read,Sr(c.name)))}function _be(n,a){const c=Ir(n).declarations;if(!c||Ya(c)!==n)return;const d=ky(n),_=new Set;for(const y of d){if(!hbe(y))continue;const x=Sr(y.name),{parent:k}=y;if(k.kind!==195&&k.typeParameters.every(hbe)){if(Rv(_,k)){const z=jn(k),H=sm(k)?GU(k):VU(z,k.typeParameters),be=k.typeParameters.length===1?[f._0_is_declared_but_its_value_is_never_read,x]:[f.All_type_parameters_are_unused];a(y,1,Qc(z,H.pos,H.end-H.pos,...be))}}else a(y,1,wr(y,f._0_is_declared_but_its_value_is_never_read,x))}}function hbe(n){return!(rs(n.symbol).isReferenced&262144)&&!s6(n.name)}function TB(n,a,c,d){const _=String(d(a)),y=n.get(_);y?y[1].push(c):n.set(_,[a,[c]])}function hFe(n){return ii(C_(n),Ao)}function Ngt(n){return Qa(n)?am(n.parent)?!!(n.propertyName&&s6(n.name)):s6(n.name):ku(n)||(wi(n)&&nR(n.parent.parent)||vFe(n))&&s6(n.name)}function gFe(n,a){const c=new Map,d=new Map,_=new Map;n.locals.forEach(y=>{if(!(y.flags&262144?!(y.flags&3&&!(y.isReferenced&3)):y.isReferenced||y.exportSymbol)&&y.declarations){for(const x of y.declarations)if(!Ngt(x))if(vFe(x))TB(c,Pgt(x),x,as);else if(Qa(x)&&am(x.parent)){const k=Ya(x.parent.elements);(x===k||!Ya(x.parent.elements).dotDotDotToken)&&TB(d,x.parent,x,as)}else if(wi(x)){const k=aS(x)&7,z=Mo(x);(k!==4&&k!==6||!z||!s6(z))&&TB(_,x.parent,x,as)}else{const k=y.valueDeclaration&&hFe(y.valueDeclaration),z=y.valueDeclaration&&Mo(y.valueDeclaration);k&&z?!mp(k,k.parent)&&!JE(k)&&!s6(z)&&(Qa(x)&&n1(x.parent)?TB(d,x.parent,x,as):a(k,1,wr(z,f._0_is_declared_but_its_value_is_never_read,Sl(y)))):_Fe(x,Sl(y),a)}}}),c.forEach(([y,x])=>{const k=y.parent;if((y.name?1:0)+(y.namedBindings?y.namedBindings.kind===274?1:y.namedBindings.elements.length:0)===x.length)a(k,0,x.length===1?wr(k,f._0_is_declared_but_its_value_is_never_read,Sr(Ha(x).name)):wr(k,f.All_imports_in_import_declaration_are_unused));else for(const H of x)_Fe(H,Sr(H.name),a)}),d.forEach(([y,x])=>{const k=hFe(y.parent)?1:0;if(y.elements.length===x.length)x.length===1&&y.parent.kind===260&&y.parent.parent.kind===261?TB(_,y.parent.parent,y.parent,as):a(y,k,x.length===1?wr(y,f._0_is_declared_but_its_value_is_never_read,AB(Ha(x).name)):wr(y,f.All_destructured_elements_are_unused));else for(const z of x)a(z,k,wr(z,f._0_is_declared_but_its_value_is_never_read,AB(z.name)))}),_.forEach(([y,x])=>{if(y.declarations.length===x.length)a(y,0,x.length===1?wr(Ha(x).name,f._0_is_declared_but_its_value_is_never_read,AB(Ha(x).name)):wr(y.parent.kind===243?y.parent:y,f.All_variables_are_unused));else for(const k of x)a(k,0,wr(k,f._0_is_declared_but_its_value_is_never_read,AB(k.name)))})}function Cgt(){var n;for(const a of hg)if(!((n=Ir(a))!=null&&n.isReferenced)){const c=$x(a);N.assert(HE(c),"Only parameter declaration should be checked here");const d=wr(a.name,f._0_is_an_unused_renaming_of_1_Did_you_intend_to_use_it_as_a_type_annotation,Rs(a.name),Rs(a.propertyName));c.type||wa(d,Qc(jn(c),c.end,1,f.We_can_only_write_a_type_for_0_by_adding_a_type_for_the_entire_parameter_here,Rs(a.propertyName))),ts.add(d)}}function AB(n){switch(n.kind){case 80:return Sr(n);case 207:case 206:return AB(aa(Ha(n.elements),Qa).name);default:return N.assertNever(n)}}function vFe(n){return n.kind===273||n.kind===276||n.kind===274}function Pgt(n){return n.kind===273?n:n.kind===274?n.parent:n.parent.parent}function vte(n){if(n.kind===241&&Tv(n),aj(n)){const a=ze;Ue(n.statements,Na),ze=a}else Ue(n.statements,Na);n.locals&&Xb(n)}function Mgt(n){se>=2||!mj(n)||n.flags&33554432||zl(n.body)||Ue(n.parameters,a=>{a.name&&!ta(a.name)&&a.name.escapedText===Gt.escapedName&&a_("noEmit",a,f.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)})}function l6(n,a,c){if((a==null?void 0:a.escapedText)!==c||n.kind===172||n.kind===171||n.kind===174||n.kind===173||n.kind===177||n.kind===178||n.kind===303||n.flags&33554432||(Sh(n)||tu(n)||np(n))&&m0(n))return!1;const d=C_(n);return!(Ao(d)&&zl(d.parent.body))}function Lgt(n){Gn(n,a=>VN(a)&4?(n.kind!==80?Je(Mo(n),f.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference):Je(n,f.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference),!0):!1)}function kgt(n){Gn(n,a=>VN(a)&8?(n.kind!==80?Je(Mo(n),f.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference):Je(n,f.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference),!0):!1)}function wgt(n,a){if(G>=5&&!(G>=100&&jn(n).impliedNodeFormat===1)||!a||!l6(n,a,"require")&&!l6(n,a,"exports")||Xl(n)&&Kg(n)!==1)return;const c=Q(n);c.kind===312&&zp(c)&&a_("noEmit",a,f.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,Rs(a),Rs(a))}function Ogt(n,a){if(!a||se>=4||!l6(n,a,"Promise")||Xl(n)&&Kg(n)!==1)return;const c=Q(n);c.kind===312&&zp(c)&&c.flags&4096&&a_("noEmit",a,f.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,Rs(a),Rs(a))}function Wgt(n,a){se<=8&&(l6(n,a,"WeakMap")||l6(n,a,"WeakSet"))&&fb.push(n)}function Fgt(n){const a=hh(n);VN(a)&1048576&&(N.assert(ld(n)&&Ve(n.name)&&typeof n.name.escapedText=="string","The target of a WeakMap/WeakSet collision check should be an identifier"),a_("noEmit",n,f.Compiler_reserves_name_0_when_emitting_private_identifier_downlevel,n.name.escapedText))}function zgt(n,a){a&&se>=2&&se<=8&&l6(n,a,"Reflect")&&mb.push(n)}function Bgt(n){let a=!1;if(Zc(n)){for(const c of n.members)if(VN(c)&2097152){a=!0;break}}else if(Os(n))VN(n)&2097152&&(a=!0);else{const c=hh(n);c&&VN(c)&2097152&&(a=!0)}a&&(N.assert(ld(n)&&Ve(n.name),"The target of a Reflect collision check should be an identifier"),a_("noEmit",n,f.Duplicate_identifier_0_Compiler_reserves_name_1_when_emitting_super_references_in_static_initializers,Rs(n.name),"Reflect"))}function dM(n,a){a&&(wgt(n,a),Ogt(n,a),Wgt(n,a),zgt(n,a),ui(n)?(fM(a,f.Class_name_cannot_be_0),n.flags&33554432||mvt(a)):x0(n)&&fM(a,f.Enum_name_cannot_be_0))}function Ggt(n){if(aS(n)&7||HE(n))return;const a=Ir(n);if(a.flags&1){if(!Ve(n.name))return N.fail();const c=bl(n,n.name.escapedText,3,void 0,void 0,!1);if(c&&c!==a&&c.flags&2&&Rye(c)&7){const d=b0(c.valueDeclaration,261),_=d.parent.kind===243&&d.parent.parent?d.parent.parent:void 0;if(!(_&&(_.kind===241&&ea(_.parent)||_.kind===268||_.kind===267||_.kind===312))){const x=bi(c);Je(n,f.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,x,x)}}}}function c6(n){return n===ot?j:n===Jc?ec:n}function IB(n){var a;if(SB(n),Qa(n)||Na(n.type),!n.name)return;if(n.name.kind===167&&(Rg(n.name),ES(n)&&n.initializer&&nc(n.initializer)),Qa(n)){if(n.propertyName&&Ve(n.name)&&HE(n)&&zl(Gp(n).body)){hg.push(n);return}am(n.parent)&&n.dotDotDotToken&&se<5&&Nc(n,4),n.propertyName&&n.propertyName.kind===167&&Rg(n.propertyName);const _=n.parent.parent,y=n.dotDotDotToken?32:0,x=zr(_,y),k=n.propertyName||n.name;if(x&&!ta(k)){const z=vy(k);if(rm(z)){const H=im(z),re=ya(x,H);re&&(aB(re,void 0,!1),Nye(n,!!_.initializer&&_.initializer.kind===108,!1,x,re))}}}if(ta(n.name)&&(n.name.kind===207&&se<2&&V.downlevelIteration&&Nc(n,512),Ue(n.name.elements,Na)),n.initializer&&HE(n)&&zl(Gp(n).body)){Je(n,f.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);return}if(ta(n.name)){if(Zve(n))return;const _=ES(n)&&n.initializer&&n.parent.parent.kind!==249,y=!bt(n.name.elements,G6(jc));if(_||y){const x=B(n);if(_){const k=nc(n.initializer);Y&&y?z3e(k,n):Ub(k,B(n),n,n.initializer)}y&&(n1(n.name)?Sy(65,x,Oe,n):Y&&z3e(x,n))}return}const c=Ir(n);if(c.flags&2097152&&(GE(n)||Bie(n))){Tte(n);return}const d=c6(dr(c));if(n===c.valueDeclaration){const _=ES(n)&&jL(n);if(_&&!(lr(n)&&Oa(_)&&(_.properties.length===0||Hy(n.name))&&!!((a=c.exports)!=null&&a.size))&&n.parent.parent.kind!==249){const x=nc(_);Ub(x,d,n,_,void 0);const k=aS(n)&7;if(k===6){const z=qct(!0),H=c6e(!0);if(z!==La&&H!==La){const re=ti([z,H,me,Oe]);nd(x,re,_,f.The_initializer_of_an_await_using_declaration_must_be_either_an_object_with_a_Symbol_asyncDispose_or_Symbol_dispose_method_or_be_null_or_undefined)}}else if(k===4){const z=c6e(!0);if(z!==La){const H=ti([z,me,Oe]);nd(x,H,_,f.The_initializer_of_a_using_declaration_must_be_either_an_object_with_a_Symbol_dispose_method_or_be_null_or_undefined)}}}c.declarations&&c.declarations.length>1&&bt(c.declarations,y=>y!==n&&pR(y)&&!bFe(y,n))&&Je(n.name,f.All_declarations_of_0_must_have_identical_modifiers,Rs(n.name))}else{const _=c6(B(n));!Kt(d)&&!Kt(_)&&!vv(d,_)&&!(c.flags&67108864)&&yFe(c.valueDeclaration,d,n,_),ES(n)&&n.initializer&&Ub(nc(n.initializer),_,n,n.initializer,void 0),c.valueDeclaration&&!bFe(n,c.valueDeclaration)&&Je(n.name,f.All_declarations_of_0_must_have_identical_modifiers,Rs(n.name))}n.kind!==172&&n.kind!==171&&(r6(n),(n.kind===260||n.kind===208)&&Ggt(n),dM(n,n.name))}function yFe(n,a,c,d){const _=Mo(c),y=c.kind===172||c.kind===171?f.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:f.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2,x=Rs(_),k=Je(_,y,x,Un(a),Un(d));n&&wa(k,wr(n,f._0_was_also_declared_here,x))}function bFe(n,a){if(n.kind===169&&a.kind===260||n.kind===260&&a.kind===169)return!0;if(FA(n)!==FA(a))return!1;const c=1358;return jA(n,c)===jA(a,c)}function Vgt(n){var a,c;(a=sr)==null||a.push(sr.Phase.Check,"checkVariableDeclaration",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath}),Tbt(n),IB(n),(c=sr)==null||c.pop()}function jgt(n){return bbt(n),IB(n)}function yte(n){const a=Ov(n)&7;(a===4||a===6)&&Nc(n,33554432),Ue(n.declarations,Na)}function Ugt(n){!Ng(n)&&!Bbe(n.declarationList)&&Abt(n),yte(n.declarationList)}function Hgt(n){Tv(n),mo(n.expression)}function qgt(n){Tv(n);const a=pM(n.expression);gbe(n.expression,a,n.thenStatement),Na(n.thenStatement),n.thenStatement.kind===242&&Je(n.thenStatement,f.The_body_of_an_if_statement_cannot_be_the_empty_statement),Na(n.elseStatement)}function gbe(n,a,c){if(!Y)return;d(n,c);function d(y,x){for(y=hs(y),_(y,x);mr(y)&&(y.operatorToken.kind===57||y.operatorToken.kind===61);)y=hs(y.left),_(y,x)}function _(y,x){const k=mk(y)?hs(y.right):y;if(rg(k))return;if(mk(k)){d(k,x);return}const z=k===y?a:pM(k),H=Fr(k)&&UWe(k.expression);if(!_m(z,4194304)||H)return;const re=Yo(z,0),be=!!cM(z);if(re.length===0&&!be)return;const ge=Ve(k)?k:Fr(k)?k.name:void 0,Ke=ge&&Hm(ge);if(!Ke&&!be)return;Ke&&mr(y.parent)&&Kgt(y.parent,Ke)||Ke&&x&&Jgt(y,x,ge,Ke)||(be?K0(k,!0,f.This_condition_will_always_return_true_since_this_0_is_always_defined,Rb(z)):Je(k,f.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead))}}function Jgt(n,a,c,d){return!!Ho(a,function _(y){if(Ve(y)){const x=Hm(y);if(x&&x===d){if(Ve(n)||Ve(c)&&mr(c.parent))return!0;let k=c.parent,z=y.parent;for(;k&&z;){if(Ve(k)&&Ve(z)||k.kind===110&&z.kind===110)return Hm(k)===Hm(z);if(Fr(k)&&Fr(z)){if(Hm(k.name)!==Hm(z.name))return!1;z=z.expression,k=k.expression}else if(la(k)&&la(z))z=z.expression,k=k.expression;else return!1}}}return Ho(y,_)})}function Kgt(n,a){for(;mr(n)&&n.operatorToken.kind===56;){if(Ho(n.right,function d(_){if(Ve(_)){const y=Hm(_);if(y&&y===a)return!0}return Ho(_,d)}))return!0;n=n.parent}return!1}function Xgt(n){Tv(n),Na(n.statement),pM(n.expression)}function Ygt(n){Tv(n),pM(n.expression),Na(n.statement)}function vbe(n,a){return n.flags&16384&&Je(a,f.An_expression_of_type_void_cannot_be_tested_for_truthiness),n}function pM(n,a){return vbe(mo(n,a),n)}function $gt(n){Tv(n)||n.initializer&&n.initializer.kind===261&&Bbe(n.initializer),n.initializer&&(n.initializer.kind===261?yte(n.initializer):mo(n.initializer)),n.condition&&pM(n.condition),n.incrementor&&mo(n.incrementor),Na(n.statement),n.locals&&Xb(n)}function Qgt(n){g7e(n);const a=t3(n);if(n.awaitModifier?a&&Rl(a)?En(n.awaitModifier,f.for_await_loops_cannot_be_used_inside_a_class_static_block):(Vc(a)&6)===2&&se<99&&Nc(n,16384):V.downlevelIteration&&se<2&&Nc(n,256),n.initializer.kind===261)yte(n.initializer);else{const c=n.initializer,d=xB(n);if(c.kind===209||c.kind===210)uA(c,d||_t);else{const _=mo(c);t6(c,f.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access,f.The_left_hand_side_of_a_for_of_statement_may_not_be_an_optional_property_access),d&&Ub(d,_,c,n.expression)}}Na(n.statement),n.locals&&Xb(n)}function Zgt(n){g7e(n);const a=Cye(mo(n.expression));if(n.initializer.kind===261){const c=n.initializer.declarations[0];c&&ta(c.name)&&Je(c.name,f.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern),yte(n.initializer)}else{const c=n.initializer,d=mo(c);c.kind===209||c.kind===210?Je(c,f.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern):Ea(Lut(a),d)?t6(c,f.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access,f.The_left_hand_side_of_a_for_in_statement_may_not_be_an_optional_property_access):Je(c,f.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}(a===jr||!xu(a,126091264))&&Je(n.expression,f.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,Un(a)),Na(n.statement),n.locals&&Xb(n)}function xB(n){const a=n.awaitModifier?15:13;return Sy(a,wN(n.expression),Oe,n.expression)}function Sy(n,a,c,d){return Nt(a)?a:ybe(n,a,c,d,!0)||j}function ybe(n,a,c,d,_){const y=(n&2)!==0;if(a===jr){Abe(d,a,y);return}const x=se>=2,k=!x&&V.downlevelIteration,z=V.noUncheckedIndexedAccess&&!!(n&128);if(x||k||y){const gt=Ete(a,n,x?d:void 0);if(_&&gt){const Dt=n&8?f.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_for_of_will_always_send_0:n&32?f.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_spread_will_always_send_0:n&64?f.Cannot_iterate_value_because_the_next_method_of_its_iterator_expects_type_1_but_array_destructuring_will_always_send_0:n&16?f.Cannot_delegate_iteration_to_value_because_the_next_method_of_its_iterator_expects_type_1_but_the_containing_generator_will_always_send_0:void 0;Dt&&nd(c,gt.nextType,d,Dt)}if(gt||x)return z?K8(gt&&gt.yieldType):gt&&gt.yieldType}let H=a,re=!1,be=!1;if(n&4){if(H.flags&1048576){const gt=a.types,Dt=nr(gt,an=>!(an.flags&402653316));Dt!==gt&&(H=ti(Dt,2))}else H.flags&402653316&&(H=jr);if(be=H!==a,be&&(se<1&&d&&(Je(d,f.Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher),re=!0),H.flags&131072))return z?K8(ke):ke}if(!by(H)){if(d&&!re){const gt=!!(n&4)&&!be,[Dt,an]=Ke(gt,k);K0(d,an&&!!cM(H),Dt,Un(H))}return be?z?K8(ke):ke:void 0}const ge=dE(H,Tt);if(be&&ge)return ge.flags&402653316&&!V.noUncheckedIndexedAccess?ke:ti(z?[ge,ke,Oe]:[ge,ke],2);return n&128?K8(ge):ge;function Ke(gt,Dt){var an;return Dt?gt?[f.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:[f.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator,!0]:bbe(n,0,a,void 0)?[f.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!1]:evt((an=a.symbol)==null?void 0:an.escapedName)?[f.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher,!0]:gt?[f.Type_0_is_not_an_array_type_or_a_string_type,!0]:[f.Type_0_is_not_an_array_type,!0]}}function evt(n){switch(n){case"Float32Array":case"Float64Array":case"Int16Array":case"Int32Array":case"Int8Array":case"NodeList":case"Uint16Array":case"Uint32Array":case"Uint8Array":case"Uint8ClampedArray":return!0}return!1}function bbe(n,a,c,d){if(Nt(c))return;const _=Ete(c,n,d);return _&&_[Lxe(a)]}function Ty(n=jr,a=jr,c=_n){if(n.flags&67359327&&a.flags&180227&&c.flags&180227){const d=mm([n,a,c]);let _=xi.get(d);return _||(_={yieldType:n,returnType:a,nextType:c},xi.set(d,_)),_}return{yieldType:n,returnType:a,nextType:c}}function EFe(n){let a,c,d;for(const _ of n)if(!(_===void 0||_===Lr)){if(_===$o)return $o;a=xn(a,_.yieldType),c=xn(c,_.returnType),d=xn(d,_.nextType)}return a||c||d?Ty(a&&ti(a),c&&ti(c),d&&ba(d)):Lr}function bte(n,a){return n[a]}function Dg(n,a,c){return n[a]=c}function Ete(n,a,c){var d,_;if(Nt(n))return $o;if(!(n.flags&1048576)){const H=c?{errors:void 0}:void 0,re=SFe(n,a,c,H);if(re===Lr){if(c){const be=Abe(c,n,!!(a&2));H!=null&&H.errors&&wa(be,...H.errors)}return}else if((d=H==null?void 0:H.errors)!=null&&d.length)for(const be of H.errors)ts.add(be);return re}const y=a&2?"iterationTypesOfAsyncIterable":"iterationTypesOfIterable",x=bte(n,y);if(x)return x===Lr?void 0:x;let k;for(const H of n.types){const re=c?{errors:void 0}:void 0,be=SFe(H,a,c,re);if(be===Lr){if(c){const ge=Abe(c,n,!!(a&2));re!=null&&re.errors&&wa(ge,...re.errors)}Dg(n,y,Lr);return}else if((_=re==null?void 0:re.errors)!=null&&_.length)for(const ge of re.errors)ts.add(ge);k=xn(k,be)}const z=k?EFe(k):Lr;return Dg(n,y,z),z===Lr?void 0:z}function Ebe(n,a){if(n===Lr)return Lr;if(n===$o)return $o;const{yieldType:c,returnType:d,nextType:_}=n;return a&&Zge(!0),Ty(dA(c,a)||j,dA(d,a)||j,_)}function SFe(n,a,c,d){if(Nt(n))return $o;let _=!1;if(a&2){const y=Sbe(n,Us)||AFe(n,Us);if(y)if(y===Lr&&c)_=!0;else return a&8?Ebe(y,c):y}if(a&1){let y=Sbe(n,vc)||AFe(n,vc);if(y)if(y===Lr&&c)_=!0;else if(a&2){if(y!==Lr)return y=Ebe(y,c),_?y:Dg(n,"iterationTypesOfAsyncIterable",y)}else return y}if(a&2){const y=Tbe(n,Us,c,d,_);if(y!==Lr)return y}if(a&1){let y=Tbe(n,vc,c,d,_);if(y!==Lr)return a&2?(y=Ebe(y,c),_?y:Dg(n,"iterationTypesOfAsyncIterable",y)):y}return Lr}function Sbe(n,a){return bte(n,a.iterableCacheKey)}function TFe(n,a){const c=Sbe(n,a)||Tbe(n,a,void 0,void 0,!1);return c===Lr?Hc:c}function AFe(n,a){let c;if(wb(n,c=a.getGlobalIterableType(!1))||wb(n,c=a.getGlobalIterableIteratorType(!1))){const[d]=Js(n),{returnType:_,nextType:y}=TFe(c,a);return Dg(n,a.iterableCacheKey,Ty(a.resolveIterationType(d,void 0)||d,a.resolveIterationType(_,void 0)||_,y))}if(wb(n,a.getGlobalGeneratorType(!1))){const[d,_,y]=Js(n);return Dg(n,a.iterableCacheKey,Ty(a.resolveIterationType(d,void 0)||d,a.resolveIterationType(_,void 0)||_,y))}}function IFe(n){const a=a6e(!1),c=a&&Xe(dr(a),hl(n));return c&&rm(c)?im(c):`__@${n}`}function Tbe(n,a,c,d,_){const y=ya(n,IFe(a.iteratorSymbolName)),x=y&&!(y.flags&16777216)?dr(y):void 0;if(Nt(x))return _?$o:Dg(n,a.iterableCacheKey,$o);const k=x?Yo(x,0):void 0;if(!bt(k))return _?Lr:Dg(n,a.iterableCacheKey,Lr);const z=ba(wt(k,ps)),H=xFe(z,a,c,d,_)??Lr;return _?H:Dg(n,a.iterableCacheKey,H)}function Abe(n,a,c){const d=c?f.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:f.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,_=!!cM(a)||!c&&Qk(n.parent)&&n.parent.expression===n&&nee(!1)!==ko&&Ea(a,nee(!1));return K0(n,_,d,Un(a))}function tvt(n,a,c,d){return xFe(n,a,c,d,!1)}function xFe(n,a,c,d,_){if(Nt(n))return $o;let y=RFe(n,a)||nvt(n,a);return y===Lr&&c&&(y=void 0,_=!0),y??(y=NFe(n,a,c,d,_)),y===Lr?void 0:y}function RFe(n,a){return bte(n,a.iteratorCacheKey)}function nvt(n,a){const c=a.getGlobalIterableIteratorType(!1);if(wb(n,c)){const[d]=Js(n),_=RFe(c,a)||NFe(c,a,void 0,void 0,!1),{returnType:y,nextType:x}=_===Lr?Hc:_;return Dg(n,a.iteratorCacheKey,Ty(d,y,x))}if(wb(n,a.getGlobalIteratorType(!1))||wb(n,a.getGlobalGeneratorType(!1))){const[d,_,y]=Js(n);return Dg(n,a.iteratorCacheKey,Ty(d,_,y))}}function DFe(n,a){const c=Xe(n,"done")||en;return Ea(a===0?en:Bn,c)}function rvt(n){return DFe(n,0)}function ivt(n){return DFe(n,1)}function ovt(n){if(Nt(n))return $o;const a=bte(n,"iterationTypesOfIteratorResult");if(a)return a;if(wb(n,Uct(!1))){const x=Js(n)[0];return Dg(n,"iterationTypesOfIteratorResult",Ty(x,void 0,void 0))}if(wb(n,Hct(!1))){const x=Js(n)[0];return Dg(n,"iterationTypesOfIteratorResult",Ty(void 0,x,void 0))}const c=dc(n,rvt),d=c!==jr?Xe(c,"value"):void 0,_=dc(n,ivt),y=_!==jr?Xe(_,"value"):void 0;return!d&&!y?Dg(n,"iterationTypesOfIteratorResult",Lr):Dg(n,"iterationTypesOfIteratorResult",Ty(d,y||ir,void 0))}function Ibe(n,a,c,d,_){var y,x,k,z;const H=ya(n,c);if(!H&&c!=="next")return;const re=H&&!(c==="next"&&H.flags&16777216)?c==="next"?dr(H):hm(dr(H),2097152):void 0;if(Nt(re))return c==="next"?$o:Tl;const be=re?Yo(re,0):et;if(be.length===0){if(d){const ln=c==="next"?a.mustHaveANextMethodDiagnostic:a.mustBeAMethodDiagnostic;_?(_.errors??(_.errors=[]),_.errors.push(wr(d,ln,c))):Je(d,ln,c)}return c==="next"?Lr:void 0}if(re!=null&&re.symbol&&be.length===1){const ln=a.getGlobalGeneratorType(!1),zn=a.getGlobalIteratorType(!1),Fn=((x=(y=ln.symbol)==null?void 0:y.members)==null?void 0:x.get(c))===re.symbol,er=!Fn&&((z=(k=zn.symbol)==null?void 0:k.members)==null?void 0:z.get(c))===re.symbol;if(Fn||er){const qn=Fn?ln:zn,{mapper:tr}=re;return Ty(Vb(qn.typeParameters[0],tr),Vb(qn.typeParameters[1],tr),c==="next"?Vb(qn.typeParameters[2],tr):void 0)}}let ge,Ke;for(const ln of be)c!=="throw"&&bt(ln.parameters)&&(ge=xn(ge,y_(ln,0))),Ke=xn(Ke,ps(ln));let gt,Dt;if(c!=="throw"){const ln=ge?ti(ge):_n;if(c==="next")Dt=ln;else if(c==="return"){const zn=a.resolveIterationType(ln,d)||j;gt=xn(gt,zn)}}let an;const cn=Ke?ba(Ke):jr,ar=a.resolveIterationType(cn,d)||j,On=ovt(ar);return On===Lr?(d&&(_?(_.errors??(_.errors=[]),_.errors.push(wr(d,a.mustHaveAValueDiagnostic,c))):Je(d,a.mustHaveAValueDiagnostic,c)),an=j,gt=xn(gt,j)):(an=On.yieldType,gt=xn(gt,On.returnType)),Ty(an,ti(gt),Dt)}function NFe(n,a,c,d,_){const y=EFe([Ibe(n,a,"next",c,d),Ibe(n,a,"return",c,d),Ibe(n,a,"throw",c,d)]);return _?y:Dg(n,a.iteratorCacheKey,y)}function rS(n,a,c){if(Nt(a))return;const d=CFe(a,c);return d&&d[Lxe(n)]}function CFe(n,a){if(Nt(n))return $o;const c=a?2:1,d=a?Us:vc;return Ete(n,c,void 0)||tvt(n,d,void 0,void 0)}function avt(n){Tv(n)||ybt(n)}function RB(n,a){const c=!!(a&1),d=!!(a&2);if(c){const _=rS(1,n,d);return _?d?Ey(uM(_)):_:_t}return d?Ey(n)||_t:n}function PFe(n,a){const c=RB(a,Vc(n));return!!(c&&(Cl(c,16384)||c.flags&32769))}function svt(n){if(Tv(n))return;const a=t3(n);if(a&&Rl(a)){hu(n,f.A_return_statement_cannot_be_used_inside_a_class_static_block);return}if(!a){hu(n,f.A_return_statement_can_only_be_used_within_a_function_body);return}const c=fm(a),d=ps(c),_=Vc(a);if(Y||n.expression||d.flags&131072){const y=n.expression?nc(n.expression):Oe;if(a.kind===178)n.expression&&Je(n,f.Setters_cannot_return_a_value);else if(a.kind===176)n.expression&&!Ub(y,d,n,n.expression)&&Je(n,f.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class);else if(IN(a)){const x=RB(d,_)??d,k=_&2?o6(y,!1,n,f.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member):y;x&&Ub(k,x,n,n.expression)}}else a.kind!==176&&V.noImplicitReturns&&!PFe(a,d)&&Je(n,f.Not_all_code_paths_return_a_value)}function lvt(n){Tv(n)||n.flags&65536&&hu(n,f.with_statements_are_not_allowed_in_an_async_function_block),mo(n.expression);const a=jn(n);if(!iS(a)){const c=gh(a,n.pos).start,d=n.statement.pos;oS(a,c,d-c,f.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function cvt(n){Tv(n);let a,c=!1;const d=mo(n.expression);Ue(n.caseBlock.clauses,_=>{_.kind===297&&!c&&(a===void 0?a=_:(En(_,f.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement),c=!0)),_.kind===296&&r(y(_)),Ue(_.statements,Na),V.noFallthroughCasesInSwitch&&_.fallthroughFlowNode&&X9(_.fallthroughFlowNode)&&Je(_,f.Fallthrough_case_in_switch);function y(x){return()=>{const k=mo(x.expression);obe(d,k)||r4e(k,d,x.expression,void 0)}}}),n.caseBlock.locals&&Xb(n.caseBlock)}function uvt(n){Tv(n)||Gn(n.parent,a=>ea(a)?"quit":a.kind===256&&a.label.escapedText===n.label.escapedText?(En(n.label,f.Duplicate_label_0,fc(n.label)),!0):!1),Na(n.statement)}function dvt(n){Tv(n)||Ve(n.expression)&&!n.expression.escapedText&&kbt(n,f.Line_break_not_permitted_here),n.expression&&mo(n.expression)}function pvt(n){Tv(n),vte(n.tryBlock);const a=n.catchClause;if(a){if(a.variableDeclaration){const c=a.variableDeclaration;IB(c);const d=yu(c);if(d){const _=Ei(d);_&&!(_.flags&3)&&hu(d,f.Catch_clause_variable_type_annotation_must_be_any_or_unknown_if_specified)}else if(c.initializer)hu(c.initializer,f.Catch_clause_variable_cannot_have_an_initializer);else{const _=a.block.locals;_&&_h(a.locals,y=>{const x=_.get(y);x!=null&&x.valueDeclaration&&x.flags&2&&En(x.valueDeclaration,f.Cannot_redeclare_identifier_0_in_catch_clause,Vi(y))})}}vte(a.block)}n.finallyBlock&&vte(n.finallyBlock)}function Ste(n,a,c){const d=yd(n);if(d.length===0)return;for(const y of Wb(n))c&&y.flags&4194304||MFe(n,y,NN(y,8576,!0),kb(y));const _=a.valueDeclaration;if(_&&ui(_)){for(const y of _.members)if(!sa(y)&&!TN(y)){const x=Ir(y);MFe(n,x,Ru(y.name.expression),kb(x))}}if(d.length>1)for(const y of d)fvt(n,y)}function MFe(n,a,c,d){const _=a.valueDeclaration,y=Mo(_);if(y&&Ji(y))return;const x=wge(n,c),k=Wr(n)&2?fl(n.symbol,264):void 0,z=_&&_.kind===226||y&&y.kind===167?_:void 0,H=Pd(a)===n.symbol?_:void 0;for(const re of x){const be=re.declaration&&Pd(Ir(re.declaration))===n.symbol?re.declaration:void 0,ge=H||be||(k&&!bt(Mp(n),Ke=>!!uE(Ke,a.escapedName)&&!!dE(Ke,re.keyType))?k:void 0);if(ge&&!Ea(d,re.type)){const Ke=bT(ge,f.Property_0_of_type_1_is_not_assignable_to_2_index_type_3,bi(a),Un(d),Un(re.keyType),Un(re.type));z&&ge!==z&&wa(Ke,wr(z,f._0_is_declared_here,bi(a))),ts.add(Ke)}}}function fvt(n,a){const c=a.declaration,d=wge(n,a.keyType),_=Wr(n)&2?fl(n.symbol,264):void 0,y=c&&Pd(Ir(c))===n.symbol?c:void 0;for(const x of d){if(x===a)continue;const k=x.declaration&&Pd(Ir(x.declaration))===n.symbol?x.declaration:void 0,z=y||k||(_&&!bt(Mp(n),H=>!!xg(H,a.keyType)&&!!dE(H,x.keyType))?_:void 0);z&&!Ea(a.type,x.type)&&Je(z,f._0_index_type_1_is_not_assignable_to_2_index_type_3,Un(a.keyType),Un(a.type),Un(x.keyType),Un(x.type))}}function fM(n,a){switch(n.escapedText){case"any":case"unknown":case"never":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":Je(n,a,n.escapedText)}}function mvt(n){se>=1&&n.escapedText==="Object"&&(G<5||jn(n).impliedNodeFormat===1)&&Je(n,f.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,eC[G])}function _vt(n){const a=nr(f0(n),r_);if(!Me(a))return;const c=lr(n),d=new Set,_=new Set;if(Ue(n.parameters,({name:x},k)=>{Ve(x)&&d.add(x.escapedText),ta(x)&&_.add(k)}),Wge(n)){const x=a.length-1,k=a[x];c&&k&&Ve(k.name)&&k.typeExpression&&k.typeExpression.type&&!d.has(k.name.escapedText)&&!_.has(x)&&!qf(Ei(k.typeExpression.type))&&Je(k.name,f.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,Sr(k.name))}else Ue(a,({name:x,isNameFirst:k},z)=>{_.has(z)||Ve(x)&&d.has(x.escapedText)||(xd(x)?c&&Je(x,f.Qualified_name_0_is_not_allowed_without_a_leading_param_object_1,_p(x),_p(x.left)):k||_u(c,x,f.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,Sr(x)))})}function DB(n){let a=!1;if(n)for(let d=0;d<n.length;d++){const _=n[d];YWe(_),r(c(_,d))}function c(d,_){return()=>{d.default?(a=!0,hvt(d.default,n,_)):a&&Je(d,f.Required_type_parameters_may_not_follow_optional_type_parameters);for(let y=0;y<_;y++)n[y].symbol===d.symbol&&Je(d.name,f.Duplicate_identifier_0,Rs(d.name))}}}function hvt(n,a,c){d(n);function d(_){if(_.kind===183){const y=Jge(_);if(y.flags&262144)for(let x=c;x<a.length;x++)y.symbol===Ir(a[x])&&Je(_,f.Type_parameter_defaults_can_only_reference_previously_declared_type_parameters)}Ho(_,d)}}function LFe(n){if(n.declarations&&n.declarations.length===1)return;const a=Xi(n);if(!a.typeParametersChecked){a.typeParametersChecked=!0;const c=Avt(n);if(!c||c.length<=1)return;const d=el(n);if(!kFe(c,d.localTypeParameters,ky)){const _=bi(n);for(const y of c)Je(y.name,f.All_declarations_of_0_must_have_identical_type_parameters,_)}}}function kFe(n,a,c){const d=Me(a),_=Gh(a);for(const y of n){const x=c(y),k=x.length;if(k<_||k>d)return!1;for(let z=0;z<k;z++){const H=x[z],re=a[z];if(H.name.escapedText!==re.symbol.escapedName)return!1;const be=Zx(H),ge=be&&Ei(be),Ke=Ld(re);if(ge&&Ke&&!vv(ge,Ke))return!1;const gt=H.default&&Ei(H.default),Dt=JT(re);if(gt&&Dt&&!vv(gt,Dt))return!1}}return!0}function wFe(n){const a=!ne&&se<99&&zv(!1,n),c=se<=9,d=!ye;if(a||c)for(const _ of n.members){if(a&&Fj(!1,_,n))return Xc(Ly(n))??n;if(c){if(Rl(_))return _;if(sa(_)&&(cd(_)||d&&ww(_)))return _}}}function gvt(n){if(n.name)return;const a=sse(n);if(!rU(a))return;const c=!ne&&se<99;let d;c&&zv(!1,n)?d=Xc(Ly(n))??n:d=wFe(n),d&&(Nc(d,8388608),(hc(a)||Jo(a)||Qa(a))&&Za(a.name)&&Nc(d,16777216))}function vvt(n){return OFe(n),Ax(n),gvt(n),dr(Ir(n))}function yvt(n){Ue(n.members,Na),Xb(n)}function bvt(n){const a=An(n.modifiers,Eu);ne&&a&&bt(n.members,c=>mc(c)&&cd(c))&&En(a,f.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator),!n.name&&!Zr(n,2048)&&hu(n,f.A_class_declaration_without_the_default_modifier_must_have_a_name),OFe(n),Ue(n.members,Na),Xb(n)}function OFe(n){ibt(n),SB(n),dM(n,n.name),DB(ky(n)),r6(n);const a=Ir(n),c=el(a),d=Kp(c),_=dr(a);LFe(a),_te(a),wht(n),!!(n.flags&33554432)||Oht(n);const x=D_(n);if(x){Ue(x.typeArguments,Na),se<2&&Nc(x.parent,1);const H=UE(n);H&&H!==x&&mo(H.expression);const re=Mp(c);re.length&&r(()=>{const be=re[0],ge=Pp(c),Ke=kd(ge);if(Svt(Ke,x),Na(x.expression),bt(x.typeArguments)){Ue(x.typeArguments,Na);for(const Dt of td(Ke,x.typeArguments,x))if(!rFe(x,Dt.typeParameters))break}const gt=Kp(be,c.thisType);if(nd(d,gt,void 0)?nd(_,$6e(Ke),n.name||n,f.Class_static_side_0_incorrectly_extends_base_class_static_side_1):zFe(n,d,gt,f.Class_0_incorrectly_extends_base_class_1),ge.flags&8650752&&(Mi(_)?Yo(ge,1).some(an=>an.flags&4)&&!Zr(n,64)&&Je(n.name||n,f.A_mixin_class_that_extends_from_a_type_variable_containing_an_abstract_construct_signature_must_also_be_declared_abstract):Je(n.name||n,f.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)),!(Ke.symbol&&Ke.symbol.flags&32)&&!(ge.flags&8650752)){const Dt=zh(Ke,x.typeArguments,x);Ue(Dt,an=>!nh(an.declaration)&&!vv(ps(an),be))&&Je(x.expression,f.Base_constructors_must_all_have_the_same_return_type)}Ivt(c,be)})}Evt(n,c,d,_);const k=AR(n);if(k)for(const H of k)(!Gl(H.expression)||qu(H.expression))&&Je(H.expression,f.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments),pbe(H),r(z(H));r(()=>{Ste(c,a),Ste(_,a,!0),cbe(n),Dvt(n)});function z(H){return()=>{const re=h_(Ei(H));if(!Kt(re))if(m9(re)){const be=re.symbol&&re.symbol.flags&32?f.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:f.Class_0_incorrectly_implements_interface_1,ge=Kp(re,c.thisType);nd(d,ge,void 0)||zFe(n,d,ge,be)}else Je(H,f.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}function Evt(n,a,c,d){const y=D_(n)&&Mp(a),x=y!=null&&y.length?Kp(Ha(y),a.thisType):void 0,k=Pp(a);for(const z of n.members)gU(z)||(Ml(z)&&Ue(z.parameters,H=>{mp(H,z)&&WFe(n,d,k,x,a,c,H,!0)}),WFe(n,d,k,x,a,c,z,!1))}function WFe(n,a,c,d,_,y,x,k,z=!0){const H=x.name&&Hm(x.name)||Hm(x);return H?FFe(n,a,c,d,_,y,P3(x),XE(x),sa(x),k,Sl(H),z?x:void 0):0}function FFe(n,a,c,d,_,y,x,k,z,H,re,be){const ge=lr(n),Ke=!!(n.flags&33554432);if(d&&(x||V.noImplicitOverride)){const gt=hl(re),Dt=z?a:y,an=z?c:d,cn=ya(Dt,gt),ar=ya(an,gt),On=Un(d);if(cn&&!ar&&x){if(be){const ln=J3e(re,an);ln?Je(be,ge?f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1:f.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1,On,bi(ln)):Je(be,ge?f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0:f.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0,On)}return 2}else if(cn&&(ar!=null&&ar.declarations)&&V.noImplicitOverride&&!Ke){const ln=bt(ar.declarations,XE);if(x)return 0;if(ln){if(k&&ln)return be&&Je(be,f.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0,On),1}else{if(be){const zn=H?ge?f.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:f.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0:ge?f.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0:f.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0;Je(be,zn,On)}return 1}}}else if(x){if(be){const gt=Un(_);Je(be,ge?f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class:f.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class,gt)}return 2}return 0}function zFe(n,a,c,d){let _=!1;for(const y of n.members){if(sa(y))continue;const x=y.name&&Hm(y.name)||Hm(y);if(x){const k=ya(a,x.escapedName),z=ya(c,x.escapedName);if(k&&z){const H=()=>jo(void 0,f.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,bi(x),Un(a),Un(c));nd(dr(k),dr(z),y.name||y,void 0,H)||(_=!0)}}}_||nd(a,c,n.name||n,d)}function Svt(n,a){const c=Yo(n,1);if(c.length){const d=c[0].declaration;if(d&&gp(d,2)){const _=Vg(n.symbol);Pbe(a,_)||Je(a,f.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,qp(n.symbol))}}}function Tvt(n,a,c){if(!a.name)return 0;const d=Ir(n),_=el(d),y=Kp(_),x=dr(d),z=D_(n)&&Mp(_),H=z!=null&&z.length?Kp(Ha(z),_.thisType):void 0,re=Pp(_),be=a.parent?P3(a):Zr(a,16);return FFe(n,x,re,H,_,y,be,XE(a),sa(a),!1,Sl(c))}function GN(n){return xl(n)&1?n.links.target:n}function Avt(n){return nr(n.declarations,a=>a.kind===263||a.kind===264)}function Ivt(n,a){var c,d,_,y;const x=gs(a);let k;e:for(const z of x){const H=GN(z);if(H.flags&4194304)continue;const re=uE(n,H.escapedName);if(!re)continue;const be=GN(re),ge=Df(H);if(N.assert(!!be,"derived should point to something, even if it is the base class' declaration."),be===H){const Ke=Vg(n.symbol);if(ge&64&&(!Ke||!Zr(Ke,64))){for(const gt of Mp(n)){if(gt===a)continue;const Dt=uE(gt,H.escapedName),an=Dt&&GN(Dt);if(an&&an!==H)continue e}k||(k=Je(Ke,f.Non_abstract_class_0_does_not_implement_all_abstract_members_of_1,Un(n),Un(a))),Ke.kind===231?wa(k,wr(z.valueDeclaration??(z.declarations&&Ha(z.declarations))??Ke,f.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,bi(z),Un(a))):wa(k,wr(z.valueDeclaration??(z.declarations&&Ha(z.declarations))??Ke,f.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,Un(n),bi(z),Un(a)))}}else{const Ke=Df(be);if(ge&2||Ke&2)continue;let gt;const Dt=H.flags&98308,an=be.flags&98308;if(Dt&&an){if((xl(H)&6?(c=H.declarations)!=null&&c.some(On=>BFe(On,ge)):(d=H.declarations)!=null&&d.every(On=>BFe(On,ge)))||xl(H)&262144||be.valueDeclaration&&mr(be.valueDeclaration))continue;const cn=Dt!==4&&an===4;if(cn||Dt===4&&an!==4){const On=cn?f._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property:f._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor;Je(Mo(be.valueDeclaration)||be.valueDeclaration,On,bi(H),Un(a),Un(n))}else if(he){const On=(_=be.declarations)==null?void 0:_.find(ln=>ln.kind===172&&!ln.initializer);if(On&&!(be.flags&33554432)&&!(ge&64)&&!(Ke&64)&&!((y=be.declarations)!=null&&y.some(ln=>!!(ln.flags&33554432)))){const ln=lv(Vg(n.symbol)),zn=On.name;if(On.exclamationToken||!ln||!Ve(zn)||!Y||!VFe(zn,n,ln)){const Fn=f.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration;Je(Mo(be.valueDeclaration)||be.valueDeclaration,Fn,bi(H),Un(a))}}}continue}else if(Dye(H)){if(Dye(be)||be.flags&4)continue;N.assert(!!(be.flags&98304)),gt=f.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else H.flags&98304?gt=f.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:gt=f.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function;Je(Mo(be.valueDeclaration)||be.valueDeclaration,gt,Un(a),bi(H),Un(n))}}}function BFe(n,a){return a&64&&(!Jo(n)||!n.initializer)||hd(n.parent)}function xvt(n,a,c){if(!Me(a))return c;const d=new Map;Ue(c,_=>{d.set(_.escapedName,_)});for(const _ of a){const y=gs(Kp(_,n.thisType));for(const x of y){const k=d.get(x.escapedName);k&&x.parent===k.parent&&d.delete(x.escapedName)}}return zo(d.values())}function Rvt(n,a){const c=Mp(n);if(c.length<2)return!0;const d=new Map;Ue(vge(n).declaredProperties,y=>{d.set(y.escapedName,{prop:y,containingType:n})});let _=!0;for(const y of c){const x=gs(Kp(y,n.thisType));for(const k of x){const z=d.get(k.escapedName);if(!z)d.set(k.escapedName,{prop:k,containingType:y});else if(z.containingType!==n&&!zdt(z.prop,k)){_=!1;const re=Un(z.containingType),be=Un(y);let ge=jo(void 0,f.Named_property_0_of_types_1_and_2_are_not_identical,bi(k),re,be);ge=jo(ge,f.Interface_0_cannot_simultaneously_extend_types_1_and_2,Un(n),re,be),ts.add(Fg(jn(a),a,ge))}}}return _}function Dvt(n){if(!Y||!Ne||n.flags&33554432)return;const a=lv(n);for(const c of n.members)if(!(pd(c)&128)&&!sa(c)&&GFe(c)){const d=c.name;if(Ve(d)||Ji(d)||Za(d)){const _=dr(Ir(c));_.flags&3||K2(_)||(!a||!VFe(d,_,a))&&Je(c.name,f.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,Rs(d))}}}function GFe(n){return n.kind===172&&!XE(n)&&!n.exclamationToken&&!n.initializer}function Nvt(n,a,c,d,_){for(const y of c)if(y.pos>=d&&y.pos<=_){const x=w.createPropertyAccessExpression(w.createThis(),n);qa(x.expression,x),qa(x,y),x.flowNode=y.returnFlowNode;const k=Kb(x,a,qb(a));if(!K2(k))return!0}return!1}function VFe(n,a,c){const d=Za(n)?w.createElementAccessExpression(w.createThis(),n.expression):w.createPropertyAccessExpression(w.createThis(),n);qa(d.expression,d),qa(d,c),d.flowNode=c.returnFlowNode;const _=Kb(d,a,qb(a));return!K2(_)}function Cvt(n){Ng(n)||dbt(n),DB(n.typeParameters),r(()=>{fM(n.name,f.Interface_name_cannot_be_0),r6(n);const a=Ir(n);LFe(a);const c=fl(a,264);if(n===c){const d=el(a),_=Kp(d);if(Rvt(d,n.name)){for(const y of Mp(d))nd(_,Kp(y,d.thisType),n.name,f.Interface_0_incorrectly_extends_interface_1);Ste(d,a)}}ZWe(n)}),Ue(PC(n),a=>{(!Gl(a.expression)||qu(a.expression))&&Je(a.expression,f.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments),pbe(a)}),Ue(n.members,Na),r(()=>{cbe(n),Xb(n)})}function Pvt(n){Ng(n),fM(n.name,f.Type_alias_name_cannot_be_0),r6(n),DB(n.typeParameters),n.type.kind===141?(!QF.has(n.name.escapedText)||Me(n.typeParameters)!==1)&&Je(n.type,f.The_intrinsic_keyword_can_only_be_used_to_declare_compiler_provided_intrinsic_types):(Na(n.type),Xb(n))}function jFe(n){const a=ei(n);if(!(a.flags&1024)){a.flags|=1024;let c=0;for(const d of n.members){const _=Mvt(d,c);ei(d).enumMemberValue=_,c=typeof _=="number"?_+1:void 0}}}function Mvt(n,a){if(PL(n.name))Je(n.name,f.Computed_property_names_are_not_allowed_in_enums);else{const c=lR(n.name);cg(c)&&!iP(c)&&Je(n.name,f.An_enum_member_cannot_have_a_numeric_name)}if(n.initializer)return Lvt(n);if(!(n.parent.flags&33554432&&!FE(n.parent))){if(a!==void 0)return a;Je(n.name,f.Enum_member_must_have_initializer)}}function Lvt(n){const a=FE(n.parent),c=n.initializer,d=mM(c,n);return d!==void 0?a&&typeof d=="number"&&!isFinite(d)&&Je(c,isNaN(d)?f.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:f.const_enum_member_initializer_was_evaluated_to_a_non_finite_value):a?Je(c,f.const_enum_member_initializers_must_be_constant_expressions):n.parent.flags&33554432?Je(c,f.In_ambient_enum_declarations_member_initializer_must_be_constant_expression):nd(mo(c),Tt,c,f.Type_0_is_not_assignable_to_type_1_as_required_for_computed_enum_member_values),d}function mM(n,a){switch(n.kind){case 224:const c=mM(n.operand,a);if(typeof c=="number")switch(n.operator){case 40:return c;case 41:return-c;case 55:return~c}break;case 226:const d=mM(n.left,a),_=mM(n.right,a);if(typeof d=="number"&&typeof _=="number")switch(n.operatorToken.kind){case 52:return d|_;case 51:return d&_;case 49:return d>>_;case 50:return d>>>_;case 48:return d<<_;case 53:return d^_;case 42:return d*_;case 44:return d/_;case 40:return d+_;case 41:return d-_;case 45:return d%_;case 43:return d**_}else if((typeof d=="string"||typeof d=="number")&&(typeof _=="string"||typeof _=="number")&&n.operatorToken.kind===40)return""+d+_;break;case 11:case 15:return n.text;case 228:return HFe(n,a);case 9:return Gbe(n),+n.text;case 217:return mM(n.expression,a);case 80:{const x=n;if(iP(x.escapedText)&&Hs(x,111551,!0)===q2(x.escapedText,111551,void 0))return+x.escapedText}case 211:if(Gl(n)){const x=Hs(n,111551,!0);if(x){if(x.flags&8)return a?UFe(n,x,a):jN(x.valueDeclaration);if(rM(x)){const k=x.valueDeclaration;if(k&&wi(k)&&!k.type&&k.initializer&&(!a||k!==a&&iv(k,a)))return mM(k.initializer,k)}}}break;case 212:const y=n.expression;if(Gl(y)&&ls(n.argumentExpression)){const x=Hs(y,111551,!0);if(x&&x.flags&384){const k=hl(n.argumentExpression.text),z=x.exports.get(k);if(z)return a?UFe(n,z,a):jN(z.valueDeclaration)}}break}}function UFe(n,a,c){const d=a.valueDeclaration;if(!d||d===c){Je(n,f.Property_0_is_used_before_being_assigned,bi(a));return}return iv(d,c)?jN(d):(Je(n,f.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums),0)}function HFe(n,a){let c=n.head.text;for(const d of n.templateSpans){const _=mM(d.expression,a);if(_===void 0)return;c+=_,c+=d.literal.text}return c}function kvt(n){r(()=>wvt(n))}function wvt(n){Ng(n),dM(n,n.name),r6(n),n.members.forEach(Ovt),jFe(n);const a=Ir(n),c=fl(a,n.kind);if(n===c){if(a.declarations&&a.declarations.length>1){const _=FE(n);Ue(a.declarations,y=>{x0(y)&&FE(y)!==_&&Je(Mo(y),f.Enum_declarations_must_all_be_const_or_non_const)})}let d=!1;Ue(a.declarations,_=>{if(_.kind!==266)return!1;const y=_;if(!y.members.length)return!1;const x=y.members[0];x.initializer||(d?Je(x.name,f.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element):d=!0)})}}function Ovt(n){Ji(n.name)&&Je(n,f.An_enum_member_cannot_be_named_with_a_private_identifier),n.initializer&&mo(n.initializer)}function Wvt(n){const a=n.declarations;if(a){for(const c of a)if((c.kind===263||c.kind===262&&Yf(c.body))&&!(c.flags&33554432))return c}}function Fvt(n,a){const c=hh(n),d=hh(a);return Mh(c)?Mh(d):Mh(d)?!1:c===d}function zvt(n){n.body&&(Na(n.body),R_(n)||Xb(n)),r(a);function a(){var c,d;const _=R_(n),y=n.flags&33554432;_&&!y&&Je(n.name,f.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context);const x=ku(n),k=x?f.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:f.A_namespace_declaration_is_only_allowed_at_the_top_level_of_a_namespace_or_module;if(NB(n,k))return;Ng(n)||!y&&n.name.kind===11&&En(n.name,f.Only_ambient_modules_can_use_quoted_names),Ve(n.name)&&dM(n,n.name),r6(n);const z=Ir(n);if(z.flags&512&&!y&&Kq(n,e1(V))){if(om(V)&&!jn(n).externalModuleIndicator&&Je(n.name,f.Namespaces_are_not_allowed_in_global_script_files_when_0_is_enabled_If_this_file_is_not_intended_to_be_a_global_script_set_moduleDetection_to_force_or_add_an_empty_export_statement,$e),((c=z.declarations)==null?void 0:c.length)>1){const H=Wvt(z);H&&(jn(n)!==jn(H)?Je(n.name,f.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged):n.pos<H.pos&&Je(n.name,f.A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged));const re=fl(z,263);re&&Fvt(n,re)&&(ei(n).flags|=2048)}if(V.verbatimModuleSyntax&&n.parent.kind===312&&(G===1||n.parent.impliedNodeFormat===1)){const H=(d=n.modifiers)==null?void 0:d.find(re=>re.kind===95);H&&Je(H,f.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}}if(x)if(WE(n)){if((_||Ir(n).flags&33554432)&&n.body)for(const re of n.body.statements)xbe(re,_)}else Mh(n.parent)?_?Je(n.name,f.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Yc(em(n.name))&&Je(n.name,f.Ambient_module_declaration_cannot_specify_relative_module_name):_?Je(n.name,f.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations):Je(n.name,f.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}function xbe(n,a){switch(n.kind){case 243:for(const d of n.declarationList.declarations)xbe(d,a);break;case 277:case 278:hu(n,f.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 271:case 272:hu(n,f.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 208:case 260:const c=n.name;if(ta(c)){for(const d of c.elements)xbe(d,a);break}case 263:case 266:case 262:case 264:case 267:case 265:if(a)return;break}}function Bvt(n){switch(n.kind){case 80:return n;case 166:do n=n.left;while(n.kind!==80);return n;case 211:do{if(rg(n.expression)&&!Ji(n.name))return n.name;n=n.expression}while(n.kind!==80);return n}}function Rbe(n){const a=yR(n);if(!a||zl(a))return!1;if(!Ma(a))return Je(a,f.String_literal_expected),!1;const c=n.parent.kind===268&&ku(n.parent.parent);if(n.parent.kind!==312&&!c)return Je(a,n.kind===278?f.Export_declarations_are_not_permitted_in_a_namespace:f.Import_declarations_in_a_namespace_cannot_reference_a_module),!1;if(c&&Yc(a.text)&&!Nb(n))return Je(n,f.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name),!1;if(!tu(n)&&n.attributes){const d=n.attributes.token===118?f.Import_attribute_values_must_be_string_literal_expressions:f.Import_assertion_values_must_be_string_literal_expressions;let _=!1;for(const y of n.attributes.elements)Ma(y.value)||(_=!0,Je(y.value,d));return!_}return!0}function Tte(n){var a,c,d,_;let y=Ir(n);const x=Fc(y);if(x!==ft){if(y=rs(y.exportSymbol||y),lr(n)&&!(x.flags&111551)&&!m0(n)){const H=CA(n)?n.propertyName||n.name:ld(n)?n.name:n;if(N.assert(n.kind!==280),n.kind===281){const re=Je(H,f.Types_cannot_appear_in_export_declarations_in_JavaScript_files),be=(c=(a=jn(n).symbol)==null?void 0:a.exports)==null?void 0:c.get((n.propertyName||n.name).escapedText);if(be===x){const ge=(d=be.declarations)==null?void 0:d.find(rR);ge&&wa(re,wr(ge,f._0_is_automatically_exported_here,Vi(be.escapedName)))}}else{N.assert(n.kind!==260);const re=Gn(n,Ym(kc,tu)),be=(re&&((_=vR(re))==null?void 0:_.text))??"...",ge=Vi(Ve(H)?H.escapedText:y.escapedName);Je(H,f._0_is_a_type_and_cannot_be_imported_in_JavaScript_files_Use_1_in_a_JSDoc_type_annotation,ge,`import("${be}").${ge}`)}return}const k=Au(x),z=(y.flags&1160127?111551:0)|(y.flags&788968?788968:0)|(y.flags&1920?1920:0);if(k&z){const H=n.kind===281?f.Export_declaration_conflicts_with_exported_declaration_of_0:f.Import_declaration_conflicts_with_local_declaration_of_0;Je(n,H,bi(y))}else n.kind!==281&&V.isolatedModules&&!Gn(n,m0)&&y.flags&1160127&&Je(n,f.Import_0_conflicts_with_local_value_so_must_be_declared_with_a_type_only_import_when_isolatedModules_is_enabled,bi(y),$e);if(om(V)&&!m0(n)&&!(n.flags&33554432)){const H=Ff(y),re=!(k&111551);if(re||H)switch(n.kind){case 273:case 276:case 271:{if(V.preserveValueImports||V.verbatimModuleSyntax){N.assertIsDefined(n.name,"An ImportClause with a symbol should have a name");const be=V.verbatimModuleSyntax&&hR(n)?f.An_import_alias_cannot_resolve_to_a_type_or_type_only_declaration_when_verbatimModuleSyntax_is_enabled:re?V.verbatimModuleSyntax?f._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:f._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled:V.verbatimModuleSyntax?f._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled:f._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_preserveValueImports_and_isolatedModules_are_both_enabled,ge=Sr(n.kind===276&&n.propertyName||n.name);gg(Je(n,be,ge),re?void 0:H,ge)}re&&n.kind===271&&gp(n,32)&&Je(n,f.Cannot_use_export_import_on_a_type_or_type_only_namespace_when_0_is_enabled,$e);break}case 281:if(V.verbatimModuleSyntax||jn(H)!==jn(n)){const be=Sr(n.propertyName||n.name),ge=re?Je(n,f.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type,$e):Je(n,f._0_resolves_to_a_type_only_declaration_and_must_be_re_exported_using_a_type_only_re_export_when_1_is_enabled,be,$e);gg(ge,re?void 0:H,be);break}}V.verbatimModuleSyntax&&n.kind!==271&&!lr(n)&&(G===1||jn(n).impliedNodeFormat===1)&&Je(n,f.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled)}if(np(n)){const H=Dbe(y,n);hb(H)&&H.declarations&&uy(n,H.declarations,H.escapedName)}}}function Dbe(n,a){if(!(n.flags&2097152)||hb(n)||!Fm(n))return n;const c=Fc(n);if(c===ft)return c;for(;n.flags&2097152;){const d=Sye(n);if(d){if(d===c)break;if(d.declarations&&Me(d.declarations))if(hb(d)){uy(a,d.declarations,d.escapedName);break}else{if(n===c)break;n=d}}else break}return c}function Ate(n){dM(n,n.name),Tte(n),n.kind===276&&Sr(n.propertyName||n.name)==="default"&&yh(V)&&G!==4&&(G<5||jn(n).impliedNodeFormat===1)&&Nc(n,131072)}function qFe(n){var a;const c=n.attributes;if(c){const d=Yge(!0);d!==La&&nd(ce(c),V9(d,32768),c);const _=WJ(n),y=hD(c,_?En:void 0),x=n.attributes.token===118;if(_&&y)return;if((G===199&&n.moduleSpecifier&&to(n.moduleSpecifier))!==99&&G!==99&&G!==200){const z=x?G===199?f.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:f.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve:G===199?f.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls:f.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve;return En(c,z)}if(kc(n)?(a=n.importClause)!=null&&a.isTypeOnly:n.isTypeOnly)return En(c,x?f.Import_attributes_cannot_be_used_with_type_only_imports_or_exports:f.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);if(y)return En(c,f.resolution_mode_can_only_be_set_for_type_only_imports)}}function Gvt(n){return Ed(nc(n.value))}function Vvt(n){if(!NB(n,lr(n)?f.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:f.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!Ng(n)&&C3(n)&&hu(n,f.An_import_declaration_cannot_have_modifiers),Rbe(n)){const a=n.importClause;a&&!Obt(a)&&(a.name&&Ate(a),a.namedBindings&&(a.namedBindings.kind===274?(Ate(a.namedBindings),G!==4&&(G<5||jn(n).impliedNodeFormat===1)&&yh(V)&&Nc(n,65536)):vd(n,n.moduleSpecifier)&&Ue(a.namedBindings.elements,Ate)))}qFe(n)}}function jvt(n){if(!NB(n,lr(n)?f.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module:f.An_import_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)&&(Ng(n),hR(n)||Rbe(n)))if(Ate(n),Zr(n,32)&&Sb(n),n.moduleReference.kind!==283){const a=Fc(Ir(n));if(a!==ft){const c=Au(a);if(c&111551){const d=Vp(n.moduleReference);Hs(d,112575).flags&1920||Je(d,f.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,Rs(d))}c&788968&&fM(n.name,f.Import_name_cannot_be_0)}n.isTypeOnly&&En(n,f.An_import_alias_cannot_use_import_type)}else G>=5&&G!==200&&jn(n).impliedNodeFormat===void 0&&!n.isTypeOnly&&!(n.flags&33554432)&&En(n,f.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}function Uvt(n){if(!NB(n,lr(n)?f.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module:f.An_export_declaration_can_only_be_used_at_the_top_level_of_a_namespace_or_module)){if(!Ng(n)&&poe(n)&&hu(n,f.An_export_declaration_cannot_have_modifiers),n.moduleSpecifier&&n.exportClause&&Pf(n.exportClause)&&Me(n.exportClause.elements)&&se===0&&Nc(n,4194304),Hvt(n),!n.moduleSpecifier||Rbe(n))if(n.exportClause&&!Th(n.exportClause)){Ue(n.exportClause.elements,$vt);const a=n.parent.kind===268&&ku(n.parent.parent),c=!a&&n.parent.kind===268&&!n.moduleSpecifier&&n.flags&33554432;n.parent.kind!==312&&!a&&!c&&Je(n,f.Export_declarations_are_not_permitted_in_a_namespace)}else{const a=vd(n,n.moduleSpecifier);a&&fy(a)?Je(n.moduleSpecifier,f.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,bi(a)):n.exportClause&&Tte(n.exportClause),G!==4&&(G<5||jn(n).impliedNodeFormat===1)&&(n.exportClause?yh(V)&&Nc(n,65536):Nc(n,32768))}qFe(n)}}function Hvt(n){var a;return n.isTypeOnly&&((a=n.exportClause)==null?void 0:a.kind)===279?A7e(n.exportClause):!1}function NB(n,a){const c=n.parent.kind===312||n.parent.kind===268||n.parent.kind===267;return c||hu(n,a),!c}function qvt(n){return h3(n,a=>!!Ir(a).isReferenced)}function Jvt(n){return h3(n,a=>!!Xi(Ir(a)).constEnumReferenced)}function Kvt(n){return kc(n)&&n.importClause&&!n.importClause.isTypeOnly&&qvt(n.importClause)&&!Cte(n.importClause,!0)&&!Jvt(n.importClause)}function Xvt(n){return tu(n)&&Ah(n.moduleReference)&&!n.isTypeOnly&&Ir(n).isReferenced&&!Cte(n,!1)&&!Xi(Ir(n)).constEnumReferenced}function Yvt(n){if(It)for(const a of n.statements)(Kvt(a)||Xvt(a))&&Je(a,f.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error)}function $vt(n){if(Tte(n),Nf(V)&&O2(n.propertyName||n.name,!0),n.parent.parent.moduleSpecifier)yh(V)&&G!==4&&(G<5||jn(n).impliedNodeFormat===1)&&Sr(n.propertyName||n.name)==="default"&&Nc(n,131072);else{const a=n.propertyName||n.name,c=bl(a,a.escapedText,2998271,void 0,void 0,!0);if(c&&(c===je||c===at||c.declarations&&Mh(Q(c.declarations[0]))))Je(a,f.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,Sr(a));else{!n.isTypeOnly&&!n.parent.parent.isTypeOnly&&Sb(n);const d=c&&(c.flags&2097152?Fc(c):c);(!d||Au(d)&111551)&&nc(n.propertyName||n.name)}}}function Qvt(n){const a=n.isExportEquals?f.An_export_assignment_must_be_at_the_top_level_of_a_file_or_module_declaration:f.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration;if(NB(n,a))return;const c=n.parent.kind===312?n.parent:n.parent.parent;if(c.kind===267&&!ku(c)){n.isExportEquals?Je(n,f.An_export_assignment_cannot_be_used_in_a_namespace):Je(n,f.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);return}!Ng(n)&&C3(n)&&hu(n,f.An_export_assignment_cannot_have_modifiers);const d=yu(n);d&&nd(nc(n.expression),Ei(d),n.expression);const _=!n.isExportEquals&&!(n.flags&33554432)&&V.verbatimModuleSyntax&&(G===1||jn(n).impliedNodeFormat===1);if(n.expression.kind===80){const y=n.expression,x=vf(Hs(y,-1,!0,!0,n));if(x){const k=Ff(x,111551);if(Vee(x,y),Au(x)&111551?(nc(y),!_&&!(n.flags&33554432)&&V.verbatimModuleSyntax&&k&&Je(y,n.isExportEquals?f.An_export_declaration_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration:f.An_export_default_must_reference_a_real_value_when_verbatimModuleSyntax_is_enabled_but_0_resolves_to_a_type_only_declaration,Sr(y))):!_&&!(n.flags&33554432)&&V.verbatimModuleSyntax&&Je(y,n.isExportEquals?f.An_export_declaration_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type:f.An_export_default_must_reference_a_value_when_verbatimModuleSyntax_is_enabled_but_0_only_refers_to_a_type,Sr(y)),!_&&!(n.flags&33554432)&&om(V)&&!(x.flags&111551)){const z=Au(x,!1,!0);x.flags&2097152&&z&788968&&!(z&111551)&&(!k||jn(k)!==jn(n))?Je(y,n.isExportEquals?f._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:f._0_resolves_to_a_type_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Sr(y),$e):k&&jn(k)!==jn(n)&&gg(Je(y,n.isExportEquals?f._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_import_type_where_0_is_imported:f._0_resolves_to_a_type_only_declaration_and_must_be_marked_type_only_in_this_file_before_re_exporting_when_1_is_enabled_Consider_using_export_type_0_as_default,Sr(y),$e),k,Sr(y))}}else nc(y);Nf(V)&&O2(y,!0)}else nc(n.expression);_&&Je(n,f.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled),JFe(c),n.flags&33554432&&!Gl(n.expression)&&En(n.expression,f.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context),n.isExportEquals&&(G>=5&&G!==200&&(n.flags&33554432&&jn(n).impliedNodeFormat===99||!(n.flags&33554432)&&jn(n).impliedNodeFormat!==1)?En(n,f.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead):G===4&&!(n.flags&33554432)&&En(n,f.Export_assignment_is_not_supported_when_module_flag_is_system))}function Zvt(n){return Gc(n.exports,(a,c)=>c!=="export=")}function JFe(n){const a=Ir(n),c=Xi(a);if(!c.exportsChecked){const d=a.exports.get("export=");if(d&&Zvt(a)){const y=Fm(d)||d.valueDeclaration;y&&!Nb(y)&&!lr(y)&&Je(y,f.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}const _=kh(a);_&&_.forEach(({declarations:y,flags:x},k)=>{if(k==="__export"||x&1920)return;const z=au(y,B6(kxe,G6(hd)));if(!(x&524288&&z<=2)&&z>1&&!Ite(y))for(const H of y)Pxe(H)&&ts.add(wr(H,f.Cannot_redeclare_exported_variable_0,Vi(k)))}),c.exportsChecked=!0}}function Ite(n){return n&&n.length>1&&n.every(a=>lr(a)&&ws(a)&&(RS(a.expression)||rg(a.expression)))}function Na(n){if(n){const a=C;C=n,I=0,eyt(n),C=a}}function eyt(n){ek(n)&&Ue(n.jsDoc,({comment:c,tags:d})=>{KFe(c),Ue(d,_=>{KFe(_.comment),lr(n)&&Na(_)})});const a=n.kind;if(i)switch(a){case 267:case 263:case 264:case 262:i.throwIfCancellationRequested()}switch(a>=243&&a<=259&&ZL(n)&&n.flowNode&&!X9(n.flowNode)&&_u(V.allowUnreachableCode===!1,n,f.Unreachable_code_detected),a){case 168:return YWe(n);case 169:return $We(n);case 172:return eFe(n);case 171:return Wht(n);case 185:case 184:case 179:case 180:case 181:return n6(n);case 174:case 173:return Fht(n);case 175:return zht(n);case 176:return Bht(n);case 177:case 178:return nFe(n);case 183:return pbe(n);case 182:return Lht(n);case 186:return qht(n);case 187:return Jht(n);case 188:return Kht(n);case 189:return Xht(n);case 192:case 193:return Yht(n);case 196:case 190:case 191:return Na(n.type);case 197:return egt(n);case 198:return tgt(n);case 194:return ngt(n);case 195:return rgt(n);case 203:return igt(n);case 205:return ogt(n);case 202:return agt(n);case 335:return Igt(n);case 336:return Agt(n);case 353:case 345:case 347:return _gt(n);case 352:return hgt(n);case 351:return ggt(n);case 331:case 332:case 333:return ygt(n);case 348:return bgt(n);case 355:return Egt(n);case 324:Sgt(n);case 322:case 321:case 319:case 320:case 329:XFe(n),Ho(n,Na);return;case 325:tyt(n);return;case 316:return Na(n.type);case 340:case 342:case 341:return xgt(n);case 357:return vgt(n);case 350:return Tgt(n);case 199:return $ht(n);case 200:return Qht(n);case 262:return mgt(n);case 241:case 268:return vte(n);case 243:return Ugt(n);case 244:return Hgt(n);case 245:return qgt(n);case 246:return Xgt(n);case 247:return Ygt(n);case 248:return $gt(n);case 249:return Zgt(n);case 250:return Qgt(n);case 251:case 252:return avt(n);case 253:return svt(n);case 254:return lvt(n);case 255:return cvt(n);case 256:return uvt(n);case 257:return dvt(n);case 258:return pvt(n);case 260:return Vgt(n);case 208:return jgt(n);case 263:return bvt(n);case 264:return Cvt(n);case 265:return Pvt(n);case 266:return kvt(n);case 267:return zvt(n);case 272:return Vvt(n);case 271:return jvt(n);case 278:return Uvt(n);case 277:return Qvt(n);case 242:case 259:Tv(n);return;case 282:return Vht(n)}}function KFe(n){To(n)&&Ue(n,a=>{kA(a)&&Na(a)})}function XFe(n){if(!lr(n))if(sF(n)||$R(n)){const a=fa(sF(n)?54:58),c=n.postfix?f._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1:f._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1,d=n.type,_=Ei(d);En(n,c,a,Un($R(n)&&!(_===jr||_===ir)?ti(xn([_,Oe],n.postfix?void 0:me)):_))}else En(n,f.JSDoc_types_can_only_be_used_inside_documentation_comments)}function tyt(n){XFe(n),Na(n.type);const{parent:a}=n;if(Ao(a)&&QR(a.parent)){Ya(a.parent.parameters)!==a&&Je(n,f.A_rest_parameter_must_be_last_in_a_parameter_list);return}d1(a)||Je(n,f.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);const c=n.parent.parent;if(!r_(c)){Je(n,f.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}const d=tk(c);if(!d)return;const _=v0(c);(!_||Ya(_.parameters).symbol!==d)&&Je(n,f.A_rest_parameter_must_be_last_in_a_parameter_list)}function nyt(n){const a=Ei(n.type),{parent:c}=n,d=n.parent.parent;if(d1(n.parent)&&r_(d)){const _=v0(d),y=FH(d.parent.parent);if(_||y){const x=tl(y?d.parent.parent.typeExpression.parameters:_.parameters),k=tk(d);if(!x||k&&x.symbol===k&&Zh(x))return Vu(a)}}return Ao(c)&&QR(c.parent)?Vu(a):cp(a)}function Ax(n){const a=jn(n),c=ei(a);c.flags&1?N.assert(!c.deferredNodes,"A type-checked file should have no deferred nodes."):(c.deferredNodes||(c.deferredNodes=new Set),c.deferredNodes.add(n))}function ryt(n){const a=ei(n);a.deferredNodes&&a.deferredNodes.forEach(iyt),a.deferredNodes=void 0}function iyt(n){var a,c;(a=sr)==null||a.push(sr.Phase.Check,"checkDeferredNode",{kind:n.kind,pos:n.pos,end:n.end,path:n.tracingPath});const d=C;switch(C=n,I=0,n.kind){case 213:case 214:case 215:case 170:case 286:lA(n);break;case 218:case 219:case 174:case 173:Q_t(n);break;case 177:case 178:nFe(n);break;case 231:yvt(n);break;case 168:Mht(n);break;case 285:smt(n);break;case 284:cmt(n);break;case 216:case 234:case 217:I_t(n);break;case 222:mo(n.expression);break;case 226:L3(n)&&lA(n);break}C=d,(c=sr)==null||c.pop()}function oyt(n){var a,c;(a=sr)==null||a.push(sr.Phase.Check,"checkSourceFile",{path:n.path},!0),il("beforeCheck"),ayt(n),il("afterCheck"),ef("Check","beforeCheck","afterCheck"),(c=sr)==null||c.pop()}function YFe(n,a){if(a)return!1;switch(n){case 0:return!!V.noUnusedLocals;case 1:return!!V.noUnusedParameters;default:return N.assertNever(n)}}function $Fe(n){return mf.get(n.path)||et}function ayt(n){const a=ei(n);if(!(a.flags&1)){if(ZC(n,V,e))return;Mbt(n),Vo(N1),Vo(C1),Vo(fb),Vo(mb),Vo(hg),Ue(n.statements,Na),Na(n.endOfFileToken),ryt(n),zp(n)&&Xb(n),r(()=>{!n.isDeclarationFile&&(V.noUnusedLocals||V.noUnusedParameters)&&mFe($Fe(n),(c,d,_)=>{!aR(c)&&YFe(d,!!(c.flags&33554432))&&ts.add(_)}),n.isDeclarationFile||Cgt()}),V.importsNotUsedAsValues===2&&!n.isDeclarationFile&&sc(n)&&Yvt(n),zp(n)&&JFe(n),N1.length&&(Ue(N1,Lgt),Vo(N1)),C1.length&&(Ue(C1,kgt),Vo(C1)),fb.length&&(Ue(fb,Fgt),Vo(fb)),mb.length&&(Ue(mb,Bgt),Vo(mb)),a.flags|=1}}function QFe(n,a){try{return i=a,syt(n)}finally{i=void 0}}function Nbe(){for(const n of t)n();t=[]}function Cbe(n){Nbe();const a=r;r=c=>c(),oyt(n),r=a}function syt(n){if(n){Nbe();const a=ts.getGlobalDiagnostics(),c=a.length;Cbe(n);const d=ts.getDiagnostics(n.fileName),_=ts.getGlobalDiagnostics();if(_!==a){const y=Ine(a,_,KC);return So(y,d)}else if(c===0&&_.length>0)return So(_,d);return d}return Ue(e.getSourceFiles(),Cbe),ts.getDiagnostics()}function lyt(){return Nbe(),ts.getGlobalDiagnostics()}function cyt(n,a){if(n.flags&67108864)return[];const c=ua();let d=!1;return _(),c.delete("this"),Oge(c);function _(){for(;n;){switch(fh(n)&&n.locals&&!Mh(n)&&x(n.locals,a),n.kind){case 312:if(!sc(n))break;case 267:k(Ir(n).exports,a&2623475);break;case 266:x(Ir(n).exports,a&8);break;case 231:n.name&&y(n.symbol,a);case 263:case 264:d||x(Ob(Ir(n)),a&788968);break;case 218:n.name&&y(n.symbol,a);break}Pie(n)&&y(Gt,a),d=sa(n),n=n.parent}x(Se,a)}function y(z,H){if(LR(z)&H){const re=z.escapedName;c.has(re)||c.set(re,z)}}function x(z,H){H&&z.forEach(re=>{y(re,H)})}function k(z,H){H&&z.forEach(re=>{!fl(re,281)&&!fl(re,280)&&re.escapedName!=="default"&&y(re,H)})}}function uyt(n){return n.kind===80&&BR(n.parent)&&Mo(n.parent)===n}function ZFe(n){for(;n.parent.kind===166;)n=n.parent;return n.parent.kind===183}function dyt(n){for(;n.parent.kind===211;)n=n.parent;return n.parent.kind===233}function e7e(n,a){let c,d=su(n);for(;d&&!(c=a(d));)d=su(d);return c}function pyt(n){return!!Gn(n,a=>Ml(a)&&Yf(a.body)||Jo(a)?!0:ui(a)||Bs(a)?"quit":!1)}function Pbe(n,a){return!!e7e(n,c=>c===a)}function fyt(n){for(;n.parent.kind===166;)n=n.parent;if(n.parent.kind===271)return n.parent.moduleReference===n?n.parent:void 0;if(n.parent.kind===277)return n.parent.expression===n?n.parent:void 0}function xte(n){return fyt(n)!==void 0}function myt(n){switch(Bl(n.parent.parent)){case 1:case 3:return gf(n.parent);case 5:if(Fr(n.parent)&&kR(n.parent)===n)return;case 4:case 2:return Ir(n.parent.parent)}}function _yt(n){let a=n.parent;for(;xd(a);)n=a,a=a.parent;if(a&&a.kind===205&&a.qualifier===n)return a}function hyt(n){if(n.expression.kind===110){const a=Fd(n,!1,!1);if(ea(a)){const c=d3e(a);if(c){const d=EE(c,void 0),_=f3e(c,d);return _&&!Nt(_)}}}}function t7e(n){if(Bg(n))return gf(n.parent);if(lr(n)&&n.parent.kind===211&&n.parent===n.parent.parent.left&&!Ji(n)&&!R0(n)&&!hyt(n.parent)){const a=myt(n);if(a)return a}if(n.parent.kind===277&&Gl(n)){const a=Hs(n,2998271,!0);if(a&&a!==ft)return a}else if(Zd(n)&&xte(n)){const a=b0(n,271);return N.assert(a!==void 0),sx(n,!0)}if(Zd(n)){const a=_yt(n);if(a){Ei(a);const c=ei(n).resolvedSymbol;return c===ft?void 0:c}}for(;voe(n);)n=n.parent;if(dyt(n)){let a=0;n.parent.kind===233?(a=tg(n)?788968:111551,M3(n.parent)&&(a|=111551)):a=1920,a|=2097152;const c=Gl(n)?Hs(n,a,!0):void 0;if(c)return c}if(n.parent.kind===348)return tk(n.parent);if(n.parent.kind===168&&n.parent.parent.kind===352){N.assert(!lr(n));const a=Uie(n.parent);return a&&a.symbol}if(ng(n)){if(zl(n))return;const a=Gn(n,Ym(kA,IP,R0)),c=a?901119:111551;if(n.kind===80){if(_R(n)&&Tx(n)){const _=Xee(n.parent);return _===ft?void 0:_}const d=Hs(n,c,!0,!0,v0(n));if(!d&&a){const _=Gn(n,Ym(ui,hd));if(_)return CB(n,!0,Ir(_))}if(d&&a){const _=CS(n);if(_&&u1(_)&&_===d.valueDeclaration)return Hs(n,c,!0,!0,jn(_))||d}return d}else{if(Ji(n))return Qee(n);if(n.kind===211||n.kind===166){const d=ei(n);return d.resolvedSymbol?d.resolvedSymbol:(n.kind===211?(Yee(n,0),d.resolvedSymbol||(d.resolvedSymbol=n7e(nc(n.expression),vy(n.name)))):B3e(n,0),!d.resolvedSymbol&&a&&xd(n)?CB(n):d.resolvedSymbol)}else if(R0(n))return CB(n)}}else if(ZFe(n)){const a=n.parent.kind===183?788968:1920,c=Hs(n,a,!1,!0);return c&&c!==ft?c:QZ(n)}if(n.parent.kind===182)return Hs(n,1)}function n7e(n,a){const c=wge(n,a);if(c.length&&n.members){const d=XZ(__(n).members);if(c===yd(n))return d;if(d){const _=Xi(d),y=Hi(c,k=>k.declaration),x=wt(y,as).join(",");if(_.filteredIndexSymbolCache||(_.filteredIndexSymbolCache=new Map),_.filteredIndexSymbolCache.has(x))return _.filteredIndexSymbolCache.get(x);{const k=Xa(131072,"__index");return k.declarations=Hi(c,z=>z.declaration),k.parent=n.aliasSymbol?n.aliasSymbol:n.symbol?n.symbol:Hm(k.declarations[0].parent),_.filteredIndexSymbolCache.set(x,k),k}}}}function CB(n,a,c){if(Zd(n)){let x=Hs(n,901119,a,!0,v0(n));if(!x&&Ve(n)&&c&&(x=rs(Jd(Cp(c),n.escapedText,901119))),x)return x}const d=Ve(n)?c:CB(n.left,a,c),_=Ve(n)?n.escapedText:n.right.escapedText;if(d){const y=d.flags&111551&&ya(dr(d),"prototype"),x=y?dr(y):el(d);return ya(x,_)}}function Hm(n,a){if($i(n))return sc(n)?rs(n.symbol):void 0;const{parent:c}=n,d=c.parent;if(!(n.flags&67108864)){if(Mxe(n)){const _=Ir(c);return CA(n.parent)&&n.parent.propertyName===n?Sye(_):_}else if(ik(n))return Ir(c.parent);if(n.kind===80){if(xte(n))return t7e(n);if(c.kind===208&&d.kind===206&&n===c.propertyName){const _=Ix(d),y=ya(_,n.escapedText);if(y)return y}else if(vP(c)&&c.name===n)return c.keywordToken===105&&Sr(n)==="target"?Xye(c).symbol:c.keywordToken===102&&Sr(n)==="meta"?i6e().members.get("meta"):void 0}switch(n.kind){case 80:case 81:case 211:case 166:if(!VA(n))return t7e(n);case 110:const _=Fd(n,!1,!1);if(ea(_)){const k=fm(_);if(k.thisParameter)return k.thisParameter}if(s3(n))return mo(n).symbol;case 197:return lee(n).symbol;case 108:return mo(n).symbol;case 137:const y=n.parent;return y&&y.kind===176?y.parent.symbol:void 0;case 11:case 15:if(h0(n.parent.parent)&&xC(n.parent.parent)===n||(n.parent.kind===272||n.parent.kind===278)&&n.parent.moduleSpecifier===n||lr(n)&&Ad(n.parent,!1)||Bp(n.parent)||Zy(n.parent)&&Vy(n.parent.parent)&&n.parent.parent.argument===n.parent)return vd(n,n,a);if(la(c)&&DS(c)&&c.arguments[1]===n)return Ir(c);case 9:const x=Qs(c)?c.argumentExpression===n?Ru(c.expression):void 0:Zy(c)&&jS(d)?Ei(d.objectType):void 0;return x&&ya(x,hl(n.text));case 90:case 100:case 39:case 86:return gf(n.parent);case 205:return Vy(n)?Hm(n.argument.literal,a):void 0;case 95:return kl(n.parent)?N.checkDefined(n.parent.symbol):void 0;case 102:case 105:return vP(n.parent)?TWe(n.parent).symbol:void 0;case 104:if(mr(n.parent)){const k=Ru(n.parent.right),z=ibe(k);return(z==null?void 0:z.symbol)??k.symbol}return;case 236:return mo(n).symbol;case 295:if(_R(n)&&Tx(n)){const k=Xee(n.parent);return k===ft?void 0:k}default:return}}}function gyt(n){if(Ve(n)&&Fr(n.parent)&&n.parent.name===n){const a=vy(n),c=Ru(n.parent.expression),d=c.flags&1048576?c.types:[c];return Pi(d,_=>nr(yd(_),y=>hx(a,y.keyType)))}}function vyt(n){if(n&&n.kind===304)return Hs(n.name,2208703)}function yyt(n){return Ku(n)?n.parent.parent.moduleSpecifier?av(n.parent.parent,n):Hs(n.propertyName||n.name,2998271):Hs(n,2998271)}function Ix(n){if($i(n)&&!sc(n)||n.flags&67108864)return _t;const a=EU(n),c=a&&Vf(Ir(a.class));if(tg(n)){const d=Ei(n);return c?Kp(d,c.thisType):d}if(ng(n))return r7e(n);if(c&&!a.isImplements){const d=Xc(Mp(c));return d?Kp(d,c.thisType):_t}if(BR(n)){const d=Ir(n);return el(d)}if(uyt(n)){const d=Hm(n);return d?el(d):_t}if(Qa(n))return VT(n,!0,0)||_t;if(Ju(n)){const d=Ir(n);return d?dr(d):_t}if(Mxe(n)){const d=Hm(n);return d?dr(d):_t}if(ta(n))return VT(n.parent,!0,0)||_t;if(xte(n)){const d=Hm(n);if(d){const _=el(d);return Kt(_)?dr(d):_}}return vP(n.parent)&&n.parent.keywordToken===n.kind?TWe(n.parent):mI(n)?Yge(!1):_t}function Rte(n){if(N.assert(n.kind===210||n.kind===209),n.parent.kind===250){const _=xB(n.parent);return uA(n,_||_t)}if(n.parent.kind===226){const _=Ru(n.parent.right);return uA(n,_||_t)}if(n.parent.kind===303){const _=aa(n.parent.parent,Oa),y=Rte(_)||_t,x=sR(_.properties,n.parent);return BWe(_,y,x)}const a=aa(n.parent,_d),c=Rte(a)||_t,d=Sy(65,c,Oe,n.parent)||_t;return GWe(a,c,a.elements.indexOf(n),d)}function byt(n){const a=Rte(aa(n.parent.parent,gC));return a&&ya(a,n.escapedText)}function r7e(n){return VC(n)&&(n=n.parent),Ed(Ru(n))}function i7e(n){const a=gf(n.parent);return sa(n)?dr(a):el(a)}function o7e(n){const a=n.name;switch(a.kind){case 80:return Xd(Sr(a));case 9:case 11:return Xd(a.text);case 167:const c=Rg(a);return xu(c,12288)?c:ke;default:return N.fail("Unsupported property name.")}}function Mbe(n){n=kd(n);const a=ua(gs(n)),c=Yo(n,0).length?Jn:Yo(n,1).length?yo:void 0;return c&&Ue(gs(c),d=>{a.has(d.escapedName)||a.set(d.escapedName,d)}),nE(a)}function Dte(n){return Yo(n,0).length!==0||Yo(n,1).length!==0}function a7e(n){const a=Eyt(n);return a?Pi(a,a7e):[n]}function Eyt(n){if(xl(n)&6)return Hi(Xi(n).containingType.types,a=>ya(a,n.escapedName));if(n.flags&33554432){const{links:{leftSpread:a,rightSpread:c,syntheticOrigin:d}}=n;return a?[a,c]:d?[d]:AA(Syt(n))}}function Syt(n){let a,c=n;for(;c=Xi(c).target;)a=c;return a}function Tyt(n){if(sl(n))return!1;const a=Do(n,Ve);if(!a)return!1;const c=a.parent;return c?!((Fr(c)||hc(c))&&c.name===a)&&d6(a)===Gt:!1}function Ayt(n){let a=vd(n.parent,n);if(!a||EC(a))return!0;const c=fy(a);a=Np(a);const d=Xi(a);return d.exportsSomeValue===void 0&&(d.exportsSomeValue=c?!!(a.flags&111551):Gc(kh(a),_)),d.exportsSomeValue;function _(y){return y=jl(y),y&&!!(Au(y)&111551)}}function Iyt(n){return SL(n.parent)&&n===n.parent.name}function xyt(n,a){var c;const d=Do(n,Ve);if(d){let _=d6(d,Iyt(d));if(_){if(_.flags&1048576){const x=rs(_.exportSymbol);if(!a&&x.flags&944&&!(x.flags&3))return;_=x}const y=Pd(_);if(y){if(y.flags&512&&((c=y.valueDeclaration)==null?void 0:c.kind)===312){const x=y.valueDeclaration,k=jn(d);return x!==k?void 0:x}return Gn(d.parent,x=>SL(x)&&Ir(x)===y)}}}}function Ryt(n){const a=Dae(n);if(a)return a;const c=Do(n,Ve);if(c){const d=Byt(c);if(PT(d,111551)&&!Ff(d,111551))return Fm(d)}}function Dyt(n){return n.valueDeclaration&&Qa(n.valueDeclaration)&&$x(n.valueDeclaration).parent.kind===299}function s7e(n){if(n.flags&418&&n.valueDeclaration&&!$i(n.valueDeclaration)){const a=Xi(n);if(a.isDeclarationWithCollidingName===void 0){const c=hh(n.valueDeclaration);if(uie(c)||Dyt(n)){const d=ei(n.valueDeclaration);if(bl(c.parent,n.escapedName,111551,void 0,void 0,!1))a.isDeclarationWithCollidingName=!0;else if(d.flags&16384){const _=d.flags&32768,y=Wy(c,!1),x=c.kind===241&&Wy(c.parent,!1);a.isDeclarationWithCollidingName=!gie(c)&&(!_||!y&&!x)}else a.isDeclarationWithCollidingName=!1}}return a.isDeclarationWithCollidingName}return!1}function Nyt(n){if(!sl(n)){const a=Do(n,Ve);if(a){const c=d6(a);if(c&&s7e(c))return c.valueDeclaration}}}function Cyt(n){const a=Do(n,Ju);if(a){const c=Ir(a);if(c)return s7e(c)}return!1}function l7e(n){switch(N.assert(It),n.kind){case 271:return Nte(Ir(n));case 273:case 274:case 276:case 281:const a=Ir(n);return!!a&&Nte(a,!0);case 278:const c=n.exportClause;return!!c&&(Th(c)||bt(c.elements,l7e));case 277:return n.expression&&n.expression.kind===80?Nte(Ir(n),!0):!0}return!1}function Pyt(n){const a=Do(n,tu);return a===void 0||a.parent.kind!==312||!hR(a)?!1:Nte(Ir(a))&&a.moduleReference&&!zl(a.moduleReference)}function Nte(n,a){if(!n)return!1;const c=vf(Fc(n));return c===ft?!a||!Ff(n):!!(Au(n,a,!0)&111551)&&(e1(V)||!u6(c))}function u6(n){return rbe(n)||!!n.constEnumOnlyModule}function Cte(n,a){if(N.assert(It),yb(n)){const c=Ir(n),d=c&&Xi(c);if(d!=null&&d.referenced)return!0;const _=Xi(c).aliasTarget;if(_&&pd(n)&32&&Au(_)&111551&&(e1(V)||!u6(_)))return!0}return a?!!Ho(n,c=>Cte(c,a)):!1}function c7e(n){if(Yf(n.body)){if(Fy(n)||Fv(n))return!1;const a=Ir(n),c=H1(a);return c.length>1||c.length===1&&c[0].declaration!==n}return!1}function u7e(n){return!!Y&&!N8(n)&&!r_(n)&&!!n.initializer&&!Zr(n,31)}function Myt(n){return Y&&N8(n)&&!n.initializer&&Zr(n,31)}function Lyt(n){const a=Do(n,Ac);if(!a)return!1;const c=Ir(a);return!c||!(c.flags&16)?!1:!!Gc(Cp(c),d=>d.flags&111551&&lW(d.valueDeclaration))}function kyt(n){const a=Do(n,Ac);if(!a)return et;const c=Ir(a);return c&&gs(dr(c))||et}function VN(n){var a;const c=n.id||0;return c<0||c>=D1.length?0:((a=D1[c])==null?void 0:a.flags)||0}function jN(n){return jFe(n.parent),ei(n).enumMemberValue}function d7e(n){switch(n.kind){case 306:case 211:case 212:return!0}return!1}function Lbe(n){if(n.kind===306)return jN(n);const a=ei(n).resolvedSymbol;if(a&&a.flags&8){const c=a.valueDeclaration;if(FE(c.parent))return jN(c)}}function kbe(n){return!!(n.flags&524288)&&Yo(n,0).length>0}function wyt(n,a){var c;const d=Do(n,Zd);if(!d||a&&(a=Do(a),!a))return 0;let _=!1;if(xd(d)){const re=Hs(Vp(d),111551,!0,!0,a);_=!!((c=re==null?void 0:re.declarations)!=null&&c.every(m0))}const y=Hs(d,111551,!0,!0,a),x=y&&y.flags&2097152?Fc(y):y;_||(_=!!(y&&Ff(y,111551)));const k=Hs(d,788968,!0,!0,a),z=k&&k.flags&2097152?Fc(k):k;if(y||_||(_=!!(k&&Ff(k,788968))),x&&x===z){const re=$ge(!1);if(re&&x===re)return 9;const be=dr(x);if(be&&is(be))return _?10:1}if(!z)return _?11:0;const H=el(z);return Kt(H)?_?11:0:H.flags&3?11:xu(H,245760)?2:xu(H,528)?6:xu(H,296)?3:xu(H,2112)?4:xu(H,402653316)?5:Ba(H)?7:xu(H,12288)?8:kbe(H)?10:qf(H)?7:11}function Oyt(n,a,c,d,_){const y=Do(n,Die);if(!y)return w.createToken(133);const x=Ir(y);let k=x&&!(x.flags&133120)?Q1(dr(x)):_t;return k.flags&8192&&k.symbol===x&&(c|=1048576),_&&(k=qb(k)),At.typeToTypeNode(k,a,c|1024,d)}function Wyt(n,a,c,d){const _=Do(n,ea);if(!_)return w.createToken(133);const y=fm(_);return At.typeToTypeNode(ps(y),a,c|1024,d)}function Fyt(n,a,c,d){const _=Do(n,yt);if(!_)return w.createToken(133);const y=Xp(r7e(_));return At.typeToTypeNode(y,a,c|1024,d)}function zyt(n){return Se.has(hl(n))}function d6(n,a){const c=ei(n).resolvedSymbol;if(c)return c;let d=n;if(a){const _=n.parent;Ju(_)&&n===_.name&&(d=Q(_))}return bl(d,n.escapedText,3257279,void 0,void 0,!0)}function Byt(n){const a=ei(n).resolvedSymbol;return a&&a!==ft?a:bl(n,n.escapedText,3257279,void 0,void 0,!0,void 0,void 0)}function Gyt(n){if(!sl(n)){const a=Do(n,Ve);if(a){const c=d6(a);if(c)return vf(c).valueDeclaration}}}function Vyt(n){if(!sl(n)){const a=Do(n,Ve);if(a){const c=d6(a);if(c)return nr(vf(c).declarations,d=>{switch(d.kind){case 260:case 169:case 208:case 172:case 303:case 304:case 306:case 210:case 262:case 218:case 219:case 263:case 231:case 266:case 174:case 177:case 178:case 267:return!0}return!1})}}}function jyt(n){return K4(n)||wi(n)&&MB(n)?X1(dr(Ir(n))):!1}function Uyt(n,a,c){const d=n.flags&1056?At.symbolToExpression(n.symbol,111551,a,void 0,c):n===Bn?w.createTrue():n===en&&w.createFalse();if(d)return d;const _=n.value;return typeof _=="object"?w.createBigIntLiteral(_):typeof _=="string"?w.createStringLiteral(_):_<0?w.createPrefixUnaryExpression(41,w.createNumericLiteral(-_)):w.createNumericLiteral(_)}function Hyt(n,a){const c=dr(Ir(n));return Uyt(c,n,a)}function p7e(n){return n?(J0(n),jn(n).localJsxFactory||nv):nv}function wbe(n){if(n){const a=jn(n);if(a){if(a.localJsxFragmentFactory)return a.localJsxFragmentFactory;const c=a.pragmas.get("jsxfrag"),d=To(c)?c[0]:c;if(d)return a.localJsxFragmentFactory=bI(d.arguments.factory,se),a.localJsxFragmentFactory}}if(V.jsxFragmentFactory)return bI(V.jsxFragmentFactory,se)}function qyt(){const n=e.getResolvedTypeReferenceDirectives();let a;return n&&(a=new Map,n.forEach(({resolvedTypeReferenceDirective:z},H,re)=>{if(!(z!=null&&z.resolvedFileName))return;const be=e.getSourceFile(z.resolvedFileName);be&&k(be,H,re)})),{getReferencedExportContainer:xyt,getReferencedImportDeclaration:Ryt,getReferencedDeclarationWithCollidingName:Nyt,isDeclarationWithCollidingName:Cyt,isValueAliasDeclaration:z=>{const H=Do(z);return H&&It?l7e(H):!0},hasGlobalName:zyt,isReferencedAliasDeclaration:(z,H)=>{const re=Do(z);return re&&It?Cte(re,H):!0},getNodeCheckFlags:z=>{const H=Do(z);return H?VN(H):0},isTopLevelValueImportEqualsWithEntityName:Pyt,isDeclarationVisible:d_,isImplementationOfOverload:c7e,isRequiredInitializedParameter:u7e,isOptionalUninitializedParameterProperty:Myt,isExpandoFunctionDeclaration:Lyt,getPropertiesOfContainerFunction:kyt,createTypeOfDeclaration:Oyt,createReturnTypeOfSignatureDeclaration:Wyt,createTypeOfExpression:Fyt,createLiteralConstValue:Hyt,isSymbolAccessible:ki,isEntityNameVisible:xb,getConstantValue:z=>{const H=Do(z,d7e);return H?Lbe(H):void 0},collectLinkedAliases:O2,getReferencedValueDeclaration:Gyt,getReferencedValueDeclarations:Vyt,getTypeReferenceSerializationKind:wyt,isOptionalParameter:N8,moduleExportsSomeValue:Ayt,isArgumentsLocalBinding:Tyt,getExternalModuleFileFromDeclaration:z=>{const H=Do(z,yie);return H&&Obe(H)},getTypeReferenceDirectivesForEntityName:_,getTypeReferenceDirectivesForSymbol:y,isLiteralConstDeclaration:jyt,isLateBound:z=>{const H=Do(z,Ju),re=H&&Ir(H);return!!(re&&xl(re)&4096)},getJsxFactoryEntity:p7e,getJsxFragmentFactoryEntity:wbe,getAllAccessorDeclarations(z){z=Do(z,T4);const H=z.kind===178?177:178,re=fl(Ir(z),H),be=re&&re.pos<z.pos?re:z,ge=re&&re.pos<z.pos?z:re,Ke=z.kind===178?z:re,gt=z.kind===177?z:re;return{firstAccessor:be,secondAccessor:ge,setAccessor:Ke,getAccessor:gt}},getSymbolOfExternalModuleSpecifier:z=>sv(z,z,void 0),isBindingCapturedByNode:(z,H)=>{const re=Do(z),be=Do(H);return!!re&&!!be&&(wi(be)||Qa(be))&&hft(re,be)},getDeclarationStatementsForSourceFile:(z,H,re,be)=>{const ge=Do(z);N.assert(ge&&ge.kind===312,"Non-sourcefile node passed into getDeclarationsForSourceFile");const Ke=Ir(z);return Ke?Ke.exports?At.symbolTableToDeclarationStatements(Ke.exports,z,H,re,be):[]:z.locals?At.symbolTableToDeclarationStatements(z.locals,z,H,re,be):[]},isImportRequiredByAugmentation:c,tryFindAmbientModule:z=>{const H=Do(z),re=H&&ls(H)?H.text:void 0;return re!==void 0?qZ(re,!0):void 0}};function c(z){const H=jn(z);if(!H.symbol)return!1;const re=Obe(z);if(!re||re===H)return!1;const be=kh(H.symbol);for(const ge of zo(be.values()))if(ge.mergeId){const Ke=rs(ge);if(Ke.declarations){for(const gt of Ke.declarations)if(jn(gt)===re)return!0}}return!1}function d(z){return z.parent&&z.parent.kind===233&&z.parent.parent&&z.parent.parent.kind===298}function _(z){if(!a)return;let H;z.parent.kind===167?H=1160127:(H=790504,(z.kind===80&&kS(z)||z.kind===211&&!d(z))&&(H=1160127));const re=Hs(z,H,!0);return re&&re!==ft?y(re,H):void 0}function y(z,H){if(!a||!x(z))return;let re;for(const be of z.declarations)if(be.symbol&&be.symbol.flags&H){const ge=jn(be),Ke=a.get(ge.path);if(Ke)(re||(re=[])).push(Ke);else return}return re}function x(z){if(!z.declarations)return!1;let H=z;for(;;){const re=Pd(H);if(re)H=re;else break}if(H.valueDeclaration&&H.valueDeclaration.kind===312&&H.flags&512)return!1;for(const re of z.declarations){const be=jn(re);if(a.has(be.path))return!0}return!1}function k(z,H,re){if(!a.has(z.path)){a.set(z.path,[H,re]);for(const{fileName:be}of z.referencedFiles){const ge=b7(be,z.fileName),Ke=e.getSourceFile(ge);Ke&&k(Ke,H,re||z.impliedNodeFormat)}}}}function Obe(n){const a=n.kind===267?ii(n.name,Ma):yR(n),c=sv(a,a,void 0);if(c)return fl(c,312)}function Jyt(){for(const a of e.getSourceFiles())sle(a,V);Ss=new Map;let n;for(const a of e.getSourceFiles())if(!a.redirectInfo){if(!zp(a)){const c=a.locals.get("globalThis");if(c!=null&&c.declarations)for(const d of c.declarations)ts.add(wr(d,f.Declaration_name_conflicts_with_built_in_global_identifier_0,"globalThis"));c_(Se,a.locals)}a.jsGlobalAugmentations&&c_(Se,a.jsGlobalAugmentations),a.patternAmbientModules&&a.patternAmbientModules.length&&(cm=So(cm,a.patternAmbientModules)),a.moduleAugmentations.length&&(n||(n=[])).push(a.moduleAugmentations),a.symbol&&a.symbol.globalExports&&a.symbol.globalExports.forEach((d,_)=>{Se.has(_)||Se.set(_,d)})}if(n)for(const a of n)for(const c of a)R_(c.parent)&&iN(c);if(P1(Se,yT,f.Declaration_name_conflicts_with_built_in_global_identifier_0),Xi(je).type=Lt,Xi(Gt).type=tc("IArguments",0,!0),Xi(ft).type=_t,Xi(at).type=zf(16,at),Qo=tc("Array",1,!0),Ce=tc("Object",0,!0),Wt=tc("Function",0,!0),Jn=fe&&tc("CallableFunction",0,!0)||Wt,yo=fe&&tc("NewableFunction",0,!0)||Wt,Zl=tc("String",0,!0),yc=tc("Number",0,!0),dl=tc("Boolean",0,!0),yl=tc("RegExp",0,!0),ec=Vu(j),Jc=Vu(ot),Jc===La&&(Jc=Ls(void 0,K,et,et,et)),na=u6e("ReadonlyArray",1)||Qo,ff=na?M8(na,[j]):ec,Vl=u6e("ThisType",1),n)for(const a of n)for(const c of a)R_(c.parent)||iN(c);Ss.forEach(({firstFile:a,secondFile:c,conflictingSymbols:d})=>{if(d.size<8)d.forEach(({isBlockScoped:_,firstFileLocations:y,secondFileLocations:x},k)=>{const z=_?f.Cannot_redeclare_block_scoped_variable_0:f.Duplicate_identifier_0;for(const H of y)rv(H,z,k,x);for(const H of x)rv(H,z,k,y)});else{const _=zo(d.keys()).join(", ");ts.add(wa(wr(a,f.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,_),wr(c,f.Conflicts_are_in_this_file))),ts.add(wa(wr(c,f.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,_),wr(a,f.Conflicts_are_in_this_file)))}}),Ss=void 0}function Nc(n,a){if((s&a)!==a&&V.importHelpers){const c=jn(n);if(wA(c,V)&&!(n.flags&33554432)){const d=Xyt(c,n);if(d!==ft){const _=a&~s;for(let y=1;y<=33554432;y<<=1)if(_&y)for(const x of Kyt(y)){if(o.has(x))continue;o.add(x);const k=jl(Jd(kh(d),hl(x),111551));k?y&524288?bt(H1(k),z=>Yp(z)>3)||Je(n,f.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,Ky,x,4):y&1048576?bt(H1(k),z=>Yp(z)>4)||Je(n,f.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,Ky,x,5):y&1024&&(bt(H1(k),z=>Yp(z)>2)||Je(n,f.This_syntax_requires_an_imported_helper_named_1_with_2_parameters_which_is_not_compatible_with_the_one_in_0_Consider_upgrading_your_version_of_0,Ky,x,3)):Je(n,f.This_syntax_requires_an_imported_helper_named_1_which_does_not_exist_in_0_Consider_upgrading_your_version_of_0,Ky,x)}}s|=a}}}function Kyt(n){switch(n){case 1:return["__extends"];case 2:return["__assign"];case 4:return["__rest"];case 8:return ne?["__decorate"]:["__esDecorate","__runInitializers"];case 16:return["__metadata"];case 32:return["__param"];case 64:return["__awaiter"];case 128:return["__generator"];case 256:return["__values"];case 512:return["__read"];case 1024:return["__spreadArray"];case 2048:return["__await"];case 4096:return["__asyncGenerator"];case 8192:return["__asyncDelegator"];case 16384:return["__asyncValues"];case 32768:return["__exportStar"];case 65536:return["__importStar"];case 131072:return["__importDefault"];case 262144:return["__makeTemplateObject"];case 524288:return["__classPrivateFieldGet"];case 1048576:return["__classPrivateFieldSet"];case 2097152:return["__classPrivateFieldIn"];case 4194304:return["__createBinding"];case 8388608:return["__setFunctionName"];case 16777216:return["__propKey"];case 33554432:return["__addDisposableResource","__disposeResources"];default:return N.fail("Unrecognized helper")}}function Xyt(n,a){return l||(l=K_(n,Ky,f.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,a)||ft),l}function Ng(n){var a;const c=Qyt(n)||Yyt(n);if(c!==void 0)return c;if(Ao(n)&&JE(n))return hu(n,f.Neither_decorators_nor_modifiers_may_be_applied_to_this_parameters);const d=Ll(n)?n.declarationList.flags&7:0;let _,y,x,k,z,H=0,re=!1,be=!1;for(const ge of n.modifiers)if(Eu(ge)){if(a3(ne,n,n.parent,n.parent.parent)){if(ne&&(n.kind===177||n.kind===178)){const Ke=wS(n.parent.members,n);if(If(Ke.firstAccessor)&&n===Ke.secondAccessor)return hu(n,f.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}else return n.kind===174&&!Yf(n.body)?hu(n,f.A_decorator_can_only_decorate_a_method_implementation_not_an_overload):hu(n,f.Decorators_are_not_valid_here);if(H&-34849)return En(ge,f.Decorators_are_not_valid_here);if(be&&H&98303){N.assertIsDefined(z);const Ke=jn(ge);return iS(Ke)?!1:(wa(Je(ge,f.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),wr(z,f.Decorator_used_before_export_here)),!0)}H|=32768,H&98303?H&32&&(re=!0):be=!0,z??(z=ge)}else{if(ge.kind!==148){if(n.kind===171||n.kind===173)return En(ge,f._0_modifier_cannot_appear_on_a_type_member,fa(ge.kind));if(n.kind===181&&(ge.kind!==126||!ui(n.parent)))return En(ge,f._0_modifier_cannot_appear_on_an_index_signature,fa(ge.kind))}if(ge.kind!==103&&ge.kind!==147&&ge.kind!==87&&n.kind===168)return En(ge,f._0_modifier_cannot_appear_on_a_type_parameter,fa(ge.kind));switch(ge.kind){case 87:{if(n.kind!==266&&n.kind!==168)return En(n,f.A_class_member_cannot_have_the_0_keyword,fa(87));const Dt=sm(n.parent)&&y0(n.parent)||n.parent;if(n.kind===168&&!(Bs(Dt)||ui(Dt)||Eh(Dt)||HR(Dt)||sI(Dt)||Jk(Dt)||bh(Dt)))return En(ge,f._0_modifier_can_only_appear_on_a_type_parameter_of_a_function_method_or_class,fa(ge.kind));break}case 164:if(H&16)return En(ge,f._0_modifier_already_seen,"override");if(H&128)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"override","declare");if(H&8)return En(ge,f._0_modifier_must_precede_1_modifier,"override","readonly");if(H&512)return En(ge,f._0_modifier_must_precede_1_modifier,"override","accessor");if(H&1024)return En(ge,f._0_modifier_must_precede_1_modifier,"override","async");H|=16,k=ge;break;case 125:case 124:case 123:const Ke=GT(UA(ge.kind));if(H&7)return En(ge,f.Accessibility_modifier_already_seen);if(H&16)return En(ge,f._0_modifier_must_precede_1_modifier,Ke,"override");if(H&256)return En(ge,f._0_modifier_must_precede_1_modifier,Ke,"static");if(H&512)return En(ge,f._0_modifier_must_precede_1_modifier,Ke,"accessor");if(H&8)return En(ge,f._0_modifier_must_precede_1_modifier,Ke,"readonly");if(H&1024)return En(ge,f._0_modifier_must_precede_1_modifier,Ke,"async");if(n.parent.kind===268||n.parent.kind===312)return En(ge,f._0_modifier_cannot_appear_on_a_module_or_namespace_element,Ke);if(H&64)return ge.kind===123?En(ge,f._0_modifier_cannot_be_used_with_1_modifier,Ke,"abstract"):En(ge,f._0_modifier_must_precede_1_modifier,Ke,"abstract");if(cd(n))return En(ge,f.An_accessibility_modifier_cannot_be_used_with_a_private_identifier);H|=UA(ge.kind);break;case 126:if(H&256)return En(ge,f._0_modifier_already_seen,"static");if(H&8)return En(ge,f._0_modifier_must_precede_1_modifier,"static","readonly");if(H&1024)return En(ge,f._0_modifier_must_precede_1_modifier,"static","async");if(H&512)return En(ge,f._0_modifier_must_precede_1_modifier,"static","accessor");if(n.parent.kind===268||n.parent.kind===312)return En(ge,f._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static");if(n.kind===169)return En(ge,f._0_modifier_cannot_appear_on_a_parameter,"static");if(H&64)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(H&16)return En(ge,f._0_modifier_must_precede_1_modifier,"static","override");H|=256,_=ge;break;case 129:if(H&512)return En(ge,f._0_modifier_already_seen,"accessor");if(H&8)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"accessor","readonly");if(H&128)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"accessor","declare");if(n.kind!==172)return En(ge,f.accessor_modifier_can_only_appear_on_a_property_declaration);H|=512;break;case 148:if(H&8)return En(ge,f._0_modifier_already_seen,"readonly");if(n.kind!==172&&n.kind!==171&&n.kind!==181&&n.kind!==169)return En(ge,f.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature);if(H&512)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"readonly","accessor");H|=8;break;case 95:if(V.verbatimModuleSyntax&&!(n.flags&33554432)&&n.kind!==265&&n.kind!==264&&n.kind!==267&&n.parent.kind===312&&(G===1||jn(n).impliedNodeFormat===1))return En(ge,f.A_top_level_export_modifier_cannot_be_used_on_value_declarations_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(H&32)return En(ge,f._0_modifier_already_seen,"export");if(H&128)return En(ge,f._0_modifier_must_precede_1_modifier,"export","declare");if(H&64)return En(ge,f._0_modifier_must_precede_1_modifier,"export","abstract");if(H&1024)return En(ge,f._0_modifier_must_precede_1_modifier,"export","async");if(ui(n.parent))return En(ge,f._0_modifier_cannot_appear_on_class_elements_of_this_kind,"export");if(n.kind===169)return En(ge,f._0_modifier_cannot_appear_on_a_parameter,"export");if(d===4)return En(ge,f._0_modifier_cannot_appear_on_a_using_declaration,"export");if(d===6)return En(ge,f._0_modifier_cannot_appear_on_an_await_using_declaration,"export");H|=32;break;case 90:const gt=n.parent.kind===312?n.parent:n.parent.parent;if(gt.kind===267&&!ku(gt))return En(ge,f.A_default_export_can_only_be_used_in_an_ECMAScript_style_module);if(d===4)return En(ge,f._0_modifier_cannot_appear_on_a_using_declaration,"default");if(d===6)return En(ge,f._0_modifier_cannot_appear_on_an_await_using_declaration,"default");if(H&32){if(re)return En(z,f.Decorators_are_not_valid_here)}else return En(ge,f._0_modifier_must_precede_1_modifier,"export","default");H|=2048;break;case 138:if(H&128)return En(ge,f._0_modifier_already_seen,"declare");if(H&1024)return En(ge,f._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(H&16)return En(ge,f._0_modifier_cannot_be_used_in_an_ambient_context,"override");if(ui(n.parent)&&!Jo(n))return En(ge,f._0_modifier_cannot_appear_on_class_elements_of_this_kind,"declare");if(n.kind===169)return En(ge,f._0_modifier_cannot_appear_on_a_parameter,"declare");if(d===4)return En(ge,f._0_modifier_cannot_appear_on_a_using_declaration,"declare");if(d===6)return En(ge,f._0_modifier_cannot_appear_on_an_await_using_declaration,"declare");if(n.parent.flags&33554432&&n.parent.kind===268)return En(ge,f.A_declare_modifier_cannot_be_used_in_an_already_ambient_context);if(cd(n))return En(ge,f._0_modifier_cannot_be_used_with_a_private_identifier,"declare");if(H&512)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"declare","accessor");H|=128,y=ge;break;case 128:if(H&64)return En(ge,f._0_modifier_already_seen,"abstract");if(n.kind!==263&&n.kind!==185){if(n.kind!==174&&n.kind!==172&&n.kind!==177&&n.kind!==178)return En(ge,f.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration);if(!(n.parent.kind===263&&Zr(n.parent,64))){const Dt=n.kind===172?f.Abstract_properties_can_only_appear_within_an_abstract_class:f.Abstract_methods_can_only_appear_within_an_abstract_class;return En(ge,Dt)}if(H&256)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"static","abstract");if(H&2)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"private","abstract");if(H&1024&&x)return En(x,f._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");if(H&16)return En(ge,f._0_modifier_must_precede_1_modifier,"abstract","override");if(H&512)return En(ge,f._0_modifier_must_precede_1_modifier,"abstract","accessor")}if(ld(n)&&n.name.kind===81)return En(ge,f._0_modifier_cannot_be_used_with_a_private_identifier,"abstract");H|=64;break;case 134:if(H&1024)return En(ge,f._0_modifier_already_seen,"async");if(H&128||n.parent.flags&33554432)return En(ge,f._0_modifier_cannot_be_used_in_an_ambient_context,"async");if(n.kind===169)return En(ge,f._0_modifier_cannot_appear_on_a_parameter,"async");if(H&64)return En(ge,f._0_modifier_cannot_be_used_with_1_modifier,"async","abstract");H|=1024,x=ge;break;case 103:case 147:{const Dt=ge.kind===103?8192:16384,an=ge.kind===103?"in":"out",cn=sm(n.parent)&&(y0(n.parent)||An((a=SR(n.parent))==null?void 0:a.tags,YS))||n.parent;if(n.kind!==168||cn&&!(hd(cn)||ui(cn)||Nm(cn)||YS(cn)))return En(ge,f._0_modifier_can_only_appear_on_a_type_parameter_of_a_class_interface_or_type_alias,an);if(H&Dt)return En(ge,f._0_modifier_already_seen,an);if(Dt&8192&&H&16384)return En(ge,f._0_modifier_must_precede_1_modifier,"in","out");H|=Dt;break}}}return n.kind===176?H&256?En(_,f._0_modifier_cannot_appear_on_a_constructor_declaration,"static"):H&16?En(k,f._0_modifier_cannot_appear_on_a_constructor_declaration,"override"):H&1024?En(x,f._0_modifier_cannot_appear_on_a_constructor_declaration,"async"):!1:(n.kind===272||n.kind===271)&&H&128?En(y,f.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare"):n.kind===169&&H&31&&ta(n.name)?En(n,f.A_parameter_property_may_not_be_declared_using_a_binding_pattern):n.kind===169&&H&31&&n.dotDotDotToken?En(n,f.A_parameter_property_cannot_be_declared_using_a_rest_parameter):H&1024?ebt(n,x):!1}function Yyt(n){if(!n.modifiers)return!1;const a=$yt(n);return a&&hu(a,f.Modifiers_cannot_appear_here)}function Pte(n,a){const c=An(n.modifiers,xa);return c&&c.kind!==a?c:void 0}function $yt(n){switch(n.kind){case 177:case 178:case 176:case 172:case 171:case 174:case 173:case 181:case 267:case 272:case 271:case 278:case 277:case 218:case 219:case 169:case 168:return;case 175:case 303:case 304:case 270:case 282:return An(n.modifiers,xa);default:if(n.parent.kind===268||n.parent.kind===312)return;switch(n.kind){case 262:return Pte(n,134);case 263:case 185:return Pte(n,128);case 231:case 264:case 265:return An(n.modifiers,xa);case 243:return n.declarationList.flags&4?Pte(n,135):An(n.modifiers,xa);case 266:return Pte(n,87);default:N.assertNever(n)}}}function Qyt(n){const a=Zyt(n);return a&&hu(a,f.Decorators_are_not_valid_here)}function Zyt(n){return ZH(n)?An(n.modifiers,Eu):void 0}function ebt(n,a){switch(n.kind){case 174:case 262:case 218:case 219:return!1}return En(a,f._0_modifier_cannot_be_used_here,"async")}function xx(n,a=f.Trailing_comma_not_allowed){return n&&n.hasTrailingComma?oS(n[0],n.end-1,1,a):!1}function f7e(n,a){if(n&&n.length===0){const c=n.pos-1,d=ka(a.text,n.end)+1;return oS(a,c,d-c,f.Type_parameter_list_cannot_be_empty)}return!1}function tbt(n){let a=!1;const c=n.length;for(let d=0;d<c;d++){const _=n[d];if(_.dotDotDotToken){if(d!==c-1)return En(_.dotDotDotToken,f.A_rest_parameter_must_be_last_in_a_parameter_list);if(_.flags&33554432||xx(n,f.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),_.questionToken)return En(_.questionToken,f.A_rest_parameter_cannot_be_optional);if(_.initializer)return En(_.name,f.A_rest_parameter_cannot_have_an_initializer)}else if(N8(_)){if(a=!0,_.questionToken&&_.initializer)return En(_.name,f.Parameter_cannot_have_question_mark_and_initializer)}else if(a&&!_.initializer)return En(_.name,f.A_required_parameter_cannot_follow_an_optional_parameter)}}function nbt(n){return nr(n,a=>!!a.initializer||ta(a.name)||Zh(a))}function rbt(n){if(se>=3){const a=n.body&&Xo(n.body)&&XH(n.body.statements);if(a){const c=nbt(n.parameters);if(Me(c)){Ue(c,_=>{wa(Je(_,f.This_parameter_is_not_allowed_with_use_strict_directive),wr(a,f.use_strict_directive_used_here))});const d=c.map((_,y)=>y===0?wr(_,f.Non_simple_parameter_declared_here):wr(_,f.and_here));return wa(Je(a,f.use_strict_directive_cannot_be_used_with_non_simple_parameter_list),...d),!0}}}return!1}function Mte(n){const a=jn(n);return Ng(n)||f7e(n.typeParameters,a)||tbt(n.parameters)||obt(n,a)||Bs(n)&&rbt(n)}function ibt(n){const a=jn(n);return ubt(n)||f7e(n.typeParameters,a)}function obt(n,a){if(!Gs(n))return!1;n.typeParameters&&!(Me(n.typeParameters)>1||n.typeParameters.hasTrailingComma||n.typeParameters[0].constraint)&&a&&Tc(a.fileName,[".mts",".cts"])&&En(n.typeParameters[0],f.This_syntax_is_reserved_in_files_with_the_mts_or_cts_extension_Add_a_trailing_comma_or_explicit_constraint);const{equalsGreaterThanToken:c}=n,d=bs(a,c.pos).line,_=bs(a,c.end).line;return d!==_&&En(c,f.Line_terminator_not_permitted_before_arrow)}function abt(n){const a=n.parameters[0];if(n.parameters.length!==1)return En(a?a.name:n,f.An_index_signature_must_have_exactly_one_parameter);if(xx(n.parameters,f.An_index_signature_cannot_have_a_trailing_comma),a.dotDotDotToken)return En(a.dotDotDotToken,f.An_index_signature_cannot_have_a_rest_parameter);if(C3(a))return En(a.name,f.An_index_signature_parameter_cannot_have_an_accessibility_modifier);if(a.questionToken)return En(a.questionToken,f.An_index_signature_parameter_cannot_have_a_question_mark);if(a.initializer)return En(a.name,f.An_index_signature_parameter_cannot_have_an_initializer);if(!a.type)return En(a.name,f.An_index_signature_parameter_must_have_a_type_annotation);const c=Ei(a.type);return Um(c,d=>!!(d.flags&8576))||CN(c)?En(a.name,f.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead):up(c,YZ)?n.type?!1:En(n,f.An_index_signature_must_have_a_type_annotation):En(a.name,f.An_index_signature_parameter_type_must_be_string_number_symbol_or_a_template_literal_type)}function sbt(n){return Ng(n)||abt(n)}function lbt(n,a){if(a&&a.length===0){const c=jn(n),d=a.pos-1,_=ka(c.text,a.end)+1;return oS(c,d,_-d,f.Type_argument_list_cannot_be_empty)}return!1}function PB(n,a){return xx(a)||lbt(n,a)}function cbt(n){return n.questionDotToken||n.flags&64?En(n.template,f.Tagged_template_expressions_are_not_permitted_in_an_optional_chain):!1}function m7e(n){const a=n.types;if(xx(a))return!0;if(a&&a.length===0){const c=fa(n.token);return oS(n,a.pos,0,f._0_list_cannot_be_empty,c)}return bt(a,_7e)}function _7e(n){return Kv(n)&&gP(n.expression)&&n.typeArguments?En(n,f.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments):PB(n,n.typeArguments)}function ubt(n){let a=!1,c=!1;if(!Ng(n)&&n.heritageClauses)for(const d of n.heritageClauses){if(d.token===96){if(a)return hu(d,f.extends_clause_already_seen);if(c)return hu(d,f.extends_clause_must_precede_implements_clause);if(d.types.length>1)return hu(d.types[1],f.Classes_can_only_extend_a_single_class);a=!0}else{if(N.assert(d.token===119),c)return hu(d,f.implements_clause_already_seen);c=!0}m7e(d)}}function dbt(n){let a=!1;if(n.heritageClauses)for(const c of n.heritageClauses){if(c.token===96){if(a)return hu(c,f.extends_clause_already_seen);a=!0}else return N.assert(c.token===119),hu(c,f.Interface_declaration_cannot_have_implements_clause);m7e(c)}return!1}function Lte(n){if(n.kind!==167)return!1;const a=n;return a.expression.kind===226&&a.expression.operatorToken.kind===28?En(a.expression,f.A_comma_expression_is_not_allowed_in_a_computed_property_name):!1}function Wbe(n){if(n.asteriskToken){if(N.assert(n.kind===262||n.kind===218||n.kind===174),n.flags&33554432)return En(n.asteriskToken,f.Generators_are_not_allowed_in_an_ambient_context);if(!n.body)return En(n.asteriskToken,f.An_overload_signature_cannot_be_declared_as_a_generator)}}function Fbe(n,a){return!!n&&En(n,a)}function h7e(n,a){return!!n&&En(n,a)}function pbt(n,a){const c=new Map;for(const d of n.properties){if(d.kind===305){if(a){const x=hs(d.expression);if(_d(x)||Oa(x))return En(d.expression,f.A_rest_element_cannot_contain_a_binding_pattern)}continue}const _=d.name;if(_.kind===167&&Lte(_),d.kind===304&&!a&&d.objectAssignmentInitializer&&En(d.equalsToken,f.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern),_.kind===81&&En(_,f.Private_identifiers_are_not_allowed_outside_class_bodies),Cm(d)&&d.modifiers)for(const x of d.modifiers)xa(x)&&(x.kind!==134||d.kind!==174)&&En(x,f._0_modifier_cannot_be_used_here,fc(x));else if(dse(d)&&d.modifiers)for(const x of d.modifiers)xa(x)&&En(x,f._0_modifier_cannot_be_used_here,fc(x));let y;switch(d.kind){case 304:case 303:h7e(d.exclamationToken,f.A_definite_assignment_assertion_is_not_permitted_in_this_context),Fbe(d.questionToken,f.An_object_member_cannot_be_declared_optional),_.kind===9&&Gbe(_),y=4;break;case 174:y=8;break;case 177:y=1;break;case 178:y=2;break;default:N.assertNever(d,"Unexpected syntax kind:"+d.kind)}if(!a){const x=Vbe(_);if(x===void 0)continue;const k=c.get(x);if(!k)c.set(x,y);else if(y&8&&k&8)En(_,f.Duplicate_identifier_0,fc(_));else if(y&4&&k&4)En(_,f.An_object_literal_cannot_have_multiple_properties_with_the_same_name,fc(_));else if(y&3&&k&3)if(k!==3&&y!==k)c.set(x,y|k);else return En(_,f.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name);else return En(_,f.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}function fbt(n){mbt(n.tagName),PB(n,n.typeArguments);const a=new Map;for(const c of n.attributes.properties){if(c.kind===293)continue;const{name:d,initializer:_}=c,y=sP(d);if(!a.get(y))a.set(y,!0);else return En(d,f.JSX_elements_cannot_have_multiple_attributes_with_the_same_name);if(_&&_.kind===294&&!_.expression)return En(_,f.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}function mbt(n){if(Fr(n)&&t_(n.expression))return En(n.expression,f.JSX_property_access_expressions_cannot_include_JSX_namespace_names);if(t_(n)&&q3(V)&&!DR(n.namespace.escapedText))return En(n,f.React_components_cannot_include_JSX_namespace_names)}function _bt(n){if(n.expression&&RP(n.expression))return En(n.expression,f.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array)}function g7e(n){if(Tv(n))return!0;if(n.kind===250&&n.awaitModifier&&!(n.flags&65536)){const a=jn(n);if(r3(n)){if(!iS(a))switch(wA(a,V)||ts.add(wr(n.awaitModifier,f.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module)),G){case 100:case 199:if(a.impliedNodeFormat===1){ts.add(wr(n.awaitModifier,f.The_current_file_is_a_CommonJS_module_and_cannot_use_await_at_the_top_level));break}case 7:case 99:case 4:if(se>=4)break;default:ts.add(wr(n.awaitModifier,f.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher));break}}else if(!iS(a)){const c=wr(n.awaitModifier,f.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules),d=Gp(n);if(d&&d.kind!==176){N.assert((Vc(d)&2)===0,"Enclosing function should never be an async function.");const _=wr(d,f.Did_you_mean_to_mark_this_function_as_async);wa(c,_)}return ts.add(c),!0}return!1}if(Qk(n)&&!(n.flags&65536)&&Ve(n.initializer)&&n.initializer.escapedText==="async")return En(n.initializer,f.The_left_hand_side_of_a_for_of_statement_may_not_be_async),!1;if(n.initializer.kind===261){const a=n.initializer;if(!Bbe(a)){const c=a.declarations;if(!c.length)return!1;if(c.length>1){const _=n.kind===249?f.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:f.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return hu(a.declarations[1],_)}const d=c[0];if(d.initializer){const _=n.kind===249?f.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:f.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return En(d.name,_)}if(d.type){const _=n.kind===249?f.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:f.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return En(d,_)}}}return!1}function hbt(n){if(!(n.flags&33554432)&&n.parent.kind!==187&&n.parent.kind!==264){if(se<1)return En(n.name,f.Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher);if(se<2&&Ji(n.name))return En(n.name,f.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(n.body===void 0&&!Zr(n,64))return oS(n,n.end-1,1,f._0_expected,"{")}if(n.body){if(Zr(n,64))return En(n,f.An_abstract_accessor_cannot_have_an_implementation);if(n.parent.kind===187||n.parent.kind===264)return En(n.body,f.An_implementation_cannot_be_declared_in_ambient_contexts)}if(n.typeParameters)return En(n.name,f.An_accessor_cannot_have_type_parameters);if(!gbt(n))return En(n.name,n.kind===177?f.A_get_accessor_cannot_have_parameters:f.A_set_accessor_must_have_exactly_one_parameter);if(n.kind===178){if(n.type)return En(n.name,f.A_set_accessor_cannot_have_a_return_type_annotation);const a=N.checkDefined(FC(n),"Return value does not match parameter count assertion.");if(a.dotDotDotToken)return En(a.dotDotDotToken,f.A_set_accessor_cannot_have_rest_parameter);if(a.questionToken)return En(a.questionToken,f.A_set_accessor_cannot_have_an_optional_parameter);if(a.initializer)return En(n.name,f.A_set_accessor_parameter_cannot_have_an_initializer)}return!1}function gbt(n){return zbe(n)||n.parameters.length===(n.kind===177?0:1)}function zbe(n){if(n.parameters.length===(n.kind===177?1:2))return qE(n)}function vbt(n){if(n.operator===158){if(n.type.kind!==155)return En(n.type,f._0_expected,fa(155));let a=nk(n.parent);if(lr(a)&&d1(a)){const c=CS(a);c&&(a=zA(c)||c)}switch(a.kind){case 260:const c=a;if(c.name.kind!==80)return En(n,f.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name);if(!TC(c))return En(n,f.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement);if(!(c.parent.flags&2))return En(a.name,f.A_variable_whose_type_is_a_unique_symbol_type_must_be_const);break;case 172:if(!sa(a)||!zC(a))return En(a.name,f.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly);break;case 171:if(!Zr(a,8))return En(a.name,f.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly);break;default:return En(n,f.unique_symbol_types_are_not_allowed_here)}}else if(n.operator===148&&n.type.kind!==188&&n.type.kind!==189)return hu(n,f.readonly_type_modifier_is_only_permitted_on_array_and_tuple_literal_types,fa(155))}function _M(n,a){if(Olt(n))return En(n,a)}function v7e(n){if(Mte(n))return!0;if(n.kind===174){if(n.parent.kind===210){if(n.modifiers&&!(n.modifiers.length===1&&Ha(n.modifiers).kind===134))return hu(n,f.Modifiers_cannot_appear_here);if(Fbe(n.questionToken,f.An_object_member_cannot_be_declared_optional))return!0;if(h7e(n.exclamationToken,f.A_definite_assignment_assertion_is_not_permitted_in_this_context))return!0;if(n.body===void 0)return oS(n,n.end-1,1,f._0_expected,"{")}if(Wbe(n))return!0}if(ui(n.parent)){if(se<2&&Ji(n.name))return En(n.name,f.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(n.flags&33554432)return _M(n.name,f.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(n.kind===174&&!n.body)return _M(n.name,f.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else{if(n.parent.kind===264)return _M(n.name,f.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type);if(n.parent.kind===187)return _M(n.name,f.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function ybt(n){let a=n;for(;a;){if(tR(a))return En(n,f.Jump_target_cannot_cross_function_boundary);switch(a.kind){case 256:if(n.label&&a.label.escapedText===n.label.escapedText)return n.kind===251&&!Wy(a.statement,!0)?En(n,f.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement):!1;break;case 255:if(n.kind===252&&!n.label)return!1;break;default:if(Wy(a,!1)&&!n.label)return!1;break}a=a.parent}if(n.label){const c=n.kind===252?f.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:f.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return En(n,c)}else{const c=n.kind===252?f.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:f.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return En(n,c)}}function bbt(n){if(n.dotDotDotToken){const a=n.parent.elements;if(n!==Ya(a))return En(n,f.A_rest_element_must_be_last_in_a_destructuring_pattern);if(xx(a,f.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma),n.propertyName)return En(n.name,f.A_rest_element_cannot_have_a_property_name)}if(n.dotDotDotToken&&n.initializer)return oS(n,n.initializer.pos-1,1,f.A_rest_element_cannot_have_an_initializer)}function y7e(n){return nf(n)||n.kind===224&&n.operator===41&&n.operand.kind===9}function Ebt(n){return n.kind===10||n.kind===224&&n.operator===41&&n.operand.kind===10}function Sbt(n){if((Fr(n)||Qs(n)&&y7e(n.argumentExpression))&&Gl(n.expression))return!!(nc(n).flags&1056)}function b7e(n){const a=n.initializer;if(a){const c=!(y7e(a)||Sbt(a)||a.kind===112||a.kind===97||Ebt(a));if((K4(n)||wi(n)&&MB(n))&&!n.type){if(c)return En(a,f.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}else return En(a,f.Initializers_are_not_allowed_in_ambient_contexts)}}function Tbt(n){const a=aS(n),c=a&7;if(ta(n.name))switch(c){case 6:return En(n,f._0_declarations_may_not_have_binding_patterns,"await using");case 4:return En(n,f._0_declarations_may_not_have_binding_patterns,"using")}if(n.parent.parent.kind!==249&&n.parent.parent.kind!==250){if(a&33554432)b7e(n);else if(!n.initializer){if(ta(n.name)&&!ta(n.parent))return En(n,f.A_destructuring_declaration_must_have_an_initializer);switch(c){case 6:return En(n,f._0_declarations_must_be_initialized,"await using");case 4:return En(n,f._0_declarations_must_be_initialized,"using");case 2:return En(n,f._0_declarations_must_be_initialized,"const")}}}if(n.exclamationToken&&(n.parent.parent.kind!==243||!n.type||n.initializer||a&33554432)){const d=n.initializer?f.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:n.type?f.A_definite_assignment_assertion_is_not_permitted_in_this_context:f.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return En(n.exclamationToken,d)}return(G<5||jn(n).impliedNodeFormat===1)&&G!==4&&!(n.parent.parent.flags&33554432)&&Zr(n.parent.parent,32)&&E7e(n.name),!!c&&S7e(n.name)}function E7e(n){if(n.kind===80){if(Sr(n)==="__esModule")return xbt("noEmit",n,f.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}else{const a=n.elements;for(const c of a)if(!jc(c))return E7e(c.name)}return!1}function S7e(n){if(n.kind===80){if(n.escapedText==="let")return En(n,f.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}else{const a=n.elements;for(const c of a)jc(c)||S7e(c.name)}return!1}function Bbe(n){const a=n.declarations;if(xx(n.declarations))return!0;if(!n.declarations.length)return oS(n,a.pos,a.end-a.pos,f.Variable_declaration_list_cannot_be_empty);const c=n.flags&7;return(c===4||c===6)&&aF(n.parent)?En(n,c===4?f.The_left_hand_side_of_a_for_in_statement_cannot_be_a_using_declaration:f.The_left_hand_side_of_a_for_in_statement_cannot_be_an_await_using_declaration):c===6?zWe(n):!1}function T7e(n){switch(n.kind){case 245:case 246:case 247:case 254:case 248:case 249:case 250:return!1;case 256:return T7e(n.parent)}return!0}function Abt(n){if(!T7e(n.parent)){const a=aS(n.declarationList)&7;if(a){const c=a===1?"let":a===2?"const":a===4?"using":a===6?"await using":N.fail("Unknown BlockScope flag");return En(n,f._0_declarations_can_only_be_declared_inside_a_block,c)}}}function Ibt(n){const a=n.name.escapedText;switch(n.keywordToken){case 105:if(a!=="target")return En(n.name,f._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Vi(n.name.escapedText),fa(n.keywordToken),"target");break;case 102:if(a!=="meta")return En(n.name,f._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,Vi(n.name.escapedText),fa(n.keywordToken),"meta");break}}function iS(n){return n.parseDiagnostics.length>0}function hu(n,a,...c){const d=jn(n);if(!iS(d)){const _=gh(d,n.pos);return ts.add(Qc(d,_.start,_.length,a,...c)),!0}return!1}function oS(n,a,c,d,..._){const y=jn(n);return iS(y)?!1:(ts.add(Qc(y,a,c,d,..._)),!0)}function xbt(n,a,c,...d){const _=jn(a);return iS(_)?!1:(a_(n,a,c,...d),!0)}function En(n,a,...c){const d=jn(n);return iS(d)?!1:(ts.add(wr(n,a,...c)),!0)}function Rbt(n){const a=lr(n)?N3(n):void 0,c=n.typeParameters||a&&Xc(a);if(c){const d=c.pos===c.end?c.pos:ka(jn(n).text,c.pos);return oS(n,d,c.end-d,f.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function Dbt(n){const a=n.type||nm(n);if(a)return En(a,f.Type_annotation_cannot_appear_on_a_constructor_declaration)}function Nbt(n){if(Za(n.name)&&mr(n.name.expression)&&n.name.expression.operatorToken.kind===103)return En(n.parent.members[0],f.A_mapped_type_may_not_declare_properties_or_methods);if(ui(n.parent)){if(Ma(n.name)&&n.name.text==="constructor")return En(n.name,f.Classes_may_not_have_a_field_named_constructor);if(_M(n.name,f.A_computed_property_name_in_a_class_property_declaration_must_have_a_simple_literal_type_or_a_unique_symbol_type))return!0;if(se<2&&Ji(n.name))return En(n.name,f.Private_identifiers_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(se<2&&Wd(n))return En(n.name,f.Properties_with_the_accessor_modifier_are_only_available_when_targeting_ECMAScript_2015_and_higher);if(Wd(n)&&Fbe(n.questionToken,f.An_accessor_property_cannot_be_declared_optional))return!0}else if(n.parent.kind===264){if(_M(n.name,f.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(N.assertNode(n,yp),n.initializer)return En(n.initializer,f.An_interface_property_cannot_have_an_initializer)}else if(Ep(n.parent)){if(_M(n.name,f.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type))return!0;if(N.assertNode(n,yp),n.initializer)return En(n.initializer,f.A_type_literal_property_cannot_have_an_initializer)}if(n.flags&33554432&&b7e(n),Jo(n)&&n.exclamationToken&&(!ui(n.parent)||!n.type||n.initializer||n.flags&33554432||sa(n)||XE(n))){const a=n.initializer?f.Declarations_with_initializers_cannot_also_have_definite_assignment_assertions:n.type?f.A_definite_assignment_assertion_is_not_permitted_in_this_context:f.Declarations_with_definite_assignment_assertions_must_also_have_type_annotations;return En(n.exclamationToken,a)}}function Cbt(n){return n.kind===264||n.kind===265||n.kind===272||n.kind===271||n.kind===278||n.kind===277||n.kind===270||Zr(n,2208)?!1:hu(n,f.Top_level_declarations_in_d_ts_files_must_start_with_either_a_declare_or_export_modifier)}function Pbt(n){for(const a of n.statements)if((Ju(a)||a.kind===243)&&Cbt(a))return!0;return!1}function Mbt(n){return!!(n.flags&33554432)&&Pbt(n)}function Tv(n){if(n.flags&33554432){if(!ei(n).hasReportedStatementInAmbientContext&&(ea(n.parent)||Oy(n.parent)))return ei(n).hasReportedStatementInAmbientContext=hu(n,f.An_implementation_cannot_be_declared_in_ambient_contexts);if(n.parent.kind===241||n.parent.kind===268||n.parent.kind===312){const c=ei(n.parent);if(!c.hasReportedStatementInAmbientContext)return c.hasReportedStatementInAmbientContext=hu(n,f.Statements_are_not_allowed_in_ambient_contexts)}}return!1}function Gbe(n){const a=fc(n).includes("."),c=n.numericLiteralFlags&16;a||c||+n.text<=2**53-1||s_(!1,wr(n,f.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers))}function Lbt(n){return!!(!(Zy(n.parent)||tb(n.parent)&&Zy(n.parent.parent))&&se<7&&En(n,f.BigInt_literals_are_not_available_when_targeting_lower_than_ES2020))}function kbt(n,a,...c){const d=jn(n);if(!iS(d)){const _=gh(d,n.pos);return ts.add(Qc(d,Kl(_),0,a,...c)),!0}return!1}function wbt(){return Wc||(Wc=[],Se.forEach((n,a)=>{Yq.test(a)&&Wc.push(n)})),Wc}function Obt(n){var a;return n.isTypeOnly&&n.name&&n.namedBindings?En(n,f.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both):n.isTypeOnly&&((a=n.namedBindings)==null?void 0:a.kind)===275?A7e(n.namedBindings):!1}function A7e(n){return!!Ue(n.elements,a=>{if(a.isTypeOnly)return hu(a,a.kind===276?f.The_type_modifier_cannot_be_used_on_a_named_import_when_import_type_is_used_on_its_import_statement:f.The_type_modifier_cannot_be_used_on_a_named_export_when_export_type_is_used_on_its_export_statement)})}function Wbt(n){if(V.verbatimModuleSyntax&&G===1)return En(n,f.ESM_syntax_is_not_allowed_in_a_CommonJS_module_when_verbatimModuleSyntax_is_enabled);if(G===5)return En(n,f.Dynamic_imports_are_only_supported_when_the_module_flag_is_set_to_es2020_es2022_esnext_commonjs_amd_system_umd_node16_or_nodenext);if(n.typeArguments)return En(n,f.This_use_of_import_is_invalid_import_calls_can_be_written_but_they_must_have_parentheses_and_cannot_have_type_arguments);const a=n.arguments;if(G!==99&&G!==199&&G!==100&&(xx(a),a.length>1)){const d=a[1];return En(d,f.Dynamic_imports_only_support_a_second_argument_when_the_module_option_is_set_to_esnext_node16_or_nodenext)}if(a.length===0||a.length>2)return En(n,f.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments);const c=An(a,e_);return c?En(c,f.Argument_of_dynamic_import_cannot_be_spread_element):!1}function Fbt(n,a){const c=Wr(n);if(c&20&&a.flags&1048576)return An(a.types,d=>{if(d.flags&524288){const _=c&Wr(d);if(_&4)return n.target===d.target;if(_&16)return!!n.aliasSymbol&&n.aliasSymbol===d.aliasSymbol}return!1})}function zbt(n,a){if(Wr(n)&128&&Um(a,by))return An(a.types,c=>!by(c))}function Bbt(n,a){let c=0;if(Yo(n,c).length>0||(c=1,Yo(n,c).length>0))return An(a.types,_=>Yo(_,c).length>0)}function Gbt(n,a){let c;if(!(n.flags&406978556)){let d=0;for(const _ of a.types)if(!(_.flags&406978556)){const y=ba([Q_(n),Q_(_)]);if(y.flags&4194304)return _;if(v_(y)||y.flags&1048576){const x=y.flags&1048576?au(y.types,v_):1;x>=d&&(c=_,d=x)}}}return c}function Vbt(n){if(Cl(n,67108864)){const a=dc(n,c=>!(c.flags&402784252));if(!(a.flags&131072))return a}return n}function I7e(n,a,c){if(a.flags&1048576&&n.flags&2621440){const d=W4e(a,n);if(d)return d;const _=gs(n);if(_){const y=O4e(_,a);if(y){const x=Nve(a,wt(y,k=>[()=>dr(k),k.escapedName]),c);if(x!==a)return x}}}}function Vbe(n){const a=PS(n);return a||(Za(n)?eye(Ru(n.expression)):void 0)}function kte(n){return Xn===n||(Xn=n,hn=c0(n)),hn}function aS(n){return rn===n||(rn=n,Pn=Ov(n)),Pn}function MB(n){const a=aS(n)&7;return a===2||a===4||a===6}}function Oje(e){return!Oy(e)}function Pxe(e){return e.kind!==262&&e.kind!==174||!!e.body}function Mxe(e){switch(e.parent.kind){case 276:case 281:return Ve(e);default:return Bg(e)}}function Lxe(e){switch(e){case 0:return"yieldType";case 1:return"returnType";case 2:return"nextType"}}function Yu(e){return!!(e.flags&1)}function Xq(e){return!!(e.flags&2)}function Wje(e){return{getCommonSourceDirectory:e.getCommonSourceDirectory?()=>e.getCommonSourceDirectory():()=>"",getCurrentDirectory:()=>e.getCurrentDirectory(),getSymlinkCache:oa(e,e.getSymlinkCache),getPackageJsonInfoCache:()=>{var t;return(t=e.getPackageJsonInfoCache)==null?void 0:t.call(e)},useCaseSensitiveFileNames:oa(e,e.useCaseSensitiveFileNames),redirectTargetsMap:e.redirectTargetsMap,getProjectReferenceRedirect:t=>e.getProjectReferenceRedirect(t),isSourceOfProjectReferenceRedirect:t=>e.isSourceOfProjectReferenceRedirect(t),fileExists:t=>e.fileExists(t),getFileIncludeReasons:()=>e.getFileIncludeReasons(),readFile:e.readFile?t=>e.readFile(t):void 0}}var Yq,KF,gle,vle,yle,ble,XF,$q,YF,$F,kxe,QF,Ele,sf,Qq,Fje=T({"src/compiler/checker.ts"(){ra(),_le(),fS(),Yq=/^".+"$/,KF="(anonymous)",gle=1,vle=1,yle=1,ble=1,XF=(e=>(e[e.None=0]="None",e[e.TypeofEQString=1]="TypeofEQString",e[e.TypeofEQNumber=2]="TypeofEQNumber",e[e.TypeofEQBigInt=4]="TypeofEQBigInt",e[e.TypeofEQBoolean=8]="TypeofEQBoolean",e[e.TypeofEQSymbol=16]="TypeofEQSymbol",e[e.TypeofEQObject=32]="TypeofEQObject",e[e.TypeofEQFunction=64]="TypeofEQFunction",e[e.TypeofEQHostObject=128]="TypeofEQHostObject",e[e.TypeofNEString=256]="TypeofNEString",e[e.TypeofNENumber=512]="TypeofNENumber",e[e.TypeofNEBigInt=1024]="TypeofNEBigInt",e[e.TypeofNEBoolean=2048]="TypeofNEBoolean",e[e.TypeofNESymbol=4096]="TypeofNESymbol",e[e.TypeofNEObject=8192]="TypeofNEObject",e[e.TypeofNEFunction=16384]="TypeofNEFunction",e[e.TypeofNEHostObject=32768]="TypeofNEHostObject",e[e.EQUndefined=65536]="EQUndefined",e[e.EQNull=131072]="EQNull",e[e.EQUndefinedOrNull=262144]="EQUndefinedOrNull",e[e.NEUndefined=524288]="NEUndefined",e[e.NENull=1048576]="NENull",e[e.NEUndefinedOrNull=2097152]="NEUndefinedOrNull",e[e.Truthy=4194304]="Truthy",e[e.Falsy=8388608]="Falsy",e[e.IsUndefined=16777216]="IsUndefined",e[e.IsNull=33554432]="IsNull",e[e.IsUndefinedOrNull=50331648]="IsUndefinedOrNull",e[e.All=134217727]="All",e[e.BaseStringStrictFacts=3735041]="BaseStringStrictFacts",e[e.BaseStringFacts=12582401]="BaseStringFacts",e[e.StringStrictFacts=16317953]="StringStrictFacts",e[e.StringFacts=16776705]="StringFacts",e[e.EmptyStringStrictFacts=12123649]="EmptyStringStrictFacts",e[e.EmptyStringFacts=12582401]="EmptyStringFacts",e[e.NonEmptyStringStrictFacts=7929345]="NonEmptyStringStrictFacts",e[e.NonEmptyStringFacts=16776705]="NonEmptyStringFacts",e[e.BaseNumberStrictFacts=3734786]="BaseNumberStrictFacts",e[e.BaseNumberFacts=12582146]="BaseNumberFacts",e[e.NumberStrictFacts=16317698]="NumberStrictFacts",e[e.NumberFacts=16776450]="NumberFacts",e[e.ZeroNumberStrictFacts=12123394]="ZeroNumberStrictFacts",e[e.ZeroNumberFacts=12582146]="ZeroNumberFacts",e[e.NonZeroNumberStrictFacts=7929090]="NonZeroNumberStrictFacts",e[e.NonZeroNumberFacts=16776450]="NonZeroNumberFacts",e[e.BaseBigIntStrictFacts=3734276]="BaseBigIntStrictFacts",e[e.BaseBigIntFacts=12581636]="BaseBigIntFacts",e[e.BigIntStrictFacts=16317188]="BigIntStrictFacts",e[e.BigIntFacts=16775940]="BigIntFacts",e[e.ZeroBigIntStrictFacts=12122884]="ZeroBigIntStrictFacts",e[e.ZeroBigIntFacts=12581636]="ZeroBigIntFacts",e[e.NonZeroBigIntStrictFacts=7928580]="NonZeroBigIntStrictFacts",e[e.NonZeroBigIntFacts=16775940]="NonZeroBigIntFacts",e[e.BaseBooleanStrictFacts=3733256]="BaseBooleanStrictFacts",e[e.BaseBooleanFacts=12580616]="BaseBooleanFacts",e[e.BooleanStrictFacts=16316168]="BooleanStrictFacts",e[e.BooleanFacts=16774920]="BooleanFacts",e[e.FalseStrictFacts=12121864]="FalseStrictFacts",e[e.FalseFacts=12580616]="FalseFacts",e[e.TrueStrictFacts=7927560]="TrueStrictFacts",e[e.TrueFacts=16774920]="TrueFacts",e[e.SymbolStrictFacts=7925520]="SymbolStrictFacts",e[e.SymbolFacts=16772880]="SymbolFacts",e[e.ObjectStrictFacts=7888800]="ObjectStrictFacts",e[e.ObjectFacts=16736160]="ObjectFacts",e[e.FunctionStrictFacts=7880640]="FunctionStrictFacts",e[e.FunctionFacts=16728e3]="FunctionFacts",e[e.VoidFacts=9830144]="VoidFacts",e[e.UndefinedFacts=26607360]="UndefinedFacts",e[e.NullFacts=42917664]="NullFacts",e[e.EmptyObjectStrictFacts=83427327]="EmptyObjectStrictFacts",e[e.EmptyObjectFacts=83886079]="EmptyObjectFacts",e[e.UnknownFacts=83886079]="UnknownFacts",e[e.AllTypeofNE=556800]="AllTypeofNE",e[e.OrFactsMask=8256]="OrFactsMask",e[e.AndFactsMask=134209471]="AndFactsMask",e))(XF||{}),$q=new Map(Object.entries({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384})),YF=(e=>(e[e.Normal=0]="Normal",e[e.Contextual=1]="Contextual",e[e.Inferential=2]="Inferential",e[e.SkipContextSensitive=4]="SkipContextSensitive",e[e.SkipGenericFunctions=8]="SkipGenericFunctions",e[e.IsForSignatureHelp=16]="IsForSignatureHelp",e[e.RestBindingElement=32]="RestBindingElement",e[e.TypeOnly=64]="TypeOnly",e))(YF||{}),$F=(e=>(e[e.None=0]="None",e[e.BivariantCallback=1]="BivariantCallback",e[e.StrictCallback=2]="StrictCallback",e[e.IgnoreReturnTypes=4]="IgnoreReturnTypes",e[e.StrictArity=8]="StrictArity",e[e.StrictTopSignature=16]="StrictTopSignature",e[e.Callback=3]="Callback",e))($F||{}),kxe=B6(Pxe,Oje),QF=new Map(Object.entries({Uppercase:0,Lowercase:1,Capitalize:2,Uncapitalize:3,NoInfer:4})),Ele=class{},(e=>{e.JSX="JSX",e.IntrinsicElements="IntrinsicElements",e.ElementClass="ElementClass",e.ElementAttributesPropertyNameContainer="ElementAttributesProperty",e.ElementChildrenAttributeNameContainer="ElementChildrenAttribute",e.Element="Element",e.ElementType="ElementType",e.IntrinsicAttributes="IntrinsicAttributes",e.IntrinsicClassAttributes="IntrinsicClassAttributes",e.LibraryManagedAttributes="LibraryManagedAttributes"})(sf||(sf={})),Qq=class R7e{constructor(t,r,i){this.moduleResolverHost=void 0,this.inner=void 0,this.disableTrackSymbol=!1;for(var o;r instanceof R7e;)r=r.inner;this.inner=r,this.moduleResolverHost=i,this.context=t,this.canTrackSymbol=!!((o=this.inner)!=null&&o.trackSymbol)}trackSymbol(t,r,i){var o,s;if((o=this.inner)!=null&&o.trackSymbol&&!this.disableTrackSymbol){if(this.inner.trackSymbol(t,r,i))return this.onDiagnosticReported(),!0;t.flags&262144||((s=this.context).trackedSymbols??(s.trackedSymbols=[])).push([t,r,i])}return!1}reportInaccessibleThisError(){var t;(t=this.inner)!=null&&t.reportInaccessibleThisError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleThisError())}reportPrivateInBaseOfClassExpression(t){var r;(r=this.inner)!=null&&r.reportPrivateInBaseOfClassExpression&&(this.onDiagnosticReported(),this.inner.reportPrivateInBaseOfClassExpression(t))}reportInaccessibleUniqueSymbolError(){var t;(t=this.inner)!=null&&t.reportInaccessibleUniqueSymbolError&&(this.onDiagnosticReported(),this.inner.reportInaccessibleUniqueSymbolError())}reportCyclicStructureError(){var t;(t=this.inner)!=null&&t.reportCyclicStructureError&&(this.onDiagnosticReported(),this.inner.reportCyclicStructureError())}reportLikelyUnsafeImportRequiredError(t){var r;(r=this.inner)!=null&&r.reportLikelyUnsafeImportRequiredError&&(this.onDiagnosticReported(),this.inner.reportLikelyUnsafeImportRequiredError(t))}reportTruncationError(){var t;(t=this.inner)!=null&&t.reportTruncationError&&(this.onDiagnosticReported(),this.inner.reportTruncationError())}trackReferencedAmbientModule(t,r){var i;(i=this.inner)!=null&&i.trackReferencedAmbientModule&&(this.onDiagnosticReported(),this.inner.trackReferencedAmbientModule(t,r))}trackExternalModuleSymbolOfImportTypeNode(t){var r;(r=this.inner)!=null&&r.trackExternalModuleSymbolOfImportTypeNode&&(this.onDiagnosticReported(),this.inner.trackExternalModuleSymbolOfImportTypeNode(t))}reportNonlocalAugmentation(t,r,i){var o;(o=this.inner)!=null&&o.reportNonlocalAugmentation&&(this.onDiagnosticReported(),this.inner.reportNonlocalAugmentation(t,r,i))}reportNonSerializableProperty(t){var r;(r=this.inner)!=null&&r.reportNonSerializableProperty&&(this.onDiagnosticReported(),this.inner.reportNonSerializableProperty(t))}onDiagnosticReported(){this.context.reportedDiagnostic=!0}}}});function nt(e,t,r,i){if(e===void 0)return e;const o=t(e);let s;if(o!==void 0)return To(o)?s=(i||jje)(o):s=o,N.assertNode(s,r),s}function Vn(e,t,r,i,o){if(e===void 0)return e;const s=e.length;(i===void 0||i<0)&&(i=0),(o===void 0||o>s-i)&&(o=s-i);let l,u=-1,p=-1;i>0||o<s?l=e.hasTrailingComma&&i+o===s:(u=e.pos,p=e.end,l=e.hasTrailingComma);const h=wxe(e,t,r,i,o);if(h!==e){const m=w.createNodeArray(h,l);return vh(m,u,p),m}return e}function kw(e,t,r,i,o){if(e===void 0)return e;const s=e.length;return(i===void 0||i<0)&&(i=0),(o===void 0||o>s-i)&&(o=s-i),wxe(e,t,r,i,o)}function wxe(e,t,r,i,o){let s;const l=e.length;(i>0||o<l)&&(s=[]);for(let u=0;u<o;u++){const p=e[u+i],h=p!==void 0?t?t(p):p:void 0;if((s!==void 0||h===void 0||h!==p)&&(s===void 0&&(s=e.slice(0,u),N.assertEachNode(s,r)),h))if(To(h))for(const m of h)N.assertNode(m,r),s.push(m);else N.assertNode(h,r),s.push(h)}return s||(N.assertEachNode(e,r),e)}function Zq(e,t,r,i,o,s=Vn){return r.startLexicalEnvironment(),e=s(e,t,qi,i),o&&(e=r.factory.ensureUseStrict(e)),w.mergeLexicalEnvironment(e,r.endLexicalEnvironment())}function Dl(e,t,r,i=Vn){let o;return r.startLexicalEnvironment(),e&&(r.setLexicalEnvironmentFlags(1,!0),o=i(e,t,Ao),r.getLexicalEnvironmentFlags()&2&&os(r.getCompilerOptions())>=2&&(o=zje(o,r)),r.setLexicalEnvironmentFlags(1,!1)),r.suspendLexicalEnvironment(),o}function zje(e,t){let r;for(let i=0;i<e.length;i++){const o=e[i],s=Bje(o,t);(r||s!==o)&&(r||(r=e.slice(0,i)),r[i]=s)}return r?dt(t.factory.createNodeArray(r,e.hasTrailingComma),e):e}function Bje(e,t){return e.dotDotDotToken?e:ta(e.name)?Gje(e,t):e.initializer?Vje(e,e.name,e.initializer,t):e}function Gje(e,t){const{factory:r}=t;return t.addInitializationStatement(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(e.name,void 0,e.type,e.initializer?r.createConditionalExpression(r.createStrictEquality(r.getGeneratedNameForNode(e),r.createVoidZero()),void 0,e.initializer,void 0,r.getGeneratedNameForNode(e)):r.getGeneratedNameForNode(e))]))),r.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,r.getGeneratedNameForNode(e),e.questionToken,e.type,void 0)}function Vje(e,t,r,i){const o=i.factory;return i.addInitializationStatement(o.createIfStatement(o.createTypeCheck(o.cloneNode(t),"undefined"),pr(dt(o.createBlock([o.createExpressionStatement(pr(dt(o.createAssignment(pr(o.cloneNode(t),96),pr(r,96|ja(r)|3072)),e),3072))]),e),3905))),o.updateParameterDeclaration(e,e.modifiers,e.dotDotDotToken,e.name,e.questionToken,e.type,void 0)}function lf(e,t,r,i=nt){r.resumeLexicalEnvironment();const o=i(e,t,P4),s=r.endLexicalEnvironment();if(bt(s)){if(!o)return r.factory.createBlock(s);const l=r.factory.converters.convertToFunctionBlock(o),u=w.mergeLexicalEnvironment(l.statements,s);return r.factory.updateBlock(l,u)}return o}function Rd(e,t,r,i=nt){r.startBlockScope();const o=i(e,t,qi,r.factory.liftToBlock);N.assert(o);const s=r.endBlockScope();return bt(s)?Xo(o)?(s.push(...o.statements),r.factory.updateBlock(o,s)):(s.push(o),r.factory.createBlock(s)):o}function ZF(e,t,r=t){if(r===t||e.length<=1)return Vn(e,t,yt);let i=0;const o=e.length;return Vn(e,s=>{const l=i<o-1;return i++,l?r(s):t(s)},yt)}function In(e,t,r=JP,i=Vn,o,s=nt){if(e===void 0)return;const l=Oxe[e.kind];return l===void 0?e:l(e,t,r,i,s,o)}function jje(e){return N.assert(e.length<=1,"Too many nodes written to output."),sh(e)}var Oxe,Uje=T({"src/compiler/visitorPublic.ts"(){ra(),Oxe={166:function(t,r,i,o,s,l){return i.factory.updateQualifiedName(t,N.checkDefined(s(t.left,r,Zd)),N.checkDefined(s(t.right,r,Ve)))},167:function(t,r,i,o,s,l){return i.factory.updateComputedPropertyName(t,N.checkDefined(s(t.expression,r,yt)))},168:function(t,r,i,o,s,l){return i.factory.updateTypeParameterDeclaration(t,o(t.modifiers,r,xa),N.checkDefined(s(t.name,r,Ve)),s(t.constraint,r,ji),s(t.default,r,ji))},169:function(t,r,i,o,s,l){return i.factory.updateParameterDeclaration(t,o(t.modifiers,r,ll),l?s(t.dotDotDotToken,l,QW):t.dotDotDotToken,N.checkDefined(s(t.name,r,vS)),l?s(t.questionToken,l,$y):t.questionToken,s(t.type,r,ji),s(t.initializer,r,yt))},170:function(t,r,i,o,s,l){return i.factory.updateDecorator(t,N.checkDefined(s(t.expression,r,yt)))},171:function(t,r,i,o,s,l){return i.factory.updatePropertySignature(t,o(t.modifiers,r,xa),N.checkDefined(s(t.name,r,oc)),l?s(t.questionToken,l,$y):t.questionToken,s(t.type,r,ji))},172:function(t,r,i,o,s,l){return i.factory.updatePropertyDeclaration(t,o(t.modifiers,r,ll),N.checkDefined(s(t.name,r,oc)),l?s(t.questionToken??t.exclamationToken,l,pse):t.questionToken??t.exclamationToken,s(t.type,r,ji),s(t.initializer,r,yt))},173:function(t,r,i,o,s,l){return i.factory.updateMethodSignature(t,o(t.modifiers,r,xa),N.checkDefined(s(t.name,r,oc)),l?s(t.questionToken,l,$y):t.questionToken,o(t.typeParameters,r,gl),o(t.parameters,r,Ao),s(t.type,r,ji))},174:function(t,r,i,o,s,l){return i.factory.updateMethodDeclaration(t,o(t.modifiers,r,ll),l?s(t.asteriskToken,l,Hk):t.asteriskToken,N.checkDefined(s(t.name,r,oc)),l?s(t.questionToken,l,$y):t.questionToken,o(t.typeParameters,r,gl),Dl(t.parameters,r,i,o),s(t.type,r,ji),lf(t.body,r,i,s))},176:function(t,r,i,o,s,l){return i.factory.updateConstructorDeclaration(t,o(t.modifiers,r,ll),Dl(t.parameters,r,i,o),lf(t.body,r,i,s))},177:function(t,r,i,o,s,l){return i.factory.updateGetAccessorDeclaration(t,o(t.modifiers,r,ll),N.checkDefined(s(t.name,r,oc)),Dl(t.parameters,r,i,o),s(t.type,r,ji),lf(t.body,r,i,s))},178:function(t,r,i,o,s,l){return i.factory.updateSetAccessorDeclaration(t,o(t.modifiers,r,ll),N.checkDefined(s(t.name,r,oc)),Dl(t.parameters,r,i,o),lf(t.body,r,i,s))},175:function(t,r,i,o,s,l){return i.startLexicalEnvironment(),i.suspendLexicalEnvironment(),i.factory.updateClassStaticBlockDeclaration(t,lf(t.body,r,i,s))},179:function(t,r,i,o,s,l){return i.factory.updateCallSignature(t,o(t.typeParameters,r,gl),o(t.parameters,r,Ao),s(t.type,r,ji))},180:function(t,r,i,o,s,l){return i.factory.updateConstructSignature(t,o(t.typeParameters,r,gl),o(t.parameters,r,Ao),s(t.type,r,ji))},181:function(t,r,i,o,s,l){return i.factory.updateIndexSignature(t,o(t.modifiers,r,ll),o(t.parameters,r,Ao),N.checkDefined(s(t.type,r,ji)))},182:function(t,r,i,o,s,l){return i.factory.updateTypePredicateNode(t,s(t.assertsModifier,r,kae),N.checkDefined(s(t.parameterName,r,fse)),s(t.type,r,ji))},183:function(t,r,i,o,s,l){return i.factory.updateTypeReferenceNode(t,N.checkDefined(s(t.typeName,r,Zd)),o(t.typeArguments,r,ji))},184:function(t,r,i,o,s,l){return i.factory.updateFunctionTypeNode(t,o(t.typeParameters,r,gl),o(t.parameters,r,Ao),N.checkDefined(s(t.type,r,ji)))},185:function(t,r,i,o,s,l){return i.factory.updateConstructorTypeNode(t,o(t.modifiers,r,xa),o(t.typeParameters,r,gl),o(t.parameters,r,Ao),N.checkDefined(s(t.type,r,ji)))},186:function(t,r,i,o,s,l){return i.factory.updateTypeQueryNode(t,N.checkDefined(s(t.exprName,r,Zd)),o(t.typeArguments,r,ji))},187:function(t,r,i,o,s,l){return i.factory.updateTypeLiteralNode(t,o(t.members,r,yS))},188:function(t,r,i,o,s,l){return i.factory.updateArrayTypeNode(t,N.checkDefined(s(t.elementType,r,ji)))},189:function(t,r,i,o,s,l){return i.factory.updateTupleTypeNode(t,o(t.elements,r,ji))},190:function(t,r,i,o,s,l){return i.factory.updateOptionalTypeNode(t,N.checkDefined(s(t.type,r,ji)))},191:function(t,r,i,o,s,l){return i.factory.updateRestTypeNode(t,N.checkDefined(s(t.type,r,ji)))},192:function(t,r,i,o,s,l){return i.factory.updateUnionTypeNode(t,o(t.types,r,ji))},193:function(t,r,i,o,s,l){return i.factory.updateIntersectionTypeNode(t,o(t.types,r,ji))},194:function(t,r,i,o,s,l){return i.factory.updateConditionalTypeNode(t,N.checkDefined(s(t.checkType,r,ji)),N.checkDefined(s(t.extendsType,r,ji)),N.checkDefined(s(t.trueType,r,ji)),N.checkDefined(s(t.falseType,r,ji)))},195:function(t,r,i,o,s,l){return i.factory.updateInferTypeNode(t,N.checkDefined(s(t.typeParameter,r,gl)))},205:function(t,r,i,o,s,l){return i.factory.updateImportTypeNode(t,N.checkDefined(s(t.argument,r,ji)),s(t.attributes,r,mI),s(t.qualifier,r,Zd),o(t.typeArguments,r,ji),t.isTypeOf)},302:function(t,r,i,o,s,l){return i.factory.updateImportTypeAssertionContainer(t,N.checkDefined(s(t.assertClause,r,Hae)),t.multiLine)},202:function(t,r,i,o,s,l){return i.factory.updateNamedTupleMember(t,l?s(t.dotDotDotToken,l,QW):t.dotDotDotToken,N.checkDefined(s(t.name,r,Ve)),l?s(t.questionToken,l,$y):t.questionToken,N.checkDefined(s(t.type,r,ji)))},196:function(t,r,i,o,s,l){return i.factory.updateParenthesizedType(t,N.checkDefined(s(t.type,r,ji)))},198:function(t,r,i,o,s,l){return i.factory.updateTypeOperatorNode(t,N.checkDefined(s(t.type,r,ji)))},199:function(t,r,i,o,s,l){return i.factory.updateIndexedAccessTypeNode(t,N.checkDefined(s(t.objectType,r,ji)),N.checkDefined(s(t.indexType,r,ji)))},200:function(t,r,i,o,s,l){return i.factory.updateMappedTypeNode(t,l?s(t.readonlyToken,l,mse):t.readonlyToken,N.checkDefined(s(t.typeParameter,r,gl)),s(t.nameType,r,ji),l?s(t.questionToken,l,_se):t.questionToken,s(t.type,r,ji),o(t.members,r,yS))},201:function(t,r,i,o,s,l){return i.factory.updateLiteralTypeNode(t,N.checkDefined(s(t.literal,r,qre)))},203:function(t,r,i,o,s,l){return i.factory.updateTemplateLiteralType(t,N.checkDefined(s(t.head,r,iI)),o(t.templateSpans,r,CH))},204:function(t,r,i,o,s,l){return i.factory.updateTemplateLiteralTypeSpan(t,N.checkDefined(s(t.type,r,ji)),N.checkDefined(s(t.literal,r,R4)))},206:function(t,r,i,o,s,l){return i.factory.updateObjectBindingPattern(t,o(t.elements,r,Qa))},207:function(t,r,i,o,s,l){return i.factory.updateArrayBindingPattern(t,o(t.elements,r,N4))},208:function(t,r,i,o,s,l){return i.factory.updateBindingElement(t,l?s(t.dotDotDotToken,l,QW):t.dotDotDotToken,s(t.propertyName,r,oc),N.checkDefined(s(t.name,r,vS)),s(t.initializer,r,yt))},209:function(t,r,i,o,s,l){return i.factory.updateArrayLiteralExpression(t,o(t.elements,r,yt))},210:function(t,r,i,o,s,l){return i.factory.updateObjectLiteralExpression(t,o(t.properties,r,Wg))},211:function(t,r,i,o,s,l){return A4(t)?i.factory.updatePropertyAccessChain(t,N.checkDefined(s(t.expression,r,yt)),l?s(t.questionDotToken,l,ZW):t.questionDotToken,N.checkDefined(s(t.name,r,Qh))):i.factory.updatePropertyAccessExpression(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.name,r,Qh)))},212:function(t,r,i,o,s,l){return QV(t)?i.factory.updateElementAccessChain(t,N.checkDefined(s(t.expression,r,yt)),l?s(t.questionDotToken,l,ZW):t.questionDotToken,N.checkDefined(s(t.argumentExpression,r,yt))):i.factory.updateElementAccessExpression(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.argumentExpression,r,yt)))},213:function(t,r,i,o,s,l){return hS(t)?i.factory.updateCallChain(t,N.checkDefined(s(t.expression,r,yt)),l?s(t.questionDotToken,l,ZW):t.questionDotToken,o(t.typeArguments,r,ji),o(t.arguments,r,yt)):i.factory.updateCallExpression(t,N.checkDefined(s(t.expression,r,yt)),o(t.typeArguments,r,ji),o(t.arguments,r,yt))},214:function(t,r,i,o,s,l){return i.factory.updateNewExpression(t,N.checkDefined(s(t.expression,r,yt)),o(t.typeArguments,r,ji),o(t.arguments,r,yt))},215:function(t,r,i,o,s,l){return i.factory.updateTaggedTemplateExpression(t,N.checkDefined(s(t.tag,r,yt)),o(t.typeArguments,r,ji),N.checkDefined(s(t.template,r,LA)))},216:function(t,r,i,o,s,l){return i.factory.updateTypeAssertion(t,N.checkDefined(s(t.type,r,ji)),N.checkDefined(s(t.expression,r,yt)))},217:function(t,r,i,o,s,l){return i.factory.updateParenthesizedExpression(t,N.checkDefined(s(t.expression,r,yt)))},218:function(t,r,i,o,s,l){return i.factory.updateFunctionExpression(t,o(t.modifiers,r,xa),l?s(t.asteriskToken,l,Hk):t.asteriskToken,s(t.name,r,Ve),o(t.typeParameters,r,gl),Dl(t.parameters,r,i,o),s(t.type,r,ji),lf(t.body,r,i,s))},219:function(t,r,i,o,s,l){return i.factory.updateArrowFunction(t,o(t.modifiers,r,xa),o(t.typeParameters,r,gl),Dl(t.parameters,r,i,o),s(t.type,r,ji),l?N.checkDefined(s(t.equalsGreaterThanToken,l,Lae)):t.equalsGreaterThanToken,lf(t.body,r,i,s))},220:function(t,r,i,o,s,l){return i.factory.updateDeleteExpression(t,N.checkDefined(s(t.expression,r,yt)))},221:function(t,r,i,o,s,l){return i.factory.updateTypeOfExpression(t,N.checkDefined(s(t.expression,r,yt)))},222:function(t,r,i,o,s,l){return i.factory.updateVoidExpression(t,N.checkDefined(s(t.expression,r,yt)))},223:function(t,r,i,o,s,l){return i.factory.updateAwaitExpression(t,N.checkDefined(s(t.expression,r,yt)))},224:function(t,r,i,o,s,l){return i.factory.updatePrefixUnaryExpression(t,N.checkDefined(s(t.operand,r,yt)))},225:function(t,r,i,o,s,l){return i.factory.updatePostfixUnaryExpression(t,N.checkDefined(s(t.operand,r,yt)))},226:function(t,r,i,o,s,l){return i.factory.updateBinaryExpression(t,N.checkDefined(s(t.left,r,yt)),l?N.checkDefined(s(t.operatorToken,l,gse)):t.operatorToken,N.checkDefined(s(t.right,r,yt)))},227:function(t,r,i,o,s,l){return i.factory.updateConditionalExpression(t,N.checkDefined(s(t.condition,r,yt)),l?N.checkDefined(s(t.questionToken,l,$y)):t.questionToken,N.checkDefined(s(t.whenTrue,r,yt)),l?N.checkDefined(s(t.colonToken,l,Mae)):t.colonToken,N.checkDefined(s(t.whenFalse,r,yt)))},228:function(t,r,i,o,s,l){return i.factory.updateTemplateExpression(t,N.checkDefined(s(t.head,r,iI)),o(t.templateSpans,r,bP))},229:function(t,r,i,o,s,l){return i.factory.updateYieldExpression(t,l?s(t.asteriskToken,l,Hk):t.asteriskToken,s(t.expression,r,yt))},230:function(t,r,i,o,s,l){return i.factory.updateSpreadElement(t,N.checkDefined(s(t.expression,r,yt)))},231:function(t,r,i,o,s,l){return i.factory.updateClassExpression(t,o(t.modifiers,r,ll),s(t.name,r,Ve),o(t.typeParameters,r,gl),o(t.heritageClauses,r,of),o(t.members,r,$c))},233:function(t,r,i,o,s,l){return i.factory.updateExpressionWithTypeArguments(t,N.checkDefined(s(t.expression,r,yt)),o(t.typeArguments,r,ji))},234:function(t,r,i,o,s,l){return i.factory.updateAsExpression(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.type,r,ji)))},238:function(t,r,i,o,s,l){return i.factory.updateSatisfiesExpression(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.type,r,ji)))},235:function(t,r,i,o,s,l){return qu(t)?i.factory.updateNonNullChain(t,N.checkDefined(s(t.expression,r,yt))):i.factory.updateNonNullExpression(t,N.checkDefined(s(t.expression,r,yt)))},236:function(t,r,i,o,s,l){return i.factory.updateMetaProperty(t,N.checkDefined(s(t.name,r,Ve)))},239:function(t,r,i,o,s,l){return i.factory.updateTemplateSpan(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.literal,r,R4)))},241:function(t,r,i,o,s,l){return i.factory.updateBlock(t,o(t.statements,r,qi))},243:function(t,r,i,o,s,l){return i.factory.updateVariableStatement(t,o(t.modifiers,r,ll),N.checkDefined(s(t.declarationList,r,Uc)))},244:function(t,r,i,o,s,l){return i.factory.updateExpressionStatement(t,N.checkDefined(s(t.expression,r,yt)))},245:function(t,r,i,o,s,l){return i.factory.updateIfStatement(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.thenStatement,r,qi,i.factory.liftToBlock)),s(t.elseStatement,r,qi,i.factory.liftToBlock))},246:function(t,r,i,o,s,l){return i.factory.updateDoStatement(t,Rd(t.statement,r,i,s),N.checkDefined(s(t.expression,r,yt)))},247:function(t,r,i,o,s,l){return i.factory.updateWhileStatement(t,N.checkDefined(s(t.expression,r,yt)),Rd(t.statement,r,i,s))},248:function(t,r,i,o,s,l){return i.factory.updateForStatement(t,s(t.initializer,r,Af),s(t.condition,r,yt),s(t.incrementor,r,yt),Rd(t.statement,r,i,s))},249:function(t,r,i,o,s,l){return i.factory.updateForInStatement(t,N.checkDefined(s(t.initializer,r,Af)),N.checkDefined(s(t.expression,r,yt)),Rd(t.statement,r,i,s))},250:function(t,r,i,o,s,l){return i.factory.updateForOfStatement(t,l?s(t.awaitModifier,l,NH):t.awaitModifier,N.checkDefined(s(t.initializer,r,Af)),N.checkDefined(s(t.expression,r,yt)),Rd(t.statement,r,i,s))},251:function(t,r,i,o,s,l){return i.factory.updateContinueStatement(t,s(t.label,r,Ve))},252:function(t,r,i,o,s,l){return i.factory.updateBreakStatement(t,s(t.label,r,Ve))},253:function(t,r,i,o,s,l){return i.factory.updateReturnStatement(t,s(t.expression,r,yt))},254:function(t,r,i,o,s,l){return i.factory.updateWithStatement(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.statement,r,qi,i.factory.liftToBlock)))},255:function(t,r,i,o,s,l){return i.factory.updateSwitchStatement(t,N.checkDefined(s(t.expression,r,yt)),N.checkDefined(s(t.caseBlock,r,SP)))},256:function(t,r,i,o,s,l){return i.factory.updateLabeledStatement(t,N.checkDefined(s(t.label,r,Ve)),N.checkDefined(s(t.statement,r,qi,i.factory.liftToBlock)))},257:function(t,r,i,o,s,l){return i.factory.updateThrowStatement(t,N.checkDefined(s(t.expression,r,yt)))},258:function(t,r,i,o,s,l){return i.factory.updateTryStatement(t,N.checkDefined(s(t.tryBlock,r,Xo)),s(t.catchClause,r,c1),s(t.finallyBlock,r,Xo))},260:function(t,r,i,o,s,l){return i.factory.updateVariableDeclaration(t,N.checkDefined(s(t.name,r,vS)),l?s(t.exclamationToken,l,qk):t.exclamationToken,s(t.type,r,ji),s(t.initializer,r,yt))},261:function(t,r,i,o,s,l){return i.factory.updateVariableDeclarationList(t,o(t.declarations,r,wi))},262:function(t,r,i,o,s,l){return i.factory.updateFunctionDeclaration(t,o(t.modifiers,r,xa),l?s(t.asteriskToken,l,Hk):t.asteriskToken,s(t.name,r,Ve),o(t.typeParameters,r,gl),Dl(t.parameters,r,i,o),s(t.type,r,ji),lf(t.body,r,i,s))},263:function(t,r,i,o,s,l){return i.factory.updateClassDeclaration(t,o(t.modifiers,r,ll),s(t.name,r,Ve),o(t.typeParameters,r,gl),o(t.heritageClauses,r,of),o(t.members,r,$c))},264:function(t,r,i,o,s,l){return i.factory.updateInterfaceDeclaration(t,o(t.modifiers,r,ll),N.checkDefined(s(t.name,r,Ve)),o(t.typeParameters,r,gl),o(t.heritageClauses,r,of),o(t.members,r,yS))},265:function(t,r,i,o,s,l){return i.factory.updateTypeAliasDeclaration(t,o(t.modifiers,r,ll),N.checkDefined(s(t.name,r,Ve)),o(t.typeParameters,r,gl),N.checkDefined(s(t.type,r,ji)))},266:function(t,r,i,o,s,l){return i.factory.updateEnumDeclaration(t,o(t.modifiers,r,ll),N.checkDefined(s(t.name,r,Ve)),o(t.members,r,u1))},267:function(t,r,i,o,s,l){return i.factory.updateModuleDeclaration(t,o(t.modifiers,r,ll),N.checkDefined(s(t.name,r,hse)),s(t.body,r,Xre))},268:function(t,r,i,o,s,l){return i.factory.updateModuleBlock(t,o(t.statements,r,qi))},269:function(t,r,i,o,s,l){return i.factory.updateCaseBlock(t,o(t.clauses,r,L4))},270:function(t,r,i,o,s,l){return i.factory.updateNamespaceExportDeclaration(t,N.checkDefined(s(t.name,r,Ve)))},271:function(t,r,i,o,s,l){return i.factory.updateImportEqualsDeclaration(t,o(t.modifiers,r,ll),t.isTypeOnly,N.checkDefined(s(t.name,r,Ve)),N.checkDefined(s(t.moduleReference,r,eie)))},272:function(t,r,i,o,s,l){return i.factory.updateImportDeclaration(t,o(t.modifiers,r,ll),s(t.importClause,r,Sh),N.checkDefined(s(t.moduleSpecifier,r,yt)),s(t.attributes,r,mI))},300:function(t,r,i,o,s,l){return i.factory.updateImportAttributes(t,o(t.elements,r,qae),t.multiLine)},301:function(t,r,i,o,s,l){return i.factory.updateImportAttribute(t,N.checkDefined(s(t.name,r,zre)),N.checkDefined(s(t.value,r,yt)))},273:function(t,r,i,o,s,l){return i.factory.updateImportClause(t,t.isTypeOnly,s(t.name,r,Ve),s(t.namedBindings,r,pj))},274:function(t,r,i,o,s,l){return i.factory.updateNamespaceImport(t,N.checkDefined(s(t.name,r,Ve)))},280:function(t,r,i,o,s,l){return i.factory.updateNamespaceExport(t,N.checkDefined(s(t.name,r,Ve)))},275:function(t,r,i,o,s,l){return i.factory.updateNamedImports(t,o(t.elements,r,np))},276:function(t,r,i,o,s,l){return i.factory.updateImportSpecifier(t,t.isTypeOnly,s(t.propertyName,r,Ve),N.checkDefined(s(t.name,r,Ve)))},277:function(t,r,i,o,s,l){return i.factory.updateExportAssignment(t,o(t.modifiers,r,ll),N.checkDefined(s(t.expression,r,yt)))},278:function(t,r,i,o,s,l){return i.factory.updateExportDeclaration(t,o(t.modifiers,r,ll),t.isTypeOnly,s(t.exportClause,r,ej),s(t.moduleSpecifier,r,yt),s(t.attributes,r,mI))},279:function(t,r,i,o,s,l){return i.factory.updateNamedExports(t,o(t.elements,r,Ku))},281:function(t,r,i,o,s,l){return i.factory.updateExportSpecifier(t,t.isTypeOnly,s(t.propertyName,r,Ve),N.checkDefined(s(t.name,r,Ve)))},283:function(t,r,i,o,s,l){return i.factory.updateExternalModuleReference(t,N.checkDefined(s(t.expression,r,yt)))},284:function(t,r,i,o,s,l){return i.factory.updateJsxElement(t,N.checkDefined(s(t.openingElement,r,W_)),o(t.children,r,AL),N.checkDefined(s(t.closingElement,r,a1)))},285:function(t,r,i,o,s,l){return i.factory.updateJsxSelfClosingElement(t,N.checkDefined(s(t.tagName,r,vC)),o(t.typeArguments,r,ji),N.checkDefined(s(t.attributes,r,l1)))},286:function(t,r,i,o,s,l){return i.factory.updateJsxOpeningElement(t,N.checkDefined(s(t.tagName,r,vC)),o(t.typeArguments,r,ji),N.checkDefined(s(t.attributes,r,l1)))},287:function(t,r,i,o,s,l){return i.factory.updateJsxClosingElement(t,N.checkDefined(s(t.tagName,r,vC)))},295:function(t,r,i,o,s,l){return i.factory.updateJsxNamespacedName(t,N.checkDefined(s(t.namespace,r,Ve)),N.checkDefined(s(t.name,r,Ve)))},288:function(t,r,i,o,s,l){return i.factory.updateJsxFragment(t,N.checkDefined(s(t.openingFragment,r,hI)),o(t.children,r,AL),N.checkDefined(s(t.closingFragment,r,Jae)))},291:function(t,r,i,o,s,l){return i.factory.updateJsxAttribute(t,N.checkDefined(s(t.name,r,sae)),s(t.initializer,r,tie))},292:function(t,r,i,o,s,l){return i.factory.updateJsxAttributes(t,o(t.properties,r,M4))},293:function(t,r,i,o,s,l){return i.factory.updateJsxSpreadAttribute(t,N.checkDefined(s(t.expression,r,yt)))},294:function(t,r,i,o,s,l){return i.factory.updateJsxExpression(t,s(t.expression,r,yt))},296:function(t,r,i,o,s,l){return i.factory.updateCaseClause(t,N.checkDefined(s(t.expression,r,yt)),o(t.statements,r,qi))},297:function(t,r,i,o,s,l){return i.factory.updateDefaultClause(t,o(t.statements,r,qi))},298:function(t,r,i,o,s,l){return i.factory.updateHeritageClause(t,o(t.types,r,Kv))},299:function(t,r,i,o,s,l){return i.factory.updateCatchClause(t,s(t.variableDeclaration,r,wi),N.checkDefined(s(t.block,r,Xo)))},303:function(t,r,i,o,s,l){return i.factory.updatePropertyAssignment(t,N.checkDefined(s(t.name,r,oc)),N.checkDefined(s(t.initializer,r,yt)))},304:function(t,r,i,o,s,l){return i.factory.updateShorthandPropertyAssignment(t,N.checkDefined(s(t.name,r,Ve)),s(t.objectAssignmentInitializer,r,yt))},305:function(t,r,i,o,s,l){return i.factory.updateSpreadAssignment(t,N.checkDefined(s(t.expression,r,yt)))},306:function(t,r,i,o,s,l){return i.factory.updateEnumMember(t,N.checkDefined(s(t.name,r,oc)),s(t.initializer,r,yt))},312:function(t,r,i,o,s,l){return i.factory.updateSourceFile(t,Zq(t.statements,r,i))},360:function(t,r,i,o,s,l){return i.factory.updatePartiallyEmittedExpression(t,N.checkDefined(s(t.expression,r,yt)))},361:function(t,r,i,o,s,l){return i.factory.updateCommaListExpression(t,o(t.elements,r,yt))}}}});function Sle(e,t,r,i,o){var{enter:s,exit:l}=o.extendedDiagnostics?PG("Source Map","beforeSourcemap","afterSourcemap"):MG,u=[],p=[],h=new Map,m,b=[],A,I=[],R="",M=0,C=0,O=0,U=0,K=0,Z=0,V=!1,se=0,G=0,ne=0,he=0,ye=0,$=0,Y=!1,oe=!1,fe=!1;return{getSources:()=>u,addSource:Ne,setSourceContent:pe,addName:ie,addMapping:He,appendSourceMap:Ee,toJSON:Se,toString:()=>JSON.stringify(Se())};function Ne(at){s();const Gt=RA(i,at,e.getCurrentDirectory(),e.getCanonicalFileName,!0);let vt=h.get(Gt);return vt===void 0&&(vt=p.length,p.push(Gt),u.push(at),h.set(Gt,vt)),l(),vt}function pe(at,Gt){if(s(),Gt!==null){for(m||(m=[]);m.length<at;)m.push(null);m[at]=Gt}l()}function ie(at){s(),A||(A=new Map);let Gt=A.get(at);return Gt===void 0&&(Gt=b.length,b.push(at),A.set(at,Gt)),l(),Gt}function ve(at,Gt){return!Y||se!==at||G!==Gt}function Le(at,Gt,vt){return at!==void 0&&Gt!==void 0&&vt!==void 0&&ne===at&&(he>Gt||he===Gt&&ye>vt)}function He(at,Gt,vt,$e,It,tn){N.assert(at>=se,"generatedLine cannot backtrack"),N.assert(Gt>=0,"generatedCharacter cannot be negative"),N.assert(vt===void 0||vt>=0,"sourceIndex cannot be negative"),N.assert($e===void 0||$e>=0,"sourceLine cannot be negative"),N.assert(It===void 0||It>=0,"sourceCharacter cannot be negative"),s(),(ve(at,Gt)||Le(vt,$e,It))&&(We(),se=at,G=Gt,oe=!1,fe=!1,Y=!0),vt!==void 0&&$e!==void 0&&It!==void 0&&(ne=vt,he=$e,ye=It,oe=!0,tn!==void 0&&($=tn,fe=!0)),l()}function Ee(at,Gt,vt,$e,It,tn){N.assert(at>=se,"generatedLine cannot backtrack"),N.assert(Gt>=0,"generatedCharacter cannot be negative"),s();const rn=[];let Pn;const Xn=nJ(vt.mappings);for(const hn of Xn){if(tn&&(hn.generatedLine>tn.line||hn.generatedLine===tn.line&&hn.generatedCharacter>tn.character))break;if(It&&(hn.generatedLine<It.line||It.line===hn.generatedLine&&hn.generatedCharacter<It.character))continue;let Qt,$t,_i,ao;if(hn.sourceIndex!==void 0){if(Qt=rn[hn.sourceIndex],Qt===void 0){const Ar=vt.sources[hn.sourceIndex],sn=vt.sourceRoot?Qr(vt.sourceRoot,Ar):Ar,tt=Qr(ai($e),sn);rn[hn.sourceIndex]=Qt=Ne(tt),vt.sourcesContent&&typeof vt.sourcesContent[hn.sourceIndex]=="string"&&pe(Qt,vt.sourcesContent[hn.sourceIndex])}$t=hn.sourceLine,_i=hn.sourceCharacter,vt.names&&hn.nameIndex!==void 0&&(Pn||(Pn=[]),ao=Pn[hn.nameIndex],ao===void 0&&(Pn[hn.nameIndex]=ao=ie(vt.names[hn.nameIndex])))}const Oi=hn.generatedLine-(It?It.line:0),No=Oi+at,Mn=It&&It.line===hn.generatedLine?hn.generatedCharacter-It.character:hn.generatedCharacter,Di=Oi===0?Mn+Gt:Mn;He(No,Di,Qt,$t,_i,ao)}l()}function De(){return!V||M!==se||C!==G||O!==ne||U!==he||K!==ye||Z!==$}function Pe(at){I.push(at),I.length>=1024&&At()}function We(){if(!(!Y||!De())){if(s(),M<se){do Pe(59),M++;while(M<se);C=0}else N.assertEqual(M,se,"generatedLine cannot backtrack"),V&&Pe(44);je(G-C),C=G,oe&&(je(ne-O),O=ne,je(he-U),U=he,je(ye-K),K=ye,fe&&(je($-Z),Z=$)),V=!0,l()}}function At(){I.length>0&&(R+=String.fromCharCode.apply(void 0,I),I.length=0)}function Se(){return We(),At(),{version:3,file:t,sourceRoot:r,sources:p,names:b,mappings:R,sourcesContent:m}}function je(at){at<0?at=(-at<<1)+1:at=at<<1;do{let Gt=at&31;at=at>>5,at>0&&(Gt=Gt|32),Pe(qje(Gt))}while(at>0)}}function eJ(e,t){return{getLineCount:()=>t.length,getLineText:r=>e.substring(t[r],t[r+1])}}function Tle(e){for(let t=e.getLineCount()-1;t>=0;t--){const r=e.getLineText(t),i=e7.exec(r);if(i)return i[1].trimEnd();if(!r.match(t7))break}}function Hje(e){return typeof e=="string"||e===null}function Ale(e){return e!==null&&typeof e=="object"&&e.version===3&&typeof e.file=="string"&&typeof e.mappings=="string"&&To(e.sources)&&Zn(e.sources,Po)&&(e.sourceRoot===void 0||e.sourceRoot===null||typeof e.sourceRoot=="string")&&(e.sourcesContent===void 0||e.sourcesContent===null||To(e.sourcesContent)&&Zn(e.sourcesContent,Hje))&&(e.names===void 0||e.names===null||To(e.names)&&Zn(e.names,Po))}function tJ(e){try{const t=JSON.parse(e);if(Ale(t))return t}catch{}}function nJ(e){let t=!1,r=0,i=0,o=0,s=0,l=0,u=0,p=0,h;return{get pos(){return r},get error(){return h},get state(){return m(!0,!0)},next(){for(;!t&&r<e.length;){const O=e.charCodeAt(r);if(O===59){i++,o=0,r++;continue}if(O===44){r++;continue}let U=!1,K=!1;if(o+=C(),R())return b();if(o<0)return I("Invalid generatedCharacter found");if(!M()){if(U=!0,s+=C(),R())return b();if(s<0)return I("Invalid sourceIndex found");if(M())return I("Unsupported Format: No entries after sourceIndex");if(l+=C(),R())return b();if(l<0)return I("Invalid sourceLine found");if(M())return I("Unsupported Format: No entries after sourceLine");if(u+=C(),R())return b();if(u<0)return I("Invalid sourceCharacter found");if(!M()){if(K=!0,p+=C(),R())return b();if(p<0)return I("Invalid nameIndex found");if(!M())return I("Unsupported Error Format: Entries after nameIndex")}}return{value:m(U,K),done:t}}return b()},[Symbol.iterator](){return this}};function m(O,U){return{generatedLine:i,generatedCharacter:o,sourceIndex:O?s:void 0,sourceLine:O?l:void 0,sourceCharacter:O?u:void 0,nameIndex:U?p:void 0}}function b(){return t=!0,{value:void 0,done:!0}}function A(O){h===void 0&&(h=O)}function I(O){return A(O),b()}function R(){return h!==void 0}function M(){return r===e.length||e.charCodeAt(r)===44||e.charCodeAt(r)===59}function C(){let O=!0,U=0,K=0;for(;O;r++){if(r>=e.length)return A("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;const Z=Jje(e.charCodeAt(r));if(Z===-1)return A("Invalid character in VLQ"),-1;O=(Z&32)!==0,K=K|(Z&31)<<U,U+=5}return K&1?(K=K>>1,K=-K):K=K>>1,K}}function Wxe(e,t){return e===t||e.generatedLine===t.generatedLine&&e.generatedCharacter===t.generatedCharacter&&e.sourceIndex===t.sourceIndex&&e.sourceLine===t.sourceLine&&e.sourceCharacter===t.sourceCharacter&&e.nameIndex===t.nameIndex}function Ile(e){return e.sourceIndex!==void 0&&e.sourceLine!==void 0&&e.sourceCharacter!==void 0}function qje(e){return e>=0&&e<26?65+e:e>=26&&e<52?97+e-26:e>=52&&e<62?48+e-52:e===62?43:e===63?47:N.fail(`${e}: not a base64 value`)}function Jje(e){return e>=65&&e<=90?e-65:e>=97&&e<=122?e-97+26:e>=48&&e<=57?e-48+52:e===43?62:e===47?63:-1}function Fxe(e){return e.sourceIndex!==void 0&&e.sourcePosition!==void 0}function zxe(e,t){return e.generatedPosition===t.generatedPosition&&e.sourceIndex===t.sourceIndex&&e.sourcePosition===t.sourcePosition}function Kje(e,t){return N.assert(e.sourceIndex===t.sourceIndex),rl(e.sourcePosition,t.sourcePosition)}function Xje(e,t){return rl(e.generatedPosition,t.generatedPosition)}function Yje(e){return e.sourcePosition}function $je(e){return e.generatedPosition}function xle(e,t,r){const i=ai(r),o=t.sourceRoot?go(t.sourceRoot,i):i,s=go(t.file,i),l=e.getSourceFileLike(s),u=t.sources.map(U=>go(U,o)),p=new Map(u.map((U,K)=>[e.getCanonicalFileName(U),K]));let h,m,b;return{getSourcePosition:O,getGeneratedPosition:C};function A(U){const K=l!==void 0?tL(l,U.generatedLine,U.generatedCharacter,!0):-1;let Z,V;if(Ile(U)){const se=e.getSourceFileLike(u[U.sourceIndex]);Z=t.sources[U.sourceIndex],V=se!==void 0?tL(se,U.sourceLine,U.sourceCharacter,!0):-1}return{generatedPosition:K,source:Z,sourceIndex:U.sourceIndex,sourcePosition:V,nameIndex:U.nameIndex}}function I(){if(h===void 0){const U=nJ(t.mappings),K=zo(U,A);U.error!==void 0?(e.log&&e.log(`Encountered error while decoding sourcemap: ${U.error}`),h=et):h=K}return h}function R(U){if(b===void 0){const K=[];for(const Z of I()){if(!Fxe(Z))continue;let V=K[Z.sourceIndex];V||(K[Z.sourceIndex]=V=[]),V.push(Z)}b=K.map(Z=>KN(Z,Kje,zxe))}return b[U]}function M(){if(m===void 0){const U=[];for(const K of I())U.push(K);m=KN(U,Xje,zxe)}return m}function C(U){const K=p.get(e.getCanonicalFileName(U.fileName));if(K===void 0)return U;const Z=R(K);if(!bt(Z))return U;let V=bA(Z,U.pos,Yje,rl);V<0&&(V=~V);const se=Z[V];return se===void 0||se.sourceIndex!==K?U:{fileName:s,pos:se.generatedPosition}}function O(U){const K=M();if(!bt(K))return U;let Z=bA(K,U.pos,$je,rl);Z<0&&(Z=~Z);const V=K[Z];return V===void 0||!Fxe(V)?U:{fileName:u[V.sourceIndex],pos:V.sourcePosition}}}var rJ,e7,t7,n7,Qje=T({"src/compiler/sourcemap.ts"(){ra(),fS(),rJ=/\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,e7=/^\/\/[@#] source[M]appingURL=(.+)\r?\n?$/,t7=/^\s*(\/\/[@#] .*)?$/,n7={getSourcePosition:nl,getGeneratedPosition:nl}}});function Wu(e){return e=Pl(e),e?as(e):0}function Zje(e){return!e||!Hg(e)?!1:bt(e.elements,Bxe)}function Bxe(e){return e.propertyName!==void 0&&e.propertyName.escapedText==="default"}function Pm(e,t){return r;function r(o){return o.kind===312?t(o):i(o)}function i(o){return e.factory.createBundle(wt(o.sourceFiles,t),o.prepends)}}function Rle(e){return!!bR(e)}function r7(e){if(bR(e))return!0;const t=e.importClause&&e.importClause.namedBindings;if(!t||!Hg(t))return!1;let r=0;for(const i of t.elements)Bxe(i)&&r++;return r>0&&r!==t.elements.length||!!(t.elements.length-r)&&WA(e)}function iJ(e){return!r7(e)&&(WA(e)||!!e.importClause&&Hg(e.importClause.namedBindings)&&Zje(e.importClause.namedBindings))}function oJ(e,t){const r=e.getEmitResolver(),i=e.getCompilerOptions(),o=[],s=new cJ,l=[],u=new Map;let p,h=!1,m,b=!1,A=!1,I=!1;for(const C of t.statements)switch(C.kind){case 272:o.push(C),!A&&r7(C)&&(A=!0),!I&&iJ(C)&&(I=!0);break;case 271:C.moduleReference.kind===283&&o.push(C);break;case 278:if(C.moduleSpecifier)if(!C.exportClause)o.push(C),b=!0;else if(o.push(C),Pf(C.exportClause))M(C);else{const O=C.exportClause.name;u.get(Sr(O))||(zP(l,Wu(C),O),u.set(Sr(O),!0),p=xn(p,O)),A=!0}else M(C);break;case 277:C.isExportEquals&&!m&&(m=C);break;case 243:if(Zr(C,32))for(const O of C.declarationList.declarations)p=Gxe(O,u,p,l);break;case 262:if(Zr(C,32))if(Zr(C,2048))h||(zP(l,Wu(C),e.factory.getDeclarationName(C)),h=!0);else{const O=C.name;u.get(Sr(O))||(zP(l,Wu(C),O),u.set(Sr(O),!0),p=xn(p,O))}break;case 263:if(Zr(C,32))if(Zr(C,2048))h||(zP(l,Wu(C),e.factory.getDeclarationName(C)),h=!0);else{const O=C.name;O&&!u.get(Sr(O))&&(zP(l,Wu(C),O),u.set(Sr(O),!0),p=xn(p,O))}break}const R=YH(e.factory,e.getEmitHelperFactory(),t,i,b,A,I);return R&&o.unshift(R),{externalImports:o,exportSpecifiers:s,exportEquals:m,hasExportStarsToExportValues:b,exportedBindings:l,exportedNames:p,externalHelpersImportDeclaration:R};function M(C){for(const O of aa(C.exportClause,Pf).elements)if(!u.get(Sr(O.name))){const U=O.propertyName||O.name;C.moduleSpecifier||s.add(U,O);const K=r.getReferencedImportDeclaration(U)||r.getReferencedValueDeclaration(U);K&&zP(l,Wu(K),O.name),u.set(Sr(O.name),!0),p=xn(p,O.name)}}}function Gxe(e,t,r,i){if(ta(e.name))for(const o of e.name.elements)jc(o)||(r=Gxe(o,t,r,i));else if(!sl(e.name)){const o=Sr(e.name);t.get(o)||(t.set(o,!0),r=xn(r,e.name),qg(e.name)&&zP(i,Wu(e),e.name))}return r}function zP(e,t,r){let i=e[t];return i?i.push(r):e[t]=i=[r],i}function _1(e){return ls(e)||e.kind===9||Bd(e.kind)||Ve(e)}function Rh(e){return!Ve(e)&&_1(e)}function BP(e){return e>=65&&e<=79}function GP(e){switch(e){case 65:return 40;case 66:return 41;case 67:return 42;case 68:return 43;case 69:return 44;case 70:return 45;case 71:return 48;case 72:return 49;case 73:return 50;case 74:return 51;case 75:return 52;case 79:return 53;case 76:return 57;case 77:return 56;case 78:return 61}}function i7(e){if(!eu(e))return;const t=hs(e.expression);return IS(t)?t:void 0}function Vxe(e,t,r){for(let i=t;i<e.length;i+=1){const o=e[i];if(i7(o))return r.unshift(i),!0;if(qS(o)&&Vxe(o.tryBlock.statements,0,r))return r.unshift(i),!0}return!1}function o7(e,t){const r=[];return Vxe(e,t,r),r}function aJ(e,t,r){return nr(e.members,i=>tUe(i,t,r))}function eUe(e){return nUe(e)||Rl(e)}function a7(e){return nr(e.members,eUe)}function tUe(e,t,r){return Jo(e)&&(!!e.initializer||!t)&&mc(e)===r}function nUe(e){return Jo(e)&&mc(e)}function ww(e){return e.kind===172&&e.initializer!==void 0}function Dle(e){return!sa(e)&&(MA(e)||Wd(e))&&Ji(e.name)}function Nle(e){let t;if(e){const r=e.parameters,i=r.length>0&&JE(r[0]),o=i?1:0,s=i?r.length-1:r.length;for(let l=0;l<s;l++){const u=r[l+o];(t||If(u))&&(t||(t=new Array(s)),t[l]=Ly(u))}}return t}function sJ(e){const t=Ly(e),r=Nle(ag(e));if(!(!bt(t)&&!bt(r)))return{decorators:t,parameters:r}}function s7(e,t,r){switch(e.kind){case 177:case 178:return r?rUe(e,t):jxe(e);case 174:return jxe(e);case 172:return iUe(e);default:return}}function rUe(e,t){if(!e.body)return;const{firstAccessor:r,secondAccessor:i,getAccessor:o,setAccessor:s}=wS(t.members,e),l=If(r)?r:i&&If(i)?i:void 0;if(!l||e!==l)return;const u=Ly(l),p=Nle(s);if(!(!bt(u)&&!bt(p)))return{decorators:u,parameters:p,getDecorators:o&&Ly(o),setDecorators:s&&Ly(s)}}function jxe(e){if(!e.body)return;const t=Ly(e),r=Nle(e);if(!(!bt(t)&&!bt(r)))return{decorators:t,parameters:r}}function iUe(e){const t=Ly(e);if(bt(t))return{decorators:t}}function Cle(e,t){for(;e;){const r=t(e);if(r!==void 0)return r;e=e.previous}}function Ple(e){return{data:e}}function lJ(e,t){var r,i;return gS(t)?(r=e==null?void 0:e.generatedIdentifiers)==null?void 0:r.get(lw(t)):(i=e==null?void 0:e.identifiers)==null?void 0:i.get(t.escapedText)}function eT(e,t,r){gS(t)?(e.generatedIdentifiers??(e.generatedIdentifiers=new Map),e.generatedIdentifiers.set(lw(t),r)):(e.identifiers??(e.identifiers=new Map),e.identifiers.set(t.escapedText,r))}function Mle(e,t){return Cle(e,r=>lJ(r.privateEnv,t))}function Lle(e){return!e.initializer&&Ve(e.name)}function Ow(e){return Zn(e,Lle)}var II,cJ,oUe=T({"src/compiler/transformers/utilities.ts"(){ra(),II=class UN{constructor(){this._map=new Map}get size(){return this._map.size}has(t){return this._map.has(UN.toKey(t))}get(t){return this._map.get(UN.toKey(t))}set(t,r){return this._map.set(UN.toKey(t),r),this}delete(t){var r;return((r=this._map)==null?void 0:r.delete(UN.toKey(t)))??!1}clear(){this._map.clear()}values(){return this._map.values()}static toKey(t){if(gS(t)||sl(t)){const r=t.emitNode.autoGenerate;if((r.flags&7)===4){const i=lw(t),o=Qh(i)&&i!==t?UN.toKey(i):`(generated@${as(i)})`;return N0(!1,r.prefix,o,r.suffix,UN.toKey)}else{const i=`(auto@${r.id})`;return N0(!1,r.prefix,i,r.suffix,UN.toKey)}}return Ji(t)?Sr(t).slice(1):Sr(t)}},cJ=class extends II{add(e,t){let r=this.get(e);return r?r.push(t):this.set(e,r=[t]),r}remove(e,t){const r=this.get(e);r&&(TA(r,t),r.length||this.delete(e))}}}});function tT(e,t,r,i,o,s){let l=e,u;if(jv(e))for(u=e.right;boe(e.left)||TU(e.left);)if(jv(u))l=e=u,u=e.right;else return N.checkDefined(nt(u,t,yt));let p;const h={context:r,level:i,downlevelIteration:!!r.getCompilerOptions().downlevelIteration,hoistTempVariables:!0,emitExpression:m,emitBindingOrAssignment:b,createArrayBindingOrAssignmentPattern:A=>fUe(r.factory,A),createObjectBindingOrAssignmentPattern:A=>_Ue(r.factory,A),createArrayBindingOrAssignmentElement:gUe,visitor:t};if(u&&(u=nt(u,t,yt),N.assert(u),Ve(u)&&kle(e,u.escapedText)||wle(e)?u=xI(h,u,!1,l):o?u=xI(h,u,!0,l):$s(e)&&(l=u)),VP(h,e,u,l,jv(e)),u&&o){if(!bt(p))return u;p.push(u)}return r.factory.inlineExpressions(p)||r.factory.createOmittedExpression();function m(A){p=xn(p,A)}function b(A,I,R,M){N.assertNode(A,s?Ve:yt);const C=s?s(A,I,R):dt(r.factory.createAssignment(N.checkDefined(nt(A,t,yt)),I),R);C.original=M,m(C)}}function kle(e,t){const r=rb(e);return vL(r)?aUe(r,t):Ve(r)?r.escapedText===t:!1}function aUe(e,t){const r=rD(e);for(const i of r)if(kle(i,t))return!0;return!1}function wle(e){const t=vF(e);if(t&&Za(t)&&!kE(t.expression))return!0;const r=rb(e);return!!r&&vL(r)&&sUe(r)}function sUe(e){return!!Ue(rD(e),wle)}function h1(e,t,r,i,o,s=!1,l){let u;const p=[],h=[],m={context:r,level:i,downlevelIteration:!!r.getCompilerOptions().downlevelIteration,hoistTempVariables:s,emitExpression:b,emitBindingOrAssignment:A,createArrayBindingOrAssignmentPattern:I=>pUe(r.factory,I),createObjectBindingOrAssignmentPattern:I=>mUe(r.factory,I),createArrayBindingOrAssignmentElement:I=>hUe(r.factory,I),visitor:t};if(wi(e)){let I=aw(e);I&&(Ve(I)&&kle(e,I.escapedText)||wle(e))&&(I=xI(m,N.checkDefined(nt(I,m.visitor,yt)),!1,I),e=r.factory.updateVariableDeclaration(e,e.name,void 0,void 0,I))}if(VP(m,e,o,e,l),u){const I=r.factory.createTempVariable(void 0);if(s){const R=r.factory.inlineExpressions(u);u=void 0,A(I,R,void 0,void 0)}else{r.hoistVariableDeclaration(I);const R=Ya(p);R.pendingExpressions=xn(R.pendingExpressions,r.factory.createAssignment(I,R.value)),Jr(R.pendingExpressions,u),R.value=I}}for(const{pendingExpressions:I,name:R,value:M,location:C,original:O}of p){const U=r.factory.createVariableDeclaration(R,void 0,void 0,I?r.factory.inlineExpressions(xn(I,M)):M);U.original=O,dt(U,C),h.push(U)}return h;function b(I){u=xn(u,I)}function A(I,R,M,C){N.assertNode(I,vS),u&&(R=r.factory.inlineExpressions(xn(u,R)),u=void 0),p.push({pendingExpressions:u,name:I,value:R,location:M,original:C})}}function VP(e,t,r,i,o){const s=rb(t);if(!o){const l=nt(aw(t),e.visitor,yt);l?r?(r=uUe(e,r,l,i),!Rh(l)&&vL(s)&&(r=xI(e,r,!0,i))):r=l:r||(r=e.context.factory.createVoidZero())}sj(s)?lUe(e,t,s,r,i):lj(s)?cUe(e,t,s,r,i):e.emitBindingOrAssignment(s,r,i,t)}function lUe(e,t,r,i,o){const s=rD(r),l=s.length;if(l!==1){const h=!gL(t)||l!==0;i=xI(e,i,h,o)}let u,p;for(let h=0;h<l;h++){const m=s[h];if(gF(m)){if(h===l-1){u&&(e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(u),i,o,r),u=void 0);const b=e.context.getEmitHelperFactory().createRestHelper(i,s,p,r);VP(e,m,b,m)}}else{const b=$H(m);if(e.level>=1&&!(m.transformFlags&98304)&&!(rb(m).transformFlags&98304)&&!Za(b))u=xn(u,nt(m,e.visitor,Vre));else{u&&(e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(u),i,o,r),u=void 0);const A=dUe(e,i,b);Za(b)&&(p=xn(p,A.argumentExpression)),VP(e,m,A,m)}}}u&&e.emitBindingOrAssignment(e.createObjectBindingOrAssignmentPattern(u),i,o,r)}function cUe(e,t,r,i,o){const s=rD(r),l=s.length;if(e.level<1&&e.downlevelIteration)i=xI(e,dt(e.context.getEmitHelperFactory().createReadHelper(i,l>0&&gF(s[l-1])?void 0:l),o),!1,o);else if(l!==1&&(e.level<1||l===0)||Zn(s,jc)){const h=!gL(t)||l!==0;i=xI(e,i,h,o)}let u,p;for(let h=0;h<l;h++){const m=s[h];if(e.level>=1)if(m.transformFlags&65536||e.hasTransformedPriorElement&&!Uxe(m)){e.hasTransformedPriorElement=!0;const b=e.context.factory.createTempVariable(void 0);e.hoistTempVariables&&e.context.hoistVariableDeclaration(b),p=xn(p,[b,m]),u=xn(u,e.createArrayBindingOrAssignmentElement(b))}else u=xn(u,m);else{if(jc(m))continue;if(gF(m)){if(h===l-1){const b=e.context.factory.createArraySliceCall(i,h);VP(e,m,b,m)}}else{const b=e.context.factory.createElementAccessExpression(i,h);VP(e,m,b,m)}}}if(u&&e.emitBindingOrAssignment(e.createArrayBindingOrAssignmentPattern(u),i,o,r),p)for(const[h,m]of p)VP(e,m,h,m)}function Uxe(e){const t=rb(e);if(!t||jc(t))return!0;const r=vF(e);if(r&&!N_(r))return!1;const i=aw(e);return i&&!Rh(i)?!1:vL(t)?Zn(rD(t),Uxe):Ve(t)}function uUe(e,t,r,i){return t=xI(e,t,!0,i),e.context.factory.createConditionalExpression(e.context.factory.createTypeCheck(t,"undefined"),void 0,r,void 0,t)}function dUe(e,t,r){const{factory:i}=e.context;if(Za(r)){const o=xI(e,N.checkDefined(nt(r.expression,e.visitor,yt)),!1,r);return e.context.factory.createElementAccessExpression(t,o)}else if(nf(r)){const o=i.cloneNode(r);return e.context.factory.createElementAccessExpression(t,o)}else{const o=e.context.factory.createIdentifier(Sr(r));return e.context.factory.createPropertyAccessExpression(t,o)}}function xI(e,t,r,i){if(Ve(t)&&r)return t;{const o=e.context.factory.createTempVariable(void 0);return e.hoistTempVariables?(e.context.hoistVariableDeclaration(o),e.emitExpression(dt(e.context.factory.createAssignment(o,t),i))):e.emitBindingOrAssignment(o,t,i,void 0),o}}function pUe(e,t){return N.assertEachNode(t,N4),e.createArrayBindingPattern(t)}function fUe(e,t){return N.assertEachNode(t,bL),e.createArrayLiteralExpression(wt(t,e.converters.convertToArrayAssignmentElement))}function mUe(e,t){return N.assertEachNode(t,Qa),e.createObjectBindingPattern(t)}function _Ue(e,t){return N.assertEachNode(t,yL),e.createObjectLiteralExpression(wt(t,e.converters.convertToObjectAssignmentElement))}function hUe(e,t){return e.createBindingElement(void 0,void 0,t)}function gUe(e){return e}var uJ,vUe=T({"src/compiler/transformers/destructuring.ts"(){ra(),uJ=(e=>(e[e.All=0]="All",e[e.ObjectRest=1]="ObjectRest",e))(uJ||{})}});function Ole(e,t,r=e.createThis()){const i=e.createAssignment(t,r),o=e.createExpressionStatement(i),s=e.createBlock([o],!1),l=e.createClassStaticBlockDeclaration(s);return Ou(l).classThis=t,l}function jP(e){var t;if(!Rl(e)||e.body.statements.length!==1)return!1;const r=e.body.statements[0];return eu(r)&&Lc(r.expression,!0)&&Ve(r.expression.left)&&((t=e.emitNode)==null?void 0:t.classThis)===r.expression.left&&r.expression.right.kind===110}function dJ(e){var t;return!!((t=e.emitNode)!=null&&t.classThis)&&bt(e.members,jP)}function Wle(e,t,r,i){if(dJ(t))return t;const o=Ole(e,r,i);t.name&&Pa(o.body.statements[0],t.name);const s=e.createNodeArray([o,...t.members]);dt(s,t.members);const l=Ic(t)?e.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,s):e.updateClassExpression(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,s);return Ou(l).classThis=r,l}var yUe=T({"src/compiler/transformers/classThis.ts"(){ra()}});function UP(e,t,r){const i=Pl($l(r));return(Ic(i)||Ac(i))&&!i.name&&Zr(i,2048)?e.createStringLiteral("default"):e.createStringLiteralFromNode(t)}function Hxe(e,t,r){const{factory:i}=e;if(r!==void 0)return{assignedName:i.createStringLiteral(r),name:t};if(N_(t)||Ji(t))return{assignedName:i.createStringLiteralFromNode(t),name:t};if(N_(t.expression)&&!Ve(t.expression))return{assignedName:i.createStringLiteralFromNode(t.expression),name:t};const o=i.getGeneratedNameForNode(t);e.hoistVariableDeclaration(o);const s=e.getEmitHelperFactory().createPropKeyHelper(t.expression),l=i.createAssignment(o,s),u=i.updateComputedPropertyName(t,l);return{assignedName:o,name:u}}function Fle(e,t,r=e.factory.createThis()){const{factory:i}=e,o=e.getEmitHelperFactory().createSetFunctionNameHelper(r,t),s=i.createExpressionStatement(o),l=i.createBlock([s],!1),u=i.createClassStaticBlockDeclaration(l);return Ou(u).assignedName=t,u}function RI(e){var t;if(!Rl(e)||e.body.statements.length!==1)return!1;const r=e.body.statements[0];return eu(r)&&mP(r.expression,"___setFunctionName")&&r.expression.arguments.length>=2&&r.expression.arguments[1]===((t=e.emitNode)==null?void 0:t.assignedName)}function l7(e){var t;return!!((t=e.emitNode)!=null&&t.assignedName)&&bt(e.members,RI)}function pJ(e){return!!e.name||l7(e)}function c7(e,t,r,i){if(l7(t))return t;const{factory:o}=e,s=Fle(e,r,i);t.name&&Pa(s.body.statements[0],t.name);const l=Gr(t.members,jP)+1,u=t.members.slice(0,l),p=t.members.slice(l),h=o.createNodeArray([...u,s,...p]);return dt(h,t.members),t=Ic(t)?o.updateClassDeclaration(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,h):o.updateClassExpression(t,t.modifiers,t.name,t.typeParameters,t.heritageClauses,h),Ou(t).assignedName=r,t}function mD(e,t,r,i){if(i&&Ma(r)&&zj(r))return t;const{factory:o}=e,s=$l(t),l=Zc(s)?aa(c7(e,s,r),Zc):e.getEmitHelperFactory().createSetFunctionNameHelper(s,r);return o.restoreOuterExpressions(t,l)}function bUe(e,t,r,i){const{factory:o}=e,{assignedName:s,name:l}=Hxe(e,t.name,i),u=mD(e,t.initializer,s,r);return o.updatePropertyAssignment(t,l,u)}function EUe(e,t,r,i){const{factory:o}=e,s=i!==void 0?o.createStringLiteral(i):UP(o,t.name,t.objectAssignmentInitializer),l=mD(e,t.objectAssignmentInitializer,s,r);return o.updateShorthandPropertyAssignment(t,t.name,l)}function SUe(e,t,r,i){const{factory:o}=e,s=i!==void 0?o.createStringLiteral(i):UP(o,t.name,t.initializer),l=mD(e,t.initializer,s,r);return o.updateVariableDeclaration(t,t.name,t.exclamationToken,t.type,l)}function TUe(e,t,r,i){const{factory:o}=e,s=i!==void 0?o.createStringLiteral(i):UP(o,t.name,t.initializer),l=mD(e,t.initializer,s,r);return o.updateParameterDeclaration(t,t.modifiers,t.dotDotDotToken,t.name,t.questionToken,t.type,l)}function AUe(e,t,r,i){const{factory:o}=e,s=i!==void 0?o.createStringLiteral(i):UP(o,t.name,t.initializer),l=mD(e,t.initializer,s,r);return o.updateBindingElement(t,t.dotDotDotToken,t.propertyName,t.name,l)}function IUe(e,t,r,i){const{factory:o}=e,{assignedName:s,name:l}=Hxe(e,t.name,i),u=mD(e,t.initializer,s,r);return o.updatePropertyDeclaration(t,t.modifiers,l,t.questionToken??t.exclamationToken,t.type,u)}function xUe(e,t,r,i){const{factory:o}=e,s=i!==void 0?o.createStringLiteral(i):UP(o,t.left,t.right),l=mD(e,t.right,s,r);return o.updateBinaryExpression(t,t.left,t.operatorToken,l)}function RUe(e,t,r,i){const{factory:o}=e,s=i!==void 0?o.createStringLiteral(i):o.createStringLiteral(t.isExportEquals?"":"default"),l=mD(e,t.expression,s,r);return o.updateExportAssignment(t,t.modifiers,l)}function Sp(e,t,r,i){switch(t.kind){case 303:return bUe(e,t,r,i);case 304:return EUe(e,t,r,i);case 260:return SUe(e,t,r,i);case 169:return TUe(e,t,r,i);case 208:return AUe(e,t,r,i);case 172:return IUe(e,t,r,i);case 226:return xUe(e,t,r,i);case 277:return RUe(e,t,r,i)}}var DUe=T({"src/compiler/transformers/namedEvaluation.ts"(){ra()}});function fJ(e,t,r,i,o,s){const l=nt(t.tag,r,yt);N.assert(l);const u=[void 0],p=[],h=[],m=t.template;if(s===0&&!uU(m))return In(t,r,e);const{factory:b}=e;if(rI(m))p.push(zle(b,m)),h.push(Ble(b,m,i));else{p.push(zle(b,m.head)),h.push(Ble(b,m.head,i));for(const I of m.templateSpans)p.push(zle(b,I.literal)),h.push(Ble(b,I.literal,i)),u.push(N.checkDefined(nt(I.expression,r,yt)))}const A=e.getEmitHelperFactory().createTemplateObjectHelper(b.createArrayLiteralExpression(p),b.createArrayLiteralExpression(h));if(sc(i)){const I=b.createUniqueName("templateObject");o(I),u[0]=b.createLogicalOr(I,b.createAssignment(I,A))}else u[0]=A;return b.createCallExpression(l,void 0,u)}function zle(e,t){return t.templateFlags&26656?e.createVoidZero():e.createStringLiteral(t.text)}function Ble(e,t,r){let i=t.rawText;if(i===void 0){N.assertIsDefined(r,"Template literal node is missing 'rawText' and does not have a source file. Possibly bad transform."),i=OE(r,t);const o=t.kind===15||t.kind===18;i=i.substring(1,i.length-(o?1:2))}return i=i.replace(/\r\n?/g,`
+`),dt(e.createStringLiteral(i),t)}var mJ,NUe=T({"src/compiler/transformers/taggedTemplate.ts"(){ra(),mJ=(e=>(e[e.LiftRestriction=0]="LiftRestriction",e[e.All=1]="All",e))(mJ||{})}});function Gle(e){const{factory:t,getEmitHelperFactory:r,startLexicalEnvironment:i,resumeLexicalEnvironment:o,endLexicalEnvironment:s,hoistVariableDeclaration:l}=e,u=e.getEmitResolver(),p=e.getCompilerOptions(),h=os(p),m=wu(p),b=!!p.experimentalDecorators,A=p.emitDecoratorMetadata?jle(e):void 0,I=e.onEmitNode,R=e.onSubstituteNode;e.onEmitNode=lc,e.onSubstituteNode=Nl,e.enableSubstitution(211),e.enableSubstitution(212);let M,C,O,U,K,Z,V,se;return G;function G(ee){return ee.kind===313?ne(ee):he(ee)}function ne(ee){return t.createBundle(ee.sourceFiles.map(he),Hi(ee.prepends,we=>we.kind===315?mH(we,"js"):we))}function he(ee){if(ee.isDeclarationFile)return ee;M=ee;const we=ye(ee,at);return Ug(we,e.readEmitHelpers()),M=void 0,we}function ye(ee,we){const Et=U,un=K,Er=Z;$(ee);const vr=we(ee);return U!==Et&&(K=un),U=Et,Z=Er,vr}function $(ee){switch(ee.kind){case 312:case 269:case 268:case 241:U=ee,K=void 0;break;case 263:case 262:if(Zr(ee,128))break;ee.name?J(ee):N.assert(ee.kind===263||Zr(ee,2048));break}}function Y(ee){return ye(ee,oe)}function oe(ee){return ee.transformFlags&1?je(ee):ee}function fe(ee){return ye(ee,Ne)}function Ne(ee){switch(ee.kind){case 272:case 271:case 277:case 278:return ie(ee);default:return oe(ee)}}function pe(ee){const we=Do(ee);if(we===ee||kl(ee))return!1;if(!we||we.kind!==ee.kind)return!0;switch(ee.kind){case 272:if(N.assertNode(we,kc),ee.importClause!==we.importClause||ee.attributes!==we.attributes)return!0;break;case 271:if(N.assertNode(we,tu),ee.name!==we.name||ee.isTypeOnly!==we.isTypeOnly||ee.moduleReference!==we.moduleReference&&(Zd(ee.moduleReference)||Zd(we.moduleReference)))return!0;break;case 278:if(N.assertNode(we,Yl),ee.exportClause!==we.exportClause||ee.attributes!==we.attributes)return!0;break}return!1}function ie(ee){if(pe(ee))return ee.transformFlags&1?In(ee,Y,e):ee;switch(ee.kind){case 272:return bn(ee);case 271:return xo(ee);case 277:return Ai(ee);case 278:return ir(ee);default:N.fail("Unhandled ellided statement")}}function ve(ee){return ye(ee,Le)}function Le(ee){if(!(ee.kind===278||ee.kind===272||ee.kind===273||ee.kind===271&&ee.moduleReference.kind===283))return ee.transformFlags&1||Zr(ee,32)?je(ee):ee}function He(ee){return we=>ye(we,Et=>Ee(Et,ee))}function Ee(ee,we){switch(ee.kind){case 176:return Rn(ee);case 172:return zt(ee,we);case 177:return Wa(ee,we);case 178:return Sn(ee,we);case 174:return Io(ee,we);case 175:return In(ee,Y,e);case 240:return ee;case 181:return;default:return N.failBadSyntaxKind(ee)}}function De(ee){return we=>ye(we,Et=>Pe(Et,ee))}function Pe(ee,we){switch(ee.kind){case 303:case 304:case 305:return Y(ee);case 177:return Wa(ee,we);case 178:return Sn(ee,we);case 174:return Io(ee,we);default:return N.failBadSyntaxKind(ee)}}function We(ee){return Eu(ee)?void 0:Y(ee)}function At(ee){return xa(ee)?void 0:Y(ee)}function Se(ee){if(!Eu(ee)&&!(UA(ee.kind)&28895)&&!(C&&ee.kind===95))return ee}function je(ee){if(qi(ee)&&Zr(ee,128))return t.createNotEmittedStatement(ee);switch(ee.kind){case 95:case 90:return C?void 0:ee;case 125:case 123:case 124:case 128:case 164:case 87:case 138:case 148:case 103:case 147:case 188:case 189:case 190:case 191:case 187:case 182:case 168:case 133:case 159:case 136:case 154:case 150:case 146:case 116:case 155:case 185:case 184:case 186:case 183:case 192:case 193:case 194:case 196:case 197:case 198:case 199:case 200:case 201:case 181:return;case 265:return t.createNotEmittedStatement(ee);case 270:return;case 264:return t.createNotEmittedStatement(ee);case 263:return tn(ee);case 231:return rn(ee);case 298:return Ar(ee);case 233:return sn(ee);case 210:return Gt(ee);case 176:case 172:case 174:case 177:case 178:case 175:return N.fail("Class and object literal elements must be visited with their respective visitors");case 262:return kn(ee);case 218:return qe(ee);case 219:return mt(ee);case 169:return ft(ee);case 217:return pt(ee);case 216:case 234:return j(ee);case 238:return Rt(ee);case 213:return Ye(ee);case 214:return _t(ee);case 215:return Vt(ee);case 235:return ot(ee);case 266:return q(ee);case 243:return Ct(ee);case 260:return Fe(ee);case 267:return Tt(ee);case 271:return xo(ee);case 285:return vn(ee);case 286:return fn(ee);default:return In(ee,Y,e)}}function at(ee){const we=fd(p,"alwaysStrict")&&!(sc(ee)&&m>=5)&&!Qf(ee);return t.updateSourceFile(ee,Zq(ee.statements,fe,e,0,we))}function Gt(ee){return t.updateObjectLiteralExpression(ee,Vn(ee.properties,De(ee),Wg))}function vt(ee){let we=0;bt(aJ(ee,!0,!0))&&(we|=1);const Et=D_(ee);return Et&&$l(Et.expression).kind!==106&&(we|=64),zv(b,ee)&&(we|=2),IC(b,ee)&&(we|=4),Dn(ee)?we|=8:Lo(ee)?we|=32:Ql(ee)&&(we|=16),we}function $e(ee){return!!(ee.transformFlags&8192)}function It(ee){return If(ee)||bt(ee.typeParameters)||bt(ee.heritageClauses,$e)||bt(ee.members,$e)}function tn(ee){const we=vt(ee),Et=h<=1&&!!(we&7);if(!It(ee)&&!zv(b,ee)&&!Dn(ee))return t.updateClassDeclaration(ee,Vn(ee.modifiers,Se,xa),ee.name,void 0,Vn(ee.heritageClauses,Y,of),Vn(ee.members,He(ee),$c));Et&&e.startLexicalEnvironment();const un=Et||we&8;let Er=un?Vn(ee.modifiers,At,ll):Vn(ee.modifiers,Y,ll);we&2&&(Er=Xn(Er,ee));const Ur=un&&!ee.name||we&4||we&1?ee.name??t.getGeneratedNameForNode(ee):ee.name,xi=t.updateClassDeclaration(ee,Er,Ur,void 0,Vn(ee.heritageClauses,Y,of),Pn(ee));let Lr=ja(ee);we&1&&(Lr|=64),pr(xi,Lr);let $o;if(Et){const Tl=[xi],Hc=IU(ka(M.text,ee.members.end),20),Us=t.getInternalName(ee),vc=t.createPartiallyEmittedExpression(Us);FR(vc,Hc.end),pr(vc,3072);const Ss=t.createReturnStatement(vc);tP(Ss,Hc.pos),pr(Ss,3840),Tl.push(Ss),eg(Tl,e.endLexicalEnvironment());const qc=t.createImmediatelyInvokedArrowFunction(Tl);zk(qc,1);const op=t.createVariableDeclaration(t.getLocalName(ee,!1,!1),void 0,void 0,qc);Cr(op,ee);const Wc=t.createVariableStatement(void 0,t.createVariableDeclarationList([op],1));Cr(Wc,ee),ac(Wc,ee),Pa(Wc,Gg(ee)),Xu(Wc),$o=Wc}else $o=xi;if(un){if(we&8)return[$o,cs(ee)];if(we&32)return[$o,t.createExportDefault(t.getLocalName(ee,!1,!0))];if(we&16)return[$o,t.createExternalModuleExport(t.getDeclarationName(ee,!1,!0))]}return $o}function rn(ee){let we=Vn(ee.modifiers,At,ll);return zv(b,ee)&&(we=Xn(we,ee)),t.updateClassExpression(ee,we,ee.name,void 0,Vn(ee.heritageClauses,Y,of),Pn(ee))}function Pn(ee){const we=Vn(ee.members,He(ee),$c);let Et;const un=ag(ee),Er=un&&nr(un.parameters,vr=>mp(vr,un));if(Er)for(const vr of Er){const Ur=t.createPropertyDeclaration(void 0,vr.name,void 0,void 0,void 0);Cr(Ur,vr),Et=xn(Et,Ur)}return Et?(Et=Jr(Et,we),dt(t.createNodeArray(Et),ee.members)):we}function Xn(ee,we){const Et=Qt(we,we);if(bt(Et)){const un=[];Jr(un,j6(ee,sw)),Jr(un,nr(ee,Eu)),Jr(un,Et),Jr(un,nr(Bne(ee,sw),xa)),ee=dt(t.createNodeArray(un),ee)}return ee}function hn(ee,we,Et){if(ui(Et)&&Fj(b,we,Et)){const un=Qt(we,Et);if(bt(un)){const Er=[];Jr(Er,nr(ee,Eu)),Jr(Er,un),Jr(Er,nr(ee,xa)),ee=dt(t.createNodeArray(Er),ee)}}return ee}function Qt(ee,we){if(b)return qxe?_i(ee,we):$t(ee,we)}function $t(ee,we){if(A){let Et;if(ao(ee)){const un=r().createMetadataHelper("design:type",A.serializeTypeOfNode({currentLexicalScope:U,currentNameScope:we},ee));Et=xn(Et,t.createDecorator(un))}if(No(ee)){const un=r().createMetadataHelper("design:paramtypes",A.serializeParameterTypesOfNode({currentLexicalScope:U,currentNameScope:we},ee,we));Et=xn(Et,t.createDecorator(un))}if(Oi(ee)){const un=r().createMetadataHelper("design:returntype",A.serializeReturnTypeOfNode({currentLexicalScope:U,currentNameScope:we},ee));Et=xn(Et,t.createDecorator(un))}return Et}}function _i(ee,we){if(A){let Et;if(ao(ee)){const un=t.createPropertyAssignment("type",t.createArrowFunction(void 0,void 0,[],void 0,t.createToken(39),A.serializeTypeOfNode({currentLexicalScope:U,currentNameScope:we},ee)));Et=xn(Et,un)}if(No(ee)){const un=t.createPropertyAssignment("paramTypes",t.createArrowFunction(void 0,void 0,[],void 0,t.createToken(39),A.serializeParameterTypesOfNode({currentLexicalScope:U,currentNameScope:we},ee,we)));Et=xn(Et,un)}if(Oi(ee)){const un=t.createPropertyAssignment("returnType",t.createArrowFunction(void 0,void 0,[],void 0,t.createToken(39),A.serializeReturnTypeOfNode({currentLexicalScope:U,currentNameScope:we},ee)));Et=xn(Et,un)}if(Et){const un=r().createMetadataHelper("design:typeinfo",t.createObjectLiteralExpression(Et,!0));return[t.createDecorator(un)]}}}function ao(ee){const we=ee.kind;return we===174||we===177||we===178||we===172}function Oi(ee){return ee.kind===174}function No(ee){switch(ee.kind){case 263:case 231:return ag(ee)!==void 0;case 174:case 177:case 178:return!0}return!1}function Mn(ee,we){const Et=ee.name;return Ji(Et)?t.createIdentifier(""):Za(Et)?Et.expression:Ve(Et)?t.createStringLiteral(Sr(Et)):t.cloneNode(Et)}function Di(ee){const we=ee.name;if(Za(we)&&(!mc(ee)&&Z||If(ee)&&b)){const Et=nt(we.expression,Y,yt);N.assert(Et);const un=Tm(Et);if(!Rh(un)){const Er=t.getGeneratedNameForNode(we);return l(Er),t.updateComputedPropertyName(we,t.createAssignment(Er,Et))}}return N.checkDefined(nt(we,Y,oc))}function Ar(ee){if(ee.token!==119)return In(ee,Y,e)}function sn(ee){return t.updateExpressionWithTypeArguments(ee,N.checkDefined(nt(ee.expression,Y,ep)),void 0)}function tt(ee){return!zl(ee.body)}function zt(ee,we){const Et=ee.flags&33554432||Zr(ee,64);if(Et&&!(b&&If(ee)))return;let un=ui(we)?Et?Vn(ee.modifiers,At,ll):Vn(ee.modifiers,Y,ll):Vn(ee.modifiers,We,ll);return un=hn(un,ee,we),Et?t.updatePropertyDeclaration(ee,So(un,t.createModifiersFromModifierFlags(128)),N.checkDefined(nt(ee.name,Y,oc)),void 0,void 0,void 0):t.updatePropertyDeclaration(ee,un,Di(ee),void 0,void 0,nt(ee.initializer,Y,yt))}function Rn(ee){if(tt(ee))return t.updateConstructorDeclaration(ee,void 0,Dl(ee.parameters,Y,e),hi(ee.body,ee))}function li(ee,we,Et,un,Er,vr){const Ur=un[Er],xi=we[Ur];if(Jr(ee,Vn(we,Y,qi,Et,Ur-Et)),qS(xi)){const Lr=[];li(Lr,xi.tryBlock.statements,0,un,Er+1,vr);const $o=t.createNodeArray(Lr);dt($o,xi.tryBlock.statements),ee.push(t.updateTryStatement(xi,t.updateBlock(xi.tryBlock,Lr),nt(xi.catchClause,Y,c1),nt(xi.finallyBlock,Y,Xo)))}else Jr(ee,Vn(we,Y,qi,Ur,1)),Jr(ee,vr);Jr(ee,Vn(we,Y,qi,Ur+1))}function hi(ee,we){const Et=we&&nr(we.parameters,Lr=>mp(Lr,we));if(!bt(Et))return lf(ee,Y,e);let un=[];o();const Er=t.copyPrologue(ee.statements,un,!1,Y),vr=o7(ee.statements,Er),Ur=Hi(Et,Qi);vr.length?li(un,ee.statements,Er,vr,0,Ur):(Jr(un,Ur),Jr(un,Vn(ee.statements,Y,qi,Er))),un=t.mergeLexicalEnvironment(un,s());const xi=t.createBlock(dt(t.createNodeArray(un),ee.statements),!0);return dt(xi,ee),Cr(xi,ee),xi}function Qi(ee){const we=ee.name;if(!Ve(we))return;const Et=qa(dt(t.cloneNode(we),we),we.parent);pr(Et,3168);const un=qa(dt(t.cloneNode(we),we),we.parent);return pr(un,3072),Xu(Fk(dt(Cr(t.createExpressionStatement(t.createAssignment(dt(t.createPropertyAccessExpression(t.createThis(),Et),ee.name),un)),ee),E0(ee,-1))))}function Io(ee,we){if(!(ee.transformFlags&1))return ee;if(!tt(ee))return;let Et=ui(we)?Vn(ee.modifiers,Y,ll):Vn(ee.modifiers,We,ll);return Et=hn(Et,ee,we),t.updateMethodDeclaration(ee,Et,ee.asteriskToken,Di(ee),void 0,void 0,Dl(ee.parameters,Y,e),void 0,lf(ee.body,Y,e))}function ma(ee){return!(zl(ee.body)&&Zr(ee,64))}function Wa(ee,we){if(!(ee.transformFlags&1))return ee;if(!ma(ee))return;let Et=ui(we)?Vn(ee.modifiers,Y,ll):Vn(ee.modifiers,We,ll);return Et=hn(Et,ee,we),t.updateGetAccessorDeclaration(ee,Et,Di(ee),Dl(ee.parameters,Y,e),void 0,lf(ee.body,Y,e)||t.createBlock([]))}function Sn(ee,we){if(!(ee.transformFlags&1))return ee;if(!ma(ee))return;let Et=ui(we)?Vn(ee.modifiers,Y,ll):Vn(ee.modifiers,We,ll);return Et=hn(Et,ee,we),t.updateSetAccessorDeclaration(ee,Et,Di(ee),Dl(ee.parameters,Y,e),lf(ee.body,Y,e)||t.createBlock([]))}function kn(ee){if(!tt(ee))return t.createNotEmittedStatement(ee);const we=t.updateFunctionDeclaration(ee,Vn(ee.modifiers,Se,xa),ee.asteriskToken,ee.name,void 0,Dl(ee.parameters,Y,e),void 0,lf(ee.body,Y,e)||t.createBlock([]));if(Dn(ee)){const Et=[we];return Vs(Et,ee),Et}return we}function qe(ee){return tt(ee)?t.updateFunctionExpression(ee,Vn(ee.modifiers,Se,xa),ee.asteriskToken,ee.name,void 0,Dl(ee.parameters,Y,e),void 0,lf(ee.body,Y,e)||t.createBlock([])):t.createOmittedExpression()}function mt(ee){return t.updateArrowFunction(ee,Vn(ee.modifiers,Se,xa),void 0,Dl(ee.parameters,Y,e),void 0,ee.equalsGreaterThanToken,lf(ee.body,Y,e))}function ft(ee){if(JE(ee))return;const we=t.updateParameterDeclaration(ee,Vn(ee.modifiers,Et=>Eu(Et)?Y(Et):void 0,ll),ee.dotDotDotToken,N.checkDefined(nt(ee.name,Y,vS)),void 0,void 0,nt(ee.initializer,Y,yt));return we!==ee&&(ac(we,ee),dt(we,L_(ee)),Pa(we,L_(ee)),pr(we.name,64)),we}function Ct(ee){if(Dn(ee)){const we=HC(ee.declarationList);return we.length===0?void 0:dt(t.createExpressionStatement(t.inlineExpressions(wt(we,le))),ee)}else return In(ee,Y,e)}function le(ee){const we=ee.name;return ta(we)?tT(ee,Y,e,0,!1,uu):dt(t.createAssignment(ho(we),N.checkDefined(nt(ee.initializer,Y,yt))),ee)}function Fe(ee){const we=t.updateVariableDeclaration(ee,N.checkDefined(nt(ee.name,Y,vS)),void 0,void 0,nt(ee.initializer,Y,yt));return ee.type&&Iae(we.name,ee.type),we}function pt(ee){const we=$l(ee.expression,-7);if(bS(we)){const Et=nt(ee.expression,Y,yt);return N.assert(Et),t.createPartiallyEmittedExpression(Et,ee)}return In(ee,Y,e)}function j(ee){const we=nt(ee.expression,Y,yt);return N.assert(we),t.createPartiallyEmittedExpression(we,ee)}function ot(ee){const we=nt(ee.expression,Y,ep);return N.assert(we),t.createPartiallyEmittedExpression(we,ee)}function Rt(ee){const we=nt(ee.expression,Y,yt);return N.assert(we),t.createPartiallyEmittedExpression(we,ee)}function Ye(ee){return t.updateCallExpression(ee,N.checkDefined(nt(ee.expression,Y,yt)),void 0,Vn(ee.arguments,Y,yt))}function _t(ee){return t.updateNewExpression(ee,N.checkDefined(nt(ee.expression,Y,yt)),void 0,Vn(ee.arguments,Y,yt))}function Vt(ee){return t.updateTaggedTemplateExpression(ee,N.checkDefined(nt(ee.tag,Y,yt)),void 0,N.checkDefined(nt(ee.template,Y,LA)))}function vn(ee){return t.updateJsxSelfClosingElement(ee,N.checkDefined(nt(ee.tagName,Y,vC)),void 0,N.checkDefined(nt(ee.attributes,Y,l1)))}function fn(ee){return t.updateJsxOpeningElement(ee,N.checkDefined(nt(ee.tagName,Y,vC)),void 0,N.checkDefined(nt(ee.attributes,Y,l1)))}function _n(ee){return!FE(ee)||e1(p)}function q(ee){if(!_n(ee))return t.createNotEmittedStatement(ee);const we=[];let Et=4;const un=ke(we,ee);un&&(m!==4||U!==M)&&(Et|=1024);const Er=pa(ee),vr=du(ee),Ur=Dn(ee)?t.getExternalModuleOrNamespaceExportName(O,ee,!1,!0):t.getDeclarationName(ee,!1,!0);let xi=t.createLogicalOr(Ur,t.createAssignment(Ur,t.createObjectLiteralExpression()));if(Dn(ee)){const $o=t.getLocalName(ee,!1,!0);xi=t.createAssignment($o,xi)}const Lr=t.createExpressionStatement(t.createCallExpression(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,Er)],void 0,Oe(ee,vr)),void 0,[xi]));return Cr(Lr,ee),un&&(I0(Lr,void 0),ZA(Lr,void 0)),dt(Lr,ee),k_(Lr,Et),we.push(Lr),we}function Oe(ee,we){const Et=O;O=we;const un=[];i();const Er=wt(ee.members,Lt);return eg(un,s()),Jr(un,Er),O=Et,t.createBlock(dt(t.createNodeArray(un),ee.members),!0)}function Lt(ee){const we=Mn(ee),Et=L(ee),un=t.createAssignment(t.createElementAccessExpression(O,we),Et),Er=Et.kind===11?un:t.createAssignment(t.createElementAccessExpression(O,un),we);return dt(t.createExpressionStatement(dt(Er,ee)),ee)}function L(ee){const we=u.getConstantValue(ee);return we!==void 0?typeof we=="string"?t.createStringLiteral(we):we<0?t.createPrefixUnaryExpression(41,t.createNumericLiteral(-we)):t.createNumericLiteral(we):(As(),ee.initializer?N.checkDefined(nt(ee.initializer,Y,yt)):t.createVoidZero())}function _e(ee){const we=Do(ee,Xl);return we?Kq(we,e1(p)):!0}function J(ee){K||(K=new Map);const we=Ge(ee);K.has(we)||K.set(we,ee)}function me(ee){if(K){const we=Ge(ee);return K.get(we)===ee}return!0}function Ge(ee){return N.assertNode(ee.name,Ve),ee.name.escapedText}function ke(ee,we){const Et=t.createVariableDeclaration(t.getLocalName(we,!1,!0)),un=U.kind===312?0:1,Er=t.createVariableStatement(Vn(we.modifiers,Se,xa),t.createVariableDeclarationList([Et],un));return Cr(Et,we),I0(Et,void 0),ZA(Et,void 0),Cr(Er,we),J(we),me(we)?(we.kind===266?Pa(Er.declarationList,we):Pa(Er,we),ac(Er,we),k_(Er,2048),ee.push(Er),!0):!1}function Tt(ee){if(!_e(ee))return t.createNotEmittedStatement(ee);N.assertNode(ee.name,Ve,"A TypeScript namespace should have an Identifier name."),La();const we=[];let Et=4;const un=ke(we,ee);un&&(m!==4||U!==M)&&(Et|=1024);const Er=pa(ee),vr=du(ee),Ur=Dn(ee)?t.getExternalModuleOrNamespaceExportName(O,ee,!1,!0):t.getDeclarationName(ee,!1,!0);let xi=t.createLogicalOr(Ur,t.createAssignment(Ur,t.createObjectLiteralExpression()));if(Dn(ee)){const $o=t.getLocalName(ee,!1,!0);xi=t.createAssignment($o,xi)}const Lr=t.createExpressionStatement(t.createCallExpression(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,Er)],void 0,kt(ee,vr)),void 0,[xi]));return Cr(Lr,ee),un&&(I0(Lr,void 0),ZA(Lr,void 0)),dt(Lr,ee),k_(Lr,Et),we.push(Lr),we}function kt(ee,we){const Et=O,un=C,Er=K;O=we,C=ee,K=void 0;const vr=[];i();let Ur,xi;if(ee.body)if(ee.body.kind===268)ye(ee.body,$o=>Jr(vr,Vn($o.statements,ve,qi))),Ur=ee.body.statements,xi=ee.body;else{const $o=Tt(ee.body);$o&&(To($o)?Jr(vr,$o):vr.push($o));const Tl=en(ee).body;Ur=E0(Tl.statements,-1)}eg(vr,s()),O=Et,C=un,K=Er;const Lr=t.createBlock(dt(t.createNodeArray(vr),Ur),!0);return dt(Lr,xi),(!ee.body||ee.body.kind!==268)&&pr(Lr,ja(Lr)|3072),Lr}function en(ee){if(ee.body.kind===267)return en(ee.body)||ee.body}function bn(ee){if(!ee.importClause)return ee;if(ee.importClause.isTypeOnly)return;const we=nt(ee.importClause,Bn,Sh);return we||p.importsNotUsedAsValues===1||p.importsNotUsedAsValues===2?t.updateImportDeclaration(ee,void 0,we,ee.moduleSpecifier,ee.attributes):void 0}function Bn(ee){N.assert(!ee.isTypeOnly);const we=de(ee)?ee.name:void 0,Et=nt(ee.namedBindings,Hn,pj);return we||Et?t.updateImportClause(ee,!1,we,Et):void 0}function Hn(ee){if(ee.kind===274)return de(ee)?ee:void 0;{const we=p.verbatimModuleSyntax||p.preserveValueImports&&(p.importsNotUsedAsValues===1||p.importsNotUsedAsValues===2),Et=Vn(ee.elements,Ni,np);return we||bt(Et)?t.updateNamedImports(ee,Et):void 0}}function Ni(ee){return!ee.isTypeOnly&&de(ee)?ee:void 0}function Ai(ee){return p.verbatimModuleSyntax||u.isValueAliasDeclaration(ee)?In(ee,Y,e):void 0}function ir(ee){if(ee.isTypeOnly)return;if(!ee.exportClause||Th(ee.exportClause))return ee;const we=p.verbatimModuleSyntax||!!ee.moduleSpecifier&&(p.importsNotUsedAsValues===1||p.importsNotUsedAsValues===2),Et=nt(ee.exportClause,un=>Ci(un,we),ej);return Et?t.updateExportDeclaration(ee,void 0,ee.isTypeOnly,Et,ee.moduleSpecifier,ee.attributes):void 0}function jr(ee,we){const Et=Vn(ee.elements,Ii,Ku);return we||bt(Et)?t.updateNamedExports(ee,Et):void 0}function vo(ee){return t.updateNamespaceExport(ee,N.checkDefined(nt(ee.name,Y,Ve)))}function Ci(ee,we){return Th(ee)?vo(ee):jr(ee,we)}function Ii(ee){return!ee.isTypeOnly&&(p.verbatimModuleSyntax||u.isValueAliasDeclaration(ee))?ee:void 0}function Kr(ee){return de(ee)||!sc(M)&&u.isTopLevelValueImportEqualsWithEntityName(ee)}function xo(ee){if(ee.isTypeOnly)return;if(h0(ee)){const Et=de(ee);return!Et&&p.importsNotUsedAsValues===1?Cr(dt(t.createImportDeclaration(void 0,void 0,ee.moduleReference.expression,void 0),ee),ee):Et?In(ee,Y,e):void 0}if(!Kr(ee))return;const we=nw(t,ee.moduleReference);return pr(we,7168),Ql(ee)||!Dn(ee)?Cr(dt(t.createVariableStatement(Vn(ee.modifiers,Se,xa),t.createVariableDeclarationList([Cr(t.createVariableDeclaration(ee.name,void 0,void 0,we),ee)])),ee),ee):Cr(vl(ee.name,we,ee),ee)}function Dn(ee){return C!==void 0&&Zr(ee,32)}function Fs(ee){return C===void 0&&Zr(ee,32)}function Ql(ee){return Fs(ee)&&!Zr(ee,2048)}function Lo(ee){return Fs(ee)&&Zr(ee,2048)}function cs(ee){const we=t.createAssignment(t.getExternalModuleOrNamespaceExportName(O,ee,!1,!0),t.getLocalName(ee));Pa(we,xf(ee.name?ee.name.pos:ee.pos,ee.end));const Et=t.createExpressionStatement(we);return Pa(Et,xf(-1,ee.end)),Et}function Vs(ee,we){ee.push(cs(we))}function vl(ee,we,Et){return dt(t.createExpressionStatement(t.createAssignment(t.getNamespaceMemberName(O,ee,!1,!0),we)),Et)}function uu(ee,we,Et){return dt(t.createAssignment(ho(ee),we),Et)}function ho(ee){return t.getNamespaceMemberName(O,ee,!1,!0)}function pa(ee){const we=t.getGeneratedNameForNode(ee);return Pa(we,ee.name),we}function du(ee){return t.getGeneratedNameForNode(ee)}function As(){V&8||(V|=8,e.enableSubstitution(80))}function La(){V&2||(V|=2,e.enableSubstitution(80),e.enableSubstitution(304),e.enableEmitNotification(267))}function _l(ee){return Pl(ee).kind===267}function wf(ee){return Pl(ee).kind===266}function lc(ee,we,Et){const un=se,Er=M;$i(we)&&(M=we),V&2&&_l(we)&&(se|=2),V&8&&wf(we)&&(se|=8),I(ee,we,Et),se=un,M=Er}function Nl(ee,we){return we=R(ee,we),ee===1?ko(we):rp(we)?ul(we):we}function ul(ee){if(V&2){const we=ee.name,Et=js(we);if(Et){if(ee.objectAssignmentInitializer){const un=t.createAssignment(Et,ee.objectAssignmentInitializer);return dt(t.createPropertyAssignment(we,un),ee)}return dt(t.createPropertyAssignment(we,Et),ee)}}return ee}function ko(ee){switch(ee.kind){case 80:return nn(ee);case 211:return nu(ee);case 212:return pu(ee)}return ee}function nn(ee){return js(ee)||ee}function js(ee){if(V&se&&!sl(ee)&&!qg(ee)){const we=u.getReferencedExportContainer(ee,!1);if(we&&we.kind!==312&&(se&2&&we.kind===267||se&8&&we.kind===266))return dt(t.createPropertyAccessExpression(t.getGeneratedNameForNode(we),ee),ee)}}function nu(ee){return Ms(ee)}function pu(ee){return Ms(ee)}function Ip(ee){return ee.replace(/\*\//g,"*_/")}function Ms(ee){const we=Rc(ee);if(we!==void 0){Tae(ee,we);const Et=typeof we=="string"?t.createStringLiteral(we):we<0?t.createPrefixUnaryExpression(41,t.createNumericLiteral(-we)):t.createNumericLiteral(we);if(!p.removeComments){const un=Pl(ee,ws);EW(Et,3,` ${Ip(fc(un))} `)}return Et}return ee}function Rc(ee){if(!om(p))return Fr(ee)||Qs(ee)?u.getConstantValue(ee):void 0}function de(ee){return p.verbatimModuleSyntax||lr(ee)||(p.preserveValueImports?u.isValueAliasDeclaration(ee):u.isReferencedAliasDeclaration(ee))}}var qxe,CUe=T({"src/compiler/transformers/ts.ts"(){ra(),qxe=!1}});function Vle(e){const{factory:t,getEmitHelperFactory:r,hoistVariableDeclaration:i,endLexicalEnvironment:o,startLexicalEnvironment:s,resumeLexicalEnvironment:l,addBlockScopedVariable:u}=e,p=e.getEmitResolver(),h=e.getCompilerOptions(),m=os(h),b=dP(h),A=!!h.experimentalDecorators,I=!b,R=b&&m<9,M=I||R,C=m<9,O=m<99?-1:b?0:3,U=m<9,K=U&&m>=2,Z=M||C||O===-1,V=e.onSubstituteNode;e.onSubstituteNode=nu;const se=e.onEmitNode;e.onEmitNode=js;let G=!1,ne,he,ye,$,Y;const oe=new Map,fe=new Set;let Ne,pe,ie=!1,ve=!1;return Pm(e,Le);function Le(de){if(de.isDeclarationFile||(Y=void 0,G=!!(Am(de)&32),!Z&&!G))return de;const ee=In(de,Ee,e);return Ug(ee,e.readEmitHelpers()),ee}function He(de){switch(de.kind){case 129:return zt()?void 0:de;default:return ii(de,xa)}}function Ee(de){if(!(de.transformFlags&16777216)&&!(de.transformFlags&134234112))return de;switch(de.kind){case 129:return N.fail("Use `modifierVisitor` instead.");case 263:return fn(de);case 231:return q(de);case 175:case 172:return N.fail("Use `classElementVisitor` instead.");case 303:return $e(de);case 243:return It(de);case 260:return tn(de);case 169:return rn(de);case 208:return Pn(de);case 277:return Xn(de);case 81:return Gt(de);case 211:return ma(de);case 212:return Wa(de);case 224:case 225:return Sn(de,!1);case 226:return pt(de,!1);case 217:return ot(de,!1);case 213:return ft(de);case 244:return qe(de);case 215:return Ct(de);case 248:return kn(de);case 110:return L(de);case 262:case 218:return Oi(void 0,De,de);case 176:case 174:case 177:case 178:return Oi(de,De,de);default:return De(de)}}function De(de){return In(de,Ee,e)}function Pe(de){switch(de.kind){case 224:case 225:return Sn(de,!0);case 226:return pt(de,!0);case 361:return j(de);case 217:return ot(de,!0);default:return Ee(de)}}function We(de){switch(de.kind){case 298:return In(de,We,e);case 233:return Vt(de);default:return Ee(de)}}function At(de){switch(de.kind){case 210:case 209:return nn(de);default:return Ee(de)}}function Se(de){switch(de.kind){case 176:return Oi(de,$t,de);case 177:case 178:case 174:return Oi(de,ao,de);case 172:return Oi(de,Rn,de);case 175:return Oi(de,Lt,de);case 167:return Qt(de);case 240:return de;default:return ll(de)?He(de):Ee(de)}}function je(de){switch(de.kind){case 167:return Qt(de);default:return Ee(de)}}function at(de){switch(de.kind){case 172:return tt(de);case 177:case 178:return Se(de);default:N.assertMissingNode(de,"Expected node to either be a PropertyDeclaration, GetAccessorDeclaration, or SetAccessorDeclaration");break}}function Gt(de){return!C||qi(de.parent)?de:Cr(t.createIdentifier(""),de)}function vt(de){const ee=pa(de.left);if(ee){const we=nt(de.right,Ee,yt);return Cr(r().createClassPrivateFieldInHelper(ee.brandCheckIdentifier,we),de)}return In(de,Ee,e)}function $e(de){return hp(de,Fe)&&(de=Sp(e,de)),In(de,Ee,e)}function It(de){const ee=$;$=[];const we=In(de,Ee,e),Et=bt($)?[we,...$]:we;return $=ee,Et}function tn(de){return hp(de,Fe)&&(de=Sp(e,de)),In(de,Ee,e)}function rn(de){return hp(de,Fe)&&(de=Sp(e,de)),In(de,Ee,e)}function Pn(de){return hp(de,Fe)&&(de=Sp(e,de)),In(de,Ee,e)}function Xn(de){return hp(de,Fe)&&(de=Sp(e,de,!0,de.isExportEquals?"":"default")),In(de,Ee,e)}function hn(de){return bt(ye)&&(Gd(de)?(ye.push(de.expression),de=t.updateParenthesizedExpression(de,t.inlineExpressions(ye))):(ye.push(de),de=t.inlineExpressions(ye)),ye=void 0),de}function Qt(de){const ee=nt(de.expression,Ee,yt);return t.updateComputedPropertyName(de,hn(ee))}function $t(de){return Ne?me(de,Ne):De(de)}function _i(de){return!!(C||mc(de)&&Am(de)&32)}function ao(de){if(N.assert(!If(de)),!cd(de)||!_i(de))return In(de,Se,e);const ee=pa(de.name);if(N.assert(ee,"Undeclared private name for property declaration."),!ee.isValid)return de;const we=No(de);we&&xo().push(t.createAssignment(we,t.createFunctionExpression(nr(de.modifiers,Et=>xa(Et)&&!aI(Et)&&!Fae(Et)),de.asteriskToken,we,void 0,Dl(de.parameters,Ee,e),void 0,lf(de.body,Ee,e))))}function Oi(de,ee,we){if(de!==pe){const Et=pe;pe=de;const un=ee(we);return pe=Et,un}return ee(we)}function No(de){N.assert(Ji(de.name));const ee=pa(de.name);if(N.assert(ee,"Undeclared private name for property declaration."),ee.kind==="m")return ee.methodName;if(ee.kind==="a"){if(Fy(de))return ee.getterName;if(Fv(de))return ee.setterName}}function Mn(){const de=Ii(),ee=de.classThis??de.classConstructor??(Ne==null?void 0:Ne.name);return N.checkDefined(ee)}function Di(de){const ee=w_(de),we=qv(de),Et=de.name;let un=Et,Er=Et;if(Za(Et)&&!Rh(Et.expression)){const Hc=bF(Et);if(Hc)un=t.updateComputedPropertyName(Et,nt(Et.expression,Ee,yt)),Er=t.updateComputedPropertyName(Et,Hc.left);else{const Us=t.createTempVariable(i);Pa(Us,Et.expression);const vc=nt(Et.expression,Ee,yt),Ss=t.createAssignment(Us,vc);Pa(Ss,Et.expression),un=t.updateComputedPropertyName(Et,Ss),Er=t.updateComputedPropertyName(Et,Us)}}const vr=Vn(de.modifiers,He,xa),Ur=tq(t,de,vr,de.initializer);Cr(Ur,de),pr(Ur,3072),Pa(Ur,we);const xi=sa(de)?Mn():t.createThis(),Lr=yse(t,de,vr,un,xi);Cr(Lr,de),ac(Lr,ee),Pa(Lr,we);const $o=t.createModifiersFromModifierFlags(M_(vr)),Tl=bse(t,de,$o,Er,xi);return Cr(Tl,de),pr(Tl,3072),Pa(Tl,we),kw([Ur,Lr,Tl],at,$c)}function Ar(de){if(_i(de)){const ee=pa(de.name);if(N.assert(ee,"Undeclared private name for property declaration."),!ee.isValid)return de;if(ee.isStatic&&!C){const we=kt(de,t.createThis());if(we)return t.createClassStaticBlockDeclaration(t.createBlock([we],!0))}return}return I&&!sa(de)&&(Y!=null&&Y.data)&&Y.data.facts&16?t.updatePropertyDeclaration(de,Vn(de.modifiers,Ee,ll),de.name,void 0,void 0,void 0):(hp(de,Fe)&&(de=Sp(e,de)),t.updatePropertyDeclaration(de,Vn(de.modifiers,He,xa),nt(de.name,je,oc),void 0,void 0,nt(de.initializer,Ee,yt)))}function sn(de){if(M&&!Wd(de)){const ee=jr(de.name,!!de.initializer||b);if(ee&&xo().push(...Ese(ee)),sa(de)&&!C){const we=kt(de,t.createThis());if(we){const Et=t.createClassStaticBlockDeclaration(t.createBlock([we]));return Cr(Et,de),ac(Et,de),ac(we,{pos:-1,end:-1}),I0(we,void 0),ZA(we,void 0),Et}}return}return t.updatePropertyDeclaration(de,Vn(de.modifiers,He,xa),nt(de.name,je,oc),void 0,void 0,nt(de.initializer,Ee,yt))}function tt(de){return N.assert(!If(de),"Decorators should already have been transformed and elided."),cd(de)?Ar(de):sn(de)}function zt(){return O===-1||O===3&&!!(Y!=null&&Y.data)&&!!(Y.data.facts&16)}function Rn(de){return Wd(de)&&(zt()||mc(de)&&Am(de)&32)?Di(de):tt(de)}function li(){return!!pe&&mc(pe)&&Oy(pe)&&Wd(Pl(pe))}function hi(de){if(li()){const ee=$l(de);ee.kind===110&&fe.add(ee)}}function Qi(de,ee){return ee=nt(ee,Ee,yt),hi(ee),Io(de,ee)}function Io(de,ee){switch(ac(ee,E0(ee,-1)),de.kind){case"a":return r().createClassPrivateFieldGetHelper(ee,de.brandCheckIdentifier,de.kind,de.getterName);case"m":return r().createClassPrivateFieldGetHelper(ee,de.brandCheckIdentifier,de.kind,de.methodName);case"f":return r().createClassPrivateFieldGetHelper(ee,de.brandCheckIdentifier,de.kind,de.isStatic?de.variableName:void 0);case"untransformed":return N.fail("Access helpers should not be created for untransformed private elements");default:N.assertNever(de,"Unknown private element type")}}function ma(de){if(Ji(de.name)){const ee=pa(de.name);if(ee)return dt(Cr(Qi(ee,de.expression),de),de)}if(K&&pe&&zd(de)&&Ve(de.name)&&HP(pe)&&(Y!=null&&Y.data)){const{classConstructor:ee,superClassReference:we,facts:Et}=Y.data;if(Et&1)return ir(de);if(ee&&we){const un=t.createReflectGetCall(we,t.createStringLiteralFromNode(de.name),ee);return Cr(un,de.expression),dt(un,de.expression),un}}return In(de,Ee,e)}function Wa(de){if(K&&pe&&zd(de)&&HP(pe)&&(Y!=null&&Y.data)){const{classConstructor:ee,superClassReference:we,facts:Et}=Y.data;if(Et&1)return ir(de);if(ee&&we){const un=t.createReflectGetCall(we,nt(de.argumentExpression,Ee,yt),ee);return Cr(un,de.expression),dt(un,de.expression),un}}return In(de,Ee,e)}function Sn(de,ee){if(de.operator===46||de.operator===47){const we=hs(de.operand);if(eR(we)){let Et;if(Et=pa(we.name)){const un=nt(we.expression,Ee,yt);hi(un);const{readExpression:Er,initializeExpression:vr}=mt(un);let Ur=Qi(Et,Er);const xi=tb(de)||ee?void 0:t.createTempVariable(i);return Ur=fF(t,de,Ur,i,xi),Ur=Rt(Et,vr||Er,Ur,64),Cr(Ur,de),dt(Ur,de),xi&&(Ur=t.createComma(Ur,xi),dt(Ur,de)),Ur}}else if(K&&pe&&zd(we)&&HP(pe)&&(Y!=null&&Y.data)){const{classConstructor:Et,superClassReference:un,facts:Er}=Y.data;if(Er&1){const vr=ir(we);return tb(de)?t.updatePrefixUnaryExpression(de,vr):t.updatePostfixUnaryExpression(de,vr)}if(Et&&un){let vr,Ur;if(Fr(we)?Ve(we.name)&&(Ur=vr=t.createStringLiteralFromNode(we.name)):Rh(we.argumentExpression)?Ur=vr=we.argumentExpression:(Ur=t.createTempVariable(i),vr=t.createAssignment(Ur,nt(we.argumentExpression,Ee,yt))),vr&&Ur){let xi=t.createReflectGetCall(un,Ur,Et);dt(xi,we);const Lr=ee?void 0:t.createTempVariable(i);return xi=fF(t,de,xi,i,Lr),xi=t.createReflectSetCall(un,vr,xi,Et),Cr(xi,de),dt(xi,de),Lr&&(xi=t.createComma(xi,Lr),dt(xi,de)),xi}}}}return In(de,Ee,e)}function kn(de){return t.updateForStatement(de,nt(de.initializer,Pe,Af),nt(de.condition,Ee,yt),nt(de.incrementor,Pe,yt),Rd(de.statement,Ee,e))}function qe(de){return t.updateExpressionStatement(de,nt(de.expression,Pe,yt))}function mt(de){const ee=$s(de)?de:t.cloneNode(de);if(de.kind===110&&fe.has(de)&&fe.add(ee),Rh(de))return{readExpression:ee,initializeExpression:void 0};const we=t.createTempVariable(i),Et=t.createAssignment(we,ee);return{readExpression:we,initializeExpression:Et}}function ft(de){var ee;if(eR(de.expression)&&pa(de.expression.name)){const{thisArg:we,target:Et}=t.createCallBinding(de.expression,i,m);return hS(de)?t.updateCallChain(de,t.createPropertyAccessChain(nt(Et,Ee,yt),de.questionDotToken,"call"),void 0,void 0,[nt(we,Ee,yt),...Vn(de.arguments,Ee,yt)]):t.updateCallExpression(de,t.createPropertyAccessExpression(nt(Et,Ee,yt),"call"),void 0,[nt(we,Ee,yt),...Vn(de.arguments,Ee,yt)])}if(K&&pe&&zd(de.expression)&&HP(pe)&&((ee=Y==null?void 0:Y.data)!=null&&ee.classConstructor)){const we=t.createFunctionCallCall(nt(de.expression,Ee,yt),Y.data.classConstructor,Vn(de.arguments,Ee,yt));return Cr(we,de),dt(we,de),we}return In(de,Ee,e)}function Ct(de){var ee;if(eR(de.tag)&&pa(de.tag.name)){const{thisArg:we,target:Et}=t.createCallBinding(de.tag,i,m);return t.updateTaggedTemplateExpression(de,t.createCallExpression(t.createPropertyAccessExpression(nt(Et,Ee,yt),"bind"),void 0,[nt(we,Ee,yt)]),void 0,nt(de.template,Ee,LA))}if(K&&pe&&zd(de.tag)&&HP(pe)&&((ee=Y==null?void 0:Y.data)!=null&&ee.classConstructor)){const we=t.createFunctionBindCall(nt(de.tag,Ee,yt),Y.data.classConstructor,[]);return Cr(we,de),dt(we,de),t.updateTaggedTemplateExpression(de,we,void 0,nt(de.template,Ee,LA))}return In(de,Ee,e)}function le(de){if(Y&&oe.set(Pl(de),Y),C){if(jP(de)){const Et=nt(de.body.statements[0].expression,Ee,yt);return Lc(Et,!0)&&Et.left===Et.right?void 0:Et}if(RI(de))return nt(de.body.statements[0].expression,Ee,yt);s();let ee=Oi(de,Et=>Vn(Et,Ee,qi),de.body.statements);ee=t.mergeLexicalEnvironment(ee,o());const we=t.createImmediatelyInvokedArrowFunction(ee);return Cr(hs(we.expression),de),k_(hs(we.expression),4),Cr(we,de),dt(we,de),we}}function Fe(de){if(Zc(de)&&!de.name){const ee=a7(de);return bt(ee,RI)?!1:(C||!!Am(de))&&bt(ee,Et=>Rl(Et)||cd(Et)||M&&ww(Et))}return!1}function pt(de,ee){if(jv(de)){const we=ye;ye=void 0,de=t.updateBinaryExpression(de,nt(de.left,At,yt),de.operatorToken,nt(de.right,Ee,yt));const Et=bt(ye)?t.inlineExpressions(WM([...ye,de])):de;return ye=we,Et}if(Lc(de)){hp(de,Fe)&&(de=Sp(e,de),N.assertNode(de,Lc));const we=$l(de.left,9);if(eR(we)){const Et=pa(we.name);if(Et)return dt(Cr(Rt(Et,we.expression,de.right,de.operatorToken.kind),de),de)}else if(K&&pe&&zd(de.left)&&HP(pe)&&(Y!=null&&Y.data)){const{classConstructor:Et,superClassReference:un,facts:Er}=Y.data;if(Er&1)return t.updateBinaryExpression(de,ir(de.left),de.operatorToken,nt(de.right,Ee,yt));if(Et&&un){let vr=Qs(de.left)?nt(de.left.argumentExpression,Ee,yt):Ve(de.left.name)?t.createStringLiteralFromNode(de.left.name):void 0;if(vr){let Ur=nt(de.right,Ee,yt);if(BP(de.operatorToken.kind)){let Lr=vr;Rh(vr)||(Lr=t.createTempVariable(i),vr=t.createAssignment(Lr,vr));const $o=t.createReflectGetCall(un,Lr,Et);Cr($o,de.left),dt($o,de.left),Ur=t.createBinaryExpression($o,GP(de.operatorToken.kind),Ur),dt(Ur,de)}const xi=ee?void 0:t.createTempVariable(i);return xi&&(Ur=t.createAssignment(xi,Ur),dt(xi,de)),Ur=t.createReflectSetCall(un,vr,Ur,Et),Cr(Ur,de),dt(Ur,de),xi&&(Ur=t.createComma(Ur,xi),dt(Ur,de)),Ur}}}}return wUe(de)?vt(de):In(de,Ee,e)}function j(de,ee){const we=ZF(de.elements,Pe);return t.updateCommaListExpression(de,we)}function ot(de,ee){const we=ee?Pe:Ee,Et=nt(de.expression,we,yt);return t.updateParenthesizedExpression(de,Et)}function Rt(de,ee,we,Et){if(ee=nt(ee,Ee,yt),we=nt(we,Ee,yt),hi(ee),BP(Et)){const{readExpression:un,initializeExpression:Er}=mt(ee);ee=Er||un,we=t.createBinaryExpression(Io(de,un),GP(Et),we)}switch(ac(ee,E0(ee,-1)),de.kind){case"a":return r().createClassPrivateFieldSetHelper(ee,de.brandCheckIdentifier,we,de.kind,de.setterName);case"m":return r().createClassPrivateFieldSetHelper(ee,de.brandCheckIdentifier,we,de.kind,void 0);case"f":return r().createClassPrivateFieldSetHelper(ee,de.brandCheckIdentifier,we,de.kind,de.isStatic?de.variableName:void 0);case"untransformed":return N.fail("Access helpers should not be created for untransformed private elements");default:N.assertNever(de,"Unknown private element type")}}function Ye(de){return nr(de.members,Dle)}function _t(de){var ee;let we=0;const Et=Pl(de);Ic(Et)&&zv(A,Et)&&(we|=1),C&&(dJ(de)||l7(de))&&(we|=2);let un=!1,Er=!1,vr=!1,Ur=!1;for(const Lr of de.members)sa(Lr)?((Lr.name&&(Ji(Lr.name)||Wd(Lr))&&C||Wd(Lr)&&O===-1&&!de.name&&!((ee=de.emitNode)!=null&&ee.classThis))&&(we|=2),(Jo(Lr)||Rl(Lr))&&(U&&Lr.transformFlags&16384&&(we|=8,we&1||(we|=2)),K&&Lr.transformFlags&134217728&&(we&1||(we|=6)))):XE(Pl(Lr))||(Wd(Lr)?(Ur=!0,vr||(vr=cd(Lr))):cd(Lr)?(vr=!0,p.getNodeCheckFlags(Lr)&262144&&(we|=2)):Jo(Lr)&&(un=!0,Er||(Er=!!Lr.initializer)));return(R&&un||I&&Er||C&&vr||C&&Ur&&O===-1)&&(we|=16),we}function Vt(de){var ee;if((((ee=Y==null?void 0:Y.data)==null?void 0:ee.facts)||0)&4){const Et=t.createTempVariable(i,!0);return Ii().superClassReference=Et,t.updateExpressionWithTypeArguments(de,t.createAssignment(Et,nt(de.expression,Ee,yt)),void 0)}return In(de,Ee,e)}function vn(de,ee){var we;const Et=Ne,un=ye,Er=Y;Ne=de,ye=void 0,vo();const vr=Am(de)&32;if(C||vr){const Lr=Mo(de);if(Lr&&Ve(Lr))Kr().data.className=Lr;else if((we=de.emitNode)!=null&&we.assignedName&&Ma(de.emitNode.assignedName)){if(de.emitNode.assignedName.textSourceNode&&Ve(de.emitNode.assignedName.textSourceNode))Kr().data.className=de.emitNode.assignedName.textSourceNode;else if(tf(de.emitNode.assignedName.text,m)){const $o=t.createIdentifier(de.emitNode.assignedName.text);Kr().data.className=$o}}}if(C){const Lr=Ye(de);bt(Lr)&&(Kr().data.weakSetName=uu("instances",Lr[0].name))}const Ur=_t(de);Ur&&(Ii().facts=Ur),Ur&8&&Ni();const xi=ee(de,Ur);return Ci(),N.assert(Y===Er),Ne=Et,ye=un,xi}function fn(de){return vn(de,_n)}function _n(de,ee){var we,Et;let un;if(ee&2)if(C&&((we=de.emitNode)!=null&&we.classThis))Ii().classConstructor=de.emitNode.classThis,un=t.createAssignment(de.emitNode.classThis,t.getInternalName(de));else{const Ss=t.createTempVariable(i,!0);Ii().classConstructor=t.cloneNode(Ss),un=t.createAssignment(Ss,t.getInternalName(de))}(Et=de.emitNode)!=null&&Et.classThis&&(Ii().classThis=de.emitNode.classThis);const Er=p.getNodeCheckFlags(de)&262144,vr=Zr(de,32),Ur=Zr(de,2048);let xi=Vn(de.modifiers,He,xa);const Lr=Vn(de.heritageClauses,We,of),{members:$o,prologue:Tl}=_e(de),Hc=[];if(un&&xo().unshift(un),bt(ye)&&Hc.push(t.createExpressionStatement(t.inlineExpressions(ye))),I||C||Am(de)&32){const Ss=a7(de);bt(Ss)&&Tt(Hc,Ss,t.getInternalName(de))}Hc.length>0&&vr&&Ur&&(xi=Vn(xi,Ss=>sw(Ss)?void 0:Ss,xa),Hc.push(t.createExportAssignment(void 0,!1,t.getLocalName(de,!1,!0))));const Us=Ii().classConstructor;Er&&Us&&(Hn(),he[Wu(de)]=Us);const vc=t.updateClassDeclaration(de,xi,de.name,void 0,Lr,$o);return Hc.unshift(vc),Tl&&Hc.unshift(t.createExpressionStatement(Tl)),Hc}function q(de){return vn(de,Oe)}function Oe(de,ee){var we,Et,un;const Er=!!(ee&1),vr=a7(de),Ur=p.getNodeCheckFlags(de),xi=Ur&262144;let Lr;function $o(){var Wc;if(C&&((Wc=de.emitNode)!=null&&Wc.classThis))return Ii().classConstructor=de.emitNode.classThis;const cm=Ur&32768,gd=t.createTempVariable(cm?u:i,!0);return Ii().classConstructor=t.cloneNode(gd),gd}(we=de.emitNode)!=null&&we.classThis&&(Ii().classThis=de.emitNode.classThis),ee&2&&(Lr??(Lr=$o()));const Tl=Vn(de.modifiers,He,xa),Hc=Vn(de.heritageClauses,We,of),{members:Us,prologue:vc}=_e(de),Ss=t.updateClassExpression(de,Tl,de.name,void 0,Hc,Us),qc=[];if(vc&&qc.push(vc),(C||Am(de)&32)&&bt(vr,Wc=>Rl(Wc)||cd(Wc)||M&&ww(Wc))||bt(ye))if(Er)N.assertIsDefined($,"Decorated classes transformed by TypeScript are expected to be within a variable declaration."),bt(ye)&&Jr($,wt(ye,t.createExpressionStatement)),bt(vr)&&Tt($,vr,((Et=de.emitNode)==null?void 0:Et.classThis)??t.getInternalName(de)),Lr?qc.push(t.createAssignment(Lr,Ss)):C&&((un=de.emitNode)!=null&&un.classThis)?qc.push(t.createAssignment(de.emitNode.classThis,Ss)):qc.push(Ss);else{if(Lr??(Lr=$o()),xi){Hn();const Wc=t.cloneNode(Lr);Wc.emitNode.autoGenerate.flags&=-9,he[Wu(de)]=Wc}qc.push(t.createAssignment(Lr,Ss)),Jr(qc,ye),Jr(qc,en(vr,Lr)),qc.push(t.cloneNode(Lr))}else qc.push(Ss);return qc.length>1&&(k_(Ss,131072),qc.forEach(Xu)),t.inlineExpressions(qc)}function Lt(de){if(!C)return In(de,Ee,e)}function L(de){if(U&&pe&&Rl(pe)&&(Y!=null&&Y.data)){const{classThis:ee,classConstructor:we}=Y.data;return ee??we??de}return de}function _e(de){const ee=!!(Am(de)&32);if(C||G){for(const vr of de.members)if(cd(vr))if(_i(vr))vl(vr,vr.name,Dn);else{const Ur=Kr();eT(Ur,vr.name,{kind:"untransformed"})}if(C&&bt(Ye(de))&&J(),zt()){for(const vr of de.members)if(Wd(vr)){const Ur=t.getGeneratedPrivateNameForNode(vr.name,void 0,"_accessor_storage");if(C||ee&&mc(vr))vl(vr,Ur,Fs);else{const xi=Kr();eT(xi,Ur,{kind:"untransformed"})}}}}let we=Vn(de.members,Se,$c),Et;bt(we,Ml)||(Et=me(void 0,de));let un,Er;if(!C&&bt(ye)){let vr=t.createExpressionStatement(t.inlineExpressions(ye));if(vr.transformFlags&134234112){const xi=t.createTempVariable(i),Lr=t.createArrowFunction(void 0,void 0,[],void 0,void 0,t.createBlock([vr]));un=t.createAssignment(xi,Lr),vr=t.createExpressionStatement(t.createCallExpression(xi,void 0,[]))}const Ur=t.createBlock([vr]);Er=t.createClassStaticBlockDeclaration(Ur),ye=void 0}if(Et||Er){let vr;const Ur=An(we,jP),xi=An(we,RI);vr=xn(vr,Ur),vr=xn(vr,xi),vr=xn(vr,Et),vr=xn(vr,Er);const Lr=Ur||xi?nr(we,$o=>$o!==Ur&&$o!==xi):we;vr=Jr(vr,Lr),we=dt(t.createNodeArray(vr),de.members)}return{members:we,prologue:un}}function J(){const{weakSetName:de}=Kr().data;N.assert(de,"weakSetName should be set in private identifier environment"),xo().push(t.createAssignment(de,t.createNewExpression(t.createIdentifier("WeakSet"),void 0,[])))}function me(de,ee){if(de=nt(de,Ee,Ml),!(Y!=null&&Y.data)||!(Y.data.facts&16))return de;const we=D_(ee),Et=!!(we&&$l(we.expression).kind!==106),un=Dl(de?de.parameters:void 0,Ee,e),Er=ke(ee,de,Et);return Er?de?(N.assert(un),t.updateConstructorDeclaration(de,void 0,un,Er)):Xu(Cr(dt(t.createConstructorDeclaration(void 0,un??[],Er),de||ee),de)):de}function Ge(de,ee,we,Et,un,Er,vr){const Ur=Et[un],xi=ee[Ur];if(Jr(de,Vn(ee,Ee,qi,we,Ur-we)),we=Ur+1,qS(xi)){const Lr=[];Ge(Lr,xi.tryBlock.statements,0,Et,un+1,Er,vr);const $o=t.createNodeArray(Lr);dt($o,xi.tryBlock.statements),de.push(t.updateTryStatement(xi,t.updateBlock(xi.tryBlock,Lr),nt(xi.catchClause,Ee,c1),nt(xi.finallyBlock,Ee,Xo)))}else{for(Jr(de,Vn(ee,Ee,qi,Ur,1));we<ee.length;){const Lr=ee[we];if(mp(Pl(Lr),vr))we++;else break}Jr(de,Er)}Jr(de,Vn(ee,Ee,qi,we))}function ke(de,ee,we){const Et=aJ(de,!1,!1);let un=Et;b||(un=nr(un,Us=>!!Us.initializer||Ji(Us.name)||P_(Us)));const Er=Ye(de),vr=bt(un)||bt(Er);if(!ee&&!vr)return lf(void 0,Ee,e);l();const Ur=!ee&&we;let xi=0,Lr=[];const $o=[],Tl=t.createThis();if(Ai($o,Er,Tl),ee){const Us=nr(Et,Ss=>mp(Pl(Ss),ee)),vc=nr(un,Ss=>!mp(Pl(Ss),ee));Tt($o,Us,Tl),Tt($o,vc,Tl)}else Tt($o,un,Tl);if(ee!=null&&ee.body){xi=t.copyPrologue(ee.body.statements,Lr,!1,Ee);const Us=o7(ee.body.statements,xi);if(Us.length)Ge(Lr,ee.body.statements,xi,Us,0,$o,ee);else{for(;xi<ee.body.statements.length;){const vc=ee.body.statements[xi];if(mp(Pl(vc),ee))xi++;else break}Jr(Lr,$o),Jr(Lr,Vn(ee.body.statements,Ee,qi,xi))}}else Ur&&Lr.push(t.createExpressionStatement(t.createCallExpression(t.createSuper(),void 0,[t.createSpreadElement(t.createIdentifier("arguments"))]))),Jr(Lr,$o);if(Lr=t.mergeLexicalEnvironment(Lr,o()),Lr.length===0&&!ee)return;const Hc=ee!=null&&ee.body&&ee.body.statements.length>=Lr.length?ee.body.multiLine??Lr.length>0:Lr.length>0;return dt(t.createBlock(dt(t.createNodeArray(Lr),ee?ee.body.statements:de.members),Hc),ee?ee.body:void 0)}function Tt(de,ee,we){for(const Et of ee){if(sa(Et)&&!C)continue;const un=kt(Et,we);un&&de.push(un)}}function kt(de,ee){const we=Rl(de)?Oi(de,le,de):bn(de,ee);if(!we)return;const Et=t.createExpressionStatement(we);Cr(Et,de),k_(Et,ja(de)&3072),ac(Et,de);const un=Pl(de);return Ao(un)?(Pa(Et,un),Fk(Et)):Pa(Et,L_(de)),I0(we,void 0),ZA(we,void 0),P_(un)&&k_(Et,3072),Et}function en(de,ee){const we=[];for(const Et of de){const un=Rl(Et)?Oi(Et,le,Et):Oi(Et,()=>bn(Et,ee),void 0);un&&(Xu(un),Cr(un,Et),k_(un,ja(Et)&3072),Pa(un,L_(Et)),ac(un,Et),we.push(un))}return we}function bn(de,ee){var we;const Et=pe,un=Bn(de,ee);return un&&mc(de)&&((we=Y==null?void 0:Y.data)!=null&&we.facts)&&(Cr(un,de),k_(un,4),Pa(un,qv(de.name)),oe.set(Pl(de),Y)),pe=Et,un}function Bn(de,ee){const we=!b;hp(de,Fe)&&(de=Sp(e,de));const Et=P_(de)?t.getGeneratedPrivateNameForNode(de.name):Za(de.name)&&!Rh(de.name.expression)?t.updateComputedPropertyName(de.name,t.getGeneratedNameForNode(de.name)):de.name;if(mc(de)&&(pe=de),Ji(Et)&&_i(de)){const vr=pa(Et);if(vr)return vr.kind==="f"?vr.isStatic?PUe(t,vr.variableName,nt(de.initializer,Ee,yt)):MUe(t,ee,nt(de.initializer,Ee,yt),vr.brandCheckIdentifier):void 0;N.fail("Undeclared private name for property declaration.")}if((Ji(Et)||mc(de))&&!de.initializer)return;const un=Pl(de);if(Zr(un,64))return;let Er=nt(de.initializer,Ee,yt);if(mp(un,un.parent)&&Ve(Et)){const vr=t.cloneNode(Et);Er?(Gd(Er)&&rw(Er.expression)&&mP(Er.expression.left,"___runInitializers")&&pI(Er.expression.right)&&vp(Er.expression.right.expression)&&(Er=Er.expression.left),Er=t.inlineExpressions([Er,vr])):Er=vr,pr(Et,3168),Pa(vr,un.name),pr(vr,3072)}else Er??(Er=t.createVoidZero());if(we||Ji(Et)){const vr=$S(t,ee,Et,Et);return k_(vr,1024),t.createAssignment(vr,Er)}else{const vr=Za(Et)?Et.expression:Ve(Et)?t.createStringLiteral(Vi(Et.escapedText)):Et,Ur=t.createPropertyDescriptor({value:Er,configurable:!0,writable:!0,enumerable:!0});return t.createObjectDefinePropertyCall(ee,vr,Ur)}}function Hn(){ne&1||(ne|=1,e.enableSubstitution(80),he=[])}function Ni(){ne&2||(ne|=2,e.enableSubstitution(110),e.enableEmitNotification(262),e.enableEmitNotification(218),e.enableEmitNotification(176),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(174),e.enableEmitNotification(172),e.enableEmitNotification(167))}function Ai(de,ee,we){if(!C||!bt(ee))return;const{weakSetName:Et}=Kr().data;N.assert(Et,"weakSetName should be set in private identifier environment"),de.push(t.createExpressionStatement(LUe(t,we,Et)))}function ir(de){return Fr(de)?t.updatePropertyAccessExpression(de,t.createVoidZero(),de.name):t.updateElementAccessExpression(de,t.createVoidZero(),nt(de.argumentExpression,Ee,yt))}function jr(de,ee){if(Za(de)){const we=bF(de),Et=nt(de.expression,Ee,yt),un=Tm(Et),Er=Rh(un);if(!(!!we||Lc(un)&&sl(un.left))&&!Er&&ee){const Ur=t.getGeneratedNameForNode(de);return p.getNodeCheckFlags(de)&32768?u(Ur):i(Ur),t.createAssignment(Ur,Et)}return Er||Ve(un)?void 0:Et}}function vo(){Y={previous:Y,data:void 0}}function Ci(){Y=Y==null?void 0:Y.previous}function Ii(){return N.assert(Y),Y.data??(Y.data={facts:0,classConstructor:void 0,classThis:void 0,superClassReference:void 0})}function Kr(){return N.assert(Y),Y.privateEnv??(Y.privateEnv=Ple({className:void 0,weakSetName:void 0}))}function xo(){return ye??(ye=[])}function Dn(de,ee,we,Et,un,Er,vr){Wd(de)?Vs(de,ee,we,Et,un,Er):Jo(de)?Fs(de,ee,we,Et,un,Er):ql(de)?Ql(de,ee,we,Et,un,Er):rf(de)?Lo(de,ee,we,Et,un,Er,vr):bp(de)&&cs(de,ee,we,Et,un,Er,vr)}function Fs(de,ee,we,Et,un,Er,vr){if(un){const Ur=N.checkDefined(we.classThis??we.classConstructor,"classConstructor should be set in private identifier environment"),xi=ho(ee);eT(Et,ee,{kind:"f",isStatic:!0,brandCheckIdentifier:Ur,variableName:xi,isValid:Er})}else{const Ur=ho(ee);eT(Et,ee,{kind:"f",isStatic:!1,brandCheckIdentifier:Ur,isValid:Er}),xo().push(t.createAssignment(Ur,t.createNewExpression(t.createIdentifier("WeakMap"),void 0,[])))}}function Ql(de,ee,we,Et,un,Er,vr){const Ur=ho(ee),xi=un?N.checkDefined(we.classThis??we.classConstructor,"classConstructor should be set in private identifier environment"):N.checkDefined(Et.data.weakSetName,"weakSetName should be set in private identifier environment");eT(Et,ee,{kind:"m",methodName:Ur,brandCheckIdentifier:xi,isStatic:un,isValid:Er})}function Lo(de,ee,we,Et,un,Er,vr){const Ur=ho(ee,"_get"),xi=un?N.checkDefined(we.classThis??we.classConstructor,"classConstructor should be set in private identifier environment"):N.checkDefined(Et.data.weakSetName,"weakSetName should be set in private identifier environment");(vr==null?void 0:vr.kind)==="a"&&vr.isStatic===un&&!vr.getterName?vr.getterName=Ur:eT(Et,ee,{kind:"a",getterName:Ur,setterName:void 0,brandCheckIdentifier:xi,isStatic:un,isValid:Er})}function cs(de,ee,we,Et,un,Er,vr){const Ur=ho(ee,"_set"),xi=un?N.checkDefined(we.classThis??we.classConstructor,"classConstructor should be set in private identifier environment"):N.checkDefined(Et.data.weakSetName,"weakSetName should be set in private identifier environment");(vr==null?void 0:vr.kind)==="a"&&vr.isStatic===un&&!vr.setterName?vr.setterName=Ur:eT(Et,ee,{kind:"a",getterName:void 0,setterName:Ur,brandCheckIdentifier:xi,isStatic:un,isValid:Er})}function Vs(de,ee,we,Et,un,Er,vr){const Ur=ho(ee,"_get"),xi=ho(ee,"_set"),Lr=un?N.checkDefined(we.classThis??we.classConstructor,"classConstructor should be set in private identifier environment"):N.checkDefined(Et.data.weakSetName,"weakSetName should be set in private identifier environment");eT(Et,ee,{kind:"a",getterName:Ur,setterName:xi,brandCheckIdentifier:Lr,isStatic:un,isValid:Er})}function vl(de,ee,we){const Et=Ii(),un=Kr(),Er=lJ(un,ee),vr=mc(de),Ur=!kUe(ee)&&Er===void 0;we(de,ee,Et,un,vr,Ur,Er)}function uu(de,ee,we){const{className:Et}=Kr().data,un=Et?{prefix:"_",node:Et,suffix:"_"}:"_",Er=typeof de=="object"?t.getGeneratedNameForNode(de,24,un,we):typeof de=="string"?t.createUniqueName(de,16,un,we):t.createTempVariable(void 0,!0,un,we);return p.getNodeCheckFlags(ee)&32768?u(Er):i(Er),Er}function ho(de,ee){const we=SC(de);return uu((we==null?void 0:we.substring(1))??de,de,ee)}function pa(de){const ee=Mle(Y,de);return(ee==null?void 0:ee.kind)==="untransformed"?void 0:ee}function du(de){const ee=t.getGeneratedNameForNode(de),we=pa(de.name);if(!we)return In(de,Ee,e);let Et=de.expression;return(FL(de)||zd(de)||!_1(de.expression))&&(Et=t.createTempVariable(i,!0),xo().push(t.createBinaryExpression(Et,64,nt(de.expression,Ee,yt)))),t.createAssignmentTargetWrapper(ee,Rt(we,Et,ee,64))}function As(de){if(Oa(de)||_d(de))return nn(de);if(eR(de))return du(de);if(K&&pe&&zd(de)&&HP(pe)&&(Y!=null&&Y.data)){const{classConstructor:ee,superClassReference:we,facts:Et}=Y.data;if(Et&1)return ir(de);if(ee&&we){const un=Qs(de)?nt(de.argumentExpression,Ee,yt):Ve(de.name)?t.createStringLiteralFromNode(de.name):void 0;if(un){const Er=t.createTempVariable(void 0);return t.createAssignmentTargetWrapper(Er,t.createReflectSetCall(we,un,Er,ee))}}}return In(de,Ee,e)}function La(de){if(hp(de,Fe)&&(de=Sp(e,de)),Lc(de,!0)){const ee=As(de.left),we=nt(de.right,Ee,yt);return t.updateBinaryExpression(de,ee,de.operatorToken,we)}return As(de)}function _l(de){if(ep(de.expression)){const ee=As(de.expression);return t.updateSpreadElement(de,ee)}return In(de,Ee,e)}function wf(de){if(bL(de)){if(e_(de))return _l(de);if(!jc(de))return La(de)}return In(de,Ee,e)}function lc(de){const ee=nt(de.name,Ee,oc);if(Lc(de.initializer,!0)){const we=La(de.initializer);return t.updatePropertyAssignment(de,ee,we)}if(ep(de.initializer)){const we=As(de.initializer);return t.updatePropertyAssignment(de,ee,we)}return In(de,Ee,e)}function Nl(de){return hp(de,Fe)&&(de=Sp(e,de)),In(de,Ee,e)}function ul(de){if(ep(de.expression)){const ee=As(de.expression);return t.updateSpreadAssignment(de,ee)}return In(de,Ee,e)}function ko(de){return N.assertNode(de,yL),Xv(de)?ul(de):rp(de)?Nl(de):hc(de)?lc(de):In(de,Ee,e)}function nn(de){return _d(de)?t.updateArrayLiteralExpression(de,Vn(de.elements,wf,yt)):t.updateObjectLiteralExpression(de,Vn(de.properties,ko,Wg))}function js(de,ee,we){const Et=Pl(ee),un=oe.get(Et);if(un){const Er=Y,vr=ve;Y=un,ve=ie,ie=!Rl(Et)||!(Am(Et)&32),se(de,ee,we),ie=ve,ve=vr,Y=Er;return}switch(ee.kind){case 218:if(Gs(Et)||ja(ee)&524288)break;case 262:case 176:case 177:case 178:case 174:case 172:{const Er=Y,vr=ve;Y=void 0,ve=ie,ie=!1,se(de,ee,we),ie=ve,ve=vr,Y=Er;return}case 167:{const Er=Y,vr=ie;Y=Y==null?void 0:Y.previous,ie=ve,se(de,ee,we),ie=vr,Y=Er;return}}se(de,ee,we)}function nu(de,ee){return ee=V(de,ee),de===1?pu(ee):ee}function pu(de){switch(de.kind){case 80:return Ms(de);case 110:return Ip(de)}return de}function Ip(de){if(ne&2&&(Y!=null&&Y.data)&&!fe.has(de)){const{facts:ee,classConstructor:we,classThis:Et}=Y.data,un=ie?Et??we:we;if(un)return dt(Cr(t.cloneNode(un),de),de);if(ee&1&&A)return t.createParenthesizedExpression(t.createVoidZero())}return de}function Ms(de){return Rc(de)||de}function Rc(de){if(ne&1&&p.getNodeCheckFlags(de)&536870912){const ee=p.getReferencedValueDeclaration(de);if(ee){const we=he[ee.id];if(we){const Et=t.cloneNode(we);return Pa(Et,de),ac(Et,de),Et}}}}}function PUe(e,t,r){return e.createAssignment(t,e.createObjectLiteralExpression([e.createPropertyAssignment("value",r||e.createVoidZero())]))}function MUe(e,t,r,i){return e.createCallExpression(e.createPropertyAccessExpression(i,"set"),void 0,[t,r||e.createVoidZero()])}function LUe(e,t,r){return e.createCallExpression(e.createPropertyAccessExpression(r,"add"),void 0,[t])}function kUe(e){return!gS(e)&&e.escapedText==="#constructor"}function wUe(e){return Ji(e.left)&&e.operatorToken.kind===103}function OUe(e){return Jo(e)&&mc(e)}function HP(e){return Rl(e)||OUe(e)}var WUe=T({"src/compiler/transformers/classFields.ts"(){ra()}});function jle(e){const{factory:t,hoistVariableDeclaration:r}=e,i=e.getEmitResolver(),o=e.getCompilerOptions(),s=os(o),l=fd(o,"strictNullChecks");let u,p;return{serializeTypeNode:(ye,$)=>h(ye,M,$),serializeTypeOfNode:(ye,$)=>h(ye,b,$),serializeParameterTypesOfNode:(ye,$,Y)=>h(ye,A,$,Y),serializeReturnTypeOfNode:(ye,$)=>h(ye,R,$)};function h(ye,$,Y,oe){const fe=u,Ne=p;u=ye.currentLexicalScope,p=ye.currentNameScope;const pe=oe===void 0?$(Y):$(Y,oe);return u=fe,p=Ne,pe}function m(ye){const $=i.getAllAccessorDeclarations(ye);return $.setAccessor&&ioe($.setAccessor)||$.getAccessor&&nm($.getAccessor)}function b(ye){switch(ye.kind){case 172:case 169:return M(ye.type);case 178:case 177:return M(m(ye));case 263:case 231:case 174:return t.createIdentifier("Function");default:return t.createVoidZero()}}function A(ye,$){const Y=ui(ye)?ag(ye):ea(ye)&&Yf(ye.body)?ye:void 0,oe=[];if(Y){const fe=I(Y,$),Ne=fe.length;for(let pe=0;pe<Ne;pe++){const ie=fe[pe];pe===0&&Ve(ie.name)&&ie.name.escapedText==="this"||(ie.dotDotDotToken?oe.push(M(Oj(ie.type))):oe.push(b(ie)))}}return t.createArrayLiteralExpression(oe)}function I(ye,$){if($&&ye.kind===177){const{setAccessor:Y}=wS($.members,ye);if(Y)return Y.parameters}return ye.parameters}function R(ye){return ea(ye)&&ye.type?M(ye.type):MC(ye)?t.createIdentifier("Promise"):t.createVoidZero()}function M(ye){if(ye===void 0)return t.createIdentifier("Object");switch(ye=rk(ye),ye.kind){case 116:case 157:case 146:return t.createVoidZero();case 184:case 185:return t.createIdentifier("Function");case 188:case 189:return t.createIdentifier("Array");case 182:return ye.assertsModifier?t.createVoidZero():t.createIdentifier("Boolean");case 136:return t.createIdentifier("Boolean");case 203:case 154:return t.createIdentifier("String");case 151:return t.createIdentifier("Object");case 201:return C(ye.literal);case 150:return t.createIdentifier("Number");case 163:return he("BigInt",7);case 155:return he("Symbol",2);case 183:return K(ye);case 193:return O(ye.types,!0);case 192:return O(ye.types,!1);case 194:return O([ye.trueType,ye.falseType],!1);case 198:if(ye.operator===148)return M(ye.type);break;case 186:case 199:case 200:case 187:case 133:case 159:case 197:case 205:break;case 319:case 320:case 324:case 325:case 326:break;case 321:case 322:case 323:return M(ye.type);default:return N.failBadSyntaxKind(ye)}return t.createIdentifier("Object")}function C(ye){switch(ye.kind){case 11:case 15:return t.createIdentifier("String");case 224:{const $=ye.operand;switch($.kind){case 9:case 10:return C($);default:return N.failBadSyntaxKind($)}}case 9:return t.createIdentifier("Number");case 10:return he("BigInt",7);case 112:case 97:return t.createIdentifier("Boolean");case 106:return t.createVoidZero();default:return N.failBadSyntaxKind(ye)}}function O(ye,$){let Y;for(let oe of ye){if(oe=rk(oe),oe.kind===146){if($)return t.createVoidZero();continue}if(oe.kind===159){if(!$)return t.createIdentifier("Object");continue}if(oe.kind===133)return t.createIdentifier("Object");if(!l&&(Zy(oe)&&oe.literal.kind===106||oe.kind===157))continue;const fe=M(oe);if(Ve(fe)&&fe.escapedText==="Object")return fe;if(Y){if(!U(Y,fe))return t.createIdentifier("Object")}else Y=fe}return Y??t.createVoidZero()}function U(ye,$){return sl(ye)?sl($):Ve(ye)?Ve($)&&ye.escapedText===$.escapedText:Fr(ye)?Fr($)&&U(ye.expression,$.expression)&&U(ye.name,$.name):pI(ye)?pI($)&&vp(ye.expression)&&ye.expression.text==="0"&&vp($.expression)&&$.expression.text==="0":Ma(ye)?Ma($)&&ye.text===$.text:KR(ye)?KR($)&&U(ye.expression,$.expression):Gd(ye)?Gd($)&&U(ye.expression,$.expression):XR(ye)?XR($)&&U(ye.condition,$.condition)&&U(ye.whenTrue,$.whenTrue)&&U(ye.whenFalse,$.whenFalse):mr(ye)?mr($)&&ye.operatorToken.kind===$.operatorToken.kind&&U(ye.left,$.left)&&U(ye.right,$.right):!1}function K(ye){const $=i.getTypeReferenceSerializationKind(ye.typeName,p??u);switch($){case 0:if(Gn(ye,fe=>fe.parent&&dI(fe.parent)&&(fe.parent.trueType===fe||fe.parent.falseType===fe)))return t.createIdentifier("Object");const Y=V(ye.typeName),oe=t.createTempVariable(r);return t.createConditionalExpression(t.createTypeCheck(t.createAssignment(oe,Y),"function"),void 0,oe,void 0,t.createIdentifier("Object"));case 1:return se(ye.typeName);case 2:return t.createVoidZero();case 4:return he("BigInt",7);case 6:return t.createIdentifier("Boolean");case 3:return t.createIdentifier("Number");case 5:return t.createIdentifier("String");case 7:return t.createIdentifier("Array");case 8:return he("Symbol",2);case 10:return t.createIdentifier("Function");case 9:return t.createIdentifier("Promise");case 11:return t.createIdentifier("Object");default:return N.assertNever($)}}function Z(ye,$){return t.createLogicalAnd(t.createStrictInequality(t.createTypeOfExpression(ye),t.createStringLiteral("undefined")),$)}function V(ye){if(ye.kind===80){const oe=se(ye);return Z(oe,oe)}if(ye.left.kind===80)return Z(se(ye.left),se(ye));const $=V(ye.left),Y=t.createTempVariable(r);return t.createLogicalAnd(t.createLogicalAnd($.left,t.createStrictInequality(t.createAssignment(Y,$.right),t.createVoidZero())),t.createPropertyAccessExpression(Y,ye.right))}function se(ye){switch(ye.kind){case 80:const $=qa(dt(Ih.cloneNode(ye),ye),ye.parent);return $.original=void 0,qa($,Do(u)),$;case 166:return G(ye)}}function G(ye){return t.createPropertyAccessExpression(se(ye.left),ye.right)}function ne(ye){return t.createConditionalExpression(t.createTypeCheck(t.createIdentifier(ye),"function"),void 0,t.createIdentifier(ye),void 0,t.createIdentifier("Object"))}function he(ye,$){return s<$?ne(ye):t.createIdentifier(ye)}}var FUe=T({"src/compiler/transformers/typeSerializer.ts"(){ra()}});function Ule(e){const{factory:t,getEmitHelperFactory:r,hoistVariableDeclaration:i}=e,o=e.getEmitResolver(),s=e.getCompilerOptions(),l=os(s),u=e.onSubstituteNode;e.onSubstituteNode=je;let p;return Pm(e,h);function h($e){const It=In($e,b,e);return Ug(It,e.readEmitHelpers()),It}function m($e){return Eu($e)?void 0:$e}function b($e){if(!($e.transformFlags&33554432))return $e;switch($e.kind){case 170:return;case 263:return A($e);case 231:return K($e);case 176:return Z($e);case 174:return se($e);case 178:return ne($e);case 177:return G($e);case 172:return he($e);case 169:return ye($e);default:return In($e,b,e)}}function A($e){if(!(zv(!0,$e)||IC(!0,$e)))return In($e,b,e);const It=zv(!0,$e)?U($e,$e.name):O($e,$e.name);return lh(It)}function I($e){return!!($e.transformFlags&536870912)}function R($e){return bt($e,I)}function M($e){for(const It of $e.members){if(!QS(It))continue;const tn=s7(It,$e,!0);if(bt(tn==null?void 0:tn.decorators,I)||bt(tn==null?void 0:tn.parameters,R))return!0}return!1}function C($e,It){let tn=[];return oe(tn,$e,!1),oe(tn,$e,!0),M($e)&&(It=dt(t.createNodeArray([...It,t.createClassStaticBlockDeclaration(t.createBlock(tn,!0))]),It),tn=void 0),{decorationStatements:tn,members:It}}function O($e,It){const tn=Vn($e.modifiers,m,xa),rn=Vn($e.heritageClauses,b,of);let Pn=Vn($e.members,b,$c),Xn=[];({members:Pn,decorationStatements:Xn}=C($e,Pn));const hn=t.updateClassDeclaration($e,tn,It,void 0,rn,Pn);return Jr([hn],Xn)}function U($e,It){const tn=Zr($e,32),rn=Zr($e,2048),Pn=Vn($e.modifiers,zt=>sw(zt)||Eu(zt)?void 0:zt,ll),Xn=L_($e),hn=We($e),Qt=l<2?t.getInternalName($e,!1,!0):t.getLocalName($e,!1,!0),$t=Vn($e.heritageClauses,b,of);let _i=Vn($e.members,b,$c),ao=[];({members:_i,decorationStatements:ao}=C($e,_i));const Oi=l>=9&&!!hn&&bt(_i,zt=>Jo(zt)&&Zr(zt,256)||Rl(zt));Oi&&(_i=dt(t.createNodeArray([t.createClassStaticBlockDeclaration(t.createBlock([t.createExpressionStatement(t.createAssignment(hn,t.createThis()))])),..._i]),_i));const No=t.createClassExpression(Pn,It&&sl(It)?void 0:It,void 0,$t,_i);Cr(No,$e),dt(No,Xn);const Mn=hn&&!Oi?t.createAssignment(hn,No):No,Di=t.createVariableDeclaration(Qt,void 0,void 0,Mn);Cr(Di,$e);const Ar=t.createVariableDeclarationList([Di],1),sn=t.createVariableStatement(void 0,Ar);Cr(sn,$e),dt(sn,Xn),ac(sn,$e);const tt=[sn];if(Jr(tt,ao),ve(tt,$e),tn)if(rn){const zt=t.createExportDefault(Qt);tt.push(zt)}else{const zt=t.createExternalModuleExport(t.getDeclarationName($e));tt.push(zt)}return tt}function K($e){return t.updateClassExpression($e,Vn($e.modifiers,m,xa),$e.name,void 0,Vn($e.heritageClauses,b,of),Vn($e.members,b,$c))}function Z($e){return t.updateConstructorDeclaration($e,Vn($e.modifiers,m,xa),Vn($e.parameters,b,Ao),nt($e.body,b,Xo))}function V($e,It){return $e!==It&&(ac($e,It),Pa($e,L_(It))),$e}function se($e){return V(t.updateMethodDeclaration($e,Vn($e.modifiers,m,xa),$e.asteriskToken,N.checkDefined(nt($e.name,b,oc)),void 0,void 0,Vn($e.parameters,b,Ao),void 0,nt($e.body,b,Xo)),$e)}function G($e){return V(t.updateGetAccessorDeclaration($e,Vn($e.modifiers,m,xa),N.checkDefined(nt($e.name,b,oc)),Vn($e.parameters,b,Ao),void 0,nt($e.body,b,Xo)),$e)}function ne($e){return V(t.updateSetAccessorDeclaration($e,Vn($e.modifiers,m,xa),N.checkDefined(nt($e.name,b,oc)),Vn($e.parameters,b,Ao),nt($e.body,b,Xo)),$e)}function he($e){if(!($e.flags&33554432||Zr($e,128)))return V(t.updatePropertyDeclaration($e,Vn($e.modifiers,m,xa),N.checkDefined(nt($e.name,b,oc)),void 0,void 0,nt($e.initializer,b,yt)),$e)}function ye($e){const It=t.updateParameterDeclaration($e,vse(t,$e.modifiers),$e.dotDotDotToken,N.checkDefined(nt($e.name,b,vS)),void 0,void 0,nt($e.initializer,b,yt));return It!==$e&&(ac(It,$e),dt(It,L_($e)),Pa(It,L_($e)),pr(It.name,64)),It}function $($e){return mP($e.expression,"___metadata")}function Y($e){if(!$e)return;const{false:It,true:tn}=w6($e.decorators,$),rn=[];return Jr(rn,wt(It,He)),Jr(rn,Pi($e.parameters,Ee)),Jr(rn,wt(tn,He)),rn}function oe($e,It,tn){Jr($e,wt(pe(It,tn),rn=>t.createExpressionStatement(rn)))}function fe($e,It,tn){return BL(!0,$e,tn)&&It===sa($e)}function Ne($e,It){return nr($e.members,tn=>fe(tn,It,$e))}function pe($e,It){const tn=Ne($e,It);let rn;for(const Pn of tn)rn=xn(rn,ie($e,Pn));return rn}function ie($e,It){const tn=s7(It,$e,!0),rn=Y(tn);if(!rn)return;const Pn=Se($e,It),Xn=De(It,!Zr(It,128)),hn=l>0?Jo(It)&&!P_(It)?t.createVoidZero():t.createNull():void 0,Qt=r().createDecorateHelper(rn,Pn,Xn,hn);return pr(Qt,3072),Pa(Qt,L_(It)),Qt}function ve($e,It){const tn=Le(It);tn&&$e.push(Cr(t.createExpressionStatement(tn),It))}function Le($e){const It=sJ($e),tn=Y(It);if(!tn)return;const rn=p&&p[Wu($e)],Pn=l<2?t.getInternalName($e,!1,!0):t.getDeclarationName($e,!1,!0),Xn=r().createDecorateHelper(tn,Pn),hn=t.createAssignment(Pn,rn?t.createAssignment(rn,Xn):Xn);return pr(hn,3072),Pa(hn,L_($e)),hn}function He($e){return N.checkDefined(nt($e.expression,b,yt))}function Ee($e,It){let tn;if($e){tn=[];for(const rn of $e){const Pn=r().createParamHelper(He(rn),It);dt(Pn,rn.expression),pr(Pn,3072),tn.push(Pn)}}return tn}function De($e,It){const tn=$e.name;return Ji(tn)?t.createIdentifier(""):Za(tn)?It&&!Rh(tn.expression)?t.getGeneratedNameForNode(tn):tn.expression:Ve(tn)?t.createStringLiteral(Sr(tn)):t.cloneNode(tn)}function Pe(){p||(e.enableSubstitution(80),p=[])}function We($e){if(o.getNodeCheckFlags($e)&262144){Pe();const It=t.createUniqueName($e.name&&!sl($e.name)?Sr($e.name):"default");return p[Wu($e)]=It,i(It),It}}function At($e){return t.createPropertyAccessExpression(t.getDeclarationName($e),"prototype")}function Se($e,It){return sa(It)?t.getDeclarationName($e):At($e)}function je($e,It){return It=u($e,It),$e===1?at(It):It}function at($e){switch($e.kind){case 80:return Gt($e)}return $e}function Gt($e){return vt($e)??$e}function vt($e){if(p&&o.getNodeCheckFlags($e)&536870912){const It=o.getReferencedValueDeclaration($e);if(It){const tn=p[It.id];if(tn){const rn=t.cloneNode(tn);return Pa(rn,$e),ac(rn,$e),rn}}}}}var zUe=T({"src/compiler/transformers/legacyDecorators.ts"(){ra()}});function Hle(e){const{factory:t,getEmitHelperFactory:r,startLexicalEnvironment:i,endLexicalEnvironment:o,hoistVariableDeclaration:s}=e,l=os(e.getCompilerOptions());let u,p,h,m,b,A;return Pm(e,I);function I(L){u=void 0,A=!1;const _e=In(L,ne,e);return Ug(_e,e.readEmitHelpers()),A&&(QA(_e,32),A=!1),_e}function R(){switch(p=void 0,h=void 0,m=void 0,u==null?void 0:u.kind){case"class":p=u.classInfo;break;case"class-element":p=u.next.classInfo,h=u.classThis,m=u.classSuper;break;case"name":const L=u.next.next.next;(L==null?void 0:L.kind)==="class-element"&&(p=L.next.classInfo,h=L.classThis,m=L.classSuper);break}}function M(L){u={kind:"class",next:u,classInfo:L,savedPendingExpressions:b},b=void 0,R()}function C(){N.assert((u==null?void 0:u.kind)==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${u==null?void 0:u.kind}' instead.`),b=u.savedPendingExpressions,u=u.next,R()}function O(L){var _e,J;N.assert((u==null?void 0:u.kind)==="class","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class' but got '${u==null?void 0:u.kind}' instead.`),u={kind:"class-element",next:u},(Rl(L)||Jo(L)&&mc(L))&&(u.classThis=(_e=u.next.classInfo)==null?void 0:_e.classThis,u.classSuper=(J=u.next.classInfo)==null?void 0:J.classSuper),R()}function U(){var L;N.assert((u==null?void 0:u.kind)==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${u==null?void 0:u.kind}' instead.`),N.assert(((L=u.next)==null?void 0:L.kind)==="class","Incorrect value for top.next.kind.",()=>{var _e;return`Expected top.next.kind to be 'class' but got '${(_e=u.next)==null?void 0:_e.kind}' instead.`}),u=u.next,R()}function K(){N.assert((u==null?void 0:u.kind)==="class-element","Incorrect value for top.kind.",()=>`Expected top.kind to be 'class-element' but got '${u==null?void 0:u.kind}' instead.`),u={kind:"name",next:u},R()}function Z(){N.assert((u==null?void 0:u.kind)==="name","Incorrect value for top.kind.",()=>`Expected top.kind to be 'name' but got '${u==null?void 0:u.kind}' instead.`),u=u.next,R()}function V(){(u==null?void 0:u.kind)==="other"?(N.assert(!b),u.depth++):(u={kind:"other",next:u,depth:0,savedPendingExpressions:b},b=void 0,R())}function se(){N.assert((u==null?void 0:u.kind)==="other","Incorrect value for top.kind.",()=>`Expected top.kind to be 'other' but got '${u==null?void 0:u.kind}' instead.`),u.depth>0?(N.assert(!b),u.depth--):(b=u.savedPendingExpressions,u=u.next,R())}function G(L){return!!(L.transformFlags&33554432)||!!h&&!!(L.transformFlags&16384)||!!h&&!!m&&!!(L.transformFlags&134217728)}function ne(L){if(!G(L))return L;switch(L.kind){case 170:return N.fail("Use `modifierVisitor` instead.");case 263:return Le(L);case 231:return He(L);case 176:case 172:case 175:return N.fail("Not supported outside of a class. Use 'classElementVisitor' instead.");case 169:return Xn(L);case 226:return ao(L,!1);case 303:return sn(L);case 260:return tt(L);case 208:return zt(L);case 277:return qe(L);case 110:return $e(L);case 248:return $t(L);case 244:return _i(L);case 361:return No(L,!1);case 217:return mt(L,!1);case 360:return ft(L);case 213:return It(L);case 215:return tn(L);case 224:case 225:return Oi(L,!1);case 211:return rn(L);case 212:return Pn(L);case 167:return Ar(L);case 174:case 178:case 177:case 218:case 262:{V();const _e=In(L,he,e);return se(),_e}default:return In(L,he,e)}}function he(L){switch(L.kind){case 170:return;default:return ne(L)}}function ye(L){switch(L.kind){case 170:return;default:return L}}function $(L){switch(L.kind){case 176:return Pe(L);case 174:return Se(L);case 177:return je(L);case 178:return at(L);case 172:return vt(L);case 175:return Gt(L);default:return ne(L)}}function Y(L){switch(L.kind){case 224:case 225:return Oi(L,!0);case 226:return ao(L,!0);case 361:return No(L,!0);case 217:return mt(L,!0);default:return ne(L)}}function oe(L){let _e=L.name&&Ve(L.name)&&!sl(L.name)?Sr(L.name):L.name&&Ji(L.name)&&!sl(L.name)?Sr(L.name).slice(1):L.name&&Ma(L.name)&&tf(L.name.text,99)?L.name.text:ui(L)?"class":"member";return Fy(L)&&(_e=`get_${_e}`),Fv(L)&&(_e=`set_${_e}`),L.name&&Ji(L.name)&&(_e=`private_${_e}`),sa(L)&&(_e=`static_${_e}`),"_"+_e}function fe(L,_e){return t.createUniqueName(`${oe(L)}_${_e}`,24)}function Ne(L,_e){return t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(L,void 0,void 0,_e)],1))}function pe(L){const _e=t.createUniqueName("_metadata",48);let J,me,Ge=!1,ke=!1,Tt=!1,kt,en,bn;if(mR(!1,L)){const Bn=bt(L.members,Hn=>(cd(Hn)||Wd(Hn))&&mc(Hn));kt=t.createUniqueName("_classThis",Bn?24:48)}for(const Bn of L.members){if(MA(Bn)&&BL(!1,Bn,L))if(mc(Bn)){if(!me){me=t.createUniqueName("_staticExtraInitializers",48);const Hn=r().createRunInitializersHelper(kt??t.createThis(),me);Pa(Hn,L.name??Gg(L)),en??(en=[]),en.push(Hn)}}else{if(!J){J=t.createUniqueName("_instanceExtraInitializers",48);const Hn=r().createRunInitializersHelper(t.createThis(),J);Pa(Hn,L.name??Gg(L)),bn??(bn=[]),bn.push(Hn)}J??(J=t.createUniqueName("_instanceExtraInitializers",48))}if(Rl(Bn)?RI(Bn)||(Ge=!0):Jo(Bn)&&(mc(Bn)?Ge||(Ge=!!Bn.initializer||If(Bn)):ke||(ke=!Dj(Bn))),(cd(Bn)||Wd(Bn))&&mc(Bn)&&(Tt=!0),me&&J&&Ge&&ke&&Tt)break}return{class:L,classThis:kt,metadataReference:_e,instanceMethodExtraInitializersName:J,staticMethodExtraInitializersName:me,hasStaticInitializers:Ge,hasNonAmbientInstanceFields:ke,hasStaticPrivateClassElements:Tt,pendingStaticInitializers:en,pendingInstanceInitializers:bn}}function ie(L){i(),!pJ(L)&&zv(!1,L)&&(L=c7(e,L,t.createStringLiteral("")));const _e=t.getLocalName(L,!1,!1,!0),J=pe(L),me=[];let Ge,ke,Tt,kt,en=!1;const bn=pt(sJ(L));bn&&(J.classDecoratorsName=t.createUniqueName("_classDecorators",48),J.classDescriptorName=t.createUniqueName("_classDescriptor",48),J.classExtraInitializersName=t.createUniqueName("_classExtraInitializers",48),N.assertIsDefined(J.classThis),me.push(Ne(J.classDecoratorsName,t.createArrayLiteralExpression(bn)),Ne(J.classDescriptorName),Ne(J.classExtraInitializersName,t.createArrayLiteralExpression()),Ne(J.classThis)),J.hasStaticPrivateClassElements&&(en=!0,A=!0));const Bn=ak(L.heritageClauses,96),Hn=Bn&&Xc(Bn.types),Ni=Hn&&nt(Hn.expression,ne,yt);if(Ni){J.classSuper=t.createUniqueName("_classSuper",48);const Kr=$l(Ni),xo=Zc(Kr)&&!Kr.name||Os(Kr)&&!Kr.name||Gs(Kr)?t.createComma(t.createNumericLiteral(0),Ni):Ni;me.push(Ne(J.classSuper,xo));const Dn=t.updateExpressionWithTypeArguments(Hn,J.classSuper,void 0),Fs=t.updateHeritageClause(Bn,[Dn]);kt=t.createNodeArray([Fs])}const Ai=J.classThis??t.createThis();M(J),Ge=xn(Ge,q(J.metadataReference,J.classSuper));let ir=L.members;if(ir=Vn(ir,Kr=>Ml(Kr)?Kr:$(Kr),$c),ir=Vn(ir,Kr=>Ml(Kr)?$(Kr):Kr,$c),b){let Kr;for(let xo of b){xo=nt(xo,function Fs(Ql){if(!(Ql.transformFlags&16384))return Ql;switch(Ql.kind){case 110:return Kr||(Kr=t.createUniqueName("_outerThis",16),me.unshift(Ne(Kr,t.createThis()))),Kr;default:return In(Ql,Fs,e)}},yt);const Dn=t.createExpressionStatement(xo);Ge=xn(Ge,Dn)}b=void 0}if(C(),bt(J.pendingInstanceInitializers)&&!ag(L)){const Kr=Ee(L,J);if(Kr){const xo=D_(L),Dn=!!(xo&&$l(xo.expression).kind!==106),Fs=[];if(Dn){const Lo=t.createSpreadElement(t.createIdentifier("arguments")),cs=t.createCallExpression(t.createSuper(),void 0,[Lo]);Fs.push(t.createExpressionStatement(cs))}Jr(Fs,Kr);const Ql=t.createBlock(Fs,!0);Tt=t.createConstructorDeclaration(void 0,[],Ql)}}if(J.staticMethodExtraInitializersName&&me.push(Ne(J.staticMethodExtraInitializersName,t.createArrayLiteralExpression())),J.instanceMethodExtraInitializersName&&me.push(Ne(J.instanceMethodExtraInitializersName,t.createArrayLiteralExpression())),J.memberInfos&&Gc(J.memberInfos,(Kr,xo)=>{sa(xo)&&(me.push(Ne(Kr.memberDecoratorsName)),Kr.memberInitializersName&&me.push(Ne(Kr.memberInitializersName,t.createArrayLiteralExpression())),Kr.memberExtraInitializersName&&me.push(Ne(Kr.memberExtraInitializersName,t.createArrayLiteralExpression())),Kr.memberDescriptorName&&me.push(Ne(Kr.memberDescriptorName)))}),J.memberInfos&&Gc(J.memberInfos,(Kr,xo)=>{sa(xo)||(me.push(Ne(Kr.memberDecoratorsName)),Kr.memberInitializersName&&me.push(Ne(Kr.memberInitializersName,t.createArrayLiteralExpression())),Kr.memberExtraInitializersName&&me.push(Ne(Kr.memberExtraInitializersName,t.createArrayLiteralExpression())),Kr.memberDescriptorName&&me.push(Ne(Kr.memberDescriptorName)))}),Ge=Jr(Ge,J.staticNonFieldDecorationStatements),Ge=Jr(Ge,J.nonStaticNonFieldDecorationStatements),Ge=Jr(Ge,J.staticFieldDecorationStatements),Ge=Jr(Ge,J.nonStaticFieldDecorationStatements),J.classDescriptorName&&J.classDecoratorsName&&J.classExtraInitializersName&&J.classThis){Ge??(Ge=[]);const Kr=t.createPropertyAssignment("value",Ai),xo=t.createObjectLiteralExpression([Kr]),Dn=t.createAssignment(J.classDescriptorName,xo),Fs=t.createPropertyAccessExpression(Ai,"name"),Ql=r().createESDecorateHelper(t.createNull(),Dn,J.classDecoratorsName,{kind:"class",name:Fs,metadata:J.metadataReference},t.createNull(),J.classExtraInitializersName),Lo=t.createExpressionStatement(Ql);Pa(Lo,Gg(L)),Ge.push(Lo);const cs=t.createPropertyAccessExpression(J.classDescriptorName,"value"),Vs=t.createAssignment(J.classThis,cs),vl=t.createAssignment(_e,Vs);Ge.push(t.createExpressionStatement(vl))}if(Ge.push(Oe(Ai,J.metadataReference)),bt(J.pendingStaticInitializers)){for(const Kr of J.pendingStaticInitializers){const xo=t.createExpressionStatement(Kr);Pa(xo,qv(Kr)),ke=xn(ke,xo)}J.pendingStaticInitializers=void 0}if(J.classExtraInitializersName){const Kr=r().createRunInitializersHelper(Ai,J.classExtraInitializersName),xo=t.createExpressionStatement(Kr);Pa(xo,L.name??Gg(L)),ke=xn(ke,xo)}Ge&&ke&&!J.hasStaticInitializers&&(Jr(Ge,ke),ke=void 0);const jr=Ge&&t.createClassStaticBlockDeclaration(t.createBlock(Ge,!0));jr&&en&&zk(jr,32);const vo=ke&&t.createClassStaticBlockDeclaration(t.createBlock(ke,!0));if(jr||Tt||vo){const Kr=[],xo=ir.findIndex(RI);jr?(Jr(Kr,ir,0,xo+1),Kr.push(jr),Jr(Kr,ir,xo+1)):Jr(Kr,ir),Tt&&Kr.push(Tt),vo&&Kr.push(vo),ir=dt(t.createNodeArray(Kr),ir)}const Ci=o();let Ii;if(bn){Ii=t.createClassExpression(void 0,void 0,void 0,kt,ir),J.classThis&&(Ii=Wle(t,Ii,J.classThis));const Kr=t.createVariableDeclaration(_e,void 0,void 0,Ii),xo=t.createVariableDeclarationList([Kr]),Dn=J.classThis?t.createAssignment(_e,J.classThis):_e;me.push(t.createVariableStatement(void 0,xo),t.createReturnStatement(Dn))}else Ii=t.createClassExpression(void 0,L.name,void 0,kt,ir),me.push(t.createReturnStatement(Ii));if(en){QA(Ii,32);for(const Kr of Ii.members)(cd(Kr)||Wd(Kr))&&mc(Kr)&&QA(Kr,32)}return Cr(Ii,L),t.createImmediatelyInvokedArrowFunction(t.mergeLexicalEnvironment(me,Ci))}function ve(L){return zv(!1,L)||IC(!1,L)}function Le(L){if(ve(L)){const _e=[],J=Pl(L,ui)??L,me=J.name?t.createStringLiteralFromNode(J.name):t.createStringLiteral("default"),Ge=Zr(L,32),ke=Zr(L,2048);if(L.name||(L=c7(e,L,me)),Ge&&ke){const Tt=ie(L);if(L.name){const kt=t.createVariableDeclaration(t.getLocalName(L),void 0,void 0,Tt);Cr(kt,L);const en=t.createVariableDeclarationList([kt],1),bn=t.createVariableStatement(void 0,en);_e.push(bn);const Bn=t.createExportDefault(t.getDeclarationName(L));Cr(Bn,L),ac(Bn,w_(L)),Pa(Bn,Gg(L)),_e.push(Bn)}else{const kt=t.createExportDefault(Tt);Cr(kt,L),ac(kt,w_(L)),Pa(kt,Gg(L)),_e.push(kt)}}else{N.assertIsDefined(L.name,"A class declaration that is not a default export must have a name.");const Tt=ie(L),kt=Ge?Ai=>oI(Ai)?void 0:ye(Ai):ye,en=Vn(L.modifiers,kt,xa),bn=t.getLocalName(L,!1,!0),Bn=t.createVariableDeclaration(bn,void 0,void 0,Tt);Cr(Bn,L);const Hn=t.createVariableDeclarationList([Bn],1),Ni=t.createVariableStatement(en,Hn);if(Cr(Ni,L),ac(Ni,w_(L)),_e.push(Ni),Ge){const Ai=t.createExternalModuleExport(bn);Cr(Ai,L),_e.push(Ai)}}return lh(_e)}else{const _e=Vn(L.modifiers,ye,xa),J=Vn(L.heritageClauses,ne,of);M(void 0);const me=Vn(L.members,$,$c);return C(),t.updateClassDeclaration(L,_e,L.name,void 0,J,me)}}function He(L){if(ve(L)){const _e=ie(L);return Cr(_e,L),_e}else{const _e=Vn(L.modifiers,ye,xa),J=Vn(L.heritageClauses,ne,of);M(void 0);const me=Vn(L.members,$,$c);return C(),t.updateClassExpression(L,_e,L.name,void 0,J,me)}}function Ee(L,_e){if(bt(_e.pendingInstanceInitializers)){const J=[];return J.push(t.createExpressionStatement(t.inlineExpressions(_e.pendingInstanceInitializers))),_e.pendingInstanceInitializers=void 0,J}}function De(L,_e,J,me,Ge,ke){const Tt=me[Ge],kt=_e[Tt];if(Jr(L,Vn(_e,ne,qi,J,Tt-J)),qS(kt)){const en=[];De(en,kt.tryBlock.statements,0,me,Ge+1,ke);const bn=t.createNodeArray(en);dt(bn,kt.tryBlock.statements),L.push(t.updateTryStatement(kt,t.updateBlock(kt.tryBlock,en),nt(kt.catchClause,ne,c1),nt(kt.finallyBlock,ne,Xo)))}else Jr(L,Vn(_e,ne,qi,Tt,1)),Jr(L,ke);Jr(L,Vn(_e,ne,qi,Tt+1))}function Pe(L){O(L);const _e=Vn(L.modifiers,ye,xa),J=Vn(L.parameters,ne,Ao);let me;if(L.body&&p){const Ge=Ee(p.class,p);if(Ge){const ke=[],Tt=t.copyPrologue(L.body.statements,ke,!1,ne),kt=o7(L.body.statements,Tt);kt.length>0?De(ke,L.body.statements,Tt,kt,0,Ge):(Jr(ke,Ge),Jr(ke,Vn(L.body.statements,ne,qi))),me=t.createBlock(ke,!0),Cr(me,L.body),dt(me,L.body)}}return me??(me=nt(L.body,ne,Xo)),U(),t.updateConstructorDeclaration(L,_e,J,me)}function We(L,_e){return L!==_e&&(ac(L,_e),Pa(L,Gg(_e))),L}function At(L,_e,J){let me,Ge,ke,Tt,kt,en;if(!_e){const Hn=Vn(L.modifiers,ye,xa);return K(),Ge=Di(L.name),Z(),{modifiers:Hn,referencedName:me,name:Ge,initializersName:ke,descriptorName:en,thisArg:kt}}const bn=pt(s7(L,_e.class,!1)),Bn=Vn(L.modifiers,ye,xa);if(bn){const Hn=fe(L,"decorators"),Ni=t.createArrayLiteralExpression(bn),Ai=t.createAssignment(Hn,Ni),ir={memberDecoratorsName:Hn};_e.memberInfos??(_e.memberInfos=new Map),_e.memberInfos.set(L,ir),b??(b=[]),b.push(Ai);const jr=MA(L)||Wd(L)?sa(L)?_e.staticNonFieldDecorationStatements??(_e.staticNonFieldDecorationStatements=[]):_e.nonStaticNonFieldDecorationStatements??(_e.nonStaticNonFieldDecorationStatements=[]):Jo(L)&&!Wd(L)?sa(L)?_e.staticFieldDecorationStatements??(_e.staticFieldDecorationStatements=[]):_e.nonStaticFieldDecorationStatements??(_e.nonStaticFieldDecorationStatements=[]):N.fail(),vo=rf(L)?"getter":bp(L)?"setter":ql(L)?"method":Wd(L)?"accessor":Jo(L)?"field":N.fail();let Ci;if(Ve(L.name)||Ji(L.name))Ci={computed:!1,name:L.name};else if(N_(L.name))Ci={computed:!0,name:t.createStringLiteralFromNode(L.name)};else{const Kr=L.name.expression;N_(Kr)&&!Ve(Kr)?Ci={computed:!0,name:t.createStringLiteralFromNode(Kr)}:(K(),{referencedName:me,name:Ge}=Mn(L.name),Ci={computed:!0,name:me},Z())}const Ii={kind:vo,name:Ci,static:sa(L),private:Ji(L.name),access:{get:Jo(L)||rf(L)||ql(L),set:Jo(L)||bp(L)},metadata:_e.metadataReference};if(MA(L)){const Kr=sa(L)?_e.staticMethodExtraInitializersName:_e.instanceMethodExtraInitializersName;N.assertIsDefined(Kr);let xo;cd(L)&&J&&(xo=J(L,Vn(Bn,Ql=>ii(Ql,_P),xa)),ir.memberDescriptorName=en=fe(L,"descriptor"),xo=t.createAssignment(en,xo));const Dn=r().createESDecorateHelper(t.createThis(),xo??t.createNull(),Hn,Ii,t.createNull(),Kr),Fs=t.createExpressionStatement(Dn);Pa(Fs,Gg(L)),jr.push(Fs)}else if(Jo(L)){ke=ir.memberInitializersName??(ir.memberInitializersName=fe(L,"initializers")),Tt=ir.memberExtraInitializersName??(ir.memberExtraInitializersName=fe(L,"extraInitializers")),sa(L)&&(kt=_e.classThis);let Kr;cd(L)&&P_(L)&&J&&(Kr=J(L,void 0),ir.memberDescriptorName=en=fe(L,"descriptor"),Kr=t.createAssignment(en,Kr));const xo=r().createESDecorateHelper(Wd(L)?t.createThis():t.createNull(),Kr??t.createNull(),Hn,Ii,ke,Tt),Dn=t.createExpressionStatement(xo);Pa(Dn,Gg(L)),jr.push(Dn)}}return Ge===void 0&&(K(),Ge=Di(L.name),Z()),!bt(Bn)&&(ql(L)||Jo(L))&&pr(Ge,1024),{modifiers:Bn,referencedName:me,name:Ge,initializersName:ke,extraInitializersName:Tt,descriptorName:en,thisArg:kt}}function Se(L){O(L);const{modifiers:_e,name:J,descriptorName:me}=At(L,p,Rt);if(me)return U(),We(vn(_e,J,me),L);{const Ge=Vn(L.parameters,ne,Ao),ke=nt(L.body,ne,Xo);return U(),We(t.updateMethodDeclaration(L,_e,L.asteriskToken,J,void 0,void 0,Ge,void 0,ke),L)}}function je(L){O(L);const{modifiers:_e,name:J,descriptorName:me}=At(L,p,Ye);if(me)return U(),We(fn(_e,J,me),L);{const Ge=Vn(L.parameters,ne,Ao),ke=nt(L.body,ne,Xo);return U(),We(t.updateGetAccessorDeclaration(L,_e,J,Ge,void 0,ke),L)}}function at(L){O(L);const{modifiers:_e,name:J,descriptorName:me}=At(L,p,_t);if(me)return U(),We(_n(_e,J,me),L);{const Ge=Vn(L.parameters,ne,Ao),ke=nt(L.body,ne,Xo);return U(),We(t.updateSetAccessorDeclaration(L,_e,J,Ge,ke),L)}}function Gt(L){O(L);let _e;if(RI(L))_e=In(L,ne,e);else if(jP(L)){const J=h;h=void 0,_e=In(L,ne,e),h=J}else if(L=In(L,ne,e),_e=L,p&&(p.hasStaticInitializers=!0,bt(p.pendingStaticInitializers))){const J=[];for(const ke of p.pendingStaticInitializers){const Tt=t.createExpressionStatement(ke);Pa(Tt,qv(ke)),J.push(Tt)}const me=t.createBlock(J,!0);_e=[t.createClassStaticBlockDeclaration(me),_e],p.pendingStaticInitializers=void 0}return U(),_e}function vt(L){hp(L,hn)&&(L=Sp(e,L,Qt(L.initializer))),O(L),N.assert(!Dj(L),"Not yet implemented.");const{modifiers:_e,name:J,initializersName:me,extraInitializersName:Ge,descriptorName:ke,thisArg:Tt}=At(L,p,P_(L)?Vt:void 0);i();let kt=nt(L.initializer,ne,yt);me&&(kt=r().createRunInitializersHelper(Tt??t.createThis(),me,kt??t.createVoidZero())),sa(L)&&p&&kt&&(p.hasStaticInitializers=!0);const en=o();if(bt(en)&&(kt=t.createImmediatelyInvokedArrowFunction([...en,t.createReturnStatement(kt)])),p&&(sa(L)?(kt=Fe(p,!0,kt),Ge&&(p.pendingStaticInitializers??(p.pendingStaticInitializers=[]),p.pendingStaticInitializers.push(r().createRunInitializersHelper(p.classThis??t.createThis(),Ge)))):(kt=Fe(p,!1,kt),Ge&&(p.pendingInstanceInitializers??(p.pendingInstanceInitializers=[]),p.pendingInstanceInitializers.push(r().createRunInitializersHelper(t.createThis(),Ge))))),U(),P_(L)&&ke){const bn=w_(L),Bn=qv(L),Hn=L.name;let Ni=Hn,Ai=Hn;if(Za(Hn)&&!Rh(Hn.expression)){const Ii=bF(Hn);if(Ii)Ni=t.updateComputedPropertyName(Hn,nt(Hn.expression,ne,yt)),Ai=t.updateComputedPropertyName(Hn,Ii.left);else{const Kr=t.createTempVariable(s);Pa(Kr,Hn.expression);const xo=nt(Hn.expression,ne,yt),Dn=t.createAssignment(Kr,xo);Pa(Dn,Hn.expression),Ni=t.updateComputedPropertyName(Hn,Dn),Ai=t.updateComputedPropertyName(Hn,Kr)}}const ir=Vn(_e,Ii=>Ii.kind!==129?Ii:void 0,xa),jr=tq(t,L,ir,kt);Cr(jr,L),pr(jr,3072),Pa(jr,Bn),Pa(jr.name,L.name);const vo=fn(ir,Ni,ke);Cr(vo,L),ac(vo,bn),Pa(vo,Bn);const Ci=_n(ir,Ai,ke);return Cr(Ci,L),pr(Ci,3072),Pa(Ci,Bn),[jr,vo,Ci]}return We(t.updatePropertyDeclaration(L,_e,J,void 0,void 0,kt),L)}function $e(L){return h??L}function It(L){if(zd(L.expression)&&h){const _e=nt(L.expression,ne,yt),J=Vn(L.arguments,ne,yt),me=t.createFunctionCallCall(_e,h,J);return Cr(me,L),dt(me,L),me}return In(L,ne,e)}function tn(L){if(zd(L.tag)&&h){const _e=nt(L.tag,ne,yt),J=t.createFunctionBindCall(_e,h,[]);Cr(J,L),dt(J,L);const me=nt(L.template,ne,LA);return t.updateTaggedTemplateExpression(L,J,void 0,me)}return In(L,ne,e)}function rn(L){if(zd(L)&&Ve(L.name)&&h&&m){const _e=t.createStringLiteralFromNode(L.name),J=t.createReflectGetCall(m,_e,h);return Cr(J,L.expression),dt(J,L.expression),J}return In(L,ne,e)}function Pn(L){if(zd(L)&&h&&m){const _e=nt(L.argumentExpression,ne,yt),J=t.createReflectGetCall(m,_e,h);return Cr(J,L.expression),dt(J,L.expression),J}return In(L,ne,e)}function Xn(L){hp(L,hn)&&(L=Sp(e,L,Qt(L.initializer)));const _e=t.updateParameterDeclaration(L,void 0,L.dotDotDotToken,nt(L.name,ne,vS),void 0,void 0,nt(L.initializer,ne,yt));return _e!==L&&(ac(_e,L),dt(_e,L_(L)),Pa(_e,L_(L)),pr(_e.name,64)),_e}function hn(L){return Zc(L)&&!L.name&&ve(L)}function Qt(L){const _e=$l(L);return Zc(_e)&&!_e.name&&!zv(!1,_e)}function $t(L){return t.updateForStatement(L,nt(L.initializer,Y,Af),nt(L.condition,ne,yt),nt(L.incrementor,Y,yt),Rd(L.statement,ne,e))}function _i(L){return In(L,Y,e)}function ao(L,_e){if(jv(L)){const J=kn(L.left),me=nt(L.right,ne,yt);return t.updateBinaryExpression(L,J,L.operatorToken,me)}if(Lc(L)){if(hp(L,hn))return L=Sp(e,L,Qt(L.right)),In(L,ne,e);if(zd(L.left)&&h&&m){let J=Qs(L.left)?nt(L.left.argumentExpression,ne,yt):Ve(L.left.name)?t.createStringLiteralFromNode(L.left.name):void 0;if(J){let me=nt(L.right,ne,yt);if(BP(L.operatorToken.kind)){let ke=J;Rh(J)||(ke=t.createTempVariable(s),J=t.createAssignment(ke,J));const Tt=t.createReflectGetCall(m,ke,h);Cr(Tt,L.left),dt(Tt,L.left),me=t.createBinaryExpression(Tt,GP(L.operatorToken.kind),me),dt(me,L)}const Ge=_e?void 0:t.createTempVariable(s);return Ge&&(me=t.createAssignment(Ge,me),dt(Ge,L)),me=t.createReflectSetCall(m,J,me,h),Cr(me,L),dt(me,L),Ge&&(me=t.createComma(me,Ge),dt(me,L)),me}}}if(L.operatorToken.kind===28){const J=nt(L.left,Y,yt),me=nt(L.right,_e?Y:ne,yt);return t.updateBinaryExpression(L,J,L.operatorToken,me)}return In(L,ne,e)}function Oi(L,_e){if(L.operator===46||L.operator===47){const J=hs(L.operand);if(zd(J)&&h&&m){let me=Qs(J)?nt(J.argumentExpression,ne,yt):Ve(J.name)?t.createStringLiteralFromNode(J.name):void 0;if(me){let Ge=me;Rh(me)||(Ge=t.createTempVariable(s),me=t.createAssignment(Ge,me));let ke=t.createReflectGetCall(m,Ge,h);Cr(ke,L),dt(ke,L);const Tt=_e?void 0:t.createTempVariable(s);return ke=fF(t,L,ke,s,Tt),ke=t.createReflectSetCall(m,me,ke,h),Cr(ke,L),dt(ke,L),Tt&&(ke=t.createComma(ke,Tt),dt(ke,L)),ke}}}return In(L,ne,e)}function No(L,_e){const J=_e?ZF(L.elements,Y):ZF(L.elements,ne,Y);return t.updateCommaListExpression(L,J)}function Mn(L){if(N_(L)||Ji(L)){const ke=t.createStringLiteralFromNode(L),Tt=nt(L,ne,oc);return{referencedName:ke,name:Tt}}if(N_(L.expression)&&!Ve(L.expression)){const ke=t.createStringLiteralFromNode(L.expression),Tt=nt(L,ne,oc);return{referencedName:ke,name:Tt}}const _e=t.getGeneratedNameForNode(L);s(_e);const J=r().createPropKeyHelper(nt(L.expression,ne,yt)),me=t.createAssignment(_e,J),Ge=t.updateComputedPropertyName(L,le(me));return{referencedName:_e,name:Ge}}function Di(L){return Za(L)?Ar(L):nt(L,ne,oc)}function Ar(L){let _e=nt(L.expression,ne,yt);return Rh(_e)||(_e=le(_e)),t.updateComputedPropertyName(L,_e)}function sn(L){return hp(L,hn)&&(L=Sp(e,L,Qt(L.initializer))),In(L,ne,e)}function tt(L){return hp(L,hn)&&(L=Sp(e,L,Qt(L.initializer))),In(L,ne,e)}function zt(L){return hp(L,hn)&&(L=Sp(e,L,Qt(L.initializer))),In(L,ne,e)}function Rn(L){if(Oa(L)||_d(L))return kn(L);if(zd(L)&&h&&m){const _e=Qs(L)?nt(L.argumentExpression,ne,yt):Ve(L.name)?t.createStringLiteralFromNode(L.name):void 0;if(_e){const J=t.createTempVariable(void 0),me=t.createAssignmentTargetWrapper(J,t.createReflectSetCall(m,_e,J,h));return Cr(me,L),dt(me,L),me}}return In(L,ne,e)}function li(L){if(Lc(L,!0)){hp(L,hn)&&(L=Sp(e,L,Qt(L.right)));const _e=Rn(L.left),J=nt(L.right,ne,yt);return t.updateBinaryExpression(L,_e,L.operatorToken,J)}else return Rn(L)}function hi(L){if(ep(L.expression)){const _e=Rn(L.expression);return t.updateSpreadElement(L,_e)}return In(L,ne,e)}function Qi(L){return N.assertNode(L,bL),e_(L)?hi(L):jc(L)?In(L,ne,e):li(L)}function Io(L){const _e=nt(L.name,ne,oc);if(Lc(L.initializer,!0)){const J=li(L.initializer);return t.updatePropertyAssignment(L,_e,J)}if(ep(L.initializer)){const J=Rn(L.initializer);return t.updatePropertyAssignment(L,_e,J)}return In(L,ne,e)}function ma(L){return hp(L,hn)&&(L=Sp(e,L,Qt(L.objectAssignmentInitializer))),In(L,ne,e)}function Wa(L){if(ep(L.expression)){const _e=Rn(L.expression);return t.updateSpreadAssignment(L,_e)}return In(L,ne,e)}function Sn(L){return N.assertNode(L,yL),Xv(L)?Wa(L):rp(L)?ma(L):hc(L)?Io(L):In(L,ne,e)}function kn(L){if(_d(L)){const _e=Vn(L.elements,Qi,yt);return t.updateArrayLiteralExpression(L,_e)}else{const _e=Vn(L.properties,Sn,Wg);return t.updateObjectLiteralExpression(L,_e)}}function qe(L){return hp(L,hn)&&(L=Sp(e,L,Qt(L.expression))),In(L,ne,e)}function mt(L,_e){const J=_e?Y:ne,me=nt(L.expression,J,yt);return t.updateParenthesizedExpression(L,me)}function ft(L,_e){const J=ne,me=nt(L.expression,J,yt);return t.updatePartiallyEmittedExpression(L,me)}function Ct(L,_e){return bt(L)&&(_e?Gd(_e)?(L.push(_e.expression),_e=t.updateParenthesizedExpression(_e,t.inlineExpressions(L))):(L.push(_e),_e=t.inlineExpressions(L)):_e=t.inlineExpressions(L)),_e}function le(L){const _e=Ct(b,L);return N.assertIsDefined(_e),_e!==L&&(b=void 0),_e}function Fe(L,_e,J){const me=Ct(_e?L.pendingStaticInitializers:L.pendingInstanceInitializers,J);return me!==J&&(_e?L.pendingStaticInitializers=void 0:L.pendingInstanceInitializers=void 0),me}function pt(L){if(!L)return;const _e=[];return Jr(_e,wt(L.decorators,j)),_e}function j(L){const _e=nt(L.expression,ne,yt);pr(_e,3072);const J=$l(_e);if(ws(J)){const{target:me,thisArg:Ge}=t.createCallBinding(_e,s,l,!0);return t.restoreOuterExpressions(_e,t.createFunctionBindCall(me,Ge,[]))}return _e}function ot(L,_e,J,me,Ge,ke,Tt){const kt=t.createFunctionExpression(J,me,void 0,void 0,ke,void 0,Tt??t.createBlock([]));Cr(kt,L),Pa(kt,Gg(L)),pr(kt,3072);const en=Ge==="get"||Ge==="set"?Ge:void 0,bn=t.createStringLiteralFromNode(_e,void 0),Bn=r().createSetFunctionNameHelper(kt,bn,en),Hn=t.createPropertyAssignment(t.createIdentifier(Ge),Bn);return Cr(Hn,L),Pa(Hn,Gg(L)),pr(Hn,3072),Hn}function Rt(L,_e){return t.createObjectLiteralExpression([ot(L,L.name,_e,L.asteriskToken,"value",Vn(L.parameters,ne,Ao),nt(L.body,ne,Xo))])}function Ye(L,_e){return t.createObjectLiteralExpression([ot(L,L.name,_e,void 0,"get",[],nt(L.body,ne,Xo))])}function _t(L,_e){return t.createObjectLiteralExpression([ot(L,L.name,_e,void 0,"set",Vn(L.parameters,ne,Ao),nt(L.body,ne,Xo))])}function Vt(L,_e){return t.createObjectLiteralExpression([ot(L,L.name,_e,void 0,"get",[],t.createBlock([t.createReturnStatement(t.createPropertyAccessExpression(t.createThis(),t.getGeneratedPrivateNameForNode(L.name)))])),ot(L,L.name,_e,void 0,"set",[t.createParameterDeclaration(void 0,void 0,"value")],t.createBlock([t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createThis(),t.getGeneratedPrivateNameForNode(L.name)),t.createIdentifier("value")))]))])}function vn(L,_e,J){return L=Vn(L,me=>aI(me)?me:void 0,xa),t.createGetAccessorDeclaration(L,_e,[],void 0,t.createBlock([t.createReturnStatement(t.createPropertyAccessExpression(J,t.createIdentifier("value")))]))}function fn(L,_e,J){return L=Vn(L,me=>aI(me)?me:void 0,xa),t.createGetAccessorDeclaration(L,_e,[],void 0,t.createBlock([t.createReturnStatement(t.createFunctionCallCall(t.createPropertyAccessExpression(J,t.createIdentifier("get")),t.createThis(),[]))]))}function _n(L,_e,J){return L=Vn(L,me=>aI(me)?me:void 0,xa),t.createSetAccessorDeclaration(L,_e,[t.createParameterDeclaration(void 0,void 0,"value")],t.createBlock([t.createReturnStatement(t.createFunctionCallCall(t.createPropertyAccessExpression(J,t.createIdentifier("set")),t.createThis(),[t.createIdentifier("value")]))]))}function q(L,_e){const J=t.createVariableDeclaration(L,void 0,void 0,t.createConditionalExpression(t.createLogicalAnd(t.createTypeCheck(t.createIdentifier("Symbol"),"function"),t.createPropertyAccessExpression(t.createIdentifier("Symbol"),"metadata")),t.createToken(58),t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"create"),void 0,[_e?Lt(_e):t.createNull()]),t.createToken(59),t.createVoidZero()));return t.createVariableStatement(void 0,t.createVariableDeclarationList([J],2))}function Oe(L,_e){const J=t.createObjectDefinePropertyCall(L,t.createPropertyAccessExpression(t.createIdentifier("Symbol"),"metadata"),t.createPropertyDescriptor({configurable:!0,writable:!0,enumerable:!0,value:_e},!0));return pr(t.createIfStatement(_e,t.createExpressionStatement(J)),1)}function Lt(L){return t.createBinaryExpression(t.createElementAccessExpression(L,t.createPropertyAccessExpression(t.createIdentifier("Symbol"),"metadata")),61,t.createNull())}}var BUe=T({"src/compiler/transformers/esDecorators.ts"(){ra()}});function qle(e){const{factory:t,getEmitHelperFactory:r,resumeLexicalEnvironment:i,endLexicalEnvironment:o,hoistVariableDeclaration:s}=e,l=e.getEmitResolver(),u=e.getCompilerOptions(),p=os(u);let h,m=0,b,A,I,R;const M=[];let C=0;const O=e.onEmitNode,U=e.onSubstituteNode;return e.onEmitNode=_i,e.onSubstituteNode=ao,Pm(e,K);function K(tt){if(tt.isDeclarationFile)return tt;Z(1,!1),Z(2,!Rj(tt,u));const zt=In(tt,$,e);return Ug(zt,e.readEmitHelpers()),zt}function Z(tt,zt){C=zt?C|tt:C&~tt}function V(tt){return(C&tt)!==0}function se(){return!V(1)}function G(){return V(2)}function ne(tt,zt,Rn){const li=tt&~C;if(li){Z(li,!0);const hi=zt(Rn);return Z(li,!1),hi}return zt(Rn)}function he(tt){return In(tt,$,e)}function ye(tt){switch(tt.kind){case 218:case 262:case 174:case 177:case 178:case 176:return tt;case 169:case 208:case 260:break;case 80:if(R&&l.isArgumentsLocalBinding(tt))return R;break}return In(tt,ye,e)}function $(tt){if(!(tt.transformFlags&256))return R?ye(tt):tt;switch(tt.kind){case 134:return;case 223:return ve(tt);case 174:return ne(3,He,tt);case 262:return ne(3,Pe,tt);case 218:return ne(3,We,tt);case 219:return ne(1,At,tt);case 211:return A&&Fr(tt)&&tt.expression.kind===108&&A.add(tt.name.escapedText),In(tt,$,e);case 212:return A&&tt.expression.kind===108&&(I=!0),In(tt,$,e);case 177:return ne(3,Ee,tt);case 178:return ne(3,De,tt);case 176:return ne(3,Le,tt);case 263:case 231:return ne(3,he,tt);default:return In(tt,$,e)}}function Y(tt){if(qie(tt))switch(tt.kind){case 243:return fe(tt);case 248:return ie(tt);case 249:return Ne(tt);case 250:return pe(tt);case 299:return oe(tt);case 241:case 255:case 269:case 296:case 297:case 258:case 246:case 247:case 245:case 254:case 256:return In(tt,Y,e);default:return N.assertNever(tt,"Unhandled node.")}return $(tt)}function oe(tt){const zt=new Set;Se(tt.variableDeclaration,zt);let Rn;if(zt.forEach((li,hi)=>{b.has(hi)&&(Rn||(Rn=new Set(b)),Rn.delete(hi))}),Rn){const li=b;b=Rn;const hi=In(tt,Y,e);return b=li,hi}else return In(tt,Y,e)}function fe(tt){if(je(tt.declarationList)){const zt=at(tt.declarationList,!1);return zt?t.createExpressionStatement(zt):void 0}return In(tt,$,e)}function Ne(tt){return t.updateForInStatement(tt,je(tt.initializer)?at(tt.initializer,!0):N.checkDefined(nt(tt.initializer,$,Af)),N.checkDefined(nt(tt.expression,$,yt)),Rd(tt.statement,Y,e))}function pe(tt){return t.updateForOfStatement(tt,nt(tt.awaitModifier,$,NH),je(tt.initializer)?at(tt.initializer,!0):N.checkDefined(nt(tt.initializer,$,Af)),N.checkDefined(nt(tt.expression,$,yt)),Rd(tt.statement,Y,e))}function ie(tt){const zt=tt.initializer;return t.updateForStatement(tt,je(zt)?at(zt,!1):nt(tt.initializer,$,Af),nt(tt.condition,$,yt),nt(tt.incrementor,$,yt),Rd(tt.statement,Y,e))}function ve(tt){return se()?In(tt,$,e):Cr(dt(t.createYieldExpression(void 0,nt(tt.expression,$,yt)),tt),tt)}function Le(tt){const zt=R;R=void 0;const Rn=t.updateConstructorDeclaration(tt,Vn(tt.modifiers,$,xa),Dl(tt.parameters,$,e),tn(tt));return R=zt,Rn}function He(tt){let zt;const Rn=Vc(tt),li=R;R=void 0;const hi=t.updateMethodDeclaration(tt,Vn(tt.modifiers,$,ll),tt.asteriskToken,tt.name,void 0,void 0,zt=Rn&2?Pn(tt):Dl(tt.parameters,$,e),void 0,Rn&2?Xn(tt,zt):tn(tt));return R=li,hi}function Ee(tt){const zt=R;R=void 0;const Rn=t.updateGetAccessorDeclaration(tt,Vn(tt.modifiers,$,ll),tt.name,Dl(tt.parameters,$,e),void 0,tn(tt));return R=zt,Rn}function De(tt){const zt=R;R=void 0;const Rn=t.updateSetAccessorDeclaration(tt,Vn(tt.modifiers,$,ll),tt.name,Dl(tt.parameters,$,e),tn(tt));return R=zt,Rn}function Pe(tt){let zt;const Rn=R;R=void 0;const li=Vc(tt),hi=t.updateFunctionDeclaration(tt,Vn(tt.modifiers,$,ll),tt.asteriskToken,tt.name,void 0,zt=li&2?Pn(tt):Dl(tt.parameters,$,e),void 0,li&2?Xn(tt,zt):lf(tt.body,$,e));return R=Rn,hi}function We(tt){let zt;const Rn=R;R=void 0;const li=Vc(tt),hi=t.updateFunctionExpression(tt,Vn(tt.modifiers,$,xa),tt.asteriskToken,tt.name,void 0,zt=li&2?Pn(tt):Dl(tt.parameters,$,e),void 0,li&2?Xn(tt,zt):lf(tt.body,$,e));return R=Rn,hi}function At(tt){let zt;const Rn=Vc(tt);return t.updateArrowFunction(tt,Vn(tt.modifiers,$,xa),void 0,zt=Rn&2?Pn(tt):Dl(tt.parameters,$,e),void 0,tt.equalsGreaterThanToken,Rn&2?Xn(tt,zt):lf(tt.body,$,e))}function Se({name:tt},zt){if(Ve(tt))zt.add(tt.escapedText);else for(const Rn of tt.elements)jc(Rn)||Se(Rn,zt)}function je(tt){return!!tt&&Uc(tt)&&!(tt.flags&7)&&tt.declarations.some(It)}function at(tt,zt){Gt(tt);const Rn=HC(tt);return Rn.length===0?zt?nt(t.converters.convertToAssignmentElementTarget(tt.declarations[0].name),$,yt):void 0:t.inlineExpressions(wt(Rn,$e))}function Gt(tt){Ue(tt.declarations,vt)}function vt({name:tt}){if(Ve(tt))s(tt);else for(const zt of tt.elements)jc(zt)||vt(zt)}function $e(tt){const zt=Pa(t.createAssignment(t.converters.convertToAssignmentElementTarget(tt.name),tt.initializer),tt);return N.checkDefined(nt(zt,$,yt))}function It({name:tt}){if(Ve(tt))return b.has(tt.escapedText);for(const zt of tt.elements)if(!jc(zt)&&It(zt))return!0;return!1}function tn(tt){N.assertIsDefined(tt.body);const zt=A,Rn=I;A=new Set,I=!1;let li=lf(tt.body,$,e);const hi=Pl(tt,Bs);if(p>=2&&l.getNodeCheckFlags(tt)&384&&(Vc(hi)&3)!==3){if($t(),A.size){const Io=u7(t,l,tt,A);M[as(Io)]=!0;const ma=li.statements.slice();eg(ma,[Io]),li=t.updateBlock(li,ma)}I&&(l.getNodeCheckFlags(tt)&256?eI(li,Uk):l.getNodeCheckFlags(tt)&128&&eI(li,jk))}return A=zt,I=Rn,li}function rn(){N.assert(R);const tt=t.createVariableDeclaration(R,void 0,void 0,t.createIdentifier("arguments")),zt=t.createVariableStatement(void 0,[tt]);return Xu(zt),k_(zt,2097152),zt}function Pn(tt){if(Ow(tt.parameters))return Dl(tt.parameters,$,e);const zt=[];for(const li of tt.parameters){if(li.initializer||li.dotDotDotToken){if(tt.kind===219){const Qi=t.createParameterDeclaration(void 0,t.createToken(26),t.createUniqueName("args",8));zt.push(Qi)}break}const hi=t.createParameterDeclaration(void 0,void 0,t.getGeneratedNameForNode(li.name,8));zt.push(hi)}const Rn=t.createNodeArray(zt);return dt(Rn,tt.parameters),Rn}function Xn(tt,zt){const Rn=Ow(tt.parameters)?void 0:Dl(tt.parameters,$,e);i();const hi=Pl(tt,ea).type,Qi=p<2?Qt(hi):void 0,Io=tt.kind===219,ma=R,Sn=(l.getNodeCheckFlags(tt)&512)!==0&&!R;Sn&&(R=t.createUniqueName("arguments"));let kn;if(Rn)if(Io){const pt=[];N.assert(zt.length<=tt.parameters.length);for(let j=0;j<tt.parameters.length;j++){N.assert(j<zt.length);const ot=tt.parameters[j],Rt=zt[j];if(N.assertNode(Rt.name,Ve),ot.initializer||ot.dotDotDotToken){N.assert(j===zt.length-1),pt.push(t.createSpreadElement(Rt.name));break}pt.push(Rt.name)}kn=t.createArrayLiteralExpression(pt)}else kn=t.createIdentifier("arguments");const qe=b;b=new Set;for(const pt of tt.parameters)Se(pt,b);const mt=A,ft=I;Io||(A=new Set,I=!1);const Ct=G();let le=hn(tt.body);le=t.updateBlock(le,t.mergeLexicalEnvironment(le.statements,o()));let Fe;if(Io){if(Fe=r().createAwaiterHelper(Ct,kn,Qi,Rn,le),Sn){const pt=t.converters.convertToFunctionBlock(Fe);Fe=t.updateBlock(pt,t.mergeLexicalEnvironment(pt.statements,[rn()]))}}else{const pt=[];pt.push(t.createReturnStatement(r().createAwaiterHelper(Ct,kn,Qi,Rn,le)));const j=p>=2&&l.getNodeCheckFlags(tt)&384;if(j&&($t(),A.size)){const Rt=u7(t,l,tt,A);M[as(Rt)]=!0,eg(pt,[Rt])}Sn&&eg(pt,[rn()]);const ot=t.createBlock(pt,!0);dt(ot,tt.body),j&&I&&(l.getNodeCheckFlags(tt)&256?eI(ot,Uk):l.getNodeCheckFlags(tt)&128&&eI(ot,jk)),Fe=ot}return b=qe,Io||(A=mt,I=ft,R=ma),Fe}function hn(tt,zt){return Xo(tt)?t.updateBlock(tt,Vn(tt.statements,Y,qi,zt)):t.converters.convertToFunctionBlock(N.checkDefined(nt(tt,Y,P4)))}function Qt(tt){const zt=tt&&zL(tt);if(zt&&Zd(zt)){const Rn=l.getTypeReferenceSerializationKind(zt);if(Rn===1||Rn===0)return zt}}function $t(){h&1||(h|=1,e.enableSubstitution(213),e.enableSubstitution(211),e.enableSubstitution(212),e.enableEmitNotification(263),e.enableEmitNotification(174),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(176),e.enableEmitNotification(243))}function _i(tt,zt,Rn){if(h&1&&Ar(zt)){const li=l.getNodeCheckFlags(zt)&384;if(li!==m){const hi=m;m=li,O(tt,zt,Rn),m=hi;return}}else if(h&&M[as(zt)]){const li=m;m=0,O(tt,zt,Rn),m=li;return}O(tt,zt,Rn)}function ao(tt,zt){return zt=U(tt,zt),tt===1&&m?Oi(zt):zt}function Oi(tt){switch(tt.kind){case 211:return No(tt);case 212:return Mn(tt);case 213:return Di(tt)}return tt}function No(tt){return tt.expression.kind===108?dt(t.createPropertyAccessExpression(t.createUniqueName("_super",48),tt.name),tt):tt}function Mn(tt){return tt.expression.kind===108?sn(tt.argumentExpression,tt):tt}function Di(tt){const zt=tt.expression;if(zd(zt)){const Rn=Fr(zt)?No(zt):Mn(zt);return t.createCallExpression(t.createPropertyAccessExpression(Rn,"call"),void 0,[t.createThis(),...tt.arguments])}return tt}function Ar(tt){const zt=tt.kind;return zt===263||zt===176||zt===174||zt===177||zt===178}function sn(tt,zt){return m&256?dt(t.createPropertyAccessExpression(t.createCallExpression(t.createUniqueName("_superIndex",48),void 0,[tt]),"value"),zt):dt(t.createCallExpression(t.createUniqueName("_superIndex",48),void 0,[tt]),zt)}}function u7(e,t,r,i){const o=(t.getNodeCheckFlags(r)&256)!==0,s=[];return i.forEach((l,u)=>{const p=Vi(u),h=[];h.push(e.createPropertyAssignment("get",e.createArrowFunction(void 0,void 0,[],void 0,void 0,pr(e.createPropertyAccessExpression(pr(e.createSuper(),8),p),8)))),o&&h.push(e.createPropertyAssignment("set",e.createArrowFunction(void 0,void 0,[e.createParameterDeclaration(void 0,void 0,"v",void 0,void 0,void 0)],void 0,void 0,e.createAssignment(pr(e.createPropertyAccessExpression(pr(e.createSuper(),8),p),8),e.createIdentifier("v"))))),s.push(e.createPropertyAssignment(p,e.createObjectLiteralExpression(h)))}),e.createVariableStatement(void 0,e.createVariableDeclarationList([e.createVariableDeclaration(e.createUniqueName("_super",48),void 0,void 0,e.createCallExpression(e.createPropertyAccessExpression(e.createIdentifier("Object"),"create"),void 0,[e.createNull(),e.createObjectLiteralExpression(s,!0)]))],2))}var GUe=T({"src/compiler/transformers/es2017.ts"(){ra()}});function Jle(e){const{factory:t,getEmitHelperFactory:r,resumeLexicalEnvironment:i,endLexicalEnvironment:o,hoistVariableDeclaration:s}=e,l=e.getEmitResolver(),u=e.getCompilerOptions(),p=os(u),h=e.onEmitNode;e.onEmitNode=ma;const m=e.onSubstituteNode;e.onSubstituteNode=Wa;let b=!1,A,I,R,M=0,C=0,O,U,K,Z;const V=[];return Pm(e,ye);function se(le,Fe){return C!==(C&~le|Fe)}function G(le,Fe){const pt=C;return C=(C&~le|Fe)&3,pt}function ne(le){C=le}function he(le){U=xn(U,t.createVariableDeclaration(le))}function ye(le){if(le.isDeclarationFile)return le;O=le;const Fe=At(le);return Ug(Fe,e.readEmitHelpers()),O=void 0,U=void 0,Fe}function $(le){return pe(le,!1)}function Y(le){return pe(le,!0)}function oe(le){if(le.kind!==134)return le}function fe(le,Fe,pt,j){if(se(pt,j)){const ot=G(pt,j),Rt=le(Fe);return ne(ot),Rt}return le(Fe)}function Ne(le){return In(le,$,e)}function pe(le,Fe){if(!(le.transformFlags&128))return le;switch(le.kind){case 223:return ie(le);case 229:return ve(le);case 253:return Le(le);case 256:return He(le);case 210:return De(le);case 226:return je(le,Fe);case 361:return at(le,Fe);case 299:return Gt(le);case 243:return vt(le);case 260:return $e(le);case 246:case 247:case 249:return fe(Ne,le,0,2);case 250:return Pn(le,void 0);case 248:return fe(tn,le,0,2);case 222:return rn(le);case 176:return fe(No,le,2,1);case 174:return fe(Ar,le,2,1);case 177:return fe(Mn,le,2,1);case 178:return fe(Di,le,2,1);case 262:return fe(sn,le,2,1);case 218:return fe(zt,le,2,1);case 219:return fe(tt,le,2,0);case 169:return ao(le);case 244:return Pe(le);case 217:return We(le,Fe);case 215:return Se(le);case 211:return K&&Fr(le)&&le.expression.kind===108&&K.add(le.name.escapedText),In(le,$,e);case 212:return K&&le.expression.kind===108&&(Z=!0),In(le,$,e);case 263:case 231:return fe(Ne,le,2,1);default:return In(le,$,e)}}function ie(le){return I&2&&I&1?Cr(dt(t.createYieldExpression(void 0,r().createAwaitHelper(nt(le.expression,$,yt))),le),le):In(le,$,e)}function ve(le){if(I&2&&I&1){if(le.asteriskToken){const Fe=nt(N.checkDefined(le.expression),$,yt);return Cr(dt(t.createYieldExpression(void 0,r().createAwaitHelper(t.updateYieldExpression(le,le.asteriskToken,dt(r().createAsyncDelegatorHelper(dt(r().createAsyncValuesHelper(Fe),Fe)),Fe)))),le),le)}return Cr(dt(t.createYieldExpression(void 0,Qt(le.expression?nt(le.expression,$,yt):t.createVoidZero())),le),le)}return In(le,$,e)}function Le(le){return I&2&&I&1?t.updateReturnStatement(le,Qt(le.expression?nt(le.expression,$,yt):t.createVoidZero())):In(le,$,e)}function He(le){if(I&2){const Fe=Wj(le);return Fe.kind===250&&Fe.awaitModifier?Pn(Fe,le):t.restoreEnclosingLabel(nt(Fe,$,qi,t.liftToBlock),le)}return In(le,$,e)}function Ee(le){let Fe;const pt=[];for(const j of le)if(j.kind===305){Fe&&(pt.push(t.createObjectLiteralExpression(Fe)),Fe=void 0);const ot=j.expression;pt.push(nt(ot,$,yt))}else Fe=xn(Fe,j.kind===303?t.createPropertyAssignment(j.name,nt(j.initializer,$,yt)):nt(j,$,Wg));return Fe&&pt.push(t.createObjectLiteralExpression(Fe)),pt}function De(le){if(le.transformFlags&65536){const Fe=Ee(le.properties);Fe.length&&Fe[0].kind!==210&&Fe.unshift(t.createObjectLiteralExpression());let pt=Fe[0];if(Fe.length>1){for(let j=1;j<Fe.length;j++)pt=r().createAssignHelper([pt,Fe[j]]);return pt}else return r().createAssignHelper(Fe)}return In(le,$,e)}function Pe(le){return In(le,Y,e)}function We(le,Fe){return In(le,Fe?Y:$,e)}function At(le){const Fe=G(2,Rj(le,u)?0:1);b=!1;const pt=In(le,$,e),j=So(pt.statements,U&&[t.createVariableStatement(void 0,t.createVariableDeclarationList(U))]),ot=t.updateSourceFile(pt,dt(t.createNodeArray(j),le.statements));return ne(Fe),ot}function Se(le){return fJ(e,le,$,O,he,0)}function je(le,Fe){return jv(le)&&cw(le.left)?tT(le,$,e,1,!Fe):le.operatorToken.kind===28?t.updateBinaryExpression(le,nt(le.left,Y,yt),le.operatorToken,nt(le.right,Fe?Y:$,yt)):In(le,$,e)}function at(le,Fe){if(Fe)return In(le,Y,e);let pt;for(let ot=0;ot<le.elements.length;ot++){const Rt=le.elements[ot],Ye=nt(Rt,ot<le.elements.length-1?Y:$,yt);(pt||Ye!==Rt)&&(pt||(pt=le.elements.slice(0,ot)),pt.push(Ye))}const j=pt?dt(t.createNodeArray(pt),le.elements):le.elements;return t.updateCommaListExpression(le,j)}function Gt(le){if(le.variableDeclaration&&ta(le.variableDeclaration.name)&&le.variableDeclaration.name.transformFlags&65536){const Fe=t.getGeneratedNameForNode(le.variableDeclaration.name),pt=t.updateVariableDeclaration(le.variableDeclaration,le.variableDeclaration.name,void 0,void 0,Fe),j=h1(pt,$,e,1);let ot=nt(le.block,$,Xo);return bt(j)&&(ot=t.updateBlock(ot,[t.createVariableStatement(void 0,j),...ot.statements])),t.updateCatchClause(le,t.updateVariableDeclaration(le.variableDeclaration,Fe,void 0,void 0,void 0),ot)}return In(le,$,e)}function vt(le){if(Zr(le,32)){const Fe=b;b=!0;const pt=In(le,$,e);return b=Fe,pt}return In(le,$,e)}function $e(le){if(b){const Fe=b;b=!1;const pt=It(le,!0);return b=Fe,pt}return It(le,!1)}function It(le,Fe){return ta(le.name)&&le.name.transformFlags&65536?h1(le,$,e,1,void 0,Fe):In(le,$,e)}function tn(le){return t.updateForStatement(le,nt(le.initializer,Y,Af),nt(le.condition,$,yt),nt(le.incrementor,Y,yt),Rd(le.statement,$,e))}function rn(le){return In(le,Y,e)}function Pn(le,Fe){const pt=G(0,2);(le.initializer.transformFlags&65536||gC(le.initializer)&&cw(le.initializer))&&(le=Xn(le));const j=le.awaitModifier?$t(le,Fe,pt):t.restoreEnclosingLabel(In(le,$,e),Fe);return ne(pt),j}function Xn(le){const Fe=hs(le.initializer);if(Uc(Fe)||gC(Fe)){let pt,j;const ot=t.createTempVariable(void 0),Rt=[qH(t,Fe,ot)];return Xo(le.statement)?(Jr(Rt,le.statement.statements),pt=le.statement,j=le.statement.statements):le.statement&&(xn(Rt,le.statement),pt=le.statement,j=le.statement),t.updateForOfStatement(le,le.awaitModifier,dt(t.createVariableDeclarationList([dt(t.createVariableDeclaration(ot),le.initializer)],1),le.initializer),le.expression,dt(t.createBlock(dt(t.createNodeArray(Rt),j),!0),pt))}return le}function hn(le,Fe,pt){const j=t.createTempVariable(s),ot=t.createAssignment(j,Fe),Rt=t.createExpressionStatement(ot);Pa(Rt,le.expression);const Ye=t.createAssignment(pt,t.createFalse()),_t=t.createExpressionStatement(Ye);Pa(_t,le.expression);const Vt=[Rt,_t],vn=qH(t,le.initializer,j);Vt.push(nt(vn,$,qi));let fn,_n;const q=Rd(le.statement,$,e);return Xo(q)?(Jr(Vt,q.statements),fn=q,_n=q.statements):Vt.push(q),dt(t.createBlock(dt(t.createNodeArray(Vt),_n),!0),fn)}function Qt(le){return I&1?t.createYieldExpression(void 0,r().createAwaitHelper(le)):t.createAwaitExpression(le)}function $t(le,Fe,pt){const j=nt(le.expression,$,yt),ot=Ve(j)?t.getGeneratedNameForNode(j):t.createTempVariable(void 0),Rt=Ve(j)?t.getGeneratedNameForNode(ot):t.createTempVariable(void 0),Ye=t.createTempVariable(void 0),_t=t.createTempVariable(s),Vt=t.createUniqueName("e"),vn=t.getGeneratedNameForNode(Vt),fn=t.createTempVariable(void 0),_n=dt(r().createAsyncValuesHelper(j),le.expression),q=t.createCallExpression(t.createPropertyAccessExpression(ot,"next"),void 0,[]),Oe=t.createPropertyAccessExpression(Rt,"done"),Lt=t.createPropertyAccessExpression(Rt,"value"),L=t.createFunctionCallCall(fn,ot,[]);s(Vt),s(fn);const _e=pt&2?t.inlineExpressions([t.createAssignment(Vt,t.createVoidZero()),_n]):_n,J=pr(dt(t.createForStatement(pr(dt(t.createVariableDeclarationList([t.createVariableDeclaration(Ye,void 0,void 0,t.createTrue()),dt(t.createVariableDeclaration(ot,void 0,void 0,_e),le.expression),t.createVariableDeclaration(Rt)]),le.expression),4194304),t.inlineExpressions([t.createAssignment(Rt,Qt(q)),t.createAssignment(_t,Oe),t.createLogicalNot(_t)]),t.createAssignment(Ye,t.createTrue()),hn(le,Lt,Ye)),le),512);return Cr(J,le),t.createTryStatement(t.createBlock([t.restoreEnclosingLabel(J,Fe)]),t.createCatchClause(t.createVariableDeclaration(vn),pr(t.createBlock([t.createExpressionStatement(t.createAssignment(Vt,t.createObjectLiteralExpression([t.createPropertyAssignment("error",vn)])))]),1)),t.createBlock([t.createTryStatement(t.createBlock([pr(t.createIfStatement(t.createLogicalAnd(t.createLogicalAnd(t.createLogicalNot(Ye),t.createLogicalNot(_t)),t.createAssignment(fn,t.createPropertyAccessExpression(ot,"return"))),t.createExpressionStatement(Qt(L))),1)]),void 0,pr(t.createBlock([pr(t.createIfStatement(Vt,t.createThrowStatement(t.createPropertyAccessExpression(Vt,"error"))),1)]),1))]))}function _i(le){return N.assertNode(le,Ao),ao(le)}function ao(le){return R!=null&&R.has(le)?t.updateParameterDeclaration(le,void 0,le.dotDotDotToken,ta(le.name)?t.getGeneratedNameForNode(le):le.name,void 0,void 0,void 0):le.transformFlags&65536?t.updateParameterDeclaration(le,void 0,le.dotDotDotToken,t.getGeneratedNameForNode(le),void 0,void 0,nt(le.initializer,$,yt)):In(le,$,e)}function Oi(le){let Fe;for(const pt of le.parameters)Fe?Fe.add(pt):pt.transformFlags&65536&&(Fe=new Set);return Fe}function No(le){const Fe=I,pt=R;I=Vc(le),R=Oi(le);const j=t.updateConstructorDeclaration(le,le.modifiers,Dl(le.parameters,_i,e),hi(le));return I=Fe,R=pt,j}function Mn(le){const Fe=I,pt=R;I=Vc(le),R=Oi(le);const j=t.updateGetAccessorDeclaration(le,le.modifiers,nt(le.name,$,oc),Dl(le.parameters,_i,e),void 0,hi(le));return I=Fe,R=pt,j}function Di(le){const Fe=I,pt=R;I=Vc(le),R=Oi(le);const j=t.updateSetAccessorDeclaration(le,le.modifiers,nt(le.name,$,oc),Dl(le.parameters,_i,e),hi(le));return I=Fe,R=pt,j}function Ar(le){const Fe=I,pt=R;I=Vc(le),R=Oi(le);const j=t.updateMethodDeclaration(le,I&1?Vn(le.modifiers,oe,ll):le.modifiers,I&2?void 0:le.asteriskToken,nt(le.name,$,oc),nt(void 0,$,$y),void 0,I&2&&I&1?Rn(le):Dl(le.parameters,_i,e),void 0,I&2&&I&1?li(le):hi(le));return I=Fe,R=pt,j}function sn(le){const Fe=I,pt=R;I=Vc(le),R=Oi(le);const j=t.updateFunctionDeclaration(le,I&1?Vn(le.modifiers,oe,xa):le.modifiers,I&2?void 0:le.asteriskToken,le.name,void 0,I&2&&I&1?Rn(le):Dl(le.parameters,_i,e),void 0,I&2&&I&1?li(le):hi(le));return I=Fe,R=pt,j}function tt(le){const Fe=I,pt=R;I=Vc(le),R=Oi(le);const j=t.updateArrowFunction(le,le.modifiers,void 0,Dl(le.parameters,_i,e),void 0,le.equalsGreaterThanToken,hi(le));return I=Fe,R=pt,j}function zt(le){const Fe=I,pt=R;I=Vc(le),R=Oi(le);const j=t.updateFunctionExpression(le,I&1?Vn(le.modifiers,oe,xa):le.modifiers,I&2?void 0:le.asteriskToken,le.name,void 0,I&2&&I&1?Rn(le):Dl(le.parameters,_i,e),void 0,I&2&&I&1?li(le):hi(le));return I=Fe,R=pt,j}function Rn(le){if(Ow(le.parameters))return Dl(le.parameters,$,e);const Fe=[];for(const j of le.parameters){if(j.initializer||j.dotDotDotToken)break;const ot=t.createParameterDeclaration(void 0,void 0,t.getGeneratedNameForNode(j.name,8));Fe.push(ot)}const pt=t.createNodeArray(Fe);return dt(pt,le.parameters),pt}function li(le){const Fe=Ow(le.parameters)?void 0:Dl(le.parameters,$,e);i();const pt=K,j=Z;K=new Set,Z=!1;const ot=[];let Rt=t.updateBlock(le.body,Vn(le.body.statements,$,qi));Rt=t.updateBlock(Rt,t.mergeLexicalEnvironment(Rt.statements,Qi(o(),le)));const Ye=t.createReturnStatement(r().createAsyncGeneratorHelper(t.createFunctionExpression(void 0,t.createToken(42),le.name&&t.getGeneratedNameForNode(le.name),void 0,Fe??[],void 0,Rt),!!(C&1))),_t=p>=2&&l.getNodeCheckFlags(le)&384;if(_t){Io();const vn=u7(t,l,le,K);V[as(vn)]=!0,eg(ot,[vn])}ot.push(Ye);const Vt=t.updateBlock(le.body,ot);return _t&&Z&&(l.getNodeCheckFlags(le)&256?eI(Vt,Uk):l.getNodeCheckFlags(le)&128&&eI(Vt,jk)),K=pt,Z=j,Vt}function hi(le){i();let Fe=0;const pt=[],j=nt(le.body,$,P4)??t.createBlock([]);Xo(j)&&(Fe=t.copyPrologue(j.statements,pt,!1,$)),Jr(pt,Qi(void 0,le));const ot=o();if(Fe>0||bt(pt)||bt(ot)){const Rt=t.converters.convertToFunctionBlock(j,!0);return eg(pt,ot),Jr(pt,Rt.statements.slice(Fe)),t.updateBlock(Rt,dt(t.createNodeArray(pt),Rt.statements))}return j}function Qi(le,Fe){let pt=!1;for(const j of Fe.parameters)if(pt){if(ta(j.name)){if(j.name.elements.length>0){const ot=h1(j,$,e,0,t.getGeneratedNameForNode(j));if(bt(ot)){const Rt=t.createVariableDeclarationList(ot),Ye=t.createVariableStatement(void 0,Rt);pr(Ye,2097152),le=xn(le,Ye)}}else if(j.initializer){const ot=t.getGeneratedNameForNode(j),Rt=nt(j.initializer,$,yt),Ye=t.createAssignment(ot,Rt),_t=t.createExpressionStatement(Ye);pr(_t,2097152),le=xn(le,_t)}}else if(j.initializer){const ot=t.cloneNode(j.name);dt(ot,j.name),pr(ot,96);const Rt=nt(j.initializer,$,yt);k_(Rt,3168);const Ye=t.createAssignment(ot,Rt);dt(Ye,j),pr(Ye,3072);const _t=t.createBlock([t.createExpressionStatement(Ye)]);dt(_t,j),pr(_t,3905);const Vt=t.createTypeCheck(t.cloneNode(j.name),"undefined"),vn=t.createIfStatement(Vt,_t);Xu(vn),dt(vn,j),pr(vn,2101056),le=xn(le,vn)}}else if(j.transformFlags&65536){pt=!0;const ot=h1(j,$,e,1,t.getGeneratedNameForNode(j),!1,!0);if(bt(ot)){const Rt=t.createVariableDeclarationList(ot),Ye=t.createVariableStatement(void 0,Rt);pr(Ye,2097152),le=xn(le,Ye)}}return le}function Io(){A&1||(A|=1,e.enableSubstitution(213),e.enableSubstitution(211),e.enableSubstitution(212),e.enableEmitNotification(263),e.enableEmitNotification(174),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(176),e.enableEmitNotification(243))}function ma(le,Fe,pt){if(A&1&&ft(Fe)){const j=l.getNodeCheckFlags(Fe)&384;if(j!==M){const ot=M;M=j,h(le,Fe,pt),M=ot;return}}else if(A&&V[as(Fe)]){const j=M;M=0,h(le,Fe,pt),M=j;return}h(le,Fe,pt)}function Wa(le,Fe){return Fe=m(le,Fe),le===1&&M?Sn(Fe):Fe}function Sn(le){switch(le.kind){case 211:return kn(le);case 212:return qe(le);case 213:return mt(le)}return le}function kn(le){return le.expression.kind===108?dt(t.createPropertyAccessExpression(t.createUniqueName("_super",48),le.name),le):le}function qe(le){return le.expression.kind===108?Ct(le.argumentExpression,le):le}function mt(le){const Fe=le.expression;if(zd(Fe)){const pt=Fr(Fe)?kn(Fe):qe(Fe);return t.createCallExpression(t.createPropertyAccessExpression(pt,"call"),void 0,[t.createThis(),...le.arguments])}return le}function ft(le){const Fe=le.kind;return Fe===263||Fe===176||Fe===174||Fe===177||Fe===178}function Ct(le,Fe){return M&256?dt(t.createPropertyAccessExpression(t.createCallExpression(t.createIdentifier("_superIndex"),void 0,[le]),"value"),Fe):dt(t.createCallExpression(t.createIdentifier("_superIndex"),void 0,[le]),Fe)}}var VUe=T({"src/compiler/transformers/es2018.ts"(){ra()}});function Kle(e){const t=e.factory;return Pm(e,r);function r(s){return s.isDeclarationFile?s:In(s,i,e)}function i(s){if(!(s.transformFlags&64))return s;switch(s.kind){case 299:return o(s);default:return In(s,i,e)}}function o(s){return s.variableDeclaration?In(s,i,e):t.updateCatchClause(s,t.createVariableDeclaration(t.createTempVariable(void 0)),nt(s.block,i,Xo))}}var jUe=T({"src/compiler/transformers/es2019.ts"(){ra()}});function Xle(e){const{factory:t,hoistVariableDeclaration:r}=e;return Pm(e,i);function i(R){return R.isDeclarationFile?R:In(R,o,e)}function o(R){if(!(R.transformFlags&32))return R;switch(R.kind){case 213:{const M=p(R,!1);return N.assertNotNode(M,_I),M}case 211:case 212:if(qu(R)){const M=m(R,!1,!1);return N.assertNotNode(M,_I),M}return In(R,o,e);case 226:return R.operatorToken.kind===61?A(R):In(R,o,e);case 220:return I(R);default:return In(R,o,e)}}function s(R){N.assertNotNode(R,x4);const M=[R];for(;!R.questionDotToken&&!i1(R);)R=aa(Tm(R.expression),qu),N.assertNotNode(R,x4),M.unshift(R);return{expression:R.expression,chain:M}}function l(R,M,C){const O=h(R.expression,M,C);return _I(O)?t.createSyntheticReferenceExpression(t.updateParenthesizedExpression(R,O.expression),O.thisArg):t.updateParenthesizedExpression(R,O)}function u(R,M,C){if(qu(R))return m(R,M,C);let O=nt(R.expression,o,yt);N.assertNotNode(O,_I);let U;return M&&(_1(O)?U=O:(U=t.createTempVariable(r),O=t.createAssignment(U,O))),O=R.kind===211?t.updatePropertyAccessExpression(R,O,nt(R.name,o,Ve)):t.updateElementAccessExpression(R,O,nt(R.argumentExpression,o,yt)),U?t.createSyntheticReferenceExpression(O,U):O}function p(R,M){if(qu(R))return m(R,M,!1);if(Gd(R.expression)&&qu(hs(R.expression))){const C=l(R.expression,!0,!1),O=Vn(R.arguments,o,yt);return _I(C)?dt(t.createFunctionCallCall(C.expression,C.thisArg,O),R):t.updateCallExpression(R,C,void 0,O)}return In(R,o,e)}function h(R,M,C){switch(R.kind){case 217:return l(R,M,C);case 211:case 212:return u(R,M,C);case 213:return p(R,M);default:return nt(R,o,yt)}}function m(R,M,C){const{expression:O,chain:U}=s(R),K=h(Tm(O),hS(U[0]),!1);let Z=_I(K)?K.thisArg:void 0,V=_I(K)?K.expression:K,se=t.restoreOuterExpressions(O,V,8);_1(V)||(V=t.createTempVariable(r),se=t.createAssignment(V,se));let G=V,ne;for(let ye=0;ye<U.length;ye++){const $=U[ye];switch($.kind){case 211:case 212:ye===U.length-1&&M&&(_1(G)?ne=G:(ne=t.createTempVariable(r),G=t.createAssignment(ne,G))),G=$.kind===211?t.createPropertyAccessExpression(G,nt($.name,o,Ve)):t.createElementAccessExpression(G,nt($.argumentExpression,o,yt));break;case 213:ye===0&&Z?(sl(Z)||(Z=t.cloneNode(Z),k_(Z,3072)),G=t.createFunctionCallCall(G,Z.kind===108?t.createThis():Z,Vn($.arguments,o,yt))):G=t.createCallExpression(G,void 0,Vn($.arguments,o,yt));break}Cr(G,$)}const he=C?t.createConditionalExpression(b(se,V,!0),void 0,t.createTrue(),void 0,t.createDeleteExpression(G)):t.createConditionalExpression(b(se,V,!0),void 0,t.createVoidZero(),void 0,G);return dt(he,R),ne?t.createSyntheticReferenceExpression(he,ne):he}function b(R,M,C){return t.createBinaryExpression(t.createBinaryExpression(R,t.createToken(C?37:38),t.createNull()),t.createToken(C?57:56),t.createBinaryExpression(M,t.createToken(C?37:38),t.createVoidZero()))}function A(R){let M=nt(R.left,o,yt),C=M;return _1(M)||(C=t.createTempVariable(r),M=t.createAssignment(C,M)),dt(t.createConditionalExpression(b(M,C),void 0,C,void 0,nt(R.right,o,yt)),R)}function I(R){return qu(hs(R.expression))?Cr(h(R.expression,!1,!0),R):t.updateDeleteExpression(R,nt(R.expression,o,yt))}}var UUe=T({"src/compiler/transformers/es2020.ts"(){ra()}});function Yle(e){const{hoistVariableDeclaration:t,factory:r}=e;return Pm(e,i);function i(l){return l.isDeclarationFile?l:In(l,o,e)}function o(l){return l.transformFlags&16?yU(l)?s(l):In(l,o,e):l}function s(l){const u=l.operatorToken,p=GP(u.kind);let h=hs(nt(l.left,o,ep)),m=h;const b=hs(nt(l.right,o,yt));if(ws(h)){const A=_1(h.expression),I=A?h.expression:r.createTempVariable(t),R=A?h.expression:r.createAssignment(I,h.expression);if(Fr(h))m=r.createPropertyAccessExpression(I,h.name),h=r.createPropertyAccessExpression(R,h.name);else{const M=_1(h.argumentExpression),C=M?h.argumentExpression:r.createTempVariable(t);m=r.createElementAccessExpression(I,C),h=r.createElementAccessExpression(R,M?h.argumentExpression:r.createAssignment(C,h.argumentExpression))}}return r.createBinaryExpression(h,p,r.createParenthesizedExpression(r.createAssignment(m,b)))}}var HUe=T({"src/compiler/transformers/es2021.ts"(){ra()}});function $le(e){const{factory:t,getEmitHelperFactory:r,hoistVariableDeclaration:i,startLexicalEnvironment:o,endLexicalEnvironment:s}=e;let l,u,p,h;return Pm(e,m);function m(fe){if(fe.isDeclarationFile)return fe;const Ne=nt(fe,b,$i);return Ug(Ne,e.readEmitHelpers()),u=void 0,l=void 0,p=void 0,Ne}function b(fe){if(!(fe.transformFlags&4))return fe;switch(fe.kind){case 312:return A(fe);case 241:return I(fe);case 248:return R(fe);case 250:return M(fe);case 255:return O(fe);default:return In(fe,b,e)}}function A(fe){const Ne=_J(fe.statements);if(Ne){o(),l=new II,u=[];const pe=Jxe(fe.statements),ie=[];Jr(ie,kw(fe.statements,b,qi,0,pe));let ve=pe;for(;ve<fe.statements.length;){const Ee=fe.statements[ve];if(ece(Ee)!==0){ve>pe&&Jr(ie,Vn(fe.statements,b,qi,pe,ve-pe));break}ve++}N.assert(ve<fe.statements.length,"Should have encountered at least one 'using' statement.");const Le=Y(),He=U(fe.statements,ve,fe.statements.length,Le,ie);return l.size&&xn(ie,t.createExportDeclaration(void 0,!1,t.createNamedExports(zo(l.values())))),Jr(ie,s()),u.length&&ie.push(t.createVariableStatement(t.createModifiersFromModifierFlags(32),t.createVariableDeclarationList(u,1))),Jr(ie,oe(He,Le,Ne===2)),h&&ie.push(t.createExportAssignment(void 0,!0,h)),t.updateSourceFile(fe,ie)}return In(fe,b,e)}function I(fe){const Ne=_J(fe.statements);if(Ne){const pe=Jxe(fe.statements),ie=Y();return t.updateBlock(fe,[...kw(fe.statements,b,qi,0,pe),...oe(U(fe.statements,pe,fe.statements.length,ie,void 0),ie,Ne===2)])}return In(fe,b,e)}function R(fe){return fe.initializer&&Qle(fe.initializer)?nt(t.createBlock([t.createVariableStatement(void 0,fe.initializer),t.updateForStatement(fe,void 0,fe.condition,fe.incrementor,fe.statement)]),b,qi):In(fe,b,e)}function M(fe){if(Qle(fe.initializer)){const Ne=fe.initializer;N.assertNode(Ne,Qle),N.assert(Ne.declarations.length===1,"ForInitializer may only have one declaration");const pe=Ne.declarations[0];N.assert(!pe.initializer,"ForInitializer may not have an initializer");const ie=Zle(Ne)===2,ve=t.getGeneratedNameForNode(pe.name),Le=t.updateVariableDeclaration(pe,pe.name,void 0,void 0,ve),He=t.createVariableDeclarationList([Le],ie?6:4),Ee=t.createVariableStatement(void 0,He);return nt(t.updateForOfStatement(fe,fe.awaitModifier,t.createVariableDeclarationList([t.createVariableDeclaration(ve)],2),fe.expression,Xo(fe.statement)?t.updateBlock(fe.statement,[Ee,...fe.statement.statements]):t.createBlock([Ee,fe.statement],!0)),b,qi)}return In(fe,b,e)}function C(fe,Ne){return _J(fe.statements)!==0?YR(fe)?t.updateCaseClause(fe,nt(fe.expression,b,yt),U(fe.statements,0,fe.statements.length,Ne,void 0)):t.updateDefaultClause(fe,U(fe.statements,0,fe.statements.length,Ne,void 0)):In(fe,b,e)}function O(fe){const Ne=JUe(fe.caseBlock.clauses);if(Ne){const pe=Y();return oe([t.updateSwitchStatement(fe,nt(fe.expression,b,yt),t.updateCaseBlock(fe.caseBlock,fe.caseBlock.clauses.map(ie=>C(ie,pe))))],pe,Ne===2)}return In(fe,b,e)}function U(fe,Ne,pe,ie,ve){const Le=[];for(let De=Ne;De<pe;De++){const Pe=fe[De],We=ece(Pe);if(We){N.assertNode(Pe,Ll);const Se=[];for(let je of Pe.declarationList.declarations){if(!Ve(je.name)){Se.length=0;break}hp(je)&&(je=Sp(e,je));const at=nt(je.initializer,b,yt)??t.createVoidZero();Se.push(t.updateVariableDeclaration(je,je.name,void 0,void 0,r().createAddDisposableResourceHelper(ie,at,We===2)))}if(Se.length){const je=t.createVariableDeclarationList(Se,2);Cr(je,Pe.declarationList),dt(je,Pe.declarationList),He(t.updateVariableStatement(Pe,void 0,je));continue}}const At=b(Pe);To(At)?At.forEach(He):At&&He(At)}return Le;function He(De){N.assertNode(De,qi),xn(Le,Ee(De))}function Ee(De){if(!ve)return De;switch(De.kind){case 272:case 271:case 278:case 262:return K(De,ve);case 277:return Z(De);case 263:return G(De);case 243:return ne(De)}return De}}function K(fe,Ne){Ne.push(fe)}function Z(fe){return fe.isExportEquals?se(fe):V(fe)}function V(fe){if(p)return fe;p=t.createUniqueName("_default",56),$(p,!0,"default",fe);let Ne=fe.expression,pe=$l(Ne);hp(pe)&&(pe=Sp(e,pe,!1,"default"),Ne=t.restoreOuterExpressions(Ne,pe));const ie=t.createAssignment(p,Ne);return t.createExpressionStatement(ie)}function se(fe){if(h)return fe;h=t.createUniqueName("_default",56),i(h);const Ne=t.createAssignment(h,fe.expression);return t.createExpressionStatement(Ne)}function G(fe){if(!fe.name&&p)return fe;const Ne=Zr(fe,32),pe=Zr(fe,2048);let ie=t.converters.convertToClassExpression(fe);return fe.name&&($(t.getLocalName(fe),Ne&&!pe,void 0,fe),ie=t.createAssignment(t.getDeclarationName(fe),ie),hp(ie)&&(ie=Sp(e,ie,!1)),Cr(ie,fe),Pa(ie,fe),ac(ie,fe)),pe&&!p&&(p=t.createUniqueName("_default",56),$(p,!0,"default",fe),ie=t.createAssignment(p,ie),hp(ie)&&(ie=Sp(e,ie,!1,"default")),Cr(ie,fe)),t.createExpressionStatement(ie)}function ne(fe){let Ne;const pe=Zr(fe,32);for(const ie of fe.declarationList.declarations)ye(ie,pe,ie),ie.initializer&&(Ne=xn(Ne,he(ie)));if(Ne){const ie=t.createExpressionStatement(t.inlineExpressions(Ne));return Cr(ie,fe),ac(ie,fe),Pa(ie,fe),ie}}function he(fe){N.assertIsDefined(fe.initializer);let Ne;Ve(fe.name)?(Ne=t.cloneNode(fe.name),pr(Ne,ja(Ne)&-114689)):Ne=t.converters.convertToAssignmentPattern(fe.name);const pe=t.createAssignment(Ne,fe.initializer);return Cr(pe,fe),ac(pe,fe),Pa(pe,fe),pe}function ye(fe,Ne,pe){if(ta(fe.name))for(const ie of fe.name.elements)jc(ie)||ye(ie,Ne,pe);else $(fe.name,Ne,void 0,pe)}function $(fe,Ne,pe,ie){const ve=sl(fe)?fe:t.cloneNode(fe);if(Ne){if(pe===void 0&&!qg(ve)){const De=t.createVariableDeclaration(ve);ie&&Cr(De,ie),u.push(De);return}const Le=pe!==void 0?ve:void 0,He=pe!==void 0?pe:ve,Ee=t.createExportSpecifier(!1,Le,He);ie&&Cr(Ee,ie),l.set(ve,Ee)}i(ve)}function Y(){return t.createUniqueName("env")}function oe(fe,Ne,pe){const ie=[],ve=t.createObjectLiteralExpression([t.createPropertyAssignment("stack",t.createArrayLiteralExpression()),t.createPropertyAssignment("error",t.createVoidZero()),t.createPropertyAssignment("hasError",t.createFalse())]),Le=t.createVariableDeclaration(Ne,void 0,void 0,ve),He=t.createVariableDeclarationList([Le],2),Ee=t.createVariableStatement(void 0,He);ie.push(Ee);const De=t.createBlock(fe,!0),Pe=t.createUniqueName("e"),We=t.createCatchClause(Pe,t.createBlock([t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(Ne,"error"),Pe)),t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(Ne,"hasError"),t.createTrue()))],!0));let At;if(pe){const je=t.createUniqueName("result");At=t.createBlock([t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(je,void 0,void 0,r().createDisposeResourcesHelper(Ne))],2)),t.createIfStatement(je,t.createExpressionStatement(t.createAwaitExpression(je)))],!0)}else At=t.createBlock([t.createExpressionStatement(r().createDisposeResourcesHelper(Ne))],!0);const Se=t.createTryStatement(De,We,At);return ie.push(Se),ie}}function Jxe(e){for(let t=0;t<e.length;t++)if(!Im(e[t])&&!wL(e[t]))return t;return 0}function Qle(e){return Uc(e)&&Zle(e)!==0}function Zle(e){return(e.flags&7)===6?2:(e.flags&7)===4?1:0}function qUe(e){return Zle(e.declarationList)}function ece(e){return Ll(e)?qUe(e):0}function _J(e){let t=0;for(const r of e){const i=ece(r);if(i===2)return 2;i>t&&(t=i)}return t}function JUe(e){let t=0;for(const r of e){const i=_J(r.statements);if(i===2)return 2;i>t&&(t=i)}return t}var KUe=T({"src/compiler/transformers/esnext.ts"(){ra()}});function tce(e){const{factory:t,getEmitHelperFactory:r}=e,i=e.getCompilerOptions();let o,s;return Pm(e,b);function l(){if(s.filenameDeclaration)return s.filenameDeclaration.name;const Se=t.createVariableDeclaration(t.createUniqueName("_jsxFileName",48),void 0,void 0,t.createStringLiteral(o.fileName));return s.filenameDeclaration=Se,s.filenameDeclaration.name}function u(Se){return i.jsx===5?"jsxDEV":Se?"jsxs":"jsx"}function p(Se){const je=u(Se);return m(je)}function h(){return m("Fragment")}function m(Se){var je,at;const Gt=Se==="createElement"?s.importSpecifier:K3(s.importSpecifier,i),vt=(at=(je=s.utilizedImplicitRuntimeImports)==null?void 0:je.get(Gt))==null?void 0:at.get(Se);if(vt)return vt.name;s.utilizedImplicitRuntimeImports||(s.utilizedImplicitRuntimeImports=new Map);let $e=s.utilizedImplicitRuntimeImports.get(Gt);$e||($e=new Map,s.utilizedImplicitRuntimeImports.set(Gt,$e));const It=t.createUniqueName(`_${Se}`,112),tn=t.createImportSpecifier(!1,t.createIdentifier(Se),It);return Rae(It,tn),$e.set(Se,tn),It}function b(Se){if(Se.isDeclarationFile)return Se;o=Se,s={},s.importSpecifier=J3(i,Se);let je=In(Se,A,e);Ug(je,e.readEmitHelpers());let at=je.statements;if(s.filenameDeclaration&&(at=SS(at.slice(),t.createVariableStatement(void 0,t.createVariableDeclarationList([s.filenameDeclaration],2)))),s.utilizedImplicitRuntimeImports){for(const[Gt,vt]of zo(s.utilizedImplicitRuntimeImports.entries()))if(sc(Se)){const $e=t.createImportDeclaration(void 0,t.createImportClause(!1,void 0,t.createNamedImports(zo(vt.values()))),t.createStringLiteral(Gt),void 0);Jy($e,!1),at=SS(at.slice(),$e)}else if(zp(Se)){const $e=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.createObjectBindingPattern(zo(vt.values(),It=>t.createBindingElement(void 0,It.propertyName,It.name))),void 0,void 0,t.createCallExpression(t.createIdentifier("require"),void 0,[t.createStringLiteral(Gt)]))],2));Jy($e,!1),at=SS(at.slice(),$e)}}return at!==je.statements&&(je=t.updateSourceFile(je,at)),s=void 0,je}function A(Se){return Se.transformFlags&2?I(Se):Se}function I(Se){switch(Se.kind){case 284:return U(Se,!1);case 285:return K(Se,!1);case 288:return Z(Se,!1);case 294:return At(Se);default:return In(Se,A,e)}}function R(Se){switch(Se.kind){case 12:return ve(Se);case 294:return At(Se);case 284:return U(Se,!0);case 285:return K(Se,!0);case 288:return Z(Se,!0);default:return N.failBadSyntaxKind(Se)}}function M(Se){return Se.properties.some(je=>hc(je)&&(Ve(je.name)&&Sr(je.name)==="__proto__"||Ma(je.name)&&je.name.text==="__proto__"))}function C(Se){let je=!1;for(const at of Se.attributes.properties)if(gI(at)&&(!Oa(at.expression)||at.expression.properties.some(Xv)))je=!0;else if(je&&F_(at)&&Ve(at.name)&&at.name.escapedText==="key")return!0;return!1}function O(Se){return s.importSpecifier===void 0||C(Se)}function U(Se,je){return(O(Se.openingElement)?he:G)(Se.openingElement,Se.children,je,Se)}function K(Se,je){return(O(Se)?he:G)(Se,void 0,je,Se)}function Z(Se,je){return(s.importSpecifier===void 0?$:ye)(Se.openingFragment,Se.children,je,Se)}function V(Se){const je=se(Se);return je&&t.createObjectLiteralExpression([je])}function se(Se){const je=xR(Se);if(Me(je)===1&&!je[0].dotDotDotToken){const Gt=R(je[0]);return Gt&&t.createPropertyAssignment("children",Gt)}const at=Hi(Se,R);return Me(at)?t.createPropertyAssignment("children",t.createArrayLiteralExpression(at)):void 0}function G(Se,je,at,Gt){const vt=Pe(Se),$e=je&&je.length?se(je):void 0,It=An(Se.attributes.properties,Pn=>!!Pn.name&&Ve(Pn.name)&&Pn.name.escapedText==="key"),tn=It?nr(Se.attributes.properties,Pn=>Pn!==It):Se.attributes.properties,rn=Me(tn)?oe(tn,$e):t.createObjectLiteralExpression($e?[$e]:et);return ne(vt,rn,It,je||et,at,Gt)}function ne(Se,je,at,Gt,vt,$e){var It;const tn=xR(Gt),rn=Me(tn)>1||!!((It=tn[0])!=null&&It.dotDotDotToken),Pn=[Se,je];if(at&&Pn.push(ie(at.initializer)),i.jsx===5){const hn=Pl(o);if(hn&&$i(hn)){at===void 0&&Pn.push(t.createVoidZero()),Pn.push(rn?t.createTrue():t.createFalse());const Qt=bs(hn,$e.pos);Pn.push(t.createObjectLiteralExpression([t.createPropertyAssignment("fileName",l()),t.createPropertyAssignment("lineNumber",t.createNumericLiteral(Qt.line+1)),t.createPropertyAssignment("columnNumber",t.createNumericLiteral(Qt.character+1))])),Pn.push(t.createThis())}}const Xn=dt(t.createCallExpression(p(rn),void 0,Pn),$e);return vt&&Xu(Xn),Xn}function he(Se,je,at,Gt){const vt=Pe(Se),$e=Se.attributes.properties,It=Me($e)?oe($e):t.createNull(),tn=s.importSpecifier===void 0?HH(t,e.getEmitResolver().getJsxFactoryEntity(o),i.reactNamespace,Se):m("createElement"),rn=rse(t,tn,vt,It,Hi(je,R),Gt);return at&&Xu(rn),rn}function ye(Se,je,at,Gt){let vt;if(je&&je.length){const $e=V(je);$e&&(vt=$e)}return ne(h(),vt||t.createObjectLiteralExpression([]),void 0,je,at,Gt)}function $(Se,je,at,Gt){const vt=ise(t,e.getEmitResolver().getJsxFactoryEntity(o),e.getEmitResolver().getJsxFragmentFactoryEntity(o),i.reactNamespace,Hi(je,R),Se,Gt);return at&&Xu(vt),vt}function Y(Se){return Oa(Se.expression)&&!M(Se.expression)?eo(Se.expression.properties,je=>N.checkDefined(nt(je,A,Wg))):t.createSpreadAssignment(N.checkDefined(nt(Se.expression,A,yt)))}function oe(Se,je){const at=os(i);return at&&at>=5?t.createObjectLiteralExpression(fe(Se,je)):Ne(Se,je)}function fe(Se,je){const at=ia(lG(Se,gI,(Gt,vt)=>ia(wt(Gt,$e=>vt?Y($e):pe($e)))));return je&&at.push(je),at}function Ne(Se,je){const at=[];let Gt=[];for(const $e of Se){if(gI($e)){if(Oa($e.expression)&&!M($e.expression)){for(const It of $e.expression.properties){if(Xv(It)){vt(),at.push(N.checkDefined(nt(It.expression,A,yt)));continue}Gt.push(N.checkDefined(nt(It,A)))}continue}vt(),at.push(N.checkDefined(nt($e.expression,A,yt)));continue}Gt.push(pe($e))}return je&&Gt.push(je),vt(),at.length&&!Oa(at[0])&&at.unshift(t.createObjectLiteralExpression()),sh(at)||r().createAssignHelper(at);function vt(){Gt.length&&(at.push(t.createObjectLiteralExpression(Gt)),Gt=[])}}function pe(Se){const je=We(Se),at=ie(Se.initializer);return t.createPropertyAssignment(je,at)}function ie(Se){if(Se===void 0)return t.createTrue();if(Se.kind===11){const je=Se.singleQuote!==void 0?Se.singleQuote:!p3(Se,o),at=t.createStringLiteral(De(Se.text)||Se.text,je);return dt(at,Se)}return Se.kind===294?Se.expression===void 0?t.createTrue():N.checkDefined(nt(Se.expression,A,yt)):dg(Se)?U(Se,!1):JS(Se)?K(Se,!1):s1(Se)?Z(Se,!1):N.failBadSyntaxKind(Se)}function ve(Se){const je=Le(Se.text);return je===void 0?void 0:t.createStringLiteral(je)}function Le(Se){let je,at=0,Gt=-1;for(let vt=0;vt<Se.length;vt++){const $e=Se.charCodeAt(vt);Hu($e)?(at!==-1&&Gt!==-1&&(je=He(je,Se.substr(at,Gt-at+1))),at=-1):A_($e)||(Gt=vt,at===-1&&(at=vt))}return at!==-1?He(je,Se.substr(at)):je}function He(Se,je){const at=Ee(je);return Se===void 0?at:Se+" "+at}function Ee(Se){return Se.replace(/&((#((\d+)|x([\da-fA-F]+)))|(\w+));/g,(je,at,Gt,vt,$e,It,tn)=>{if($e)return Xx(parseInt($e,10));if(It)return Xx(parseInt(It,16));{const rn=Kxe.get(tn);return rn?Xx(rn):je}})}function De(Se){const je=Ee(Se);return je===Se?void 0:je}function Pe(Se){if(Se.kind===284)return Pe(Se.openingElement);{const je=Se.tagName;return Ve(je)&&DR(je.escapedText)?t.createStringLiteral(Sr(je)):t_(je)?t.createStringLiteral(Sr(je.namespace)+":"+Sr(je.name)):nw(t,je)}}function We(Se){const je=Se.name;if(Ve(je)){const at=Sr(je);return/^[A-Za-z_]\w*$/.test(at)?je:t.createStringLiteral(at)}return t.createStringLiteral(Sr(je.namespace)+":"+Sr(je.name))}function At(Se){const je=nt(Se.expression,A,yt);return Se.dotDotDotToken?t.createSpreadElement(je):je}}var Kxe,XUe=T({"src/compiler/transformers/jsx.ts"(){ra(),Kxe=new Map(Object.entries({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830}))}});function nce(e){const{factory:t,hoistVariableDeclaration:r}=e;return Pm(e,i);function i(p){return p.isDeclarationFile?p:In(p,o,e)}function o(p){if(!(p.transformFlags&512))return p;switch(p.kind){case 226:return s(p);default:return In(p,o,e)}}function s(p){switch(p.operatorToken.kind){case 68:return l(p);case 43:return u(p);default:return In(p,o,e)}}function l(p){let h,m;const b=nt(p.left,o,yt),A=nt(p.right,o,yt);if(Qs(b)){const I=t.createTempVariable(r),R=t.createTempVariable(r);h=dt(t.createElementAccessExpression(dt(t.createAssignment(I,b.expression),b.expression),dt(t.createAssignment(R,b.argumentExpression),b.argumentExpression)),b),m=dt(t.createElementAccessExpression(I,R),b)}else if(Fr(b)){const I=t.createTempVariable(r);h=dt(t.createPropertyAccessExpression(dt(t.createAssignment(I,b.expression),b.expression),b.name),b),m=dt(t.createPropertyAccessExpression(I,b.name),b)}else h=b,m=b;return dt(t.createAssignment(h,dt(t.createGlobalMethodCall("Math","pow",[m,A]),p)),p)}function u(p){const h=nt(p.left,o,yt),m=nt(p.right,o,yt);return dt(t.createGlobalMethodCall("Math","pow",[h,m]),p)}}var YUe=T({"src/compiler/transformers/es2016.ts"(){ra()}});function Xxe(e,t){return{kind:e,expression:t}}function rce(e){const{factory:t,getEmitHelperFactory:r,startLexicalEnvironment:i,resumeLexicalEnvironment:o,endLexicalEnvironment:s,hoistVariableDeclaration:l}=e,u=e.getCompilerOptions(),p=e.getEmitResolver(),h=e.onSubstituteNode,m=e.onEmitNode;e.onEmitNode=ff,e.onSubstituteNode=Of;let b,A,I,R;function M(te){R=xn(R,t.createVariableDeclaration(te))}let C,O;return Pm(e,U);function U(te){if(te.isDeclarationFile)return te;b=te,A=te.text;const ct=oe(te);return Ug(ct,e.readEmitHelpers()),b=void 0,A=void 0,R=void 0,I=0,ct}function K(te,ct){const Ft=I;return I=(I&~te|ct)&32767,Ft}function Z(te,ct,Ft){I=(I&~ct|Ft)&-32768|te}function V(te){return(I&8192)!==0&&te.kind===253&&!te.expression}function se(te){return te.transformFlags&4194304&&(Dm(te)||US(te)||Uae(te)||EP(te)||SP(te)||YR(te)||AP(te)||qS(te)||c1(te)||o1(te)||Wy(te,!1)||Xo(te))}function G(te){return(te.transformFlags&1024)!==0||C!==void 0||I&8192&&se(te)||Wy(te,!1)&&ho(te)||(Am(te)&1)!==0}function ne(te){return G(te)?Y(te,!1):te}function he(te){return G(te)?Y(te,!0):te}function ye(te){if(G(te)){const ct=Pl(te);if(Jo(ct)&&mc(ct)){const Ft=K(32670,16449),jt=Y(te,!1);return Z(Ft,229376,0),jt}return Y(te,!1)}return te}function $(te){return te.kind===108?ec(te,!0):ne(te)}function Y(te,ct){switch(te.kind){case 126:return;case 263:return Pe(te);case 231:return We(te);case 169:return Wa(te);case 262:return fn(te);case 219:return Vt(te);case 218:return vn(te);case 260:return bn(te);case 80:return Ee(te);case 261:return ke(te);case 255:return fe(te);case 269:return Ne(te);case 241:return Oe(te);case 252:case 251:return De(te);case 256:return Ni(te);case 246:case 247:return jr(te,void 0);case 248:return vo(te,void 0);case 249:return Ii(te,void 0);case 250:return Kr(te,void 0);case 244:return Lt(te);case 210:return Lo(te);case 299:return xi(te);case 304:return Hc(te);case 167:return Us(te);case 209:return Ss(te);case 213:return qc(te);case 214:return cm(te);case 217:return L(te,ct);case 226:return _e(te,ct);case 361:return J(te,ct);case 15:case 16:case 17:case 18:return na(te);case 11:return Zl(te);case 9:return yc(te);case 215:return dl(te);case 228:return yl(te);case 229:return vc(te);case 230:return Qo(te);case 108:return ec(te,!1);case 110:return Le(te);case 236:return Jc(te);case 174:return $o(te);case 177:case 178:return Tl(te);case 243:return Ge(te);case 253:return ve(te);case 222:return He(te);default:return In(te,ne,e)}}function oe(te){const ct=K(8064,64),Ft=[],jt=[];i();const F=t.copyPrologue(te.statements,Ft,!1,ne);return Jr(jt,Vn(te.statements,ne,qi,F)),R&&jt.push(t.createVariableStatement(void 0,t.createVariableDeclarationList(R))),t.mergeLexicalEnvironment(Ft,s()),le(Ft,te),Z(ct,0,0),t.updateSourceFile(te,dt(t.createNodeArray(So(Ft,jt)),te.statements))}function fe(te){if(C!==void 0){const ct=C.allowedNonLabeledJumps;C.allowedNonLabeledJumps|=2;const Ft=In(te,ne,e);return C.allowedNonLabeledJumps=ct,Ft}return In(te,ne,e)}function Ne(te){const ct=K(7104,0),Ft=In(te,ne,e);return Z(ct,0,0),Ft}function pe(te){return Cr(t.createReturnStatement(ie()),te)}function ie(){return t.createUniqueName("_this",48)}function ve(te){return C?(C.nonLocalJumps|=8,V(te)&&(te=pe(te)),t.createReturnStatement(t.createObjectLiteralExpression([t.createPropertyAssignment(t.createIdentifier("value"),te.expression?N.checkDefined(nt(te.expression,ne,yt)):t.createVoidZero())]))):V(te)?pe(te):In(te,ne,e)}function Le(te){return I|=65536,I&2&&!(I&16384)&&(I|=131072),C?I&2?(C.containsLexicalThis=!0,te):C.thisName||(C.thisName=t.createUniqueName("this")):te}function He(te){return In(te,he,e)}function Ee(te){return C&&p.isArgumentsLocalBinding(te)?C.argumentsName||(C.argumentsName=t.createUniqueName("arguments")):te.flags&256?Cr(dt(t.createIdentifier(Vi(te.escapedText)),te),te):te}function De(te){if(C){const ct=te.kind===252?2:4;if(!(te.label&&C.labels&&C.labels.get(Sr(te.label))||!te.label&&C.allowedNonLabeledJumps&ct)){let jt;const F=te.label;F?te.kind===252?(jt=`break-${F.escapedText}`,ee(C,!0,Sr(F),jt)):(jt=`continue-${F.escapedText}`,ee(C,!1,Sr(F),jt)):te.kind===252?(C.nonLocalJumps|=2,jt="break"):(C.nonLocalJumps|=4,jt="continue");let Te=t.createStringLiteral(jt);if(C.loopOutParameters.length){const st=C.loopOutParameters;let Jt;for(let rr=0;rr<st.length;rr++){const oi=Ip(st[rr],1);rr===0?Jt=oi:Jt=t.createBinaryExpression(Jt,28,oi)}Te=t.createBinaryExpression(Jt,28,Te)}return t.createReturnStatement(Te)}}return In(te,ne,e)}function Pe(te){const ct=t.createVariableDeclaration(t.getLocalName(te,!0),void 0,void 0,At(te));Cr(ct,te);const Ft=[],jt=t.createVariableStatement(void 0,t.createVariableDeclarationList([ct]));if(Cr(jt,te),dt(jt,te),Xu(jt),Ft.push(jt),Zr(te,32)){const F=Zr(te,2048)?t.createExportDefault(t.getLocalName(te)):t.createExternalModuleExport(t.getLocalName(te));Cr(F,jt),Ft.push(F)}return lh(Ft)}function We(te){return At(te)}function At(te){te.name&&jd();const ct=UE(te),Ft=t.createFunctionExpression(void 0,void 0,void 0,void 0,ct?[t.createParameterDeclaration(void 0,void 0,Vl())]:[],void 0,Se(te,ct));pr(Ft,ja(te)&131072|1048576);const jt=t.createPartiallyEmittedExpression(Ft);FR(jt,te.end),pr(jt,3072);const F=t.createPartiallyEmittedExpression(jt);FR(F,ka(A,te.pos)),pr(F,3072);const Te=t.createParenthesizedExpression(t.createCallExpression(F,void 0,ct?[N.checkDefined(nt(ct.expression,ne,yt))]:[]));return fP(Te,3,"* @class "),Te}function Se(te,ct){const Ft=[],jt=t.getInternalName(te),F=nU(jt)?t.getGeneratedNameForNode(jt):jt;i(),je(Ft,te,ct),at(Ft,te,F,ct),j(Ft,te);const Te=IU(ka(A,te.members.end),20),st=t.createPartiallyEmittedExpression(F);FR(st,Te.end),pr(st,3072);const Jt=t.createReturnStatement(st);tP(Jt,Te.pos),pr(Jt,3840),Ft.push(Jt),eg(Ft,s());const rr=t.createBlock(dt(t.createNodeArray(Ft),te.members),!0);return pr(rr,3072),rr}function je(te,ct,Ft){Ft&&te.push(dt(t.createExpressionStatement(r().createExtendsHelper(t.getInternalName(ct))),Ft))}function at(te,ct,Ft,jt){const F=C;C=void 0;const Te=K(32662,73),st=ag(ct),Jt=Ud(st,jt!==void 0),rr=t.createFunctionDeclaration(void 0,void 0,Ft,void 0,Gt(st,Jt),void 0,tn(st,ct,jt,Jt));dt(rr,st||ct),jt&&pr(rr,16),te.push(rr),Z(Te,229376,0),C=F}function Gt(te,ct){return Dl(te&&!ct?te.parameters:void 0,ne,e)||[]}function vt(te,ct){const Ft=[];o(),t.mergeLexicalEnvironment(Ft,s()),ct&&Ft.push(t.createReturnStatement(ma()));const jt=t.createNodeArray(Ft);dt(jt,te.members);const F=t.createBlock(jt,!0);return dt(F,te),pr(F,3072),F}function $e(te){return Ll(te)&&Zn(te.declarationList.declarations,ct=>Ve(ct.name)&&!ct.initializer)}function It(te){if(IS(te))return!0;if(!(te.transformFlags&134217728))return!1;switch(te.kind){case 219:case 218:case 262:case 176:case 175:return!1;case 177:case 178:case 174:case 172:{const ct=te;return Za(ct.name)?!!Ho(ct.name,It):!1}}return!!Ho(te,It)}function tn(te,ct,Ft,jt){const F=!!Ft&&$l(Ft.expression).kind!==106;if(!te)return vt(ct,F);const Te=[],st=[];o();const Jt=t.copyStandardPrologue(te.body.statements,Te,0);(jt||It(te.body))&&(I|=8192),Jr(st,Vn(te.body.statements,ne,qi,Jt));const rr=F||I&8192;kn(Te,te),Ct(Te,te,jt),pt(Te,te),rr?Fe(Te,te,Io()):le(Te,te),t.mergeLexicalEnvironment(Te,s()),rr&&!Qi(te.body)&&st.push(t.createReturnStatement(ie()));const oi=t.createBlock(dt(t.createNodeArray([...Te,...st]),te.body.statements),!0);return dt(oi,te.body),hi(oi,te.body,jt)}function rn(te){return sl(te)&&Sr(te)==="_this"}function Pn(te){return sl(te)&&Sr(te)==="_super"}function Xn(te){return Ll(te)&&te.declarationList.declarations.length===1&&hn(te.declarationList.declarations[0])}function hn(te){return wi(te)&&rn(te.name)&&!!te.initializer}function Qt(te){return Lc(te,!0)&&rn(te.left)}function $t(te){return la(te)&&Fr(te.expression)&&Pn(te.expression.expression)&&Ve(te.expression.name)&&(Sr(te.expression.name)==="call"||Sr(te.expression.name)==="apply")&&te.arguments.length>=1&&te.arguments[0].kind===110}function _i(te){return mr(te)&&te.operatorToken.kind===57&&te.right.kind===110&&$t(te.left)}function ao(te){return mr(te)&&te.operatorToken.kind===56&&mr(te.left)&&te.left.operatorToken.kind===38&&Pn(te.left.left)&&te.left.right.kind===106&&$t(te.right)&&Sr(te.right.expression.name)==="apply"}function Oi(te){return mr(te)&&te.operatorToken.kind===57&&te.right.kind===110&&ao(te.left)}function No(te){return Qt(te)&&_i(te.right)}function Mn(te){return Qt(te)&&Oi(te.right)}function Di(te){return $t(te)||_i(te)||No(te)||ao(te)||Oi(te)||Mn(te)}function Ar(te){for(let ct=0;ct<te.statements.length-1;ct++){const Ft=te.statements[ct];if(!Xn(Ft))continue;const jt=Ft.declarationList.declarations[0];if(jt.initializer.kind!==110)continue;const F=ct;let Te=ct+1;for(;Te<te.statements.length;){const Fa=te.statements[Te];if(eu(Fa)&&Di($l(Fa.expression)))break;if($e(Fa)){Te++;continue}return te}const st=te.statements[Te];let Jt=st.expression;Qt(Jt)&&(Jt=Jt.right);const rr=t.updateVariableDeclaration(jt,jt.name,void 0,void 0,Jt),oi=t.updateVariableDeclarationList(Ft.declarationList,[rr]),$r=t.createVariableStatement(Ft.modifiers,oi);Cr($r,st),dt($r,st);const io=t.createNodeArray([...te.statements.slice(0,F),...te.statements.slice(F+1,Te),$r,...te.statements.slice(Te+1)]);return dt(io,te.statements),t.updateBlock(te,io)}return te}function sn(te,ct){for(const jt of ct.statements)if(jt.transformFlags&134217728&&!i7(jt))return te;const Ft=!(ct.transformFlags&16384)&&!(I&65536)&&!(I&131072);for(let jt=te.statements.length-1;jt>0;jt--){const F=te.statements[jt];if(Dm(F)&&F.expression&&rn(F.expression)){const Te=te.statements[jt-1];let st;if(eu(Te)&&No($l(Te.expression)))st=Te.expression;else if(Ft&&Xn(Te)){const oi=Te.declarationList.declarations[0];Di($l(oi.initializer))&&(st=t.createAssignment(ie(),oi.initializer))}if(!st)break;const Jt=t.createReturnStatement(st);Cr(Jt,Te),dt(Jt,Te);const rr=t.createNodeArray([...te.statements.slice(0,jt-1),Jt,...te.statements.slice(jt+1)]);return dt(rr,te.statements),t.updateBlock(te,rr)}}return te}function tt(te){if(Xn(te)){if(te.declarationList.declarations[0].initializer.kind===110)return}else if(Qt(te))return t.createPartiallyEmittedExpression(te.right,te);switch(te.kind){case 219:case 218:case 262:case 176:case 175:return te;case 177:case 178:case 174:case 172:{const ct=te;return Za(ct.name)?t.replacePropertyName(ct,In(ct.name,tt,void 0)):te}}return In(te,tt,void 0)}function zt(te,ct){if(ct.transformFlags&16384||I&65536||I&131072)return te;for(const Ft of ct.statements)if(Ft.transformFlags&134217728&&!i7(Ft))return te;return t.updateBlock(te,Vn(te.statements,tt,qi))}function Rn(te){if($t(te)&&te.arguments.length===2&&Ve(te.arguments[1])&&Sr(te.arguments[1])==="arguments")return t.createLogicalAnd(t.createStrictInequality(Vl(),t.createNull()),te);switch(te.kind){case 219:case 218:case 262:case 176:case 175:return te;case 177:case 178:case 174:case 172:{const ct=te;return Za(ct.name)?t.replacePropertyName(ct,In(ct.name,Rn,void 0)):te}}return In(te,Rn,void 0)}function li(te){return t.updateBlock(te,Vn(te.statements,Rn,qi))}function hi(te,ct,Ft){const jt=te;return te=Ar(te),te=sn(te,ct),te!==jt&&(te=zt(te,ct)),Ft&&(te=li(te)),te}function Qi(te){if(te.kind===253)return!0;if(te.kind===245){const ct=te;if(ct.elseStatement)return Qi(ct.thenStatement)&&Qi(ct.elseStatement)}else if(te.kind===241){const ct=tl(te.statements);if(ct&&Qi(ct))return!0}return!1}function Io(){return pr(t.createThis(),8)}function ma(){return t.createLogicalOr(t.createLogicalAnd(t.createStrictInequality(Vl(),t.createNull()),t.createFunctionApplyCall(Vl(),Io(),t.createIdentifier("arguments"))),Io())}function Wa(te){if(!te.dotDotDotToken)return ta(te.name)?Cr(dt(t.createParameterDeclaration(void 0,void 0,t.getGeneratedNameForNode(te),void 0,void 0,void 0),te),te):te.initializer?Cr(dt(t.createParameterDeclaration(void 0,void 0,te.name,void 0,void 0,void 0),te),te):te}function Sn(te){return te.initializer!==void 0||ta(te.name)}function kn(te,ct){if(!bt(ct.parameters,Sn))return!1;let Ft=!1;for(const jt of ct.parameters){const{name:F,initializer:Te,dotDotDotToken:st}=jt;st||(ta(F)?Ft=qe(te,jt,F,Te)||Ft:Te&&(mt(te,jt,F,Te),Ft=!0))}return Ft}function qe(te,ct,Ft,jt){return Ft.elements.length>0?(SS(te,pr(t.createVariableStatement(void 0,t.createVariableDeclarationList(h1(ct,ne,e,0,t.getGeneratedNameForNode(ct)))),2097152)),!0):jt?(SS(te,pr(t.createExpressionStatement(t.createAssignment(t.getGeneratedNameForNode(ct),N.checkDefined(nt(jt,ne,yt)))),2097152)),!0):!1}function mt(te,ct,Ft,jt){jt=N.checkDefined(nt(jt,ne,yt));const F=t.createIfStatement(t.createTypeCheck(t.cloneNode(Ft),"undefined"),pr(dt(t.createBlock([t.createExpressionStatement(pr(dt(t.createAssignment(pr(qa(dt(t.cloneNode(Ft),Ft),Ft.parent),96),pr(jt,96|ja(jt)|3072)),ct),3072))]),ct),3905));Xu(F),dt(F,ct),pr(F,2101056),SS(te,F)}function ft(te,ct){return!!(te&&te.dotDotDotToken&&!ct)}function Ct(te,ct,Ft){const jt=[],F=tl(ct.parameters);if(!ft(F,Ft))return!1;const Te=F.name.kind===80?qa(dt(t.cloneNode(F.name),F.name),F.name.parent):t.createTempVariable(void 0);pr(Te,96);const st=F.name.kind===80?t.cloneNode(F.name):Te,Jt=ct.parameters.length-1,rr=t.createLoopVariable();jt.push(pr(dt(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(Te,void 0,void 0,t.createArrayLiteralExpression([]))])),F),2097152));const oi=t.createForStatement(dt(t.createVariableDeclarationList([t.createVariableDeclaration(rr,void 0,void 0,t.createNumericLiteral(Jt))]),F),dt(t.createLessThan(rr,t.createPropertyAccessExpression(t.createIdentifier("arguments"),"length")),F),dt(t.createPostfixIncrement(rr),F),t.createBlock([Xu(dt(t.createExpressionStatement(t.createAssignment(t.createElementAccessExpression(st,Jt===0?rr:t.createSubtract(rr,t.createNumericLiteral(Jt))),t.createElementAccessExpression(t.createIdentifier("arguments"),rr))),F))]));return pr(oi,2097152),Xu(oi),jt.push(oi),F.name.kind!==80&&jt.push(pr(dt(t.createVariableStatement(void 0,t.createVariableDeclarationList(h1(F,ne,e,0,st))),F),2097152)),yj(te,jt),!0}function le(te,ct){return I&131072&&ct.kind!==219?(Fe(te,ct,t.createThis()),!0):!1}function Fe(te,ct,Ft){Cd();const jt=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(ie(),void 0,void 0,Ft)]));pr(jt,2100224),Pa(jt,ct),SS(te,jt)}function pt(te,ct){if(I&32768){let Ft;switch(ct.kind){case 219:return te;case 174:case 177:case 178:Ft=t.createVoidZero();break;case 176:Ft=t.createPropertyAccessExpression(pr(t.createThis(),8),"constructor");break;case 262:case 218:Ft=t.createConditionalExpression(t.createLogicalAnd(pr(t.createThis(),8),t.createBinaryExpression(pr(t.createThis(),8),104,t.getLocalName(ct))),void 0,t.createPropertyAccessExpression(pr(t.createThis(),8),"constructor"),void 0,t.createVoidZero());break;default:return N.failBadSyntaxKind(ct)}const jt=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.createUniqueName("_newTarget",48),void 0,void 0,Ft)]));pr(jt,2100224),SS(te,jt)}return te}function j(te,ct){for(const Ft of ct.members)switch(Ft.kind){case 240:te.push(ot(Ft));break;case 174:te.push(Rt(_g(ct,Ft),Ft,ct));break;case 177:case 178:const jt=wS(ct.members,Ft);Ft===jt.firstAccessor&&te.push(Ye(_g(ct,Ft),jt,ct));break;case 176:case 175:break;default:N.failBadSyntaxKind(Ft,b&&b.fileName);break}}function ot(te){return dt(t.createEmptyStatement(),te)}function Rt(te,ct,Ft){const jt=w_(ct),F=qv(ct),Te=_n(ct,ct,void 0,Ft),st=nt(ct.name,ne,oc);N.assert(st);let Jt;if(!Ji(st)&&dP(e.getCompilerOptions())){const oi=Za(st)?st.expression:Ve(st)?t.createStringLiteral(Vi(st.escapedText)):st;Jt=t.createObjectDefinePropertyCall(te,oi,t.createPropertyDescriptor({value:Te,enumerable:!1,writable:!0,configurable:!0}))}else{const oi=$S(t,te,st,ct.name);Jt=t.createAssignment(oi,Te)}pr(Te,3072),Pa(Te,F);const rr=dt(t.createExpressionStatement(Jt),ct);return Cr(rr,ct),ac(rr,jt),pr(rr,96),rr}function Ye(te,ct,Ft){const jt=t.createExpressionStatement(_t(te,ct,Ft,!1));return pr(jt,3072),Pa(jt,qv(ct.firstAccessor)),jt}function _t(te,{firstAccessor:ct,getAccessor:Ft,setAccessor:jt},F,Te){const st=qa(dt(t.cloneNode(te),te),te.parent);pr(st,3136),Pa(st,ct.name);const Jt=nt(ct.name,ne,oc);if(N.assert(Jt),Ji(Jt))return N.failBadSyntaxKind(Jt,"Encountered unhandled private identifier while transforming ES2015.");const rr=JH(t,Jt);pr(rr,3104),Pa(rr,ct.name);const oi=[];if(Ft){const io=_n(Ft,void 0,void 0,F);Pa(io,qv(Ft)),pr(io,1024);const Fa=t.createPropertyAssignment("get",io);ac(Fa,w_(Ft)),oi.push(Fa)}if(jt){const io=_n(jt,void 0,void 0,F);Pa(io,qv(jt)),pr(io,1024);const Fa=t.createPropertyAssignment("set",io);ac(Fa,w_(jt)),oi.push(Fa)}oi.push(t.createPropertyAssignment("enumerable",Ft||jt?t.createFalse():t.createTrue()),t.createPropertyAssignment("configurable",t.createTrue()));const $r=t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("Object"),"defineProperty"),void 0,[st,rr,t.createObjectLiteralExpression(oi,!0)]);return Te&&Xu($r),$r}function Vt(te){te.transformFlags&16384&&!(I&16384)&&(I|=131072);const ct=C;C=void 0;const Ft=K(15232,66),jt=t.createFunctionExpression(void 0,void 0,void 0,void 0,Dl(te.parameters,ne,e),void 0,q(te));return dt(jt,te),Cr(jt,te),pr(jt,16),Z(Ft,0,0),C=ct,jt}function vn(te){const ct=ja(te)&524288?K(32662,69):K(32670,65),Ft=C;C=void 0;const jt=Dl(te.parameters,ne,e),F=q(te),Te=I&32768?t.getLocalName(te):te.name;return Z(ct,229376,0),C=Ft,t.updateFunctionExpression(te,void 0,te.asteriskToken,Te,void 0,jt,void 0,F)}function fn(te){const ct=C;C=void 0;const Ft=K(32670,65),jt=Dl(te.parameters,ne,e),F=q(te),Te=I&32768?t.getLocalName(te):te.name;return Z(Ft,229376,0),C=ct,t.updateFunctionDeclaration(te,Vn(te.modifiers,ne,xa),te.asteriskToken,Te,void 0,jt,void 0,F)}function _n(te,ct,Ft,jt){const F=C;C=void 0;const Te=jt&&ui(jt)&&!sa(te)?K(32670,73):K(32670,65),st=Dl(te.parameters,ne,e),Jt=q(te);return I&32768&&!Ft&&(te.kind===262||te.kind===218)&&(Ft=t.getGeneratedNameForNode(te)),Z(Te,229376,0),C=F,Cr(dt(t.createFunctionExpression(void 0,te.asteriskToken,Ft,void 0,st,void 0,Jt),ct),te)}function q(te){let ct=!1,Ft=!1,jt,F;const Te=[],st=[],Jt=te.body;let rr;if(o(),Xo(Jt)&&(rr=t.copyStandardPrologue(Jt.statements,Te,0,!1),rr=t.copyCustomPrologue(Jt.statements,st,rr,ne,Y4),rr=t.copyCustomPrologue(Jt.statements,st,rr,ne,$4)),ct=kn(st,te)||ct,ct=Ct(st,te,!1)||ct,Xo(Jt))rr=t.copyCustomPrologue(Jt.statements,st,rr,ne),jt=Jt.statements,Jr(st,Vn(Jt.statements,ne,qi,rr)),!ct&&Jt.multiLine&&(ct=!0);else{N.assert(te.kind===219),jt=O3(Jt,-1);const $r=te.equalsGreaterThanToken;!$s($r)&&!$s(Jt)&&(gk($r,Jt,b)?Ft=!0:ct=!0);const io=nt(Jt,ne,yt),Fa=t.createReturnStatement(io);dt(Fa,Jt),Eae(Fa,Jt),pr(Fa,2880),st.push(Fa),F=Jt}if(t.mergeLexicalEnvironment(Te,s()),pt(Te,te),le(Te,te),bt(Te)&&(ct=!0),st.unshift(...Te),Xo(Jt)&&Km(st,Jt.statements))return Jt;const oi=t.createBlock(dt(t.createNodeArray(st),jt),ct);return dt(oi,te.body),!ct&&Ft&&pr(oi,1),F&&bae(oi,20,F),Cr(oi,te.body),oi}function Oe(te,ct){const Ft=I&256?K(7104,512):K(6976,128),jt=In(te,ne,e);return Z(Ft,0,0),jt}function Lt(te){return In(te,he,e)}function L(te,ct){return In(te,ct?he:ne,e)}function _e(te,ct){return jv(te)?tT(te,ne,e,0,!ct):te.operatorToken.kind===28?t.updateBinaryExpression(te,N.checkDefined(nt(te.left,he,yt)),te.operatorToken,N.checkDefined(nt(te.right,ct?he:ne,yt))):In(te,ne,e)}function J(te,ct){if(ct)return In(te,he,e);let Ft;for(let F=0;F<te.elements.length;F++){const Te=te.elements[F],st=nt(Te,F<te.elements.length-1?he:ne,yt);(Ft||st!==Te)&&(Ft||(Ft=te.elements.slice(0,F)),N.assert(st),Ft.push(st))}const jt=Ft?dt(t.createNodeArray(Ft),te.elements):te.elements;return t.updateCommaListExpression(te,jt)}function me(te){return te.declarationList.declarations.length===1&&!!te.declarationList.declarations[0].initializer&&!!(Am(te.declarationList.declarations[0].initializer)&1)}function Ge(te){const ct=K(0,Zr(te,32)?32:0);let Ft;if(C&&!(te.declarationList.flags&7)&&!me(te)){let jt;for(const F of te.declarationList.declarations)if(du(C,F),F.initializer){let Te;ta(F.name)?Te=tT(F,ne,e,0):(Te=t.createBinaryExpression(F.name,64,N.checkDefined(nt(F.initializer,ne,yt))),dt(Te,F)),jt=xn(jt,Te)}jt?Ft=dt(t.createExpressionStatement(t.inlineExpressions(jt)),te):Ft=void 0}else Ft=In(te,ne,e);return Z(ct,0,0),Ft}function ke(te){if(te.flags&7||te.transformFlags&524288){te.flags&7&&jd();const ct=Vn(te.declarations,te.flags&1?en:bn,wi),Ft=t.createVariableDeclarationList(ct);return Cr(Ft,te),dt(Ft,te),ac(Ft,te),te.transformFlags&524288&&(ta(te.declarations[0].name)||ta(Ya(te.declarations).name))&&Pa(Ft,Tt(ct)),Ft}return In(te,ne,e)}function Tt(te){let ct=-1,Ft=-1;for(const jt of te)ct=ct===-1?jt.pos:jt.pos===-1?ct:Math.min(ct,jt.pos),Ft=Math.max(Ft,jt.end);return xf(ct,Ft)}function kt(te){const ct=p.getNodeCheckFlags(te),Ft=ct&16384,jt=ct&32768;return!((I&64)!==0||Ft&&jt&&(I&512)!==0)&&(I&4096)===0&&(!p.isDeclarationWithCollidingName(te)||jt&&!Ft&&(I&6144)===0)}function en(te){const ct=te.name;return ta(ct)?bn(te):!te.initializer&&kt(te)?t.updateVariableDeclaration(te,te.name,void 0,void 0,t.createVoidZero()):In(te,ne,e)}function bn(te){const ct=K(32,0);let Ft;return ta(te.name)?Ft=h1(te,ne,e,0,void 0,(ct&32)!==0):Ft=In(te,ne,e),Z(ct,0,0),Ft}function Bn(te){C.labels.set(Sr(te.label),!0)}function Hn(te){C.labels.set(Sr(te.label),!1)}function Ni(te){C&&!C.labels&&(C.labels=new Map);const ct=Wj(te,C&&Bn);return Wy(ct,!1)?Ai(ct,te):t.restoreEnclosingLabel(N.checkDefined(nt(ct,ne,qi,t.liftToBlock)),te,C&&Hn)}function Ai(te,ct){switch(te.kind){case 246:case 247:return jr(te,ct);case 248:return vo(te,ct);case 249:return Ii(te,ct);case 250:return Kr(te,ct)}}function ir(te,ct,Ft,jt,F){const Te=K(te,ct),st=As(Ft,jt,Te,F);return Z(Te,0,0),st}function jr(te,ct){return ir(0,1280,te,ct)}function vo(te,ct){return ir(5056,3328,te,ct)}function Ci(te){return t.updateForStatement(te,nt(te.initializer,he,Af),nt(te.condition,ne,yt),nt(te.incrementor,he,yt),N.checkDefined(nt(te.statement,ne,qi,t.liftToBlock)))}function Ii(te,ct){return ir(3008,5376,te,ct)}function Kr(te,ct){return ir(3008,5376,te,ct,u.downlevelIteration?Ql:Fs)}function xo(te,ct,Ft){const jt=[],F=te.initializer;if(Uc(F)){te.initializer.flags&7&&jd();const Te=Xc(F.declarations);if(Te&&ta(Te.name)){const st=h1(Te,ne,e,0,ct),Jt=dt(t.createVariableDeclarationList(st),te.initializer);Cr(Jt,te.initializer),Pa(Jt,xf(st[0].pos,Ya(st).end)),jt.push(t.createVariableStatement(void 0,Jt))}else jt.push(dt(t.createVariableStatement(void 0,Cr(dt(t.createVariableDeclarationList([t.createVariableDeclaration(Te?Te.name:t.createTempVariable(void 0),void 0,void 0,ct)]),E0(F,-1)),F)),O3(F,-1)))}else{const Te=t.createAssignment(F,ct);jv(Te)?jt.push(t.createExpressionStatement(_e(Te,!0))):(FR(Te,F.end),jt.push(dt(t.createExpressionStatement(N.checkDefined(nt(Te,ne,yt))),O3(F,-1))))}if(Ft)return Dn(Jr(jt,Ft));{const Te=nt(te.statement,ne,qi,t.liftToBlock);return N.assert(Te),Xo(Te)?t.updateBlock(Te,dt(t.createNodeArray(So(jt,Te.statements)),Te.statements)):(jt.push(Te),Dn(jt))}}function Dn(te){return pr(t.createBlock(t.createNodeArray(te),!0),864)}function Fs(te,ct,Ft){const jt=nt(te.expression,ne,yt);N.assert(jt);const F=t.createLoopVariable(),Te=Ve(jt)?t.getGeneratedNameForNode(jt):t.createTempVariable(void 0);pr(jt,96|ja(jt));const st=dt(t.createForStatement(pr(dt(t.createVariableDeclarationList([dt(t.createVariableDeclaration(F,void 0,void 0,t.createNumericLiteral(0)),E0(te.expression,-1)),dt(t.createVariableDeclaration(Te,void 0,void 0,jt),te.expression)]),te.expression),4194304),dt(t.createLessThan(F,t.createPropertyAccessExpression(Te,"length")),te.expression),dt(t.createPostfixIncrement(F),te.expression),xo(te,t.createElementAccessExpression(Te,F),Ft)),te);return pr(st,512),dt(st,te),t.restoreEnclosingLabel(st,ct,C&&Hn)}function Ql(te,ct,Ft,jt){const F=nt(te.expression,ne,yt);N.assert(F);const Te=Ve(F)?t.getGeneratedNameForNode(F):t.createTempVariable(void 0),st=Ve(F)?t.getGeneratedNameForNode(Te):t.createTempVariable(void 0),Jt=t.createUniqueName("e"),rr=t.getGeneratedNameForNode(Jt),oi=t.createTempVariable(void 0),$r=dt(r().createValuesHelper(F),te.expression),io=t.createCallExpression(t.createPropertyAccessExpression(Te,"next"),void 0,[]);l(Jt),l(oi);const Fa=jt&1024?t.inlineExpressions([t.createAssignment(Jt,t.createVoidZero()),$r]):$r,za=pr(dt(t.createForStatement(pr(dt(t.createVariableDeclarationList([dt(t.createVariableDeclaration(Te,void 0,void 0,Fa),te.expression),t.createVariableDeclaration(st,void 0,void 0,io)]),te.expression),4194304),t.createLogicalNot(t.createPropertyAccessExpression(st,"done")),t.createAssignment(st,io),xo(te,t.createPropertyAccessExpression(st,"value"),Ft)),te),512);return t.createTryStatement(t.createBlock([t.restoreEnclosingLabel(za,ct,C&&Hn)]),t.createCatchClause(t.createVariableDeclaration(rr),pr(t.createBlock([t.createExpressionStatement(t.createAssignment(Jt,t.createObjectLiteralExpression([t.createPropertyAssignment("error",rr)])))]),1)),t.createBlock([t.createTryStatement(t.createBlock([pr(t.createIfStatement(t.createLogicalAnd(t.createLogicalAnd(st,t.createLogicalNot(t.createPropertyAccessExpression(st,"done"))),t.createAssignment(oi,t.createPropertyAccessExpression(Te,"return"))),t.createExpressionStatement(t.createFunctionCallCall(oi,Te,[]))),1)]),void 0,pr(t.createBlock([pr(t.createIfStatement(Jt,t.createThrowStatement(t.createPropertyAccessExpression(Jt,"error"))),1)]),1))]))}function Lo(te){const ct=te.properties;let Ft=-1,jt=!1;for(let Jt=0;Jt<ct.length;Jt++){const rr=ct[Jt];if(rr.transformFlags&1048576&&I&4||(jt=N.checkDefined(rr.name).kind===167)){Ft=Jt;break}}if(Ft<0)return In(te,ne,e);const F=t.createTempVariable(l),Te=[],st=t.createAssignment(F,pr(t.createObjectLiteralExpression(Vn(ct,ne,Wg,0,Ft),te.multiLine),jt?131072:0));return te.multiLine&&Xu(st),Te.push(st),un(Te,te,F,Ft),Te.push(te.multiLine?Xu(qa(dt(t.cloneNode(F),F),F.parent)):F),t.inlineExpressions(Te)}function cs(te){return(p.getNodeCheckFlags(te)&8192)!==0}function Vs(te){return HS(te)&&!!te.initializer&&cs(te.initializer)}function vl(te){return HS(te)&&!!te.condition&&cs(te.condition)}function uu(te){return HS(te)&&!!te.incrementor&&cs(te.incrementor)}function ho(te){return pa(te)||Vs(te)}function pa(te){return(p.getNodeCheckFlags(te)&4096)!==0}function du(te,ct){te.hoistedLocalVariables||(te.hoistedLocalVariables=[]),Ft(ct.name);function Ft(jt){if(jt.kind===80)te.hoistedLocalVariables.push(jt);else for(const F of jt.elements)jc(F)||Ft(F.name)}}function As(te,ct,Ft,jt){if(!ho(te)){let $r;C&&($r=C.allowedNonLabeledJumps,C.allowedNonLabeledJumps=6);const io=jt?jt(te,ct,void 0,Ft):t.restoreEnclosingLabel(HS(te)?Ci(te):In(te,ne,e),ct,C&&Hn);return C&&(C.allowedNonLabeledJumps=$r),io}const F=ko(te),Te=[],st=C;C=F;const Jt=Vs(te)?nu(te,F):void 0,rr=pa(te)?pu(te,F,st):void 0;C=st,Jt&&Te.push(Jt.functionDeclaration),rr&&Te.push(rr.functionDeclaration),nn(Te,F,st),Jt&&Te.push(Rc(Jt.functionName,Jt.containsYield));let oi;if(rr)if(jt)oi=jt(te,ct,rr.part,Ft);else{const $r=La(te,Jt,t.createBlock(rr.part,!0));oi=t.restoreEnclosingLabel($r,ct,C&&Hn)}else{const $r=La(te,Jt,N.checkDefined(nt(te.statement,ne,qi,t.liftToBlock)));oi=t.restoreEnclosingLabel($r,ct,C&&Hn)}return Te.push(oi),Te}function La(te,ct,Ft){switch(te.kind){case 248:return _l(te,ct,Ft);case 249:return lc(te,Ft);case 250:return wf(te,Ft);case 246:return Nl(te,Ft);case 247:return ul(te,Ft);default:return N.failBadSyntaxKind(te,"IterationStatement expected")}}function _l(te,ct,Ft){const jt=te.condition&&cs(te.condition),F=jt||te.incrementor&&cs(te.incrementor);return t.updateForStatement(te,nt(ct?ct.part:te.initializer,he,Af),nt(jt?void 0:te.condition,ne,yt),nt(F?void 0:te.incrementor,he,yt),Ft)}function wf(te,ct){return t.updateForOfStatement(te,void 0,N.checkDefined(nt(te.initializer,ne,Af)),N.checkDefined(nt(te.expression,ne,yt)),ct)}function lc(te,ct){return t.updateForInStatement(te,N.checkDefined(nt(te.initializer,ne,Af)),N.checkDefined(nt(te.expression,ne,yt)),ct)}function Nl(te,ct){return t.updateDoStatement(te,ct,N.checkDefined(nt(te.expression,ne,yt)))}function ul(te,ct){return t.updateWhileStatement(te,N.checkDefined(nt(te.expression,ne,yt)),ct)}function ko(te){let ct;switch(te.kind){case 248:case 249:case 250:const Te=te.initializer;Te&&Te.kind===261&&(ct=Te);break}const Ft=[],jt=[];if(ct&&Ov(ct)&7){const Te=Vs(te)||vl(te)||uu(te);for(const st of ct.declarations)Et(te,st,Ft,jt,Te)}const F={loopParameters:Ft,loopOutParameters:jt};return C&&(C.argumentsName&&(F.argumentsName=C.argumentsName),C.thisName&&(F.thisName=C.thisName),C.hoistedLocalVariables&&(F.hoistedLocalVariables=C.hoistedLocalVariables)),F}function nn(te,ct,Ft){let jt;if(ct.argumentsName&&(Ft?Ft.argumentsName=ct.argumentsName:(jt||(jt=[])).push(t.createVariableDeclaration(ct.argumentsName,void 0,void 0,t.createIdentifier("arguments")))),ct.thisName&&(Ft?Ft.thisName=ct.thisName:(jt||(jt=[])).push(t.createVariableDeclaration(ct.thisName,void 0,void 0,t.createIdentifier("this")))),ct.hoistedLocalVariables)if(Ft)Ft.hoistedLocalVariables=ct.hoistedLocalVariables;else{jt||(jt=[]);for(const F of ct.hoistedLocalVariables)jt.push(t.createVariableDeclaration(F))}if(ct.loopOutParameters.length){jt||(jt=[]);for(const F of ct.loopOutParameters)jt.push(t.createVariableDeclaration(F.outParamName))}ct.conditionVariable&&(jt||(jt=[]),jt.push(t.createVariableDeclaration(ct.conditionVariable,void 0,void 0,t.createFalse()))),jt&&te.push(t.createVariableStatement(void 0,t.createVariableDeclarationList(jt)))}function js(te){return t.createVariableDeclaration(te.originalName,void 0,void 0,te.outParamName)}function nu(te,ct){const Ft=t.createUniqueName("_loop_init"),jt=(te.initializer.transformFlags&1048576)!==0;let F=0;ct.containsLexicalThis&&(F|=16),jt&&I&4&&(F|=524288);const Te=[];Te.push(t.createVariableStatement(void 0,te.initializer)),Ms(ct.loopOutParameters,2,1,Te);const st=t.createVariableStatement(void 0,pr(t.createVariableDeclarationList([t.createVariableDeclaration(Ft,void 0,void 0,pr(t.createFunctionExpression(void 0,jt?t.createToken(42):void 0,void 0,void 0,void 0,void 0,N.checkDefined(nt(t.createBlock(Te,!0),ne,Xo))),F))]),4194304)),Jt=t.createVariableDeclarationList(wt(ct.loopOutParameters,js));return{functionName:Ft,containsYield:jt,functionDeclaration:st,part:Jt}}function pu(te,ct,Ft){const jt=t.createUniqueName("_loop");i();const F=nt(te.statement,ne,qi,t.liftToBlock),Te=s(),st=[];(vl(te)||uu(te))&&(ct.conditionVariable=t.createUniqueName("inc"),te.incrementor?st.push(t.createIfStatement(ct.conditionVariable,t.createExpressionStatement(N.checkDefined(nt(te.incrementor,ne,yt))),t.createExpressionStatement(t.createAssignment(ct.conditionVariable,t.createTrue())))):st.push(t.createIfStatement(t.createLogicalNot(ct.conditionVariable),t.createExpressionStatement(t.createAssignment(ct.conditionVariable,t.createTrue())))),vl(te)&&st.push(t.createIfStatement(t.createPrefixUnaryExpression(54,N.checkDefined(nt(te.condition,ne,yt))),N.checkDefined(nt(t.createBreakStatement(),ne,qi))))),N.assert(F),Xo(F)?Jr(st,F.statements):st.push(F),Ms(ct.loopOutParameters,1,1,st),eg(st,Te);const Jt=t.createBlock(st,!0);Xo(F)&&Cr(Jt,F);const rr=(te.statement.transformFlags&1048576)!==0;let oi=1048576;ct.containsLexicalThis&&(oi|=16),rr&&I&4&&(oi|=524288);const $r=t.createVariableStatement(void 0,pr(t.createVariableDeclarationList([t.createVariableDeclaration(jt,void 0,void 0,pr(t.createFunctionExpression(void 0,rr?t.createToken(42):void 0,void 0,void 0,ct.loopParameters,void 0,Jt),oi))]),4194304)),io=de(jt,ct,Ft,rr);return{functionName:jt,containsYield:rr,functionDeclaration:$r,part:io}}function Ip(te,ct){const Ft=ct===0?te.outParamName:te.originalName,jt=ct===0?te.originalName:te.outParamName;return t.createBinaryExpression(jt,64,Ft)}function Ms(te,ct,Ft,jt){for(const F of te)F.flags&ct&&jt.push(t.createExpressionStatement(Ip(F,Ft)))}function Rc(te,ct){const Ft=t.createCallExpression(te,void 0,[]),jt=ct?t.createYieldExpression(t.createToken(42),pr(Ft,8388608)):Ft;return t.createExpressionStatement(jt)}function de(te,ct,Ft,jt){const F=[],Te=!(ct.nonLocalJumps&-5)&&!ct.labeledNonLocalBreaks&&!ct.labeledNonLocalContinues,st=t.createCallExpression(te,void 0,wt(ct.loopParameters,rr=>rr.name)),Jt=jt?t.createYieldExpression(t.createToken(42),pr(st,8388608)):st;if(Te)F.push(t.createExpressionStatement(Jt)),Ms(ct.loopOutParameters,1,0,F);else{const rr=t.createUniqueName("state"),oi=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(rr,void 0,void 0,Jt)]));if(F.push(oi),Ms(ct.loopOutParameters,1,0,F),ct.nonLocalJumps&8){let $r;Ft?(Ft.nonLocalJumps|=8,$r=t.createReturnStatement(rr)):$r=t.createReturnStatement(t.createPropertyAccessExpression(rr,"value")),F.push(t.createIfStatement(t.createTypeCheck(rr,"object"),$r))}if(ct.nonLocalJumps&2&&F.push(t.createIfStatement(t.createStrictEquality(rr,t.createStringLiteral("break")),t.createBreakStatement())),ct.labeledNonLocalBreaks||ct.labeledNonLocalContinues){const $r=[];we(ct.labeledNonLocalBreaks,!0,rr,Ft,$r),we(ct.labeledNonLocalContinues,!1,rr,Ft,$r),F.push(t.createSwitchStatement(rr,t.createCaseBlock($r)))}}return F}function ee(te,ct,Ft,jt){ct?(te.labeledNonLocalBreaks||(te.labeledNonLocalBreaks=new Map),te.labeledNonLocalBreaks.set(Ft,jt)):(te.labeledNonLocalContinues||(te.labeledNonLocalContinues=new Map),te.labeledNonLocalContinues.set(Ft,jt))}function we(te,ct,Ft,jt,F){te&&te.forEach((Te,st)=>{const Jt=[];if(!jt||jt.labels&&jt.labels.get(st)){const rr=t.createIdentifier(st);Jt.push(ct?t.createBreakStatement(rr):t.createContinueStatement(rr))}else ee(jt,ct,st,Te),Jt.push(t.createReturnStatement(Ft));F.push(t.createCaseClause(t.createStringLiteral(Te),Jt))})}function Et(te,ct,Ft,jt,F){const Te=ct.name;if(ta(Te))for(const st of Te.elements)jc(st)||Et(te,st,Ft,jt,F);else{Ft.push(t.createParameterDeclaration(void 0,void 0,Te));const st=p.getNodeCheckFlags(ct);if(st&65536||F){const Jt=t.createUniqueName("out_"+Sr(Te));let rr=0;st&65536&&(rr|=1),HS(te)&&(te.initializer&&p.isBindingCapturedByNode(te.initializer,ct)&&(rr|=2),(te.condition&&p.isBindingCapturedByNode(te.condition,ct)||te.incrementor&&p.isBindingCapturedByNode(te.incrementor,ct))&&(rr|=1)),jt.push({flags:rr,originalName:Te,outParamName:Jt})}}}function un(te,ct,Ft,jt){const F=ct.properties,Te=F.length;for(let st=jt;st<Te;st++){const Jt=F[st];switch(Jt.kind){case 177:case 178:const rr=wS(ct.properties,Jt);Jt===rr.firstAccessor&&te.push(_t(Ft,rr,ct,!!ct.multiLine));break;case 174:te.push(Ur(Jt,Ft,ct,ct.multiLine));break;case 303:te.push(Er(Jt,Ft,ct.multiLine));break;case 304:te.push(vr(Jt,Ft,ct.multiLine));break;default:N.failBadSyntaxKind(ct);break}}}function Er(te,ct,Ft){const jt=t.createAssignment($S(t,ct,N.checkDefined(nt(te.name,ne,oc))),N.checkDefined(nt(te.initializer,ne,yt)));return dt(jt,te),Ft&&Xu(jt),jt}function vr(te,ct,Ft){const jt=t.createAssignment($S(t,ct,N.checkDefined(nt(te.name,ne,oc))),t.cloneNode(te.name));return dt(jt,te),Ft&&Xu(jt),jt}function Ur(te,ct,Ft,jt){const F=t.createAssignment($S(t,ct,N.checkDefined(nt(te.name,ne,oc))),_n(te,te,void 0,Ft));return dt(F,te),jt&&Xu(F),F}function xi(te){const ct=K(7104,0);let Ft;if(N.assert(!!te.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015."),ta(te.variableDeclaration.name)){const jt=t.createTempVariable(void 0),F=t.createVariableDeclaration(jt);dt(F,te.variableDeclaration);const Te=h1(te.variableDeclaration,ne,e,0,jt),st=t.createVariableDeclarationList(Te);dt(st,te.variableDeclaration);const Jt=t.createVariableStatement(void 0,st);Ft=t.updateCatchClause(te,F,Lr(te.block,Jt))}else Ft=In(te,ne,e);return Z(ct,0,0),Ft}function Lr(te,ct){const Ft=Vn(te.statements,ne,qi);return t.updateBlock(te,[ct,...Ft])}function $o(te){N.assert(!Za(te.name));const ct=_n(te,E0(te,-1),void 0,void 0);return pr(ct,1024|ja(ct)),dt(t.createPropertyAssignment(te.name,ct),te)}function Tl(te){N.assert(!Za(te.name));const ct=C;C=void 0;const Ft=K(32670,65);let jt;const F=Dl(te.parameters,ne,e),Te=q(te);return te.kind===177?jt=t.updateGetAccessorDeclaration(te,te.modifiers,te.name,F,te.type,Te):jt=t.updateSetAccessorDeclaration(te,te.modifiers,te.name,F,Te),Z(Ft,229376,0),C=ct,jt}function Hc(te){return dt(t.createPropertyAssignment(te.name,Ee(t.cloneNode(te.name))),te)}function Us(te){return In(te,ne,e)}function vc(te){return In(te,ne,e)}function Ss(te){return bt(te.elements,e_)?gd(te.elements,!1,!!te.multiLine,!!te.elements.hasTrailingComma):In(te,ne,e)}function qc(te){if(Am(te)&1)return op(te);const ct=$l(te.expression);return ct.kind===108||zd(ct)||bt(te.arguments,e_)?Wc(te):t.updateCallExpression(te,N.checkDefined(nt(te.expression,$,yt)),void 0,Vn(te.arguments,ne,yt))}function op(te){const ct=aa(aa($l(te.expression),Gs).body,Xo),Ft=Hd=>Ll(Hd)&&!!Ha(Hd.declarationList.declarations).initializer,jt=C;C=void 0;const F=Vn(ct.statements,ye,qi);C=jt;const Te=nr(F,Ft),st=nr(F,Hd=>!Ft(Hd)),rr=aa(Ha(Te),Ll).declarationList.declarations[0],oi=$l(rr.initializer);let $r=ii(oi,Lc);!$r&&mr(oi)&&oi.operatorToken.kind===28&&($r=ii(oi.left,Lc));const io=aa($r?$l($r.right):oi,la),Fa=aa($l(io.expression),Os),za=Fa.body.statements;let Ol=0,fu=-1;const Dc=[];if($r){const Hd=ii(za[Ol],eu);Hd&&(Dc.push(Hd),Ol++),Dc.push(za[Ol]),Ol++,Dc.push(t.createExpressionStatement(t.createAssignment($r.left,aa(rr.name,Ve))))}for(;!Dm(Lv(za,fu));)fu--;Jr(Dc,za,Ol,fu),fu<-1&&Jr(Dc,za,fu+1);const Rp=ii(Lv(za,fu),Dm);for(const Hd of st)Dm(Hd)&&(Rp!=null&&Rp.expression)&&!Ve(Rp.expression)?Dc.push(Rp):Dc.push(Hd);return Jr(Dc,Te,1),t.restoreOuterExpressions(te.expression,t.restoreOuterExpressions(rr.initializer,t.restoreOuterExpressions($r&&$r.right,t.updateCallExpression(io,t.restoreOuterExpressions(io.expression,t.updateFunctionExpression(Fa,void 0,void 0,void 0,void 0,Fa.parameters,void 0,t.updateBlock(Fa.body,Dc))),void 0,io.arguments))))}function Wc(te,ct){if(te.transformFlags&32768||te.expression.kind===108||zd($l(te.expression))){const{target:Ft,thisArg:jt}=t.createCallBinding(te.expression,l);te.expression.kind===108&&pr(jt,8);let F;if(te.transformFlags&32768?F=t.createFunctionApplyCall(N.checkDefined(nt(Ft,$,yt)),te.expression.kind===108?jt:N.checkDefined(nt(jt,ne,yt)),gd(te.arguments,!0,!1,!1)):F=dt(t.createFunctionCallCall(N.checkDefined(nt(Ft,$,yt)),te.expression.kind===108?jt:N.checkDefined(nt(jt,ne,yt)),Vn(te.arguments,ne,yt)),te),te.expression.kind===108){const Te=t.createLogicalOr(F,Io());F=t.createAssignment(ie(),Te)}return Cr(F,te)}return IS(te)&&(I|=131072),In(te,ne,e)}function cm(te){if(bt(te.arguments,e_)){const{target:ct,thisArg:Ft}=t.createCallBinding(t.createPropertyAccessExpression(te.expression,"bind"),l);return t.createNewExpression(t.createFunctionApplyCall(N.checkDefined(nt(ct,ne,yt)),Ft,gd(t.createNodeArray([t.createVoidZero(),...te.arguments]),!0,!1,!1)),void 0,[])}return In(te,ne,e)}function gd(te,ct,Ft,jt){const F=te.length,Te=ia(lG(te,Ce,(oi,$r,io,Fa)=>$r(oi,Ft,jt&&Fa===F)));if(Te.length===1){const oi=Te[0];if(ct&&!u.downlevelIteration||UU(oi.expression)||mP(oi.expression,"___spreadArray"))return oi.expression}const st=r(),Jt=Te[0].kind!==0;let rr=Jt?t.createArrayLiteralExpression():Te[0].expression;for(let oi=Jt?0:1;oi<Te.length;oi++){const $r=Te[oi];rr=st.createSpreadArrayHelper(rr,$r.expression,$r.kind===1&&!ct)}return rr}function Ce(te){return e_(te)?Wt:yo}function Wt(te){return wt(te,Jn)}function Jn(te){N.assertNode(te,e_);let ct=nt(te.expression,ne,yt);N.assert(ct);const Ft=mP(ct,"___read");let jt=Ft||UU(ct)?2:1;return u.downlevelIteration&&jt===1&&!_d(ct)&&!Ft&&(ct=r().createReadHelper(ct,void 0),jt=2),Xxe(jt,ct)}function yo(te,ct,Ft){const jt=t.createArrayLiteralExpression(Vn(t.createNodeArray(te,Ft),ne,yt),ct);return Xxe(0,jt)}function Qo(te){return nt(te.expression,ne,yt)}function na(te){return dt(t.createStringLiteral(te.text),te)}function Zl(te){return te.hasExtendedUnicodeEscape?dt(t.createStringLiteral(te.text),te):te}function yc(te){return te.numericLiteralFlags&384?dt(t.createNumericLiteral(te.text),te):te}function dl(te){return fJ(e,te,ne,b,M,1)}function yl(te){let ct=t.createStringLiteral(te.head.text);for(const Ft of te.templateSpans){const jt=[N.checkDefined(nt(Ft.expression,ne,yt))];Ft.literal.text.length>0&&jt.push(t.createStringLiteral(Ft.literal.text)),ct=t.createCallExpression(t.createPropertyAccessExpression(ct,"concat"),void 0,jt)}return dt(ct,te)}function Vl(){return t.createUniqueName("_super",48)}function ec(te,ct){const Ft=I&8&&!ct?t.createPropertyAccessExpression(Cr(Vl(),te),"prototype"):Vl();return Cr(Ft,te),ac(Ft,te),Pa(Ft,te),Ft}function Jc(te){return te.keywordToken===105&&te.name.escapedText==="target"?(I|=32768,t.createUniqueName("_newTarget",48)):te}function ff(te,ct,Ft){if(O&1&&ea(ct)){const jt=K(32670,ja(ct)&16?81:65);m(te,ct,Ft),Z(jt,0,0);return}m(te,ct,Ft)}function jd(){O&2||(O|=2,e.enableSubstitution(80))}function Cd(){O&1||(O|=1,e.enableSubstitution(110),e.enableEmitNotification(176),e.enableEmitNotification(174),e.enableEmitNotification(177),e.enableEmitNotification(178),e.enableEmitNotification(219),e.enableEmitNotification(218),e.enableEmitNotification(262))}function Of(te,ct){return ct=h(te,ct),te===1?$g(ct):Ve(ct)?U_(ct):ct}function U_(te){if(O&2&&!KH(te)){const ct=Do(te,Ve);if(ct&&Ch(ct))return dt(t.getGeneratedNameForNode(ct),te)}return te}function Ch(te){switch(te.parent.kind){case 208:case 263:case 266:case 260:return te.parent.name===te&&p.isDeclarationWithCollidingName(te.parent)}return!1}function $g(te){switch(te.kind){case 80:return Bu(te);case 110:return xp(te)}return te}function Bu(te){if(O&2&&!KH(te)){const ct=p.getReferencedDeclarationWithCollidingName(te);if(ct&&!(ui(ct)&&Qg(ct,te)))return dt(t.getGeneratedNameForNode(Mo(ct)),te)}return te}function Qg(te,ct){let Ft=Do(ct);if(!Ft||Ft===te||Ft.end<=te.pos||Ft.pos>=te.end)return!1;const jt=hh(te);for(;Ft;){if(Ft===jt||Ft===te)return!1;if($c(Ft)&&Ft.parent===te)return!0;Ft=Ft.parent}return!1}function xp(te){return O&1&&I&16?dt(ie(),te):te}function _g(te,ct){return sa(ct)?t.getInternalName(te):t.createPropertyAccessExpression(t.getInternalName(te),"prototype")}function Ud(te,ct){if(!te||!ct||bt(te.parameters))return!1;const Ft=Xc(te.body.statements);if(!Ft||!$s(Ft)||Ft.kind!==244)return!1;const jt=Ft.expression;if(!$s(jt)||jt.kind!==213)return!1;const F=jt.expression;if(!$s(F)||F.kind!==108)return!1;const Te=sh(jt.arguments);if(!Te||!$s(Te)||Te.kind!==230)return!1;const st=Te.expression;return Ve(st)&&st.escapedText==="arguments"}}var $Ue=T({"src/compiler/transformers/es2015.ts"(){ra()}});function ice(e){const{factory:t}=e,r=e.getCompilerOptions();let i,o;(r.jsx===1||r.jsx===3)&&(i=e.onEmitNode,e.onEmitNode=u,e.enableEmitNotification(286),e.enableEmitNotification(287),e.enableEmitNotification(285),o=[]);const s=e.onSubstituteNode;return e.onSubstituteNode=p,e.enableSubstitution(211),e.enableSubstitution(303),Pm(e,l);function l(A){return A}function u(A,I,R){switch(I.kind){case 286:case 287:case 285:const M=I.tagName;o[Wu(M)]=!0;break}i(A,I,R)}function p(A,I){return I.id&&o&&o[I.id]?s(A,I):(I=s(A,I),Fr(I)?h(I):hc(I)?m(I):I)}function h(A){if(Ji(A.name))return A;const I=b(A.name);return I?dt(t.createElementAccessExpression(A.expression,I),A):A}function m(A){const I=Ve(A.name)&&b(A.name);return I?t.updatePropertyAssignment(A,I,A.initializer):A}function b(A){const I=u0(A);if(I!==void 0&&I>=83&&I<=118)return dt(t.createStringLiteralFromNode(A),A)}}var QUe=T({"src/compiler/transformers/es5.ts"(){ra()}});function ZUe(e){switch(e){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return}}function oce(e){const{factory:t,getEmitHelperFactory:r,resumeLexicalEnvironment:i,endLexicalEnvironment:o,hoistFunctionDeclaration:s,hoistVariableDeclaration:l}=e,u=e.getCompilerOptions(),p=os(u),h=e.getEmitResolver(),m=e.onSubstituteNode;e.onSubstituteNode=Lt;let b,A,I,R,M,C,O,U,K,Z,V=1,se,G,ne,he,ye=0,$=0,Y,oe,fe,Ne,pe,ie,ve,Le;return Pm(e,He);function He(Ce){if(Ce.isDeclarationFile||!(Ce.transformFlags&2048))return Ce;const Wt=In(Ce,Ee,e);return Ug(Wt,e.readEmitHelpers()),Wt}function Ee(Ce){const Wt=Ce.transformFlags;return R?De(Ce):I?Pe(Ce):Bs(Ce)&&Ce.asteriskToken?At(Ce):Wt&2048?In(Ce,Ee,e):Ce}function De(Ce){switch(Ce.kind){case 246:return ma(Ce);case 247:return Sn(Ce);case 255:return _t(Ce);case 256:return vn(Ce);default:return Pe(Ce)}}function Pe(Ce){switch(Ce.kind){case 262:return Se(Ce);case 218:return je(Ce);case 177:case 178:return at(Ce);case 243:return vt(Ce);case 248:return qe(Ce);case 249:return ft(Ce);case 252:return pt(Ce);case 251:return le(Ce);case 253:return ot(Ce);default:return Ce.transformFlags&1048576?We(Ce):Ce.transformFlags&4196352?In(Ce,Ee,e):Ce}}function We(Ce){switch(Ce.kind){case 226:return $e(Ce);case 361:return Pn(Ce);case 227:return hn(Ce);case 229:return Qt(Ce);case 209:return $t(Ce);case 210:return ao(Ce);case 212:return Oi(Ce);case 213:return No(Ce);case 214:return Mn(Ce);default:return In(Ce,Ee,e)}}function At(Ce){switch(Ce.kind){case 262:return Se(Ce);case 218:return je(Ce);default:return N.failBadSyntaxKind(Ce)}}function Se(Ce){if(Ce.asteriskToken)Ce=Cr(dt(t.createFunctionDeclaration(Ce.modifiers,void 0,Ce.name,void 0,Dl(Ce.parameters,Ee,e),void 0,Gt(Ce.body)),Ce),Ce);else{const Wt=I,Jn=R;I=!1,R=!1,Ce=In(Ce,Ee,e),I=Wt,R=Jn}if(I){s(Ce);return}else return Ce}function je(Ce){if(Ce.asteriskToken)Ce=Cr(dt(t.createFunctionExpression(void 0,void 0,Ce.name,void 0,Dl(Ce.parameters,Ee,e),void 0,Gt(Ce.body)),Ce),Ce);else{const Wt=I,Jn=R;I=!1,R=!1,Ce=In(Ce,Ee,e),I=Wt,R=Jn}return Ce}function at(Ce){const Wt=I,Jn=R;return I=!1,R=!1,Ce=In(Ce,Ee,e),I=Wt,R=Jn,Ce}function Gt(Ce){const Wt=[],Jn=I,yo=R,Qo=M,na=C,Zl=O,yc=U,dl=K,yl=Z,Vl=V,ec=se,Jc=G,ff=ne,jd=he;I=!0,R=!1,M=void 0,C=void 0,O=void 0,U=void 0,K=void 0,Z=void 0,V=1,se=void 0,G=void 0,ne=void 0,he=t.createTempVariable(void 0),i();const Cd=t.copyPrologue(Ce.statements,Wt,!1,Ee);Di(Ce.statements,Cd);const Of=ee();return eg(Wt,o()),Wt.push(t.createReturnStatement(Of)),I=Jn,R=yo,M=Qo,C=na,O=Zl,U=yc,K=dl,Z=yl,V=Vl,se=ec,G=Jc,ne=ff,he=jd,dt(t.createBlock(Wt,Ce.multiLine),Ce)}function vt(Ce){if(Ce.transformFlags&1048576){li(Ce.declarationList);return}else{if(ja(Ce)&2097152)return Ce;for(const Jn of Ce.declarationList.declarations)l(Jn.name);const Wt=HC(Ce.declarationList);return Wt.length===0?void 0:Pa(t.createExpressionStatement(t.inlineExpressions(wt(Wt,hi))),Ce)}}function $e(Ce){const Wt=aU(Ce);switch(Wt){case 0:return tn(Ce);case 1:return It(Ce);default:return N.assertNever(Wt)}}function It(Ce){const{left:Wt,right:Jn}=Ce;if(q(Jn)){let yo;switch(Wt.kind){case 211:yo=t.updatePropertyAccessExpression(Wt,J(N.checkDefined(nt(Wt.expression,Ee,ep))),Wt.name);break;case 212:yo=t.updateElementAccessExpression(Wt,J(N.checkDefined(nt(Wt.expression,Ee,ep))),J(N.checkDefined(nt(Wt.argumentExpression,Ee,yt))));break;default:yo=N.checkDefined(nt(Wt,Ee,yt));break}const Qo=Ce.operatorToken.kind;return BP(Qo)?dt(t.createAssignment(yo,dt(t.createBinaryExpression(J(yo),GP(Qo),N.checkDefined(nt(Jn,Ee,yt))),Ce)),Ce):t.updateBinaryExpression(Ce,yo,Ce.operatorToken,N.checkDefined(nt(Jn,Ee,yt)))}return In(Ce,Ee,e)}function tn(Ce){return q(Ce.right)?goe(Ce.operatorToken.kind)?Xn(Ce):Ce.operatorToken.kind===28?rn(Ce):t.updateBinaryExpression(Ce,J(N.checkDefined(nt(Ce.left,Ee,yt))),Ce.operatorToken,N.checkDefined(nt(Ce.right,Ee,yt))):In(Ce,Ee,e)}function rn(Ce){let Wt=[];return Jn(Ce.left),Jn(Ce.right),t.inlineExpressions(Wt);function Jn(yo){mr(yo)&&yo.operatorToken.kind===28?(Jn(yo.left),Jn(yo.right)):(q(yo)&&Wt.length>0&&(de(1,[t.createExpressionStatement(t.inlineExpressions(Wt))]),Wt=[]),Wt.push(N.checkDefined(nt(yo,Ee,yt))))}}function Pn(Ce){let Wt=[];for(const Jn of Ce.elements)mr(Jn)&&Jn.operatorToken.kind===28?Wt.push(rn(Jn)):(q(Jn)&&Wt.length>0&&(de(1,[t.createExpressionStatement(t.inlineExpressions(Wt))]),Wt=[]),Wt.push(N.checkDefined(nt(Jn,Ee,yt))));return t.inlineExpressions(Wt)}function Xn(Ce){const Wt=Ge(),Jn=me();return ul(Jn,N.checkDefined(nt(Ce.left,Ee,yt)),Ce.left),Ce.operatorToken.kind===56?js(Wt,Jn,Ce.left):nn(Wt,Jn,Ce.left),ul(Jn,N.checkDefined(nt(Ce.right,Ee,yt)),Ce.right),ke(Wt),Jn}function hn(Ce){if(q(Ce.whenTrue)||q(Ce.whenFalse)){const Wt=Ge(),Jn=Ge(),yo=me();return js(Wt,N.checkDefined(nt(Ce.condition,Ee,yt)),Ce.condition),ul(yo,N.checkDefined(nt(Ce.whenTrue,Ee,yt)),Ce.whenTrue),ko(Jn),ke(Wt),ul(yo,N.checkDefined(nt(Ce.whenFalse,Ee,yt)),Ce.whenFalse),ke(Jn),yo}return In(Ce,Ee,e)}function Qt(Ce){const Wt=Ge(),Jn=nt(Ce.expression,Ee,yt);if(Ce.asteriskToken){const yo=ja(Ce.expression)&8388608?Jn:dt(r().createValuesHelper(Jn),Ce);nu(yo,Ce)}else pu(Jn,Ce);return ke(Wt),wf(Ce)}function $t(Ce){return _i(Ce.elements,void 0,void 0,Ce.multiLine)}function _i(Ce,Wt,Jn,yo){const Qo=Oe(Ce);let na;if(Qo>0){na=me();const dl=Vn(Ce,Ee,yt,0,Qo);ul(na,t.createArrayLiteralExpression(Wt?[Wt,...dl]:dl)),Wt=void 0}const Zl=od(Ce,yc,[],Qo);return na?t.createArrayConcatCall(na,[t.createArrayLiteralExpression(Zl,yo)]):dt(t.createArrayLiteralExpression(Wt?[Wt,...Zl]:Zl,yo),Jn);function yc(dl,yl){if(q(yl)&&dl.length>0){const Vl=na!==void 0;na||(na=me()),ul(na,Vl?t.createArrayConcatCall(na,[t.createArrayLiteralExpression(dl,yo)]):t.createArrayLiteralExpression(Wt?[Wt,...dl]:dl,yo)),Wt=void 0,dl=[]}return dl.push(N.checkDefined(nt(yl,Ee,yt))),dl}}function ao(Ce){const Wt=Ce.properties,Jn=Ce.multiLine,yo=Oe(Wt),Qo=me();ul(Qo,t.createObjectLiteralExpression(Vn(Wt,Ee,Wg,0,yo),Jn));const na=od(Wt,Zl,[],yo);return na.push(Jn?Xu(qa(dt(t.cloneNode(Qo),Qo),Qo.parent)):Qo),t.inlineExpressions(na);function Zl(yc,dl){q(dl)&&yc.length>0&&(Nl(t.createExpressionStatement(t.inlineExpressions(yc))),yc=[]);const yl=ose(t,Ce,dl,Qo),Vl=nt(yl,Ee,yt);return Vl&&(Jn&&Xu(Vl),yc.push(Vl)),yc}}function Oi(Ce){return q(Ce.argumentExpression)?t.updateElementAccessExpression(Ce,J(N.checkDefined(nt(Ce.expression,Ee,ep))),N.checkDefined(nt(Ce.argumentExpression,Ee,yt))):In(Ce,Ee,e)}function No(Ce){if(!Bp(Ce)&&Ue(Ce.arguments,q)){const{target:Wt,thisArg:Jn}=t.createCallBinding(Ce.expression,l,p,!0);return Cr(dt(t.createFunctionApplyCall(J(N.checkDefined(nt(Wt,Ee,ep))),Jn,_i(Ce.arguments)),Ce),Ce)}return In(Ce,Ee,e)}function Mn(Ce){if(Ue(Ce.arguments,q)){const{target:Wt,thisArg:Jn}=t.createCallBinding(t.createPropertyAccessExpression(Ce.expression,"bind"),l);return Cr(dt(t.createNewExpression(t.createFunctionApplyCall(J(N.checkDefined(nt(Wt,Ee,yt))),Jn,_i(Ce.arguments,t.createVoidZero())),void 0,[]),Ce),Ce)}return In(Ce,Ee,e)}function Di(Ce,Wt=0){const Jn=Ce.length;for(let yo=Wt;yo<Jn;yo++)sn(Ce[yo])}function Ar(Ce){Xo(Ce)?Di(Ce.statements):sn(Ce)}function sn(Ce){const Wt=R;R||(R=q(Ce)),tt(Ce),R=Wt}function tt(Ce){switch(Ce.kind){case 241:return zt(Ce);case 244:return Rn(Ce);case 245:return Qi(Ce);case 246:return Io(Ce);case 247:return Wa(Ce);case 248:return kn(Ce);case 249:return mt(Ce);case 251:return Ct(Ce);case 252:return Fe(Ce);case 253:return j(Ce);case 254:return Rt(Ce);case 255:return Ye(Ce);case 256:return Vt(Ce);case 257:return fn(Ce);case 258:return _n(Ce);default:return Nl(nt(Ce,Ee,qi))}}function zt(Ce){q(Ce)?Di(Ce.statements):Nl(nt(Ce,Ee,qi))}function Rn(Ce){Nl(nt(Ce,Ee,qi))}function li(Ce){for(const na of Ce.declarations){const Zl=t.cloneNode(na.name);ac(Zl,na.name),l(Zl)}const Wt=HC(Ce),Jn=Wt.length;let yo=0,Qo=[];for(;yo<Jn;){for(let na=yo;na<Jn;na++){const Zl=Wt[na];if(q(Zl.initializer)&&Qo.length>0)break;Qo.push(hi(Zl))}Qo.length&&(Nl(t.createExpressionStatement(t.inlineExpressions(Qo))),yo+=Qo.length,Qo=[])}}function hi(Ce){return Pa(t.createAssignment(Pa(t.cloneNode(Ce.name),Ce.name),N.checkDefined(nt(Ce.initializer,Ee,yt))),Ce)}function Qi(Ce){if(q(Ce))if(q(Ce.thenStatement)||q(Ce.elseStatement)){const Wt=Ge(),Jn=Ce.elseStatement?Ge():void 0;js(Ce.elseStatement?Jn:Wt,N.checkDefined(nt(Ce.expression,Ee,yt)),Ce.expression),Ar(Ce.thenStatement),Ce.elseStatement&&(ko(Wt),ke(Jn),Ar(Ce.elseStatement)),ke(Wt)}else Nl(nt(Ce,Ee,qi));else Nl(nt(Ce,Ee,qi))}function Io(Ce){if(q(Ce)){const Wt=Ge(),Jn=Ge();Ci(Wt),ke(Jn),Ar(Ce.statement),ke(Wt),nn(Jn,N.checkDefined(nt(Ce.expression,Ee,yt))),Ii()}else Nl(nt(Ce,Ee,qi))}function ma(Ce){return R?(vo(),Ce=In(Ce,Ee,e),Ii(),Ce):In(Ce,Ee,e)}function Wa(Ce){if(q(Ce)){const Wt=Ge(),Jn=Ci(Wt);ke(Wt),js(Jn,N.checkDefined(nt(Ce.expression,Ee,yt))),Ar(Ce.statement),ko(Wt),Ii()}else Nl(nt(Ce,Ee,qi))}function Sn(Ce){return R?(vo(),Ce=In(Ce,Ee,e),Ii(),Ce):In(Ce,Ee,e)}function kn(Ce){if(q(Ce)){const Wt=Ge(),Jn=Ge(),yo=Ci(Jn);if(Ce.initializer){const Qo=Ce.initializer;Uc(Qo)?li(Qo):Nl(dt(t.createExpressionStatement(N.checkDefined(nt(Qo,Ee,yt))),Qo))}ke(Wt),Ce.condition&&js(yo,N.checkDefined(nt(Ce.condition,Ee,yt))),Ar(Ce.statement),ke(Jn),Ce.incrementor&&Nl(dt(t.createExpressionStatement(N.checkDefined(nt(Ce.incrementor,Ee,yt))),Ce.incrementor)),ko(Wt),Ii()}else Nl(nt(Ce,Ee,qi))}function qe(Ce){R&&vo();const Wt=Ce.initializer;if(Wt&&Uc(Wt)){for(const yo of Wt.declarations)l(yo.name);const Jn=HC(Wt);Ce=t.updateForStatement(Ce,Jn.length>0?t.inlineExpressions(wt(Jn,hi)):void 0,nt(Ce.condition,Ee,yt),nt(Ce.incrementor,Ee,yt),Rd(Ce.statement,Ee,e))}else Ce=In(Ce,Ee,e);return R&&Ii(),Ce}function mt(Ce){if(q(Ce)){const Wt=me(),Jn=me(),yo=me(),Qo=t.createLoopVariable(),na=Ce.initializer;l(Qo),ul(Wt,N.checkDefined(nt(Ce.expression,Ee,yt))),ul(Jn,t.createArrayLiteralExpression()),Nl(t.createForInStatement(yo,Wt,t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(Jn,"push"),void 0,[yo])))),ul(Qo,t.createNumericLiteral(0));const Zl=Ge(),yc=Ge(),dl=Ci(yc);ke(Zl),js(dl,t.createLessThan(Qo,t.createPropertyAccessExpression(Jn,"length"))),ul(yo,t.createElementAccessExpression(Jn,Qo)),js(yc,t.createBinaryExpression(yo,103,Wt));let yl;if(Uc(na)){for(const Vl of na.declarations)l(Vl.name);yl=t.cloneNode(na.declarations[0].name)}else yl=N.checkDefined(nt(na,Ee,yt)),N.assert(ep(yl));ul(yl,yo),Ar(Ce.statement),ke(yc),Nl(t.createExpressionStatement(t.createPostfixIncrement(Qo))),ko(Zl),Ii()}else Nl(nt(Ce,Ee,qi))}function ft(Ce){R&&vo();const Wt=Ce.initializer;if(Uc(Wt)){for(const Jn of Wt.declarations)l(Jn.name);Ce=t.updateForInStatement(Ce,Wt.declarations[0].name,N.checkDefined(nt(Ce.expression,Ee,yt)),N.checkDefined(nt(Ce.statement,Ee,qi,t.liftToBlock)))}else Ce=In(Ce,Ee,e);return R&&Ii(),Ce}function Ct(Ce){const Wt=pa(Ce.label?Sr(Ce.label):void 0);Wt>0?ko(Wt,Ce):Nl(Ce)}function le(Ce){if(R){const Wt=pa(Ce.label&&Sr(Ce.label));if(Wt>0)return La(Wt,Ce)}return In(Ce,Ee,e)}function Fe(Ce){const Wt=ho(Ce.label?Sr(Ce.label):void 0);Wt>0?ko(Wt,Ce):Nl(Ce)}function pt(Ce){if(R){const Wt=ho(Ce.label&&Sr(Ce.label));if(Wt>0)return La(Wt,Ce)}return In(Ce,Ee,e)}function j(Ce){Ip(nt(Ce.expression,Ee,yt),Ce)}function ot(Ce){return _l(nt(Ce.expression,Ee,yt),Ce)}function Rt(Ce){q(Ce)?(Bn(J(N.checkDefined(nt(Ce.expression,Ee,yt)))),Ar(Ce.statement),Hn()):Nl(nt(Ce,Ee,qi))}function Ye(Ce){if(q(Ce.caseBlock)){const Wt=Ce.caseBlock,Jn=Wt.clauses.length,yo=xo(),Qo=J(N.checkDefined(nt(Ce.expression,Ee,yt))),na=[];let Zl=-1;for(let yl=0;yl<Jn;yl++){const Vl=Wt.clauses[yl];na.push(Ge()),Vl.kind===297&&Zl===-1&&(Zl=yl)}let yc=0,dl=[];for(;yc<Jn;){let yl=0;for(let Vl=yc;Vl<Jn;Vl++){const ec=Wt.clauses[Vl];if(ec.kind===296){if(q(ec.expression)&&dl.length>0)break;dl.push(t.createCaseClause(N.checkDefined(nt(ec.expression,Ee,yt)),[La(na[Vl],ec.expression)]))}else yl++}dl.length&&(Nl(t.createSwitchStatement(Qo,t.createCaseBlock(dl))),yc+=dl.length,dl=[]),yl>0&&(yc+=yl,yl=0)}Zl>=0?ko(na[Zl]):ko(yo);for(let yl=0;yl<Jn;yl++)ke(na[yl]),Di(Wt.clauses[yl].statements);Dn()}else Nl(nt(Ce,Ee,qi))}function _t(Ce){return R&&Kr(),Ce=In(Ce,Ee,e),R&&Dn(),Ce}function Vt(Ce){q(Ce)?(Ql(Sr(Ce.label)),Ar(Ce.statement),Lo()):Nl(nt(Ce,Ee,qi))}function vn(Ce){return R&&Fs(Sr(Ce.label)),Ce=In(Ce,Ee,e),R&&Lo(),Ce}function fn(Ce){Ms(N.checkDefined(nt(Ce.expression??t.createVoidZero(),Ee,yt)),Ce)}function _n(Ce){q(Ce)?(Ni(),Ar(Ce.tryBlock),Ce.catchClause&&(Ai(Ce.catchClause.variableDeclaration),Ar(Ce.catchClause.block)),Ce.finallyBlock&&(ir(),Ar(Ce.finallyBlock)),jr()):Nl(In(Ce,Ee,e))}function q(Ce){return!!Ce&&(Ce.transformFlags&1048576)!==0}function Oe(Ce){const Wt=Ce.length;for(let Jn=0;Jn<Wt;Jn++)if(q(Ce[Jn]))return Jn;return-1}function Lt(Ce,Wt){return Wt=m(Ce,Wt),Ce===1?L(Wt):Wt}function L(Ce){return Ve(Ce)?_e(Ce):Ce}function _e(Ce){if(!sl(Ce)&&b&&b.has(Sr(Ce))){const Wt=Pl(Ce);if(Ve(Wt)&&Wt.parent){const Jn=h.getReferencedValueDeclaration(Wt);if(Jn){const yo=A[Wu(Jn)];if(yo){const Qo=qa(dt(t.cloneNode(yo),yo),yo.parent);return Pa(Qo,Ce),ac(Qo,Ce),Qo}}}}return Ce}function J(Ce){if(sl(Ce)||ja(Ce)&8192)return Ce;const Wt=t.createTempVariable(l);return ul(Wt,Ce,Ce),Wt}function me(Ce){const Wt=Ce?t.createUniqueName(Ce):t.createTempVariable(void 0);return l(Wt),Wt}function Ge(){K||(K=[]);const Ce=V;return V++,K[Ce]=-1,Ce}function ke(Ce){N.assert(K!==void 0,"No labels were defined."),K[Ce]=se?se.length:0}function Tt(Ce){M||(M=[],O=[],C=[],U=[]);const Wt=O.length;return O[Wt]=0,C[Wt]=se?se.length:0,M[Wt]=Ce,U.push(Ce),Wt}function kt(){const Ce=en();if(Ce===void 0)return N.fail("beginBlock was never called.");const Wt=O.length;return O[Wt]=1,C[Wt]=se?se.length:0,M[Wt]=Ce,U.pop(),Ce}function en(){return tl(U)}function bn(){const Ce=en();return Ce&&Ce.kind}function Bn(Ce){const Wt=Ge(),Jn=Ge();ke(Wt),Tt({kind:1,expression:Ce,startLabel:Wt,endLabel:Jn})}function Hn(){N.assert(bn()===1);const Ce=kt();ke(Ce.endLabel)}function Ni(){const Ce=Ge(),Wt=Ge();return ke(Ce),Tt({kind:0,state:0,startLabel:Ce,endLabel:Wt}),lc(),Wt}function Ai(Ce){N.assert(bn()===0);let Wt;if(sl(Ce.name))Wt=Ce.name,l(Ce.name);else{const na=Sr(Ce.name);Wt=me(na),b||(b=new Map,A=[],e.enableSubstitution(80)),b.set(na,!0),A[Wu(Ce)]=Wt}const Jn=en();N.assert(Jn.state<1);const yo=Jn.endLabel;ko(yo);const Qo=Ge();ke(Qo),Jn.state=1,Jn.catchVariable=Wt,Jn.catchLabel=Qo,ul(Wt,t.createCallExpression(t.createPropertyAccessExpression(he,"sent"),void 0,[])),lc()}function ir(){N.assert(bn()===0);const Ce=en();N.assert(Ce.state<2);const Wt=Ce.endLabel;ko(Wt);const Jn=Ge();ke(Jn),Ce.state=2,Ce.finallyLabel=Jn}function jr(){N.assert(bn()===0);const Ce=kt();Ce.state<2?ko(Ce.endLabel):Rc(),ke(Ce.endLabel),lc(),Ce.state=3}function vo(){Tt({kind:3,isScript:!0,breakLabel:-1,continueLabel:-1})}function Ci(Ce){const Wt=Ge();return Tt({kind:3,isScript:!1,breakLabel:Wt,continueLabel:Ce}),Wt}function Ii(){N.assert(bn()===3);const Ce=kt(),Wt=Ce.breakLabel;Ce.isScript||ke(Wt)}function Kr(){Tt({kind:2,isScript:!0,breakLabel:-1})}function xo(){const Ce=Ge();return Tt({kind:2,isScript:!1,breakLabel:Ce}),Ce}function Dn(){N.assert(bn()===2);const Ce=kt(),Wt=Ce.breakLabel;Ce.isScript||ke(Wt)}function Fs(Ce){Tt({kind:4,isScript:!0,labelText:Ce,breakLabel:-1})}function Ql(Ce){const Wt=Ge();Tt({kind:4,isScript:!1,labelText:Ce,breakLabel:Wt})}function Lo(){N.assert(bn()===4);const Ce=kt();Ce.isScript||ke(Ce.breakLabel)}function cs(Ce){return Ce.kind===2||Ce.kind===3}function Vs(Ce){return Ce.kind===4}function vl(Ce){return Ce.kind===3}function uu(Ce,Wt){for(let Jn=Wt;Jn>=0;Jn--){const yo=U[Jn];if(Vs(yo)){if(yo.labelText===Ce)return!0}else break}return!1}function ho(Ce){if(U)if(Ce)for(let Wt=U.length-1;Wt>=0;Wt--){const Jn=U[Wt];if(Vs(Jn)&&Jn.labelText===Ce)return Jn.breakLabel;if(cs(Jn)&&uu(Ce,Wt-1))return Jn.breakLabel}else for(let Wt=U.length-1;Wt>=0;Wt--){const Jn=U[Wt];if(cs(Jn))return Jn.breakLabel}return 0}function pa(Ce){if(U)if(Ce)for(let Wt=U.length-1;Wt>=0;Wt--){const Jn=U[Wt];if(vl(Jn)&&uu(Ce,Wt-1))return Jn.continueLabel}else for(let Wt=U.length-1;Wt>=0;Wt--){const Jn=U[Wt];if(vl(Jn))return Jn.continueLabel}return 0}function du(Ce){if(Ce!==void 0&&Ce>0){Z===void 0&&(Z=[]);const Wt=t.createNumericLiteral(Number.MAX_SAFE_INTEGER);return Z[Ce]===void 0?Z[Ce]=[Wt]:Z[Ce].push(Wt),Wt}return t.createOmittedExpression()}function As(Ce){const Wt=t.createNumericLiteral(Ce);return EW(Wt,3,ZUe(Ce)),Wt}function La(Ce,Wt){return N.assertLessThan(0,Ce,"Invalid label"),dt(t.createReturnStatement(t.createArrayLiteralExpression([As(3),du(Ce)])),Wt)}function _l(Ce,Wt){return dt(t.createReturnStatement(t.createArrayLiteralExpression(Ce?[As(2),Ce]:[As(2)])),Wt)}function wf(Ce){return dt(t.createCallExpression(t.createPropertyAccessExpression(he,"sent"),void 0,[]),Ce)}function lc(){de(0)}function Nl(Ce){Ce?de(1,[Ce]):lc()}function ul(Ce,Wt,Jn){de(2,[Ce,Wt],Jn)}function ko(Ce,Wt){de(3,[Ce],Wt)}function nn(Ce,Wt,Jn){de(4,[Ce,Wt],Jn)}function js(Ce,Wt,Jn){de(5,[Ce,Wt],Jn)}function nu(Ce,Wt){de(7,[Ce],Wt)}function pu(Ce,Wt){de(6,[Ce],Wt)}function Ip(Ce,Wt){de(8,[Ce],Wt)}function Ms(Ce,Wt){de(9,[Ce],Wt)}function Rc(){de(10)}function de(Ce,Wt,Jn){se===void 0&&(se=[],G=[],ne=[]),K===void 0&&ke(Ge());const yo=se.length;se[yo]=Ce,G[yo]=Wt,ne[yo]=Jn}function ee(){ye=0,$=0,Y=void 0,oe=!1,fe=!1,Ne=void 0,pe=void 0,ie=void 0,ve=void 0,Le=void 0;const Ce=we();return r().createGeneratorHelper(pr(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,he)],void 0,t.createBlock(Ce,Ce.length>0)),1048576))}function we(){if(se){for(let Ce=0;Ce<se.length;Ce++)$o(Ce);un(se.length)}else un(0);if(Ne){const Ce=t.createPropertyAccessExpression(he,"label"),Wt=t.createSwitchStatement(Ce,t.createCaseBlock(Ne));return[Xu(Wt)]}return pe||[]}function Et(){pe&&(vr(!oe),oe=!1,fe=!1,$++)}function un(Ce){Er(Ce)&&(Ur(Ce),Le=void 0,vc(void 0,void 0)),pe&&Ne&&vr(!1),xi()}function Er(Ce){if(!fe)return!0;if(!K||!Z)return!1;for(let Wt=0;Wt<K.length;Wt++)if(K[Wt]===Ce&&Z[Wt])return!0;return!1}function vr(Ce){if(Ne||(Ne=[]),pe){if(Le)for(let Wt=Le.length-1;Wt>=0;Wt--){const Jn=Le[Wt];pe=[t.createWithStatement(Jn.expression,t.createBlock(pe))]}if(ve){const{startLabel:Wt,catchLabel:Jn,finallyLabel:yo,endLabel:Qo}=ve;pe.unshift(t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(t.createPropertyAccessExpression(he,"trys"),"push"),void 0,[t.createArrayLiteralExpression([du(Wt),du(Jn),du(yo),du(Qo)])]))),ve=void 0}Ce&&pe.push(t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(he,"label"),t.createNumericLiteral($+1))))}Ne.push(t.createCaseClause(t.createNumericLiteral($),pe||[])),pe=void 0}function Ur(Ce){if(K)for(let Wt=0;Wt<K.length;Wt++)K[Wt]===Ce&&(Et(),Y===void 0&&(Y=[]),Y[$]===void 0?Y[$]=[Wt]:Y[$].push(Wt))}function xi(){if(Z!==void 0&&Y!==void 0)for(let Ce=0;Ce<Y.length;Ce++){const Wt=Y[Ce];if(Wt!==void 0)for(const Jn of Wt){const yo=Z[Jn];if(yo!==void 0)for(const Qo of yo)Qo.text=String(Ce)}}}function Lr(Ce){if(M)for(;ye<O.length&&C[ye]<=Ce;ye++){const Wt=M[ye],Jn=O[ye];switch(Wt.kind){case 0:Jn===0?(ie||(ie=[]),pe||(pe=[]),ie.push(ve),ve=Wt):Jn===1&&(ve=ie.pop());break;case 1:Jn===0?(Le||(Le=[]),Le.push(Wt)):Jn===1&&Le.pop();break}}}function $o(Ce){if(Ur(Ce),Lr(Ce),oe)return;oe=!1,fe=!1;const Wt=se[Ce];if(Wt===0)return;if(Wt===10)return gd();const Jn=G[Ce];if(Wt===1)return Tl(Jn[0]);const yo=ne[Ce];switch(Wt){case 2:return Hc(Jn[0],Jn[1],yo);case 3:return Ss(Jn[0],yo);case 4:return qc(Jn[0],Jn[1],yo);case 5:return op(Jn[0],Jn[1],yo);case 6:return Wc(Jn[0],yo);case 7:return cm(Jn[0],yo);case 8:return vc(Jn[0],yo);case 9:return Us(Jn[0],yo)}}function Tl(Ce){Ce&&(pe?pe.push(Ce):pe=[Ce])}function Hc(Ce,Wt,Jn){Tl(dt(t.createExpressionStatement(t.createAssignment(Ce,Wt)),Jn))}function Us(Ce,Wt){oe=!0,fe=!0,Tl(dt(t.createThrowStatement(Ce),Wt))}function vc(Ce,Wt){oe=!0,fe=!0,Tl(pr(dt(t.createReturnStatement(t.createArrayLiteralExpression(Ce?[As(2),Ce]:[As(2)])),Wt),768))}function Ss(Ce,Wt){oe=!0,Tl(pr(dt(t.createReturnStatement(t.createArrayLiteralExpression([As(3),du(Ce)])),Wt),768))}function qc(Ce,Wt,Jn){Tl(pr(t.createIfStatement(Wt,pr(dt(t.createReturnStatement(t.createArrayLiteralExpression([As(3),du(Ce)])),Jn),768)),1))}function op(Ce,Wt,Jn){Tl(pr(t.createIfStatement(t.createLogicalNot(Wt),pr(dt(t.createReturnStatement(t.createArrayLiteralExpression([As(3),du(Ce)])),Jn),768)),1))}function Wc(Ce,Wt){oe=!0,Tl(pr(dt(t.createReturnStatement(t.createArrayLiteralExpression(Ce?[As(4),Ce]:[As(4)])),Wt),768))}function cm(Ce,Wt){oe=!0,Tl(pr(dt(t.createReturnStatement(t.createArrayLiteralExpression([As(5),Ce])),Wt),768))}function gd(){oe=!0,Tl(t.createReturnStatement(t.createArrayLiteralExpression([As(7)])))}}var eHe=T({"src/compiler/transformers/generators.ts"(){ra()}});function hJ(e){function t(q){switch(q){case 2:return se;case 3:return G;default:return V}}const{factory:r,getEmitHelperFactory:i,startLexicalEnvironment:o,endLexicalEnvironment:s,hoistVariableDeclaration:l}=e,u=e.getCompilerOptions(),p=e.getEmitResolver(),h=e.getEmitHost(),m=os(u),b=wu(u),A=e.onSubstituteNode,I=e.onEmitNode;e.onSubstituteNode=ot,e.onEmitNode=j,e.enableSubstitution(213),e.enableSubstitution(215),e.enableSubstitution(80),e.enableSubstitution(226),e.enableSubstitution(304),e.enableEmitNotification(312);const R=[];let M,C;const O=[];let U;return Pm(e,K);function K(q){if(q.isDeclarationFile||!(wA(q,u)||q.transformFlags&8388608||Qf(q)&&U3(u)&&Ps(u)))return q;M=q,C=oJ(e,q),R[Wu(q)]=C;const Lt=t(b)(q);return M=void 0,C=void 0,U=!1,Lt}function Z(){return!!(!C.exportEquals&&sc(M))}function V(q){o();const Oe=[],Lt=fd(u,"alwaysStrict")||!u.noImplicitUseStrict&&sc(M),L=r.copyPrologue(q.statements,Oe,Lt&&!Qf(q),Y);if(Z()&&xn(Oe,Ct()),Me(C.exportedNames))for(let me=0;me<C.exportedNames.length;me+=50)xn(Oe,r.createExpressionStatement(od(C.exportedNames.slice(me,me+50),(Ge,ke)=>r.createAssignment(r.createPropertyAccessExpression(r.createIdentifier("exports"),r.createIdentifier(Sr(ke))),Ge),r.createVoidZero())));xn(Oe,nt(C.externalHelpersImportDeclaration,Y,qi)),Jr(Oe,Vn(q.statements,Y,qi,L)),$(Oe,!1),eg(Oe,s());const _e=r.updateSourceFile(q,dt(r.createNodeArray(Oe),q.statements));return Ug(_e,e.readEmitHelpers()),_e}function se(q){const Oe=r.createIdentifier("define"),Lt=ow(r,q,h,u),L=Qf(q)&&q,{aliasedModuleNames:_e,unaliasedModuleNames:J,importAliasNames:me}=ne(q,!0),Ge=r.updateSourceFile(q,dt(r.createNodeArray([r.createExpressionStatement(r.createCallExpression(Oe,void 0,[...Lt?[Lt]:[],r.createArrayLiteralExpression(L?et:[r.createStringLiteral("require"),r.createStringLiteral("exports"),..._e,...J]),L?L.statements.length?L.statements[0].expression:r.createObjectLiteralExpression():r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,"require"),r.createParameterDeclaration(void 0,void 0,"exports"),...me],void 0,ye(q))]))]),q.statements));return Ug(Ge,e.readEmitHelpers()),Ge}function G(q){const{aliasedModuleNames:Oe,unaliasedModuleNames:Lt,importAliasNames:L}=ne(q,!1),_e=ow(r,q,h,u),J=r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,"factory")],void 0,dt(r.createBlock([r.createIfStatement(r.createLogicalAnd(r.createTypeCheck(r.createIdentifier("module"),"object"),r.createTypeCheck(r.createPropertyAccessExpression(r.createIdentifier("module"),"exports"),"object")),r.createBlock([r.createVariableStatement(void 0,[r.createVariableDeclaration("v",void 0,void 0,r.createCallExpression(r.createIdentifier("factory"),void 0,[r.createIdentifier("require"),r.createIdentifier("exports")]))]),pr(r.createIfStatement(r.createStrictInequality(r.createIdentifier("v"),r.createIdentifier("undefined")),r.createExpressionStatement(r.createAssignment(r.createPropertyAccessExpression(r.createIdentifier("module"),"exports"),r.createIdentifier("v")))),1)]),r.createIfStatement(r.createLogicalAnd(r.createTypeCheck(r.createIdentifier("define"),"function"),r.createPropertyAccessExpression(r.createIdentifier("define"),"amd")),r.createBlock([r.createExpressionStatement(r.createCallExpression(r.createIdentifier("define"),void 0,[..._e?[_e]:[],r.createArrayLiteralExpression([r.createStringLiteral("require"),r.createStringLiteral("exports"),...Oe,...Lt]),r.createIdentifier("factory")]))])))],!0),void 0)),me=r.updateSourceFile(q,dt(r.createNodeArray([r.createExpressionStatement(r.createCallExpression(J,void 0,[r.createFunctionExpression(void 0,void 0,void 0,void 0,[r.createParameterDeclaration(void 0,void 0,"require"),r.createParameterDeclaration(void 0,void 0,"exports"),...L],void 0,ye(q))]))]),q.statements));return Ug(me,e.readEmitHelpers()),me}function ne(q,Oe){const Lt=[],L=[],_e=[];for(const J of q.amdDependencies)J.name?(Lt.push(r.createStringLiteral(J.path)),_e.push(r.createParameterDeclaration(void 0,void 0,J.name))):L.push(r.createStringLiteral(J.path));for(const J of C.externalImports){const me=yI(r,J,M,h,p,u),Ge=nD(r,J,M);me&&(Oe&&Ge?(pr(Ge,8),Lt.push(me),_e.push(r.createParameterDeclaration(void 0,void 0,Ge))):L.push(me))}return{aliasedModuleNames:Lt,unaliasedModuleNames:L,importAliasNames:_e}}function he(q){if(tu(q)||Yl(q)||!yI(r,q,M,h,p,u))return;const Oe=nD(r,q,M),Lt=No(q,Oe);if(Lt!==Oe)return r.createExpressionStatement(r.createAssignment(Oe,Lt))}function ye(q){o();const Oe=[],Lt=r.copyPrologue(q.statements,Oe,!u.noImplicitUseStrict,Y);Z()&&xn(Oe,Ct()),Me(C.exportedNames)&&xn(Oe,r.createExpressionStatement(od(C.exportedNames,(_e,J)=>r.createAssignment(r.createPropertyAccessExpression(r.createIdentifier("exports"),r.createIdentifier(Sr(J))),_e),r.createVoidZero()))),xn(Oe,nt(C.externalHelpersImportDeclaration,Y,qi)),b===2&&Jr(Oe,Hi(C.externalImports,he)),Jr(Oe,Vn(q.statements,Y,qi,Lt)),$(Oe,!0),eg(Oe,s());const L=r.createBlock(Oe,!0);return U&&eI(L,Yxe),L}function $(q,Oe){if(C.exportEquals){const Lt=nt(C.exportEquals.expression,Ne,yt);if(Lt)if(Oe){const L=r.createReturnStatement(Lt);dt(L,C.exportEquals),pr(L,3840),q.push(L)}else{const L=r.createExpressionStatement(r.createAssignment(r.createPropertyAccessExpression(r.createIdentifier("module"),"exports"),Lt));dt(L,C.exportEquals),pr(L,3072),q.push(L)}}}function Y(q){switch(q.kind){case 272:return Mn(q);case 271:return Ar(q);case 278:return sn(q);case 277:return tt(q);default:return oe(q)}}function oe(q){switch(q.kind){case 243:return li(q);case 262:return zt(q);case 263:return Rn(q);case 248:return Le(q,!0);case 249:return He(q);case 250:return Ee(q);case 246:return De(q);case 247:return Pe(q);case 256:return We(q);case 254:return At(q);case 245:return Se(q);case 255:return je(q);case 269:return at(q);case 296:return Gt(q);case 297:return vt(q);case 258:return $e(q);case 299:return It(q);case 241:return tn(q);default:return Ne(q)}}function fe(q,Oe){if(!(q.transformFlags&276828160))return q;switch(q.kind){case 248:return Le(q,!1);case 244:return rn(q);case 217:return Pn(q,Oe);case 360:return Xn(q,Oe);case 213:if(Bp(q)&&M.impliedNodeFormat===void 0)return Qt(q);break;case 226:if(jv(q))return ve(q,Oe);break;case 224:case 225:return hn(q,Oe)}return In(q,Ne,e)}function Ne(q){return fe(q,!1)}function pe(q){return fe(q,!0)}function ie(q){if(Oa(q))for(const Oe of q.properties)switch(Oe.kind){case 303:if(ie(Oe.initializer))return!0;break;case 304:if(ie(Oe.name))return!0;break;case 305:if(ie(Oe.expression))return!0;break;case 174:case 177:case 178:return!1;default:N.assertNever(Oe,"Unhandled object member kind")}else if(_d(q)){for(const Oe of q.elements)if(e_(Oe)){if(ie(Oe.expression))return!0}else if(ie(Oe))return!0}else if(Ve(q))return Me(_n(q))>(mF(q)?1:0);return!1}function ve(q,Oe){return ie(q.left)?tT(q,Ne,e,0,!Oe,hi):In(q,Ne,e)}function Le(q,Oe){if(Oe&&q.initializer&&Uc(q.initializer)&&!(q.initializer.flags&7)){const Lt=Sn(void 0,q.initializer,!1);if(Lt){const L=[],_e=nt(q.initializer,pe,Uc),J=r.createVariableStatement(void 0,_e);L.push(J),Jr(L,Lt);const me=nt(q.condition,Ne,yt),Ge=nt(q.incrementor,pe,yt),ke=Rd(q.statement,Oe?oe:Ne,e);return L.push(r.updateForStatement(q,void 0,me,Ge,ke)),L}}return r.updateForStatement(q,nt(q.initializer,pe,Af),nt(q.condition,Ne,yt),nt(q.incrementor,pe,yt),Rd(q.statement,Oe?oe:Ne,e))}function He(q){if(Uc(q.initializer)&&!(q.initializer.flags&7)){const Oe=Sn(void 0,q.initializer,!0);if(bt(Oe)){const Lt=nt(q.initializer,pe,Af),L=nt(q.expression,Ne,yt),_e=Rd(q.statement,oe,e),J=Xo(_e)?r.updateBlock(_e,[...Oe,..._e.statements]):r.createBlock([...Oe,_e],!0);return r.updateForInStatement(q,Lt,L,J)}}return r.updateForInStatement(q,nt(q.initializer,pe,Af),nt(q.expression,Ne,yt),Rd(q.statement,oe,e))}function Ee(q){if(Uc(q.initializer)&&!(q.initializer.flags&7)){const Oe=Sn(void 0,q.initializer,!0),Lt=nt(q.initializer,pe,Af),L=nt(q.expression,Ne,yt);let _e=Rd(q.statement,oe,e);return bt(Oe)&&(_e=Xo(_e)?r.updateBlock(_e,[...Oe,..._e.statements]):r.createBlock([...Oe,_e],!0)),r.updateForOfStatement(q,q.awaitModifier,Lt,L,_e)}return r.updateForOfStatement(q,q.awaitModifier,nt(q.initializer,pe,Af),nt(q.expression,Ne,yt),Rd(q.statement,oe,e))}function De(q){return r.updateDoStatement(q,Rd(q.statement,oe,e),nt(q.expression,Ne,yt))}function Pe(q){return r.updateWhileStatement(q,nt(q.expression,Ne,yt),Rd(q.statement,oe,e))}function We(q){return r.updateLabeledStatement(q,q.label,N.checkDefined(nt(q.statement,oe,qi,r.liftToBlock)))}function At(q){return r.updateWithStatement(q,nt(q.expression,Ne,yt),N.checkDefined(nt(q.statement,oe,qi,r.liftToBlock)))}function Se(q){return r.updateIfStatement(q,nt(q.expression,Ne,yt),N.checkDefined(nt(q.thenStatement,oe,qi,r.liftToBlock)),nt(q.elseStatement,oe,qi,r.liftToBlock))}function je(q){return r.updateSwitchStatement(q,nt(q.expression,Ne,yt),N.checkDefined(nt(q.caseBlock,oe,SP)))}function at(q){return r.updateCaseBlock(q,Vn(q.clauses,oe,L4))}function Gt(q){return r.updateCaseClause(q,nt(q.expression,Ne,yt),Vn(q.statements,oe,qi))}function vt(q){return In(q,oe,e)}function $e(q){return In(q,oe,e)}function It(q){return r.updateCatchClause(q,q.variableDeclaration,N.checkDefined(nt(q.block,oe,Xo)))}function tn(q){return q=In(q,oe,e),q}function rn(q){return r.updateExpressionStatement(q,nt(q.expression,pe,yt))}function Pn(q,Oe){return r.updateParenthesizedExpression(q,nt(q.expression,Oe?pe:Ne,yt))}function Xn(q,Oe){return r.updatePartiallyEmittedExpression(q,nt(q.expression,Oe?pe:Ne,yt))}function hn(q,Oe){if((q.operator===46||q.operator===47)&&Ve(q.operand)&&!sl(q.operand)&&!qg(q.operand)&&!RU(q.operand)){const Lt=_n(q.operand);if(Lt){let L,_e=nt(q.operand,Ne,yt);tb(q)?_e=r.updatePrefixUnaryExpression(q,_e):(_e=r.updatePostfixUnaryExpression(q,_e),Oe||(L=r.createTempVariable(l),_e=r.createAssignment(L,_e),dt(_e,q)),_e=r.createComma(_e,r.cloneNode(q.operand)),dt(_e,q));for(const J of Lt)O[as(_e)]=!0,_e=Fe(J,_e),dt(_e,q);return L&&(O[as(_e)]=!0,_e=r.createComma(_e,L),dt(_e,q)),_e}}return In(q,Ne,e)}function Qt(q){if(b===0&&m>=7)return In(q,Ne,e);const Oe=yI(r,q,M,h,p,u),Lt=nt(Xc(q.arguments),Ne,yt),L=Oe&&(!Lt||!Ma(Lt)||Lt.text!==Oe.text)?Oe:Lt,_e=!!(q.transformFlags&16384);switch(u.module){case 2:return _i(L,_e);case 3:return $t(L??r.createVoidZero(),_e);case 1:default:return ao(L)}}function $t(q,Oe){if(U=!0,_1(q)){const Lt=sl(q)?q:Ma(q)?r.createStringLiteralFromNode(q):pr(dt(r.cloneNode(q),q),3072);return r.createConditionalExpression(r.createIdentifier("__syncRequire"),void 0,ao(q),void 0,_i(Lt,Oe))}else{const Lt=r.createTempVariable(l);return r.createComma(r.createAssignment(Lt,q),r.createConditionalExpression(r.createIdentifier("__syncRequire"),void 0,ao(Lt,!0),void 0,_i(Lt,Oe)))}}function _i(q,Oe){const Lt=r.createUniqueName("resolve"),L=r.createUniqueName("reject"),_e=[r.createParameterDeclaration(void 0,void 0,Lt),r.createParameterDeclaration(void 0,void 0,L)],J=r.createBlock([r.createExpressionStatement(r.createCallExpression(r.createIdentifier("require"),void 0,[r.createArrayLiteralExpression([q||r.createOmittedExpression()]),Lt,L]))]);let me;m>=2?me=r.createArrowFunction(void 0,void 0,_e,void 0,void 0,J):(me=r.createFunctionExpression(void 0,void 0,void 0,void 0,_e,void 0,J),Oe&&pr(me,16));const Ge=r.createNewExpression(r.createIdentifier("Promise"),void 0,[me]);return yh(u)?r.createCallExpression(r.createPropertyAccessExpression(Ge,r.createIdentifier("then")),void 0,[i().createImportStarCallbackHelper()]):Ge}function ao(q,Oe){const Lt=q&&!Rh(q)&&!Oe,L=r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("Promise"),"resolve"),void 0,Lt?m>=2?[r.createTemplateExpression(r.createTemplateHead(""),[r.createTemplateSpan(q,r.createTemplateTail(""))])]:[r.createCallExpression(r.createPropertyAccessExpression(r.createStringLiteral(""),"concat"),void 0,[q])]:[]);let _e=r.createCallExpression(r.createIdentifier("require"),void 0,Lt?[r.createIdentifier("s")]:q?[q]:[]);yh(u)&&(_e=i().createImportStarHelper(_e));const J=Lt?[r.createParameterDeclaration(void 0,void 0,"s")]:[];let me;return m>=2?me=r.createArrowFunction(void 0,void 0,J,void 0,void 0,_e):me=r.createFunctionExpression(void 0,void 0,void 0,void 0,J,void 0,r.createBlock([r.createReturnStatement(_e)])),r.createCallExpression(r.createPropertyAccessExpression(L,"then"),void 0,[me])}function Oi(q,Oe){return!yh(u)||Am(q)&2?Oe:Rle(q)?i().createImportStarHelper(Oe):Oe}function No(q,Oe){return!yh(u)||Am(q)&2?Oe:r7(q)?i().createImportStarHelper(Oe):iJ(q)?i().createImportDefaultHelper(Oe):Oe}function Mn(q){let Oe;const Lt=bR(q);if(b!==2)if(q.importClause){const L=[];Lt&&!WA(q)?L.push(r.createVariableDeclaration(r.cloneNode(Lt.name),void 0,void 0,No(q,Di(q)))):(L.push(r.createVariableDeclaration(r.getGeneratedNameForNode(q),void 0,void 0,No(q,Di(q)))),Lt&&WA(q)&&L.push(r.createVariableDeclaration(r.cloneNode(Lt.name),void 0,void 0,r.getGeneratedNameForNode(q)))),Oe=xn(Oe,Cr(dt(r.createVariableStatement(void 0,r.createVariableDeclarationList(L,m>=2?2:0)),q),q))}else return Cr(dt(r.createExpressionStatement(Di(q)),q),q);else Lt&&WA(q)&&(Oe=xn(Oe,r.createVariableStatement(void 0,r.createVariableDeclarationList([Cr(dt(r.createVariableDeclaration(r.cloneNode(Lt.name),void 0,void 0,r.getGeneratedNameForNode(q)),q),q)],m>=2?2:0))));return Oe=Io(Oe,q),lh(Oe)}function Di(q){const Oe=yI(r,q,M,h,p,u),Lt=[];return Oe&&Lt.push(Oe),r.createCallExpression(r.createIdentifier("require"),void 0,Lt)}function Ar(q){N.assert(h0(q),"import= for internal module references should be handled in an earlier transformer.");let Oe;return b!==2?Zr(q,32)?Oe=xn(Oe,Cr(dt(r.createExpressionStatement(Fe(q.name,Di(q))),q),q)):Oe=xn(Oe,Cr(dt(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(r.cloneNode(q.name),void 0,void 0,Di(q))],m>=2?2:0)),q),q)):Zr(q,32)&&(Oe=xn(Oe,Cr(dt(r.createExpressionStatement(Fe(r.getExportName(q),r.getLocalName(q))),q),q))),Oe=ma(Oe,q),lh(Oe)}function sn(q){if(!q.moduleSpecifier)return;const Oe=r.getGeneratedNameForNode(q);if(q.exportClause&&Pf(q.exportClause)){const Lt=[];b!==2&&Lt.push(Cr(dt(r.createVariableStatement(void 0,r.createVariableDeclarationList([r.createVariableDeclaration(Oe,void 0,void 0,Di(q))])),q),q));for(const L of q.exportClause.elements)if(m===0)Lt.push(Cr(dt(r.createExpressionStatement(i().createCreateBindingHelper(Oe,r.createStringLiteralFromNode(L.propertyName||L.name),L.propertyName?r.createStringLiteralFromNode(L.name):void 0)),L),L));else{const _e=!!yh(u)&&!(Am(q)&2)&&Sr(L.propertyName||L.name)==="default",J=r.createPropertyAccessExpression(_e?i().createImportDefaultHelper(Oe):Oe,L.propertyName||L.name);Lt.push(Cr(dt(r.createExpressionStatement(Fe(r.getExportName(L),J,void 0,!0)),L),L))}return lh(Lt)}else if(q.exportClause){const Lt=[];return Lt.push(Cr(dt(r.createExpressionStatement(Fe(r.cloneNode(q.exportClause.name),Oi(q,b!==2?Di(q):U4(q)?Oe:r.createIdentifier(Sr(q.exportClause.name))))),q),q)),lh(Lt)}else return Cr(dt(r.createExpressionStatement(i().createExportStarHelper(b!==2?Di(q):Oe)),q),q)}function tt(q){if(!q.isExportEquals)return le(r.createIdentifier("default"),nt(q.expression,Ne,yt),q,!0)}function zt(q){let Oe;return Zr(q,32)?Oe=xn(Oe,Cr(dt(r.createFunctionDeclaration(Vn(q.modifiers,pt,xa),q.asteriskToken,r.getDeclarationName(q,!0,!0),void 0,Vn(q.parameters,Ne,Ao),void 0,In(q.body,Ne,e)),q),q)):Oe=xn(Oe,In(q,Ne,e)),Oe=qe(Oe,q),lh(Oe)}function Rn(q){let Oe;return Zr(q,32)?Oe=xn(Oe,Cr(dt(r.createClassDeclaration(Vn(q.modifiers,pt,ll),r.getDeclarationName(q,!0,!0),void 0,Vn(q.heritageClauses,Ne,of),Vn(q.members,Ne,$c)),q),q)):Oe=xn(Oe,In(q,Ne,e)),Oe=qe(Oe,q),lh(Oe)}function li(q){let Oe,Lt,L;if(Zr(q,32)){let _e,J=!1;for(const me of q.declarationList.declarations)if(Ve(me.name)&&qg(me.name))if(_e||(_e=Vn(q.modifiers,pt,xa)),me.initializer){const Ge=r.updateVariableDeclaration(me,me.name,void 0,void 0,Fe(me.name,nt(me.initializer,Ne,yt)));Lt=xn(Lt,Ge)}else Lt=xn(Lt,me);else if(me.initializer)if(!ta(me.name)&&(Gs(me.initializer)||Os(me.initializer)||Zc(me.initializer))){const Ge=r.createAssignment(dt(r.createPropertyAccessExpression(r.createIdentifier("exports"),me.name),me.name),r.createIdentifier(em(me.name))),ke=r.createVariableDeclaration(me.name,me.exclamationToken,me.type,nt(me.initializer,Ne,yt));Lt=xn(Lt,ke),L=xn(L,Ge),J=!0}else L=xn(L,Qi(me));if(Lt&&(Oe=xn(Oe,r.updateVariableStatement(q,_e,r.updateVariableDeclarationList(q.declarationList,Lt)))),L){const me=Cr(dt(r.createExpressionStatement(r.inlineExpressions(L)),q),q);J&&Fk(me),Oe=xn(Oe,me)}}else Oe=xn(Oe,In(q,Ne,e));return Oe=Wa(Oe,q),lh(Oe)}function hi(q,Oe,Lt){const L=_n(q);if(L){let _e=mF(q)?Oe:r.createAssignment(q,Oe);for(const J of L)pr(_e,8),_e=Fe(J,_e,Lt);return _e}return r.createAssignment(q,Oe)}function Qi(q){return ta(q.name)?tT(nt(q,Ne,vk),Ne,e,0,!1,hi):r.createAssignment(dt(r.createPropertyAccessExpression(r.createIdentifier("exports"),q.name),q.name),q.initializer?nt(q.initializer,Ne,yt):r.createVoidZero())}function Io(q,Oe){if(C.exportEquals)return q;const Lt=Oe.importClause;if(!Lt)return q;const L=new II;Lt.name&&(q=mt(q,L,Lt));const _e=Lt.namedBindings;if(_e)switch(_e.kind){case 274:q=mt(q,L,_e);break;case 275:for(const J of _e.elements)q=mt(q,L,J,!0);break}return q}function ma(q,Oe){return C.exportEquals?q:mt(q,new II,Oe)}function Wa(q,Oe){return Sn(q,Oe.declarationList,!1)}function Sn(q,Oe,Lt){if(C.exportEquals)return q;for(const L of Oe.declarations)q=kn(q,L,Lt);return q}function kn(q,Oe,Lt){if(C.exportEquals)return q;if(ta(Oe.name))for(const L of Oe.name.elements)jc(L)||(q=kn(q,L,Lt));else!sl(Oe.name)&&(!wi(Oe)||Oe.initializer||Lt)&&(q=mt(q,new II,Oe));return q}function qe(q,Oe){if(C.exportEquals)return q;const Lt=new II;if(Zr(Oe,32)){const L=Zr(Oe,2048)?r.createIdentifier("default"):r.getDeclarationName(Oe);q=ft(q,Lt,L,r.getLocalName(Oe),Oe)}return Oe.name&&(q=mt(q,Lt,Oe)),q}function mt(q,Oe,Lt,L){const _e=r.getDeclarationName(Lt),J=C.exportSpecifiers.get(_e);if(J)for(const me of J)q=ft(q,Oe,me.name,_e,me.name,void 0,L);return q}function ft(q,Oe,Lt,L,_e,J,me){return Oe.has(Lt)||(Oe.set(Lt,!0),q=xn(q,le(Lt,L,_e,J,me))),q}function Ct(){let q;return m===0?q=r.createExpressionStatement(Fe(r.createIdentifier("__esModule"),r.createTrue())):q=r.createExpressionStatement(r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("Object"),"defineProperty"),void 0,[r.createIdentifier("exports"),r.createStringLiteral("__esModule"),r.createObjectLiteralExpression([r.createPropertyAssignment("value",r.createTrue())])])),pr(q,2097152),q}function le(q,Oe,Lt,L,_e){const J=dt(r.createExpressionStatement(Fe(q,Oe,void 0,_e)),Lt);return Xu(J),L||pr(J,3072),J}function Fe(q,Oe,Lt,L){return dt(L&&m!==0?r.createCallExpression(r.createPropertyAccessExpression(r.createIdentifier("Object"),"defineProperty"),void 0,[r.createIdentifier("exports"),r.createStringLiteralFromNode(q),r.createObjectLiteralExpression([r.createPropertyAssignment("enumerable",r.createTrue()),r.createPropertyAssignment("get",r.createFunctionExpression(void 0,void 0,void 0,void 0,[],void 0,r.createBlock([r.createReturnStatement(Oe)])))])]):r.createAssignment(r.createPropertyAccessExpression(r.createIdentifier("exports"),r.cloneNode(q)),Oe),Lt)}function pt(q){switch(q.kind){case 95:case 90:return}return q}function j(q,Oe,Lt){Oe.kind===312?(M=Oe,C=R[Wu(M)],I(q,Oe,Lt),M=void 0,C=void 0):I(q,Oe,Lt)}function ot(q,Oe){return Oe=A(q,Oe),Oe.id&&O[Oe.id]?Oe:q===1?Ye(Oe):rp(Oe)?Rt(Oe):Oe}function Rt(q){const Oe=q.name,Lt=vn(Oe);if(Lt!==Oe){if(q.objectAssignmentInitializer){const L=r.createAssignment(Lt,q.objectAssignmentInitializer);return dt(r.createPropertyAssignment(Oe,L),q)}return dt(r.createPropertyAssignment(Oe,Lt),q)}return q}function Ye(q){switch(q.kind){case 80:return vn(q);case 213:return _t(q);case 215:return Vt(q);case 226:return fn(q)}return q}function _t(q){if(Ve(q.expression)){const Oe=vn(q.expression);if(O[as(Oe)]=!0,!Ve(Oe)&&!(ja(q.expression)&8192))return QA(r.updateCallExpression(q,Oe,void 0,q.arguments),16)}return q}function Vt(q){if(Ve(q.tag)){const Oe=vn(q.tag);if(O[as(Oe)]=!0,!Ve(Oe)&&!(ja(q.tag)&8192))return QA(r.updateTaggedTemplateExpression(q,Oe,void 0,q.template),16)}return q}function vn(q){var Oe,Lt;if(ja(q)&8192){const L=iw(M);return L?r.createPropertyAccessExpression(L,q):q}else if(!(sl(q)&&!(q.emitNode.autoGenerate.flags&64))&&!qg(q)){const L=p.getReferencedExportContainer(q,mF(q));if(L&&L.kind===312)return dt(r.createPropertyAccessExpression(r.createIdentifier("exports"),r.cloneNode(q)),q);const _e=p.getReferencedImportDeclaration(q);if(_e){if(Sh(_e))return dt(r.createPropertyAccessExpression(r.getGeneratedNameForNode(_e.parent),r.createIdentifier("default")),q);if(np(_e)){const J=_e.propertyName||_e.name;return dt(r.createPropertyAccessExpression(r.getGeneratedNameForNode(((Lt=(Oe=_e.parent)==null?void 0:Oe.parent)==null?void 0:Lt.parent)||_e),r.cloneNode(J)),q)}}}return q}function fn(q){if(Vv(q.operatorToken.kind)&&Ve(q.left)&&(!sl(q.left)||hL(q.left))&&!qg(q.left)){const Oe=_n(q.left);if(Oe){let Lt=q;for(const L of Oe)O[as(Lt)]=!0,Lt=Fe(L,Lt,q);return Lt}}return q}function _n(q){if(sl(q)){if(hL(q)){const Oe=C==null?void 0:C.exportSpecifiers.get(q);if(Oe){const Lt=[];for(const L of Oe)Lt.push(L.name);return Lt}}}else{const Oe=p.getReferencedImportDeclaration(q);if(Oe)return C==null?void 0:C.exportedBindings[Wu(Oe)];const Lt=new Set,L=p.getReferencedValueDeclarations(q);if(L){for(const _e of L){const J=C==null?void 0:C.exportedBindings[Wu(_e)];if(J)for(const me of J)Lt.add(me)}if(Lt.size)return zo(Lt)}}}}var Yxe,tHe=T({"src/compiler/transformers/module/module.ts"(){ra(),Yxe={name:"typescript:dynamicimport-sync-require",scoped:!0,text:`
+ var __syncRequire = typeof module === "object" && typeof module.exports === "object";`}}});function ace(e){const{factory:t,startLexicalEnvironment:r,endLexicalEnvironment:i,hoistVariableDeclaration:o}=e,s=e.getCompilerOptions(),l=e.getEmitResolver(),u=e.getEmitHost(),p=e.onSubstituteNode,h=e.onEmitNode;e.onSubstituteNode=Fe,e.onEmitNode=le,e.enableSubstitution(80),e.enableSubstitution(304),e.enableSubstitution(226),e.enableSubstitution(236),e.enableEmitNotification(312);const m=[],b=[],A=[],I=[];let R,M,C,O,U,K,Z;return Pm(e,V);function V(q){if(q.isDeclarationFile||!(wA(q,s)||q.transformFlags&8388608))return q;const Oe=Wu(q);R=q,K=q,M=m[Oe]=oJ(e,q),C=t.createUniqueName("exports"),b[Oe]=C,O=I[Oe]=t.createUniqueName("context");const Lt=se(M.externalImports),L=G(q,Lt),_e=t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,C),t.createParameterDeclaration(void 0,void 0,O)],void 0,L),J=ow(t,q,u,s),me=t.createArrayLiteralExpression(wt(Lt,ke=>ke.name)),Ge=pr(t.updateSourceFile(q,dt(t.createNodeArray([t.createExpressionStatement(t.createCallExpression(t.createPropertyAccessExpression(t.createIdentifier("System"),"register"),void 0,J?[J,me,_e]:[me,_e]))]),q.statements)),2048);return Ps(s)||Aae(Ge,L,ke=>!ke.scoped),Z&&(A[Oe]=Z,Z=void 0),R=void 0,M=void 0,C=void 0,O=void 0,U=void 0,K=void 0,Ge}function se(q){const Oe=new Map,Lt=[];for(const L of q){const _e=yI(t,L,R,u,l,s);if(_e){const J=_e.text,me=Oe.get(J);me!==void 0?Lt[me].externalImports.push(L):(Oe.set(J,Lt.length),Lt.push({name:_e,externalImports:[L]}))}}return Lt}function G(q,Oe){const Lt=[];r();const L=fd(s,"alwaysStrict")||!s.noImplicitUseStrict&&sc(R),_e=t.copyPrologue(q.statements,Lt,L,$);Lt.push(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration("__moduleName",void 0,void 0,t.createLogicalAnd(O,t.createPropertyAccessExpression(O,"id")))]))),nt(M.externalHelpersImportDeclaration,$,qi);const J=Vn(q.statements,$,qi,_e);Jr(Lt,U),eg(Lt,i());const me=ne(Lt),Ge=q.transformFlags&2097152?t.createModifiersFromModifierFlags(1024):void 0,ke=t.createObjectLiteralExpression([t.createPropertyAssignment("setters",ye(me,Oe)),t.createPropertyAssignment("execute",t.createFunctionExpression(Ge,void 0,void 0,void 0,[],void 0,t.createBlock(J,!0)))],!0);return Lt.push(t.createReturnStatement(ke)),t.createBlock(Lt,!0)}function ne(q){if(!M.hasExportStarsToExportValues)return;if(!M.exportedNames&&M.exportSpecifiers.size===0){let _e=!1;for(const J of M.externalImports)if(J.kind===278&&J.exportClause){_e=!0;break}if(!_e){const J=he(void 0);return q.push(J),J.name}}const Oe=[];if(M.exportedNames)for(const _e of M.exportedNames)_e.escapedText!=="default"&&Oe.push(t.createPropertyAssignment(t.createStringLiteralFromNode(_e),t.createTrue()));const Lt=t.createUniqueName("exportedNames");q.push(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(Lt,void 0,void 0,t.createObjectLiteralExpression(Oe,!0))])));const L=he(Lt);return q.push(L),L.name}function he(q){const Oe=t.createUniqueName("exportStar"),Lt=t.createIdentifier("m"),L=t.createIdentifier("n"),_e=t.createIdentifier("exports");let J=t.createStrictInequality(L,t.createStringLiteral("default"));return q&&(J=t.createLogicalAnd(J,t.createLogicalNot(t.createCallExpression(t.createPropertyAccessExpression(q,"hasOwnProperty"),void 0,[L])))),t.createFunctionDeclaration(void 0,void 0,Oe,void 0,[t.createParameterDeclaration(void 0,void 0,Lt)],void 0,t.createBlock([t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(_e,void 0,void 0,t.createObjectLiteralExpression([]))])),t.createForInStatement(t.createVariableDeclarationList([t.createVariableDeclaration(L)]),Lt,t.createBlock([pr(t.createIfStatement(J,t.createExpressionStatement(t.createAssignment(t.createElementAccessExpression(_e,L),t.createElementAccessExpression(Lt,L)))),1)])),t.createExpressionStatement(t.createCallExpression(C,void 0,[_e]))],!0))}function ye(q,Oe){const Lt=[];for(const L of Oe){const _e=Ue(L.externalImports,Ge=>nD(t,Ge,R)),J=_e?t.getGeneratedNameForNode(_e):t.createUniqueName(""),me=[];for(const Ge of L.externalImports){const ke=nD(t,Ge,R);switch(Ge.kind){case 272:if(!Ge.importClause)break;case 271:N.assert(ke!==void 0),me.push(t.createExpressionStatement(t.createAssignment(ke,J))),Zr(Ge,32)&&me.push(t.createExpressionStatement(t.createCallExpression(C,void 0,[t.createStringLiteral(Sr(ke)),J])));break;case 278:if(N.assert(ke!==void 0),Ge.exportClause)if(Pf(Ge.exportClause)){const Tt=[];for(const kt of Ge.exportClause.elements)Tt.push(t.createPropertyAssignment(t.createStringLiteral(Sr(kt.name)),t.createElementAccessExpression(J,t.createStringLiteral(Sr(kt.propertyName||kt.name)))));me.push(t.createExpressionStatement(t.createCallExpression(C,void 0,[t.createObjectLiteralExpression(Tt,!0)])))}else me.push(t.createExpressionStatement(t.createCallExpression(C,void 0,[t.createStringLiteral(Sr(Ge.exportClause.name)),J])));else me.push(t.createExpressionStatement(t.createCallExpression(q,void 0,[J])));break}}Lt.push(t.createFunctionExpression(void 0,void 0,void 0,void 0,[t.createParameterDeclaration(void 0,void 0,J)],void 0,t.createBlock(me,!0)))}return t.createArrayLiteralExpression(Lt,!0)}function $(q){switch(q.kind){case 272:return Y(q);case 271:return fe(q);case 278:return oe(q);case 277:return Ne(q);default:return rn(q)}}function Y(q){let Oe;return q.importClause&&o(nD(t,q,R)),lh(At(Oe,q))}function oe(q){N.assertIsDefined(q)}function fe(q){N.assert(h0(q),"import= for internal module references should be handled in an earlier transformer.");let Oe;return o(nD(t,q,R)),lh(Se(Oe,q))}function Ne(q){if(q.isExportEquals)return;const Oe=nt(q.expression,Qi,yt);return It(t.createIdentifier("default"),Oe,!0)}function pe(q){Zr(q,32)?U=xn(U,t.updateFunctionDeclaration(q,Vn(q.modifiers,Ct,ll),q.asteriskToken,t.getDeclarationName(q,!0,!0),void 0,Vn(q.parameters,Qi,Ao),void 0,nt(q.body,Qi,Xo))):U=xn(U,In(q,Qi,e)),U=Gt(U,q)}function ie(q){let Oe;const Lt=t.getLocalName(q);return o(Lt),Oe=xn(Oe,dt(t.createExpressionStatement(t.createAssignment(Lt,dt(t.createClassExpression(Vn(q.modifiers,Ct,ll),q.name,void 0,Vn(q.heritageClauses,Qi,of),Vn(q.members,Qi,$c)),q))),q)),Oe=Gt(Oe,q),lh(Oe)}function ve(q){if(!He(q.declarationList))return nt(q,Qi,qi);let Oe;if(kL(q.declarationList)||LL(q.declarationList)){const Lt=Vn(q.modifiers,Ct,ll),L=[];for(const J of q.declarationList.declarations)L.push(t.updateVariableDeclaration(J,t.getGeneratedNameForNode(J.name),void 0,void 0,Ee(J,!1)));const _e=t.updateVariableDeclarationList(q.declarationList,L);Oe=xn(Oe,t.updateVariableStatement(q,Lt,_e))}else{let Lt;const L=Zr(q,32);for(const _e of q.declarationList.declarations)_e.initializer?Lt=xn(Lt,Ee(_e,L)):Le(_e);Lt&&(Oe=xn(Oe,dt(t.createExpressionStatement(t.inlineExpressions(Lt)),q)))}return Oe=je(Oe,q,!1),lh(Oe)}function Le(q){if(ta(q.name))for(const Oe of q.name.elements)jc(Oe)||Le(Oe);else o(t.cloneNode(q.name))}function He(q){return(ja(q)&4194304)===0&&(K.kind===312||(Pl(q).flags&7)===0)}function Ee(q,Oe){const Lt=Oe?De:Pe;return ta(q.name)?tT(q,Qi,e,0,!1,Lt):q.initializer?Lt(q.name,nt(q.initializer,Qi,yt)):q.name}function De(q,Oe,Lt){return We(q,Oe,Lt,!0)}function Pe(q,Oe,Lt){return We(q,Oe,Lt,!1)}function We(q,Oe,Lt,L){return o(t.cloneNode(q)),L?tn(q,fn(dt(t.createAssignment(q,Oe),Lt))):fn(dt(t.createAssignment(q,Oe),Lt))}function At(q,Oe){if(M.exportEquals)return q;const Lt=Oe.importClause;if(!Lt)return q;Lt.name&&(q=vt(q,Lt));const L=Lt.namedBindings;if(L)switch(L.kind){case 274:q=vt(q,L);break;case 275:for(const _e of L.elements)q=vt(q,_e);break}return q}function Se(q,Oe){return M.exportEquals?q:vt(q,Oe)}function je(q,Oe,Lt){if(M.exportEquals)return q;for(const L of Oe.declarationList.declarations)(L.initializer||Lt)&&(q=at(q,L));return q}function at(q,Oe,Lt){if(M.exportEquals)return q;if(ta(Oe.name))for(const L of Oe.name.elements)jc(L)||(q=at(q,L));else sl(Oe.name)||(q=vt(q,Oe,void 0));return q}function Gt(q,Oe){if(M.exportEquals)return q;let Lt;if(Zr(Oe,32)){const L=Zr(Oe,2048)?t.createStringLiteral("default"):Oe.name;q=$e(q,L,t.getLocalName(Oe)),Lt=em(L)}return Oe.name&&(q=vt(q,Oe,Lt)),q}function vt(q,Oe,Lt){if(M.exportEquals)return q;const L=t.getDeclarationName(Oe),_e=M.exportSpecifiers.get(L);if(_e)for(const J of _e)J.name.escapedText!==Lt&&(q=$e(q,J.name,L));return q}function $e(q,Oe,Lt,L){return q=xn(q,It(Oe,Lt,L)),q}function It(q,Oe,Lt){const L=t.createExpressionStatement(tn(q,Oe));return Xu(L),Lt||pr(L,3072),L}function tn(q,Oe){const Lt=Ve(q)?t.createStringLiteralFromNode(q):q;return pr(Oe,ja(Oe)|3072),ac(t.createCallExpression(C,void 0,[Lt,Oe]),Oe)}function rn(q){switch(q.kind){case 243:return ve(q);case 262:return pe(q);case 263:return ie(q);case 248:return Pn(q,!0);case 249:return Xn(q);case 250:return hn(q);case 246:return _i(q);case 247:return ao(q);case 256:return Oi(q);case 254:return No(q);case 245:return Mn(q);case 255:return Di(q);case 269:return Ar(q);case 296:return sn(q);case 297:return tt(q);case 258:return zt(q);case 299:return Rn(q);case 241:return li(q);default:return Qi(q)}}function Pn(q,Oe){const Lt=K;return K=q,q=t.updateForStatement(q,nt(q.initializer,Oe?$t:Io,Af),nt(q.condition,Qi,yt),nt(q.incrementor,Io,yt),Rd(q.statement,Oe?rn:Qi,e)),K=Lt,q}function Xn(q){const Oe=K;return K=q,q=t.updateForInStatement(q,$t(q.initializer),nt(q.expression,Qi,yt),Rd(q.statement,rn,e)),K=Oe,q}function hn(q){const Oe=K;return K=q,q=t.updateForOfStatement(q,q.awaitModifier,$t(q.initializer),nt(q.expression,Qi,yt),Rd(q.statement,rn,e)),K=Oe,q}function Qt(q){return Uc(q)&&He(q)}function $t(q){if(Qt(q)){let Oe;for(const Lt of q.declarations)Oe=xn(Oe,Ee(Lt,!1)),Lt.initializer||Le(Lt);return Oe?t.inlineExpressions(Oe):t.createOmittedExpression()}else return nt(q,Io,Af)}function _i(q){return t.updateDoStatement(q,Rd(q.statement,rn,e),nt(q.expression,Qi,yt))}function ao(q){return t.updateWhileStatement(q,nt(q.expression,Qi,yt),Rd(q.statement,rn,e))}function Oi(q){return t.updateLabeledStatement(q,q.label,N.checkDefined(nt(q.statement,rn,qi,t.liftToBlock)))}function No(q){return t.updateWithStatement(q,nt(q.expression,Qi,yt),N.checkDefined(nt(q.statement,rn,qi,t.liftToBlock)))}function Mn(q){return t.updateIfStatement(q,nt(q.expression,Qi,yt),N.checkDefined(nt(q.thenStatement,rn,qi,t.liftToBlock)),nt(q.elseStatement,rn,qi,t.liftToBlock))}function Di(q){return t.updateSwitchStatement(q,nt(q.expression,Qi,yt),N.checkDefined(nt(q.caseBlock,rn,SP)))}function Ar(q){const Oe=K;return K=q,q=t.updateCaseBlock(q,Vn(q.clauses,rn,L4)),K=Oe,q}function sn(q){return t.updateCaseClause(q,nt(q.expression,Qi,yt),Vn(q.statements,rn,qi))}function tt(q){return In(q,rn,e)}function zt(q){return In(q,rn,e)}function Rn(q){const Oe=K;return K=q,q=t.updateCatchClause(q,q.variableDeclaration,N.checkDefined(nt(q.block,rn,Xo))),K=Oe,q}function li(q){const Oe=K;return K=q,q=In(q,rn,e),K=Oe,q}function hi(q,Oe){if(!(q.transformFlags&276828160))return q;switch(q.kind){case 248:return Pn(q,!1);case 244:return ma(q);case 217:return Wa(q,Oe);case 360:return Sn(q,Oe);case 226:if(jv(q))return qe(q,Oe);break;case 213:if(Bp(q))return kn(q);break;case 224:case 225:return ft(q,Oe)}return In(q,Qi,e)}function Qi(q){return hi(q,!1)}function Io(q){return hi(q,!0)}function ma(q){return t.updateExpressionStatement(q,nt(q.expression,Io,yt))}function Wa(q,Oe){return t.updateParenthesizedExpression(q,nt(q.expression,Oe?Io:Qi,yt))}function Sn(q,Oe){return t.updatePartiallyEmittedExpression(q,nt(q.expression,Oe?Io:Qi,yt))}function kn(q){const Oe=yI(t,q,R,u,l,s),Lt=nt(Xc(q.arguments),Qi,yt),L=Oe&&(!Lt||!Ma(Lt)||Lt.text!==Oe.text)?Oe:Lt;return t.createCallExpression(t.createPropertyAccessExpression(O,t.createIdentifier("import")),void 0,L?[L]:[])}function qe(q,Oe){return mt(q.left)?tT(q,Qi,e,0,!Oe):In(q,Qi,e)}function mt(q){if(Lc(q,!0))return mt(q.left);if(e_(q))return mt(q.expression);if(Oa(q))return bt(q.properties,mt);if(_d(q))return bt(q.elements,mt);if(rp(q))return mt(q.name);if(hc(q))return mt(q.initializer);if(Ve(q)){const Oe=l.getReferencedExportContainer(q);return Oe!==void 0&&Oe.kind===312}else return!1}function ft(q,Oe){if((q.operator===46||q.operator===47)&&Ve(q.operand)&&!sl(q.operand)&&!qg(q.operand)&&!RU(q.operand)){const Lt=Vt(q.operand);if(Lt){let L,_e=nt(q.operand,Qi,yt);tb(q)?_e=t.updatePrefixUnaryExpression(q,_e):(_e=t.updatePostfixUnaryExpression(q,_e),Oe||(L=t.createTempVariable(o),_e=t.createAssignment(L,_e),dt(_e,q)),_e=t.createComma(_e,t.cloneNode(q.operand)),dt(_e,q));for(const J of Lt)_e=tn(J,fn(_e));return L&&(_e=t.createComma(_e,L),dt(_e,q)),_e}}return In(q,Qi,e)}function Ct(q){switch(q.kind){case 95:case 90:return}return q}function le(q,Oe,Lt){if(Oe.kind===312){const L=Wu(Oe);R=Oe,M=m[L],C=b[L],Z=A[L],O=I[L],Z&&delete A[L],h(q,Oe,Lt),R=void 0,M=void 0,C=void 0,O=void 0,Z=void 0}else h(q,Oe,Lt)}function Fe(q,Oe){return Oe=p(q,Oe),_n(Oe)?Oe:q===1?ot(Oe):q===4?pt(Oe):Oe}function pt(q){switch(q.kind){case 304:return j(q)}return q}function j(q){var Oe,Lt;const L=q.name;if(!sl(L)&&!qg(L)){const _e=l.getReferencedImportDeclaration(L);if(_e){if(Sh(_e))return dt(t.createPropertyAssignment(t.cloneNode(L),t.createPropertyAccessExpression(t.getGeneratedNameForNode(_e.parent),t.createIdentifier("default"))),q);if(np(_e))return dt(t.createPropertyAssignment(t.cloneNode(L),t.createPropertyAccessExpression(t.getGeneratedNameForNode(((Lt=(Oe=_e.parent)==null?void 0:Oe.parent)==null?void 0:Lt.parent)||_e),t.cloneNode(_e.propertyName||_e.name))),q)}}return q}function ot(q){switch(q.kind){case 80:return Rt(q);case 226:return Ye(q);case 236:return _t(q)}return q}function Rt(q){var Oe,Lt;if(ja(q)&8192){const L=iw(R);return L?t.createPropertyAccessExpression(L,q):q}if(!sl(q)&&!qg(q)){const L=l.getReferencedImportDeclaration(q);if(L){if(Sh(L))return dt(t.createPropertyAccessExpression(t.getGeneratedNameForNode(L.parent),t.createIdentifier("default")),q);if(np(L))return dt(t.createPropertyAccessExpression(t.getGeneratedNameForNode(((Lt=(Oe=L.parent)==null?void 0:Oe.parent)==null?void 0:Lt.parent)||L),t.cloneNode(L.propertyName||L.name)),q)}}return q}function Ye(q){if(Vv(q.operatorToken.kind)&&Ve(q.left)&&(!sl(q.left)||hL(q.left))&&!qg(q.left)){const Oe=Vt(q.left);if(Oe){let Lt=q;for(const L of Oe)Lt=tn(L,fn(Lt));return Lt}}return q}function _t(q){return dR(q)?t.createPropertyAccessExpression(O,t.createIdentifier("meta")):q}function Vt(q){let Oe;const Lt=vn(q);if(Lt){const L=l.getReferencedExportContainer(q,!1);L&&L.kind===312&&(Oe=xn(Oe,t.getDeclarationName(Lt))),Oe=Jr(Oe,M==null?void 0:M.exportedBindings[Wu(Lt)])}else if(sl(q)&&hL(q)){const L=M==null?void 0:M.exportSpecifiers.get(q);if(L){const _e=[];for(const J of L)_e.push(J.name);return _e}}return Oe}function vn(q){if(!sl(q)){const Oe=l.getReferencedImportDeclaration(q);if(Oe)return Oe;const Lt=l.getReferencedValueDeclaration(q);if(Lt&&(M!=null&&M.exportedBindings[Wu(Lt)]))return Lt;const L=l.getReferencedValueDeclarations(q);if(L){for(const _e of L)if(_e!==Lt&&(M!=null&&M.exportedBindings[Wu(_e)]))return _e}return Lt}}function fn(q){return Z===void 0&&(Z=[]),Z[as(q)]=!0,q}function _n(q){return Z&&q.id&&Z[q.id]}}var nHe=T({"src/compiler/transformers/module/system.ts"(){ra()}});function gJ(e){const{factory:t,getEmitHelperFactory:r}=e,i=e.getEmitHost(),o=e.getEmitResolver(),s=e.getCompilerOptions(),l=os(s),u=e.onEmitNode,p=e.onSubstituteNode;e.onEmitNode=Z,e.onSubstituteNode=V,e.enableEmitNotification(312),e.enableSubstitution(80);let h,m,b;return Pm(e,A);function A(G){if(G.isDeclarationFile)return G;if(sc(G)||om(s)){m=G,b=void 0;let ne=I(G);return m=void 0,b&&(ne=t.updateSourceFile(ne,dt(t.createNodeArray(yj(ne.statements.slice(),b)),ne.statements))),!sc(G)||wu(s)===200||bt(ne.statements,EL)?ne:t.updateSourceFile(ne,dt(t.createNodeArray([...ne.statements,tw(t)]),ne.statements))}return G}function I(G){const ne=YH(t,r(),G,s);if(ne){const he=[],ye=t.copyPrologue(G.statements,he);return xn(he,ne),Jr(he,Vn(G.statements,R,qi,ye)),t.updateSourceFile(G,dt(t.createNodeArray(he),G.statements))}else return In(G,R,e)}function R(G){switch(G.kind){case 271:return wu(s)>=100?C(G):void 0;case 277:return U(G);case 278:return K(G)}return G}function M(G){const ne=yI(t,G,N.checkDefined(m),i,o,s),he=[];if(ne&&he.push(ne),wu(s)===200)return t.createCallExpression(t.createIdentifier("require"),void 0,he);if(!b){const $=t.createUniqueName("_createRequire",48),Y=t.createImportDeclaration(void 0,t.createImportClause(!1,void 0,t.createNamedImports([t.createImportSpecifier(!1,t.createIdentifier("createRequire"),$)])),t.createStringLiteral("module"),void 0),oe=t.createUniqueName("__require",48),fe=t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(oe,void 0,void 0,t.createCallExpression(t.cloneNode($),void 0,[t.createPropertyAccessExpression(t.createMetaProperty(102,t.createIdentifier("meta")),t.createIdentifier("url"))]))],l>=2?2:0));b=[Y,fe]}const ye=b[1].declarationList.declarations[0].name;return N.assertNode(ye,Ve),t.createCallExpression(t.cloneNode(ye),void 0,he)}function C(G){N.assert(h0(G),"import= for internal module references should be handled in an earlier transformer.");let ne;return ne=xn(ne,Cr(dt(t.createVariableStatement(void 0,t.createVariableDeclarationList([t.createVariableDeclaration(t.cloneNode(G.name),void 0,void 0,M(G))],l>=2?2:0)),G),G)),ne=O(ne,G),lh(ne)}function O(G,ne){return Zr(ne,32)&&(G=xn(G,t.createExportDeclaration(void 0,ne.isTypeOnly,t.createNamedExports([t.createExportSpecifier(!1,void 0,Sr(ne.name))])))),G}function U(G){return G.isExportEquals?wu(s)===200?Cr(t.createExpressionStatement(t.createAssignment(t.createPropertyAccessExpression(t.createIdentifier("module"),"exports"),G.expression)),G):void 0:G}function K(G){if(s.module!==void 0&&s.module>5||!G.exportClause||!Th(G.exportClause)||!G.moduleSpecifier)return G;const ne=G.exportClause.name,he=t.getGeneratedNameForNode(ne),ye=t.createImportDeclaration(void 0,t.createImportClause(!1,void 0,t.createNamespaceImport(he)),G.moduleSpecifier,G.attributes);Cr(ye,G.exportClause);const $=U4(G)?t.createExportDefault(he):t.createExportDeclaration(void 0,!1,t.createNamedExports([t.createExportSpecifier(!1,he,ne)]));return Cr($,G),[ye,$]}function Z(G,ne,he){$i(ne)?((sc(ne)||om(s))&&s.importHelpers&&(h=new Map),u(G,ne,he),h=void 0):u(G,ne,he)}function V(G,ne){return ne=p(G,ne),h&&Ve(ne)&&ja(ne)&8192?se(ne):ne}function se(G){const ne=Sr(G);let he=h.get(ne);return he||h.set(ne,he=t.createUniqueName(ne,48)),he}}var rHe=T({"src/compiler/transformers/module/esnextAnd2015.ts"(){ra()}});function sce(e){const t=e.onSubstituteNode,r=e.onEmitNode,i=gJ(e),o=e.onSubstituteNode,s=e.onEmitNode;e.onSubstituteNode=t,e.onEmitNode=r;const l=hJ(e),u=e.onSubstituteNode,p=e.onEmitNode;e.onSubstituteNode=m,e.onEmitNode=b,e.enableSubstitution(312),e.enableEmitNotification(312);let h;return R;function m(C,O){return $i(O)?(h=O,t(C,O)):h?h.impliedNodeFormat===99?o(C,O):u(C,O):t(C,O)}function b(C,O,U){return $i(O)&&(h=O),h?h.impliedNodeFormat===99?s(C,O,U):p(C,O,U):r(C,O,U)}function A(C){return C.impliedNodeFormat===99?i:l}function I(C){if(C.isDeclarationFile)return C;h=C;const O=A(C)(C);return h=void 0,N.assert($i(O)),O}function R(C){return C.kind===312?I(C):M(C)}function M(C){return e.factory.createBundle(wt(C.sourceFiles,I),C.prepends)}}var iHe=T({"src/compiler/transformers/module/node.ts"(){ra()}});function d7(e){return wi(e)||Jo(e)||yp(e)||Qa(e)||Fv(e)||Fy(e)||Jk(e)||sI(e)||ql(e)||bh(e)||Ac(e)||Ao(e)||gl(e)||Kv(e)||tu(e)||Nm(e)||Ml(e)||t1(e)||Fr(e)||Qs(e)||mr(e)||Zf(e)}function lce(e){if(Fv(e)||Fy(e))return t;return bh(e)||ql(e)?i:Yv(e);function t(s){const l=r(s);return l!==void 0?{diagnosticMessage:l,errorNode:e,typeName:e.name}:void 0}function r(s){return sa(e)?s.errorModuleName?s.accessibility===2?f.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:f.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:e.parent.kind===263?s.errorModuleName?s.accessibility===2?f.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:f.Public_property_0_of_exported_class_has_or_is_using_private_name_1:s.errorModuleName?f.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:f.Property_0_of_exported_interface_has_or_is_using_private_name_1}function i(s){const l=o(s);return l!==void 0?{diagnosticMessage:l,errorNode:e,typeName:e.name}:void 0}function o(s){return sa(e)?s.errorModuleName?s.accessibility===2?f.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:f.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:e.parent.kind===263?s.errorModuleName?s.accessibility===2?f.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:f.Public_method_0_of_exported_class_has_or_is_using_private_name_1:s.errorModuleName?f.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:f.Method_0_of_exported_interface_has_or_is_using_private_name_1}}function Yv(e){if(wi(e)||Jo(e)||yp(e)||Fr(e)||Qs(e)||mr(e)||Qa(e)||Ml(e))return r;return Fv(e)||Fy(e)?i:Jk(e)||sI(e)||ql(e)||bh(e)||Ac(e)||t1(e)?o:Ao(e)?mp(e,e.parent)&&Zr(e.parent,2)?r:s:gl(e)?u:Kv(e)?p:tu(e)?h:Nm(e)||Zf(e)?m:N.assertNever(e,`Attempted to set a declaration diagnostic context for unhandled node kind: ${N.formatSyntaxKind(e.kind)}`);function t(b){if(e.kind===260||e.kind===208)return b.errorModuleName?b.accessibility===2?f.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:f.Exported_variable_0_has_or_is_using_private_name_1;if(e.kind===172||e.kind===211||e.kind===212||e.kind===226||e.kind===171||e.kind===169&&Zr(e.parent,2))return sa(e)?b.errorModuleName?b.accessibility===2?f.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:f.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:e.parent.kind===263||e.kind===169?b.errorModuleName?b.accessibility===2?f.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:f.Public_property_0_of_exported_class_has_or_is_using_private_name_1:b.errorModuleName?f.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:f.Property_0_of_exported_interface_has_or_is_using_private_name_1}function r(b){const A=t(b);return A!==void 0?{diagnosticMessage:A,errorNode:e,typeName:e.name}:void 0}function i(b){let A;return e.kind===178?sa(e)?A=b.errorModuleName?f.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:f.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:A=b.errorModuleName?f.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:f.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:sa(e)?A=b.errorModuleName?b.accessibility===2?f.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:f.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:A=b.errorModuleName?b.accessibility===2?f.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:f.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1,{diagnosticMessage:A,errorNode:e.name,typeName:e.name}}function o(b){let A;switch(e.kind){case 180:A=b.errorModuleName?f.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:f.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 179:A=b.errorModuleName?f.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:f.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 181:A=b.errorModuleName?f.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:f.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 174:case 173:sa(e)?A=b.errorModuleName?b.accessibility===2?f.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:f.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:f.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:e.parent.kind===263?A=b.errorModuleName?b.accessibility===2?f.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:f.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:f.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:A=b.errorModuleName?f.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:f.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0;break;case 262:A=b.errorModuleName?b.accessibility===2?f.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:f.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:f.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return N.fail("This is unknown kind for signature: "+e.kind)}return{diagnosticMessage:A,errorNode:e.name||e}}function s(b){const A=l(b);return A!==void 0?{diagnosticMessage:A,errorNode:e,typeName:e.name}:void 0}function l(b){switch(e.parent.kind){case 176:return b.errorModuleName?b.accessibility===2?f.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 180:case 185:return b.errorModuleName?f.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 179:return b.errorModuleName?f.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 181:return b.errorModuleName?f.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 174:case 173:return sa(e.parent)?b.errorModuleName?b.accessibility===2?f.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:e.parent.parent.kind===263?b.errorModuleName?b.accessibility===2?f.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:b.errorModuleName?f.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;case 262:case 184:return b.errorModuleName?b.accessibility===2?f.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_exported_function_has_or_is_using_private_name_1;case 178:case 177:return b.errorModuleName?b.accessibility===2?f.Parameter_0_of_accessor_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:f.Parameter_0_of_accessor_has_or_is_using_name_1_from_private_module_2:f.Parameter_0_of_accessor_has_or_is_using_private_name_1;default:return N.fail(`Unknown parent for parameter: ${N.formatSyntaxKind(e.parent.kind)}`)}}function u(){let b;switch(e.parent.kind){case 263:b=f.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 264:b=f.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 200:b=f.Type_parameter_0_of_exported_mapped_object_type_is_using_private_name_1;break;case 185:case 180:b=f.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 179:b=f.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 174:case 173:sa(e.parent)?b=f.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:e.parent.parent.kind===263?b=f.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:b=f.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1;break;case 184:case 262:b=f.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 195:b=f.Extends_clause_for_inferred_type_0_has_or_is_using_private_name_1;break;case 265:b=f.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return N.fail("This is unknown parent for type parameter: "+e.parent.kind)}return{diagnosticMessage:b,errorNode:e,typeName:e.name}}function p(){let b;return Ic(e.parent.parent)?b=of(e.parent)&&e.parent.token===119?f.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:e.parent.parent.name?f.extends_clause_of_exported_class_0_has_or_is_using_private_name_1:f.extends_clause_of_exported_class_has_or_is_using_private_name_0:b=f.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1,{diagnosticMessage:b,errorNode:e,typeName:Mo(e.parent.parent)}}function h(){return{diagnosticMessage:f.Import_declaration_0_is_using_private_name_1,errorNode:e,typeName:e.name}}function m(b){return{diagnosticMessage:b.errorModuleName?f.Exported_type_alias_0_has_or_is_using_private_name_1_from_module_2:f.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:Zf(e)?N.checkDefined(e.typeExpression):e.type,typeName:Zf(e)?Mo(e):e.name}}}var oHe=T({"src/compiler/transformers/declarations/diagnostics.ts"(){ra()}});function cce(e,t,r){const i=e.getCompilerOptions();return Fw(t,e,w,i,r?[r]:nr(e.getSourceFiles(),Gj),[vJ],!1).diagnostics}function vJ(e){const t=()=>N.fail("Diagnostic emitted without context");let r=t,i=!0,o=!1,s=!1,l=!1,u=!1,p,h,m,b,A,I;const{factory:R}=e,M=e.getEmitHost(),C={trackSymbol:pe,reportInaccessibleThisError:Ee,reportInaccessibleUniqueSymbolError:Le,reportCyclicStructureError:He,reportPrivateInBaseOfClassExpression:ie,reportLikelyUnsafeImportRequiredError:De,reportTruncationError:Pe,moduleResolverHost:M,trackReferencedAmbientModule:Y,trackExternalModuleSymbolOfImportTypeNode:Ne,reportNonlocalAugmentation:We,reportNonSerializableProperty:At};let O,U,K,Z,V,se;const G=e.getEmitResolver(),ne=e.getCompilerOptions(),{noResolve:he,stripInternal:ye}=ne;return je;function $(j){if(j){h=h||new Set;for(const ot of j)h.add(ot)}}function Y(j,ot){const Rt=G.getTypeReferenceDirectivesForSymbol(ot,-1);if(Me(Rt))return $(Rt);const Ye=jn(j);Z.set(Wu(Ye),Ye)}function oe(j){const ot=vR(j),Rt=ot&&G.tryFindAmbientModule(ot);if(Rt!=null&&Rt.declarations)for(const Ye of Rt.declarations)ku(Ye)&&jn(Ye)!==K&&Y(Ye,Rt)}function fe(j){if(j.accessibility===0){if(j.aliasesToMakeVisible)if(!m)m=j.aliasesToMakeVisible;else for(const ot of j.aliasesToMakeVisible)Tf(m,ot)}else{const ot=r(j);if(ot)return ot.typeName?e.addDiagnostic(wr(j.errorNode||ot.errorNode,ot.diagnosticMessage,fc(ot.typeName),j.errorSymbolName,j.errorModuleName)):e.addDiagnostic(wr(j.errorNode||ot.errorNode,ot.diagnosticMessage,j.errorSymbolName,j.errorModuleName)),!0}return!1}function Ne(j){o||(I||(I=[])).push(j)}function pe(j,ot,Rt){if(j.flags&262144)return!1;const Ye=fe(G.isSymbolAccessible(j,ot,Rt,!0));return $(G.getTypeReferenceDirectivesForSymbol(j,Rt)),Ye}function ie(j){(O||U)&&e.addDiagnostic(wr(O||U,f.Property_0_of_exported_class_expression_may_not_be_private_or_protected,j))}function ve(){return O?Rs(O):U&&Mo(U)?Rs(Mo(U)):U&&kl(U)?U.isExportEquals?"export=":"default":"(Missing)"}function Le(){(O||U)&&e.addDiagnostic(wr(O||U,f.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,ve(),"unique symbol"))}function He(){(O||U)&&e.addDiagnostic(wr(O||U,f.The_inferred_type_of_0_references_a_type_with_a_cyclic_structure_which_cannot_be_trivially_serialized_A_type_annotation_is_necessary,ve()))}function Ee(){(O||U)&&e.addDiagnostic(wr(O||U,f.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,ve(),"this"))}function De(j){(O||U)&&e.addDiagnostic(wr(O||U,f.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,ve(),j))}function Pe(){(O||U)&&e.addDiagnostic(wr(O||U,f.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed))}function We(j,ot,Rt){var Ye;const _t=(Ye=ot.declarations)==null?void 0:Ye.find(vn=>jn(vn)===j),Vt=nr(Rt.declarations,vn=>jn(vn)!==j);if(_t&&Vt)for(const vn of Vt)e.addDiagnostic(wa(wr(vn,f.Declaration_augments_declaration_in_another_file_This_cannot_be_serialized),wr(_t,f.This_is_the_declaration_being_augmented_Consider_moving_the_augmenting_declaration_into_the_same_file)))}function At(j){(O||U)&&e.addDiagnostic(wr(O||U,f.The_type_of_this_node_cannot_be_serialized_because_its_property_0_cannot_be_serialized,j))}function Se(j,ot){const Rt=r;r=_t=>_t.errorNode&&d7(_t.errorNode)?Yv(_t.errorNode)(_t):{diagnosticMessage:_t.errorModuleName?f.Declaration_emit_for_this_file_requires_using_private_name_0_from_module_1_An_explicit_type_annotation_may_unblock_declaration_emit:f.Declaration_emit_for_this_file_requires_using_private_name_0_An_explicit_type_annotation_may_unblock_declaration_emit,errorNode:_t.errorNode||j};const Ye=G.getDeclarationStatementsForSourceFile(j,nT,C,ot);return r=Rt,Ye}function je(j){if(j.kind===312&&j.isDeclarationFile)return j;if(j.kind===313){o=!0,Z=new Map,V=new Map;let Oe=!1;const Lt=R.createBundle(wt(j.sourceFiles,J=>{if(J.isDeclarationFile)return;if(Oe=Oe||J.hasNoDefaultLib,K=J,p=J,m=void 0,A=!1,b=new Map,r=t,l=!1,u=!1,at(J,Z),Gt(J,V),zp(J)||Qf(J)){s=!1,i=!1;const Ge=dd(J)?R.createNodeArray(Se(J,!0)):Vn(J.statements,li,qi);return R.updateSourceFile(J,[R.createModuleDeclaration([R.createModifier(138)],R.createStringLiteral(T3(e.getEmitHost(),J)),R.createModuleBlock(dt(R.createNodeArray(tt(Ge)),J.statements)))],!0,[],[],!1,[])}i=!0;const me=dd(J)?R.createNodeArray(Se(J)):Vn(J.statements,li,qi);return R.updateSourceFile(J,tt(me),!0,[],[],!1,[])}),Hi(j.prepends,J=>{if(J.kind===315){const me=mH(J,"dts",ye);return Oe=Oe||!!me.hasNoDefaultLib,at(me,Z),$(wt(me.typeReferenceDirectives,Ge=>[Ge.fileName,Ge.resolutionMode])),Gt(me,V),me}return J}));Lt.syntheticFileReferences=[],Lt.syntheticTypeReferences=fn(),Lt.syntheticLibReferences=vn(),Lt.hasNoDefaultLib=Oe;const L=ai(Lu(XP(j,M,!0).declarationFilePath)),_e=q(Lt.syntheticFileReferences,L);return Z.forEach(_e),Lt}i=!0,l=!1,u=!1,p=j,K=j,r=t,o=!1,s=!1,A=!1,m=void 0,b=new Map,h=void 0,Z=at(K,new Map),V=Gt(K,new Map);const ot=[],Rt=ai(Lu(XP(j,M,!0).declarationFilePath)),Ye=q(ot,Rt);let _t;if(dd(K))_t=R.createNodeArray(Se(j)),Z.forEach(Ye),se=nr(_t,TS);else{const Oe=Vn(j.statements,li,qi);_t=dt(R.createNodeArray(tt(Oe)),j.statements),Z.forEach(Ye),se=nr(_t,TS),sc(j)&&(!s||l&&!u)&&(_t=dt(R.createNodeArray([..._t,tw(R)]),_t))}const Vt=R.updateSourceFile(j,_t,!0,ot,fn(),j.hasNoDefaultLib,vn());return Vt.exportedModulesFromDeclarationEmit=I,Vt;function vn(){return zo(V.keys(),Oe=>({fileName:Oe,pos:-1,end:-1}))}function fn(){return h?Hi(zo(h.keys()),_n):[]}function _n([Oe,Lt]){if(se){for(const L of se)if(tu(L)&&Ah(L.moduleReference)){const _e=L.moduleReference.expression;if(ls(_e)&&_e.text===Oe)return}else if(kc(L)&&Ma(L.moduleSpecifier)&&L.moduleSpecifier.text===Oe)return}return{fileName:Oe,pos:-1,end:-1,...Lt?{resolutionMode:Lt}:void 0}}function q(Oe,Lt){return L=>{if(I!=null&&I.includes(L.symbol))return;let _e;if(L.isDeclarationFile)_e=L.fileName;else{if(o&&Nr(j.sourceFiles,L))return;const J=XP(L,M,!0);_e=J.declarationFilePath||J.jsFilePath||L.fileName}if(_e){const J=HF(ne,K,go(Lt,M.getCurrentDirectory()),go(_e,M.getCurrentDirectory()),M);if(!Wp(J)){$([[J,void 0]]);return}let me=RA(Lt,_e,M.getCurrentDirectory(),M.getCanonicalFileName,!1);if(uo(me,"./")&&xA(me)&&(me=me.substring(2)),uo(me,"node_modules/")||L0(me))return;Oe.push({pos:-1,end:-1,fileName:me})}}}}function at(j,ot){return he||!KS(j)&&dd(j)||Ue(j.referencedFiles,Rt=>{const Ye=M.getSourceFileFromReference(j,Rt);Ye&&ot.set(Wu(Ye),Ye)}),ot}function Gt(j,ot){return Ue(j.libReferenceDirectives,Rt=>{M.getLibFileFromReference(Rt)&&ot.set(ch(Rt.fileName),!0)}),ot}function vt(j){if(j.kind===80)return j;return j.kind===207?R.updateArrayBindingPattern(j,Vn(j.elements,ot,N4)):R.updateObjectBindingPattern(j,Vn(j.elements,ot,Qa));function ot(Rt){return Rt.kind===232?Rt:(Rt.propertyName&&Za(Rt.propertyName)&&Gl(Rt.propertyName.expression)&&Oi(Rt.propertyName.expression,p),R.updateBindingElement(Rt,Rt.dotDotDotToken,Rt.propertyName,vt(Rt.name),It(Rt)?Rt.initializer:void 0))}}function $e(j,ot,Rt){let Ye;A||(Ye=r,r=Yv(j));const _t=R.updateParameterDeclaration(j,sHe(R,j,ot),j.dotDotDotToken,vt(j.name),G.isOptionalParameter(j)?j.questionToken||R.createToken(58):void 0,rn(j,Rt||j.type,!0),tn(j));return A||(r=Ye),_t}function It(j){return lHe(j)&&G.isLiteralConstDeclaration(Do(j))}function tn(j){if(It(j))return G.createLiteralConstValue(Do(j),C)}function rn(j,ot,Rt){if(!Rt&&gp(j,2)||It(j))return;const Ye=j.kind===169&&(G.isRequiredInitializedParameter(j)||G.isOptionalUninitializedParameterProperty(j));if(ot&&!Ye)return nt(ot,zt,ji);if(!Do(j))return ot?nt(ot,zt,ji):R.createKeywordTypeNode(133);if(j.kind===178)return R.createKeywordTypeNode(133);O=j.name;let _t;if(A||(_t=r,r=Yv(j)),j.kind===260||j.kind===208)return Vt(G.createTypeOfDeclaration(j,p,nT,C));if(j.kind===169||j.kind===172||j.kind===171)return yp(j)||!j.initializer?Vt(G.createTypeOfDeclaration(j,p,nT,C,Ye)):Vt(G.createTypeOfDeclaration(j,p,nT,C,Ye)||G.createTypeOfExpression(j.initializer,p,nT,C));return Vt(G.createReturnTypeOfSignatureDeclaration(j,p,nT,C));function Vt(vn){return O=void 0,A||(r=_t),vn||R.createKeywordTypeNode(133)}}function Pn(j){switch(j=Do(j),j.kind){case 262:case 267:case 264:case 263:case 265:case 266:return!G.isDeclarationVisible(j);case 260:return!hn(j);case 271:case 272:case 278:case 277:return!1;case 175:return!0}return!1}function Xn(j){var ot;if(j.body)return!0;const Rt=(ot=j.symbol.declarations)==null?void 0:ot.filter(Ye=>Ac(Ye)&&!Ye.body);return!Rt||Rt.indexOf(j)===Rt.length-1}function hn(j){return jc(j)?!1:ta(j.name)?bt(j.name.elements,hn):G.isDeclarationVisible(j)}function Qt(j,ot,Rt){if(gp(j,2))return R.createNodeArray();const Ye=wt(ot,_t=>$e(_t,Rt));return Ye?R.createNodeArray(Ye,ot.hasTrailingComma):R.createNodeArray()}function $t(j,ot){let Rt;if(!ot){const Ye=qE(j);Ye&&(Rt=[$e(Ye)])}if(bp(j)){let Ye;if(!ot){const _t=FC(j);if(_t){const Vt=Fe(j,G.getAllAccessorDeclarations(j));Ye=$e(_t,void 0,Vt)}}Ye||(Ye=R.createParameterDeclaration(void 0,void 0,"value")),Rt=xn(Rt,Ye)}return R.createNodeArray(Rt||et)}function _i(j,ot){return gp(j,2)?void 0:Vn(ot,zt,gl)}function ao(j){return $i(j)||Nm(j)||Xl(j)||Ic(j)||hd(j)||ea(j)||t1(j)||JR(j)}function Oi(j,ot){const Rt=G.isEntityNameVisible(j,ot);fe(Rt),$(G.getTypeReferenceDirectivesForEntityName(j))}function No(j,ot){return Fp(j)&&Fp(ot)&&(j.jsDoc=ot.jsDoc),ac(j,w_(ot))}function Mn(j,ot){if(ot){if(s=s||j.kind!==267&&j.kind!==205,ls(ot))if(o){const Rt=eoe(e.getEmitHost(),G,j);if(Rt)return R.createStringLiteral(Rt)}else{const Rt=G.getSymbolOfExternalModuleSpecifier(ot);Rt&&(I||(I=[])).push(Rt)}return ot}}function Di(j){if(G.isDeclarationVisible(j))if(j.moduleReference.kind===283){const ot=xC(j);return R.updateImportEqualsDeclaration(j,j.modifiers,j.isTypeOnly,j.name,R.updateExternalModuleReference(j.moduleReference,Mn(j,ot)))}else{const ot=r;return r=Yv(j),Oi(j.moduleReference,p),r=ot,j}}function Ar(j){if(!j.importClause)return R.updateImportDeclaration(j,j.modifiers,j.importClause,Mn(j,j.moduleSpecifier),sn(j.attributes));const ot=j.importClause&&j.importClause.name&&G.isDeclarationVisible(j.importClause)?j.importClause.name:void 0;if(!j.importClause.namedBindings)return ot&&R.updateImportDeclaration(j,j.modifiers,R.updateImportClause(j.importClause,j.importClause.isTypeOnly,ot,void 0),Mn(j,j.moduleSpecifier),sn(j.attributes));if(j.importClause.namedBindings.kind===274){const Ye=G.isDeclarationVisible(j.importClause.namedBindings)?j.importClause.namedBindings:void 0;return ot||Ye?R.updateImportDeclaration(j,j.modifiers,R.updateImportClause(j.importClause,j.importClause.isTypeOnly,ot,Ye),Mn(j,j.moduleSpecifier),sn(j.attributes)):void 0}const Rt=Hi(j.importClause.namedBindings.elements,Ye=>G.isDeclarationVisible(Ye)?Ye:void 0);if(Rt&&Rt.length||ot)return R.updateImportDeclaration(j,j.modifiers,R.updateImportClause(j.importClause,j.importClause.isTypeOnly,ot,Rt&&Rt.length?R.updateNamedImports(j.importClause.namedBindings,Rt):void 0),Mn(j,j.moduleSpecifier),sn(j.attributes));if(G.isImportRequiredByAugmentation(j))return R.updateImportDeclaration(j,j.modifiers,void 0,Mn(j,j.moduleSpecifier),sn(j.attributes))}function sn(j){const ot=hD(j);return j&&ot!==void 0?j:void 0}function tt(j){for(;Me(m);){const Rt=m.shift();if(!q4(Rt))return N.fail(`Late replaced statement was found which is not handled by the declaration transformer!: ${N.formatSyntaxKind(Rt.kind)}`);const Ye=i;i=Rt.parent&&$i(Rt.parent)&&!(sc(Rt.parent)&&o);const _t=Io(Rt);i=Ye,b.set(Wu(Rt),_t)}return Vn(j,ot,qi);function ot(Rt){if(q4(Rt)){const Ye=Wu(Rt);if(b.has(Ye)){const _t=b.get(Ye);return b.delete(Ye),_t&&((To(_t)?bt(_t,C4):C4(_t))&&(l=!0),$i(Rt.parent)&&(To(_t)?bt(_t,EL):EL(_t))&&(s=!0)),_t}}return Rt}}function zt(j){if(qe(j)||Ju(j)&&(Pn(j)||jy(j)&&!G.isLateBound(Do(j)))||ea(j)&&G.isImplementationOfOverload(j)||jae(j))return;let ot;ao(j)&&(ot=p,p=j);const Rt=r,Ye=d7(j),_t=A;let Vt=(j.kind===187||j.kind===200)&&j.parent.kind!==265;if((ql(j)||bh(j))&&gp(j,2))return j.symbol&&j.symbol.declarations&&j.symbol.declarations[0]!==j?void 0:vn(R.createPropertyDeclaration(Ct(j),j.name,void 0,void 0,void 0));if(Ye&&!A&&(r=Yv(j)),lI(j)&&Oi(j.exprName,p),Vt&&(A=!0),uHe(j))switch(j.kind){case 233:{(Zd(j.expression)||Gl(j.expression))&&Oi(j.expression,p);const fn=In(j,zt,e);return vn(R.updateExpressionWithTypeArguments(fn,fn.expression,fn.typeArguments))}case 183:{Oi(j.typeName,p);const fn=In(j,zt,e);return vn(R.updateTypeReferenceNode(fn,fn.typeName,fn.typeArguments))}case 180:return vn(R.updateConstructSignature(j,_i(j,j.typeParameters),Qt(j,j.parameters),rn(j,j.type)));case 176:{const fn=R.createConstructorDeclaration(Ct(j),Qt(j,j.parameters,0),void 0);return vn(fn)}case 174:{if(Ji(j.name))return vn(void 0);const fn=R.createMethodDeclaration(Ct(j),void 0,j.name,j.questionToken,_i(j,j.typeParameters),Qt(j,j.parameters),rn(j,j.type),void 0);return vn(fn)}case 177:{if(Ji(j.name))return vn(void 0);const fn=Fe(j,G.getAllAccessorDeclarations(j));return vn(R.updateGetAccessorDeclaration(j,Ct(j),j.name,$t(j,gp(j,2)),rn(j,fn),void 0))}case 178:return Ji(j.name)?vn(void 0):vn(R.updateSetAccessorDeclaration(j,Ct(j),j.name,$t(j,gp(j,2)),void 0));case 172:return Ji(j.name)?vn(void 0):vn(R.updatePropertyDeclaration(j,Ct(j),j.name,j.questionToken,rn(j,j.type),tn(j)));case 171:return Ji(j.name)?vn(void 0):vn(R.updatePropertySignature(j,Ct(j),j.name,j.questionToken,rn(j,j.type)));case 173:return Ji(j.name)?vn(void 0):vn(R.updateMethodSignature(j,Ct(j),j.name,j.questionToken,_i(j,j.typeParameters),Qt(j,j.parameters),rn(j,j.type)));case 179:return vn(R.updateCallSignature(j,_i(j,j.typeParameters),Qt(j,j.parameters),rn(j,j.type)));case 181:return vn(R.updateIndexSignature(j,Ct(j),Qt(j,j.parameters),nt(j.type,zt,ji)||R.createKeywordTypeNode(133)));case 260:return ta(j.name)?Wa(j.name):(Vt=!0,A=!0,vn(R.updateVariableDeclaration(j,j.name,void 0,rn(j,j.type),tn(j))));case 168:return Rn(j)&&(j.default||j.constraint)?vn(R.updateTypeParameterDeclaration(j,j.modifiers,j.name,void 0,void 0)):vn(In(j,zt,e));case 194:{const fn=nt(j.checkType,zt,ji),_n=nt(j.extendsType,zt,ji),q=p;p=j.trueType;const Oe=nt(j.trueType,zt,ji);p=q;const Lt=nt(j.falseType,zt,ji);return N.assert(fn),N.assert(_n),N.assert(Oe),N.assert(Lt),vn(R.updateConditionalTypeNode(j,fn,_n,Oe,Lt))}case 184:return vn(R.updateFunctionTypeNode(j,Vn(j.typeParameters,zt,gl),Qt(j,j.parameters),N.checkDefined(nt(j.type,zt,ji))));case 185:return vn(R.updateConstructorTypeNode(j,Ct(j),Vn(j.typeParameters,zt,gl),Qt(j,j.parameters),N.checkDefined(nt(j.type,zt,ji))));case 205:return Vy(j)?(oe(j),vn(R.updateImportTypeNode(j,R.updateLiteralTypeNode(j.argument,Mn(j,j.argument.literal)),j.attributes,j.qualifier,Vn(j.typeArguments,zt,ji),j.isTypeOf))):vn(j);default:N.assertNever(j,`Attempted to process unhandled node kind: ${N.formatSyntaxKind(j.kind)}`)}return cI(j)&&bs(K,j.pos).line===bs(K,j.end).line&&pr(j,1),vn(In(j,zt,e));function vn(fn){return fn&&Ye&&jy(j)&&kn(j),ao(j)&&(p=ot),Ye&&!A&&(r=Rt),Vt&&(A=_t),fn===j?fn:fn&&Cr(No(fn,j),j)}}function Rn(j){return j.parent.kind===174&&gp(j.parent,2)}function li(j){if(!cHe(j)||qe(j))return;switch(j.kind){case 278:return $i(j.parent)&&(s=!0),u=!0,oe(j),R.updateExportDeclaration(j,j.modifiers,j.isTypeOnly,j.exportClause,Mn(j,j.moduleSpecifier),sn(j.attributes));case 277:{if($i(j.parent)&&(s=!0),u=!0,j.expression.kind===80)return j;{const Rt=R.createUniqueName("_default",16);r=()=>({diagnosticMessage:f.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:j}),U=j;const Ye=R.createVariableDeclaration(Rt,void 0,G.createTypeOfExpression(j.expression,j,nT,C),void 0);U=void 0;const _t=R.createVariableStatement(i?[R.createModifier(138)]:[],R.createVariableDeclarationList([Ye],2));return No(_t,j),Fk(j),[_t,R.updateExportAssignment(j,j.modifiers,Rt)]}}}const ot=Io(j);return b.set(Wu(j),ot),j}function hi(j){if(tu(j)||gp(j,2048)||!Cm(j))return j;const ot=R.createModifiersFromModifierFlags(pd(j)&131039);return R.replaceModifiers(j,ot)}function Qi(j,ot,Rt,Ye){const _t=R.updateModuleDeclaration(j,ot,Rt,Ye);if(ku(_t)||_t.flags&32)return _t;const Vt=R.createModuleDeclaration(_t.modifiers,_t.name,_t.body,_t.flags|32);return Cr(Vt,_t),dt(Vt,_t),Vt}function Io(j){if(m)for(;Gx(m,j););if(qe(j))return;switch(j.kind){case 271:{const vn=Di(j);return vn&&oe(j),vn}case 272:{const vn=Ar(j);return vn&&oe(j),vn}}if(Ju(j)&&Pn(j)||ea(j)&&G.isImplementationOfOverload(j))return;let ot;ao(j)&&(ot=p,p=j);const Rt=d7(j),Ye=r;Rt&&(r=Yv(j));const _t=i;switch(j.kind){case 265:{i=!1;const vn=Vt(R.updateTypeAliasDeclaration(j,Ct(j),j.name,Vn(j.typeParameters,zt,gl),N.checkDefined(nt(j.type,zt,ji))));return i=_t,vn}case 264:return Vt(R.updateInterfaceDeclaration(j,Ct(j),j.name,_i(j,j.typeParameters),pt(j.heritageClauses),Vn(j.members,zt,yS)));case 262:{const vn=Vt(R.updateFunctionDeclaration(j,Ct(j),void 0,j.name,_i(j,j.typeParameters),Qt(j,j.parameters),rn(j,j.type),void 0));if(vn&&G.isExpandoFunctionDeclaration(j)&&Xn(j)){const fn=G.getPropertiesOfContainerFunction(j),_n=Ih.createModuleDeclaration(void 0,vn.name||R.createIdentifier("_default"),R.createModuleBlock([]),32);qa(_n,p),_n.locals=ua(fn),_n.symbol=fn[0].parent;const q=[];let Oe=Hi(fn,Ge=>{if(!lW(Ge.valueDeclaration))return;const ke=Vi(Ge.escapedName);if(!tf(ke,99))return;r=Yv(Ge.valueDeclaration);const Tt=G.createTypeOfDeclaration(Ge.valueDeclaration,_n,nT,C);r=Ye;const kt=GA(ke),en=kt?R.getGeneratedNameForNode(Ge.valueDeclaration):R.createIdentifier(ke);kt&&q.push([en,ke]);const bn=R.createVariableDeclaration(en,void 0,Tt,void 0);return R.createVariableStatement(kt?void 0:[R.createToken(95)],R.createVariableDeclarationList([bn]))});q.length?Oe.push(R.createExportDeclaration(void 0,!1,R.createNamedExports(wt(q,([Ge,ke])=>R.createExportSpecifier(!1,Ge,ke))))):Oe=Hi(Oe,Ge=>R.replaceModifiers(Ge,0));const Lt=R.createModuleDeclaration(Ct(j),j.name,R.createModuleBlock(Oe),32);if(!gp(vn,2048))return[vn,Lt];const L=R.createModifiersFromModifierFlags(pd(vn)&-2081|128),_e=R.updateFunctionDeclaration(vn,L,void 0,vn.name,vn.typeParameters,vn.parameters,vn.type,void 0),J=R.updateModuleDeclaration(Lt,L,Lt.name,Lt.body),me=R.createExportAssignment(void 0,!1,Lt.name);return $i(j.parent)&&(s=!0),u=!0,[_e,J,me]}else return vn}case 267:{i=!1;const vn=j.body;if(vn&&vn.kind===268){const fn=l,_n=u;u=!1,l=!1;const q=Vn(vn.statements,li,qi);let Oe=tt(q);j.flags&33554432&&(l=!1),!R_(j)&&!ft(Oe)&&!u&&(l?Oe=R.createNodeArray([...Oe,tw(R)]):Oe=Vn(Oe,hi,qi));const Lt=R.updateModuleBlock(vn,Oe);i=_t,l=fn,u=_n;const L=Ct(j);return Vt(Qi(j,L,WE(j)?Mn(j,j.name):j.name,Lt))}else{i=_t;const fn=Ct(j);i=!1,nt(vn,li);const _n=Wu(vn),q=b.get(_n);return b.delete(_n),Vt(Qi(j,fn,j.name,q))}}case 263:{O=j.name,U=j;const vn=R.createNodeArray(Ct(j)),fn=_i(j,j.typeParameters),_n=ag(j);let q;if(_n){const me=r;q=WM(Pi(_n.parameters,Ge=>{if(!Zr(Ge,31)||qe(Ge))return;if(r=Yv(Ge),Ge.name.kind===80)return No(R.createPropertyDeclaration(Ct(Ge),Ge.name,Ge.questionToken,rn(Ge,Ge.type),tn(Ge)),Ge);return ke(Ge.name);function ke(Tt){let kt;for(const en of Tt.elements)jc(en)||(ta(en.name)&&(kt=So(kt,ke(en.name))),kt=kt||[],kt.push(R.createPropertyDeclaration(Ct(Ge),en.name,void 0,rn(en,void 0),void 0)));return kt}})),r=me}const Lt=bt(j.members,me=>!!me.name&&Ji(me.name))?[R.createPropertyDeclaration(void 0,R.createPrivateIdentifier("#private"),void 0,void 0,void 0)]:void 0,L=So(So(Lt,q),Vn(j.members,zt,$c)),_e=R.createNodeArray(L),J=D_(j);if(J&&!Gl(J.expression)&&J.expression.kind!==106){const me=j.name?Vi(j.name.escapedText):"default",Ge=R.createUniqueName(`${me}_base`,16);r=()=>({diagnosticMessage:f.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:J,typeName:j.name});const ke=R.createVariableDeclaration(Ge,void 0,G.createTypeOfExpression(J.expression,j,nT,C),void 0),Tt=R.createVariableStatement(i?[R.createModifier(138)]:[],R.createVariableDeclarationList([ke],2)),kt=R.createNodeArray(wt(j.heritageClauses,en=>{if(en.token===96){const bn=r;r=Yv(en.types[0]);const Bn=R.updateHeritageClause(en,wt(en.types,Hn=>R.updateExpressionWithTypeArguments(Hn,Ge,Vn(Hn.typeArguments,zt,ji))));return r=bn,Bn}return R.updateHeritageClause(en,Vn(R.createNodeArray(nr(en.types,bn=>Gl(bn.expression)||bn.expression.kind===106)),zt,Kv))}));return[Tt,Vt(R.updateClassDeclaration(j,vn,j.name,fn,kt,_e))]}else{const me=pt(j.heritageClauses);return Vt(R.updateClassDeclaration(j,vn,j.name,fn,me,_e))}}case 243:return Vt(ma(j));case 266:return Vt(R.updateEnumDeclaration(j,R.createNodeArray(Ct(j)),j.name,R.createNodeArray(Hi(j.members,vn=>{if(qe(vn))return;const fn=G.getConstantValue(vn),_n=fn===void 0?void 0:typeof fn=="string"?R.createStringLiteral(fn):fn<0?R.createPrefixUnaryExpression(41,R.createNumericLiteral(-fn)):R.createNumericLiteral(fn);return No(R.updateEnumMember(vn,vn.name,_n),vn)}))))}return N.assertNever(j,`Unhandled top-level node in declaration emit: ${N.formatSyntaxKind(j.kind)}`);function Vt(vn){return ao(j)&&(p=ot),Rt&&(r=Ye),j.kind===267&&(i=_t),vn===j?vn:(U=void 0,O=void 0,vn&&Cr(No(vn,j),j))}}function ma(j){if(!Ue(j.declarationList.declarations,hn))return;const ot=Vn(j.declarationList.declarations,zt,wi);if(!Me(ot))return;const Rt=R.createNodeArray(Ct(j));let Ye;return kL(j.declarationList)||LL(j.declarationList)?(Ye=R.createVariableDeclarationList(ot,2),Cr(Ye,j.declarationList),dt(Ye,j.declarationList),ac(Ye,j.declarationList)):Ye=R.updateVariableDeclarationList(j.declarationList,ot),R.updateVariableStatement(j,Rt,Ye)}function Wa(j){return ia(Hi(j.elements,ot=>Sn(ot)))}function Sn(j){if(j.kind!==232&&j.name)return hn(j)?ta(j.name)?Wa(j.name):R.createVariableDeclaration(j.name,void 0,rn(j,void 0),void 0):void 0}function kn(j){let ot;A||(ot=r,r=lce(j)),O=j.name,N.assert(G.isLateBound(Do(j)));const Ye=j.name.expression;Oi(Ye,p),A||(r=ot),O=void 0}function qe(j){return!!ye&&!!j&&_j(j,K)}function mt(j){return kl(j)||Yl(j)}function ft(j){return bt(j,mt)}function Ct(j){const ot=pd(j),Rt=le(j);return ot===Rt?kw(j.modifiers,Ye=>ii(Ye,xa),xa):R.createModifiersFromModifierFlags(Rt)}function le(j){let ot=130030,Rt=i&&!aHe(j)?128:0;const Ye=j.parent.kind===312;return(!Ye||o&&Ye&&sc(j.parent))&&(ot^=128,Rt=0),$xe(j,ot,Rt)}function Fe(j,ot){let Rt=uce(j);return!Rt&&j!==ot.firstAccessor&&(Rt=uce(ot.firstAccessor),r=Yv(ot.firstAccessor)),!Rt&&ot.secondAccessor&&j!==ot.secondAccessor&&(Rt=uce(ot.secondAccessor),r=Yv(ot.secondAccessor)),Rt}function pt(j){return R.createNodeArray(nr(wt(j,ot=>R.updateHeritageClause(ot,Vn(R.createNodeArray(nr(ot.types,Rt=>Gl(Rt.expression)||ot.token===96&&Rt.expression.kind===106)),zt,Kv))),ot=>ot.types&&!!ot.types.length))}}function aHe(e){return e.kind===264}function sHe(e,t,r,i){return e.createModifiersFromModifierFlags($xe(t,r,i))}function $xe(e,t=131070,r=0){let i=pd(e)&t|r;return i&2048&&!(i&32)&&(i^=32),i&2048&&i&128&&(i^=128),i}function uce(e){if(e)return e.kind===177?e.type:e.parameters.length>0?e.parameters[0].type:void 0}function lHe(e){switch(e.kind){case 172:case 171:return!gp(e,2);case 169:case 260:return!0}return!1}function cHe(e){switch(e.kind){case 262:case 267:case 271:case 264:case 263:case 265:case 266:case 243:case 272:case 278:case 277:return!0}return!1}function uHe(e){switch(e.kind){case 180:case 176:case 174:case 177:case 178:case 172:case 171:case 173:case 179:case 181:case 260:case 168:case 233:case 183:case 194:case 184:case 185:case 205:return!0}return!1}var nT,dHe=T({"src/compiler/transformers/declarations.ts"(){ra(),_le(),nT=531469}});function pHe(e){switch(e){case 99:case 7:case 6:case 5:case 200:return gJ;case 4:return ace;case 100:case 199:return sce;default:return hJ}}function yJ(e,t,r){return{scriptTransformers:fHe(e,t,r),declarationTransformers:mHe(t)}}function fHe(e,t,r){if(r)return et;const i=os(e),o=wu(e),s=dP(e),l=[];return Jr(l,t&&wt(t.before,Zxe)),l.push(Gle),e.experimentalDecorators&&l.push(Ule),q3(e)&&l.push(tce),i<99&&l.push($le),!e.experimentalDecorators&&(i<99||!s)&&l.push(Hle),l.push(Vle),i<8&&l.push(Yle),i<7&&l.push(Xle),i<6&&l.push(Kle),i<5&&l.push(Jle),i<4&&l.push(qle),i<3&&l.push(nce),i<2&&(l.push(rce),l.push(oce)),l.push(pHe(o)),i<1&&l.push(ice),Jr(l,t&&wt(t.after,Zxe)),l}function mHe(e){const t=[];return t.push(vJ),Jr(t,e&&wt(e.afterDeclarations,hHe)),t}function _He(e){return t=>OH(t)?e.transformBundle(t):e.transformSourceFile(t)}function Qxe(e,t){return r=>{const i=e(r);return typeof i=="function"?t(r,i):_He(i)}}function Zxe(e){return Qxe(e,Pm)}function hHe(e){return Qxe(e,(t,r)=>r)}function qP(e,t){return t}function Ww(e,t,r){r(e,t)}function Fw(e,t,r,i,o,s,l){var u,p;const h=new Array(363);let m,b,A,I=0,R=[],M=[],C=[],O=[],U=0,K=!1,Z=[],V=0,se,G,ne=qP,he=Ww,ye=0;const $=[],Y={factory:r,getCompilerOptions:()=>i,getEmitResolver:()=>e,getEmitHost:()=>t,getEmitHelperFactory:Td(()=>Nae(Y)),startLexicalEnvironment:Se,suspendLexicalEnvironment:je,resumeLexicalEnvironment:at,endLexicalEnvironment:Gt,setLexicalEnvironmentFlags:vt,getLexicalEnvironmentFlags:$e,hoistVariableDeclaration:Pe,hoistFunctionDeclaration:We,addInitializationStatement:At,startBlockScope:It,endBlockScope:tn,addBlockScopedVariable:rn,requestEmitHelper:Pn,readEmitHelpers:Xn,enableSubstitution:ie,enableEmitNotification:He,isSubstitutionEnabled:ve,isEmitNotificationEnabled:Ee,get onSubstituteNode(){return ne},set onSubstituteNode(Qt){N.assert(ye<1,"Cannot modify transformation hooks after initialization has completed."),N.assert(Qt!==void 0,"Value must not be 'undefined'"),ne=Qt},get onEmitNode(){return he},set onEmitNode(Qt){N.assert(ye<1,"Cannot modify transformation hooks after initialization has completed."),N.assert(Qt!==void 0,"Value must not be 'undefined'"),he=Qt},addDiagnostic(Qt){$.push(Qt)}};for(const Qt of o)vH(jn(Do(Qt)));il("beforeTransform");const oe=s.map(Qt=>Qt(Y)),fe=Qt=>{for(const $t of oe)Qt=$t(Qt);return Qt};ye=1;const Ne=[];for(const Qt of o)(u=sr)==null||u.push(sr.Phase.Emit,"transformNodes",Qt.kind===312?{path:Qt.path}:{kind:Qt.kind,pos:Qt.pos,end:Qt.end}),Ne.push((l?fe:pe)(Qt)),(p=sr)==null||p.pop();return ye=2,il("afterTransform"),ef("transformTime","beforeTransform","afterTransform"),{transformed:Ne,substituteNode:Le,emitNodeWithNotification:De,isEmitNotificationEnabled:Ee,dispose:hn,diagnostics:$};function pe(Qt){return Qt&&(!$i(Qt)||!Qt.isDeclarationFile)?fe(Qt):Qt}function ie(Qt){N.assert(ye<2,"Cannot modify the transformation context after transformation has completed."),h[Qt]|=1}function ve(Qt){return(h[Qt.kind]&1)!==0&&(ja(Qt)&8)===0}function Le(Qt,$t){return N.assert(ye<3,"Cannot substitute a node after the result is disposed."),$t&&ve($t)&&ne(Qt,$t)||$t}function He(Qt){N.assert(ye<2,"Cannot modify the transformation context after transformation has completed."),h[Qt]|=2}function Ee(Qt){return(h[Qt.kind]&2)!==0||(ja(Qt)&4)!==0}function De(Qt,$t,_i){N.assert(ye<3,"Cannot invoke TransformationResult callbacks after the result is disposed."),$t&&(Ee($t)?he(Qt,$t,_i):_i(Qt,$t))}function Pe(Qt){N.assert(ye>0,"Cannot modify the lexical environment during initialization."),N.assert(ye<2,"Cannot modify the lexical environment after transformation has completed.");const $t=pr(r.createVariableDeclaration(Qt),128);m?m.push($t):m=[$t],I&1&&(I|=2)}function We(Qt){N.assert(ye>0,"Cannot modify the lexical environment during initialization."),N.assert(ye<2,"Cannot modify the lexical environment after transformation has completed."),pr(Qt,2097152),b?b.push(Qt):b=[Qt]}function At(Qt){N.assert(ye>0,"Cannot modify the lexical environment during initialization."),N.assert(ye<2,"Cannot modify the lexical environment after transformation has completed."),pr(Qt,2097152),A?A.push(Qt):A=[Qt]}function Se(){N.assert(ye>0,"Cannot modify the lexical environment during initialization."),N.assert(ye<2,"Cannot modify the lexical environment after transformation has completed."),N.assert(!K,"Lexical environment is suspended."),R[U]=m,M[U]=b,C[U]=A,O[U]=I,U++,m=void 0,b=void 0,A=void 0,I=0}function je(){N.assert(ye>0,"Cannot modify the lexical environment during initialization."),N.assert(ye<2,"Cannot modify the lexical environment after transformation has completed."),N.assert(!K,"Lexical environment is already suspended."),K=!0}function at(){N.assert(ye>0,"Cannot modify the lexical environment during initialization."),N.assert(ye<2,"Cannot modify the lexical environment after transformation has completed."),N.assert(K,"Lexical environment is not suspended."),K=!1}function Gt(){N.assert(ye>0,"Cannot modify the lexical environment during initialization."),N.assert(ye<2,"Cannot modify the lexical environment after transformation has completed."),N.assert(!K,"Lexical environment is suspended.");let Qt;if(m||b||A){if(b&&(Qt=[...b]),m){const $t=r.createVariableStatement(void 0,r.createVariableDeclarationList(m));pr($t,2097152),Qt?Qt.push($t):Qt=[$t]}A&&(Qt?Qt=[...Qt,...A]:Qt=[...A])}return U--,m=R[U],b=M[U],A=C[U],I=O[U],U===0&&(R=[],M=[],C=[],O=[]),Qt}function vt(Qt,$t){I=$t?I|Qt:I&~Qt}function $e(){return I}function It(){N.assert(ye>0,"Cannot start a block scope during initialization."),N.assert(ye<2,"Cannot start a block scope after transformation has completed."),Z[V]=se,V++,se=void 0}function tn(){N.assert(ye>0,"Cannot end a block scope during initialization."),N.assert(ye<2,"Cannot end a block scope after transformation has completed.");const Qt=bt(se)?[r.createVariableStatement(void 0,r.createVariableDeclarationList(se.map($t=>r.createVariableDeclaration($t)),1))]:void 0;return V--,se=Z[V],V===0&&(Z=[]),Qt}function rn(Qt){N.assert(V>0,"Cannot add a block scoped variable outside of an iteration body."),(se||(se=[])).push(Qt)}function Pn(Qt){if(N.assert(ye>0,"Cannot modify the transformation context during initialization."),N.assert(ye<2,"Cannot modify the transformation context after transformation has completed."),N.assert(!Qt.scoped,"Cannot request a scoped emit helper."),Qt.dependencies)for(const $t of Qt.dependencies)Pn($t);G=xn(G,Qt)}function Xn(){N.assert(ye>0,"Cannot modify the transformation context during initialization."),N.assert(ye<2,"Cannot modify the transformation context after transformation has completed.");const Qt=G;return G=void 0,Qt}function hn(){if(ye<3){for(const Qt of o)vH(jn(Do(Qt)));m=void 0,R=void 0,b=void 0,M=void 0,ne=void 0,he=void 0,G=void 0,ye=3}}}var bJ,JP,gHe=T({"src/compiler/transformer.ts"(){ra(),fS(),bJ={scriptTransformers:et,declarationTransformers:et},JP={factory:w,getCompilerOptions:()=>({}),getEmitResolver:Ko,getEmitHost:Ko,getEmitHelperFactory:Ko,startLexicalEnvironment:$a,resumeLexicalEnvironment:$a,suspendLexicalEnvironment:$a,endLexicalEnvironment:r0,setLexicalEnvironmentFlags:$a,getLexicalEnvironmentFlags:()=>0,hoistVariableDeclaration:$a,hoistFunctionDeclaration:$a,addInitializationStatement:$a,startBlockScope:$a,endBlockScope:r0,addBlockScopedVariable:$a,requestEmitHelper:$a,readEmitHelpers:Ko,enableSubstitution:$a,enableEmitNotification:$a,isSubstitutionEnabled:Ko,isEmitNotificationEnabled:Ko,onSubstituteNode:qP,onEmitNode:Ww,addDiagnostic:$a}}});function dce(e){return Il(e,".tsbuildinfo")}function EJ(e,t,r,i=!1,o,s){const l=To(r)?r:mU(e,r,i),u=e.getCompilerOptions();if(Ps(u)){const p=e.getPrependNodes();if(l.length||p.length){const h=w.createBundle(l,p),m=t(XP(h,e,i),h);if(m)return m}}else{if(!o)for(const p of l){const h=t(XP(p,e,i),p);if(h)return h}if(s){const p=$v(u);if(p)return t({buildInfoPath:p},void 0)}}}function $v(e){const t=e.configFilePath;if(!uP(e))return;if(e.tsBuildInfoFile)return e.tsBuildInfoFile;const r=Ps(e);let i;if(r)i=Id(r);else{if(!t)return;const o=Id(t);i=e.outDir?e.rootDir?Py(e.outDir,Em(e.rootDir,o,!0)):Qr(e.outDir,ic(o)):o}return i+".tsbuildinfo"}function KP(e,t){const r=Ps(e),i=e.emitDeclarationOnly?void 0:r,o=i&&eRe(i,e),s=t||Nf(e)?Id(r)+".d.ts":void 0,l=s&&Pk(e)?s+".map":void 0,u=$v(e);return{jsFilePath:i,sourceMapFilePath:o,declarationFilePath:s,declarationMapPath:l,buildInfoPath:u}}function XP(e,t,r){const i=t.getCompilerOptions();if(e.kind===313)return KP(i,r);{const o=toe(e.fileName,t,p7(e.fileName,i)),s=Qf(e),l=s&&Lg(e.fileName,o,t.getCurrentDirectory(),!t.useCaseSensitiveFileNames())===0,u=i.emitDeclarationOnly||l?void 0:o,p=!u||Qf(e)?void 0:eRe(u,i),h=r||Nf(i)&&!s?noe(e.fileName,t):void 0,m=h&&Pk(i)?h+".map":void 0;return{jsFilePath:u,sourceMapFilePath:p,declarationFilePath:h,declarationMapPath:m,buildInfoPath:void 0}}}function eRe(e,t){return t.sourceMap&&!t.inlineSourceMap?e+".map":void 0}function p7(e,t){return Il(e,".json")?".json":t.jsx===1&&Tc(e,[".jsx",".tsx"])?".jsx":Tc(e,[".mts",".mjs"])?".mjs":Tc(e,[".cts",".cjs"])?".cjs":".js"}function tRe(e,t,r,i){return r?Py(r,Em(i(),e,t)):e}function YP(e,t,r,i=()=>_D(t,r)){return SJ(e,t.options,r,i)}function SJ(e,t,r,i){return S0(tRe(e,r,t.declarationDir||t.outDir,i),I3(e))}function nRe(e,t,r,i=()=>_D(t,r)){if(t.options.emitDeclarationOnly)return;const o=Il(e,".json"),s=TJ(e,t.options,r,i);return!o||Lg(e,s,N.checkDefined(t.options.configFilePath),r)!==0?s:void 0}function TJ(e,t,r,i){return S0(tRe(e,r,t.outDir,i),p7(e,t))}function rRe(){let e;return{addOutput:t,getOutputs:r};function t(i){i&&(e||(e=[])).push(i)}function r(){return e||et}}function iRe(e,t){const{jsFilePath:r,sourceMapFilePath:i,declarationFilePath:o,declarationMapPath:s,buildInfoPath:l}=KP(e.options,!1);t(r),t(i),t(o),t(s),t(l)}function oRe(e,t,r,i,o){if(Su(t))return;const s=nRe(t,e,r,o);if(i(s),!Il(t,".json")&&(s&&e.options.sourceMap&&i(`${s}.map`),Nf(e.options))){const l=YP(t,e,r,o);i(l),e.options.declarationMap&&i(`${l}.map`)}}function $P(e,t,r,i,o){let s;return e.rootDir?(s=go(e.rootDir,r),o==null||o(e.rootDir)):e.composite&&e.configFilePath?(s=ai(Lu(e.configFilePath)),o==null||o(s)):s=gce(t(),r,i),s&&s[s.length-1]!==al&&(s+=al),s}function _D({options:e,fileNames:t},r){return $P(e,()=>nr(t,i=>!(e.noEmitForJsFiles&&Tc(i,VR))&&!Su(i)),ai(Lu(N.checkDefined(e.configFilePath))),Mu(!r))}function f7(e,t){const{addOutput:r,getOutputs:i}=rRe();if(Ps(e.options))iRe(e,r);else{const o=Td(()=>_D(e,t));for(const s of e.fileNames)oRe(e,s,t,r,o);r($v(e.options))}return i()}function aRe(e,t,r){t=ga(t),N.assert(Nr(e.fileNames,t),"Expected fileName to be present in command line");const{addOutput:i,getOutputs:o}=rRe();return Ps(e.options)?iRe(e,i):oRe(e,t,r,i),o()}function AJ(e,t){if(Ps(e.options)){const{jsFilePath:o,declarationFilePath:s}=KP(e.options,!1);return N.checkDefined(o||s,`project ${e.options.configFilePath} expected to have at least one output`)}const r=Td(()=>_D(e,t));for(const o of e.fileNames){if(Su(o))continue;const s=nRe(o,e,t,r);if(s)return s;if(!Il(o,".json")&&Nf(e.options))return YP(o,e,t,r)}const i=$v(e.options);return i||N.fail(`project ${e.options.configFilePath} expected to have at least one output`)}function m7(e,t,r,{scriptTransformers:i,declarationTransformers:o},s,l,u){var p=t.getCompilerOptions(),h=p.sourceMap||p.inlineSourceMap||Pk(p)?[]:void 0,m=p.listEmittedFiles?[]:void 0,b=RR(),A=Uv(p),I=pk(A),{enter:R,exit:M}=PG("printTime","beforePrint","afterPrint"),C,O=!1;return R(),EJ(t,U,mU(t,r,u),u,l,!r),M(),{emitSkipped:O,diagnostics:b.getDiagnostics(),emittedFiles:m,sourceMaps:h};function U({jsFilePath:Y,sourceMapFilePath:oe,declarationFilePath:fe,declarationMapPath:Ne,buildInfoPath:pe},ie){var ve,Le,He,Ee,De,Pe;let We;pe&&ie&&OH(ie)&&(We=ai(go(pe,t.getCurrentDirectory())),C={commonSourceDirectory:At(t.getCommonSourceDirectory()),sourceFiles:ie.sourceFiles.map(Se=>At(go(Se.fileName,t.getCurrentDirectory())))}),(ve=sr)==null||ve.push(sr.Phase.Emit,"emitJsFileOrBundle",{jsFilePath:Y}),Z(ie,Y,oe,At),(Le=sr)==null||Le.pop(),(He=sr)==null||He.push(sr.Phase.Emit,"emitDeclarationFileOrBundle",{declarationFilePath:fe}),V(ie,fe,Ne,At),(Ee=sr)==null||Ee.pop(),(De=sr)==null||De.push(sr.Phase.Emit,"emitBuildInfo",{buildInfoPath:pe}),K(C,pe),(Pe=sr)==null||Pe.pop();function At(Se){return CE(Em(We,Se,t.getCanonicalFileName))}}function K(Y,oe){if(!oe||r||O)return;if(t.isEmitBlocked(oe)){O=!0;return}const fe=t.getBuildInfo(Y)||zw(void 0,Y);OC(t,b,oe,pce(fe),!1,void 0,{buildInfo:fe}),m==null||m.push(oe)}function Z(Y,oe,fe,Ne){if(!Y||s||!oe)return;if(t.isEmitBlocked(oe)||p.noEmit){O=!0;return}const pe=Fw(e,t,w,p,[Y],i,!1),ie={removeComments:p.removeComments,newLine:p.newLine,noEmitHelpers:p.noEmitHelpers,module:p.module,target:p.target,sourceMap:p.sourceMap,inlineSourceMap:p.inlineSourceMap,inlineSources:p.inlineSources,extendedDiagnostics:p.extendedDiagnostics,writeBundleFileInfo:!!C,relativeToBuildInfo:Ne},ve=k0(ie,{hasGlobalName:e.hasGlobalName,onEmitNode:pe.emitNodeWithNotification,isEmitNotificationEnabled:pe.isEmitNotificationEnabled,substituteNode:pe.substituteNode});N.assert(pe.transformed.length===1,"Should only see one output from the transform"),G(oe,fe,pe,ve,p),pe.dispose(),C&&(C.js=ve.bundleFileInfo),m&&(m.push(oe),fe&&m.push(fe))}function V(Y,oe,fe,Ne){if(!Y||s===0)return;if(!oe){(s||p.emitDeclarationOnly)&&(O=!0);return}const pe=$i(Y)?[Y]:Y.sourceFiles,ie=u?pe:nr(pe,Gj),ve=Ps(p)?[w.createBundle(ie,$i(Y)?void 0:Y.prepends)]:ie;s&&!Nf(p)&&ie.forEach(se);const Le=Fw(e,t,w,p,ve,o,!1);if(Me(Le.diagnostics))for(const Ee of Le.diagnostics)b.add(Ee);const He=!!Le.diagnostics&&!!Le.diagnostics.length||!!t.isEmitBlocked(oe)||!!p.noEmit;if(O=O||He,!He||u){N.assert(Le.transformed.length===1,"Should only see one output from the decl transform");const Ee={removeComments:p.removeComments,newLine:p.newLine,noEmitHelpers:!0,module:p.module,target:p.target,sourceMap:!u&&p.declarationMap,inlineSourceMap:p.inlineSourceMap,extendedDiagnostics:p.extendedDiagnostics,onlyPrintJsDocStyle:!0,omitBraceSourceMapPositions:!0,writeBundleFileInfo:!!C,recordInternalSection:!!C,relativeToBuildInfo:Ne},De=k0(Ee,{hasGlobalName:e.hasGlobalName,onEmitNode:Le.emitNodeWithNotification,isEmitNotificationEnabled:Le.isEmitNotificationEnabled,substituteNode:Le.substituteNode});G(oe,fe,Le,De,{sourceMap:Ee.sourceMap,sourceRoot:p.sourceRoot,mapRoot:p.mapRoot,extendedDiagnostics:p.extendedDiagnostics}),m&&(m.push(oe),fe&&m.push(fe)),C&&(C.dts=De.bundleFileInfo)}Le.dispose()}function se(Y){if(kl(Y)){Y.expression.kind===80&&e.collectLinkedAliases(Y.expression,!0);return}else if(Ku(Y)){e.collectLinkedAliases(Y.propertyName||Y.name,!0);return}Ho(Y,se)}function G(Y,oe,fe,Ne,pe){const ie=fe.transformed[0],ve=ie.kind===313?ie:void 0,Le=ie.kind===312?ie:void 0,He=ve?ve.sourceFiles:[Le];let Ee;ne(pe,ie)&&(Ee=Sle(t,ic(Lu(Y)),he(pe),ye(pe,Y,Le),pe)),ve?Ne.writeBundle(ve,I,Ee):Ne.writeFile(Le,I,Ee);let De;if(Ee){h&&h.push({inputSourceFileNames:Ee.getSources(),sourceMap:Ee.toJSON()});const We=$(pe,Ee,Y,oe,Le);if(We&&(I.isAtStartOfLine()||I.rawWrite(A),De=I.getTextPos(),I.writeComment(`//# sourceMappingURL=${We}`)),oe){const At=Ee.toString();OC(t,b,oe,At,!1,He),Ne.bundleFileInfo&&(Ne.bundleFileInfo.mapHash=iT(At,t))}}else I.writeLine();const Pe=I.getText();OC(t,b,Y,Pe,!!p.emitBOM,He,{sourceMapUrlPos:De,diagnostics:fe.diagnostics}),Ne.bundleFileInfo&&(Ne.bundleFileInfo.hash=iT(Pe,t)),I.clear()}function ne(Y,oe){return(Y.sourceMap||Y.inlineSourceMap)&&(oe.kind!==312||!Il(oe.fileName,".json"))}function he(Y){const oe=Lu(Y.sourceRoot||"");return oe&&Bc(oe)}function ye(Y,oe,fe){if(Y.sourceRoot)return t.getCommonSourceDirectory();if(Y.mapRoot){let Ne=Lu(Y.mapRoot);return fe&&(Ne=ai(R3(fe.fileName,t,Ne))),ph(Ne)===0&&(Ne=Qr(t.getCommonSourceDirectory(),Ne)),Ne}return ai(ga(oe))}function $(Y,oe,fe,Ne,pe){if(Y.inlineSourceMap){const ve=oe.toString();return`data:application/json;base64,${Soe(gu,ve)}`}const ie=ic(Lu(N.checkDefined(Ne)));if(Y.mapRoot){let ve=Lu(Y.mapRoot);return pe&&(ve=ai(R3(pe.fileName,t,ve))),ph(ve)===0?(ve=Qr(t.getCommonSourceDirectory(),ve),encodeURI(RA(ai(ga(fe)),Qr(ve,ie),t.getCurrentDirectory(),t.getCanonicalFileName,!0))):encodeURI(Qr(ve,ie))}return encodeURI(ie)}}function zw(e,t){return{bundle:t,program:e,version:Re}}function pce(e){return JSON.stringify(e)}function _7(e,t){return AU(e,t)}function vHe(e,t,r){var i;const o=N.checkDefined(e.js),s=((i=o.sources)==null?void 0:i.prologues)&&NE(o.sources.prologues,l=>l.file);return e.sourceFiles.map((l,u)=>{const p=s==null?void 0:s.get(u),h=p==null?void 0:p.directives.map(A=>{const I=dt(w.createStringLiteral(A.expression.text),A.expression),R=dt(w.createExpressionStatement(I),A);return qa(I,R),R}),m=w.createToken(1),b=w.createSourceFile(h??[],m,0);return b.fileName=Em(r.getCurrentDirectory(),go(l,t),!r.useCaseSensitiveFileNames()),b.text=(p==null?void 0:p.text)??"",nP(b,0,(p==null?void 0:p.text.length)??0),zR(b.statements,b),nP(m,b.end,0),qa(m,b),b})}function fce(e,t,r,i){var o,s;(o=sr)==null||o.push(sr.Phase.Emit,"emitUsingBuildInfo",{},!0),il("beforeEmit");const l=yHe(e,t,r,i);return il("afterEmit"),ef("Emit","beforeEmit","afterEmit"),(s=sr)==null||s.pop(),l}function yHe(e,t,r,i){const{buildInfoPath:o,jsFilePath:s,sourceMapFilePath:l,declarationFilePath:u,declarationMapPath:p}=KP(e.options,!1),h=t.getBuildInfo(o,e.options.configFilePath);if(!h||!h.bundle||!h.bundle.js||u&&!h.bundle.dts)return o;const m=t.readFile(N.checkDefined(s));if(!m||iT(m,t)!==h.bundle.js.hash)return s;const b=l&&t.readFile(l);if(l&&!b||e.options.inlineSourceMap)return l||"inline sourcemap decoding";if(l&&iT(b,t)!==h.bundle.js.mapHash)return l;const A=u&&t.readFile(u);if(u&&!A||u&&iT(A,t)!==h.bundle.dts.hash)return u;const I=p&&t.readFile(p);if(p&&!I||e.options.inlineSourceMap)return p||"inline sourcemap decoding";if(p&&iT(I,t)!==h.bundle.dts.mapHash)return p;const R=ai(go(o,t.getCurrentDirectory())),M=hH(s,m,l,b,u,A,p,I,o,h,!0),C=[],O=JJ(e.projectReferences,r,se=>t.readFile(se),t),U=vHe(h.bundle,R,t);let K,Z;const V={getPrependNodes:Td(()=>[...O,M]),getCanonicalFileName:t.getCanonicalFileName,getCommonSourceDirectory:()=>go(h.bundle.commonSourceDirectory,R),getCompilerOptions:()=>e.options,getCurrentDirectory:()=>t.getCurrentDirectory(),getSourceFile:r0,getSourceFileByPath:r0,getSourceFiles:()=>U,getLibFileFromReference:Ko,isSourceFileFromExternalLibrary:Xm,getResolvedProjectReferenceToRedirect:r0,getProjectReferenceRedirect:r0,isSourceOfProjectReferenceRedirect:Xm,writeFile:(se,G,ne,he,ye,$)=>{switch(se){case s:if(m===G)return;break;case l:if(b===G)return;break;case o:break;case u:if(A===G)return;K=G,Z=$;break;case p:if(I===G)return;break;default:N.fail(`Unexpected path: ${se}`)}C.push({name:se,text:G,writeByteOrderMark:ne,data:$})},isEmitBlocked:Xm,readFile:se=>t.readFile(se),fileExists:se=>t.fileExists(se),useCaseSensitiveFileNames:()=>t.useCaseSensitiveFileNames(),getBuildInfo:se=>{const G=h.program;G&&K!==void 0&&e.options.composite&&(G.outSignature=iT(K,t,Z));const{js:ne,dts:he,sourceFiles:ye}=h.bundle;return se.js.sources=ne.sources,he&&(se.dts.sources=he.sources),se.sourceFiles=ye,zw(G,se)},getSourceFileFromReference:r0,redirectTargetsMap:Zp(),getFileIncludeReasons:Ko,createHash:oa(t,t.createHash)};return m7(h7,V,void 0,yJ(e.options,i)),C}function k0(e={},t={}){var{hasGlobalName:r,onEmitNode:i=Ww,isEmitNotificationEnabled:o,substituteNode:s=qP,onBeforeEmitNode:l,onAfterEmitNode:u,onBeforeEmitNodeArray:p,onAfterEmitNodeArray:h,onBeforeEmitToken:m,onAfterEmitToken:b}=t,A=!!e.extendedDiagnostics,I=!!e.omitBraceSourceMapPositions,R=Uv(e),M=wu(e),C=new Map,O,U,K,Z,V,se,G,ne,he,ye,$,Y,oe,fe,Ne,pe=e.preserveSourceNewlines,ie,ve,Le,He=RT,Ee,De=e.writeBundleFileInfo?{sections:[]}:void 0,Pe=De?N.checkDefined(e.relativeToBuildInfo):void 0,We=e.recordInternalSection,At=0,Se="text",je=!0,at,Gt,vt=-1,$e,It=-1,tn=-1,rn=-1,Pn=-1,Xn,hn,Qt=!1,$t=!!e.removeComments,_i,ao,{enter:Oi,exit:No}=z1e(A,"commentTime","beforeComment","afterComment"),Mn=w.parenthesizer,Di={select:D=>D===0?Mn.parenthesizeLeadingTypeArgument:void 0},Ar=Qg();return ot(),{printNode:sn,printList:tt,printFile:Rn,printBundle:zt,writeNode:hi,writeList:Qi,writeFile:ft,writeBundle:qe,bundleFileInfo:De};function sn(D,ae,ht){switch(D){case 0:N.assert($i(ae),"Expected a SourceFile node.");break;case 2:N.assert(Ve(ae),"Expected an Identifier node.");break;case 1:N.assert(yt(ae),"Expected an Expression node.");break}switch(ae.kind){case 312:return Rn(ae);case 313:return zt(ae);case 314:return li(ae)}return hi(D,ae,ht,Ct()),le()}function tt(D,ae,ht){return Qi(D,ae,ht,Ct()),le()}function zt(D){return qe(D,Ct(),void 0),le()}function Rn(D){return ft(D,Ct(),void 0),le()}function li(D){return mt(D,Ct()),le()}function hi(D,ae,ht,on){const Or=ve;j(on,void 0),Fe(D,ae,ht),ot(),ve=Or}function Qi(D,ae,ht,on){const Or=ve;j(on,void 0),ht&&pt(ht),Zs(void 0,ae,D),ot(),ve=Or}function Io(){return ve.getTextPosWithWriteLine?ve.getTextPosWithWriteLine():ve.getTextPos()}function ma(D,ae,ht){const on=tl(De.sections);on&&on.kind===ht?on.end=ae:De.sections.push({pos:D,end:ae,kind:ht})}function Wa(D){if(We&&De&&O&&(Ju(D)||Ll(D))&&_j(D,O)&&Se!=="internal"){const ae=Se;return kn(ve.getTextPos()),At=Io(),Se="internal",ae}}function Sn(D){D&&(kn(ve.getTextPos()),At=Io(),Se=D)}function kn(D){return At<D?(ma(At,D,Se),!0):!1}function qe(D,ae,ht){Ee=!1;const on=ve;j(ae,ht),gb(D),iv(D),en(D),c_(D);for(const Or of D.prepends){Kc();const ki=ve.getTextPos(),gi=De&&De.sections;if(gi&&(De.sections=[]),Fe(4,Or,void 0),De){const no=De.sections;De.sections=gi,Or.oldFileOfCurrentEmit?De.sections.push(...no):(no.forEach(va=>N.assert(Poe(va))),De.sections.push({pos:ki,end:ve.getTextPos(),kind:"prepend",data:Pe(Or.fileName),texts:no}))}}At=Io();for(const Or of D.sourceFiles)Fe(0,Or,Or);if(De&&D.sourceFiles.length){const Or=ve.getTextPos();if(kn(Or)){const ki=L2(D);ki&&(De.sources||(De.sources={}),De.sources.prologues=ki);const gi=kt(D);gi&&(De.sources||(De.sources={}),De.sources.helpers=gi)}}ot(),ve=on}function mt(D,ae){const ht=ve;j(ae,void 0),Fe(4,D,void 0),ot(),ve=ht}function ft(D,ae,ht){Ee=!0;const on=ve;j(ae,ht),gb(D),iv(D),Fe(0,D,D),ot(),ve=on}function Ct(){return Le||(Le=pk(R))}function le(){const D=Le.getText();return Le.clear(),D}function Fe(D,ae,ht){ht&&pt(ht),q(D,ae,void 0)}function pt(D){O=D,Xn=void 0,hn=void 0,D&&cv(D)}function j(D,ae){D&&e.omitTrailingSemicolon&&(D=pU(D)),ve=D,at=ae,je=!ve||!at}function ot(){U=[],K=[],Z=[],V=new Set,se=[],G=new Map,ne=[],he=0,ye=[],$=0,Y=[],oe=void 0,fe=[],Ne=void 0,O=void 0,Xn=void 0,hn=void 0,j(void 0,void 0)}function Rt(){return Xn||(Xn=kg(N.checkDefined(O)))}function Ye(D,ae){if(D===void 0)return;const ht=Wa(D);q(4,D,ae),Sn(ht)}function _t(D){D!==void 0&&q(2,D,void 0)}function Vt(D,ae){D!==void 0&&q(1,D,ae)}function vn(D){q(Ma(D)?6:4,D)}function fn(D){pe&&Am(D)&4&&(pe=!1)}function _n(D){pe=D}function q(D,ae,ht){ao=ht,L(0,D,ae)(D,ae),ao=void 0}function Oe(D){return!$t&&!$i(D)}function Lt(D){return!je&&!$i(D)&&!c3(D)&&!KS(D)&&!Kae(D)}function L(D,ae,ht){switch(D){case 0:if(i!==Ww&&(!o||o(ht)))return J;case 1:if(s!==qP&&(_i=s(ae,ht)||ht)!==ht)return ao&&(_i=ao(_i)),Tt;case 2:if(Oe(ht))return pN;case 3:if(Lt(ht))return nE;case 4:return me;default:return N.assertNever(D)}}function _e(D,ae,ht){return L(D+1,ae,ht)}function J(D,ae){const ht=_e(0,D,ae);i(D,ae,ht)}function me(D,ae){if(l==null||l(ae),pe){const ht=pe;fn(ae),Ge(D,ae),_n(ht)}else Ge(D,ae);u==null||u(ae),ao=void 0}function Ge(D,ae,ht=!0){if(ht){const on=yH(ae);if(on)return vo(D,ae,on)}if(D===0)return ix(aa(ae,$i));if(D===2)return Kr(aa(ae,Ve));if(D===6)return Hn(aa(ae,Ma),!0);if(D===3)return ke(aa(ae,gl));if(D===7)return $I(aa(ae,mI));if(D===5)return N.assertNode(ae,LH),io(!0);if(D===4){switch(ae.kind){case 16:case 17:case 18:return Hn(ae,!1);case 80:return Kr(ae);case 81:return xo(ae);case 166:return Dn(ae);case 167:return Ql(ae);case 168:return Lo(ae);case 169:return cs(ae);case 170:return Vs(ae);case 171:return vl(ae);case 172:return uu(ae);case 173:return ho(ae);case 174:return pa(ae);case 175:return du(ae);case 176:return As(ae);case 177:case 178:return La(ae);case 179:return _l(ae);case 180:return wf(ae);case 181:return lc(ae);case 182:return ko(ae);case 183:return nn(ae);case 184:return js(ae);case 185:return Rc(ae);case 186:return de(ae);case 187:return ee(ae);case 188:return we(ae);case 189:return un(ae);case 190:return vr(ae);case 192:return Ur(ae);case 193:return xi(ae);case 194:return Lr(ae);case 195:return $o(ae);case 196:return Tl(ae);case 233:return Ft(ae);case 197:return Hc();case 198:return Us(ae);case 199:return vc(ae);case 200:return Ss(ae);case 201:return qc(ae);case 202:return Er(ae);case 203:return op(ae);case 204:return Nl(ae);case 205:return Wc(ae);case 206:return cm(ae);case 207:return gd(ae);case 208:return Ce(ae);case 239:return Jt(ae);case 240:return ul();case 241:return rr(ae);case 243:return $r(ae);case 242:return io(!1);case 244:return Fa(ae);case 245:return za(ae);case 246:return fu(ae);case 247:return Dc(ae);case 248:return Rp(ae);case 249:return Hd(ae);case 250:return pb(ae);case 251:return km(ae);case 252:return wm(ae);case 253:return R1(ae);case 254:return mf(ae);case 255:return H_(ae);case 256:return _f(ae);case 257:return ev(ae);case 258:return ze(ae);case 259:return Ze(ae);case 260:return Mt(ae);case 261:return Ht(ae);case 262:return yn(ae);case 263:return Zo(ae);case 264:return Zu(ae);case 265:return mu(ae);case 266:return tv(ae);case 267:return j0(ae);case 268:return JI(ae);case 269:return U0(ae);case 270:return ZI(ae);case 271:return QD(ae);case 272:return eN(ae);case 273:return hT(ae);case 274:return D1(ae);case 280:return N1(ae);case 275:return KI(ae);case 276:return tN(ae);case 277:return XI(ae);case 278:return YI(ae);case 279:return C1(ae);case 281:return fb(ae);case 300:return QI(ae);case 301:return gT(ae);case 282:return;case 283:return H0(ae);case 12:return nv(ae);case 286:case 289:return q0(ae);case 287:case 290:return Ph(ae);case 291:return qd(ae);case 292:return Wf(ae);case 293:return Dp(ae);case 294:return rN(ae);case 295:return ex(ae);case 296:return J0(ae);case 297:return tx(ae);case 298:return ly(ae);case 299:return nx(ae);case 303:return a_(ae);case 304:return bT(ae);case 305:return Je(ae);case 306:return s_(ae);case 307:return Ai(ae);case 314:case 308:return Ni(ae);case 309:case 310:return ir(ae);case 311:return jr(ae);case 312:return ix(ae);case 313:return N.fail("Bundles should be printed using printBundle");case 315:return N.fail("InputFiles should not be printed");case 316:return rv(ae);case 317:return hb(ae);case 319:return hr("*");case 320:return hr("?");case 321:return pu(ae);case 322:return Ip(ae);case 323:return Ms(ae);case 324:return nu(ae);case 191:case 325:return Et(ae);case 326:return;case 327:return _u(ae);case 329:return ST(ae);case 330:return X0(ae);case 334:case 339:case 344:return ET(ae);case 335:case 336:return cy(ae);case 337:case 338:return;case 340:case 341:case 342:case 343:return;case 345:return Xa(ae);case 346:return l_(ae);case 348:case 355:return TT(ae);case 347:case 349:case 350:case 351:case 356:case 357:return K0(ae);case 352:return uy(ae);case 353:return P2(ae);case 354:return rx(ae);case 359:return}if(yt(ae)&&(D=1,s!==qP)){const on=s(D,ae)||ae;on!==ae&&(ae=on,ao&&(ae=ao(ae)))}}if(D===1)switch(ae.kind){case 9:case 10:return Bn(ae);case 11:case 14:case 15:return Hn(ae,!1);case 80:return Kr(ae);case 81:return xo(ae);case 209:return Wt(ae);case 210:return Jn(ae);case 211:return yo(ae);case 212:return na(ae);case 213:return Zl(ae);case 214:return yc(ae);case 215:return dl(ae);case 216:return yl(ae);case 217:return Vl(ae);case 218:return ec(ae);case 219:return Jc(ae);case 220:return jd(ae);case 221:return Cd(ae);case 222:return Of(ae);case 223:return U_(ae);case 224:return Ch(ae);case 225:return Bu(ae);case 226:return Ar(ae);case 227:return xp(ae);case 228:return _g(ae);case 229:return Ud(ae);case 230:return te(ae);case 231:return ct(ae);case 232:return;case 234:return jt(ae);case 235:return F(ae);case 233:return Ft(ae);case 238:return Te(ae);case 236:return st(ae);case 237:return N.fail("SyntheticExpression should never be printed.");case 282:return;case 284:return ts(ae);case 285:return vT(ae);case 288:return nN(ae);case 358:return N.fail("SyntaxList should not be printed");case 359:return;case 360:return ei(ae);case 361:return Mh(ae);case 362:return N.fail("SyntheticReferenceExpression should not be printed")}if(Bd(ae.kind))return w1(ae,to);if(nj(ae.kind))return w1(ae,hr);N.fail(`Unhandled SyntaxKind: ${N.formatSyntaxKind(ae.kind)}.`)}function ke(D){Ye(D.name),ur(),to("in"),ur(),Ye(D.constraint)}function Tt(D,ae){const ht=_e(1,D,ae);N.assertIsDefined(_i),ae=_i,_i=void 0,ht(D,ae)}function kt(D){let ae;if(M===0||e.noEmitHelpers)return;const ht=new Map;for(const on of D.sourceFiles){const Or=iw(on)!==void 0,ki=bn(on);if(ki)for(const gi of ki)!gi.scoped&&!Or&&!ht.get(gi.name)&&(ht.set(gi.name,!0),(ae||(ae=[])).push(gi.name))}return ae}function en(D){let ae=!1;const ht=D.kind===313?D:void 0;if(ht&&M===0)return;const on=ht?ht.prepends.length:0,Or=ht?ht.sourceFiles.length+on:1;for(let ki=0;ki<Or;ki++){const gi=ht?ki<on?ht.prepends[ki]:ht.sourceFiles[ki-on]:D,no=$i(gi)?gi:KS(gi)?void 0:O,va=e.noEmitHelpers||!!no&&lse(no),ed=($i(gi)||KS(gi))&&!Ee,Md=KS(gi)?gi.helpers:bn(gi);if(Md)for(const Bf of Md){if(Bf.scoped){if(ht)continue}else{if(va)continue;if(ed){if(C.get(Bf.name))continue;C.set(Bf.name,!0)}}const xb=Io();typeof Bf.text=="string"?NT(Bf.text):NT(Bf.text(lx)),De&&De.sections.push({pos:xb,end:ve.getTextPos(),kind:"emitHelpers",data:Bf.name}),ae=!0}}return ae}function bn(D){const ae=SW(D);return ae&&Dv(ae,Cae)}function Bn(D){Hn(D,!1)}function Hn(D,ae){const ht=MT(D,e.neverAsciiEscape,ae);(e.sourceMap||e.inlineSourceMap)&&(D.kind===11||wy(D.kind))?yb(ht):lN(ht)}function Ni(D){for(const ae of D.texts)Kc(),Ye(ae)}function Ai(D){ve.rawWrite(D.parent.text.substring(D.pos,D.end))}function ir(D){const ae=Io();Ai(D),De&&ma(ae,ve.getTextPos(),D.kind===309?"text":"internal")}function jr(D){const ae=Io();if(Ai(D),De){const ht=hG(D.section);ht.pos=ae,ht.end=ve.getTextPos(),De.sections.push(ht)}}function vo(D,ae,ht){switch(ht.kind){case 1:Ci(D,ae,ht);break;case 0:Ii(D,ae,ht);break}}function Ci(D,ae,ht){Y0(`\${${ht.order}:`),Ge(D,ae,!1),Y0("}")}function Ii(D,ae,ht){N.assert(ae.kind===242,`A tab stop cannot be attached to a node of kind ${N.formatSyntaxKind(ae.kind)}.`),N.assert(D!==5,"A tab stop cannot be attached to an embedded statement."),Y0(`$${ht.order}`)}function Kr(D){(D.symbol?k2:He)(Fc(D,!1),D.symbol),Zs(D,zS(D),53776)}function xo(D){He(Fc(D,!1))}function Dn(D){Fs(D.left),hr("."),Ye(D.right)}function Fs(D){D.kind===80?Vt(D):Ye(D)}function Ql(D){const ae=he,ht=Ne;Sb(),hr("["),Vt(D.expression,Mn.parenthesizeExpressionOfComputedPropertyName),hr("]"),Ff(ae,ht)}function Lo(D){gg(D,D.modifiers),Ye(D.name),D.constraint&&(ur(),to("extends"),ur(),Ye(D.constraint)),D.default&&(ur(),hf("="),ur(),Ye(D.default))}function cs(D){Up(D,D.modifiers,!0),Ye(D.dotDotDotToken),bl(D.name,py),Ye(D.questionToken),D.parent&&D.parent.kind===324&&!D.name?Ye(D.type):pm(D.type),vb(D.initializer,D.type?D.type.end:D.questionToken?D.questionToken.end:D.name?D.name.end:D.modifiers?D.modifiers.end:D.pos,D,Mn.parenthesizeExpressionForDisallowedComma)}function Vs(D){hr("@"),Vt(D.expression,Mn.parenthesizeLeftSideOfAccess)}function vl(D){gg(D,D.modifiers),bl(D.name,DT),Ye(D.questionToken),pm(D.type),ru()}function uu(D){Up(D,D.modifiers,!0),Ye(D.name),Ye(D.questionToken),Ye(D.exclamationToken),pm(D.type),vb(D.initializer,D.type?D.type.end:D.questionToken?D.questionToken.end:D.name.end,D),ru()}function ho(D){Au(D),gg(D,D.modifiers),Ye(D.name),Ye(D.questionToken),q_(D,D.typeParameters),dy(D,D.parameters),pm(D.type),ru(),sp(D)}function pa(D){Up(D,D.modifiers,!0),Ye(D.asteriskToken),Ye(D.name),Ye(D.questionToken),gn(D,$n)}function du(D){to("static"),cr(D.body)}function As(D){Up(D,D.modifiers,!1),to("constructor"),gn(D,$n)}function La(D){const ae=Up(D,D.modifiers,!0),ht=D.kind===177?139:153;Ui(ht,ae,to,D),ur(),Ye(D.name),gn(D,$n)}function _l(D){Au(D),q_(D,D.typeParameters),dy(D,D.parameters),pm(D.type),ru(),sp(D)}function wf(D){Au(D),to("new"),ur(),q_(D,D.typeParameters),dy(D,D.parameters),pm(D.type),ru(),sp(D)}function lc(D){Up(D,D.modifiers,!1),sN(D,D.parameters),pm(D.type),ru()}function Nl(D){Ye(D.type),Ye(D.literal)}function ul(){ru()}function ko(D){D.assertsModifier&&(Ye(D.assertsModifier),ur()),Ye(D.parameterName),D.type&&(ur(),to("is"),ur(),Ye(D.type))}function nn(D){Ye(D.typeName),yg(D,D.typeArguments)}function js(D){Au(D),q_(D,D.typeParameters),aN(D,D.parameters),ur(),hr("=>"),ur(),Ye(D.type),sp(D)}function nu(D){to("function"),dy(D,D.parameters),hr(":"),Ye(D.type)}function pu(D){hr("?"),Ye(D.type)}function Ip(D){hr("!"),Ye(D.type)}function Ms(D){Ye(D.type),hr("=")}function Rc(D){Au(D),gg(D,D.modifiers),to("new"),ur(),q_(D,D.typeParameters),dy(D,D.parameters),ur(),hr("=>"),ur(),Ye(D.type),sp(D)}function de(D){to("typeof"),ur(),Ye(D.exprName),yg(D,D.typeArguments)}function ee(D){Ff(0,void 0),hr("{");const ae=ja(D)&1?768:32897;Zs(D,D.members,ae|524288),hr("}"),Sb()}function we(D){Ye(D.elementType,Mn.parenthesizeNonArrayTypeOfPostfixType),hr("["),hr("]")}function Et(D){hr("..."),Ye(D.type)}function un(D){Ui(23,D.pos,hr,D);const ae=ja(D)&1?528:657;Zs(D,D.elements,ae|524288,Mn.parenthesizeElementTypeOfTupleType),Ui(24,D.elements.end,hr,D)}function Er(D){Ye(D.dotDotDotToken),Ye(D.name),Ye(D.questionToken),Ui(59,D.name.end,hr,D),ur(),Ye(D.type)}function vr(D){Ye(D.type,Mn.parenthesizeTypeOfOptionalType),hr("?")}function Ur(D){Zs(D,D.types,516,Mn.parenthesizeConstituentTypeOfUnionType)}function xi(D){Zs(D,D.types,520,Mn.parenthesizeConstituentTypeOfIntersectionType)}function Lr(D){Ye(D.checkType,Mn.parenthesizeCheckTypeOfConditionalType),ur(),to("extends"),ur(),Ye(D.extendsType,Mn.parenthesizeExtendsTypeOfConditionalType),ur(),hr("?"),ur(),Ye(D.trueType),ur(),hr(":"),ur(),Ye(D.falseType)}function $o(D){to("infer"),ur(),Ye(D.typeParameter)}function Tl(D){hr("("),Ye(D.type),hr(")")}function Hc(){to("this")}function Us(D){bb(D.operator,to),ur();const ae=D.operator===148?Mn.parenthesizeOperandOfReadonlyTypeOperator:Mn.parenthesizeOperandOfTypeOperator;Ye(D.type,ae)}function vc(D){Ye(D.objectType,Mn.parenthesizeNonArrayTypeOfPostfixType),hr("["),Ye(D.indexType),hr("]")}function Ss(D){const ae=ja(D);hr("{"),ae&1?ur():(Kc(),Lh()),D.readonlyToken&&(Ye(D.readonlyToken),D.readonlyToken.kind!==148&&to("readonly"),ur()),hr("["),q(3,D.typeParameter),D.nameType&&(ur(),to("as"),ur(),Ye(D.nameType)),hr("]"),D.questionToken&&(Ye(D.questionToken),D.questionToken.kind!==58&&hr("?")),hr(":"),ur(),Ye(D.type),ru(),ae&1?ur():(Kc(),zm()),Zs(D,D.members,2),hr("}")}function qc(D){Vt(D.literal)}function op(D){Ye(D.head),Zs(D,D.templateSpans,262144)}function Wc(D){D.isTypeOf&&(to("typeof"),ur()),to("import"),hr("("),Ye(D.argument),D.attributes&&(hr(","),ur(),q(7,D.attributes)),hr(")"),D.qualifier&&(hr("."),Ye(D.qualifier)),yg(D,D.typeArguments)}function cm(D){hr("{"),Zs(D,D.elements,525136),hr("}")}function gd(D){hr("["),Zs(D,D.elements,524880),hr("]")}function Ce(D){Ye(D.dotDotDotToken),D.propertyName&&(Ye(D.propertyName),hr(":"),ur()),Ye(D.name),vb(D.initializer,D.name.end,D,Mn.parenthesizeExpressionForDisallowedComma)}function Wt(D){const ae=D.elements,ht=D.multiLine?65536:0;L1(D,ae,8914|ht,Mn.parenthesizeExpressionForDisallowedComma)}function Jn(D){Ff(0,void 0),Ue(D.properties,sx);const ae=ja(D)&131072;ae&&Lh();const ht=D.multiLine?65536:0,on=O&&O.languageVersion>=1&&!Qf(O)?64:0;Zs(D,D.properties,526226|on|ht),ae&&zm(),Sb()}function yo(D){Vt(D.expression,Mn.parenthesizeLeftSideOfAccess);const ae=D.questionDotToken||vh(w.createToken(25),D.expression.end,D.name.pos),ht=Hp(D,D.expression,ae),on=Hp(D,ae,D.name);Bm(ht,!1),ae.kind!==29&&Qo(D.expression)&&!ve.hasTrailingComment()&&!ve.hasTrailingWhitespace()&&hr("."),D.questionDotToken?Ye(ae):Ui(ae.kind,D.expression.end,hr,D),Bm(on,!1),Ye(D.name),$0(ht,on)}function Qo(D){if(D=Tm(D),vp(D)){const ae=MT(D,!0,!1);return!(D.numericLiteralFlags&448)&&!ae.includes(fa(25))&&!ae.includes("E")&&!ae.includes("e")}else if(ws(D)){const ae=Sae(D);return typeof ae=="number"&&isFinite(ae)&&ae>=0&&Math.floor(ae)===ae}}function na(D){Vt(D.expression,Mn.parenthesizeLeftSideOfAccess),Ye(D.questionDotToken),Ui(23,D.expression.end,hr,D),Vt(D.argumentExpression),Ui(24,D.argumentExpression.end,hr,D)}function Zl(D){const ae=Am(D)&16;ae&&(hr("("),yb("0"),hr(","),ur()),Vt(D.expression,Mn.parenthesizeLeftSideOfAccess),ae&&hr(")"),Ye(D.questionDotToken),yg(D,D.typeArguments),L1(D,D.arguments,2576,Mn.parenthesizeExpressionForDisallowedComma)}function yc(D){Ui(105,D.pos,to,D),ur(),Vt(D.expression,Mn.parenthesizeExpressionOfNew),yg(D,D.typeArguments),L1(D,D.arguments,18960,Mn.parenthesizeExpressionForDisallowedComma)}function dl(D){const ae=Am(D)&16;ae&&(hr("("),yb("0"),hr(","),ur()),Vt(D.tag,Mn.parenthesizeLeftSideOfAccess),ae&&hr(")"),yg(D,D.typeArguments),ur(),Vt(D.template)}function yl(D){hr("<"),Ye(D.type),hr(">"),Vt(D.expression,Mn.parenthesizeOperandOfPrefixUnary)}function Vl(D){const ae=Ui(21,D.pos,hr,D),ht=cN(D.expression,D);Vt(D.expression,void 0),O1(D.expression,D),$0(ht),Ui(22,D.expression?D.expression.end:ae,hr,D)}function ec(D){qp(D.name),Yn(D)}function Jc(D){gg(D,D.modifiers),gn(D,ff)}function ff(D){q_(D,D.typeParameters),aN(D,D.parameters),pm(D.type),ur(),Ye(D.equalsGreaterThanToken)}function jd(D){Ui(91,D.pos,to,D),ur(),Vt(D.expression,Mn.parenthesizeOperandOfPrefixUnary)}function Cd(D){Ui(114,D.pos,to,D),ur(),Vt(D.expression,Mn.parenthesizeOperandOfPrefixUnary)}function Of(D){Ui(116,D.pos,to,D),ur(),Vt(D.expression,Mn.parenthesizeOperandOfPrefixUnary)}function U_(D){Ui(135,D.pos,to,D),ur(),Vt(D.expression,Mn.parenthesizeOperandOfPrefixUnary)}function Ch(D){bb(D.operator,hf),$g(D)&&ur(),Vt(D.operand,Mn.parenthesizeOperandOfPrefixUnary)}function $g(D){const ae=D.operand;return ae.kind===224&&(D.operator===40&&(ae.operator===40||ae.operator===46)||D.operator===41&&(ae.operator===41||ae.operator===47))}function Bu(D){Vt(D.operand,Mn.parenthesizeOperandOfPostfixUnary),bb(D.operator,hf)}function Qg(){return yF(D,ae,ht,on,Or,void 0);function D(gi,no){if(no){no.stackIndex++,no.preserveSourceNewlinesStack[no.stackIndex]=pe,no.containerPosStack[no.stackIndex]=tn,no.containerEndStack[no.stackIndex]=rn,no.declarationListContainerEndStack[no.stackIndex]=Pn;const va=no.shouldEmitCommentsStack[no.stackIndex]=Oe(gi),ed=no.shouldEmitSourceMapsStack[no.stackIndex]=Lt(gi);l==null||l(gi),va&&OT(gi),ed&&px(gi),fn(gi)}else no={stackIndex:0,preserveSourceNewlinesStack:[void 0],containerPosStack:[-1],containerEndStack:[-1],declarationListContainerEndStack:[-1],shouldEmitCommentsStack:[!1],shouldEmitSourceMapsStack:[!1]};return no}function ae(gi,no,va){return ki(gi,va,"left")}function ht(gi,no,va){const ed=gi.kind!==28,Md=Hp(va,va.left,gi),Bf=Hp(va,gi,va.right);Bm(Md,ed),Eg(gi.pos),w1(gi,gi.kind===103?to:hf),Gm(gi.end,!0),Bm(Bf,!0)}function on(gi,no,va){return ki(gi,va,"right")}function Or(gi,no){const va=Hp(gi,gi.left,gi.operatorToken),ed=Hp(gi,gi.operatorToken,gi.right);if($0(va,ed),no.stackIndex>0){const Md=no.preserveSourceNewlinesStack[no.stackIndex],Bf=no.containerPosStack[no.stackIndex],xb=no.containerEndStack[no.stackIndex],bi=no.declarationListContainerEndStack[no.stackIndex],Oh=no.shouldEmitCommentsStack[no.stackIndex],Un=no.shouldEmitSourceMapsStack[no.stackIndex];_n(Md),Un&&zT(gi),Oh&&fN(gi,Bf,xb,bi),u==null||u(gi),no.stackIndex--}}function ki(gi,no,va){const ed=va==="left"?Mn.getParenthesizeLeftSideOfBinaryForOperator(no.operatorToken.kind):Mn.getParenthesizeRightSideOfBinaryForOperator(no.operatorToken.kind);let Md=L(0,1,gi);if(Md===Tt&&(N.assertIsDefined(_i),gi=ed(aa(_i,yt)),Md=_e(1,1,gi),_i=void 0),(Md===pN||Md===nE||Md===me)&&mr(gi))return gi;ao=ed,Md(1,gi)}}function xp(D){const ae=Hp(D,D.condition,D.questionToken),ht=Hp(D,D.questionToken,D.whenTrue),on=Hp(D,D.whenTrue,D.colonToken),Or=Hp(D,D.colonToken,D.whenFalse);Vt(D.condition,Mn.parenthesizeConditionOfConditionalExpression),Bm(ae,!0),Ye(D.questionToken),Bm(ht,!0),Vt(D.whenTrue,Mn.parenthesizeBranchOfConditionalExpression),$0(ae,ht),Bm(on,!0),Ye(D.colonToken),Bm(Or,!0),Vt(D.whenFalse,Mn.parenthesizeBranchOfConditionalExpression),$0(on,Or)}function _g(D){Ye(D.head),Zs(D,D.templateSpans,262144)}function Ud(D){Ui(127,D.pos,to,D),Ye(D.asteriskToken),M1(D.expression&&Om(D.expression),x1)}function te(D){Ui(26,D.pos,hr,D),Vt(D.expression,Mn.parenthesizeExpressionForDisallowedComma)}function ct(D){qp(D.name),Ka(D)}function Ft(D){Vt(D.expression,Mn.parenthesizeLeftSideOfAccess),yg(D,D.typeArguments)}function jt(D){Vt(D.expression,void 0),D.type&&(ur(),to("as"),ur(),Ye(D.type))}function F(D){Vt(D.expression,Mn.parenthesizeLeftSideOfAccess),hf("!")}function Te(D){Vt(D.expression,void 0),D.type&&(ur(),to("satisfies"),ur(),Ye(D.type))}function st(D){k1(D.keywordToken,D.pos,hr),hr("."),Ye(D.name)}function Jt(D){Vt(D.expression),Ye(D.literal)}function rr(D){oi(D,!D.multiLine&&PT(D))}function oi(D,ae){Ui(19,D.pos,hr,D);const ht=ae||ja(D)&1?768:129;Zs(D,D.statements,ht),Ui(20,D.statements.end,hr,D,!!(ht&1))}function $r(D){Up(D,D.modifiers,!1),Ye(D.declarationList),ru()}function io(D){D?hr(";"):ru()}function Fa(D){Vt(D.expression,Mn.parenthesizeExpressionOfExpressionStatement),(!O||!Qf(O)||$s(D.expression))&&ru()}function za(D){const ae=Ui(101,D.pos,to,D);ur(),Ui(21,ae,hr,D),Vt(D.expression),Ui(22,D.expression.end,hr,D),vg(D,D.thenStatement),D.elseStatement&&(av(D,D.thenStatement,D.elseStatement),Ui(93,D.thenStatement.end,to,D),D.elseStatement.kind===245?(ur(),Ye(D.elseStatement)):vg(D,D.elseStatement))}function Ol(D,ae){const ht=Ui(117,ae,to,D);ur(),Ui(21,ht,hr,D),Vt(D.expression),Ui(22,D.expression.end,hr,D)}function fu(D){Ui(92,D.pos,to,D),vg(D,D.statement),Xo(D.statement)&&!pe?ur():av(D,D.statement,D.expression),Ol(D,D.statement.end),ru()}function Dc(D){Ol(D,D.pos),vg(D,D.statement)}function Rp(D){const ae=Ui(99,D.pos,to,D);ur();let ht=Ui(21,ae,hr,D);us(D.initializer),ht=Ui(27,D.initializer?D.initializer.end:ht,hr,D),M1(D.condition),ht=Ui(27,D.condition?D.condition.end:ht,hr,D),M1(D.incrementor),Ui(22,D.incrementor?D.incrementor.end:ht,hr,D),vg(D,D.statement)}function Hd(D){const ae=Ui(99,D.pos,to,D);ur(),Ui(21,ae,hr,D),us(D.initializer),ur(),Ui(103,D.initializer.end,to,D),ur(),Vt(D.expression),Ui(22,D.expression.end,hr,D),vg(D,D.statement)}function pb(D){const ae=Ui(99,D.pos,to,D);ur(),AT(D.awaitModifier),Ui(21,ae,hr,D),us(D.initializer),ur(),Ui(165,D.initializer.end,to,D),ur(),Vt(D.expression),Ui(22,D.expression.end,hr,D),vg(D,D.statement)}function us(D){D!==void 0&&(D.kind===261?Ye(D):Vt(D))}function km(D){Ui(88,D.pos,to,D),ov(D.label),ru()}function wm(D){Ui(83,D.pos,to,D),ov(D.label),ru()}function Ui(D,ae,ht,on,Or){const ki=Do(on),gi=ki&&ki.kind===on.kind,no=ae;if(gi&&O&&(ae=ka(O.text,ae)),gi&&on.pos!==no){const va=Or&&O&&!Rf(no,ae,O);va&&Lh(),Eg(no),va&&zm()}if(!I&&(D===19||D===20)?ae=k1(D,ae,ht,on):ae=bb(D,ht,ae),gi&&on.end!==ae){const va=on.kind===294;Gm(ae,!va,va)}return ae}function Zg(D){return D.kind===2||!!D.hasTrailingNewLine}function ay(D){if(!O)return!1;const ae=Yh(O.text,D.pos);if(ae){const ht=Do(D);if(ht&&Gd(ht.parent))return!0}return bt(ae,Zg)||bt(jR(D),Zg)?!0:oF(D)?D.pos!==D.expression.pos&&bt(a0(O.text,D.expression.pos),Zg)?!0:ay(D.expression):!1}function Om(D){if(!$t&&oF(D)&&ay(D)){const ae=Do(D);if(ae&&Gd(ae)){const ht=w.createParenthesizedExpression(D.expression);return Cr(ht,D),dt(ht,ae),ht}return w.createParenthesizedExpression(D)}return D}function x1(D){return Om(Mn.parenthesizeExpressionForDisallowedComma(D))}function R1(D){Ui(107,D.pos,to,D),M1(D.expression&&Om(D.expression),Om),ru()}function mf(D){const ae=Ui(118,D.pos,to,D);ur(),Ui(21,ae,hr,D),Vt(D.expression),Ui(22,D.expression.end,hr,D),vg(D,D.statement)}function H_(D){const ae=Ui(109,D.pos,to,D);ur(),Ui(21,ae,hr,D),Vt(D.expression),Ui(22,D.expression.end,hr,D),ur(),Ye(D.caseBlock)}function _f(D){Ye(D.label),Ui(59,D.label.end,hr,D),ur(),Ye(D.statement)}function ev(D){Ui(111,D.pos,to,D),M1(Om(D.expression),Om),ru()}function ze(D){Ui(113,D.pos,to,D),ur(),Ye(D.tryBlock),D.catchClause&&(av(D,D.tryBlock,D.catchClause),Ye(D.catchClause)),D.finallyBlock&&(av(D,D.catchClause||D.tryBlock,D.finallyBlock),Ui(98,(D.catchClause||D.tryBlock).end,to,D),ur(),Ye(D.finallyBlock))}function Ze(D){k1(89,D.pos,to),ru()}function Mt(D){var ae,ht,on;Ye(D.name),Ye(D.exclamationToken),pm(D.type),vb(D.initializer,((ae=D.type)==null?void 0:ae.end)??((on=(ht=D.name.emitNode)==null?void 0:ht.typeNode)==null?void 0:on.end)??D.name.end,D,Mn.parenthesizeExpressionForDisallowedComma)}function Ht(D){if(LL(D))to("await"),ur(),to("using");else{const ae=X4(D)?"let":uR(D)?"const":kL(D)?"using":"var";to(ae)}ur(),Zs(D,D.declarations,528)}function yn(D){Yn(D)}function Yn(D){Up(D,D.modifiers,!1),to("function"),Ye(D.asteriskToken),ur(),_t(D.name),gn(D,$n)}function gn(D,ae){const ht=D.body;if(ht)if(Xo(ht)){const on=ja(D)&131072;on&&Lh(),Au(D),Ue(D.parameters,iu),iu(D.body),ae(D),cr(ht),sp(D),on&&zm()}else ae(D),ur(),Vt(ht,Mn.parenthesizeConciseBodyOfArrowFunction);else ae(D),ru()}function $n(D){q_(D,D.typeParameters),dy(D,D.parameters),pm(D.type)}function fi(D){if(ja(D)&1)return!0;if(D.multiLine||!$s(D)&&O&&!OS(D,O)||bg(D,Xc(D.statements),2)||ax(D,tl(D.statements),2,D.statements))return!1;let ae;for(const ht of D.statements){if(Eb(ae,ht,2)>0)return!1;ae=ht}return!0}function cr(D){l==null||l(D),ur(),hr("{"),Lh();const ae=fi(D)?ri:fr;Ir(D,D.statements,ae),zm(),k1(20,D.statements.end,hr,D),u==null||u(D)}function ri(D){fr(D,!0)}function fr(D,ae){const ht=Jd(D.statements),on=ve.getTextPos();en(D),ht===0&&on===ve.getTextPos()&&ae?(zm(),Zs(D,D.statements,768),Lh()):Zs(D,D.statements,1,void 0,ht)}function Zo(D){Ka(D)}function Ka(D){Ff(0,void 0),Ue(D.members,sx),Up(D,D.modifiers,!0),Ui(86,L_(D).pos,to,D),D.name&&(ur(),_t(D.name));const ae=ja(D)&131072;ae&&Lh(),q_(D,D.typeParameters),Zs(D,D.heritageClauses,0),ur(),hr("{"),Zs(D,D.members,129),hr("}"),ae&&zm(),Sb()}function Zu(D){Ff(0,void 0),Up(D,D.modifiers,!1),to("interface"),ur(),Ye(D.name),q_(D,D.typeParameters),Zs(D,D.heritageClauses,512),ur(),hr("{"),Zs(D,D.members,129),hr("}"),Sb()}function mu(D){Up(D,D.modifiers,!1),to("type"),ur(),Ye(D.name),q_(D,D.typeParameters),ur(),hr("="),ur(),Ye(D.type),ru()}function tv(D){Up(D,D.modifiers,!1),to("enum"),ur(),Ye(D.name),ur(),hr("{"),Zs(D,D.members,145),hr("}")}function j0(D){Up(D,D.modifiers,!1),~D.flags&2048&&(to(D.flags&32?"namespace":"module"),ur()),Ye(D.name);let ae=D.body;if(!ae)return ru();for(;ae&&Xl(ae);)hr("."),Ye(ae.name),ae=ae.body;ur(),Ye(ae)}function JI(D){Au(D),Ue(D.statements,iu),oi(D,PT(D)),sp(D)}function U0(D){Ui(19,D.pos,hr,D),Zs(D,D.clauses,129),Ui(20,D.clauses.end,hr,D,!0)}function QD(D){Up(D,D.modifiers,!1),Ui(102,D.modifiers?D.modifiers.end:D.pos,to,D),ur(),D.isTypeOnly&&(Ui(156,D.pos,to,D),ur()),Ye(D.name),ur(),Ui(64,D.name.end,hr,D),ur(),ZD(D.moduleReference),ru()}function ZD(D){D.kind===80?Vt(D):Ye(D)}function eN(D){Up(D,D.modifiers,!1),Ui(102,D.modifiers?D.modifiers.end:D.pos,to,D),ur(),D.importClause&&(Ye(D.importClause),ur(),Ui(161,D.importClause.end,to,D),ur()),Vt(D.moduleSpecifier),D.attributes&&ov(D.attributes),ru()}function hT(D){D.isTypeOnly&&(Ui(156,D.pos,to,D),ur()),Ye(D.name),D.name&&D.namedBindings&&(Ui(28,D.name.end,hr,D),ur()),Ye(D.namedBindings)}function D1(D){const ae=Ui(42,D.pos,hr,D);ur(),Ui(130,ae,to,D),ur(),Ye(D.name)}function KI(D){mb(D)}function tN(D){hg(D)}function XI(D){const ae=Ui(95,D.pos,to,D);ur(),D.isExportEquals?Ui(64,ae,hf,D):Ui(90,ae,to,D),ur(),Vt(D.expression,D.isExportEquals?Mn.getParenthesizeRightSideOfBinaryForOperator(64):Mn.parenthesizeExpressionOfExportDefault),ru()}function YI(D){Up(D,D.modifiers,!1);let ae=Ui(95,D.pos,to,D);if(ur(),D.isTypeOnly&&(ae=Ui(156,ae,to,D),ur()),D.exportClause?Ye(D.exportClause):ae=Ui(42,ae,hr,D),D.moduleSpecifier){ur();const ht=D.exportClause?D.exportClause.end:ae;Ui(161,ht,to,D),ur(),Vt(D.moduleSpecifier)}D.attributes&&ov(D.attributes),ru()}function $I(D){hr("{"),ur(),to(D.token===132?"assert":"with"),hr(":"),ur();const ae=D.elements;Zs(D,ae,526226),ur(),hr("}")}function QI(D){Ui(D.token,D.pos,to,D),ur();const ae=D.elements;Zs(D,ae,526226)}function gT(D){Ye(D.name),hr(":"),ur();const ae=D.value;if(!(ja(ae)&1024)){const ht=w_(ae);Gm(ht.pos)}Ye(ae)}function ZI(D){let ae=Ui(95,D.pos,to,D);ur(),ae=Ui(130,ae,to,D),ur(),ae=Ui(145,ae,to,D),ur(),Ye(D.name),ru()}function N1(D){const ae=Ui(42,D.pos,hr,D);ur(),Ui(130,ae,to,D),ur(),Ye(D.name)}function C1(D){mb(D)}function fb(D){hg(D)}function mb(D){hr("{"),Zs(D,D.elements,525136),hr("}")}function hg(D){D.isTypeOnly&&(to("type"),ur()),D.propertyName&&(Ye(D.propertyName),ur(),Ui(130,D.propertyName.end,to,D),ur()),Ye(D.name)}function H0(D){to("require"),hr("("),Vt(D.expression),hr(")")}function ts(D){Ye(D.openingElement),Zs(D,D.children,262144),Ye(D.closingElement)}function vT(D){hr("<"),_b(D.tagName),yg(D,D.typeArguments),ur(),Ye(D.attributes),hr("/>")}function nN(D){Ye(D.openingFragment),Zs(D,D.children,262144),Ye(D.closingFragment)}function q0(D){if(hr("<"),W_(D)){const ae=cN(D.tagName,D);_b(D.tagName),yg(D,D.typeArguments),D.attributes.properties&&D.attributes.properties.length>0&&ur(),Ye(D.attributes),O1(D.attributes,D),$0(ae)}hr(">")}function nv(D){ve.writeLiteral(D.text)}function Ph(D){hr("</"),a1(D)&&_b(D.tagName),hr(">")}function Wf(D){Zs(D,D.properties,262656)}function qd(D){Ye(D.name),Wm("=",hr,D.initializer,vn)}function Dp(D){hr("{..."),Vt(D.expression),hr("}")}function ap(D){let ae=!1;return iL((O==null?void 0:O.text)||"",D+1,()=>ae=!0),ae}function sy(D){let ae=!1;return rL((O==null?void 0:O.text)||"",D+1,()=>ae=!0),ae}function yT(D){return ap(D)||sy(D)}function rN(D){var ae;if(D.expression||!$t&&!$s(D)&&yT(D.pos)){const ht=O&&!$s(D)&&bs(O,D.pos).line!==bs(O,D.end).line;ht&&ve.increaseIndent();const on=Ui(19,D.pos,hr,D);Ye(D.dotDotDotToken),Vt(D.expression),Ui(20,((ae=D.expression)==null?void 0:ae.end)||on,hr,D),ht&&ve.decreaseIndent()}}function ex(D){_t(D.namespace),hr(":"),_t(D.name)}function _b(D){D.kind===80?Vt(D):Ye(D)}function J0(D){Ui(84,D.pos,to,D),ur(),Vt(D.expression,Mn.parenthesizeExpressionForDisallowedComma),bc(D,D.statements,D.expression.end)}function tx(D){const ae=Ui(90,D.pos,to,D);bc(D,D.statements,ae)}function bc(D,ae,ht){const on=ae.length===1&&(!O||$s(D)||$s(ae[0])||W3(D,ae[0],O));let Or=163969;on?(k1(59,ht,hr,D),ur(),Or&=-130):Ui(59,ht,hr,D),Zs(D,ae,Or)}function ly(D){ur(),bb(D.token,to),ur(),Zs(D,D.types,528)}function nx(D){const ae=Ui(85,D.pos,to,D);ur(),D.variableDeclaration&&(Ui(21,ae,hr,D),Ye(D.variableDeclaration),Ui(22,D.variableDeclaration.end,hr,D),ur()),Ye(D.block)}function a_(D){Ye(D.name),hr(":"),ur();const ae=D.initializer;if(!(ja(ae)&1024)){const ht=w_(ae);Gm(ht.pos)}Vt(ae,Mn.parenthesizeExpressionForDisallowedComma)}function bT(D){Ye(D.name),D.objectAssignmentInitializer&&(ur(),hr("="),ur(),Vt(D.objectAssignmentInitializer,Mn.parenthesizeExpressionForDisallowedComma))}function Je(D){D.expression&&(Ui(26,D.pos,hr,D),Vt(D.expression,Mn.parenthesizeExpressionForDisallowedComma))}function s_(D){Ye(D.name),vb(D.initializer,D.name.end,D,Mn.parenthesizeExpressionForDisallowedComma)}function _u(D){if(He("/**"),D.comment){const ae=fL(D.comment);if(ae){const ht=ae.split(/\r\n?|\n/g);for(const on of ht)Kc(),ur(),hr("*"),ur(),He(on)}}D.tags&&(D.tags.length===1&&D.tags[0].kind===351&&!D.comment?(ur(),Ye(D.tags[0])):Zs(D,D.tags,33)),ur(),He("*/")}function K0(D){um(D.tagName),rv(D.typeExpression),dm(D.comment)}function rx(D){um(D.tagName),Ye(D.name),dm(D.comment)}function hb(D){ur(),hr("{"),Ye(D.name),hr("}")}function cy(D){um(D.tagName),ur(),hr("{"),Ye(D.class),hr("}"),dm(D.comment)}function uy(D){um(D.tagName),rv(D.constraint),ur(),Zs(D,D.typeParameters,528),dm(D.comment)}function P2(D){um(D.tagName),D.typeExpression&&(D.typeExpression.kind===316?rv(D.typeExpression):(ur(),hr("{"),He("Object"),D.typeExpression.isArrayType&&(hr("["),hr("]")),hr("}"))),D.fullName&&(ur(),Ye(D.fullName)),dm(D.comment),D.typeExpression&&D.typeExpression.kind===329&&ST(D.typeExpression)}function Xa(D){um(D.tagName),D.name&&(ur(),Ye(D.name)),dm(D.comment),X0(D.typeExpression)}function l_(D){dm(D.comment),X0(D.typeExpression)}function ET(D){um(D.tagName),dm(D.comment)}function ST(D){Zs(D,w.createNodeArray(D.jsDocPropertyTags),33)}function X0(D){D.typeParameters&&Zs(D,w.createNodeArray(D.typeParameters),33),D.parameters&&Zs(D,w.createNodeArray(D.parameters),33),D.type&&(Kc(),ur(),hr("*"),ur(),Ye(D.type))}function TT(D){um(D.tagName),rv(D.typeExpression),ur(),D.isBracketed&&hr("["),Ye(D.name),D.isBracketed&&hr("]"),dm(D.comment)}function um(D){hr("@"),Ye(D)}function dm(D){const ae=fL(D);ae&&(ur(),He(ae))}function rv(D){D&&(ur(),hr("{"),Ye(D.type),hr("}"))}function ix(D){Kc();const ae=D.statements;if(ae.length===0||!Im(ae[0])||$s(ae[0])){Ir(D,ae,Xi);return}Xi(D)}function c_(D){P1(!!D.hasNoDefaultLib,D.syntheticFileReferences||[],D.syntheticTypeReferences||[],D.syntheticLibReferences||[]);for(const ae of D.prepends)if(KS(ae)&&ae.syntheticReferences)for(const ht of ae.syntheticReferences)Ye(ht),Kc()}function iN(D){D.isDeclarationFile&&P1(D.hasNoDefaultLib,D.referencedFiles,D.typeReferenceDirectives,D.libReferenceDirectives)}function P1(D,ae,ht,on){if(D){const Or=ve.getTextPos();J_('/// <reference no-default-lib="true"/>'),De&&De.sections.push({pos:Or,end:ve.getTextPos(),kind:"no-default-lib"}),Kc()}if(O&&O.moduleName&&(J_(`/// <amd-module name="${O.moduleName}" />`),Kc()),O&&O.amdDependencies)for(const Or of O.amdDependencies)Or.name?J_(`/// <amd-dependency name="${Or.name}" path="${Or.path}" />`):J_(`/// <amd-dependency path="${Or.path}" />`),Kc();for(const Or of ae){const ki=ve.getTextPos();J_(`/// <reference path="${Or.fileName}" />`),De&&De.sections.push({pos:ki,end:ve.getTextPos(),kind:"reference",data:Or.fileName}),Kc()}for(const Or of ht){const ki=ve.getTextPos(),gi=Or.resolutionMode&&Or.resolutionMode!==(O==null?void 0:O.impliedNodeFormat)?`resolution-mode="${Or.resolutionMode===99?"import":"require"}"`:"";J_(`/// <reference types="${Or.fileName}" ${gi}/>`),De&&De.sections.push({pos:ki,end:ve.getTextPos(),kind:Or.resolutionMode?Or.resolutionMode===99?"type-import":"type-require":"type",data:Or.fileName}),Kc()}for(const Or of on){const ki=ve.getTextPos();J_(`/// <reference lib="${Or.fileName}" />`),De&&De.sections.push({pos:ki,end:ve.getTextPos(),kind:"lib",data:Or.fileName}),Kc()}}function Xi(D){const ae=D.statements;Au(D),Ue(D.statements,iu),en(D);const ht=Gr(ae,on=>!Im(on));iN(D),Zs(D,ae,1,void 0,ht===-1?ae.length:ht),sp(D)}function ei(D){const ae=ja(D);!(ae&1024)&&D.pos!==D.expression.pos&&Gm(D.expression.pos),Vt(D.expression),!(ae&2048)&&D.end!==D.expression.end&&Eg(D.expression.end)}function Mh(D){L1(D,D.elements,528,void 0)}function Jd(D,ae,ht,on){let Or=!!ae;for(let ki=0;ki<D.length;ki++){const gi=D[ki];if(Im(gi)){if(ht?!ht.has(gi.expression.text):!0){Or&&(Or=!1,pt(ae)),Kc();const va=ve.getTextPos();Ye(gi),on&&De&&De.sections.push({pos:va,end:ve.getTextPos(),kind:"prologue",data:gi.expression.text}),ht&&ht.add(gi.expression.text)}}else return ki}return D.length}function M2(D,ae){for(const ht of D)if(!ae.has(ht.data)){Kc();const on=ve.getTextPos();Ye(ht),De&&De.sections.push({pos:on,end:ve.getTextPos(),kind:"prologue",data:ht.data}),ae&&ae.add(ht.data)}}function iv(D){if($i(D))Jd(D.statements,D);else{const ae=new Set;for(const ht of D.prepends)M2(ht.prologues,ae);for(const ht of D.sourceFiles)Jd(ht.statements,ht,ae,!0);pt(void 0)}}function L2(D){const ae=new Set;let ht;for(let on=0;on<D.sourceFiles.length;on++){const Or=D.sourceFiles[on];let ki,gi=0;for(const no of Or.statements){if(!Im(no))break;ae.has(no.expression.text)||(ae.add(no.expression.text),(ki||(ki=[])).push({pos:no.pos,end:no.end,expression:{pos:no.expression.pos,end:no.expression.end,text:no.expression.text}}),gi=gi<no.end?no.end:gi)}ki&&(ht||(ht=[])).push({file:on,text:Or.text.substring(0,gi),directives:ki})}return ht}function gb(D){if($i(D)||KS(D)){const ae=h4(D.text);if(ae)return J_(ae),Kc(),!0}else{for(const ae of D.prepends)if(N.assertNode(ae,KS),gb(ae))return!0;for(const ae of D.sourceFiles)if(gb(ae))return!0}}function bl(D,ae){if(!D)return;const ht=He;He=ae,Ye(D),He=ht}function Up(D,ae,ht){if(ae!=null&&ae.length){if(Zn(ae,xa))return gg(D,ae);if(Zn(ae,Eu))return ht?ox(D,ae):D.pos;p==null||p(ae);let on,Or,ki=0,gi=0,no;for(;ki<ae.length;){for(;gi<ae.length;){if(no=ae[gi],Or=Eu(no)?"decorators":"modifiers",on===void 0)on=Or;else if(Or!==on)break;gi++}const va={pos:-1,end:-1};ki===0&&(va.pos=ae.pos),gi===ae.length-1&&(va.end=ae.end),(on==="modifiers"||ht)&&Fm(Ye,D,ae,on==="modifiers"?2359808:2146305,void 0,ki,gi-ki,!1,va),ki=gi,on=Or,gi++}if(h==null||h(ae),no&&!Zm(no.end))return no.end}return D.pos}function gg(D,ae){Zs(D,ae,2359808);const ht=tl(ae);return ht&&!Zm(ht.end)?ht.end:D.pos}function pm(D){D&&(hr(":"),ur(),Ye(D))}function vb(D,ae,ht,on){D&&(ur(),Ui(64,ae,hf,ht),ur(),Vt(D,on))}function Wm(D,ae,ht,on){ht&&(ae(D),on(ht))}function ov(D){D&&(ur(),Ye(D))}function M1(D,ae){D&&(ur(),Vt(D,ae))}function AT(D){D&&(Ye(D),ur())}function vg(D,ae){Xo(ae)||ja(D)&1||pe&&!bg(D,ae,0)?(ur(),Ye(ae)):(Kc(),Lh(),LH(ae)?q(5,ae):Ye(ae),zm())}function ox(D,ae){Zs(D,ae,2146305);const ht=tl(ae);return ht&&!Zm(ht.end)?ht.end:D.pos}function yg(D,ae){Zs(D,ae,53776,Di)}function q_(D,ae){if(ea(D)&&D.typeArguments)return yg(D,D.typeArguments);Zs(D,ae,53776)}function dy(D,ae){Zs(D,ae,2576)}function oN(D,ae){const ht=sh(ae);return ht&&ht.pos===D.pos&&Gs(D)&&!D.type&&!bt(D.modifiers)&&!bt(D.typeParameters)&&!bt(ht.modifiers)&&!ht.dotDotDotToken&&!ht.questionToken&&!ht.type&&!ht.initializer&&Ve(ht.name)}function aN(D,ae){oN(D,ae)?Zs(D,ae,528):dy(D,ae)}function sN(D,ae){Zs(D,ae,8848)}function IT(D){switch(D&60){case 0:break;case 16:hr(",");break;case 4:ur(),hr("|");break;case 32:ur(),hr("*"),ur();break;case 8:ur(),hr("&");break}}function Zs(D,ae,ht,on,Or,ki){xT(Ye,D,ae,ht|(D&&ja(D)&2?65536:0),on,Or,ki)}function L1(D,ae,ht,on,Or,ki){xT(Vt,D,ae,ht,on,Or,ki)}function xT(D,ae,ht,on,Or,ki=0,gi=ht?ht.length-ki:0){if(ht===void 0&&on&16384)return;const va=ht===void 0||ki>=ht.length||gi===0;if(va&&on&32768){p==null||p(ht),h==null||h(ht);return}on&15360&&(hr(EHe(on)),va&&ht&&Gm(ht.pos,!0)),p==null||p(ht),va?on&1&&!(pe&&(!ae||O&&OS(ae,O)))?Kc():on&256&&!(on&524288)&&ur():Fm(D,ae,ht,on,Or,ki,gi,ht.hasTrailingComma,ht),h==null||h(ht),on&15360&&(va&&ht&&Eg(ht.end),hr(SHe(on)))}function Fm(D,ae,ht,on,Or,ki,gi,no,va){const ed=(on&262144)===0;let Md=ed;const Bf=bg(ae,ht[ki],on);Bf?(Kc(Bf),Md=!1):on&256&&ur(),on&128&&Lh();const xb=xHe(D,Or);let bi,Oh,Un=!1;for(let j1=0;j1<gi;j1++){const X_=ht[ki+j1];if(on&32)Kc(),IT(on);else if(bi){on&60&&bi.end!==(ae?ae.end:-1)&&(ja(bi)&2048||Eg(bi.end)),IT(on),Sn(Oh);const Wh=Eb(bi,X_,on);if(Wh>0){if(on&131||(Lh(),Un=!0),Md&&on&60&&!Zm(X_.pos)){const gN=w_(X_);Gm(gN.pos,!!(on&512),!0)}Kc(Wh),Md=!1}else bi&&on&512&&ur()}if(Oh=Wa(X_),Md){const Wh=w_(X_);Gm(Wh.pos)}else Md=ed;ie=X_.pos,xb(X_,D,Or,j1),Un&&(zm(),Un=!1),bi=X_}const fx=bi?ja(bi):0,Rb=$t||!!(fx&2048),Db=no&&on&64&&on&16;Db&&(bi&&!Rb?Ui(28,bi.end,hr,bi):hr(",")),bi&&(ae?ae.end:-1)!==bi.end&&on&60&&!Rb&&Eg(Db&&(va!=null&&va.end)?va.end:bi.end),on&128&&zm(),Sn(Oh);const BT=ax(ae,ht[ki+gi-1],on,va);BT?Kc(BT):on&2097408&&ur()}function yb(D){ve.writeLiteral(D)}function lN(D){ve.writeStringLiteral(D)}function RT(D){ve.write(D)}function k2(D,ae){ve.writeSymbol(D,ae)}function hr(D){ve.writePunctuation(D)}function ru(){ve.writeTrailingSemicolon(";")}function to(D){ve.writeKeyword(D)}function hf(D){ve.writeOperator(D)}function py(D){ve.writeParameter(D)}function J_(D){ve.writeComment(D)}function ur(){ve.writeSpace(" ")}function DT(D){ve.writeProperty(D)}function Y0(D){ve.nonEscapingWrite?ve.nonEscapingWrite(D):ve.write(D)}function Kc(D=1){for(let ae=0;ae<D;ae++)ve.writeLine(ae>0)}function Lh(){ve.increaseIndent()}function zm(){ve.decreaseIndent()}function k1(D,ae,ht,on){return je?bb(D,ht,ae):V1(on,D,ht,ae,bb)}function w1(D,ae){m&&m(D),ae(fa(D.kind)),b&&b(D)}function bb(D,ae,ht){const on=fa(D);return ae(on),ht<0?ht:ht+on.length}function av(D,ae,ht){if(ja(D)&1)ur();else if(pe){const on=Hp(D,ae,ht);on?Kc(on):ur()}else Kc()}function NT(D){const ae=D.split(/\r\n?|\n/g),ht=nie(ae);for(const on of ae){const Or=ht?on.slice(ht):on;Or.length&&(Kc(),He(Or))}}function Bm(D,ae){D?(Lh(),Kc(D)):ae&&ur()}function $0(D,ae){D&&zm(),ae&&zm()}function bg(D,ae,ht){if(ht&2||pe){if(ht&65536)return 1;if(ae===void 0)return!D||O&&OS(D,O)?0:1;if(ae.pos===ie||ae.kind===12)return 0;if(O&&D&&!Zm(D.pos)&&!$s(ae)&&(!ae.parent||Pl(ae.parent)===Pl(D)))return pe?Q0(on=>Roe(ae.pos,D.pos,O,on)):W3(D,ae,O)?0:1;if(CT(ae,ht))return 1}return ht&1?1:0}function Eb(D,ae,ht){if(ht&2||pe){if(D===void 0||ae===void 0||ae.kind===12)return 0;if(O&&!$s(D)&&!$s(ae))return pe&&Pd(D,ae)?Q0(on=>xU(D,ae,O,on)):!pe&&gf(D,ae)?gk(D,ae,O)?0:1:ht&65536?1:0;if(CT(D,ht)||CT(ae,ht))return 1}else if(pP(ae))return 1;return ht&1?1:0}function ax(D,ae,ht,on){if(ht&2||pe){if(ht&65536)return 1;if(ae===void 0)return!D||O&&OS(D,O)?0:1;if(O&&D&&!Zm(D.pos)&&!$s(ae)&&(!ae.parent||ae.parent===D)){if(pe){const Or=on&&!Zm(on.end)?on.end:ae.end;return Q0(ki=>Doe(Or,D.end,O,ki))}return Aoe(D,ae,O)?0:1}if(CT(ae,ht))return 1}return ht&1&&!(ht&131072)?1:0}function Q0(D){N.assert(!!pe);const ae=D(!0);return ae===0?D(!1):ae}function cN(D,ae){const ht=pe&&bg(ae,D,0);return ht&&Bm(ht,!1),!!ht}function O1(D,ae){const ht=pe&&ax(ae,D,0,void 0);ht&&Kc(ht)}function CT(D,ae){if($s(D)){const ht=pP(D);return ht===void 0?(ae&65536)!==0:ht}return(ae&65536)!==0}function Hp(D,ae,ht){return ja(D)&262144?0:(D=jl(D),ae=jl(ae),ht=jl(ht),pP(ht)?1:O&&!$s(D)&&!$s(ae)&&!$s(ht)?pe?Q0(on=>xU(ae,ht,O,on)):gk(ae,ht,O)?0:1:0)}function PT(D){return D.statements.length===0&&(!O||gk(D,D,O))}function jl(D){for(;D.kind===217&&$s(D);)D=D.expression;return D}function Fc(D,ae){if(sl(D)||gS(D))return LT(D);if(Ma(D)&&D.textSourceNode)return Fc(D.textSourceNode,ae);const ht=O,on=!!ht&&!!D.parent&&!$s(D);if(Qh(D)){if(!on||jn(D)!==Pl(ht))return Sr(D)}else if(t_(D)){if(!on||jn(D)!==Pl(ht))return lP(D)}else if(N.assertNode(D,kE),!on)return D.text;return OE(ht,D,ae)}function MT(D,ae,ht){if(D.kind===11&&D.textSourceNode){const Or=D.textSourceNode;if(Ve(Or)||Ji(Or)||vp(Or)||t_(Or)){const ki=vp(Or)?Or.text:Fc(Or);return ht?`"${dU(ki)}"`:ae||ja(D)&16777216?`"${og(ki)}"`:`"${dk(ki)}"`}else return MT(Or,ae,ht)}const on=(ae?1:0)|(ht?2:0)|(e.terminateUnterminatedLiterals?4:0)|(e.target&&e.target>=8?8:0);return fie(D,O,on)}function Au(D){D&&ja(D)&1048576||(ye.push($),$=0,se.push(G),G=void 0,Y.push(oe))}function sp(D){D&&ja(D)&1048576||($=ye.pop(),G=se.pop(),oe=Y.pop())}function Z0(D){(!oe||oe===tl(Y))&&(oe=new Set),oe.add(D)}function Ff(D,ae){ne.push(he),he=D,fe.push(oe),Ne=ae}function Sb(){he=ne.pop(),Ne=fe.pop()}function Tb(D){(!Ne||Ne===tl(fe))&&(Ne=new Set),Ne.add(D)}function iu(D){if(D)switch(D.kind){case 241:Ue(D.statements,iu);break;case 256:case 254:case 246:case 247:iu(D.statement);break;case 245:iu(D.thenStatement),iu(D.elseStatement);break;case 248:case 250:case 249:iu(D.initializer),iu(D.statement);break;case 255:iu(D.caseBlock);break;case 269:Ue(D.clauses,iu);break;case 296:case 297:Ue(D.statements,iu);break;case 258:iu(D.tryBlock),iu(D.catchClause),iu(D.finallyBlock);break;case 299:iu(D.variableDeclaration),iu(D.block);break;case 243:iu(D.declarationList);break;case 261:Ue(D.declarations,iu);break;case 260:case 169:case 208:case 263:qp(D.name);break;case 262:qp(D.name),ja(D)&1048576&&(Ue(D.parameters,iu),iu(D.body));break;case 206:case 207:Ue(D.elements,iu);break;case 272:iu(D.importClause);break;case 273:qp(D.name),iu(D.namedBindings);break;case 274:qp(D.name);break;case 280:qp(D.name);break;case 275:Ue(D.elements,iu);break;case 276:qp(D.propertyName||D.name);break}}function sx(D){if(D)switch(D.kind){case 303:case 304:case 172:case 174:case 177:case 178:qp(D.name);break}}function qp(D){D&&(sl(D)||gS(D)?LT(D):ta(D)&&iu(D))}function LT(D){const ae=D.emitNode.autoGenerate;if((ae.flags&7)===4)return kT(lw(D),Ji(D),ae.flags,ae.prefix,ae.suffix);{const ht=ae.id;return Z[ht]||(Z[ht]=dN(D))}}function kT(D,ae,ht,on,Or){const ki=as(D),gi=ae?K:U;return gi[ki]||(gi[ki]=wT(D,ae,ht??0,iD(on,LT),iD(Or)))}function Hs(D,ae){return eE(D)&&!uN(D,ae)&&!V.has(D)}function uN(D,ae){return ae?!!(Ne!=null&&Ne.has(D)):!!(oe!=null&&oe.has(D))}function eE(D,ae){return O?V4(O,D,r):!0}function W1(D,ae){for(let ht=ae;ht&&jE(ht,ae);ht=ht.nextContainer)if(fh(ht)&&ht.locals){const on=ht.locals.get(hl(D));if(on&&on.flags&3257279)return!1}return!0}function w2(D){switch(D){case"":return $;case"#":return he;default:return(G==null?void 0:G.get(D))??0}}function vd(D,ae){switch(D){case"":$=ae;break;case"#":he=ae;break;default:G??(G=new Map),G.set(D,ae);break}}function sv(D,ae,ht,on,Or){on.length>0&&on.charCodeAt(0)===35&&(on=on.slice(1));const ki=N0(ht,on,"",Or);let gi=w2(ki);if(D&&!(gi&D)){const va=N0(ht,on,D===268435456?"_i":"_n",Or);if(Hs(va,ht))return gi|=D,ht?Tb(va):ae&&Z0(va),vd(ki,gi),va}for(;;){const no=gi&268435455;if(gi++,no!==8&&no!==13){const va=no<26?"_"+String.fromCharCode(97+no):"_"+(no-26),ed=N0(ht,on,va,Or);if(Hs(ed,ht))return ht?Tb(ed):ae&&Z0(ed),vd(ki,gi),ed}}}function K_(D,ae=Hs,ht,on,Or,ki,gi){if(D.length>0&&D.charCodeAt(0)===35&&(D=D.slice(1)),ki.length>0&&ki.charCodeAt(0)===35&&(ki=ki.slice(1)),ht){const va=N0(Or,ki,D,gi);if(ae(va,Or))return Or?Tb(va):on?Z0(va):V.add(va),va}D.charCodeAt(D.length-1)!==95&&(D+="_");let no=1;for(;;){const va=N0(Or,ki,D+no,gi);if(ae(va,Or))return Or?Tb(va):on?Z0(va):V.add(va),va;no++}}function lx(D){return K_(D,eE,!0,!1,!1,"","")}function Np(D){const ae=Fc(D.name);return W1(ae,ii(D,fh))?ae:K_(ae,Hs,!1,!1,!1,"","")}function cx(D){const ae=yR(D),ht=Ma(ae)?_ie(ae.text):"module";return K_(ht,Hs,!1,!1,!1,"","")}function lp(){return K_("default",Hs,!1,!1,!1,"","")}function ux(){return K_("class",Hs,!1,!1,!1,"","")}function fy(D,ae,ht,on){return Ve(D.name)?kT(D.name,ae):sv(0,!1,ae,ht,on)}function wT(D,ae,ht,on,Or){switch(D.kind){case 80:case 81:return K_(Fc(D),Hs,!!(ht&16),!!(ht&8),ae,on,Or);case 267:case 266:return N.assert(!on&&!Or&&!ae),Np(D);case 272:case 278:return N.assert(!on&&!Or&&!ae),cx(D);case 262:case 263:{N.assert(!on&&!Or&&!ae);const ki=D.name;return ki&&!sl(ki)?wT(ki,!1,ht,on,Or):lp()}case 277:return N.assert(!on&&!Or&&!ae),lp();case 231:return N.assert(!on&&!Or&&!ae),ux();case 174:case 177:case 178:return fy(D,ae,on,Or);case 167:return sv(0,!0,ae,on,Or);default:return sv(0,!1,ae,on,Or)}}function dN(D){const ae=D.emitNode.autoGenerate,ht=iD(ae.prefix,LT),on=iD(ae.suffix);switch(ae.flags&7){case 1:return sv(0,!!(ae.flags&8),Ji(D),ht,on);case 2:return N.assertNode(D,Ve),sv(268435456,!!(ae.flags&8),!1,ht,on);case 3:return K_(Sr(D),ae.flags&32?eE:Hs,!!(ae.flags&16),!!(ae.flags&8),Ji(D),ht,on)}return N.fail(`Unsupported GeneratedIdentifierKind: ${N.formatEnum(ae.flags&7,Y6,!0)}.`)}function pN(D,ae){const ht=_e(2,D,ae),on=tn,Or=rn,ki=Pn;OT(ae),ht(D,ae),fN(ae,on,Or,ki)}function OT(D){const ae=ja(D),ht=w_(D);Ab(D,ae,ht.pos,ht.end),ae&4096&&($t=!0)}function fN(D,ae,ht,on){const Or=ja(D),ki=w_(D);Or&4096&&($t=!1),Cp(D,Or,ki.pos,ki.end,ae,ht,on);const gi=xae(D);gi&&Cp(D,Or,gi.pos,gi.end,ae,ht,on)}function Ab(D,ae,ht,on){Oi(),Qt=!1;const Or=ht<0||(ae&1024)!==0||D.kind===12,ki=on<0||(ae&2048)!==0||D.kind===12;(ht>0||on>0)&&ht!==on&&(Or||F1(ht,D.kind!==359),(!Or||ht>=0&&ae&1024)&&(tn=ht),(!ki||on>=0&&ae&2048)&&(rn=on,D.kind===261&&(Pn=on))),Ue(jR(D),kh),No()}function Cp(D,ae,ht,on,Or,ki,gi){Oi();const no=on<0||(ae&2048)!==0||D.kind===12;Ue(Bk(D),mN),(ht>0||on>0)&&ht!==on&&(tn=Or,rn=ki,Pn=gi,!no&&D.kind!==359&&u_(on)),No()}function kh(D){(D.hasLeadingNewline||D.kind===2)&&ve.writeLine(),WT(D),D.hasTrailingNewLine||D.kind===2?ve.writeLine():ve.writeSpace(" ")}function mN(D){ve.isAtStartOfLine()||ve.writeSpace(" "),WT(D),D.hasTrailingNewLine&&ve.writeLine()}function WT(D){const ae=rs(D),ht=D.kind===3?DA(ae):void 0;PR(ae,ht,ve,0,ae.length,R)}function rs(D){return D.kind===3?`/*${D.text}*/`:`//${D.text}`}function Ir(D,ae,ht){Oi();const{pos:on,end:Or}=ae,ki=ja(D),gi=on<0||(ki&1024)!==0,no=$t||Or<0||(ki&2048)!==0;gi||zf(ae),No(),ki&4096&&!$t?($t=!0,ht(D),$t=!1):ht(D),Oi(),no||(F1(ae.end,!0),Qt&&!ve.isAtStartOfLine()&&ve.writeLine()),No()}function gf(D,ae){return D=Pl(D),D.parent&&D.parent===Pl(ae).parent}function Pd(D,ae){if(ae.pos<D.end)return!1;D=Pl(D),ae=Pl(ae);const ht=D.parent;if(!ht||ht!==ae.parent)return!1;const on=rae(D),Or=on==null?void 0:on.indexOf(D);return Or!==void 0&&Or>-1&&on.indexOf(ae)===Or+1}function F1(D,ae){Qt=!1,ae?D===0&&(O!=null&&O.isDeclarationFile)?Tg(D,tE):Tg(D,FT):D===0&&Tg(D,_N)}function _N(D,ae,ht,on,Or){yf(D,ae)&&FT(D,ae,ht,on,Or)}function tE(D,ae,ht,on,Or){yf(D,ae)||FT(D,ae,ht,on,Or)}function z1(D,ae){return e.onlyPrintJsDocStyle?rq(D,ae)||j4(D,ae):!0}function FT(D,ae,ht,on,Or){!O||!z1(O.text,D)||(Qt||(coe(Rt(),ve,Or,D),Qt=!0),Ls(D),PR(O.text,Rt(),ve,D,ae,R),Ls(ae),on?ve.writeLine():ht===3&&ve.writeSpace(" "))}function Eg(D){$t||D===-1||F1(D,!0)}function u_(D){dx(D,vf)}function vf(D,ae,ht,on){!O||!z1(O.text,D)||(ve.isAtStartOfLine()||ve.writeSpace(" "),Ls(D),PR(O.text,Rt(),ve,D,ae,R),Ls(ae),on&&ve.writeLine())}function Gm(D,ae,ht){$t||(Oi(),dx(D,ae?vf:ht?lv:Sg),No())}function lv(D,ae,ht){O&&(Ls(D),PR(O.text,Rt(),ve,D,ae,R),Ls(ae),ht===2&&ve.writeLine())}function Sg(D,ae,ht,on){O&&(Ls(D),PR(O.text,Rt(),ve,D,ae,R),Ls(ae),on?ve.writeLine():ve.writeSpace(" "))}function Tg(D,ae){O&&(tn===-1||D!==tn)&&(cc(D)?hN(ae):rL(O.text,D,ae,D))}function dx(D,ae){O&&(rn===-1||D!==rn&&D!==Pn)&&iL(O.text,D,ae)}function cc(D){return hn!==void 0&&Ya(hn).nodePos===D}function hN(D){if(!O)return;const ae=Ya(hn).detachedCommentEndPos;hn.length-1?hn.pop():hn=void 0,rL(O.text,ae,D,ae)}function zf(D){const ae=O&&doe(O.text,Rt(),ve,wh,D,R,$t);ae&&(hn?hn.push(ae):hn=[ae])}function wh(D,ae,ht,on,Or,ki){!O||!z1(O.text,on)||(Ls(on),PR(D,ae,ht,on,Or,ki),Ls(Or))}function yf(D,ae){return!!O&&bj(O.text,D,ae)}function B1(D){return D.parsedSourceMap===void 0&&D.sourceMapText!==void 0&&(D.parsedSourceMap=tJ(D.sourceMapText)||!1),D.parsedSourceMap||void 0}function nE(D,ae){const ht=_e(3,D,ae);px(ae),ht(D,ae),zT(ae)}function px(D){const ae=ja(D),ht=qv(D);if(tj(D)){N.assertIsDefined(D.parent,"UnparsedNodes must have parent pointers");const on=B1(D.parent);on&&at&&at.appendSourceMap(ve.getLine(),ve.getColumn(),on,D.parent.sourceMapPath,D.parent.getLineAndCharacterOfPosition(D.pos),D.parent.getLineAndCharacterOfPosition(D.end))}else{const on=ht.source||Gt;D.kind!==359&&!(ae&32)&&ht.pos>=0&&G1(ht.source||Gt,bf(on,ht.pos)),ae&128&&(je=!0)}}function zT(D){const ae=ja(D),ht=qv(D);tj(D)||(ae&128&&(je=!1),D.kind!==359&&!(ae&64)&&ht.end>=0&&G1(ht.source||Gt,ht.end))}function bf(D,ae){return D.skipTrivia?D.skipTrivia(ae):ka(D.text,ae)}function Ls(D){if(je||Zm(D)||rE(Gt))return;const{line:ae,character:ht}=bs(Gt,D);at.addMapping(ve.getLine(),ve.getColumn(),vt,ae,ht,void 0)}function G1(D,ae){if(D!==Gt){const ht=Gt,on=vt;cv(D),Ls(ae),Ib(ht,on)}else Ls(ae)}function V1(D,ae,ht,on,Or){if(je||D&&c3(D))return Or(ae,ht,on);const ki=D&&D.emitNode,gi=ki&&ki.flags||0,no=ki&&ki.tokenSourceMapRanges&&ki.tokenSourceMapRanges[ae],va=no&&no.source||Gt;return on=bf(va,no?no.pos:on),!(gi&256)&&on>=0&&G1(va,on),on=Or(ae,ht,on),no&&(on=no.end),!(gi&512)&&on>=0&&G1(va,on),on}function cv(D){if(!je){if(Gt=D,D===$e){vt=It;return}rE(D)||(vt=at.addSource(D.fileName),e.inlineSources&&at.setSourceContent(vt,D.text),$e=D,It=vt)}}function Ib(D,ae){Gt=D,vt=ae}function rE(D){return Il(D.fileName,".json")}}function bHe(){const e=[];return e[1024]=["{","}"],e[2048]=["(",")"],e[4096]=["<",">"],e[8192]=["[","]"],e}function EHe(e){return mce[e&15360][0]}function SHe(e){return mce[e&15360][1]}function THe(e,t,r,i){t(e)}function AHe(e,t,r,i){t(e,r.select(i))}function IHe(e,t,r,i){t(e,r)}function xHe(e,t){return e.length===1?THe:typeof t=="object"?AHe:IHe}var mce,h7,IJ,g1,xJ,Bw,RHe=T({"src/compiler/emitter.ts"(){ra(),ra(),fS(),mce=bHe(),h7={hasGlobalName:Ko,getReferencedExportContainer:Ko,getReferencedImportDeclaration:Ko,getReferencedDeclarationWithCollidingName:Ko,isDeclarationWithCollidingName:Ko,isValueAliasDeclaration:Ko,isReferencedAliasDeclaration:Ko,isTopLevelValueImportEqualsWithEntityName:Ko,getNodeCheckFlags:Ko,isDeclarationVisible:Ko,isLateBound:e=>!1,collectLinkedAliases:Ko,isImplementationOfOverload:Ko,isRequiredInitializedParameter:Ko,isOptionalUninitializedParameterProperty:Ko,isExpandoFunctionDeclaration:Ko,getPropertiesOfContainerFunction:Ko,createTypeOfDeclaration:Ko,createReturnTypeOfSignatureDeclaration:Ko,createTypeOfExpression:Ko,createLiteralConstValue:Ko,isSymbolAccessible:Ko,isEntityNameVisible:Ko,getConstantValue:Ko,getReferencedValueDeclaration:Ko,getReferencedValueDeclarations:Ko,getTypeReferenceSerializationKind:Ko,isOptionalParameter:Ko,moduleExportsSomeValue:Ko,isArgumentsLocalBinding:Ko,getExternalModuleFileFromDeclaration:Ko,getTypeReferenceDirectivesForEntityName:Ko,getTypeReferenceDirectivesForSymbol:Ko,isLiteralConstDeclaration:Ko,getJsxFactoryEntity:Ko,getJsxFragmentFactoryEntity:Ko,getAllAccessorDeclarations:Ko,getSymbolOfExternalModuleSpecifier:Ko,isBindingCapturedByNode:Ko,getDeclarationStatementsForSourceFile:Ko,isImportRequiredByAugmentation:Ko,tryFindAmbientModule:Ko},IJ=Td(()=>k0({})),g1=Td(()=>k0({removeComments:!0})),xJ=Td(()=>k0({removeComments:!0,neverAsciiEscape:!0})),Bw=Td(()=>k0({removeComments:!0,omitTrailingSemicolon:!0}))}});function g7(e,t,r){if(!e.getDirectories||!e.readDirectory)return;const i=new Map,o=Mu(r);return{useCaseSensitiveFileNames:r,fileExists:I,readFile:(G,ne)=>e.readFile(G,ne),directoryExists:e.directoryExists&&R,getDirectories:C,readDirectory:O,createDirectory:e.createDirectory&&M,writeFile:e.writeFile&&A,addOrDeleteFileOrDirectory:K,addOrDeleteFile:Z,clearCache:se,realpath:e.realpath&&U};function s(G){return ol(G,t,o)}function l(G){return i.get(Bc(G))}function u(G){const ne=l(ai(G));return ne&&(ne.sortedAndCanonicalizedFiles||(ne.sortedAndCanonicalizedFiles=ne.files.map(o).sort(),ne.sortedAndCanonicalizedDirectories=ne.directories.map(o).sort()),ne)}function p(G){return ic(ga(G))}function h(G,ne){var he;if(!e.realpath||Bc(s(e.realpath(G)))===ne){const ye={files:wt(e.readDirectory(G,void 0,void 0,["*.*"]),p)||[],directories:e.getDirectories(G)||[]};return i.set(Bc(ne),ye),ye}if((he=e.directoryExists)!=null&&he.call(e,G))return i.set(ne,!1),!1}function m(G,ne){ne=Bc(ne);const he=l(ne);if(he)return he;try{return h(G,ne)}catch{N.assert(!i.has(Bc(ne)));return}}function b(G,ne){return Nv(G,ne,nl,Uu)>=0}function A(G,ne,he){const ye=s(G),$=u(ye);return $&&V($,p(G),!0),e.writeFile(G,ne,he)}function I(G){const ne=s(G),he=u(ne);return he&&b(he.sortedAndCanonicalizedFiles,o(p(G)))||e.fileExists(G)}function R(G){const ne=s(G);return i.has(Bc(ne))||e.directoryExists(G)}function M(G){const ne=s(G),he=u(ne);if(he){const ye=p(G),$=o(ye),Y=he.sortedAndCanonicalizedDirectories;xy(Y,$,Uu)&&he.directories.push(ye)}e.createDirectory(G)}function C(G){const ne=s(G),he=m(G,ne);return he?he.directories.slice():e.getDirectories(G)}function O(G,ne,he,ye,$){const Y=s(G),oe=m(G,Y);let fe;if(oe!==void 0)return FU(G,ne,he,ye,r,t,$,Ne,U);return e.readDirectory(G,ne,he,ye,$);function Ne(ie){const ve=s(ie);if(ve===Y)return oe||pe(ie,ve);const Le=m(ie,ve);return Le!==void 0?Le||pe(ie,ve):gW}function pe(ie,ve){if(fe&&ve===Y)return fe;const Le={files:wt(e.readDirectory(ie,void 0,void 0,["*.*"]),p)||et,directories:e.getDirectories(ie)||et};return ve===Y&&(fe=Le),Le}}function U(G){return e.realpath?e.realpath(G):G}function K(G,ne){if(l(ne)!==void 0){se();return}const ye=u(ne);if(!ye)return;if(!e.directoryExists){se();return}const $=p(G),Y={fileExists:e.fileExists(G),directoryExists:e.directoryExists(G)};return Y.directoryExists||b(ye.sortedAndCanonicalizedDirectories,o($))?se():V(ye,$,Y.fileExists),Y}function Z(G,ne,he){if(he===1)return;const ye=u(ne);ye&&V(ye,p(G),he===0)}function V(G,ne,he){const ye=G.sortedAndCanonicalizedFiles,$=o(ne);if(he)xy(ye,$,Uu)&&G.files.push(ne);else{const Y=Nv(ye,$,nl,Uu);if(Y>=0){ye.splice(Y,1);const oe=G.files.findIndex(fe=>o(fe)===$);G.files.splice(oe,1)}}}function se(){i.clear()}}function v7(e,t,r,i,o){var s;const l=NE(((s=t==null?void 0:t.configFile)==null?void 0:s.extendedSourceFiles)||et,o);r.forEach((u,p)=>{l.has(p)||(u.projects.delete(e),u.close())}),l.forEach((u,p)=>{const h=r.get(p);h?h.projects.add(e):r.set(p,{projects:new Set([e]),watcher:i(u,p),close:()=>{const m=r.get(p);!m||m.projects.size!==0||(m.watcher.close(),r.delete(p))}})})}function RJ(e,t){t.forEach(r=>{r.projects.delete(e)&&r.close()})}function y7(e,t,r){e.delete(t)&&e.forEach(({extendedResult:i},o)=>{var s;(s=i.extendedSourceFiles)!=null&&s.some(l=>r(l)===t)&&y7(e,o,r)})}function DJ(e,t,r){JC(t,e.getMissingFilePaths(),{createNewValue:r,onDeleteValue:Qm})}function Gw(e,t,r){t?JC(e,new Map(Object.entries(t)),{createNewValue:i,onDeleteValue:Mf,onExistingValue:o}):tp(e,Mf);function i(s,l){return{watcher:r(s,l),flags:l}}function o(s,l,u){s.flags!==l&&(s.watcher.close(),e.set(u,i(u,l)))}}function Vw({watchedDirPath:e,fileOrDirectory:t,fileOrDirectoryPath:r,configFileName:i,options:o,program:s,extraFileExtensions:l,currentDirectory:u,useCaseSensitiveFileNames:p,writeLog:h,toPath:m,getScriptKind:b}){const A=P7(r);if(!A)return h(`Project: ${i} Detected ignored path: ${t}`),!0;if(r=A,r===e)return!1;if(xA(r)&&!(Xoe(t,o,l)||O()))return h(`Project: ${i} Detected file add/remove of non supported extension: ${t}`),!0;if(Pse(t,o.configFile.configFileSpecs,go(ai(i),u),p,u))return h(`Project: ${i} Detected excluded file: ${t}`),!0;if(!s||Ps(o)||o.outDir)return!1;if(Su(r)){if(o.declarationDir)return!1}else if(!Tc(r,VR))return!1;const I=Id(r),R=To(s)?void 0:DHe(s)?s.getProgramOrUndefined():s,M=!R&&!To(s)?s:void 0;if(C(I+".ts")||C(I+".tsx"))return h(`Project: ${i} Detected output file: ${t}`),!0;return!1;function C(U){return R?!!R.getSourceFileByPath(U):M?M.getState().fileInfos.has(U):!!An(s,K=>m(K)===U)}function O(){if(!b)return!1;switch(b(t)){case 3:case 4:case 7:case 5:return!0;case 1:case 2:return Xy(o);case 6:return A0(o);case 0:return!1}}}function DHe(e){return!!e.getState}function _ce(e,t){return e?e.isEmittedFile(t):!1}function NJ(e,t,r,i){Zne(t===2?r:$a);const o={watchFile:(M,C,O,U)=>e.watchFile(M,C,O,U),watchDirectory:(M,C,O,U)=>e.watchDirectory(M,C,(O&1)!==0,U)},s=t!==0?{watchFile:I("watchFile"),watchDirectory:I("watchDirectory")}:void 0,l=t===2?{watchFile:b,watchDirectory:A}:s||o,u=t===2?m:TD;return{watchFile:p("watchFile"),watchDirectory:p("watchDirectory")};function p(M){return(C,O,U,K,Z,V)=>{var se;return RF(C,M==="watchFile"?K==null?void 0:K.excludeFiles:K==null?void 0:K.excludeDirectories,h(),((se=e.getCurrentDirectory)==null?void 0:se.call(e))||"")?u(C,U,K,Z,V):l[M].call(void 0,C,O,U,K,Z,V)}}function h(){return typeof e.useCaseSensitiveFileNames=="boolean"?e.useCaseSensitiveFileNames:e.useCaseSensitiveFileNames()}function m(M,C,O,U,K){return r(`ExcludeWatcher:: Added:: ${R(M,C,O,U,K,i)}`),{close:()=>r(`ExcludeWatcher:: Close:: ${R(M,C,O,U,K,i)}`)}}function b(M,C,O,U,K,Z){r(`FileWatcher:: Added:: ${R(M,O,U,K,Z,i)}`);const V=s.watchFile(M,C,O,U,K,Z);return{close:()=>{r(`FileWatcher:: Close:: ${R(M,O,U,K,Z,i)}`),V.close()}}}function A(M,C,O,U,K,Z){const V=`DirectoryWatcher:: Added:: ${R(M,O,U,K,Z,i)}`;r(V);const se=Ys(),G=s.watchDirectory(M,C,O,U,K,Z),ne=Ys()-se;return r(`Elapsed:: ${ne}ms ${V}`),{close:()=>{const he=`DirectoryWatcher:: Close:: ${R(M,O,U,K,Z,i)}`;r(he);const ye=Ys();G.close();const $=Ys()-ye;r(`Elapsed:: ${$}ms ${he}`)}}}function I(M){return(C,O,U,K,Z,V)=>o[M].call(void 0,C,(...se)=>{const G=`${M==="watchFile"?"FileWatcher":"DirectoryWatcher"}:: Triggered with ${se[0]} ${se[1]!==void 0?se[1]:""}:: ${R(C,U,K,Z,V,i)}`;r(G);const ne=Ys();O.call(void 0,...se);const he=Ys()-ne;r(`Elapsed:: ${he}ms ${G}`)},U,K,Z,V)}function R(M,C,O,U,K,Z){return`WatchInfo: ${M} ${C} ${JSON.stringify(O)} ${Z?Z(U,K):K===void 0?U:`${U} ${K}`}`}}function jw(e){const t=e==null?void 0:e.fallbackPolling;return{watchFile:t!==void 0?t:1}}function Mf(e){e.watcher.close()}var CJ,PJ,NHe=T({"src/compiler/watchUtilities.ts"(){ra(),CJ=(e=>(e[e.Update=0]="Update",e[e.RootNamesAndUpdate=1]="RootNamesAndUpdate",e[e.Full=2]="Full",e))(CJ||{}),PJ=(e=>(e[e.None=0]="None",e[e.TriggerOnly=1]="TriggerOnly",e[e.Verbose=2]="Verbose",e))(PJ||{})}});function hce(e,t,r="tsconfig.json"){return Sm(e,i=>{const o=Qr(i,r);return t(o)?o:void 0})}function b7(e,t){const r=ai(t),i=fp(e)?e:Qr(r,e);return ga(i)}function gce(e,t,r){let i;return Ue(e,s=>{const l=YM(s,t);if(l.pop(),!i){i=l;return}const u=Math.min(i.length,l.length);for(let p=0;p<u;p++)if(r(i[p])!==r(l[p])){if(p===0)return!0;i.length=p;break}l.length<i.length&&(i.length=l.length)})?"":i?Cy(i):t}function vce(e,t){return kJ(e,t)}function MJ(e,t,r){return(i,o,s)=>{let l;try{il("beforeIORead"),l=e(i,t().charset),il("afterIORead"),ef("I/O Read","beforeIORead","afterIORead")}catch(u){s&&s(u.message),l=""}return l!==void 0?dw(i,l,o,r):void 0}}function LJ(e,t,r){return(i,o,s,l)=>{try{il("beforeIOWrite"),_U(i,o,s,e,t,r),il("afterIOWrite"),ef("I/O Write","beforeIOWrite","afterIOWrite")}catch(u){l&&l(u.message)}}}function kJ(e,t,r=gu){const i=new Map,o=Mu(r.useCaseSensitiveFileNames);function s(m){return i.has(m)?!0:(h.directoryExists||r.directoryExists)(m)?(i.set(m,!0),!0):!1}function l(){return ai(ga(r.getExecutingFilePath()))}const u=Uv(e),p=r.realpath&&(m=>r.realpath(m)),h={getSourceFile:MJ(m=>h.readFile(m),()=>e,t),getDefaultLibLocation:l,getDefaultLibFileName:m=>Qr(l(),aL(m)),writeFile:LJ((m,b,A)=>r.writeFile(m,b,A),m=>(h.createDirectory||r.createDirectory)(m),m=>s(m)),getCurrentDirectory:Td(()=>r.getCurrentDirectory()),useCaseSensitiveFileNames:()=>r.useCaseSensitiveFileNames,getCanonicalFileName:o,getNewLine:()=>u,fileExists:m=>r.fileExists(m),readFile:m=>r.readFile(m),trace:m=>r.write(m+u),directoryExists:m=>r.directoryExists(m),getEnvironmentVariable:m=>r.getEnvironmentVariable?r.getEnvironmentVariable(m):"",getDirectories:m=>r.getDirectories(m),realpath:p,readDirectory:(m,b,A,I,R)=>r.readDirectory(m,b,A,I,R),createDirectory:m=>r.createDirectory(m),createHash:oa(r,r.createHash)};return h}function Uw(e,t,r){const i=e.readFile,o=e.fileExists,s=e.directoryExists,l=e.createDirectory,u=e.writeFile,p=new Map,h=new Map,m=new Map,b=new Map,A=M=>{const C=t(M),O=p.get(C);return O!==void 0?O!==!1?O:void 0:I(C,M)},I=(M,C)=>{const O=i.call(e,C);return p.set(M,O!==void 0?O:!1),O};e.readFile=M=>{const C=t(M),O=p.get(C);return O!==void 0?O!==!1?O:void 0:!Il(M,".json")&&!dce(M)?i.call(e,M):I(C,M)};const R=r?(M,C,O,U)=>{const K=t(M),Z=typeof C=="object"?C.impliedNodeFormat:void 0,V=b.get(Z),se=V==null?void 0:V.get(K);if(se)return se;const G=r(M,C,O,U);return G&&(Su(M)||Il(M,".json"))&&b.set(Z,(V||new Map).set(K,G)),G}:void 0;return e.fileExists=M=>{const C=t(M),O=h.get(C);if(O!==void 0)return O;const U=o.call(e,M);return h.set(C,!!U),U},u&&(e.writeFile=(M,C,...O)=>{const U=t(M);h.delete(U);const K=p.get(U);K!==void 0&&K!==C?(p.delete(U),b.forEach(Z=>Z.delete(U))):R&&b.forEach(Z=>{const V=Z.get(U);V&&V.text!==C&&Z.delete(U)}),u.call(e,M,C,...O)}),s&&(e.directoryExists=M=>{const C=t(M),O=m.get(C);if(O!==void 0)return O;const U=s.call(e,M);return m.set(C,!!U),U},l&&(e.createDirectory=M=>{const C=t(M);m.delete(C),l.call(e,M)})),{originalReadFile:i,originalFileExists:o,originalDirectoryExists:s,originalCreateDirectory:l,originalWriteFile:u,getSourceFileWithCache:R,readFileWithCache:A}}function sRe(e,t,r){let i;return i=Jr(i,e.getConfigFileParsingDiagnostics()),i=Jr(i,e.getOptionsDiagnostics(r)),i=Jr(i,e.getSyntacticDiagnostics(t,r)),i=Jr(i,e.getGlobalDiagnostics(r)),i=Jr(i,e.getSemanticDiagnostics(t,r)),Nf(e.getCompilerOptions())&&(i=Jr(i,e.getDeclarationDiagnostics(t,r))),Yx(i||et)}function lRe(e,t){let r="";for(const i of e)r+=wJ(i,t);return r}function wJ(e,t){const r=`${mS(e)} TS${e.code}: ${z_(e.messageText,t.getNewLine())}${t.getNewLine()}`;if(e.file){const{line:i,character:o}=bs(e.file,e.start),s=e.file.fileName;return`${rC(s,t.getCurrentDirectory(),u=>t.getCanonicalFileName(u))}(${i+1},${o+1}): `+r}return r}function cRe(e){switch(e){case 1:return"\x1B[91m";case 0:return"\x1B[93m";case 2:return N.fail("Should never get an Info diagnostic on the command line.");case 3:return"\x1B[94m"}}function v1(e,t){return t+e+Sce}function uRe(e,t,r,i,o,s){const{line:l,character:u}=bs(e,t),{line:p,character:h}=bs(e,t+r),m=bs(e,e.text.length).line,b=p-l>=4;let A=(p+1+"").length;b&&(A=Math.max(Tce.length,A));let I="";for(let R=l;R<=p;R++){I+=s.getNewLine(),b&&l+1<R&&R<p-1&&(I+=i+v1(Tce.padStart(A),YJ)+$J+s.getNewLine(),R=p-1);const M=tL(e,R,0),C=R<m?tL(e,R+1,0):e.text.length;let O=e.text.slice(M,C);if(O=O.trimEnd(),O=O.replace(/\t/g," "),I+=i+v1((R+1+"").padStart(A),YJ)+$J,I+=O+s.getNewLine(),I+=i+v1("".padStart(A),YJ)+$J,I+=o,R===l){const U=R===p?h:void 0;I+=O.slice(0,u).replace(/\S/g," "),I+=O.slice(u,U).replace(/./g,"~")}else R===p?I+=O.slice(0,h).replace(/./g,"~"):I+=O.replace(/./g,"~");I+=Sce}return I}function OJ(e,t,r,i=v1){const{line:o,character:s}=bs(e,t),l=r?rC(e.fileName,r.getCurrentDirectory(),p=>r.getCanonicalFileName(p)):e.fileName;let u="";return u+=i(l,"\x1B[96m"),u+=":",u+=i(`${o+1}`,"\x1B[93m"),u+=":",u+=i(`${s+1}`,"\x1B[93m"),u}function yce(e,t){let r="";for(const i of e){if(i.file){const{file:o,start:s}=i;r+=OJ(o,s,t),r+=" - "}if(r+=v1(mS(i),cRe(i.category)),r+=v1(` TS${i.code}: `,"\x1B[90m"),r+=z_(i.messageText,t.getNewLine()),i.file&&i.code!==f.File_appears_to_be_binary.code&&(r+=t.getNewLine(),r+=uRe(i.file,i.start,i.length,"",cRe(i.category),t)),i.relatedInformation){r+=t.getNewLine();for(const{file:o,start:s,length:l,messageText:u}of i.relatedInformation)o&&(r+=t.getNewLine(),r+=fRe+OJ(o,s,t),r+=uRe(o,s,l,Ace,"\x1B[96m",t)),r+=t.getNewLine(),r+=Ace+z_(u,t.getNewLine())}r+=t.getNewLine()}return r}function z_(e,t,r=0){if(Po(e))return e;if(e===void 0)return"";let i="";if(r){i+=t;for(let o=0;o<r;o++)i+=" "}if(i+=e.messageText,r++,e.next)for(const o of e.next)i+=z_(o,t,r);return i}function Hw(e,t){return(Po(e)?t:e.resolutionMode)||t}function bce(e,t,r){return zJ(e,Kw(e,t),r)}function WJ(e){var t;return Yl(e)?e.isTypeOnly:!!((t=e.importClause)!=null&&t.isTypeOnly)}function FJ(e,t,r){return zJ(e,t,r)}function zJ(e,t,r){var i;if((kc(t.parent)||Yl(t.parent))&&WJ(t.parent)){const l=hD(t.parent.attributes);if(l)return l}if(t.parent.parent&&ug(t.parent.parent)){const s=hD(t.parent.parent.attributes);if(s)return s}if(r&&wu(r)===200)return t.parent.parent&&tu(t.parent.parent)||Ad(t.parent,!1)?1:99;if(e.impliedNodeFormat===void 0)return;if(e.impliedNodeFormat!==99)return Bp(Bv(t.parent))?99:1;const o=(i=Bv(t.parent))==null?void 0:i.parent;return o&&tu(o)?1:99}function hD(e,t){if(!e)return;if(Me(e.elements)!==1){t==null||t(e,e.token===118?f.Type_import_attributes_should_have_exactly_one_key_resolution_mode_with_value_import_or_require:f.Type_import_assertions_should_have_exactly_one_key_resolution_mode_with_value_import_or_require);return}const r=e.elements[0];if(ls(r.name)){if(r.name.text!=="resolution-mode"){t==null||t(r.name,e.token===118?f.resolution_mode_is_the_only_valid_key_for_type_import_attributes:f.resolution_mode_is_the_only_valid_key_for_type_import_assertions);return}if(ls(r.value)){if(r.value.text!=="import"&&r.value.text!=="require"){t==null||t(r.value,f.resolution_mode_should_be_either_require_or_import);return}return r.value.text==="import"?99:1}}}function Ece(e){return e.text}function BJ(e,t,r,i,o){return{nameAndMode:R7,resolve:(s,l)=>uD(s,e,r,i,o,t,l)}}function GJ(e){return Po(e)?e:ch(e.fileName)}function E7(e,t,r,i,o){return{nameAndMode:mRe,resolve:(s,l)=>qse(s,e,r,i,t,o,l)}}function qw(e,t,r,i,o,s,l,u){if(e.length===0)return et;const p=[],h=new Map,m=u(t,r,i,s,l);for(const b of e){const A=m.nameAndMode.getName(b),I=m.nameAndMode.getMode(b,o,(r==null?void 0:r.commandLine.options)||i),R=WP(A,I);let M=h.get(R);M||h.set(R,M=m.resolve(A,I)),p.push(M)}return p}function VJ(e,t){return S7(void 0,e,(r,i)=>r&&t(r,i))}function S7(e,t,r,i){let o;return s(e,t,void 0);function s(l,u,p){if(i){const h=i(l,p);if(h)return h}return Ue(u,(h,m)=>{if(h&&(o!=null&&o.has(h.sourceFile.path)))return;const b=r(h,p,m);return b||!h?b:((o||(o=new Set)).add(h.sourceFile.path),s(h.commandLine.projectReferences,h.references,h))})}}function T7(e,t,r){const i=e.configFilePath?ai(e.configFilePath):t;return Qr(i,`__lib_node_modules_lookup_${r}__.ts`)}function jJ(e){const t=e.split(".");let r=t[1],i=2;for(;t[i]&&t[i]!=="d";)r+=(i===2?"/":"-")+t[i],i++;return"@typescript/lib-"+r}function dRe(e){const t=ch(e.fileName),r=DF.get(t);return{libName:t,libFileName:r}}function w0(e){switch(e==null?void 0:e.kind){case 3:case 4:case 5:case 7:return!0;default:return!1}}function gD(e){return e.pos!==void 0}function QP(e,t){var r,i,o,s;const l=N.checkDefined(e.getSourceFileByPath(t.file)),{kind:u,index:p}=t;let h,m,b,A;switch(u){case 3:const I=Kw(l,p);if(b=(i=(r=e.getResolvedModule(l,I.text,e.getModeForUsageLocation(l,I)))==null?void 0:r.resolvedModule)==null?void 0:i.packageId,I.pos===-1)return{file:l,packageId:b,text:I.text};h=ka(l.text,I.pos),m=I.end;break;case 4:({pos:h,end:m}=l.referencedFiles[p]);break;case 5:({pos:h,end:m,resolutionMode:A}=l.typeReferenceDirectives[p]),b=(s=(o=e.getResolvedTypeReferenceDirective(l,ch(l.typeReferenceDirectives[p].fileName),A||l.impliedNodeFormat))==null?void 0:o.resolvedTypeReferenceDirective)==null?void 0:s.packageId;break;case 7:({pos:h,end:m}=l.libReferenceDirectives[p]);break;default:return N.assertNever(u)}return{file:l,pos:h,end:m,packageId:b}}function UJ(e,t,r,i,o,s,l,u,p,h){if(!e||u!=null&&u()||!Km(e.getRootFileNames(),t))return!1;let m;if(!Km(e.getProjectReferences(),h,M)||e.getSourceFiles().some(I))return!1;const b=e.getMissingFilePaths();if(b&&Gc(b,o))return!1;const A=e.getCompilerOptions();if(!DU(A,r)||e.resolvedLibReferences&&Gc(e.resolvedLibReferences,(O,U)=>l(U)))return!1;if(A.configFile&&r.configFile)return A.configFile.text===r.configFile.text;return!0;function I(O){return!R(O)||s(O.path)}function R(O){return O.version===i(O.resolvedPath,O.fileName)}function M(O,U,K){return gj(O,U)&&C(e.getResolvedProjectReferences()[K],O)}function C(O,U){if(O){if(Nr(m,O))return!0;const Z=vD(U),V=p(Z);return!V||O.commandLine.options.configFile!==V.options.configFile||!Km(O.commandLine.fileNames,V.fileNames)?!1:((m||(m=[])).push(O),!Ue(O.references,(se,G)=>!C(se,O.commandLine.projectReferences[G])))}const K=vD(U);return!p(K)}}function rT(e){return e.options.configFile?[...e.options.configFile.parseDiagnostics,...e.errors]:e.errors}function Jw(e,t,r,i){const o=HJ(e,t,r,i);return typeof o=="object"?o.impliedNodeFormat:o}function HJ(e,t,r,i){switch(md(i)){case 3:case 99:return Tc(e,[".d.mts",".mts",".mjs"])?99:Tc(e,[".d.cts",".cts",".cjs"])?1:Tc(e,[".d.ts",".ts",".tsx",".js",".jsx"])?o():void 0;default:return}function o(){const s=Rw(t,r,i),l=[];s.failedLookupLocations=l,s.affectingLocations=l;const u=Dw(e,s);return{impliedNodeFormat:(u==null?void 0:u.contents.packageJsonContent.type)==="module"?99:1,packageJsonLocations:l,packageJsonScope:u}}}function CHe(e,t){return e?oR(e.getCompilerOptions(),t,CF):!1}function PHe(e,t,r,i,o,s){return{rootNames:e,options:t,host:r,oldProgram:i,configFileParsingDiagnostics:o,typeScriptVersion:s}}function A7(e,t,r,i,o){var s,l,u,p,h,m,b,A,I,R,M,C,O,U,K,Z;const V=To(e)?PHe(e,t,r,i,o):e,{rootNames:se,options:G,configFileParsingDiagnostics:ne,projectReferences:he,typeScriptVersion:ye}=V;let{oldProgram:$}=V;const Y=Td(()=>km("ignoreDeprecations",f.Invalid_value_for_ignoreDeprecations));let oe,fe,Ne,pe,ie,ve,Le;const He=new Map;let Ee=Zp();const De={},Pe={};let We=TI(),At,Se,je,at,Gt,vt,$e,It,tn,rn;const Pn=typeof G.maxNodeModuleJsDepth=="number"?G.maxNodeModuleJsDepth:0;let Xn=0;const hn=new Map,Qt=new Map;(s=sr)==null||s.push(sr.Phase.Program,"createProgram",{configFilePath:G.configFilePath,rootDir:G.rootDir},!0),il("beforeProgram");const $t=V.host||vce(G),_i=x7($t);let ao=G.noLib;const Oi=Td(()=>$t.getDefaultLibFileName(G)),No=$t.getDefaultLibLocation?$t.getDefaultLibLocation():ai(Oi()),Mn=RR(),Di=$t.getCurrentDirectory(),Ar=YC(G),sn=Ek(G,Ar),tt=new Map;let zt,Rn,li;const hi=$t.hasInvalidatedResolutions||Xm;$t.resolveModuleNameLiterals?(li=$t.resolveModuleNameLiterals.bind($t),Rn=(l=$t.getModuleResolutionCache)==null?void 0:l.call($t)):$t.resolveModuleNames?(li=(ze,Ze,Mt,Ht,yn,Yn)=>$t.resolveModuleNames(ze.map(Ece),Ze,Yn==null?void 0:Yn.map(Ece),Mt,Ht,yn).map(gn=>gn?gn.extension!==void 0?{resolvedModule:gn}:{resolvedModule:{...gn,extension:QC(gn.resolvedFileName)}}:Ice),Rn=(u=$t.getModuleResolutionCache)==null?void 0:u.call($t)):(Rn=cD(Di,te,G),li=(ze,Ze,Mt,Ht,yn)=>qw(ze,Ze,Mt,Ht,yn,$t,Rn,BJ));let Qi;if($t.resolveTypeReferenceDirectiveReferences)Qi=$t.resolveTypeReferenceDirectiveReferences.bind($t);else if($t.resolveTypeReferenceDirectives)Qi=(ze,Ze,Mt,Ht,yn)=>$t.resolveTypeReferenceDirectives(ze.map(GJ),Ze,Mt,Ht,yn==null?void 0:yn.impliedNodeFormat).map(Yn=>({resolvedTypeReferenceDirective:Yn}));else{const ze=zF(Di,te,void 0,Rn==null?void 0:Rn.getPackageJsonInfoCache(),Rn==null?void 0:Rn.optionsToRedirectsKey);Qi=(Ze,Mt,Ht,yn,Yn)=>qw(Ze,Mt,Ht,yn,Yn,$t,ze,E7)}const Io=$t.hasInvalidatedLibResolutions||Xm;let ma;if($t.resolveLibrary)ma=$t.resolveLibrary.bind($t);else{const ze=cD(Di,te,G,Rn==null?void 0:Rn.getPackageJsonInfoCache());ma=(Ze,Mt,Ht)=>BF(Ze,Mt,Ht,$t,ze)}const Wa=new Map;let Sn=new Map,kn=Zp(),qe=!1;const mt=new Map;let ft=new Map;const Ct=$t.useCaseSensitiveFileNames()?new Map:void 0;let le,Fe,pt,j;const ot=!!((p=$t.useSourceOfProjectReferenceRedirect)!=null&&p.call($t))&&!G.disableSourceOfProjectReferenceRedirect,{onProgramCreateComplete:Rt,fileExists:Ye,directoryExists:_t}=MHe({compilerHost:$t,getSymlinkCache:H_,useSourceOfProjectReferenceRedirect:ot,toPath:ir,getResolvedProjectReferences:Lo,getSourceOfProjectReferenceRedirect:Cd,forEachResolvedProjectReference:jd}),Vt=$t.readFile.bind($t);(h=sr)==null||h.push(sr.Phase.Program,"shouldProgramCreateNewSourceFiles",{hasOldProgram:!!$});const vn=CHe($,G);(m=sr)==null||m.pop();let fn;if((b=sr)==null||b.push(sr.Phase.Program,"tryReuseStructureFromOldProgram",{}),fn=xo(),(A=sr)==null||A.pop(),fn!==2){if(oe=[],fe=[],he&&(le||(le=he.map(jt)),se.length&&(le==null||le.forEach((ze,Ze)=>{if(!ze)return;const Mt=Ps(ze.commandLine.options);if(ot){if(Mt||wu(ze.commandLine.options)===0)for(const Ht of ze.commandLine.fileNames)Wt(Ht,{kind:1,index:Ze})}else if(Mt)Wt(S0(Mt,".d.ts"),{kind:2,index:Ze});else if(wu(ze.commandLine.options)===0){const Ht=Td(()=>_D(ze.commandLine,!$t.useCaseSensitiveFileNames()));for(const yn of ze.commandLine.fileNames)!Su(yn)&&!Il(yn,".json")&&Wt(YP(yn,ze.commandLine,!$t.useCaseSensitiveFileNames(),Ht),{kind:2,index:Ze})}}))),(I=sr)==null||I.push(sr.Phase.Program,"processRootFiles",{count:se.length}),Ue(se,(ze,Ze)=>Us(ze,!1,!1,{kind:0,index:Ze})),(R=sr)==null||R.pop(),Se??(Se=se.length?WF(G,$t):et),je=TI(),Se.length){(M=sr)==null||M.push(sr.Phase.Program,"processTypeReferences",{count:Se.length});const ze=G.configFilePath?ai(G.configFilePath):Di,Ze=Qr(ze,yD),Mt=Ii(Se,Ze);for(let Ht=0;Ht<Se.length;Ht++)je.set(Se[Ht],void 0,Mt[Ht]),Bu(Se[Ht],void 0,Mt[Ht],{kind:8,typeReference:Se[Ht],packageId:(O=(C=Mt[Ht])==null?void 0:C.resolvedTypeReferenceDirective)==null?void 0:O.packageId});(U=sr)==null||U.pop()}if(se.length&&!ao){const ze=Oi();!G.lib&&ze?Us(ze,!0,!1,{kind:6}):Ue(G.lib,(Ze,Mt)=>{Us(xp(Ze),!0,!1,{kind:6,index:Mt})})}Ne=Dv(oe,Ni).concat(fe),oe=void 0,fe=void 0}if($&&$t.onReleaseOldSourceFile){const ze=$.getSourceFiles();for(const Ze of ze){const Mt=_l(Ze.resolvedPath);(vn||!Mt||Mt.impliedNodeFormat!==Ze.impliedNodeFormat||Ze.resolvedPath===Ze.path&&Mt.resolvedPath!==Ze.path)&&$t.onReleaseOldSourceFile(Ze,$.getCompilerOptions(),!!_l(Ze.path))}$t.getParsedCommandLine||$.forEachResolvedProjectReference(Ze=>{U_(Ze.sourceFile.path)||$t.onReleaseOldSourceFile(Ze.sourceFile,$.getCompilerOptions(),!1)})}$&&$t.onReleaseParsedCommandLine&&S7($.getProjectReferences(),$.getResolvedProjectReferences(),(ze,Ze,Mt)=>{const Ht=(Ze==null?void 0:Ze.commandLine.projectReferences[Mt])||$.getProjectReferences()[Mt],yn=vD(Ht);Fe!=null&&Fe.has(ir(yn))||$t.onReleaseParsedCommandLine(yn,ze,$.getCompilerOptions())}),$=void 0,Gt=void 0,$e=void 0,tn=void 0;const _n={getRootFileNames:()=>se,getSourceFile:La,getSourceFileByPath:_l,getSourceFiles:()=>Ne,getMissingFilePaths:()=>ft,getModuleResolutionCache:()=>Rn,getFilesByNameMap:()=>mt,getCompilerOptions:()=>G,getSyntacticDiagnostics:lc,getOptionsDiagnostics:Lr,getGlobalDiagnostics:Tl,getSemanticDiagnostics:Nl,getCachedSemanticDiagnostics:ul,getSuggestionDiagnostics:we,getDeclarationDiagnostics:js,getBindAndCheckDiagnostics:ko,getProgramDiagnostics:nn,getTypeChecker:ho,getClassifiableNames:vo,getCommonSourceDirectory:jr,emit:pa,getCurrentDirectory:()=>Di,getNodeCount:()=>ho().getNodeCount(),getIdentifierCount:()=>ho().getIdentifierCount(),getSymbolCount:()=>ho().getSymbolCount(),getTypeCount:()=>ho().getTypeCount(),getInstantiationCount:()=>ho().getInstantiationCount(),getRelationCacheSizes:()=>ho().getRelationCacheSizes(),getFileProcessingDiagnostics:()=>At,getResolvedTypeReferenceDirectives:()=>We,getAutomaticTypeDirectiveNames:()=>Se,getAutomaticTypeDirectiveResolutions:()=>je,isSourceFileFromExternalLibrary:vl,isSourceFileDefaultLibrary:uu,getModeForUsageLocation:_f,getModeForResolutionAtIndex:ev,getSourceFileFromReference:cm,getLibFileFromReference:Wc,sourceFileToPackageName:Sn,redirectTargetsMap:kn,usesUriStyleNodeCoreModules:qe,resolvedModules:vt,resolvedTypeReferenceDirectiveNames:It,resolvedLibReferences:at,getResolvedModule:q,getResolvedModuleFromModuleSpecifier:Oe,getResolvedTypeReferenceDirective:Lt,forEachResolvedModule:L,forEachResolvedTypeReferenceDirective:_e,getCurrentPackagesMap:()=>rn,typesPackageExists:Ge,packageBundlesTypes:ke,isEmittedFile:R1,getConfigFileParsingDiagnostics:Hc,getProjectReferences:cs,getResolvedProjectReferences:Lo,getProjectReferenceRedirect:Vl,getResolvedProjectReferenceToRedirect:ff,getResolvedProjectReferenceByPath:U_,forEachResolvedProjectReference:jd,isSourceOfProjectReferenceRedirect:Of,emitBuildInfo:Ql,fileExists:Ye,readFile:Vt,directoryExists:_t,getSymlinkCache:H_,realpath:(K=$t.realpath)==null?void 0:K.bind($t),useCaseSensitiveFileNames:()=>$t.useCaseSensitiveFileNames(),getCanonicalFileName:te,getFileIncludeReasons:()=>Ee,structureIsReused:fn,writeFile:Fs};return Rt(),At==null||At.forEach(ze=>{switch(ze.kind){case 1:return Mn.add(oi(ze.file&&_l(ze.file),ze.fileProcessingReason,ze.diagnostic,ze.args||et));case 0:const{file:Ze,pos:Mt,end:Ht}=QP(_n,ze.reason);return Mn.add(Qc(Ze,N.checkDefined(Mt),N.checkDefined(Ht)-Mt,ze.diagnostic,...ze.args||et));case 2:return ze.diagnostics.forEach(yn=>Mn.add(yn));default:N.assertNever(ze)}}),F(),il("afterProgram"),ef("Program","beforeProgram","afterProgram"),(Z=sr)==null||Z.pop(),_n;function q(ze,Ze,Mt){var Ht;return(Ht=vt==null?void 0:vt.get(ze.path))==null?void 0:Ht.get(Ze,Mt)}function Oe(ze){const Ze=jn(ze);return N.assertIsDefined(Ze,"`moduleSpecifier` must have a `SourceFile` ancestor. Use `program.getResolvedModule` instead to provide the containing file and resolution mode."),q(Ze,ze.text,_f(Ze,ze))}function Lt(ze,Ze,Mt){var Ht;return(Ht=It==null?void 0:It.get(ze.path))==null?void 0:Ht.get(Ze,Mt)}function L(ze,Ze){J(vt,ze,Ze)}function _e(ze,Ze){J(It,ze,Ze)}function J(ze,Ze,Mt){var Ht;Mt?(Ht=ze==null?void 0:ze.get(Mt.path))==null||Ht.forEach((yn,Yn,gn)=>Ze(yn,Yn,gn,Mt.path)):ze==null||ze.forEach((yn,Yn)=>yn.forEach((gn,$n,fi)=>Ze(gn,$n,fi,Yn)))}function me(){return rn||(rn=new Map,L(({resolvedModule:ze})=>{ze!=null&&ze.packageId&&rn.set(ze.packageId.name,ze.extension===".d.ts"||!!rn.get(ze.packageId.name))}),rn)}function Ge(ze){return me().has(jF(ze))}function ke(ze){return!!me().get(ze)}function Tt(ze){var Ze;(Ze=ze.resolutionDiagnostics)!=null&&Ze.length&&(At??(At=[])).push({kind:2,diagnostics:ze.resolutionDiagnostics})}function kt(ze,Ze,Mt,Ht){if($t.resolveModuleNameLiterals||!$t.resolveModuleNames)return Tt(Mt);if(!Rn||Yc(Ze))return;const yn=go(ze.originalFileName,Di),Yn=ai(yn),gn=Bn(ze),$n=Rn.getFromNonRelativeNameCache(Ze,Ht,Yn,gn);$n&&Tt($n)}function en(ze,Ze,Mt){var Ht,yn;if(!ze.length)return et;const Yn=go(Ze.originalFileName,Di),gn=Bn(Ze);(Ht=sr)==null||Ht.push(sr.Phase.Program,"resolveModuleNamesWorker",{containingFileName:Yn}),il("beforeResolveModule");const $n=li(ze,Yn,gn,G,Ze,Mt);return il("afterResolveModule"),ef("ResolveModule","beforeResolveModule","afterResolveModule"),(yn=sr)==null||yn.pop(),$n}function bn(ze,Ze,Mt){var Ht,yn;if(!ze.length)return[];const Yn=Po(Ze)?void 0:Ze,gn=Po(Ze)?Ze:go(Ze.originalFileName,Di),$n=Yn&&Bn(Yn);(Ht=sr)==null||Ht.push(sr.Phase.Program,"resolveTypeReferenceDirectiveNamesWorker",{containingFileName:gn}),il("beforeResolveTypeReference");const fi=Qi(ze,gn,$n,G,Yn,Mt);return il("afterResolveTypeReference"),ef("ResolveTypeReference","beforeResolveTypeReference","afterResolveTypeReference"),(yn=sr)==null||yn.pop(),fi}function Bn(ze){const Ze=ff(ze.originalFileName);if(Ze||!Su(ze.originalFileName))return Ze;const Mt=Hn(ze.path);if(Mt)return Mt;if(!$t.realpath||!G.preserveSymlinks||!ze.originalFileName.includes(xh))return;const Ht=ir($t.realpath(ze.originalFileName));return Ht===ze.path?void 0:Hn(Ht)}function Hn(ze){const Ze=Cd(ze);if(Po(Ze))return ff(Ze);if(Ze)return jd(Mt=>{const Ht=Ps(Mt.commandLine.options);if(Ht)return ir(Ht)===ze?Mt:void 0})}function Ni(ze,Ze){return rl(Ai(ze),Ai(Ze))}function Ai(ze){if(bm(No,ze.fileName,!1)){const Ze=ic(ze.fileName);if(Ze==="lib.d.ts"||Ze==="lib.es6.d.ts")return 0;const Mt=Bx(QN(Ze,"lib."),".d.ts"),Ht=yw.indexOf(Mt);if(Ht!==-1)return Ht+1}return yw.length+2}function ir(ze){return ol(ze,Di,te)}function jr(){if(ie===void 0){const ze=nr(Ne,Ze=>MS(Ze,_n));ie=$P(G,()=>Hi(ze,Ze=>Ze.isDeclarationFile?void 0:Ze.fileName),Di,te,Ze=>Ft(ze,Ze))}return ie}function vo(){var ze;if(!Le){ho(),Le=new Set;for(const Ze of Ne)(ze=Ze.classifiableNames)==null||ze.forEach(Mt=>Le.add(Mt))}return Le}function Ci(ze,Ze){if(fn===0&&!Ze.ambientModuleNames.length)return en(ze,Ze,void 0);let Mt,Ht,yn;const Yn=Ice,gn=$&&$.getSourceFile(Ze.fileName);for(let ri=0;ri<ze.length;ri++){const fr=ze[ri];if(Ze===gn&&!hi(Ze.path)){const Ka=$==null?void 0:$.getResolvedModule(Ze,fr.text,_f(Ze,fr));if(Ka!=null&&Ka.resolvedModule){Jg(G,$t)&&bo($t,Ka.resolvedModule.packageId?f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2,fr.text,go(Ze.originalFileName,Di),Ka.resolvedModule.resolvedFileName,Ka.resolvedModule.packageId&&By(Ka.resolvedModule.packageId)),(Ht??(Ht=new Array(ze.length)))[ri]=Ka,(yn??(yn=[])).push(fr);continue}}let Zo=!1;Nr(Ze.ambientModuleNames,fr.text)?(Zo=!0,Jg(G,$t)&&bo($t,f.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1,fr.text,go(Ze.originalFileName,Di))):Zo=cr(fr),Zo?(Ht||(Ht=new Array(ze.length)))[ri]=Yn:(Mt??(Mt=[])).push(fr)}const $n=Mt&&Mt.length?en(Mt,Ze,yn):et;if(!Ht)return N.assert($n.length===ze.length),$n;let fi=0;for(let ri=0;ri<Ht.length;ri++)Ht[ri]||(Ht[ri]=$n[fi],fi++);return N.assert(fi===$n.length),Ht;function cr(ri){var fr;const Zo=(fr=$==null?void 0:$.getResolvedModule(Ze,ri.text,_f(Ze,ri)))==null?void 0:fr.resolvedModule,Ka=Zo&&$.getSourceFile(Zo.resolvedFileName);if(Zo&&Ka)return!1;const Zu=He.get(ri.text);return Zu?(Jg(G,$t)&&bo($t,f.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,ri.text,Zu),!0):!1}}function Ii(ze,Ze){var Mt;if(fn===0)return bn(ze,Ze,void 0);let Ht,yn,Yn;const gn=Po(Ze)?void 0:Ze,$n=Po(Ze)?void 0:$&&$.getSourceFile(Ze.fileName),fi=Po(Ze)?!hi(ir(Ze)):Ze===$n&&!hi(Ze.path);for(let fr=0;fr<ze.length;fr++){const Zo=ze[fr];if(fi){const Ka=GJ(Zo),Zu=Hw(Zo,gn==null?void 0:gn.impliedNodeFormat),mu=Po(Ze)?(Mt=$==null?void 0:$.getAutomaticTypeDirectiveResolutions())==null?void 0:Mt.get(Ka,Zu):$==null?void 0:$.getResolvedTypeReferenceDirective(Ze,Ka,Zu);if(mu!=null&&mu.resolvedTypeReferenceDirective){Jg(G,$t)&&bo($t,mu.resolvedTypeReferenceDirective.packageId?f.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:f.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2,Ka,Po(Ze)?Ze:go(Ze.originalFileName,Di),mu.resolvedTypeReferenceDirective.resolvedFileName,mu.resolvedTypeReferenceDirective.packageId&&By(mu.resolvedTypeReferenceDirective.packageId)),(yn??(yn=new Array(ze.length)))[fr]=mu,(Yn??(Yn=[])).push(Zo);continue}}(Ht??(Ht=[])).push(Zo)}if(!Ht)return yn||et;const cr=bn(Ht,Ze,Yn);if(!yn)return N.assert(cr.length===ze.length),cr;let ri=0;for(let fr=0;fr<yn.length;fr++)yn[fr]||(yn[fr]=cr[ri],ri++);return N.assert(ri===cr.length),yn}function Kr(){return!S7($.getProjectReferences(),$.getResolvedProjectReferences(),(ze,Ze,Mt)=>{const Ht=(Ze?Ze.commandLine.projectReferences:he)[Mt],yn=jt(Ht);return ze?!yn||yn.sourceFile!==ze.sourceFile||!Km(ze.commandLine.fileNames,yn.commandLine.fileNames):yn!==void 0},(ze,Ze)=>{const Mt=Ze?U_(Ze.sourceFile.path).commandLine.projectReferences:he;return!Km(ze,Mt,gj)})}function xo(){var ze;if(!$)return 0;const Ze=$.getCompilerOptions();if(W4(Ze,G))return 0;const Mt=$.getRootFileNames();if(!Km(Mt,se)||!Kr())return 0;he&&(le=he.map(jt));const Ht=[],yn=[];if(fn=2,Gc($.getMissingFilePaths(),cr=>$t.fileExists(cr)))return 0;const Yn=$.getSourceFiles();let gn;(cr=>{cr[cr.Exists=0]="Exists",cr[cr.Modified=1]="Modified"})(gn||(gn={}));const $n=new Map;for(const cr of Yn){const ri=na(cr.fileName,Rn,$t,G);let fr=$t.getSourceFileByPath?$t.getSourceFileByPath(cr.fileName,cr.resolvedPath,ri,void 0,vn):$t.getSourceFile(cr.fileName,ri,void 0,vn);if(!fr)return 0;fr.packageJsonLocations=(ze=ri.packageJsonLocations)!=null&&ze.length?ri.packageJsonLocations:void 0,fr.packageJsonScope=ri.packageJsonScope,N.assert(!fr.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");let Zo;if(cr.redirectInfo){if(fr!==cr.redirectInfo.unredirected)return 0;Zo=!1,fr=cr}else if($.redirectTargetsMap.has(cr.path)){if(fr!==cr)return 0;Zo=!1}else Zo=fr!==cr;fr.path=cr.path,fr.originalFileName=cr.originalFileName,fr.resolvedPath=cr.resolvedPath,fr.fileName=cr.fileName;const Ka=$.sourceFileToPackageName.get(cr.path);if(Ka!==void 0){const Zu=$n.get(Ka),mu=Zo?1:0;if(Zu!==void 0&&mu===1||Zu===1)return 0;$n.set(Ka,mu)}if(Zo)cr.impliedNodeFormat!==fr.impliedNodeFormat?fn=1:Km(cr.libReferenceDirectives,fr.libReferenceDirectives,vc)?cr.hasNoDefaultLib!==fr.hasNoDefaultLib?fn=1:Km(cr.referencedFiles,fr.referencedFiles,vc)?(op(fr),Km(cr.imports,fr.imports,Ss)&&Km(cr.moduleAugmentations,fr.moduleAugmentations,Ss)?(cr.flags&12582912)!==(fr.flags&12582912)?fn=1:Km(cr.typeReferenceDirectives,fr.typeReferenceDirectives,vc)||(fn=1):fn=1):fn=1:fn=1,yn.push(fr);else if(hi(cr.path))fn=1,yn.push(fr);else for(const Zu of cr.ambientModuleNames)He.set(Zu,cr.fileName);Ht.push(fr)}if(fn!==2)return fn;for(const cr of yn){const ri=pRe(cr),fr=Ci(ri,cr);($e??($e=new Map)).set(cr.path,fr),vj(ri,fr,tv=>$.getResolvedModule(cr,tv.text,_f(cr,tv)),lie)&&(fn=1);const Ka=cr.typeReferenceDirectives,Zu=Ii(Ka,cr);(tn??(tn=new Map)).set(cr.path,Zu),vj(Ka,Zu,tv=>$.getResolvedTypeReferenceDirective(cr,GJ(tv),Hw(tv,cr.impliedNodeFormat)),cie)&&(fn=1)}if(fn!==2)return fn;if(aie(Ze,G)||$.resolvedLibReferences&&Gc($.resolvedLibReferences,(cr,ri)=>_g(ri).actual!==cr.actual))return 1;if($t.hasChangedAutomaticTypeDirectiveNames){if($t.hasChangedAutomaticTypeDirectiveNames())return 1}else if(Se=WF(G,$t),!Km($.getAutomaticTypeDirectiveNames(),Se))return 1;ft=$.getMissingFilePaths(),N.assert(Ht.length===$.getSourceFiles().length);for(const cr of Ht)mt.set(cr.path,cr);return $.getFilesByNameMap().forEach((cr,ri)=>{if(!cr){mt.set(ri,cr);return}if(cr.path===ri){$.isSourceFileFromExternalLibrary(cr)&&Qt.set(cr.path,!0);return}mt.set(ri,mt.get(cr.path))}),Ne=Ht,Ee=$.getFileIncludeReasons(),At=$.getFileProcessingDiagnostics(),We=$.getResolvedTypeReferenceDirectives(),Se=$.getAutomaticTypeDirectiveNames(),je=$.getAutomaticTypeDirectiveResolutions(),Sn=$.sourceFileToPackageName,kn=$.redirectTargetsMap,qe=$.usesUriStyleNodeCoreModules,vt=$.resolvedModules,It=$.resolvedTypeReferenceDirectiveNames,at=$.resolvedLibReferences,rn=$.getCurrentPackagesMap(),2}function Dn(ze){return{getPrependNodes:Vs,getCanonicalFileName:te,getCommonSourceDirectory:_n.getCommonSourceDirectory,getCompilerOptions:_n.getCompilerOptions,getCurrentDirectory:()=>Di,getSourceFile:_n.getSourceFile,getSourceFileByPath:_n.getSourceFileByPath,getSourceFiles:_n.getSourceFiles,getLibFileFromReference:_n.getLibFileFromReference,isSourceFileFromExternalLibrary:vl,getResolvedProjectReferenceToRedirect:ff,getProjectReferenceRedirect:Vl,isSourceOfProjectReferenceRedirect:Of,getSymlinkCache:H_,writeFile:ze||Fs,isEmitBlocked:du,readFile:Ze=>$t.readFile(Ze),fileExists:Ze=>{const Mt=ir(Ze);return _l(Mt)?!0:ft.has(Mt)?!1:$t.fileExists(Ze)},useCaseSensitiveFileNames:()=>$t.useCaseSensitiveFileNames(),getBuildInfo:Ze=>{var Mt;return(Mt=_n.getBuildInfo)==null?void 0:Mt.call(_n,Ze)},getSourceFileFromReference:(Ze,Mt)=>_n.getSourceFileFromReference(Ze,Mt),redirectTargetsMap:kn,getFileIncludeReasons:_n.getFileIncludeReasons,createHash:oa($t,$t.createHash)}}function Fs(ze,Ze,Mt,Ht,yn,Yn){$t.writeFile(ze,Ze,Mt,Ht,yn,Yn)}function Ql(ze){var Ze,Mt;N.assert(!Ps(G)),(Ze=sr)==null||Ze.push(sr.Phase.Emit,"emitBuildInfo",{},!0),il("beforeEmit");const Ht=m7(h7,Dn(ze),void 0,bJ,!1,!0);return il("afterEmit"),ef("Emit","beforeEmit","afterEmit"),(Mt=sr)==null||Mt.pop(),Ht}function Lo(){return le}function cs(){return he}function Vs(){return JJ(he,(ze,Ze)=>{var Mt;return(Mt=le[Ze])==null?void 0:Mt.commandLine},ze=>{const Ze=ir(ze),Mt=_l(Ze);return Mt?Mt.text:mt.has(Ze)?void 0:$t.readFile(Ze)},$t)}function vl(ze){return!!Qt.get(ze.path)}function uu(ze){if(!ze.isDeclarationFile)return!1;if(ze.hasNoDefaultLib)return!0;if(!G.noLib)return!1;const Ze=$t.useCaseSensitiveFileNames()?dS:i0;return G.lib?bt(G.lib,Mt=>Ze(ze.fileName,at.get(Mt).actual)):Ze(ze.fileName,Oi())}function ho(){return ve||(ve=hle(_n))}function pa(ze,Ze,Mt,Ht,yn,Yn){var gn,$n;(gn=sr)==null||gn.push(sr.Phase.Emit,"emit",{path:ze==null?void 0:ze.path},!0);const fi=pu(()=>As(_n,ze,Ze,Mt,Ht,yn,Yn));return($n=sr)==null||$n.pop(),fi}function du(ze){return tt.has(ir(ze))}function As(ze,Ze,Mt,Ht,yn,Yn,gn){if(!gn){const cr=qJ(ze,Ze,Mt,Ht);if(cr)return cr}const $n=ho().getEmitResolver(Ps(G)?void 0:Ze,Ht);il("beforeEmit");const fi=m7($n,Dn(Mt),Ze,yJ(G,Yn,yn),yn,!1,gn);return il("afterEmit"),ef("Emit","beforeEmit","afterEmit"),fi}function La(ze){return _l(ir(ze))}function _l(ze){return mt.get(ze)||void 0}function wf(ze,Ze,Mt){return Yx(ze?Ze(ze,Mt):Pi(_n.getSourceFiles(),Ht=>(Mt&&Mt.throwIfCancellationRequested(),Ze(Ht,Mt))))}function lc(ze,Ze){return wf(ze,nu,Ze)}function Nl(ze,Ze){return wf(ze,Ip,Ze)}function ul(ze){var Ze;return ze?(Ze=De.perFile)==null?void 0:Ze.get(ze.path):De.allDiagnostics}function ko(ze,Ze){return Ms(ze,Ze)}function nn(ze){var Ze;if(ZC(ze,G,_n))return et;const Mt=Mn.getDiagnostics(ze.fileName);return(Ze=ze.commentDirectives)!=null&&Ze.length?ee(ze,ze.commentDirectives,Mt).diagnostics:Mt}function js(ze,Ze){const Mt=_n.getCompilerOptions();return!ze||Ps(Mt)?Er(ze,Ze):wf(ze,xi,Ze)}function nu(ze){return dd(ze)?(ze.additionalSyntacticDiagnostics||(ze.additionalSyntacticDiagnostics=un(ze)),So(ze.additionalSyntacticDiagnostics,ze.parseDiagnostics)):ze.parseDiagnostics}function pu(ze){try{return ze()}catch(Ze){throw Ze instanceof Hx&&(ve=void 0),Ze}}function Ip(ze,Ze){return So(I7(Ms(ze,Ze),G),nn(ze))}function Ms(ze,Ze){return Ur(ze,Ze,De,Rc)}function Rc(ze,Ze){return pu(()=>{if(ZC(ze,G,_n))return et;const Mt=ho();N.assert(!!ze.bindDiagnostics);const yn=(ze.scriptKind===1||ze.scriptKind===2)&&Ak(ze,G),Yn=RL(ze,G.checkJs),$n=!(!!ze.checkJsDirective&&ze.checkJsDirective.enabled===!1)&&(ze.scriptKind===3||ze.scriptKind===4||ze.scriptKind===5||Yn||yn||ze.scriptKind===7);let fi=$n?ze.bindDiagnostics:et,cr=$n?Mt.getDiagnostics(ze,Ze):et;return Yn&&(fi=nr(fi,ri=>D7.has(ri.code)),cr=nr(cr,ri=>D7.has(ri.code))),de(ze,$n&&!Yn,fi,cr,yn?ze.jsDocDiagnostics:void 0)})}function de(ze,Ze,...Mt){var Ht;const yn=ia(Mt);if(!Ze||!((Ht=ze.commentDirectives)!=null&&Ht.length))return yn;const{diagnostics:Yn,directives:gn}=ee(ze,ze.commentDirectives,yn);for(const $n of gn.getUnusedExpectations())Yn.push(Aie(ze,$n.range,f.Unused_ts_expect_error_directive));return Yn}function ee(ze,Ze,Mt){const Ht=pie(ze,Ze);return{diagnostics:Mt.filter(Yn=>Et(Yn,Ht)===-1),directives:Ht}}function we(ze,Ze){return pu(()=>ho().getSuggestionDiagnostics(ze,Ze))}function Et(ze,Ze){const{file:Mt,start:Ht}=ze;if(!Mt)return-1;const yn=kg(Mt);let Yn=Kx(yn,Ht).line-1;for(;Yn>=0;){if(Ze.markUsed(Yn))return Yn;const gn=Mt.text.slice(yn[Yn],yn[Yn+1]).trim();if(gn!==""&&!/^(\s*)\/\/(.*)$/.test(gn))return-1;Yn--}return-1}function un(ze){return pu(()=>{const Ze=[];return Mt(ze,ze),CP(ze,Mt,Ht),Ze;function Mt($n,fi){switch(fi.kind){case 169:case 172:case 174:if(fi.questionToken===$n)return Ze.push(gn($n,f.The_0_modifier_can_only_be_used_in_TypeScript_files,"?")),"skip";case 173:case 176:case 177:case 178:case 218:case 262:case 219:case 260:if(fi.type===$n)return Ze.push(gn($n,f.Type_annotations_can_only_be_used_in_TypeScript_files)),"skip"}switch($n.kind){case 273:if($n.isTypeOnly)return Ze.push(gn(fi,f._0_declarations_can_only_be_used_in_TypeScript_files,"import type")),"skip";break;case 278:if($n.isTypeOnly)return Ze.push(gn($n,f._0_declarations_can_only_be_used_in_TypeScript_files,"export type")),"skip";break;case 276:case 281:if($n.isTypeOnly)return Ze.push(gn($n,f._0_declarations_can_only_be_used_in_TypeScript_files,np($n)?"import...type":"export...type")),"skip";break;case 271:return Ze.push(gn($n,f.import_can_only_be_used_in_TypeScript_files)),"skip";case 277:if($n.isExportEquals)return Ze.push(gn($n,f.export_can_only_be_used_in_TypeScript_files)),"skip";break;case 298:if($n.token===119)return Ze.push(gn($n,f.implements_clauses_can_only_be_used_in_TypeScript_files)),"skip";break;case 264:const ri=fa(120);return N.assertIsDefined(ri),Ze.push(gn($n,f._0_declarations_can_only_be_used_in_TypeScript_files,ri)),"skip";case 267:const fr=$n.flags&32?fa(145):fa(144);return N.assertIsDefined(fr),Ze.push(gn($n,f._0_declarations_can_only_be_used_in_TypeScript_files,fr)),"skip";case 265:return Ze.push(gn($n,f.Type_aliases_can_only_be_used_in_TypeScript_files)),"skip";case 176:case 174:case 262:return $n.body?void 0:(Ze.push(gn($n,f.Signature_declarations_can_only_be_used_in_TypeScript_files)),"skip");case 266:const Zo=N.checkDefined(fa(94));return Ze.push(gn($n,f._0_declarations_can_only_be_used_in_TypeScript_files,Zo)),"skip";case 235:return Ze.push(gn($n,f.Non_null_assertions_can_only_be_used_in_TypeScript_files)),"skip";case 234:return Ze.push(gn($n.type,f.Type_assertion_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 238:return Ze.push(gn($n.type,f.Type_satisfaction_expressions_can_only_be_used_in_TypeScript_files)),"skip";case 216:N.fail()}}function Ht($n,fi){if(ZH(fi)){const cr=An(fi.modifiers,Eu);cr&&Ze.push(gn(cr,f.Decorators_are_not_valid_here))}else if(QS(fi)&&fi.modifiers){const cr=Gr(fi.modifiers,Eu);if(cr>=0){if(Ao(fi)&&!G.experimentalDecorators)Ze.push(gn(fi.modifiers[cr],f.Decorators_are_not_valid_here));else if(Ic(fi)){const ri=Gr(fi.modifiers,oI);if(ri>=0){const fr=Gr(fi.modifiers,eF);if(cr>ri&&fr>=0&&cr<fr)Ze.push(gn(fi.modifiers[cr],f.Decorators_are_not_valid_here));else if(ri>=0&&cr<ri){const Zo=Gr(fi.modifiers,Eu,ri);Zo>=0&&Ze.push(wa(gn(fi.modifiers[Zo],f.Decorators_may_not_appear_after_export_or_export_default_if_they_also_appear_before_export),gn(fi.modifiers[cr],f.Decorator_used_before_export_here)))}}}}}switch(fi.kind){case 263:case 231:case 174:case 176:case 177:case 178:case 218:case 262:case 219:if($n===fi.typeParameters)return Ze.push(Yn($n,f.Type_parameter_declarations_can_only_be_used_in_TypeScript_files)),"skip";case 243:if($n===fi.modifiers)return yn(fi.modifiers,fi.kind===243),"skip";break;case 172:if($n===fi.modifiers){for(const cr of $n)xa(cr)&&cr.kind!==126&&cr.kind!==129&&Ze.push(gn(cr,f.The_0_modifier_can_only_be_used_in_TypeScript_files,fa(cr.kind)));return"skip"}break;case 169:if($n===fi.modifiers&&bt($n,xa))return Ze.push(Yn($n,f.Parameter_modifiers_can_only_be_used_in_TypeScript_files)),"skip";break;case 213:case 214:case 233:case 285:case 286:case 215:if($n===fi.typeArguments)return Ze.push(Yn($n,f.Type_arguments_can_only_be_used_in_TypeScript_files)),"skip";break}}function yn($n,fi){for(const cr of $n)switch(cr.kind){case 87:if(fi)continue;case 125:case 123:case 124:case 148:case 138:case 128:case 164:case 103:case 147:Ze.push(gn(cr,f.The_0_modifier_can_only_be_used_in_TypeScript_files,fa(cr.kind)));break;case 126:case 95:case 90:case 129:}}function Yn($n,fi,...cr){const ri=$n.pos;return Qc(ze,ri,$n.end-ri,fi,...cr)}function gn($n,fi,...cr){return $f(ze,$n,fi,...cr)}})}function Er(ze,Ze){return Ur(ze,Ze,Pe,vr)}function vr(ze,Ze){return pu(()=>{const Mt=ho().getEmitResolver(ze,Ze);return cce(Dn($a),Mt,ze)||et})}function Ur(ze,Ze,Mt,Ht){var yn;const Yn=ze?(yn=Mt.perFile)==null?void 0:yn.get(ze.path):Mt.allDiagnostics;if(Yn)return Yn;const gn=Ht(ze,Ze);return ze?(Mt.perFile||(Mt.perFile=new Map)).set(ze.path,gn):Mt.allDiagnostics=gn,gn}function xi(ze,Ze){return ze.isDeclarationFile?[]:Er(ze,Ze)}function Lr(){return Yx(So(Mn.getGlobalDiagnostics(),$o()))}function $o(){if(!G.configFile)return et;let ze=Mn.getDiagnostics(G.configFile.fileName);return jd(Ze=>{ze=So(ze,Mn.getDiagnostics(Ze.sourceFile.fileName))}),ze}function Tl(){return se.length?Yx(ho().getGlobalDiagnostics().slice()):et}function Hc(){return ne||et}function Us(ze,Ze,Mt,Ht){Ce(ga(ze),Ze,Mt,void 0,Ht)}function vc(ze,Ze){return ze.fileName===Ze.fileName}function Ss(ze,Ze){return ze.kind===80?Ze.kind===80&&ze.escapedText===Ze.escapedText:Ze.kind===11&&ze.text===Ze.text}function qc(ze,Ze){const Mt=w.createStringLiteral(ze),Ht=w.createImportDeclaration(void 0,void 0,Mt,void 0);return QA(Ht,2),qa(Mt,Ht),qa(Ht,Ze),Mt.flags&=-17,Ht.flags&=-17,Mt}function op(ze){if(ze.imports)return;const Ze=dd(ze),Mt=sc(ze);let Ht,yn,Yn;if((om(G)||Mt)&&!ze.isDeclarationFile){G.importHelpers&&(Ht=[qc(Ky,ze)]);const cr=K3(J3(G,ze),G);cr&&(Ht||(Ht=[])).push(qc(cr,ze))}for(const cr of ze.statements)gn(cr,!1);(ze.flags&4194304||Ze)&&$n(ze),ze.imports=Ht||et,ze.moduleAugmentations=yn||et,ze.ambientModuleNames=Yn||et;return;function gn(cr,ri){if(CL(cr)){const fr=yR(cr);fr&&Ma(fr)&&fr.text&&(!ri||!Yc(fr.text))&&(Jy(cr,!1),Ht=xn(Ht,fr),!qe&&Xn===0&&!ze.isDeclarationFile&&(qe=uo(fr.text,"node:")))}else if(Xl(cr)&&ku(cr)&&(ri||Zr(cr,128)||ze.isDeclarationFile)){cr.name.parent=cr;const fr=em(cr.name);if(Mt||ri&&!Yc(fr))(yn||(yn=[])).push(cr.name);else if(!ri){ze.isDeclarationFile&&(Yn||(Yn=[])).push(fr);const Zo=cr.body;if(Zo)for(const Ka of Zo.statements)gn(Ka,!0)}}}function $n(cr){const ri=/import|require/g;for(;ri.exec(cr.text)!==null;){const fr=fi(cr,ri.lastIndex);Ze&&Ad(fr,!0)||Bp(fr)&&fr.arguments.length>=1&&ls(fr.arguments[0])?(Jy(fr,!1),Ht=xn(Ht,fr.arguments[0])):Vy(fr)&&(Jy(fr,!1),Ht=xn(Ht,fr.argument.literal))}}function fi(cr,ri){let fr=cr;const Zo=Ka=>{if(Ka.pos<=ri&&(ri<Ka.end||ri===Ka.end&&Ka.kind===1))return Ka};for(;;){const Ka=Ze&&Fp(fr)&&Ue(fr.jsDoc,Zo)||Ho(fr,Zo);if(!Ka)return fr;fr=Ka}}}function Wc(ze){var Ze;const{libFileName:Mt}=dRe(ze),Ht=Mt&&((Ze=at==null?void 0:at.get(Mt))==null?void 0:Ze.actual);return Ht!==void 0?La(Ht):void 0}function cm(ze,Ze){return gd(b7(Ze.fileName,ze.fileName),La)}function gd(ze,Ze,Mt,Ht){if(xA(ze)){const yn=$t.getCanonicalFileName(ze);if(!G.allowNonTsExtensions&&!Ue(ia(sn),gn=>Il(yn,gn))){Mt&&(YE(yn)?Mt(f.File_0_is_a_JavaScript_file_Did_you_mean_to_enable_the_allowJs_option,ze):Mt(f.File_0_has_an_unsupported_extension_The_only_supported_extensions_are_1,ze,"'"+ia(Ar).join("', '")+"'"));return}const Yn=Ze(ze);if(Mt)if(Yn)w0(Ht)&&yn===$t.getCanonicalFileName(_l(Ht.file).fileName)&&Mt(f.A_file_cannot_have_a_reference_to_itself);else{const gn=Vl(ze);gn?Mt(f.Output_file_0_has_not_been_built_from_source_file_1,gn,ze):Mt(f.File_0_not_found,ze)}return Yn}else{const yn=G.allowNonTsExtensions&&Ze(ze);if(yn)return yn;if(Mt&&G.allowNonTsExtensions){Mt(f.File_0_not_found,ze);return}const Yn=Ue(Ar[0],gn=>Ze(ze+gn));return Mt&&!Yn&&Mt(f.Could_not_resolve_the_path_0_with_the_extensions_Colon_1,ze,"'"+ia(Ar).join("', '")+"'"),Yn}}function Ce(ze,Ze,Mt,Ht,yn){gd(ze,Yn=>Qo(Yn,Ze,Mt,yn,Ht),(Yn,...gn)=>$r(void 0,yn,Yn,gn),yn)}function Wt(ze,Ze){return Ce(ze,!1,!1,void 0,Ze)}function Jn(ze,Ze,Mt){!w0(Mt)&&bt(Ee.get(Ze.path),w0)?$r(Ze,Mt,f.Already_included_file_name_0_differs_from_file_name_1_only_in_casing,[Ze.fileName,ze]):$r(Ze,Mt,f.File_name_0_differs_from_already_included_file_name_1_only_in_casing,[ze,Ze.fileName])}function yo(ze,Ze,Mt,Ht,yn,Yn,gn){var $n;const fi=Ih.createRedirectedSourceFile({redirectTarget:ze,unredirected:Ze});return fi.fileName=Mt,fi.path=Ht,fi.resolvedPath=yn,fi.originalFileName=Yn,fi.packageJsonLocations=($n=gn.packageJsonLocations)!=null&&$n.length?gn.packageJsonLocations:void 0,fi.packageJsonScope=gn.packageJsonScope,Qt.set(Ht,Xn>0),fi}function Qo(ze,Ze,Mt,Ht,yn){var Yn,gn;(Yn=sr)==null||Yn.push(sr.Phase.Program,"findSourceFile",{fileName:ze,isDefaultLib:Ze||void 0,fileIncludeKind:$6[Ht.kind]});const $n=Zl(ze,Ze,Mt,Ht,yn);return(gn=sr)==null||gn.pop(),$n}function na(ze,Ze,Mt,Ht){const yn=HJ(go(ze,Di),Ze==null?void 0:Ze.getPackageJsonInfoCache(),Mt,Ht),Yn=os(Ht),gn=bk(Ht);return typeof yn=="object"?{...yn,languageVersion:Yn,setExternalModuleIndicator:gn,jsDocParsingMode:Mt.jsDocParsingMode}:{languageVersion:Yn,impliedNodeFormat:yn,setExternalModuleIndicator:gn,jsDocParsingMode:Mt.jsDocParsingMode}}function Zl(ze,Ze,Mt,Ht,yn){var Yn;const gn=ir(ze);if(ot){let fr=Cd(gn);if(!fr&&$t.realpath&&G.preserveSymlinks&&Su(ze)&&ze.includes(xh)){const Zo=ir($t.realpath(ze));Zo!==gn&&(fr=Cd(Zo))}if(fr){const Zo=Po(fr)?Qo(fr,Ze,Mt,Ht,yn):void 0;return Zo&&dl(Zo,gn,ze,void 0),Zo}}const $n=ze;if(mt.has(gn)){const fr=mt.get(gn);if(yc(fr||void 0,Ht),fr&&G.forceConsistentCasingInFileNames!==!1){const Zo=fr.fileName;ir(Zo)!==ir(ze)&&(ze=Vl(ze)||ze);const Zu=FV(Zo,Di),mu=FV(ze,Di);Zu!==mu&&Jn(ze,fr,Ht)}return fr&&Qt.get(fr.path)&&Xn===0?(Qt.set(fr.path,!1),G.noResolve||(Ch(fr,Ze),$g(fr)),G.noLib||Ud(fr),hn.set(fr.path,!1),ct(fr)):fr&&hn.get(fr.path)&&Xn<Pn&&(hn.set(fr.path,!1),ct(fr)),fr||void 0}let fi;if(w0(Ht)&&!ot){const fr=ec(ze);if(fr){if(Ps(fr.commandLine.options))return;const Zo=Jc(fr,ze);ze=Zo,fi=ir(Zo)}}const cr=na(ze,Rn,$t,G),ri=$t.getSourceFile(ze,cr,fr=>$r(void 0,Ht,f.Cannot_read_file_0_Colon_1,[ze,fr]),vn);if(yn){const fr=By(yn),Zo=Wa.get(fr);if(Zo){const Ka=yo(Zo,ri,ze,gn,ir(ze),$n,cr);return kn.add(Zo.path,ze),dl(Ka,gn,ze,fi),yc(Ka,Ht),Sn.set(gn,B4(yn)),fe.push(Ka),Ka}else ri&&(Wa.set(fr,ri),Sn.set(gn,B4(yn)))}if(dl(ri,gn,ze,fi),ri){if(Qt.set(gn,Xn>0),ri.fileName=ze,ri.path=gn,ri.resolvedPath=ir(ze),ri.originalFileName=$n,ri.packageJsonLocations=(Yn=cr.packageJsonLocations)!=null&&Yn.length?cr.packageJsonLocations:void 0,ri.packageJsonScope=cr.packageJsonScope,yc(ri,Ht),$t.useCaseSensitiveFileNames()){const fr=ch(gn),Zo=Ct.get(fr);Zo?Jn(ze,Zo,Ht):Ct.set(fr,ri)}ao=ao||ri.hasNoDefaultLib&&!Mt,G.noResolve||(Ch(ri,Ze),$g(ri)),G.noLib||Ud(ri),ct(ri),Ze?oe.push(ri):fe.push(ri)}return ri}function yc(ze,Ze){ze&&Ee.add(ze.path,Ze)}function dl(ze,Ze,Mt,Ht){Ht?(yl(Mt,Ht,ze),yl(Mt,Ze,ze||!1)):yl(Mt,Ze,ze)}function yl(ze,Ze,Mt){mt.set(Ze,Mt),Mt!==void 0?ft.delete(Ze):ft.set(Ze,ze)}function Vl(ze){const Ze=ec(ze);return Ze&&Jc(Ze,ze)}function ec(ze){if(!(!le||!le.length||Su(ze)||Il(ze,".json")))return ff(ze)}function Jc(ze,Ze){const Mt=Ps(ze.commandLine.options);return Mt?S0(Mt,".d.ts"):YP(Ze,ze.commandLine,!$t.useCaseSensitiveFileNames())}function ff(ze){pt===void 0&&(pt=new Map,jd(Mt=>{ir(G.configFilePath)!==Mt.sourceFile.path&&Mt.commandLine.fileNames.forEach(Ht=>pt.set(ir(Ht),Mt.sourceFile.path))}));const Ze=pt.get(ir(ze));return Ze&&U_(Ze)}function jd(ze){return VJ(le,ze)}function Cd(ze){if(Su(ze))return j===void 0&&(j=new Map,jd(Ze=>{const Mt=Ps(Ze.commandLine.options);if(Mt){const Ht=S0(Mt,".d.ts");j.set(ir(Ht),!0)}else{const Ht=Td(()=>_D(Ze.commandLine,!$t.useCaseSensitiveFileNames()));Ue(Ze.commandLine.fileNames,yn=>{if(!Su(yn)&&!Il(yn,".json")){const Yn=YP(yn,Ze.commandLine,!$t.useCaseSensitiveFileNames(),Ht);j.set(ir(Yn),yn)}})}})),j.get(ze)}function Of(ze){return ot&&!!ff(ze)}function U_(ze){if(Fe)return Fe.get(ze)||void 0}function Ch(ze,Ze){Ue(ze.referencedFiles,(Mt,Ht)=>{Ce(b7(Mt.fileName,ze.fileName),Ze,!1,void 0,{kind:4,file:ze.path,index:Ht})})}function $g(ze){const Ze=ze.typeReferenceDirectives;if(!Ze.length)return;const Mt=(tn==null?void 0:tn.get(ze.path))||Ii(Ze,ze),Ht=TI();(It??(It=new Map)).set(ze.path,Ht);for(let yn=0;yn<Ze.length;yn++){const Yn=ze.typeReferenceDirectives[yn],gn=Mt[yn],$n=ch(Yn.fileName);Ht.set($n,Hw(Yn,ze.impliedNodeFormat),gn);const fi=Yn.resolutionMode||ze.impliedNodeFormat;Bu($n,fi,gn,{kind:5,file:ze.path,index:yn})}}function Bu(ze,Ze,Mt,Ht){var yn,Yn;(yn=sr)==null||yn.push(sr.Phase.Program,"processTypeReferenceDirective",{directive:ze,hasResolved:!!Mt.resolvedTypeReferenceDirective,refKind:Ht.kind,refPath:w0(Ht)?Ht.file:void 0}),Qg(ze,Ze,Mt,Ht),(Yn=sr)==null||Yn.pop()}function Qg(ze,Ze,Mt,Ht){var yn;Tt(Mt);const Yn=(yn=We.get(ze,Ze))==null?void 0:yn.resolvedTypeReferenceDirective;if(Yn&&Yn.primary)return;let gn=!0;const{resolvedTypeReferenceDirective:$n}=Mt;if($n){if($n.isExternalLibraryImport&&Xn++,$n.primary)Ce($n.resolvedFileName,!1,!1,$n.packageId,Ht);else if(Yn){if($n.resolvedFileName!==Yn.resolvedFileName){const fi=$t.readFile($n.resolvedFileName),cr=La(Yn.resolvedFileName);fi!==cr.text&&$r(cr,Ht,f.Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict,[ze,$n.resolvedFileName,Yn.resolvedFileName])}gn=!1}else Ce($n.resolvedFileName,!1,!1,$n.packageId,Ht);$n.isExternalLibraryImport&&Xn--}else $r(void 0,Ht,f.Cannot_find_type_definition_file_for_0,[ze]);gn&&We.set(ze,Ze,Mt)}function xp(ze){const Ze=at==null?void 0:at.get(ze);if(Ze)return Ze.actual;const Mt=_g(ze);return(at??(at=new Map)).set(ze,Mt),Mt.actual}function _g(ze){var Ze,Mt,Ht,yn,Yn;const gn=Gt==null?void 0:Gt.get(ze);if(gn)return gn;if(fn!==0&&$&&!Io(ze)){const fr=(Ze=$.resolvedLibReferences)==null?void 0:Ze.get(ze);if(fr){if(fr.resolution&&Jg(G,$t)){const Zo=jJ(ze),Ka=T7(G,Di,ze);bo($t,fr.resolution.resolvedModule?fr.resolution.resolvedModule.packageId?f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,Zo,go(Ka,Di),(Mt=fr.resolution.resolvedModule)==null?void 0:Mt.resolvedFileName,((Ht=fr.resolution.resolvedModule)==null?void 0:Ht.packageId)&&By(fr.resolution.resolvedModule.packageId))}return(Gt??(Gt=new Map)).set(ze,fr),fr}}const $n=jJ(ze),fi=T7(G,Di,ze);(yn=sr)==null||yn.push(sr.Phase.Program,"resolveLibrary",{resolveFrom:fi}),il("beforeResolveLibrary");const cr=ma($n,fi,G,ze);il("afterResolveLibrary"),ef("ResolveLibrary","beforeResolveLibrary","afterResolveLibrary"),(Yn=sr)==null||Yn.pop();const ri={resolution:cr,actual:cr.resolvedModule?cr.resolvedModule.resolvedFileName:Qr(No,ze)};return(Gt??(Gt=new Map)).set(ze,ri),ri}function Ud(ze){Ue(ze.libReferenceDirectives,(Ze,Mt)=>{const{libName:Ht,libFileName:yn}=dRe(Ze);if(yn)Us(xp(yn),!0,!0,{kind:7,file:ze.path,index:Mt});else{const Yn=Bx(QN(Ht,"lib."),".d.ts"),gn=$N(Yn,yw,nl),$n=gn?f.Cannot_find_lib_definition_for_0_Did_you_mean_1:f.Cannot_find_lib_definition_for_0,fi=gn?[Ht,gn]:[Ht];(At||(At=[])).push({kind:0,reason:{kind:7,file:ze.path,index:Mt},diagnostic:$n,args:fi})}})}function te(ze){return $t.getCanonicalFileName(ze)}function ct(ze){var Ze;if(op(ze),ze.imports.length||ze.moduleAugmentations.length){const Mt=pRe(ze),Ht=($e==null?void 0:$e.get(ze.path))||Ci(Mt,ze);N.assert(Ht.length===Mt.length);const yn=((Ze=Bn(ze))==null?void 0:Ze.commandLine.options)||G,Yn=TI();(vt??(vt=new Map)).set(ze.path,Yn);for(let gn=0;gn<Mt.length;gn++){const $n=Ht[gn].resolvedModule,fi=Mt[gn].text,cr=zJ(ze,Mt[gn],yn);if(Yn.set(fi,cr,Ht[gn]),kt(ze,fi,Ht[gn],cr),!$n)continue;const ri=$n.isExternalLibraryImport,fr=!$C($n.extension),Zo=ri&&fr&&(!$n.originalPath||L0($n.resolvedFileName)),Ka=$n.resolvedFileName;ri&&Xn++;const Zu=Zo&&Xn>Pn,mu=Ka&&!KJ(yn,$n,ze)&&!yn.noResolve&&gn<ze.imports.length&&!Zu&&!(fr&&!Xy(yn))&&(lr(ze.imports[gn])||!(ze.imports[gn].flags&16777216));Zu?hn.set(ze.path,!0):mu&&Qo(Ka,!1,!1,{kind:3,file:ze.path,index:gn},$n.packageId),ri&&Xn--}}}function Ft(ze,Ze){let Mt=!0;const Ht=$t.getCanonicalFileName(go(Ze,Di));for(const yn of ze)yn.isDeclarationFile||$t.getCanonicalFileName(go(yn.fileName,Di)).indexOf(Ht)!==0&&(io(yn,f.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files,[yn.fileName,Ze]),Mt=!1);return Mt}function jt(ze){Fe||(Fe=new Map);const Ze=vD(ze),Mt=ir(Ze),Ht=Fe.get(Mt);if(Ht!==void 0)return Ht||void 0;let yn,Yn;if($t.getParsedCommandLine){if(yn=$t.getParsedCommandLine(Ze),!yn){dl(void 0,Mt,Ze,void 0),Fe.set(Mt,!1);return}Yn=N.checkDefined(yn.options.configFile),N.assert(!Yn.path||Yn.path===Mt),dl(Yn,Mt,Ze,void 0)}else{const $n=go(ai(Ze),Di);if(Yn=$t.getSourceFile(Ze,100),dl(Yn,Mt,Ze,void 0),Yn===void 0){Fe.set(Mt,!1);return}yn=hw(Yn,_i,$n,void 0,Ze)}Yn.fileName=Ze,Yn.path=Mt,Yn.resolvedPath=Mt,Yn.originalFileName=Ze;const gn={commandLine:yn,sourceFile:Yn};return Fe.set(Mt,gn),yn.projectReferences&&(gn.references=yn.projectReferences.map(jt)),gn}function F(){G.strictPropertyInitialization&&!fd(G,"strictNullChecks")&&us(f.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks"),G.exactOptionalPropertyTypes&&!fd(G,"strictNullChecks")&&us(f.Option_0_cannot_be_specified_without_specifying_option_1,"exactOptionalPropertyTypes","strictNullChecks"),(G.isolatedModules||G.verbatimModuleSyntax)&&(G.out&&us(f.Option_0_cannot_be_specified_with_option_1,"out",G.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules"),G.outFile&&us(f.Option_0_cannot_be_specified_with_option_1,"outFile",G.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules")),G.inlineSourceMap&&(G.sourceMap&&us(f.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap"),G.mapRoot&&us(f.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap")),G.composite&&(G.declaration===!1&&us(f.Composite_projects_may_not_disable_declaration_emit,"declaration"),G.incremental===!1&&us(f.Composite_projects_may_not_disable_incremental_compilation,"declaration"));const ze=Ps(G);if(G.tsBuildInfoFile?uP(G)||us(f.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"tsBuildInfoFile","incremental","composite"):G.incremental&&!ze&&!G.configFilePath&&Mn.add(Hl(f.Option_incremental_can_only_be_specified_using_tsconfig_emitting_to_single_file_or_when_option_tsBuildInfoFile_is_specified)),Jt(),za(),G.composite){const gn=new Set(se.map(ir));for(const $n of Ne)MS($n,_n)&&!gn.has($n.path)&&io($n,f.File_0_is_not_listed_within_the_file_list_of_project_1_Projects_must_list_all_files_or_use_an_include_pattern,[$n.fileName,G.configFilePath||""])}if(G.paths){for(const gn in G.paths)if(xs(G.paths,gn))if(kU(gn)||fu(!0,gn,f.Pattern_0_can_have_at_most_one_Asterisk_character,gn),To(G.paths[gn])){const $n=G.paths[gn].length;$n===0&&fu(!1,gn,f.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,gn);for(let fi=0;fi<$n;fi++){const cr=G.paths[gn][fi],ri=typeof cr;ri==="string"?(kU(cr)||Ol(gn,fi,f.Substitution_0_in_pattern_1_can_have_at_most_one_Asterisk_character,cr,gn),!G.baseUrl&&!Wp(cr)&&!nC(cr)&&Ol(gn,fi,f.Non_relative_paths_are_not_allowed_when_baseUrl_is_not_set_Did_you_forget_a_leading_Slash)):Ol(gn,fi,f.Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2,cr,gn,ri)}}else fu(!1,gn,f.Substitutions_for_pattern_0_should_be_an_array,gn)}!G.sourceMap&&!G.inlineSourceMap&&(G.inlineSources&&us(f.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"inlineSources"),G.sourceRoot&&us(f.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"sourceRoot")),G.out&&G.outFile&&us(f.Option_0_cannot_be_specified_with_option_1,"out","outFile"),G.mapRoot&&!(G.sourceMap||G.declarationMap)&&us(f.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"mapRoot","sourceMap","declarationMap"),G.declarationDir&&(Nf(G)||us(f.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationDir","declaration","composite"),ze&&us(f.Option_0_cannot_be_specified_with_option_1,"declarationDir",G.out?"out":"outFile")),G.declarationMap&&!Nf(G)&&us(f.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationMap","declaration","composite"),G.lib&&G.noLib&&us(f.Option_0_cannot_be_specified_with_option_1,"lib","noLib"),G.noImplicitUseStrict&&fd(G,"alwaysStrict")&&us(f.Option_0_cannot_be_specified_with_option_1,"noImplicitUseStrict","alwaysStrict");const Ze=os(G),Mt=An(Ne,gn=>sc(gn)&&!gn.isDeclarationFile);if(G.isolatedModules||G.verbatimModuleSyntax)G.module===0&&Ze<2&&G.isolatedModules&&us(f.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target"),G.preserveConstEnums===!1&&us(f.Option_preserveConstEnums_cannot_be_disabled_when_0_is_enabled,G.verbatimModuleSyntax?"verbatimModuleSyntax":"isolatedModules","preserveConstEnums");else if(Mt&&Ze<2&&G.module===0){const gn=AS(Mt,typeof Mt.externalModuleIndicator=="boolean"?Mt:Mt.externalModuleIndicator);Mn.add(Qc(Mt,gn.start,gn.length,f.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(ze&&!G.emitDeclarationOnly){if(G.module&&!(G.module===2||G.module===4))us(f.Only_amd_and_system_modules_are_supported_alongside_0,G.out?"out":"outFile","module");else if(G.module===void 0&&Mt){const gn=AS(Mt,typeof Mt.externalModuleIndicator=="boolean"?Mt:Mt.externalModuleIndicator);Mn.add(Qc(Mt,gn.start,gn.length,f.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,G.out?"out":"outFile"))}}if(A0(G)&&(md(G)===1?us(f.Option_resolveJsonModule_cannot_be_specified_when_moduleResolution_is_set_to_classic,"resolveJsonModule"):U3(G)||us(f.Option_resolveJsonModule_cannot_be_specified_when_module_is_set_to_none_system_or_umd,"resolveJsonModule","module")),G.outDir||G.rootDir||G.sourceRoot||G.mapRoot){const gn=jr();G.outDir&&gn===""&&Ne.some($n=>ph($n.fileName)>1)&&us(f.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}G.useDefineForClassFields&&Ze===0&&us(f.Option_0_cannot_be_specified_when_option_target_is_ES3,"useDefineForClassFields"),G.checkJs&&!Xy(G)&&Mn.add(Hl(f.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs")),G.emitDeclarationOnly&&(Nf(G)||us(f.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite"),G.noEmit&&us(f.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit")),G.emitDecoratorMetadata&&!G.experimentalDecorators&&us(f.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators"),G.jsxFactory?(G.reactNamespace&&us(f.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory"),(G.jsx===4||G.jsx===5)&&us(f.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFactory",kP.get(""+G.jsx)),bI(G.jsxFactory,Ze)||km("jsxFactory",f.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,G.jsxFactory)):G.reactNamespace&&!tf(G.reactNamespace,Ze)&&km("reactNamespace",f.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,G.reactNamespace),G.jsxFragmentFactory&&(G.jsxFactory||us(f.Option_0_cannot_be_specified_without_specifying_option_1,"jsxFragmentFactory","jsxFactory"),(G.jsx===4||G.jsx===5)&&us(f.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxFragmentFactory",kP.get(""+G.jsx)),bI(G.jsxFragmentFactory,Ze)||km("jsxFragmentFactory",f.Invalid_value_for_jsxFragmentFactory_0_is_not_a_valid_identifier_or_qualified_name,G.jsxFragmentFactory)),G.reactNamespace&&(G.jsx===4||G.jsx===5)&&us(f.Option_0_cannot_be_specified_when_option_jsx_is_1,"reactNamespace",kP.get(""+G.jsx)),G.jsxImportSource&&G.jsx===2&&us(f.Option_0_cannot_be_specified_when_option_jsx_is_1,"jsxImportSource",kP.get(""+G.jsx)),G.preserveValueImports&&wu(G)<5&&us(f.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"preserveValueImports");const Ht=wu(G);G.verbatimModuleSyntax&&((Ht===2||Ht===3||Ht===4)&&us(f.Option_verbatimModuleSyntax_cannot_be_used_when_module_is_set_to_UMD_AMD_or_System,"verbatimModuleSyntax"),G.preserveValueImports&&Om("preserveValueImports","verbatimModuleSyntax"),G.importsNotUsedAsValues&&Om("importsNotUsedAsValues","verbatimModuleSyntax")),G.allowImportingTsExtensions&&!(G.noEmit||G.emitDeclarationOnly)&&km("allowImportingTsExtensions",f.Option_allowImportingTsExtensions_can_only_be_used_when_either_noEmit_or_emitDeclarationOnly_is_set);const yn=md(G);if(G.resolvePackageJsonExports&&!KA(yn)&&us(f.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonExports"),G.resolvePackageJsonImports&&!KA(yn)&&us(f.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"resolvePackageJsonImports"),G.customConditions&&!KA(yn)&&us(f.Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler,"customConditions"),yn===100&&!j3(Ht)&&Ht!==200&&km("moduleResolution",f.Option_0_can_only_be_used_when_module_is_set_to_preserve_or_to_es2015_or_later,"bundler"),eC[Ht]&&100<=Ht&&Ht<=199&&!(3<=yn&&yn<=99)){const gn=eC[Ht];km("moduleResolution",f.Option_moduleResolution_must_be_set_to_0_or_left_unspecified_when_option_module_is_set_to_1,gn,gn)}else if(qx[yn]&&3<=yn&&yn<=99&&!(100<=Ht&&Ht<=199)){const gn=qx[yn];km("module",f.Option_module_must_be_set_to_0_when_option_moduleResolution_is_set_to_1,gn,gn)}if(!G.noEmit&&!G.suppressOutputPathCheck){const gn=Dn(),$n=new Set;EJ(gn,fi=>{G.emitDeclarationOnly||Yn(fi.jsFilePath,$n),Yn(fi.declarationFilePath,$n)})}function Yn(gn,$n){if(gn){const fi=ir(gn);if(mt.has(fi)){let ri;G.configFilePath||(ri=jo(void 0,f.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)),ri=jo(ri,f.Cannot_write_file_0_because_it_would_overwrite_input_file,gn),x1(gn,G3(ri))}const cr=$t.useCaseSensitiveFileNames()?fi:ch(fi);$n.has(cr)?x1(gn,Hl(f.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,gn)):$n.add(cr)}}}function Te(){const ze=G.ignoreDeprecations;if(ze){if(ze==="5.0")return new ym(ze);Y()}return ym.zero}function st(ze,Ze,Mt,Ht){const yn=new ym(ze),Yn=new ym(Ze),gn=new ym(ye||ue),$n=Te(),fi=Yn.compareTo(gn)!==1,cr=!fi&&$n.compareTo(yn)===-1;(fi||cr)&&Ht((ri,fr,Zo)=>{fi?fr===void 0?Mt(ri,fr,Zo,f.Option_0_has_been_removed_Please_remove_it_from_your_configuration,ri):Mt(ri,fr,Zo,f.Option_0_1_has_been_removed_Please_remove_it_from_your_configuration,ri,fr):fr===void 0?Mt(ri,fr,Zo,f.Option_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error,ri,Ze,ze):Mt(ri,fr,Zo,f.Option_0_1_is_deprecated_and_will_stop_functioning_in_TypeScript_2_Specify_compilerOption_ignoreDeprecations_Colon_3_to_silence_this_error,ri,fr,Ze,ze)})}function Jt(){function ze(Ze,Mt,Ht,yn,...Yn){if(Ht){const gn=jo(void 0,f.Use_0_instead,Ht),$n=jo(gn,yn,...Yn);Ui(!Mt,Ze,void 0,$n)}else Ui(!Mt,Ze,void 0,yn,...Yn)}st("5.0","5.5",ze,Ze=>{G.target===0&&Ze("target","ES3"),G.noImplicitUseStrict&&Ze("noImplicitUseStrict"),G.keyofStringsOnly&&Ze("keyofStringsOnly"),G.suppressExcessPropertyErrors&&Ze("suppressExcessPropertyErrors"),G.suppressImplicitAnyIndexErrors&&Ze("suppressImplicitAnyIndexErrors"),G.noStrictGenericChecks&&Ze("noStrictGenericChecks"),G.charset&&Ze("charset"),G.out&&Ze("out",void 0,"outFile"),G.importsNotUsedAsValues&&Ze("importsNotUsedAsValues",void 0,"verbatimModuleSyntax"),G.preserveValueImports&&Ze("preserveValueImports",void 0,"verbatimModuleSyntax")})}function rr(ze,Ze,Mt){function Ht(yn,Yn,gn,$n,...fi){wm(Ze,Mt,$n,...fi)}st("5.0","5.5",Ht,yn=>{ze.prepend&&yn("prepend")})}function oi(ze,Ze,Mt,Ht){var yn;let Yn,gn,$n=w0(Ze)?Ze:void 0;ze&&((yn=Ee.get(ze.path))==null||yn.forEach(Zo)),Ze&&Zo(Ze),$n&&(Yn==null?void 0:Yn.length)===1&&(Yn=void 0);const fi=$n&&QP(_n,$n),cr=Yn&&jo(Yn,f.The_file_is_in_the_program_because_Colon),ri=ze&&dK(ze),fr=jo(ri?cr?[cr,...ri]:ri:cr,Mt,...Ht||et);return fi&&gD(fi)?J4(fi.file,fi.pos,fi.end-fi.pos,fr,gn):G3(fr,gn);function Zo(Ka){(Yn||(Yn=[])).push(mK(_n,Ka)),!$n&&w0(Ka)?$n=Ka:$n!==Ka&&(gn=xn(gn,Fa(Ka))),Ka===Ze&&(Ze=void 0)}}function $r(ze,Ze,Mt,Ht){(At||(At=[])).push({kind:1,file:ze&&ze.path,fileProcessingReason:Ze,diagnostic:Mt,args:Ht})}function io(ze,Ze,Mt){Mn.add(oi(ze,void 0,Ze,Mt))}function Fa(ze){if(w0(ze)){const Ht=QP(_n,ze);let yn;switch(ze.kind){case 3:yn=f.File_is_included_via_import_here;break;case 4:yn=f.File_is_included_via_reference_here;break;case 5:yn=f.File_is_included_via_type_library_reference_here;break;case 7:yn=f.File_is_included_via_library_reference_here;break;default:N.assertNever(ze)}return gD(Ht)?Qc(Ht.file,Ht.pos,Ht.end-Ht.pos,yn):void 0}if(!G.configFile)return;let Ze,Mt;switch(ze.kind){case 0:if(!G.configFile.configFileSpecs)return;const Ht=go(se[ze.index],Di),yn=pK(_n,Ht);if(yn){Ze=e3(G.configFile,"files",yn),Mt=f.File_is_matched_by_files_list_specified_here;break}const Yn=fK(_n,Ht);if(!Yn||!Po(Yn))return;Ze=e3(G.configFile,"include",Yn),Mt=f.File_is_matched_by_include_pattern_specified_here;break;case 1:case 2:const gn=N.checkDefined(le==null?void 0:le[ze.index]),$n=S7(he,le,(Zo,Ka,Zu)=>Zo===gn?{sourceFile:(Ka==null?void 0:Ka.sourceFile)||G.configFile,index:Zu}:void 0);if(!$n)return;const{sourceFile:fi,index:cr}=$n,ri=OL(fi,"references",Zo=>_d(Zo.initializer)?Zo.initializer:void 0);return ri&&ri.elements.length>cr?$f(fi,ri.elements[cr],ze.kind===2?f.File_is_output_from_referenced_project_specified_here:f.File_is_source_from_referenced_project_specified_here):void 0;case 8:if(!G.types)return;Ze=pb("types",ze.typeReference),Mt=f.File_is_entry_point_of_type_library_specified_here;break;case 6:if(ze.index!==void 0){Ze=pb("lib",G.lib[ze.index]),Mt=f.File_is_library_specified_here;break}const fr=Gc(Ew.type,(Zo,Ka)=>Zo===os(G)?Ka:void 0);Ze=fr?Hd("target",fr):void 0,Mt=f.File_is_default_library_for_target_specified_here;break;default:N.assertNever(ze)}return Ze&&$f(G.configFile,Ze,Mt)}function za(){const ze=G.suppressOutputPathCheck?void 0:$v(G);S7(he,le,(Ze,Mt,Ht)=>{const yn=(Mt?Mt.commandLine.projectReferences:he)[Ht],Yn=Mt&&Mt.sourceFile;if(rr(yn,Yn,Ht),!Ze){wm(Yn,Ht,f.File_0_not_found,yn.path);return}const gn=Ze.commandLine.options;if((!gn.composite||gn.noEmit)&&(Mt?Mt.commandLine.fileNames:se).length&&(gn.composite||wm(Yn,Ht,f.Referenced_project_0_must_have_setting_composite_Colon_true,yn.path),gn.noEmit&&wm(Yn,Ht,f.Referenced_project_0_may_not_disable_emit,yn.path)),yn.prepend){const $n=Ps(gn);$n?$t.fileExists($n)||wm(Yn,Ht,f.Output_file_0_from_project_1_does_not_exist,$n,yn.path):wm(Yn,Ht,f.Cannot_prepend_project_0_because_it_does_not_have_outFile_set,yn.path)}!Mt&&ze&&ze===$v(gn)&&(wm(Yn,Ht,f.Cannot_write_file_0_because_it_will_overwrite_tsbuildinfo_file_generated_by_referenced_project_1,ze,yn.path),tt.set(ir(ze),!0))})}function Ol(ze,Ze,Mt,...Ht){let yn=!0;Rp(Yn=>{Oa(Yn.initializer)&&fR(Yn.initializer,ze,gn=>{const $n=gn.initializer;_d($n)&&$n.elements.length>Ze&&(Mn.add($f(G.configFile,$n.elements[Ze],Mt,...Ht)),yn=!1)})}),yn&&Mn.add(Hl(Mt,...Ht))}function fu(ze,Ze,Mt,...Ht){let yn=!0;Rp(Yn=>{Oa(Yn.initializer)&&ay(Yn.initializer,ze,Ze,void 0,Mt,...Ht)&&(yn=!1)}),yn&&Mn.add(Hl(Mt,...Ht))}function Dc(ze,Ze){return fR(Zg(),ze,Ze)}function Rp(ze){return Dc("paths",ze)}function Hd(ze,Ze){return Dc(ze,Mt=>Ma(Mt.initializer)&&Mt.initializer.text===Ze?Mt.initializer:void 0)}function pb(ze,Ze){const Mt=Zg();return Mt&&Lie(Mt,ze,Ze)}function us(ze,Ze,Mt,Ht){Ui(!0,Ze,Mt,ze,Ze,Mt,Ht)}function km(ze,Ze,...Mt){Ui(!1,ze,void 0,Ze,...Mt)}function wm(ze,Ze,Mt,...Ht){const yn=OL(ze||G.configFile,"references",Yn=>_d(Yn.initializer)?Yn.initializer:void 0);yn&&yn.elements.length>Ze?Mn.add($f(ze||G.configFile,yn.elements[Ze],Mt,...Ht)):Mn.add(Hl(Mt,...Ht))}function Ui(ze,Ze,Mt,Ht,...yn){const Yn=Zg();(!Yn||!ay(Yn,ze,Ze,Mt,Ht,...yn))&&("messageText"in Ht?Mn.add(G3(Ht)):Mn.add(Hl(Ht,...yn)))}function Zg(){return zt===void 0&&(zt=fR(AC(G.configFile),"compilerOptions",ze=>Oa(ze.initializer)?ze.initializer:void 0)||!1),zt||void 0}function ay(ze,Ze,Mt,Ht,yn,...Yn){let gn=!1;return fR(ze,Mt,$n=>{"messageText"in yn?Mn.add(Fg(G.configFile,Ze?$n.name:$n.initializer,yn)):Mn.add($f(G.configFile,Ze?$n.name:$n.initializer,yn,...Yn)),gn=!0},Ht),gn}function Om(ze,Ze){const Mt=Zg();Mt?ay(Mt,!0,ze,void 0,f.Option_0_is_redundant_and_cannot_be_specified_with_option_1,ze,Ze):us(f.Option_0_is_redundant_and_cannot_be_specified_with_option_1,ze,Ze)}function x1(ze,Ze){tt.set(ir(ze),!0),Mn.add(Ze)}function R1(ze){if(G.noEmit)return!1;const Ze=ir(ze);if(_l(Ze))return!1;const Mt=Ps(G);if(Mt)return mf(Ze,Mt)||mf(Ze,Id(Mt)+".d.ts");if(G.declarationDir&&bm(G.declarationDir,Ze,Di,!$t.useCaseSensitiveFileNames()))return!0;if(G.outDir)return bm(G.outDir,Ze,Di,!$t.useCaseSensitiveFileNames());if(Tc(Ze,VR)||Su(Ze)){const Ht=Id(Ze);return!!_l(Ht+".ts")||!!_l(Ht+".tsx")}return!1}function mf(ze,Ze){return Lg(ze,Ze,Di,!$t.useCaseSensitiveFileNames())===0}function H_(){return $t.getSymlinkCache?$t.getSymlinkCache():(pe||(pe=wU(Di,te)),Ne&&!pe.hasProcessedResolutions()&&pe.setSymlinksFromResolutions(L,_e,je),pe)}function _f(ze,Ze){var Mt;const Ht=((Mt=Bn(ze))==null?void 0:Mt.commandLine.options)||G;return zJ(ze,Ze,Ht)}function ev(ze,Ze){return _f(ze,Kw(ze,Ze))}}function MHe(e){let t;const r=e.compilerHost.fileExists,i=e.compilerHost.directoryExists,o=e.compilerHost.getDirectories,s=e.compilerHost.realpath;if(!e.useSourceOfProjectReferenceRedirect)return{onProgramCreateComplete:$a,fileExists:p};e.compilerHost.fileExists=p;let l;return i&&(l=e.compilerHost.directoryExists=I=>i.call(e.compilerHost,I)?(b(I),!0):e.getResolvedProjectReferences()?(t||(t=new Set,e.forEachResolvedProjectReference(R=>{const M=Ps(R.commandLine.options);if(M)t.add(ai(e.toPath(M)));else{const C=R.commandLine.options.declarationDir||R.commandLine.options.outDir;C&&t.add(e.toPath(C))}})),A(I,!1)):!1),o&&(e.compilerHost.getDirectories=I=>!e.getResolvedProjectReferences()||i&&i.call(e.compilerHost,I)?o.call(e.compilerHost,I):[]),s&&(e.compilerHost.realpath=I=>{var R;return((R=e.getSymlinkCache().getSymlinkedFiles())==null?void 0:R.get(e.toPath(I)))||s.call(e.compilerHost,I)}),{onProgramCreateComplete:u,fileExists:p,directoryExists:l};function u(){e.compilerHost.fileExists=r,e.compilerHost.directoryExists=i,e.compilerHost.getDirectories=o}function p(I){return r.call(e.compilerHost,I)?!0:!e.getResolvedProjectReferences()||!Su(I)?!1:A(I,!0)}function h(I){const R=e.getSourceOfProjectReferenceRedirect(e.toPath(I));return R!==void 0?Po(R)?r.call(e.compilerHost,R):!0:void 0}function m(I){const R=e.toPath(I),M=`${R}${al}`;return _h(t,C=>R===C||uo(C,M)||uo(R,`${C}/`))}function b(I){var R;if(!e.getResolvedProjectReferences()||rP(I)||!s||!I.includes(xh))return;const M=e.getSymlinkCache(),C=Bc(e.toPath(I));if((R=M.getSymlinkedDirectories())!=null&&R.has(C))return;const O=ga(s.call(e.compilerHost,I));let U;if(O===I||(U=Bc(e.toPath(O)))===C){M.setSymlinkedDirectory(C,!1);return}M.setSymlinkedDirectory(I,{real:Bc(O),realPath:U})}function A(I,R){var M;const C=R?V=>h(V):V=>m(V),O=C(I);if(O!==void 0)return O;const U=e.getSymlinkCache(),K=U.getSymlinkedDirectories();if(!K)return!1;const Z=e.toPath(I);return Z.includes(xh)?R&&((M=U.getSymlinkedFiles())!=null&&M.has(Z))?!0:dn(K.entries(),([V,se])=>{if(!se||!uo(Z,V))return;const G=C(Z.replace(V,se.realPath));if(R&&G){const ne=go(I,e.compilerHost.getCurrentDirectory());U.setSymlinkedFile(Z,`${se.real}${ne.replace(new RegExp(V,"i"),"")}`)}return G})||!1:!1}}function qJ(e,t,r,i){const o=e.getCompilerOptions();if(o.noEmit)return e.getSemanticDiagnostics(t,i),t||Ps(o)?N7:e.emitBuildInfo(r,i);if(!o.noEmitOnError)return;let s=[...e.getOptionsDiagnostics(i),...e.getSyntacticDiagnostics(t,i),...e.getGlobalDiagnostics(i),...e.getSemanticDiagnostics(t,i)];if(s.length===0&&Nf(e.getCompilerOptions())&&(s=e.getDeclarationDiagnostics(void 0,i)),!s.length)return;let l;if(!t&&!Ps(o)){const u=e.emitBuildInfo(r,i);u.diagnostics&&(s=[...s,...u.diagnostics]),l=u.emittedFiles}return{diagnostics:s,sourceMaps:void 0,emittedFiles:l,emitSkipped:!0}}function I7(e,t){return nr(e,r=>!r.skippedOn||!t[r.skippedOn])}function x7(e,t=e){return{fileExists:r=>t.fileExists(r),readDirectory(r,i,o,s,l){return N.assertIsDefined(t.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'"),t.readDirectory(r,i,o,s,l)},readFile:r=>t.readFile(r),directoryExists:oa(t,t.directoryExists),getDirectories:oa(t,t.getDirectories),realpath:oa(t,t.realpath),useCaseSensitiveFileNames:e.useCaseSensitiveFileNames(),getCurrentDirectory:()=>e.getCurrentDirectory(),onUnRecoverableConfigFileDiagnostic:e.onUnRecoverableConfigFileDiagnostic||r0,trace:e.trace?r=>e.trace(r):void 0}}function JJ(e,t,r,i){if(!e)return et;let o;for(let s=0;s<e.length;s++){const l=e[s],u=t(l,s);if(l.prepend&&u&&u.options){if(!Ps(u.options))continue;const{jsFilePath:h,sourceMapFilePath:m,declarationFilePath:b,declarationMapPath:A,buildInfoPath:I}=KP(u.options,!0),R=_H(r,h,m,b,A,I,i,u.options);(o||(o=[])).push(R)}}return o||et}function vD(e){return bK(e.path)}function KJ(e,{extension:t},{isDeclarationFile:r}){switch(t){case".ts":case".d.ts":case".mts":case".d.mts":case".cts":case".d.cts":return;case".tsx":return i();case".jsx":return i()||o();case".js":case".mjs":case".cjs":return o();case".json":return s();default:return l()}function i(){return e.jsx?void 0:f.Module_0_was_resolved_to_1_but_jsx_is_not_set}function o(){return Xy(e)||!fd(e,"noImplicitAny")?void 0:f.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function s(){return A0(e)?void 0:f.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}function l(){return r||e.allowArbitraryExtensions?void 0:f.Module_0_was_resolved_to_1_but_allowArbitraryExtensions_is_not_set}}function pRe({imports:e,moduleAugmentations:t}){const r=e.map(i=>i);for(const i of t)i.kind===11&&r.push(i);return r}function Kw({imports:e,moduleAugmentations:t},r){if(r<e.length)return e[r];let i=e.length;for(const o of t)if(o.kind===11){if(r===i)return o;i++}N.fail("should never ask for module name at index higher than possible module name")}var XJ,YJ,$J,Sce,Tce,fRe,Ace,Ice,R7,mRe,yD,D7,N7,LHe=T({"src/compiler/program.ts"(){ra(),fS(),XJ=(e=>(e.Grey="\x1B[90m",e.Red="\x1B[91m",e.Yellow="\x1B[93m",e.Blue="\x1B[94m",e.Cyan="\x1B[96m",e))(XJ||{}),YJ="\x1B[7m",$J=" ",Sce="\x1B[0m",Tce="...",fRe=" ",Ace=" ",Ice={resolvedModule:void 0,resolvedTypeReferenceDirective:void 0},R7={getName:Ece,getMode:(e,t,r)=>FJ(t,e,r)},mRe={getName:GJ,getMode:(e,t)=>Hw(e,t==null?void 0:t.impliedNodeFormat)},yD="__inferred type names__.ts",D7=new Set([f.Cannot_redeclare_block_scoped_variable_0.code,f.A_module_cannot_have_multiple_default_exports.code,f.Another_export_default_is_here.code,f.The_first_export_default_is_here.code,f.Identifier_expected_0_is_a_reserved_word_at_the_top_level_of_a_module.code,f.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode.code,f.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here.code,f.constructor_is_a_reserved_word.code,f.delete_cannot_be_called_on_an_identifier_in_strict_mode.code,f.Code_contained_in_a_class_is_evaluated_in_JavaScript_s_strict_mode_which_does_not_allow_this_use_of_0_For_more_information_see_https_Colon_Slash_Slashdeveloper_mozilla_org_Slashen_US_Slashdocs_SlashWeb_SlashJavaScript_SlashReference_SlashStrict_mode.code,f.Invalid_use_of_0_Modules_are_automatically_in_strict_mode.code,f.Invalid_use_of_0_in_strict_mode.code,f.A_label_is_not_allowed_here.code,f.with_statements_are_not_allowed_in_strict_mode.code,f.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement.code,f.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement.code,f.A_class_declaration_without_the_default_modifier_must_have_a_name.code,f.A_class_member_cannot_have_the_0_keyword.code,f.A_comma_expression_is_not_allowed_in_a_computed_property_name.code,f.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement.code,f.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,f.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement.code,f.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement.code,f.A_default_export_must_be_at_the_top_level_of_a_file_or_module_declaration.code,f.A_definite_assignment_assertion_is_not_permitted_in_this_context.code,f.A_destructuring_declaration_must_have_an_initializer.code,f.A_get_accessor_cannot_have_parameters.code,f.A_rest_element_cannot_contain_a_binding_pattern.code,f.A_rest_element_cannot_have_a_property_name.code,f.A_rest_element_cannot_have_an_initializer.code,f.A_rest_element_must_be_last_in_a_destructuring_pattern.code,f.A_rest_parameter_cannot_have_an_initializer.code,f.A_rest_parameter_must_be_last_in_a_parameter_list.code,f.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma.code,f.A_return_statement_cannot_be_used_inside_a_class_static_block.code,f.A_set_accessor_cannot_have_rest_parameter.code,f.A_set_accessor_must_have_exactly_one_parameter.code,f.An_export_declaration_can_only_be_used_at_the_top_level_of_a_module.code,f.An_export_declaration_cannot_have_modifiers.code,f.An_import_declaration_can_only_be_used_at_the_top_level_of_a_module.code,f.An_import_declaration_cannot_have_modifiers.code,f.An_object_member_cannot_be_declared_optional.code,f.Argument_of_dynamic_import_cannot_be_spread_element.code,f.Cannot_assign_to_private_method_0_Private_methods_are_not_writable.code,f.Cannot_redeclare_identifier_0_in_catch_clause.code,f.Catch_clause_variable_cannot_have_an_initializer.code,f.Class_decorators_can_t_be_used_with_static_private_identifier_Consider_removing_the_experimental_decorator.code,f.Classes_can_only_extend_a_single_class.code,f.Classes_may_not_have_a_field_named_constructor.code,f.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code,f.Duplicate_label_0.code,f.Dynamic_imports_can_only_accept_a_module_specifier_and_an_optional_set_of_attributes_as_arguments.code,f.for_await_loops_cannot_be_used_inside_a_class_static_block.code,f.JSX_attributes_must_only_be_assigned_a_non_empty_expression.code,f.JSX_elements_cannot_have_multiple_attributes_with_the_same_name.code,f.JSX_expressions_may_not_use_the_comma_operator_Did_you_mean_to_write_an_array.code,f.JSX_property_access_expressions_cannot_include_JSX_namespace_names.code,f.Jump_target_cannot_cross_function_boundary.code,f.Line_terminator_not_permitted_before_arrow.code,f.Modifiers_cannot_appear_here.code,f.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement.code,f.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement.code,f.Private_identifiers_are_not_allowed_outside_class_bodies.code,f.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,f.Property_0_is_not_accessible_outside_class_1_because_it_has_a_private_identifier.code,f.Tagged_template_expressions_are_not_permitted_in_an_optional_chain.code,f.The_left_hand_side_of_a_for_of_statement_may_not_be_async.code,f.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer.code,f.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer.code,f.Trailing_comma_not_allowed.code,f.Variable_declaration_list_cannot_be_empty.code,f._0_and_1_operations_cannot_be_mixed_without_parentheses.code,f._0_expected.code,f._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2.code,f._0_list_cannot_be_empty.code,f._0_modifier_already_seen.code,f._0_modifier_cannot_appear_on_a_constructor_declaration.code,f._0_modifier_cannot_appear_on_a_module_or_namespace_element.code,f._0_modifier_cannot_appear_on_a_parameter.code,f._0_modifier_cannot_appear_on_class_elements_of_this_kind.code,f._0_modifier_cannot_be_used_here.code,f._0_modifier_must_precede_1_modifier.code,f._0_declarations_can_only_be_declared_inside_a_block.code,f._0_declarations_must_be_initialized.code,f.extends_clause_already_seen.code,f.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations.code,f.Class_constructor_may_not_be_a_generator.code,f.Class_constructor_may_not_be_an_accessor.code,f.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,f.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,f.Private_field_0_must_be_declared_in_an_enclosing_class.code,f.This_condition_will_always_return_0_since_JavaScript_compares_objects_by_reference_not_value.code]),N7={diagnostics:et,sourceMaps:void 0,emittedFiles:void 0,emitSkipped:!0}}}),kHe=T({"src/compiler/builderStatePublic.ts"(){}});function xce(e,t,r,i,o,s){const l=[],{emitSkipped:u,diagnostics:p}=e.emit(t,h,i,r,o,s);return{outputFiles:l,emitSkipped:u,diagnostics:p};function h(m,b,A){l.push({name:m,writeByteOrderMark:A,text:b})}}var Mm,wHe=T({"src/compiler/builderState.ts"(){ra(),(e=>{function t(){function $(Y,oe,fe){const Ne={getKeys:pe=>oe.get(pe),getValues:pe=>Y.get(pe),keys:()=>Y.keys(),deleteKey:pe=>{(fe||(fe=new Set)).add(pe);const ie=Y.get(pe);return ie?(ie.forEach(ve=>i(oe,ve,pe)),Y.delete(pe),!0):!1},set:(pe,ie)=>{fe==null||fe.delete(pe);const ve=Y.get(pe);return Y.set(pe,ie),ve==null||ve.forEach(Le=>{ie.has(Le)||i(oe,Le,pe)}),ie.forEach(Le=>{ve!=null&&ve.has(Le)||r(oe,Le,pe)}),Ne}};return Ne}return $(new Map,new Map,void 0)}e.createManyToManyPathMap=t;function r($,Y,oe){let fe=$.get(Y);fe||(fe=new Set,$.set(Y,fe)),fe.add(oe)}function i($,Y,oe){const fe=$.get(Y);return fe!=null&&fe.delete(oe)?(fe.size||$.delete(Y),!0):!1}function o($){return Hi($.declarations,Y=>{var oe;return(oe=jn(Y))==null?void 0:oe.resolvedPath})}function s($,Y){const oe=$.getSymbolAtLocation(Y);return oe&&o(oe)}function l($,Y,oe,fe){return ol($.getProjectReferenceRedirect(Y)||Y,oe,fe)}function u($,Y,oe){let fe;if(Y.imports&&Y.imports.length>0){const ve=$.getTypeChecker();for(const Le of Y.imports){const He=s(ve,Le);He==null||He.forEach(ie)}}const Ne=ai(Y.resolvedPath);if(Y.referencedFiles&&Y.referencedFiles.length>0)for(const ve of Y.referencedFiles){const Le=l($,ve.fileName,Ne,oe);ie(Le)}if($.forEachResolvedTypeReferenceDirective(({resolvedTypeReferenceDirective:ve})=>{if(!ve)return;const Le=ve.resolvedFileName,He=l($,Le,Ne,oe);ie(He)},Y),Y.moduleAugmentations.length){const ve=$.getTypeChecker();for(const Le of Y.moduleAugmentations){if(!Ma(Le))continue;const He=ve.getSymbolAtLocation(Le);He&&pe(He)}}for(const ve of $.getTypeChecker().getAmbientModules())ve.declarations&&ve.declarations.length>1&&pe(ve);return fe;function pe(ve){if(ve.declarations)for(const Le of ve.declarations){const He=jn(Le);He&&He!==Y&&ie(He.resolvedPath)}}function ie(ve){(fe||(fe=new Set)).add(ve)}}function p($,Y){return Y&&!Y.referencedMap==!$}e.canReuseOldState=p;function h($,Y,oe){var fe,Ne,pe;const ie=new Map,ve=$.getCompilerOptions(),Le=Ps(ve),He=ve.module!==0&&!Le?t():void 0,Ee=He?t():void 0,De=p(He,Y);$.getTypeChecker();for(const Pe of $.getSourceFiles()){const We=N.checkDefined(Pe.version,"Program intended to be used with Builder should have source files with versions set"),At=De?(fe=Y.oldSignatures)==null?void 0:fe.get(Pe.resolvedPath):void 0,Se=At===void 0?De?(Ne=Y.fileInfos.get(Pe.resolvedPath))==null?void 0:Ne.signature:void 0:At||void 0;if(He){const je=u($,Pe,$.getCanonicalFileName);if(je&&He.set(Pe.resolvedPath,je),De){const at=(pe=Y.oldExportedModulesMap)==null?void 0:pe.get(Pe.resolvedPath),Gt=at===void 0?Y.exportedModulesMap.getValues(Pe.resolvedPath):at||void 0;Gt&&Ee.set(Pe.resolvedPath,Gt)}}ie.set(Pe.resolvedPath,{version:We,signature:Se,affectsGlobalScope:Le?void 0:G(Pe)||void 0,impliedFormat:Pe.impliedNodeFormat})}return{fileInfos:ie,referencedMap:He,exportedModulesMap:Ee,useFileVersionAsSignature:!oe&&!De}}e.create=h;function m($){$.allFilesExcludingDefaultLibraryFile=void 0,$.allFileNames=void 0}e.releaseCache=m;function b($,Y,oe,fe,Ne){var pe,ie;const ve=A($,Y,oe,fe,Ne);return(pe=$.oldSignatures)==null||pe.clear(),(ie=$.oldExportedModulesMap)==null||ie.clear(),ve}e.getFilesAffectedBy=b;function A($,Y,oe,fe,Ne){const pe=Y.getSourceFileByPath(oe);return pe?M($,Y,pe,fe,Ne)?($.referencedMap?ye:he)($,Y,pe,fe,Ne):[pe]:et}e.getFilesAffectedByWithOldState=A;function I($,Y,oe){$.fileInfos.get(oe).signature=Y,($.hasCalledUpdateShapeSignature||($.hasCalledUpdateShapeSignature=new Set)).add(oe)}e.updateSignatureOfFile=I;function R($,Y,oe,fe,Ne){$.emit(Y,(pe,ie,ve,Le,He,Ee)=>{N.assert(Su(pe),`File extension for signature expected to be dts: Got:: ${pe}`),Ne(ZJ($,Y,ie,fe,Ee),He)},oe,!0,void 0,!0)}e.computeDtsSignature=R;function M($,Y,oe,fe,Ne,pe=$.useFileVersionAsSignature){var ie;if((ie=$.hasCalledUpdateShapeSignature)!=null&&ie.has(oe.resolvedPath))return!1;const ve=$.fileInfos.get(oe.resolvedPath),Le=ve.signature;let He;if(!oe.isDeclarationFile&&!pe&&R(Y,oe,fe,Ne,(Ee,De)=>{He=Ee,He!==Le&&C($,oe,De[0].exportedModulesFromDeclarationEmit)}),He===void 0&&(He=oe.version,$.exportedModulesMap&&He!==Le)){($.oldExportedModulesMap||($.oldExportedModulesMap=new Map)).set(oe.resolvedPath,$.exportedModulesMap.getValues(oe.resolvedPath)||!1);const Ee=$.referencedMap?$.referencedMap.getValues(oe.resolvedPath):void 0;Ee?$.exportedModulesMap.set(oe.resolvedPath,Ee):$.exportedModulesMap.deleteKey(oe.resolvedPath)}return($.oldSignatures||($.oldSignatures=new Map)).set(oe.resolvedPath,Le||!1),($.hasCalledUpdateShapeSignature||($.hasCalledUpdateShapeSignature=new Set)).add(oe.resolvedPath),ve.signature=He,He!==Le}e.updateShapeSignature=M;function C($,Y,oe){if(!$.exportedModulesMap)return;($.oldExportedModulesMap||($.oldExportedModulesMap=new Map)).set(Y.resolvedPath,$.exportedModulesMap.getValues(Y.resolvedPath)||!1);const fe=O(oe);fe?$.exportedModulesMap.set(Y.resolvedPath,fe):$.exportedModulesMap.deleteKey(Y.resolvedPath)}e.updateExportedModules=C;function O($){let Y;return $==null||$.forEach(oe=>o(oe).forEach(fe=>(Y??(Y=new Set)).add(fe))),Y}e.getExportedModules=O;function U($,Y,oe){const fe=Y.getCompilerOptions();if(Ps(fe)||!$.referencedMap||G(oe))return K($,Y);const Ne=new Set,pe=[oe.resolvedPath];for(;pe.length;){const ie=pe.pop();if(!Ne.has(ie)){Ne.add(ie);const ve=$.referencedMap.getValues(ie);if(ve)for(const Le of ve.keys())pe.push(Le)}}return zo(Pg(Ne.keys(),ie=>{var ve;return((ve=Y.getSourceFileByPath(ie))==null?void 0:ve.fileName)??ie}))}e.getAllDependencies=U;function K($,Y){if(!$.allFileNames){const oe=Y.getSourceFiles();$.allFileNames=oe===et?et:oe.map(fe=>fe.fileName)}return $.allFileNames}function Z($,Y){const oe=$.referencedMap.getKeys(Y);return oe?zo(oe.keys()):[]}e.getReferencedByPaths=Z;function V($){for(const Y of $.statements)if(!H4(Y))return!1;return!0}function se($){return bt($.moduleAugmentations,Y=>R_(Y.parent))}function G($){return se($)||!zp($)&&!Qf($)&&!V($)}function ne($,Y,oe){if($.allFilesExcludingDefaultLibraryFile)return $.allFilesExcludingDefaultLibraryFile;let fe;oe&&Ne(oe);for(const pe of Y.getSourceFiles())pe!==oe&&Ne(pe);return $.allFilesExcludingDefaultLibraryFile=fe||et,$.allFilesExcludingDefaultLibraryFile;function Ne(pe){Y.isSourceFileDefaultLibrary(pe)||(fe||(fe=[])).push(pe)}}e.getAllFilesExcludingDefaultLibraryFile=ne;function he($,Y,oe){const fe=Y.getCompilerOptions();return fe&&Ps(fe)?[oe]:ne($,Y,oe)}function ye($,Y,oe,fe,Ne){if(G(oe))return ne($,Y,oe);const pe=Y.getCompilerOptions();if(pe&&(om(pe)||Ps(pe)))return[oe];const ie=new Map;ie.set(oe.resolvedPath,oe);const ve=Z($,oe.resolvedPath);for(;ve.length>0;){const Le=ve.pop();if(!ie.has(Le)){const He=Y.getSourceFileByPath(Le);ie.set(Le,He),He&&M($,Y,He,fe,Ne)&&ve.push(...Z($,He.resolvedPath))}}return zo(Pg(ie.values(),Le=>Le))}})(Mm||(Mm={}))}});function ab(e){let t=1;return e.sourceMap&&(t=t|2),e.inlineSourceMap&&(t=t|4),Nf(e)&&(t=t|8),e.declarationMap&&(t=t|16),e.emitDeclarationOnly&&(t=t&24),t}function bD(e,t){const r=t&&(Cv(t)?t:ab(t)),i=Cv(e)?e:ab(e);if(r===i)return 0;if(!r||!i)return i;const o=r^i;let s=0;return o&7&&(s=i&7),o&24&&(s=s|i&24),s}function OHe(e,t){return e===t||e!==void 0&&t!==void 0&&e.size===t.size&&!_h(e,r=>!t.has(r))}function WHe(e,t){var r,i;const o=Mm.create(e,t,!1);o.program=e;const s=e.getCompilerOptions();o.compilerOptions=s;const l=Ps(s);l?s.composite&&(t!=null&&t.outSignature)&&l===Ps(t==null?void 0:t.compilerOptions)&&(o.outSignature=t.outSignature&&hRe(s,t.compilerOptions,t.outSignature)):o.semanticDiagnosticsPerFile=new Map,o.changedFilesSet=new Set,o.latestChangedDtsFile=s.composite?t==null?void 0:t.latestChangedDtsFile:void 0;const u=Mm.canReuseOldState(o.referencedMap,t),p=u?t.compilerOptions:void 0,h=u&&t.semanticDiagnosticsPerFile&&!!o.semanticDiagnosticsPerFile&&!Voe(s,p),m=s.composite&&(t==null?void 0:t.emitSignatures)&&!l&&!Uoe(s,t.compilerOptions);u?((r=t.changedFilesSet)==null||r.forEach(M=>o.changedFilesSet.add(M)),!l&&((i=t.affectedFilesPendingEmit)!=null&&i.size)&&(o.affectedFilesPendingEmit=new Map(t.affectedFilesPendingEmit),o.seenAffectedFiles=new Set),o.programEmitPending=t.programEmitPending):o.buildInfoEmitPending=!0;const b=o.referencedMap,A=u?t.referencedMap:void 0,I=h&&!s.skipLibCheck==!p.skipLibCheck,R=I&&!s.skipDefaultLibCheck==!p.skipDefaultLibCheck;if(o.fileInfos.forEach((M,C)=>{var O;let U,K;if(!u||!(U=t.fileInfos.get(C))||U.version!==M.version||U.impliedFormat!==M.impliedFormat||!OHe(K=b&&b.getValues(C),A&&A.getValues(C))||K&&_h(K,Z=>!o.fileInfos.has(Z)&&t.fileInfos.has(Z)))_Re(o,C);else{const Z=e.getSourceFileByPath(C),V=(O=t.emitDiagnosticsPerFile)==null?void 0:O.get(C);if(V&&(o.emitDiagnosticsPerFile??(o.emitDiagnosticsPerFile=new Map)).set(C,t.hasReusableDiagnostic?yRe(V,e):gRe(V,e)),h){if(Z.isDeclarationFile&&!I||Z.hasNoDefaultLib&&!R)return;const se=t.semanticDiagnosticsPerFile.get(C);se&&(o.semanticDiagnosticsPerFile.set(C,t.hasReusableDiagnostic?yRe(se,e):gRe(se,e)),(o.semanticDiagnosticsFromOldState??(o.semanticDiagnosticsFromOldState=new Set)).add(C))}}if(m){const Z=t.emitSignatures.get(C);Z&&(o.emitSignatures??(o.emitSignatures=new Map)).set(C,hRe(s,t.compilerOptions,Z))}}),u&&Gc(t.fileInfos,(M,C)=>o.fileInfos.has(C)?!1:l||M.affectsGlobalScope?!0:(o.buildInfoEmitPending=!0,!1)))Mm.getAllFilesExcludingDefaultLibraryFile(o,e,void 0).forEach(M=>_Re(o,M.resolvedPath));else if(p){const M=joe(s,p)?ab(s):bD(s,p);M!==0&&(l?o.programEmitPending=o.programEmitPending?o.programEmitPending|M:M:(e.getSourceFiles().forEach(C=>{o.changedFilesSet.has(C.resolvedPath)||Mce(o,C.resolvedPath,M)}),N.assert(!o.seenAffectedFiles||!o.seenAffectedFiles.size),o.seenAffectedFiles=o.seenAffectedFiles||new Set,o.buildInfoEmitPending=!0))}return l&&!o.changedFilesSet.size&&(u&&(o.bundle=t.bundle),bt(e.getProjectReferences(),M=>!!M.prepend)&&(o.programEmitPending=ab(s))),o}function _Re(e,t){e.changedFilesSet.add(t),e.buildInfoEmitPending=!0,e.programEmitPending=void 0}function hRe(e,t,r){return!!e.declarationMap==!!t.declarationMap?r:Po(r)?[r]:r[0]}function gRe(e,t){return e.length?eo(e,r=>{if(Po(r.messageText))return r;const i=Rce(r.messageText,r.file,t,o=>{var s;return(s=o.repopulateInfo)==null?void 0:s.call(o)});return i===r.messageText?r:{...r,messageText:i}}):e}function Rce(e,t,r,i){const o=i(e);if(o)return{...z4(t,r,o.moduleReference,o.mode,o.packageName||o.moduleReference),next:vRe(e.next,t,r,i)};const s=vRe(e.next,t,r,i);return s===e.next?e:{...e,next:s}}function vRe(e,t,r,i){return eo(e,o=>Rce(o,t,r,i))}function yRe(e,t){if(!e.length)return et;let r;return e.map(o=>{const s=bRe(o,t,i);s.reportsUnnecessary=o.reportsUnnecessary,s.reportsDeprecated=o.reportDeprecated,s.source=o.source,s.skippedOn=o.skippedOn;const{relatedInformation:l}=o;return s.relatedInformation=l?l.length?l.map(u=>bRe(u,t,i)):[]:void 0,s});function i(o){return r??(r=ai(go($v(t.getCompilerOptions()),t.getCurrentDirectory()))),ol(o,r,t.getCanonicalFileName)}}function bRe(e,t,r){const{file:i}=e,o=i?t.getSourceFileByPath(r(i)):void 0;return{...e,file:o,messageText:Po(e.messageText)?e.messageText:Rce(e.messageText,o,t,s=>s.info)}}function FHe(e){Mm.releaseCache(e),e.program=void 0}function zHe(e){const t=Ps(e.compilerOptions);return N.assert(!e.changedFilesSet.size||t),{affectedFilesPendingEmit:e.affectedFilesPendingEmit&&new Map(e.affectedFilesPendingEmit),seenEmittedFiles:e.seenEmittedFiles&&new Map(e.seenEmittedFiles),programEmitPending:e.programEmitPending,emitSignatures:e.emitSignatures&&new Map(e.emitSignatures),outSignature:e.outSignature,latestChangedDtsFile:e.latestChangedDtsFile,hasChangedEmitSignature:e.hasChangedEmitSignature,changedFilesSet:t?new Set(e.changedFilesSet):void 0,buildInfoEmitPending:e.buildInfoEmitPending,emitDiagnosticsPerFile:e.emitDiagnosticsPerFile&&new Map(e.emitDiagnosticsPerFile)}}function BHe(e,t){e.affectedFilesPendingEmit=t.affectedFilesPendingEmit,e.seenEmittedFiles=t.seenEmittedFiles,e.programEmitPending=t.programEmitPending,e.emitSignatures=t.emitSignatures,e.outSignature=t.outSignature,e.latestChangedDtsFile=t.latestChangedDtsFile,e.hasChangedEmitSignature=t.hasChangedEmitSignature,e.buildInfoEmitPending=t.buildInfoEmitPending,e.emitDiagnosticsPerFile=t.emitDiagnosticsPerFile,t.changedFilesSet&&(e.changedFilesSet=t.changedFilesSet)}function ERe(e,t){N.assert(!t||!e.affectedFiles||e.affectedFiles[e.affectedFilesIndex-1]!==t||!e.semanticDiagnosticsPerFile.has(t.resolvedPath))}function SRe(e,t,r){for(var i,o;;){const{affectedFiles:s}=e;if(s){const h=e.seenAffectedFiles;let m=e.affectedFilesIndex;for(;m<s.length;){const b=s[m];if(!h.has(b.resolvedPath))return e.affectedFilesIndex=m,Mce(e,b.resolvedPath,ab(e.compilerOptions)),UHe(e,b,t,r),b;m++}e.changedFilesSet.delete(e.currentChangedFilePath),e.currentChangedFilePath=void 0,(i=e.oldSignatures)==null||i.clear(),(o=e.oldExportedModulesMap)==null||o.clear(),e.affectedFiles=void 0}const l=e.changedFilesSet.keys().next();if(l.done)return;const u=N.checkDefined(e.program),p=u.getCompilerOptions();if(Ps(p))return N.assert(!e.semanticDiagnosticsPerFile),u;e.affectedFiles=Mm.getFilesAffectedByWithOldState(e,u,l.value,t,r),e.currentChangedFilePath=l.value,e.affectedFilesIndex=0,e.seenAffectedFiles||(e.seenAffectedFiles=new Set)}}function GHe(e,t){var r;if((r=e.affectedFilesPendingEmit)!=null&&r.size){if(!t)return e.affectedFilesPendingEmit=void 0;e.affectedFilesPendingEmit.forEach((i,o)=>{const s=i&7;s?e.affectedFilesPendingEmit.set(o,s):e.affectedFilesPendingEmit.delete(o)})}}function VHe(e,t){var r;if((r=e.affectedFilesPendingEmit)!=null&&r.size)return Gc(e.affectedFilesPendingEmit,(i,o)=>{var s;const l=e.program.getSourceFileByPath(o);if(!l||!MS(l,e.program)){e.affectedFilesPendingEmit.delete(o);return}const u=(s=e.seenEmittedFiles)==null?void 0:s.get(l.resolvedPath);let p=bD(i,u);if(t&&(p=p&24),p)return{affectedFile:l,emitKind:p}})}function jHe(e){var t;if((t=e.emitDiagnosticsPerFile)!=null&&t.size)return Gc(e.emitDiagnosticsPerFile,(r,i)=>{var o;const s=e.program.getSourceFileByPath(i);if(!s||!MS(s,e.program)){e.emitDiagnosticsPerFile.delete(i);return}const l=((o=e.seenEmittedFiles)==null?void 0:o.get(s.resolvedPath))||0;if(!(l&24))return{affectedFile:s,diagnostics:r,seenKind:l}})}function TRe(e){if(!e.cleanedDiagnosticsOfLibFiles){e.cleanedDiagnosticsOfLibFiles=!0;const t=N.checkDefined(e.program),r=t.getCompilerOptions();Ue(t.getSourceFiles(),i=>t.isSourceFileDefaultLibrary(i)&&!ZC(i,r,t)&&Dce(e,i.resolvedPath))}}function UHe(e,t,r,i){if(Dce(e,t.resolvedPath),e.allFilesExcludingDefaultLibraryFile===e.affectedFiles){TRe(e),Mm.updateShapeSignature(e,N.checkDefined(e.program),t,r,i);return}e.compilerOptions.assumeChangesOnlyAffectDirectDependencies||HHe(e,t,r,i)}function QJ(e,t,r,i){if(Dce(e,t),!e.changedFilesSet.has(t)){const o=N.checkDefined(e.program),s=o.getSourceFileByPath(t);s&&(Mm.updateShapeSignature(e,o,s,r,i,!0),Nf(e.compilerOptions)&&Mce(e,t,e.compilerOptions.declarationMap?24:8))}}function Dce(e,t){return e.semanticDiagnosticsFromOldState?(e.semanticDiagnosticsFromOldState.delete(t),e.semanticDiagnosticsPerFile.delete(t),!e.semanticDiagnosticsFromOldState.size):!0}function ARe(e,t){const r=N.checkDefined(e.oldSignatures).get(t)||void 0;return N.checkDefined(e.fileInfos.get(t)).signature!==r}function Nce(e,t,r,i){var o;return(o=e.fileInfos.get(t))!=null&&o.affectsGlobalScope?(Mm.getAllFilesExcludingDefaultLibraryFile(e,e.program,void 0).forEach(s=>QJ(e,s.resolvedPath,r,i)),TRe(e),!0):!1}function HHe(e,t,r,i){var o;if(!e.exportedModulesMap||!e.changedFilesSet.has(t.resolvedPath)||!ARe(e,t.resolvedPath))return;if(om(e.compilerOptions)){const l=new Map;l.set(t.resolvedPath,!0);const u=Mm.getReferencedByPaths(e,t.resolvedPath);for(;u.length>0;){const p=u.pop();if(!l.has(p)){if(l.set(p,!0),Nce(e,p,r,i))return;if(QJ(e,p,r,i),ARe(e,p)){const h=N.checkDefined(e.program).getSourceFileByPath(p);u.push(...Mm.getReferencedByPaths(e,h.resolvedPath))}}}}const s=new Set;(o=e.exportedModulesMap.getKeys(t.resolvedPath))==null||o.forEach(l=>{if(Nce(e,l,r,i))return!0;const u=e.referencedMap.getKeys(l);return u&&_h(u,p=>IRe(e,p,s,r,i))})}function IRe(e,t,r,i,o){var s,l;if(Rv(r,t)){if(Nce(e,t,i,o))return!0;QJ(e,t,i,o),(s=e.exportedModulesMap.getKeys(t))==null||s.forEach(u=>IRe(e,u,r,i,o)),(l=e.referencedMap.getKeys(t))==null||l.forEach(u=>!r.has(u)&&QJ(e,u,i,o))}}function Cce(e,t,r){return So(qHe(e,t,r),N.checkDefined(e.program).getProgramDiagnostics(t))}function qHe(e,t,r){const i=t.resolvedPath;if(e.semanticDiagnosticsPerFile){const s=e.semanticDiagnosticsPerFile.get(i);if(s)return I7(s,e.compilerOptions)}const o=N.checkDefined(e.program).getBindAndCheckDiagnostics(t,r);return e.semanticDiagnosticsPerFile&&e.semanticDiagnosticsPerFile.set(i,o),I7(o,e.compilerOptions)}function Pce(e){return!!Ps(e.options||{})}function JHe(e,t){var r,i,o;const s=N.checkDefined(e.program).getCurrentDirectory(),l=ai(go($v(e.compilerOptions),s)),u=e.latestChangedDtsFile?se(e.latestChangedDtsFile):void 0,p=[],h=new Map,m=[];if(Ps(e.compilerOptions)){const ve=zo(e.fileInfos.entries(),([We,At])=>{const Se=ne(We);return ye(We,Se),At.impliedFormat?{version:At.version,impliedFormat:At.impliedFormat,signature:void 0,affectsGlobalScope:void 0}:At.version}),Le={fileNames:p,fileInfos:ve,root:m,options:$(e.compilerOptions),outSignature:e.outSignature,latestChangedDtsFile:u,pendingEmit:e.programEmitPending?e.programEmitPending===ab(e.compilerOptions)?!1:e.programEmitPending:void 0},{js:He,dts:Ee,commonSourceDirectory:De,sourceFiles:Pe}=t;return e.bundle=t={commonSourceDirectory:De,sourceFiles:Pe,js:He||(e.compilerOptions.emitDeclarationOnly||(r=e.bundle)==null?void 0:r.js),dts:Ee||(Nf(e.compilerOptions)?(i=e.bundle)==null?void 0:i.dts:void 0)},zw(Le,t)}let b,A,I;const R=zo(e.fileInfos.entries(),([ve,Le])=>{var He,Ee;const De=ne(ve);ye(ve,De),N.assert(p[De-1]===G(ve));const Pe=(He=e.oldSignatures)==null?void 0:He.get(ve),We=Pe!==void 0?Pe||void 0:Le.signature;if(e.compilerOptions.composite){const At=e.program.getSourceFileByPath(ve);if(!Qf(At)&&MS(At,e.program)){const Se=(Ee=e.emitSignatures)==null?void 0:Ee.get(ve);Se!==We&&(I||(I=[])).push(Se===void 0?De:[De,!Po(Se)&&Se[0]===We?et:Se])}}return Le.version===We?Le.affectsGlobalScope||Le.impliedFormat?{version:Le.version,signature:void 0,affectsGlobalScope:Le.affectsGlobalScope,impliedFormat:Le.impliedFormat}:Le.version:We!==void 0?Pe===void 0?Le:{version:Le.version,signature:We,affectsGlobalScope:Le.affectsGlobalScope,impliedFormat:Le.impliedFormat}:{version:Le.version,signature:!1,affectsGlobalScope:Le.affectsGlobalScope,impliedFormat:Le.impliedFormat}});let M;e.referencedMap&&(M=zo(e.referencedMap.keys()).sort(Uu).map(ve=>[ne(ve),he(e.referencedMap.getValues(ve))]));let C;e.exportedModulesMap&&(C=Hi(zo(e.exportedModulesMap.keys()).sort(Uu),ve=>{var Le;const He=(Le=e.oldExportedModulesMap)==null?void 0:Le.get(ve);if(He===void 0)return[ne(ve),he(e.exportedModulesMap.getValues(ve))];if(He)return[ne(ve),he(He)]}));const O=oe(e.semanticDiagnosticsPerFile);let U;if((o=e.affectedFilesPendingEmit)!=null&&o.size){const ve=ab(e.compilerOptions),Le=new Set;for(const He of zo(e.affectedFilesPendingEmit.keys()).sort(Uu))if(Rv(Le,He)){const Ee=e.program.getSourceFileByPath(He);if(!Ee||!MS(Ee,e.program))continue;const De=ne(He),Pe=e.affectedFilesPendingEmit.get(He);(U||(U=[])).push(Pe===ve?De:Pe===8?[De]:[De,Pe])}}let K;if(e.changedFilesSet.size)for(const ve of zo(e.changedFilesSet.keys()).sort(Uu))(K||(K=[])).push(ne(ve));const Z=oe(e.emitDiagnosticsPerFile),V={fileNames:p,fileInfos:R,root:m,options:$(e.compilerOptions),fileIdsList:b,referencedMap:M,exportedModulesMap:C,semanticDiagnosticsPerFile:O,emitDiagnosticsPerFile:Z,affectedFilesPendingEmit:U,changeFileSet:K,emitSignatures:I,latestChangedDtsFile:u};return zw(V,t);function se(ve){return G(go(ve,s))}function G(ve){return CE(Em(l,ve,e.program.getCanonicalFileName))}function ne(ve){let Le=h.get(ve);return Le===void 0&&(p.push(G(ve)),h.set(ve,Le=p.length)),Le}function he(ve){const Le=zo(ve.keys(),ne).sort(rl),He=Le.join();let Ee=A==null?void 0:A.get(He);return Ee===void 0&&((b||(b=[])).push(Le),(A||(A=new Map)).set(He,Ee=b.length)),Ee}function ye(ve,Le){const He=e.program.getSourceFile(ve);if(!e.program.getFileIncludeReasons().get(He.path).some(We=>We.kind===0))return;if(!m.length)return m.push(Le);const Ee=m[m.length-1],De=To(Ee);if(De&&Ee[1]===Le-1)return Ee[1]=Le;if(De||m.length===1||Ee!==Le-1)return m.push(Le);const Pe=m[m.length-2];return!Cv(Pe)||Pe!==Ee-1?m.push(Le):(m[m.length-2]=[Pe,Le],m.length=m.length-1)}function $(ve){let Le;const{optionsNameMap:He}=aD();for(const Ee of Xh(ve).sort(Uu)){const De=He.get(Ee.toLowerCase());De!=null&&De.affectsBuildInfo&&((Le||(Le={}))[Ee]=Y(De,ve[Ee]))}return Le}function Y(ve,Le){if(ve){if(N.assert(ve.type!=="listOrElement"),ve.type==="list"){const He=Le;if(ve.element.isFilePath&&He.length)return He.map(se)}else if(ve.isFilePath)return se(Le)}return Le}function oe(ve){let Le;if(ve)for(const He of zo(ve.keys()).sort(Uu)){const Ee=ve.get(He);(Le||(Le=[])).push(Ee.length?[ne(He),fe(Ee)]:ne(He))}return Le}function fe(ve){return N.assert(!!ve.length),ve.map(Le=>{const He=Ne(Le);He.reportsUnnecessary=Le.reportsUnnecessary,He.reportDeprecated=Le.reportsDeprecated,He.source=Le.source,He.skippedOn=Le.skippedOn;const{relatedInformation:Ee}=Le;return He.relatedInformation=Ee?Ee.length?Ee.map(De=>Ne(De)):[]:void 0,He})}function Ne(ve){const{file:Le}=ve;return{...ve,file:Le?G(Le.resolvedPath):void 0,messageText:Po(ve.messageText)?ve.messageText:pe(ve.messageText)}}function pe(ve){if(ve.repopulateInfo)return{info:ve.repopulateInfo(),next:ie(ve.next)};const Le=ie(ve.next);return Le===ve.next?ve:{...ve,next:Le}}function ie(ve){return ve&&(Ue(ve,(Le,He)=>{const Ee=pe(Le);if(Le===Ee)return;const De=He>0?ve.slice(0,He-1):[];De.push(Ee);for(let Pe=He+1;Pe<ve.length;Pe++)De.push(pe(ve[Pe]));return De})||ve)}}function C7(e,t,r,i,o,s){let l,u,p;return e===void 0?(N.assert(t===void 0),l=r,p=i,N.assert(!!p),u=p.getProgram()):To(e)?(p=i,u=A7({rootNames:e,options:t,host:r,oldProgram:p&&p.getProgramOrUndefined(),configFileParsingDiagnostics:o,projectReferences:s}),l=r):(u=e,l=t,p=r,o=i),{host:l,newProgram:u,oldProgram:p,configFileParsingDiagnostics:o||et}}function xRe(e,t){return(t==null?void 0:t.sourceMapUrlPos)!==void 0?e.substring(0,t.sourceMapUrlPos):e}function ZJ(e,t,r,i,o){var s;r=xRe(r,o);let l;return(s=o==null?void 0:o.diagnostics)!=null&&s.length&&(r+=o.diagnostics.map(h=>`${p(h)}${HM[h.category]}${h.code}: ${u(h.messageText)}`).join(`
+`)),(i.createHash??tC)(r);function u(h){return Po(h)?h:h===void 0?"":h.next?h.messageText+h.next.map(u).join(`
+`):h.messageText}function p(h){return h.file.resolvedPath===t.resolvedPath?`(${h.start},${h.length})`:(l===void 0&&(l=ai(t.resolvedPath)),`${CE(Em(l,h.file.resolvedPath,e.getCanonicalFileName))}(${h.start},${h.length})`)}}function iT(e,t,r){return(t.createHash??tC)(xRe(e,r))}function eK(e,{newProgram:t,host:r,oldProgram:i,configFileParsingDiagnostics:o}){let s=i&&i.getState();if(s&&t===s.program&&o===t.getConfigFileParsingDiagnostics())return t=void 0,s=void 0,i;const l=WHe(t,s);t.getBuildInfo=M=>JHe(l,M),t=void 0,i=void 0,s=void 0;const u=()=>l,p=nK(u,o);return p.getState=u,p.saveEmitState=()=>zHe(l),p.restoreEmitState=M=>BHe(l,M),p.hasChangedEmitSignature=()=>!!l.hasChangedEmitSignature,p.getAllDependencies=M=>Mm.getAllDependencies(l,N.checkDefined(l.program),M),p.getSemanticDiagnostics=R,p.emit=A,p.releaseProgram=()=>FHe(l),e===0?p.getSemanticDiagnosticsOfNextAffectedFile=I:e===1?(p.getSemanticDiagnosticsOfNextAffectedFile=I,p.emitNextAffectedFile=m,p.emitBuildInfo=h):Ko(),p;function h(M,C){if(l.buildInfoEmitPending){const O=N.checkDefined(l.program).emitBuildInfo(M||oa(r,r.writeFile),C);return l.buildInfoEmitPending=!1,O}return N7}function m(M,C,O,U){var K,Z,V;let se=SRe(l,C,r);const G=ab(l.compilerOptions);let ne=O?G&24:G;if(!se)if(Ps(l.compilerOptions)){if(!l.programEmitPending||(ne=l.programEmitPending,O&&(ne=ne&24),!ne))return;se=l.program}else{const $=VHe(l,O);if(!$){const Y=jHe(l);if(Y)return(l.seenEmittedFiles??(l.seenEmittedFiles=new Map)).set(Y.affectedFile.resolvedPath,Y.seenKind|24),{result:{emitSkipped:!0,diagnostics:Y.diagnostics},affected:Y.affectedFile};if(!l.buildInfoEmitPending)return;const oe=l.program,fe=oe.emitBuildInfo(M||oa(r,r.writeFile),C);return l.buildInfoEmitPending=!1,{result:fe,affected:oe}}({affectedFile:se,emitKind:ne}=$)}let he;ne&7&&(he=0),ne&24&&(he=he===void 0?1:void 0),se===l.program&&(l.programEmitPending=l.changedFilesSet.size?bD(G,ne):l.programEmitPending?bD(l.programEmitPending,ne):void 0);const ye=l.program.emit(se===l.program?void 0:se,b(M,U),C,he,U);if(se!==l.program){const $=se;l.seenAffectedFiles.add($.resolvedPath),l.affectedFilesIndex!==void 0&&l.affectedFilesIndex++,l.buildInfoEmitPending=!0;const Y=((K=l.seenEmittedFiles)==null?void 0:K.get($.resolvedPath))||0;(l.seenEmittedFiles??(l.seenEmittedFiles=new Map)).set($.resolvedPath,ne|Y);const oe=((Z=l.affectedFilesPendingEmit)==null?void 0:Z.get($.resolvedPath))||G,fe=bD(oe,ne|Y);fe?(l.affectedFilesPendingEmit??(l.affectedFilesPendingEmit=new Map)).set($.resolvedPath,fe):(V=l.affectedFilesPendingEmit)==null||V.delete($.resolvedPath),ye.diagnostics.length&&(l.emitDiagnosticsPerFile??(l.emitDiagnosticsPerFile=new Map)).set($.resolvedPath,ye.diagnostics)}else l.changedFilesSet.clear();return{result:ye,affected:se}}function b(M,C){return Nf(l.compilerOptions)?(O,U,K,Z,V,se)=>{var G,ne,he,ye;if(Su(O))if(Ps(l.compilerOptions)){if(l.compilerOptions.composite){const Y=$(l.outSignature,void 0);if(!Y)return;l.outSignature=Y}}else{N.assert((V==null?void 0:V.length)===1);let Y;if(!C){const oe=V[0],fe=l.fileInfos.get(oe.resolvedPath);if(fe.signature===oe.version){const Ne=ZJ(l.program,oe,U,r,se);(G=se==null?void 0:se.diagnostics)!=null&&G.length||(Y=Ne),Ne!==oe.version&&(r.storeFilesChangingSignatureDuringEmit&&(l.filesChangingSignature??(l.filesChangingSignature=new Set)).add(oe.resolvedPath),l.exportedModulesMap&&Mm.updateExportedModules(l,oe,oe.exportedModulesFromDeclarationEmit),l.affectedFiles?(((ne=l.oldSignatures)==null?void 0:ne.get(oe.resolvedPath))===void 0&&(l.oldSignatures??(l.oldSignatures=new Map)).set(oe.resolvedPath,fe.signature||!1),fe.signature=Ne):(fe.signature=Ne,(he=l.oldExportedModulesMap)==null||he.clear()))}}if(l.compilerOptions.composite){const oe=V[0].resolvedPath;if(Y=$((ye=l.emitSignatures)==null?void 0:ye.get(oe),Y),!Y)return;(l.emitSignatures??(l.emitSignatures=new Map)).set(oe,Y)}}M?M(O,U,K,Z,V,se):r.writeFile?r.writeFile(O,U,K,Z,V,se):l.program.writeFile(O,U,K,Z,V,se);function $(Y,oe){const fe=!Y||Po(Y)?Y:Y[0];if(oe??(oe=iT(U,r,se)),oe===fe){if(Y===fe)return;se?se.differsOnlyInMap=!0:se={differsOnlyInMap:!0}}else l.hasChangedEmitSignature=!0,l.latestChangedDtsFile=O;return oe}}:M||oa(r,r.writeFile)}function A(M,C,O,U,K){e===1&&ERe(l,M);const Z=qJ(p,M,C,O);if(Z)return Z;if(!M)if(e===1){let V=[],se=!1,G,ne=[],he;for(;he=m(C,O,U,K);)se=se||he.result.emitSkipped,G=Jr(G,he.result.diagnostics),ne=Jr(ne,he.result.emittedFiles),V=Jr(V,he.result.sourceMaps);return{emitSkipped:se,diagnostics:G||et,emittedFiles:ne,sourceMaps:V}}else GHe(l,U);return N.checkDefined(l.program).emit(M,b(C,K),O,U,K)}function I(M,C){for(;;){const O=SRe(l,M,r);let U;if(O)if(O!==l.program){const K=O;if((!C||!C(K))&&(U=Cce(l,K,M)),l.seenAffectedFiles.add(K.resolvedPath),l.affectedFilesIndex++,l.buildInfoEmitPending=!0,!U)continue}else U=l.program.getSemanticDiagnostics(void 0,M),l.changedFilesSet.clear(),l.programEmitPending=ab(l.compilerOptions);else return;return{result:U,affected:O}}}function R(M,C){ERe(l,M);const O=N.checkDefined(l.program).getCompilerOptions();if(Ps(O))return N.assert(!l.semanticDiagnosticsPerFile),N.checkDefined(l.program).getSemanticDiagnostics(M,C);if(M)return Cce(l,M,C);for(;I(C););let U;for(const K of N.checkDefined(l.program).getSourceFiles())U=Jr(U,Cce(l,K,C));return U||et}}function Mce(e,t,r){var i,o;const s=((i=e.affectedFilesPendingEmit)==null?void 0:i.get(t))||0;(e.affectedFilesPendingEmit??(e.affectedFilesPendingEmit=new Map)).set(t,s|r),(o=e.emitDiagnosticsPerFile)==null||o.delete(t)}function Lce(e){return Po(e)?{version:e,signature:e,affectsGlobalScope:void 0,impliedFormat:void 0}:Po(e.signature)?e:{version:e.version,signature:e.signature===!1?void 0:e.version,affectsGlobalScope:e.affectsGlobalScope,impliedFormat:e.impliedFormat}}function kce(e,t){return Cv(e)?t:e[1]||8}function wce(e,t){return e||ab(t||{})}function Oce(e,t,r){var i,o,s,l;const u=e.program,p=ai(go(t,r.getCurrentDirectory())),h=Mu(r.useCaseSensitiveFileNames());let m;const b=(i=u.fileNames)==null?void 0:i.map(R);let A;const I=u.latestChangedDtsFile?M(u.latestChangedDtsFile):void 0;if(Pce(u)){const Z=new Map;u.fileInfos.forEach((V,se)=>{const G=C(se+1);Z.set(G,Po(V)?{version:V,signature:void 0,affectsGlobalScope:void 0,impliedFormat:void 0}:V)}),m={fileInfos:Z,compilerOptions:u.options?gq(u.options,M):{},latestChangedDtsFile:I,outSignature:u.outSignature,programEmitPending:u.pendingEmit===void 0?void 0:wce(u.pendingEmit,u.options),bundle:e.bundle}}else{A=(o=u.fileIdsList)==null?void 0:o.map(G=>new Set(G.map(C)));const Z=new Map,V=(s=u.options)!=null&&s.composite&&!Ps(u.options)?new Map:void 0;u.fileInfos.forEach((G,ne)=>{const he=C(ne+1),ye=Lce(G);Z.set(he,ye),V&&ye.signature&&V.set(he,ye.signature)}),(l=u.emitSignatures)==null||l.forEach(G=>{if(Cv(G))V.delete(C(G));else{const ne=C(G[0]);V.set(ne,!Po(G[1])&&!G[1].length?[V.get(ne)]:G[1])}});const se=u.affectedFilesPendingEmit?ab(u.options||{}):void 0;m={fileInfos:Z,compilerOptions:u.options?gq(u.options,M):{},referencedMap:U(u.referencedMap),exportedModulesMap:U(u.exportedModulesMap),semanticDiagnosticsPerFile:K(u.semanticDiagnosticsPerFile),emitDiagnosticsPerFile:K(u.emitDiagnosticsPerFile),hasReusableDiagnostic:!0,affectedFilesPendingEmit:u.affectedFilesPendingEmit&&NE(u.affectedFilesPendingEmit,G=>C(Cv(G)?G:G[0]),G=>kce(G,se)),changedFilesSet:new Set(wt(u.changeFileSet,C)),latestChangedDtsFile:I,emitSignatures:V!=null&&V.size?V:void 0}}return{getState:()=>m,saveEmitState:$a,restoreEmitState:$a,getProgram:Ko,getProgramOrUndefined:r0,releaseProgram:$a,getCompilerOptions:()=>m.compilerOptions,getSourceFile:Ko,getSourceFiles:Ko,getOptionsDiagnostics:Ko,getGlobalDiagnostics:Ko,getConfigFileParsingDiagnostics:Ko,getSyntacticDiagnostics:Ko,getDeclarationDiagnostics:Ko,getSemanticDiagnostics:Ko,emit:Ko,getAllDependencies:Ko,getCurrentDirectory:Ko,emitNextAffectedFile:Ko,getSemanticDiagnosticsOfNextAffectedFile:Ko,emitBuildInfo:Ko,close:$a,hasChangedEmitSignature:Xm};function R(Z){return ol(Z,p,h)}function M(Z){return go(Z,p)}function C(Z){return b[Z-1]}function O(Z){return A[Z-1]}function U(Z){if(!Z)return;const V=Mm.createManyToManyPathMap();return Z.forEach(([se,G])=>V.set(C(se),O(G))),V}function K(Z){return Z&&NE(Z,V=>C(Cv(V)?V:V[0]),V=>Cv(V)?et:V[1])}}function tK(e,t,r){const i=ai(go(t,r.getCurrentDirectory())),o=Mu(r.useCaseSensitiveFileNames()),s=new Map;let l=0;const u=[];return e.fileInfos.forEach((p,h)=>{const m=ol(e.fileNames[h],i,o),b=Po(p)?p:p.version;if(s.set(m,b),l<e.root.length){const A=e.root[l],I=h+1;To(A)?A[0]<=I&&I<=A[1]&&(u.push(m),A[1]===I&&l++):A===I&&(u.push(m),l++)}}),{fileInfos:s,roots:u}}function nK(e,t){return{getState:Ko,saveEmitState:$a,restoreEmitState:$a,getProgram:r,getProgramOrUndefined:()=>e().program,releaseProgram:()=>e().program=void 0,getCompilerOptions:()=>e().compilerOptions,getSourceFile:i=>r().getSourceFile(i),getSourceFiles:()=>r().getSourceFiles(),getOptionsDiagnostics:i=>r().getOptionsDiagnostics(i),getGlobalDiagnostics:i=>r().getGlobalDiagnostics(i),getConfigFileParsingDiagnostics:()=>t,getSyntacticDiagnostics:(i,o)=>r().getSyntacticDiagnostics(i,o),getDeclarationDiagnostics:(i,o)=>r().getDeclarationDiagnostics(i,o),getSemanticDiagnostics:(i,o)=>r().getSemanticDiagnostics(i,o),emit:(i,o,s,l,u)=>r().emit(i,o,s,l,u),emitBuildInfo:(i,o)=>r().emitBuildInfo(i,o),getAllDependencies:Ko,getCurrentDirectory:()=>r().getCurrentDirectory(),close:$a};function r(){return N.checkDefined(e().program)}}var rK,iK,KHe=T({"src/compiler/builder.ts"(){ra(),rK=(e=>(e[e.None=0]="None",e[e.Js=1]="Js",e[e.JsMap=2]="JsMap",e[e.JsInlineMap=4]="JsInlineMap",e[e.Dts=8]="Dts",e[e.DtsMap=16]="DtsMap",e[e.AllJs=7]="AllJs",e[e.AllDts=24]="AllDts",e[e.All=31]="All",e))(rK||{}),iK=(e=>(e[e.SemanticDiagnosticsBuilderProgram=0]="SemanticDiagnosticsBuilderProgram",e[e.EmitAndSemanticDiagnosticsBuilderProgram=1]="EmitAndSemanticDiagnosticsBuilderProgram",e))(iK||{})}});function RRe(e,t,r,i,o,s){return eK(0,C7(e,t,r,i,o,s))}function oK(e,t,r,i,o,s){return eK(1,C7(e,t,r,i,o,s))}function DRe(e,t,r,i,o,s){const{newProgram:l,configFileParsingDiagnostics:u}=C7(e,t,r,i,o,s);return nK(()=>({program:l,compilerOptions:l.getCompilerOptions()}),u)}var XHe=T({"src/compiler/builderPublic.ts"(){ra()}});function P7(e){return Al(e,"/node_modules/.staging")?Bx(e,"/.staging"):bt(XM,t=>e.includes(t))?void 0:e}function Wce(e,t){if(t<=1)return 1;let r=1,i=e[0].search(/[a-zA-Z]:/)===0;if(e[0]!==al&&!i&&e[1].search(/[a-zA-Z]\$$/)===0){if(t===2)return 2;r=2,i=!0}return i&&!e[r].match(/^users$/i)?r:e[r].match(/^workspaces$/i)?r+1:r+2}function M7(e,t){if(t===void 0&&(t=e.length),t<=2)return!1;const r=Wce(e,t);return t>r+1}function Fce(e){return CRe(ai(e))}function NRe(e,t){if(t.length<t.length)return!1;for(let r=0;r<e.length;r++)if(t[r]!==e[r])return!1;return!0}function CRe(e){return M7(zc(e))}function zce(e){return CRe(e)}function aK(e,t,r,i,o,s){const l=zc(t);e=fp(e)?ga(e):go(e,s());const u=zc(e),p=Wce(l,l.length);if(l.length<=p+1)return;const h=l.indexOf("node_modules");if(!(h!==-1&&h+1<=p+1))return NRe(o,l)?l.length>o.length+1?Bce(u,l,Math.max(o.length+1,p+1)):{dir:r,dirPath:i,nonRecursive:!0}:PRe(u,l,l.length-1,p,h,o)}function PRe(e,t,r,i,o,s){if(o!==-1)return Bce(e,t,o+1);let l=!0,u=r;for(let p=0;p<r;p++)if(t[p]!==s[p]){l=!1,u=Math.max(p+1,i+1);break}return Bce(e,t,u,l)}function Bce(e,t,r,i){return{dir:Cy(e,r),dirPath:Cy(t,r),nonRecursive:i}}function Gce(e,t,r,i,o,s){const l=zc(t);if(NRe(i,l))return r;e=fp(e)?ga(e):go(e,o());const u=PRe(zc(e),l,l.length,Wce(l,l.length),l.indexOf("node_modules"),i);return u&&s(u.dirPath)?u.dirPath:void 0}function Vce(e,t){const r=go(e,t());return OV(r)?r:o0(r)}function MRe(e){return e.split(al).length-(kv(e)?1:0)}function L7(e){var t;return((t=e.getCompilerHost)==null?void 0:t.call(e))||e}function jce(e,t,r,i,o){return{nameAndMode:R7,resolve:(s,l)=>YHe(i,o,s,e,r,t,l)}}function YHe(e,t,r,i,o,s,l){const u=L7(e),p=uD(r,i,o,u,t,s,l);if(!e.getGlobalCache)return p;const h=e.getGlobalCache();if(h!==void 0&&!Yc(r)&&!(p.resolvedModule&&tW(p.resolvedModule.extension))){const{resolvedModule:m,failedLookupLocations:b,affectingLocations:A,resolutionDiagnostics:I}=ile(N.checkDefined(e.globalCacheResolutionModuleName)(r),e.projectName,o,u,h,t);if(m)return p.resolvedModule=m,p.failedLookupLocations=lD(p.failedLookupLocations,b),p.affectingLocations=lD(p.affectingLocations,A),p.resolutionDiagnostics=lD(p.resolutionDiagnostics,I),p}return p}function sK(e,t,r){let i,o,s;const l=Zp(),u=new Set,p=new Set,h=new Map,m=new Map;let b=!1,A,I,R,M,C,O=!1;const U=Td(()=>e.getCurrentDirectory()),K=e.getCachedDirectoryStructureHost(),Z=new Map,V=cD(U(),e.getCanonicalFileName,e.getCompilationSettings()),se=new Map,G=zF(U(),e.getCanonicalFileName,e.getCompilationSettings(),V.getPackageJsonInfoCache(),V.optionsToRedirectsKey),ne=new Map,he=cD(U(),e.getCanonicalFileName,Lq(e.getCompilationSettings()),V.getPackageJsonInfoCache()),ye=new Map,$=new Map,Y=Vce(t,U),oe=e.toPath(Y),fe=zc(oe),Ne=new Map;return{rootDirForResolution:t,resolvedModuleNames:Z,resolvedTypeReferenceDirectives:se,resolvedLibraries:ne,resolvedFileToResolution:h,resolutionsWithFailedLookups:u,resolutionsWithOnlyAffectingLocations:p,directoryWatchesOfFailedLookups:ye,fileWatchesOfAffectingLocations:$,watchFailedLookupLocationsOfExternalModuleResolutions:Pn,getModuleResolutionCache:()=>V,startRecordingFilesWithChangedResolutions:He,finishRecordingFilesWithChangedResolutions:Ee,startCachingPerDirectoryResolution:We,finishCachingPerDirectoryResolution:Se,resolveModuleNameLiterals:$e,resolveTypeReferenceDirectiveReferences:vt,resolveLibrary:It,resolveSingleModuleNameWithoutWatching:tn,removeResolutionsFromProjectReferenceRedirects:tt,removeResolutionsOfFile:zt,hasChangedAutomaticTypeDirectiveNames:()=>b,invalidateResolutionOfFile:li,invalidateResolutionsOfFailedLookupLocations:ma,setFilesWithInvalidatedNonRelativeUnresolvedImports:hi,createHasInvalidatedResolutions:Pe,isFileWithInvalidatedNonRelativeUnresolvedImports:De,updateTypeRootsWatch:ft,closeTypeRootsWatch:qe,clear:ve,onChangesAffectModuleResolution:Le};function pe(le){return le.resolvedModule}function ie(le){return le.resolvedTypeReferenceDirective}function ve(){tp(ye,Mf),tp($,Mf),l.clear(),qe(),Z.clear(),se.clear(),h.clear(),u.clear(),p.clear(),R=void 0,M=void 0,C=void 0,I=void 0,A=void 0,O=!1,V.clear(),G.clear(),V.update(e.getCompilationSettings()),G.update(e.getCompilationSettings()),he.clear(),m.clear(),ne.clear(),b=!1}function Le(){O=!0,V.clearAllExceptPackageJsonInfoCache(),G.clearAllExceptPackageJsonInfoCache(),V.update(e.getCompilationSettings()),G.update(e.getCompilationSettings())}function He(){i=[]}function Ee(){const le=i;return i=void 0,le}function De(le){if(!s)return!1;const Fe=s.get(le);return!!Fe&&!!Fe.length}function Pe(le,Fe){ma();const pt=o;return o=void 0,{hasInvalidatedResolutions:j=>le(j)||O||!!(pt!=null&&pt.has(j))||De(j),hasInvalidatedLibResolutions:j=>{var ot;return Fe(j)||!!((ot=ne==null?void 0:ne.get(j))!=null&&ot.isInvalidated)}}}function We(){V.isReadonly=void 0,G.isReadonly=void 0,he.isReadonly=void 0,V.getPackageJsonInfoCache().isReadonly=void 0,V.clearAllExceptPackageJsonInfoCache(),G.clearAllExceptPackageJsonInfoCache(),he.clearAllExceptPackageJsonInfoCache(),l.forEach(ao),l.clear()}function At(le){ne.forEach((Fe,pt)=>{var j;(j=le==null?void 0:le.resolvedLibReferences)!=null&&j.has(pt)||(Mn(Fe,e.toPath(T7(e.getCompilationSettings(),U(),pt)),pe),ne.delete(pt))})}function Se(le,Fe){s=void 0,O=!1,l.forEach(ao),l.clear(),le!==Fe&&(At(le),le==null||le.getSourceFiles().forEach(pt=>{var j;const ot=zp(pt)?((j=pt.packageJsonLocations)==null?void 0:j.length)??0:0,Rt=m.get(pt.path)??et;for(let Ye=Rt.length;Ye<ot;Ye++)$t(pt.packageJsonLocations[Ye],!1);if(Rt.length>ot)for(let Ye=ot;Ye<Rt.length;Ye++)$.get(Rt[Ye]).files--;ot?m.set(pt.path,pt.packageJsonLocations):m.delete(pt.path)}),m.forEach((pt,j)=>{le!=null&&le.getSourceFileByPath(j)||(pt.forEach(ot=>$.get(ot).files--),m.delete(j))})),ye.forEach(je),$.forEach(at),b=!1,V.isReadonly=!0,G.isReadonly=!0,he.isReadonly=!0,V.getPackageJsonInfoCache().isReadonly=!0}function je(le,Fe){le.refCount===0&&(ye.delete(Fe),le.watcher.close())}function at(le,Fe){var pt;le.files===0&&le.resolutions===0&&!((pt=le.symlinks)!=null&&pt.size)&&($.delete(Fe),le.watcher.close())}function Gt({entries:le,containingFile:Fe,containingSourceFile:pt,redirectedReference:j,options:ot,perFileCache:Rt,reusedNames:Ye,loader:_t,getResolutionWithResolvedFileName:Vt,deferWatchingNonRelativeResolution:vn,shouldRetryResolution:fn,logChanges:_n}){const q=e.toPath(Fe),Oe=Rt.get(q)||Rt.set(q,TI()).get(q),Lt=[],L=_n&&De(q),_e=e.getCurrentProgram(),J=_e&&_e.getResolvedProjectReferenceToRedirect(Fe),me=J?!j||j.sourceFile.path!==J.sourceFile.path:!!j,Ge=TI();for(const Tt of le){const kt=_t.nameAndMode.getName(Tt),en=_t.nameAndMode.getMode(Tt,pt,(j==null?void 0:j.commandLine.options)||ot);let bn=Oe.get(kt,en);if(!Ge.has(kt,en)&&(O||me||!bn||bn.isInvalidated||L&&!Yc(kt)&&fn(bn))){const Bn=bn;bn=_t.resolve(kt,en),e.onDiscoveredSymlink&&$He(bn)&&e.onDiscoveredSymlink(),Oe.set(kt,en,bn),bn!==Bn&&(Pn(kt,bn,q,Vt,vn),Bn&&Mn(Bn,q,Vt)),_n&&i&&!ke(Bn,bn)&&(i.push(q),_n=!1)}else{const Bn=L7(e);if(Jg(ot,Bn)&&!Ge.has(kt,en)){const Hn=Vt(bn);bo(Bn,Rt===Z?Hn!=null&&Hn.resolvedFileName?Hn.packageId?f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved:Hn!=null&&Hn.resolvedFileName?Hn.packageId?f.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:f.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_successfully_resolved_to_2:f.Reusing_resolution_of_type_reference_directive_0_from_1_of_old_program_it_was_not_resolved,kt,Fe,Hn==null?void 0:Hn.resolvedFileName,(Hn==null?void 0:Hn.packageId)&&By(Hn.packageId))}}N.assert(bn!==void 0&&!bn.isInvalidated),Ge.set(kt,en,!0),Lt.push(bn)}return Ye==null||Ye.forEach(Tt=>Ge.set(_t.nameAndMode.getName(Tt),_t.nameAndMode.getMode(Tt,pt,(j==null?void 0:j.commandLine.options)||ot),!0)),Oe.size()!==Ge.size()&&Oe.forEach((Tt,kt,en)=>{Ge.has(kt,en)||(Mn(Tt,q,Vt),Oe.delete(kt,en))}),Lt;function ke(Tt,kt){if(Tt===kt)return!0;if(!Tt||!kt)return!1;const en=Vt(Tt),bn=Vt(kt);return en===bn?!0:!en||!bn?!1:en.resolvedFileName===bn.resolvedFileName}}function vt(le,Fe,pt,j,ot,Rt){return Gt({entries:le,containingFile:Fe,containingSourceFile:ot,redirectedReference:pt,options:j,reusedNames:Rt,perFileCache:se,loader:E7(Fe,pt,j,L7(e),G),getResolutionWithResolvedFileName:ie,shouldRetryResolution:Ye=>Ye.resolvedTypeReferenceDirective===void 0,deferWatchingNonRelativeResolution:!1})}function $e(le,Fe,pt,j,ot,Rt){return Gt({entries:le,containingFile:Fe,containingSourceFile:ot,redirectedReference:pt,options:j,reusedNames:Rt,perFileCache:Z,loader:jce(Fe,pt,j,e,V),getResolutionWithResolvedFileName:pe,shouldRetryResolution:Ye=>!Ye.resolvedModule||!$C(Ye.resolvedModule.extension),logChanges:r,deferWatchingNonRelativeResolution:!0})}function It(le,Fe,pt,j){const ot=L7(e);let Rt=ne==null?void 0:ne.get(j);if(!Rt||Rt.isInvalidated){const Ye=Rt;Rt=BF(le,Fe,pt,ot,he);const _t=e.toPath(Fe);Pn(le,Rt,_t,pe,!1),ne.set(j,Rt),Ye&&Mn(Ye,_t,pe)}else if(Jg(pt,ot)){const Ye=pe(Rt);bo(ot,Ye!=null&&Ye.resolvedFileName?Ye.packageId?f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2_with_Package_ID_3:f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_successfully_resolved_to_2:f.Reusing_resolution_of_module_0_from_1_of_old_program_it_was_not_resolved,le,Fe,Ye==null?void 0:Ye.resolvedFileName,(Ye==null?void 0:Ye.packageId)&&By(Ye.packageId))}return Rt}function tn(le,Fe){var pt,j;const ot=e.toPath(Fe),Rt=Z.get(ot),Ye=Rt==null?void 0:Rt.get(le,void 0);if(Ye&&!Ye.isInvalidated)return Ye;const _t=(pt=e.beforeResolveSingleModuleNameWithoutWatching)==null?void 0:pt.call(e,V),Vt=L7(e),vn=uD(le,Fe,e.getCompilationSettings(),Vt,V);return(j=e.afterResolveSingleModuleNameWithoutWatching)==null||j.call(e,V,le,Fe,vn,_t),vn}function rn(le){return Al(le,"/node_modules/@types")}function Pn(le,Fe,pt,j,ot){var Rt;if(Fe.refCount)Fe.refCount++,N.assertIsDefined(Fe.files);else{Fe.refCount=1,N.assert(!((Rt=Fe.files)!=null&&Rt.size)),!ot||Yc(le)?hn(Fe):l.add(le,Fe);const Ye=j(Fe);if(Ye&&Ye.resolvedFileName){const _t=e.toPath(Ye.resolvedFileName);let Vt=h.get(_t);Vt||h.set(_t,Vt=new Set),Vt.add(Fe)}}(Fe.files??(Fe.files=new Set)).add(pt)}function Xn(le,Fe){const pt=e.toPath(le),j=aK(le,pt,Y,oe,fe,U);if(j){const{dir:ot,dirPath:Rt,nonRecursive:Ye}=j;Rt===oe?(N.assert(Ye),Fe=!0):Oi(ot,Rt,Ye)}return Fe}function hn(le){N.assert(!!le.refCount);const{failedLookupLocations:Fe,affectingLocations:pt,alternateResult:j}=le;if(!(Fe!=null&&Fe.length)&&!(pt!=null&&pt.length)&&!j)return;(Fe!=null&&Fe.length||j)&&u.add(le);let ot=!1;if(Fe)for(const Rt of Fe)ot=Xn(Rt,ot);j&&(ot=Xn(j,ot)),ot&&Oi(Y,oe,!0),Qt(le,!(Fe!=null&&Fe.length)&&!j)}function Qt(le,Fe){N.assert(!!le.refCount);const{affectingLocations:pt}=le;if(pt!=null&&pt.length){Fe&&p.add(le);for(const j of pt)$t(j,!0)}}function $t(le,Fe){const pt=$.get(le);if(pt){Fe?pt.resolutions++:pt.files++;return}let j=le,ot=!1,Rt;e.realpath&&(j=e.realpath(le),le!==j&&(ot=!0,Rt=$.get(j)));const Ye=Fe?1:0,_t=Fe?0:1;if(!ot||!Rt){const Vt={watcher:zce(e.toPath(j))?e.watchAffectingFileLocation(j,(vn,fn)=>{K==null||K.addOrDeleteFile(vn,e.toPath(j),fn),_i(j,V.getPackageJsonInfoCache().getInternalMap()),e.scheduleInvalidateResolutionsOfFailedLookupLocations()}):SD,resolutions:ot?0:Ye,files:ot?0:_t,symlinks:void 0};$.set(j,Vt),ot&&(Rt=Vt)}if(ot){N.assert(!!Rt);const Vt={watcher:{close:()=>{var vn;const fn=$.get(j);(vn=fn==null?void 0:fn.symlinks)!=null&&vn.delete(le)&&!fn.symlinks.size&&!fn.resolutions&&!fn.files&&($.delete(j),fn.watcher.close())}},resolutions:Ye,files:_t,symlinks:void 0};$.set(le,Vt),(Rt.symlinks??(Rt.symlinks=new Set)).add(le)}}function _i(le,Fe){var pt;const j=$.get(le);j!=null&&j.resolutions&&(I??(I=new Set)).add(le),j!=null&&j.files&&(A??(A=new Set)).add(le),(pt=j==null?void 0:j.symlinks)==null||pt.forEach(ot=>_i(ot,Fe)),Fe==null||Fe.delete(e.toPath(le))}function ao(le,Fe){const pt=e.getCurrentProgram();!pt||!pt.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(Fe)?le.forEach(hn):le.forEach(j=>Qt(j,!0))}function Oi(le,Fe,pt){const j=ye.get(Fe);j?(N.assert(!!pt==!!j.nonRecursive),j.refCount++):ye.set(Fe,{watcher:Ar(le,Fe,pt),refCount:1,nonRecursive:pt})}function No(le,Fe,pt){const j=e.toPath(le),ot=aK(le,j,Y,oe,fe,U);if(ot){const{dirPath:Rt}=ot;Rt===oe?Fe=!0:Di(Rt,pt)}return Fe}function Mn(le,Fe,pt,j){if(N.checkDefined(le.files).delete(Fe),le.refCount--,le.refCount)return;const ot=pt(le);if(ot&&ot.resolvedFileName){const Vt=e.toPath(ot.resolvedFileName),vn=h.get(Vt);vn!=null&&vn.delete(le)&&!vn.size&&h.delete(Vt)}const{failedLookupLocations:Rt,affectingLocations:Ye,alternateResult:_t}=le;if(u.delete(le)){let Vt=!1;if(Rt)for(const vn of Rt)Vt=No(vn,Vt,j);_t&&(Vt=No(_t,Vt,j)),Vt&&Di(oe,j)}else Ye!=null&&Ye.length&&p.delete(le);if(Ye)for(const Vt of Ye){const vn=$.get(Vt);vn.resolutions--,j&&at(vn,Vt)}}function Di(le,Fe){const pt=ye.get(le);pt.refCount--,Fe&&je(pt,le)}function Ar(le,Fe,pt){return e.watchDirectoryOfFailedLookupLocation(le,j=>{const ot=e.toPath(j);K&&K.addOrDeleteFileOrDirectory(j,ot),Qi(ot,Fe===ot)},pt?0:1)}function sn(le,Fe,pt,j){const ot=le.get(Fe);ot&&(ot.forEach(Rt=>Mn(Rt,Fe,pt,j)),le.delete(Fe))}function tt(le){if(!Il(le,".json"))return;const Fe=e.getCurrentProgram();if(!Fe)return;const pt=Fe.getResolvedProjectReferenceByPath(le);pt&&pt.commandLine.fileNames.forEach(j=>zt(e.toPath(j)))}function zt(le,Fe){sn(Z,le,pe,Fe),sn(se,le,ie,Fe)}function Rn(le,Fe){if(!le)return!1;let pt=!1;return le.forEach(j=>{if(!(j.isInvalidated||!Fe(j))){j.isInvalidated=pt=!0;for(const ot of N.checkDefined(j.files))(o??(o=new Set)).add(ot),b=b||Al(ot,yD)}}),pt}function li(le){zt(le);const Fe=b;Rn(h.get(le),Pv)&&b&&!Fe&&e.onChangedAutomaticTypeDirectiveNames()}function hi(le){N.assert(s===le||s===void 0),s=le}function Qi(le,Fe){if(Fe)(C||(C=new Set)).add(le);else{const pt=P7(le);if(!pt||(le=pt,e.fileIsOpen(le)))return!1;const j=ai(le);if(rn(le)||d4(le)||rn(j)||d4(j))(R||(R=new Set)).add(le),(M||(M=new Set)).add(le);else{if(_ce(e.getCurrentProgram(),le)||Il(le,".map"))return!1;(R||(R=new Set)).add(le);const ot=xw(le,!0);ot&&(M||(M=new Set)).add(ot)}}e.scheduleInvalidateResolutionsOfFailedLookupLocations()}function Io(){const le=V.getPackageJsonInfoCache().getInternalMap();le&&(R||M||C)&&le.forEach((Fe,pt)=>Sn(pt)?le.delete(pt):void 0)}function ma(){var le;if(O)return A=void 0,Io(),(R||M||C||I)&&Rn(ne,Wa),R=void 0,M=void 0,C=void 0,I=void 0,!0;let Fe=!1;return A&&((le=e.getCurrentProgram())==null||le.getSourceFiles().forEach(pt=>{bt(pt.packageJsonLocations,j=>A.has(j))&&((o??(o=new Set)).add(pt.path),Fe=!0)}),A=void 0),!R&&!M&&!C&&!I||(Fe=Rn(u,Wa)||Fe,Io(),R=void 0,M=void 0,C=void 0,Fe=Rn(p,kn)||Fe,I=void 0),Fe}function Wa(le){var Fe;return kn(le)?!0:!R&&!M&&!C?!1:((Fe=le.failedLookupLocations)==null?void 0:Fe.some(pt=>Sn(e.toPath(pt))))||!!le.alternateResult&&Sn(e.toPath(le.alternateResult))}function Sn(le){return(R==null?void 0:R.has(le))||dn((M==null?void 0:M.keys())||[],Fe=>uo(le,Fe)?!0:void 0)||dn((C==null?void 0:C.keys())||[],Fe=>le.length>Fe.length&&uo(le,Fe)&&(OV(Fe)||le[Fe.length]===al)?!0:void 0)}function kn(le){var Fe;return!!I&&((Fe=le.affectingLocations)==null?void 0:Fe.some(pt=>I.has(pt)))}function qe(){tp(Ne,Qm)}function mt(le){return Ct(le)?e.watchTypeRootsDirectory(le,Fe=>{const pt=e.toPath(Fe);K&&K.addOrDeleteFileOrDirectory(Fe,pt),b=!0,e.onChangedAutomaticTypeDirectiveNames();const j=Gce(le,e.toPath(le),oe,fe,U,ot=>ye.has(ot));j&&Qi(pt,j===pt)},1):SD}function ft(){const le=e.getCompilationSettings();if(le.types){qe();return}const Fe=OP(le,{getCurrentDirectory:U});Fe?JC(Ne,new Set(Fe),{createNewValue:mt,onDeleteValue:Qm}):qe()}function Ct(le){return e.getCompilationSettings().typeRoots?!0:Fce(e.toPath(le))}}function $He(e){var t,r;return!!((t=e.resolvedModule)!=null&&t.originalPath||(r=e.resolvedTypeReferenceDirective)!=null&&r.originalPath)}var QHe=T({"src/compiler/resolutionCache.ts"(){ra()}});function Xw(e,t){const r=e===gu&&Yce?Yce:{getCurrentDirectory:()=>e.getCurrentDirectory(),getNewLine:()=>e.newLine,getCanonicalFileName:Mu(e.useCaseSensitiveFileNames)};if(!t)return o=>e.write(wJ(o,r));const i=new Array(1);return o=>{i[0]=o,e.write(yce(i,r)+r.getNewLine()),i[0]=void 0}}function LRe(e,t,r){return e.clearScreen&&!r.preserveWatchOutput&&!r.extendedDiagnostics&&!r.diagnostics&&Nr(z7,t.code)?(e.clearScreen(),!0):!1}function ZHe(e,t){return Nr(z7,e.code)?t+t:t}function Yw(e){return e.now?e.now().toLocaleTimeString("en-US",{timeZone:"UTC"}).replace(" "," "):new Date().toLocaleTimeString()}function Uce(e,t){return t?(r,i,o)=>{LRe(e,r,o);let s=`[${v1(Yw(e),"\x1B[90m")}] `;s+=`${z_(r.messageText,e.newLine)}${i+i}`,e.write(s)}:(r,i,o)=>{let s="";LRe(e,r,o)||(s+=i),s+=`${Yw(e)} - `,s+=`${z_(r.messageText,e.newLine)}${ZHe(r,i)}`,e.write(s)}}function kRe(e,t,r,i,o,s){const l=o;l.onUnRecoverableConfigFileDiagnostic=p=>WRe(o,s,p);const u=fw(e,t,l,r,i);return l.onUnRecoverableConfigFileDiagnostic=void 0,u}function k7(e){return au(e,t=>t.category===1)}function w7(e){return nr(e,r=>r.category===1).map(r=>{if(r.file!==void 0)return`${r.file.fileName}`}).map(r=>{if(r===void 0)return;const i=An(e,o=>o.file!==void 0&&o.file.fileName===r);if(i!==void 0){const{line:o}=bs(i.file,i.start);return{fileName:r,line:o+1}}})}function lK(e){return e===1?f.Found_1_error_Watching_for_file_changes:f.Found_0_errors_Watching_for_file_changes}function wRe(e,t){const r=v1(":"+e.line,"\x1B[90m");return nC(e.fileName)&&nC(t)?Em(t,e.fileName,!1)+r:e.fileName+r}function Hce(e,t,r,i){if(e===0)return"";const o=t.filter(m=>m!==void 0),s=o.map(m=>`${m.fileName}:${m.line}`).filter((m,b,A)=>A.indexOf(m)===b),l=o[0]&&wRe(o[0],i.getCurrentDirectory());let u;e===1?u=t[0]!==void 0?[f.Found_1_error_in_0,l]:[f.Found_1_error]:u=s.length===0?[f.Found_0_errors,e]:s.length===1?[f.Found_0_errors_in_the_same_file_starting_at_Colon_1,e,l]:[f.Found_0_errors_in_1_files,e,s.length];const p=Hl(...u),h=s.length>1?eqe(o,i):"";return`${r}${z_(p.messageText,r)}${r}${r}${h}`}function eqe(e,t){const r=e.filter((b,A,I)=>A===I.findIndex(R=>(R==null?void 0:R.fileName)===(b==null?void 0:b.fileName)));if(r.length===0)return"";const i=b=>Math.log(b)*Math.LOG10E+1,o=r.map(b=>[b,au(e,A=>A.fileName===b.fileName)]),s=o.reduce((b,A)=>Math.max(b,A[1]||0),0),l=f.Errors_Files.message,u=l.split(" ")[0].length,p=Math.max(u,i(s)),h=Math.max(i(s)-u,0);let m="";return m+=" ".repeat(h)+l+`
+`,o.forEach(b=>{const[A,I]=b,R=Math.log(I)*Math.LOG10E+1|0,M=R<p?" ".repeat(p-R):"",C=wRe(A,t.getCurrentDirectory());m+=`${M}${I} ${C}
+`}),m}function qce(e){return!!e.getState}function cK(e,t){const r=e.getCompilerOptions();r.explainFiles?uK(qce(e)?e.getProgram():e,t):(r.listFiles||r.listFilesOnly)&&Ue(e.getSourceFiles(),i=>{t(i.fileName)})}function uK(e,t){var r,i;const o=e.getFileIncludeReasons(),s=l=>rC(l,e.getCurrentDirectory(),e.getCanonicalFileName);for(const l of e.getSourceFiles())t(`${ED(l,s)}`),(r=o.get(l.path))==null||r.forEach(u=>t(` ${mK(e,u,s).messageText}`)),(i=dK(l,s))==null||i.forEach(u=>t(` ${u.messageText}`))}function dK(e,t){var r;let i;if(e.path!==e.resolvedPath&&(i??(i=[])).push(jo(void 0,f.File_is_output_of_project_reference_source_0,ED(e.originalFileName,t))),e.redirectInfo&&(i??(i=[])).push(jo(void 0,f.File_redirects_to_file_0,ED(e.redirectInfo.redirectTarget,t))),zp(e))switch(e.impliedNodeFormat){case 99:e.packageJsonScope&&(i??(i=[])).push(jo(void 0,f.File_is_ECMAScript_module_because_0_has_field_type_with_value_module,ED(Ya(e.packageJsonLocations),t)));break;case 1:e.packageJsonScope?(i??(i=[])).push(jo(void 0,e.packageJsonScope.contents.packageJsonContent.type?f.File_is_CommonJS_module_because_0_has_field_type_whose_value_is_not_module:f.File_is_CommonJS_module_because_0_does_not_have_field_type,ED(Ya(e.packageJsonLocations),t))):(r=e.packageJsonLocations)!=null&&r.length&&(i??(i=[])).push(jo(void 0,f.File_is_CommonJS_module_because_package_json_was_not_found));break}return i}function pK(e,t){var r;const i=e.getCompilerOptions().configFile;if(!((r=i==null?void 0:i.configFileSpecs)!=null&&r.validatedFilesSpec))return;const o=e.getCanonicalFileName(t),s=ai(go(i.fileName,e.getCurrentDirectory()));return An(i.configFileSpecs.validatedFilesSpec,l=>e.getCanonicalFileName(go(l,s))===o)}function fK(e,t){var r,i;const o=e.getCompilerOptions().configFile;if(!((r=o==null?void 0:o.configFileSpecs)!=null&&r.validatedIncludeSpecs))return;if(o.configFileSpecs.isDefaultIncludeSpec)return!0;const s=Il(t,".json"),l=ai(go(o.fileName,e.getCurrentDirectory())),u=e.useCaseSensitiveFileNames();return An((i=o==null?void 0:o.configFileSpecs)==null?void 0:i.validatedIncludeSpecs,p=>{if(s&&!Al(p,".json"))return!1;const h=Hoe(p,l,"files");return!!h&&qy(`(${h})$`,u).test(t)})}function mK(e,t,r){var i,o;const s=e.getCompilerOptions();if(w0(t)){const l=QP(e,t),u=gD(l)?l.file.text.substring(l.pos,l.end):`"${l.text}"`;let p;switch(N.assert(gD(l)||t.kind===3,"Only synthetic references are imports"),t.kind){case 3:gD(l)?p=l.packageId?f.Imported_via_0_from_file_1_with_packageId_2:f.Imported_via_0_from_file_1:l.text===Ky?p=l.packageId?f.Imported_via_0_from_file_1_with_packageId_2_to_import_importHelpers_as_specified_in_compilerOptions:f.Imported_via_0_from_file_1_to_import_importHelpers_as_specified_in_compilerOptions:p=l.packageId?f.Imported_via_0_from_file_1_with_packageId_2_to_import_jsx_and_jsxs_factory_functions:f.Imported_via_0_from_file_1_to_import_jsx_and_jsxs_factory_functions;break;case 4:N.assert(!l.packageId),p=f.Referenced_via_0_from_file_1;break;case 5:p=l.packageId?f.Type_library_referenced_via_0_from_file_1_with_packageId_2:f.Type_library_referenced_via_0_from_file_1;break;case 7:N.assert(!l.packageId),p=f.Library_referenced_via_0_from_file_1;break;default:N.assertNever(t)}return jo(void 0,p,u,ED(l.file,r),l.packageId&&By(l.packageId))}switch(t.kind){case 0:if(!((i=s.configFile)!=null&&i.configFileSpecs))return jo(void 0,f.Root_file_specified_for_compilation);const l=go(e.getRootFileNames()[t.index],e.getCurrentDirectory());if(pK(e,l))return jo(void 0,f.Part_of_files_list_in_tsconfig_json);const p=fK(e,l);return Po(p)?jo(void 0,f.Matched_by_include_pattern_0_in_1,p,ED(s.configFile,r)):jo(void 0,p?f.Matched_by_default_include_pattern_Asterisk_Asterisk_Slash_Asterisk:f.Root_file_specified_for_compilation);case 1:case 2:const h=t.kind===2,m=N.checkDefined((o=e.getResolvedProjectReferences())==null?void 0:o[t.index]);return jo(void 0,Ps(s)?h?f.Output_from_referenced_project_0_included_because_1_specified:f.Source_from_referenced_project_0_included_because_1_specified:h?f.Output_from_referenced_project_0_included_because_module_is_specified_as_none:f.Source_from_referenced_project_0_included_because_module_is_specified_as_none,ED(m.sourceFile.fileName,r),s.outFile?"--outFile":"--out");case 8:{const b=s.types?t.packageId?[f.Entry_point_of_type_library_0_specified_in_compilerOptions_with_packageId_1,t.typeReference,By(t.packageId)]:[f.Entry_point_of_type_library_0_specified_in_compilerOptions,t.typeReference]:t.packageId?[f.Entry_point_for_implicit_type_library_0_with_packageId_1,t.typeReference,By(t.packageId)]:[f.Entry_point_for_implicit_type_library_0,t.typeReference];return jo(void 0,...b)}case 6:{if(t.index!==void 0)return jo(void 0,f.Library_0_specified_in_compilerOptions,s.lib[t.index]);const b=Gc(Ew.type,(I,R)=>I===os(s)?R:void 0),A=b?[f.Default_library_for_target_0,b]:[f.Default_library];return jo(void 0,...A)}default:N.assertNever(t)}}function ED(e,t){const r=Po(e)?e:e.fileName;return t?t(r):r}function O7(e,t,r,i,o,s,l,u){const p=!!e.getCompilerOptions().listFilesOnly,h=e.getConfigFileParsingDiagnostics().slice(),m=h.length;Jr(h,e.getSyntacticDiagnostics(void 0,s)),h.length===m&&(Jr(h,e.getOptionsDiagnostics(s)),p||(Jr(h,e.getGlobalDiagnostics(s)),h.length===m&&Jr(h,e.getSemanticDiagnostics(void 0,s))));const b=p?{emitSkipped:!0,diagnostics:et}:e.emit(void 0,o,s,l,u),{emittedFiles:A,diagnostics:I}=b;Jr(h,I);const R=Yx(h);if(R.forEach(t),r){const M=e.getCurrentDirectory();Ue(A,C=>{const O=go(C,M);r(`TSFILE: ${O}`)}),cK(e,r)}return i&&i(k7(R),w7(R)),{emitResult:b,diagnostics:R}}function Jce(e,t,r,i,o,s,l,u){const{emitResult:p,diagnostics:h}=O7(e,t,r,i,o,s,l,u);return p.emitSkipped&&h.length>0?1:h.length>0?2:0}function _K(e=gu,t){return{onWatchStatusChange:t||Uce(e),watchFile:oa(e,e.watchFile)||TD,watchDirectory:oa(e,e.watchDirectory)||TD,setTimeout:oa(e,e.setTimeout)||$a,clearTimeout:oa(e,e.clearTimeout)||$a}}function hK(e,t){const r=e.trace?t.extendedDiagnostics?2:t.diagnostics?1:0:0,i=r!==0?s=>e.trace(s):$a,o=NJ(e,r,i);return o.writeLog=i,o}function gK(e,t,r=e){const i=e.useCaseSensitiveFileNames(),o={getSourceFile:MJ((s,l)=>l?e.readFile(s,l):o.readFile(s),t,void 0),getDefaultLibLocation:oa(e,e.getDefaultLibLocation),getDefaultLibFileName:s=>e.getDefaultLibFileName(s),writeFile:LJ((s,l,u)=>e.writeFile(s,l,u),s=>e.createDirectory(s),s=>e.directoryExists(s)),getCurrentDirectory:Td(()=>e.getCurrentDirectory()),useCaseSensitiveFileNames:()=>i,getCanonicalFileName:Mu(i),getNewLine:()=>Uv(t()),fileExists:s=>e.fileExists(s),readFile:s=>e.readFile(s),trace:oa(e,e.trace),directoryExists:oa(r,r.directoryExists),getDirectories:oa(r,r.getDirectories),realpath:oa(e,e.realpath),getEnvironmentVariable:oa(e,e.getEnvironmentVariable)||(()=>""),createHash:oa(e,e.createHash),readDirectory:oa(e,e.readDirectory),storeFilesChangingSignatureDuringEmit:e.storeFilesChangingSignatureDuringEmit,jsDocParsingMode:e.jsDocParsingMode};return o}function W7(e,t){if(t.match(rJ)){let r=t.length,i=r;for(let o=r-1;o>=0;o--){const s=t.charCodeAt(o);switch(s){case 10:o&&t.charCodeAt(o-1)===13&&o--;case 13:break;default:if(s<127||!Hu(s)){i=o;continue}break}const l=t.substring(i,r);if(l.match(e7)){t=t.substring(0,i);break}else if(!l.match(t7))break;r=i}}return(e.createHash||tC)(t)}function F7(e){const t=e.getSourceFile;e.getSourceFile=(...r)=>{const i=t.call(e,...r);return i&&(i.version=W7(e,i.text)),i}}function vK(e,t){const r=Td(()=>ai(ga(e.getExecutingFilePath())));return{useCaseSensitiveFileNames:()=>e.useCaseSensitiveFileNames,getNewLine:()=>e.newLine,getCurrentDirectory:Td(()=>e.getCurrentDirectory()),getDefaultLibLocation:r,getDefaultLibFileName:i=>Qr(r(),aL(i)),fileExists:i=>e.fileExists(i),readFile:(i,o)=>e.readFile(i,o),directoryExists:i=>e.directoryExists(i),getDirectories:i=>e.getDirectories(i),readDirectory:(i,o,s,l,u)=>e.readDirectory(i,o,s,l,u),realpath:oa(e,e.realpath),getEnvironmentVariable:oa(e,e.getEnvironmentVariable),trace:i=>e.write(i+e.newLine),createDirectory:i=>e.createDirectory(i),writeFile:(i,o,s)=>e.writeFile(i,o,s),createHash:oa(e,e.createHash),createProgram:t||oK,storeFilesChangingSignatureDuringEmit:e.storeFilesChangingSignatureDuringEmit,now:oa(e,e.now)}}function ORe(e=gu,t,r,i){const o=l=>e.write(l+e.newLine),s=vK(e,t);return gG(s,_K(e,i)),s.afterProgramCreate=l=>{const u=l.getCompilerOptions(),p=Uv(u);O7(l,r,o,h=>s.onWatchStatusChange(Hl(lK(h),h),p,u,h))},s}function WRe(e,t,r){t(r),e.exit(1)}function Kce({configFileName:e,optionsToExtend:t,watchOptionsToExtend:r,extraFileExtensions:i,system:o,createProgram:s,reportDiagnostic:l,reportWatchStatus:u}){const p=l||Xw(o),h=ORe(o,s,p,u);return h.onUnRecoverableConfigFileDiagnostic=m=>WRe(o,p,m),h.configFileName=e,h.optionsToExtend=t,h.watchOptionsToExtend=r,h.extraFileExtensions=i,h}function Xce({rootFiles:e,options:t,watchOptions:r,projectReferences:i,system:o,createProgram:s,reportDiagnostic:l,reportWatchStatus:u}){const p=ORe(o,s,l||Xw(o),u);return p.rootFiles=e,p.options=t,p.watchOptions=r,p.projectReferences=i,p}function FRe(e){const t=e.system||gu,r=e.host||(e.host=yK(e.options,t)),i=$ce(e),o=Jce(i,e.reportDiagnostic||Xw(t),s=>r.trace&&r.trace(s),e.reportErrorSummary||e.options.pretty?(s,l)=>t.write(Hce(s,l,t.newLine,r)):void 0);return e.afterProgramEmitAndDiagnostics&&e.afterProgramEmitAndDiagnostics(i),o}var Yce,z7,SD,TD,wc,tqe=T({"src/compiler/watch.ts"(){ra(),Yce=gu?{getCurrentDirectory:()=>gu.getCurrentDirectory(),getNewLine:()=>gu.newLine,getCanonicalFileName:Mu(gu.useCaseSensitiveFileNames)}:void 0,z7=[f.Starting_compilation_in_watch_mode.code,f.File_change_detected_Starting_incremental_compilation.code],SD={close:$a},TD=()=>SD,wc={ConfigFile:"Config file",ExtendedConfigFile:"Extended config file",SourceFile:"Source file",MissingFile:"Missing file",WildcardDirectory:"Wild card directory",FailedLookupLocations:"Failed Lookup Locations",AffectingFileLocation:"File location affecting resolution",TypeRoots:"Type roots",ConfigFileOfReferencedProject:"Config file of referened project",ExtendedConfigOfReferencedProject:"Extended config file of referenced project",WildcardDirectoryOfReferencedProject:"Wild card directory of referenced project",PackageJson:"package.json file",ClosedScriptInfo:"Closed Script info",ConfigFileForInferredRoot:"Config file for the inferred project root",NodeModules:"node_modules for closed script infos and package.jsons affecting module specifier cache",MissingSourceMapFile:"Missing source map file",NoopConfigFileForInferredRoot:"Noop Config file for the inferred project root",MissingGeneratedFile:"Missing generated file",NodeModulesForModuleSpecifierCache:"node_modules for module specifier cache invalidation",TypingInstallerLocationFile:"File location for typing installer",TypingInstallerLocationDirectory:"Directory location for typing installer"}}});function B7(e,t){const r=$v(e);if(!r)return;let i;if(t.getBuildInfo)i=t.getBuildInfo(r,e.configFilePath);else{const o=t.readFile(r);if(!o)return;i=_7(r,o)}if(!(!i||i.version!==Re||!i.program))return Oce(i,r,t)}function yK(e,t=gu){const r=kJ(e,void 0,t);return r.createHash=oa(t,t.createHash),r.storeFilesChangingSignatureDuringEmit=t.storeFilesChangingSignatureDuringEmit,F7(r),Uw(r,i=>ol(i,r.getCurrentDirectory(),r.getCanonicalFileName)),r}function $ce({rootNames:e,options:t,configFileParsingDiagnostics:r,projectReferences:i,host:o,createProgram:s}){o=o||yK(t),s=s||oK;const l=B7(t,o);return s(e,t,o,l,r,i)}function zRe(e,t,r,i,o,s,l,u){return To(e)?Xce({rootFiles:e,options:t,watchOptions:u,projectReferences:l,system:r,createProgram:i,reportDiagnostic:o,reportWatchStatus:s}):Kce({configFileName:e,optionsToExtend:t,watchOptionsToExtend:l,extraFileExtensions:u,system:r,createProgram:i,reportDiagnostic:o,reportWatchStatus:s})}function BRe(e){let t,r,i,o,s,l,u,p,h=e.extendedConfigCache,m=!1;const b=new Map;let A,I=!1;const R=e.useCaseSensitiveFileNames(),M=e.getCurrentDirectory(),{configFileName:C,optionsToExtend:O={},watchOptionsToExtend:U,extraFileExtensions:K,createProgram:Z}=e;let{rootFiles:V,options:se,watchOptions:G,projectReferences:ne}=e,he,ye,$=!1,Y=!1;const oe=C===void 0?void 0:g7(e,M,R),fe=oe||e,Ne=x7(e,fe);let pe=Pn();C&&e.configFileParsingResult&&(Wa(e.configFileParsingResult),pe=Pn()),Mn(f.Starting_compilation_in_watch_mode),C&&!e.configFileParsingResult&&(pe=Uv(O),N.assert(!V),ma(),pe=Pn()),N.assert(se),N.assert(V);const{watchFile:ie,watchDirectory:ve,writeLog:Le}=hK(e,se),He=Mu(R);Le(`Current directory: ${M} CaseSensitiveFileNames: ${R}`);let Ee;C&&(Ee=ie(C,Rn,2e3,G,wc.ConfigFile));const De=gK(e,()=>se,fe);F7(De);const Pe=De.getSourceFile;De.getSourceFile=(Ye,..._t)=>_i(Ye,Xn(Ye),..._t),De.getSourceFileByPath=_i,De.getNewLine=()=>pe,De.fileExists=$t,De.onReleaseOldSourceFile=No,De.onReleaseParsedCommandLine=qe,De.toPath=Xn,De.getCompilationSettings=()=>se,De.useSourceOfProjectReferenceRedirect=oa(e,e.useSourceOfProjectReferenceRedirect),De.watchDirectoryOfFailedLookupLocation=(Ye,_t,Vt)=>ve(Ye,_t,Vt,G,wc.FailedLookupLocations),De.watchAffectingFileLocation=(Ye,_t)=>ie(Ye,_t,2e3,G,wc.AffectingFileLocation),De.watchTypeRootsDirectory=(Ye,_t,Vt)=>ve(Ye,_t,Vt,G,wc.TypeRoots),De.getCachedDirectoryStructureHost=()=>oe,De.scheduleInvalidateResolutionsOfFailedLookupLocations=sn,De.onInvalidatedResolution=zt,De.onChangedAutomaticTypeDirectiveNames=zt,De.fileIsOpen=Xm,De.getCurrentProgram=$e,De.writeLog=Le,De.getParsedCommandLine=Sn;const We=sK(De,C?ai(go(C,M)):M,!1);De.resolveModuleNameLiterals=oa(e,e.resolveModuleNameLiterals),De.resolveModuleNames=oa(e,e.resolveModuleNames),!De.resolveModuleNameLiterals&&!De.resolveModuleNames&&(De.resolveModuleNameLiterals=We.resolveModuleNameLiterals.bind(We)),De.resolveTypeReferenceDirectiveReferences=oa(e,e.resolveTypeReferenceDirectiveReferences),De.resolveTypeReferenceDirectives=oa(e,e.resolveTypeReferenceDirectives),!De.resolveTypeReferenceDirectiveReferences&&!De.resolveTypeReferenceDirectives&&(De.resolveTypeReferenceDirectiveReferences=We.resolveTypeReferenceDirectiveReferences.bind(We)),De.resolveLibrary=e.resolveLibrary?e.resolveLibrary.bind(e):We.resolveLibrary.bind(We),De.getModuleResolutionCache=e.resolveModuleNameLiterals||e.resolveModuleNames?oa(e,e.getModuleResolutionCache):()=>We.getModuleResolutionCache();const Se=!!e.resolveModuleNameLiterals||!!e.resolveTypeReferenceDirectiveReferences||!!e.resolveModuleNames||!!e.resolveTypeReferenceDirectives?oa(e,e.hasInvalidatedResolutions)||Pv:Xm,je=e.resolveLibrary?oa(e,e.hasInvalidatedLibResolutions)||Pv:Xm;return t=B7(se,De),It(),pt(),C&&ot(Xn(C),se,G,wc.ExtendedConfigFile),C?{getCurrentProgram:vt,getProgram:hi,close:at,getResolutionCache:Gt}:{getCurrentProgram:vt,getProgram:hi,updateRootFileNames:rn,close:at,getResolutionCache:Gt};function at(){Ar(),We.clear(),tp(b,Ye=>{Ye&&Ye.fileWatcher&&(Ye.fileWatcher.close(),Ye.fileWatcher=void 0)}),Ee&&(Ee.close(),Ee=void 0),h==null||h.clear(),h=void 0,p&&(tp(p,Mf),p=void 0),o&&(tp(o,Mf),o=void 0),i&&(tp(i,Qm),i=void 0),u&&(tp(u,Ye=>{var _t;(_t=Ye.watcher)==null||_t.close(),Ye.watcher=void 0,Ye.watchedDirectories&&tp(Ye.watchedDirectories,Mf),Ye.watchedDirectories=void 0}),u=void 0)}function Gt(){return We}function vt(){return t}function $e(){return t&&t.getProgramOrUndefined()}function It(){Le("Synchronizing program"),N.assert(se),N.assert(V),Ar();const Ye=vt();I&&(pe=Pn(),Ye&&W4(Ye.getCompilerOptions(),se)&&We.onChangesAffectModuleResolution());const{hasInvalidatedResolutions:_t,hasInvalidatedLibResolutions:Vt}=We.createHasInvalidatedResolutions(Se,je),{originalReadFile:vn,originalFileExists:fn,originalDirectoryExists:_n,originalCreateDirectory:q,originalWriteFile:Oe,readFileWithCache:Lt}=Uw(De,Xn);return UJ($e(),V,se,L=>Oi(L,Lt),L=>De.fileExists(L),_t,Vt,Di,Sn,ne)?Y&&(m&&Mn(f.File_change_detected_Starting_incremental_compilation),t=Z(void 0,void 0,De,t,ye,ne),Y=!1):(m&&Mn(f.File_change_detected_Starting_incremental_compilation),tn(_t,Vt)),m=!1,e.afterProgramCreate&&Ye!==t&&e.afterProgramCreate(t),De.readFile=vn,De.fileExists=fn,De.directoryExists=_n,De.createDirectory=q,De.writeFile=Oe,t}function tn(Ye,_t){Le("CreatingProgramWith::"),Le(` roots: ${JSON.stringify(V)}`),Le(` options: ${JSON.stringify(se)}`),ne&&Le(` projectReferences: ${JSON.stringify(ne)}`);const Vt=I||!$e();I=!1,Y=!1,We.startCachingPerDirectoryResolution(),De.hasInvalidatedResolutions=Ye,De.hasInvalidatedLibResolutions=_t,De.hasChangedAutomaticTypeDirectiveNames=Di;const vn=$e();if(t=Z(V,se,De,t,ye,ne),We.finishCachingPerDirectoryResolution(t.getProgram(),vn),DJ(t.getProgram(),i||(i=new Map),le),Vt&&We.updateTypeRootsWatch(),A){for(const fn of A)i.has(fn)||b.delete(fn);A=void 0}}function rn(Ye){N.assert(!C,"Cannot update root file names with config file watch mode"),V=Ye,zt()}function Pn(){return Uv(se||O)}function Xn(Ye){return ol(Ye,M,He)}function hn(Ye){return typeof Ye=="boolean"}function Qt(Ye){return typeof Ye.version=="boolean"}function $t(Ye){const _t=Xn(Ye);return hn(b.get(_t))?!1:fe.fileExists(Ye)}function _i(Ye,_t,Vt,vn,fn){const _n=b.get(_t);if(hn(_n))return;const q=typeof Vt=="object"?Vt.impliedNodeFormat:void 0;if(_n===void 0||fn||Qt(_n)||_n.sourceFile.impliedNodeFormat!==q){const Oe=Pe(Ye,Vt,vn);if(_n)Oe?(_n.sourceFile=Oe,_n.version=Oe.version,_n.fileWatcher||(_n.fileWatcher=mt(_t,Ye,ft,250,G,wc.SourceFile))):(_n.fileWatcher&&_n.fileWatcher.close(),b.set(_t,!1));else if(Oe){const Lt=mt(_t,Ye,ft,250,G,wc.SourceFile);b.set(_t,{sourceFile:Oe,version:Oe.version,fileWatcher:Lt})}else b.set(_t,!1);return Oe}return _n.sourceFile}function ao(Ye){const _t=b.get(Ye);_t!==void 0&&(hn(_t)?b.set(Ye,{version:!1}):_t.version=!1)}function Oi(Ye,_t){const Vt=b.get(Ye);if(!Vt)return;if(Vt.version)return Vt.version;const vn=_t(Ye);return vn!==void 0?W7(De,vn):void 0}function No(Ye,_t,Vt){const vn=b.get(Ye.resolvedPath);vn!==void 0&&(hn(vn)?(A||(A=[])).push(Ye.path):vn.sourceFile===Ye&&(vn.fileWatcher&&vn.fileWatcher.close(),b.delete(Ye.resolvedPath),Vt||We.removeResolutionsOfFile(Ye.path)))}function Mn(Ye){e.onWatchStatusChange&&e.onWatchStatusChange(Hl(Ye),pe,se||O)}function Di(){return We.hasChangedAutomaticTypeDirectiveNames()}function Ar(){return l?(e.clearTimeout(l),l=void 0,!0):!1}function sn(){if(!e.setTimeout||!e.clearTimeout)return We.invalidateResolutionsOfFailedLookupLocations();const Ye=Ar();Le(`Scheduling invalidateFailedLookup${Ye?", Cancelled earlier one":""}`),l=e.setTimeout(tt,250,"timerToInvalidateFailedLookupResolutions")}function tt(){l=void 0,We.invalidateResolutionsOfFailedLookupLocations()&&zt()}function zt(){!e.setTimeout||!e.clearTimeout||(s&&e.clearTimeout(s),Le("Scheduling update"),s=e.setTimeout(li,250,"timerToUpdateProgram"))}function Rn(){N.assert(!!C),r=2,zt()}function li(){s=void 0,m=!0,hi()}function hi(){var Ye,_t,Vt,vn;switch(r){case 1:(Ye=ad)==null||Ye.logStartUpdateProgram("PartialConfigReload"),Qi();break;case 2:(_t=ad)==null||_t.logStartUpdateProgram("FullConfigReload"),Io();break;default:(Vt=ad)==null||Vt.logStartUpdateProgram("SynchronizeProgram"),It();break}return(vn=ad)==null||vn.logStopUpdateProgram("Done"),vt()}function Qi(){Le("Reloading new file names and options"),N.assert(se),N.assert(C),r=0,V=LP(se.configFile.configFileSpecs,go(ai(C),M),se,Ne,K),xF(V,go(C,M),se.configFile.configFileSpecs,ye,$)&&(Y=!0),It()}function Io(){N.assert(C),Le(`Reloading config file: ${C}`),r=0,oe&&oe.clearCache(),ma(),I=!0,It(),pt(),ot(Xn(C),se,G,wc.ExtendedConfigFile)}function ma(){N.assert(C),Wa(fw(C,O,Ne,h||(h=new Map),U,K))}function Wa(Ye){V=Ye.fileNames,se=Ye.options,G=Ye.watchOptions,ne=Ye.projectReferences,he=Ye.wildcardDirectories,ye=rT(Ye).slice(),$=MP(Ye.raw),Y=!0}function Sn(Ye){const _t=Xn(Ye);let Vt=u==null?void 0:u.get(_t);if(Vt){if(!Vt.updateLevel)return Vt.parsedCommandLine;if(Vt.parsedCommandLine&&Vt.updateLevel===1&&!e.getParsedCommandLine){Le("Reloading new file names and options"),N.assert(se);const fn=LP(Vt.parsedCommandLine.options.configFile.configFileSpecs,go(ai(Ye),M),se,Ne);return Vt.parsedCommandLine={...Vt.parsedCommandLine,fileNames:fn},Vt.updateLevel=void 0,Vt.parsedCommandLine}}Le(`Loading config file: ${Ye}`);const vn=e.getParsedCommandLine?e.getParsedCommandLine(Ye):kn(Ye);return Vt?(Vt.parsedCommandLine=vn,Vt.updateLevel=void 0):(u||(u=new Map)).set(_t,Vt={parsedCommandLine:vn}),Rt(Ye,_t,Vt),vn}function kn(Ye){const _t=Ne.onUnRecoverableConfigFileDiagnostic;Ne.onUnRecoverableConfigFileDiagnostic=$a;const Vt=fw(Ye,void 0,Ne,h||(h=new Map),U);return Ne.onUnRecoverableConfigFileDiagnostic=_t,Vt}function qe(Ye){var _t;const Vt=Xn(Ye),vn=u==null?void 0:u.get(Vt);vn&&(u.delete(Vt),vn.watchedDirectories&&tp(vn.watchedDirectories,Mf),(_t=vn.watcher)==null||_t.close(),RJ(Vt,p))}function mt(Ye,_t,Vt,vn,fn,_n){return ie(_t,(q,Oe)=>Vt(q,Oe,Ye),vn,fn,_n)}function ft(Ye,_t,Vt){Ct(Ye,Vt,_t),_t===2&&b.has(Vt)&&We.invalidateResolutionOfFile(Vt),ao(Vt),zt()}function Ct(Ye,_t,Vt){oe&&oe.addOrDeleteFile(Ye,_t,Vt)}function le(Ye,_t){return u!=null&&u.has(Ye)?SD:mt(Ye,_t,Fe,500,G,wc.MissingFile)}function Fe(Ye,_t,Vt){Ct(Ye,Vt,_t),_t===0&&i.has(Vt)&&(i.get(Vt).close(),i.delete(Vt),ao(Vt),zt())}function pt(){Gw(o||(o=new Map),he,j)}function j(Ye,_t){return ve(Ye,Vt=>{N.assert(C),N.assert(se);const vn=Xn(Vt);oe&&oe.addOrDeleteFileOrDirectory(Vt,vn),ao(vn),!Vw({watchedDirPath:Xn(Ye),fileOrDirectory:Vt,fileOrDirectoryPath:vn,configFileName:C,extraFileExtensions:K,options:se,program:vt()||V,currentDirectory:M,useCaseSensitiveFileNames:R,writeLog:Le,toPath:Xn})&&r!==2&&(r=1,zt())},_t,G,wc.WildcardDirectory)}function ot(Ye,_t,Vt,vn){v7(Ye,_t,p||(p=new Map),(fn,_n)=>ie(fn,(q,Oe)=>{var Lt;Ct(fn,_n,Oe),h&&y7(h,_n,Xn);const L=(Lt=p.get(_n))==null?void 0:Lt.projects;L!=null&&L.size&&L.forEach(_e=>{if(C&&Xn(C)===_e)r=2;else{const J=u==null?void 0:u.get(_e);J&&(J.updateLevel=2),We.removeResolutionsFromProjectReferenceRedirects(_e)}zt()})},2e3,Vt,vn),Xn)}function Rt(Ye,_t,Vt){var vn,fn,_n,q;Vt.watcher||(Vt.watcher=ie(Ye,(Oe,Lt)=>{Ct(Ye,_t,Lt);const L=u==null?void 0:u.get(_t);L&&(L.updateLevel=2),We.removeResolutionsFromProjectReferenceRedirects(_t),zt()},2e3,((vn=Vt.parsedCommandLine)==null?void 0:vn.watchOptions)||G,wc.ConfigFileOfReferencedProject)),Gw(Vt.watchedDirectories||(Vt.watchedDirectories=new Map),(fn=Vt.parsedCommandLine)==null?void 0:fn.wildcardDirectories,(Oe,Lt)=>{var L;return ve(Oe,_e=>{const J=Xn(_e);oe&&oe.addOrDeleteFileOrDirectory(_e,J),ao(J);const me=u==null?void 0:u.get(_t);me!=null&&me.parsedCommandLine&&(Vw({watchedDirPath:Xn(Oe),fileOrDirectory:_e,fileOrDirectoryPath:J,configFileName:Ye,options:me.parsedCommandLine.options,program:me.parsedCommandLine.fileNames,currentDirectory:M,useCaseSensitiveFileNames:R,writeLog:Le,toPath:Xn})||me.updateLevel!==2&&(me.updateLevel=1,zt()))},Lt,((L=Vt.parsedCommandLine)==null?void 0:L.watchOptions)||G,wc.WildcardDirectoryOfReferencedProject)}),ot(_t,(_n=Vt.parsedCommandLine)==null?void 0:_n.options,((q=Vt.parsedCommandLine)==null?void 0:q.watchOptions)||G,wc.ExtendedConfigOfReferencedProject)}}var nqe=T({"src/compiler/watchPublic.ts"(){ra()}});function bK(e){return Il(e,".json")?e:Qr(e,"tsconfig.json")}var EK,rqe=T({"src/compiler/tsbuild.ts"(){ra(),EK=(e=>(e[e.Unbuildable=0]="Unbuildable",e[e.UpToDate=1]="UpToDate",e[e.UpToDateWithUpstreamTypes=2]="UpToDateWithUpstreamTypes",e[e.OutOfDateWithPrepend=3]="OutOfDateWithPrepend",e[e.OutputMissing=4]="OutputMissing",e[e.ErrorReadingFile=5]="ErrorReadingFile",e[e.OutOfDateWithSelf=6]="OutOfDateWithSelf",e[e.OutOfDateWithUpstream=7]="OutOfDateWithUpstream",e[e.OutOfDateBuildInfo=8]="OutOfDateBuildInfo",e[e.OutOfDateOptions=9]="OutOfDateOptions",e[e.OutOfDateRoots=10]="OutOfDateRoots",e[e.UpstreamOutOfDate=11]="UpstreamOutOfDate",e[e.UpstreamBlocked=12]="UpstreamBlocked",e[e.ComputingUpstream=13]="ComputingUpstream",e[e.TsVersionOutputOfDate=14]="TsVersionOutputOfDate",e[e.UpToDateWithInputFileText=15]="UpToDateWithInputFileText",e[e.ContainerOnly=16]="ContainerOnly",e[e.ForceBuild=17]="ForceBuild",e))(EK||{})}});function iqe(e,t,r){const i=e.get(t);let o;return i||(o=r(),e.set(t,o)),i||o}function Qce(e,t){return iqe(e,t,()=>new Map)}function $w(e){return e.now?e.now():new Date}function DI(e){return!!e&&!!e.buildOrder}function G7(e){return DI(e)?e.buildOrder:e}function Zce(e,t){return r=>{let i=t?`[${v1(Yw(e),"\x1B[90m")}] `:`${Yw(e)} - `;i+=`${z_(r.messageText,e.newLine)}${e.newLine+e.newLine}`,e.write(i)}}function GRe(e,t,r,i){const o=vK(e,t);return o.getModifiedTime=e.getModifiedTime?s=>e.getModifiedTime(s):r0,o.setModifiedTime=e.setModifiedTime?(s,l)=>e.setModifiedTime(s,l):$a,o.deleteFile=e.deleteFile?s=>e.deleteFile(s):$a,o.reportDiagnostic=r||Xw(e),o.reportSolutionBuilderStatus=i||Zce(e),o.now=oa(e,e.now),o}function VRe(e=gu,t,r,i,o){const s=GRe(e,t,r,i);return s.reportErrorSummary=o,s}function jRe(e=gu,t,r,i,o){const s=GRe(e,t,r,i),l=_K(e,o);return gG(s,l),s}function oqe(e){const t={};return bw.forEach(r=>{xs(e,r.name)&&(t[r.name]=e[r.name])}),t}function URe(e,t,r){return mDe(!1,e,t,r)}function HRe(e,t,r,i){return mDe(!0,e,t,r,i)}function aqe(e,t,r,i,o){const s=t,l=t,u=oqe(i),p=gK(s,()=>M.projectCompilerOptions);F7(p),p.getParsedCommandLine=C=>NI(M,C,B_(M,C)),p.resolveModuleNameLiterals=oa(s,s.resolveModuleNameLiterals),p.resolveTypeReferenceDirectiveReferences=oa(s,s.resolveTypeReferenceDirectiveReferences),p.resolveLibrary=oa(s,s.resolveLibrary),p.resolveModuleNames=oa(s,s.resolveModuleNames),p.resolveTypeReferenceDirectives=oa(s,s.resolveTypeReferenceDirectives),p.getModuleResolutionCache=oa(s,s.getModuleResolutionCache);let h,m;!p.resolveModuleNameLiterals&&!p.resolveModuleNames&&(h=cD(p.getCurrentDirectory(),p.getCanonicalFileName),p.resolveModuleNameLiterals=(C,O,U,K,Z)=>qw(C,O,U,K,Z,s,h,BJ),p.getModuleResolutionCache=()=>h),!p.resolveTypeReferenceDirectiveReferences&&!p.resolveTypeReferenceDirectives&&(m=zF(p.getCurrentDirectory(),p.getCanonicalFileName,void 0,h==null?void 0:h.getPackageJsonInfoCache(),h==null?void 0:h.optionsToRedirectsKey),p.resolveTypeReferenceDirectiveReferences=(C,O,U,K,Z)=>qw(C,O,U,K,Z,s,m,E7));let b;p.resolveLibrary||(b=cD(p.getCurrentDirectory(),p.getCanonicalFileName,void 0,h==null?void 0:h.getPackageJsonInfoCache()),p.resolveLibrary=(C,O,U)=>BF(C,O,U,s,b)),p.getBuildInfo=(C,O)=>oDe(M,C,B_(M,O),void 0);const{watchFile:A,watchDirectory:I,writeLog:R}=hK(l,i),M={host:s,hostWithWatch:l,parseConfigFileHost:x7(s),write:oa(s,s.trace),options:i,baseCompilerOptions:u,rootNames:r,baseWatchOptions:o,resolvedConfigFilePaths:new Map,configFileCache:new Map,projectStatus:new Map,extendedConfigCache:new Map,buildInfoCache:new Map,outputTimeStamps:new Map,builderPrograms:new Map,diagnostics:new Map,projectPendingBuild:new Map,projectErrorsReported:new Map,compilerHost:p,moduleResolutionCache:h,typeReferenceDirectiveResolutionCache:m,libraryResolutionCache:b,buildOrder:void 0,readFileWithCache:C=>s.readFile(C),projectCompilerOptions:u,cache:void 0,allProjectBuildPending:!0,needsSummary:!0,watchAllProjectsPending:e,watch:e,allWatchedWildcardDirectories:new Map,allWatchedInputFiles:new Map,allWatchedConfigFiles:new Map,allWatchedExtendedConfigFiles:new Map,allWatchedPackageJsonFiles:new Map,filesWatched:new Map,lastCachedPackageJsonLookups:new Map,timerToBuildInvalidatedProject:void 0,reportFileChangeDetected:!1,watchFile:A,watchDirectory:I,writeLog:R};return M}function Lf(e,t){return ol(t,e.compilerHost.getCurrentDirectory(),e.compilerHost.getCanonicalFileName)}function B_(e,t){const{resolvedConfigFilePaths:r}=e,i=r.get(t);if(i!==void 0)return i;const o=Lf(e,t);return r.set(t,o),o}function qRe(e){return!!e.options}function sqe(e,t){const r=e.configFileCache.get(t);return r&&qRe(r)?r:void 0}function NI(e,t,r){const{configFileCache:i}=e,o=i.get(r);if(o)return qRe(o)?o:void 0;il("SolutionBuilder::beforeConfigFileParsing");let s;const{parseConfigFileHost:l,baseCompilerOptions:u,baseWatchOptions:p,extendedConfigCache:h,host:m}=e;let b;return m.getParsedCommandLine?(b=m.getParsedCommandLine(t),b||(s=Hl(f.File_0_not_found,t))):(l.onUnRecoverableConfigFileDiagnostic=A=>s=A,b=fw(t,u,l,h,p),l.onUnRecoverableConfigFileDiagnostic=$a),i.set(r,b||s),il("SolutionBuilder::afterConfigFileParsing"),ef("SolutionBuilder::Config file parsing","SolutionBuilder::beforeConfigFileParsing","SolutionBuilder::afterConfigFileParsing"),b}function ZP(e,t){return bK(Py(e.compilerHost.getCurrentDirectory(),t))}function JRe(e,t){const r=new Map,i=new Map,o=[];let s,l;for(const p of t)u(p);return l?{buildOrder:s||et,circularDiagnostics:l}:s||et;function u(p,h){const m=B_(e,p);if(i.has(m))return;if(r.has(m)){h||(l||(l=[])).push(Hl(f.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,o.join(`\r
+`)));return}r.set(m,!0),o.push(p);const b=NI(e,p,m);if(b&&b.projectReferences)for(const A of b.projectReferences){const I=ZP(e,A.path);u(I,h||A.circular)}o.pop(),i.set(m,!0),(s||(s=[])).push(p)}}function V7(e){return e.buildOrder||lqe(e)}function lqe(e){const t=JRe(e,e.rootNames.map(o=>ZP(e,o)));e.resolvedConfigFilePaths.clear();const r=new Set(G7(t).map(o=>B_(e,o))),i={onDeleteValue:$a};return sg(e.configFileCache,r,i),sg(e.projectStatus,r,i),sg(e.builderPrograms,r,i),sg(e.diagnostics,r,i),sg(e.projectPendingBuild,r,i),sg(e.projectErrorsReported,r,i),sg(e.buildInfoCache,r,i),sg(e.outputTimeStamps,r,i),sg(e.lastCachedPackageJsonLookups,r,i),e.watch&&(sg(e.allWatchedConfigFiles,r,{onDeleteValue:Qm}),e.allWatchedExtendedConfigFiles.forEach(o=>{o.projects.forEach(s=>{r.has(s)||o.projects.delete(s)}),o.close()}),sg(e.allWatchedWildcardDirectories,r,{onDeleteValue:o=>o.forEach(Mf)}),sg(e.allWatchedInputFiles,r,{onDeleteValue:o=>o.forEach(Qm)}),sg(e.allWatchedPackageJsonFiles,r,{onDeleteValue:o=>o.forEach(Qm)})),e.buildOrder=t}function KRe(e,t,r){const i=t&&ZP(e,t),o=V7(e);if(DI(o))return o;if(i){const l=B_(e,i);if(Gr(o,p=>B_(e,p)===l)===-1)return}const s=i?JRe(e,[i]):o;return N.assert(!DI(s)),N.assert(!r||i!==void 0),N.assert(!r||s[s.length-1]===i),r?s.slice(0,s.length-1):s}function XRe(e){e.cache&&eue(e);const{compilerHost:t,host:r}=e,i=e.readFileWithCache,o=t.getSourceFile,{originalReadFile:s,originalFileExists:l,originalDirectoryExists:u,originalCreateDirectory:p,originalWriteFile:h,getSourceFileWithCache:m,readFileWithCache:b}=Uw(r,A=>Lf(e,A),(...A)=>o.call(t,...A));e.readFileWithCache=b,t.getSourceFile=m,e.cache={originalReadFile:s,originalFileExists:l,originalDirectoryExists:u,originalCreateDirectory:p,originalWriteFile:h,originalReadFileWithCache:i,originalGetSourceFile:o}}function eue(e){if(!e.cache)return;const{cache:t,host:r,compilerHost:i,extendedConfigCache:o,moduleResolutionCache:s,typeReferenceDirectiveResolutionCache:l,libraryResolutionCache:u}=e;r.readFile=t.originalReadFile,r.fileExists=t.originalFileExists,r.directoryExists=t.originalDirectoryExists,r.createDirectory=t.originalCreateDirectory,r.writeFile=t.originalWriteFile,i.getSourceFile=t.originalGetSourceFile,e.readFileWithCache=t.originalReadFileWithCache,o.clear(),s==null||s.clear(),l==null||l.clear(),u==null||u.clear(),e.cache=void 0}function YRe(e,t){e.projectStatus.delete(t),e.diagnostics.delete(t)}function $Re({projectPendingBuild:e},t,r){const i=e.get(t);(i===void 0||i<r)&&e.set(t,r)}function QRe(e,t){if(!e.allProjectBuildPending)return;e.allProjectBuildPending=!1,e.options.watch&&pue(e,f.Starting_compilation_in_watch_mode),XRe(e),G7(V7(e)).forEach(i=>e.projectPendingBuild.set(B_(e,i),0)),t&&t.throwIfCancellationRequested()}function ZRe(e,t){return e.projectPendingBuild.delete(t),e.diagnostics.has(t)?1:0}function cqe(e,t,r,i,o){let s=!0;return{kind:2,project:t,projectPath:r,buildOrder:o,getCompilerOptions:()=>i.options,getCurrentDirectory:()=>e.compilerHost.getCurrentDirectory(),updateOutputFileStatmps:()=>{sDe(e,i,r),s=!1},done:()=>(s&&sDe(e,i,r),il("SolutionBuilder::Timestamps only updates"),ZRe(e,r))}}function eDe(e,t,r,i,o,s,l){let u=e===0?0:4,p,h,m;return e===0?{kind:e,project:r,projectPath:i,buildOrder:l,getCompilerOptions:()=>s.options,getCurrentDirectory:()=>t.compilerHost.getCurrentDirectory(),getBuilderProgram:()=>A(nl),getProgram:()=>A(G=>G.getProgramOrUndefined()),getSourceFile:G=>A(ne=>ne.getSourceFile(G)),getSourceFiles:()=>I(G=>G.getSourceFiles()),getOptionsDiagnostics:G=>I(ne=>ne.getOptionsDiagnostics(G)),getGlobalDiagnostics:G=>I(ne=>ne.getGlobalDiagnostics(G)),getConfigFileParsingDiagnostics:()=>I(G=>G.getConfigFileParsingDiagnostics()),getSyntacticDiagnostics:(G,ne)=>I(he=>he.getSyntacticDiagnostics(G,ne)),getAllDependencies:G=>I(ne=>ne.getAllDependencies(G)),getSemanticDiagnostics:(G,ne)=>I(he=>he.getSemanticDiagnostics(G,ne)),getSemanticDiagnosticsOfNextAffectedFile:(G,ne)=>A(he=>he.getSemanticDiagnosticsOfNextAffectedFile&&he.getSemanticDiagnosticsOfNextAffectedFile(G,ne)),emit:(G,ne,he,ye,$)=>{if(G||ye)return A(Y=>{var oe,fe;return Y.emit(G,ne,he,ye,$||((fe=(oe=t.host).getCustomTransformers)==null?void 0:fe.call(oe,r)))});if(se(2,he),u===5)return K(ne,he);if(u===3)return U(ne,he,$)},done:b}:{kind:e,project:r,projectPath:i,buildOrder:l,getCompilerOptions:()=>s.options,getCurrentDirectory:()=>t.compilerHost.getCurrentDirectory(),emit:(G,ne)=>u!==4?m:V(G,ne),done:b};function b(G,ne,he){return se(8,G,ne,he),il(e===0?"SolutionBuilder::Projects built":"SolutionBuilder::Bundles updated"),ZRe(t,i)}function A(G){return se(0),p&&G(p)}function I(G){return A(G)||et}function R(){var G,ne,he;if(N.assert(p===void 0),t.options.dry){Dd(t,f.A_non_dry_build_would_build_project_0,r),h=1,u=7;return}if(t.options.verbose&&Dd(t,f.Building_project_0,r),s.fileNames.length===0){e2(t,i,rT(s)),h=0,u=7;return}const{host:ye,compilerHost:$}=t;if(t.projectCompilerOptions=s.options,(G=t.moduleResolutionCache)==null||G.update(s.options),(ne=t.typeReferenceDirectiveResolutionCache)==null||ne.update(s.options),p=ye.createProgram(s.fileNames,s.options,$,dqe(t,i,s),rT(s),s.projectReferences),t.watch){const Y=(he=t.moduleResolutionCache)==null?void 0:he.getPackageJsonInfoCache().getInternalMap();t.lastCachedPackageJsonLookups.set(i,Y&&new Set(zo(Y.values(),oe=>t.host.realpath&&(FF(oe)||oe.directoryExists)?t.host.realpath(Qr(oe.packageDirectory,"package.json")):Qr(oe.packageDirectory,"package.json")))),t.builderPrograms.set(i,p)}u++}function M(G,ne,he){G.length?{buildResult:h,step:u}=rue(t,i,p,s,G,ne,he):u++}function C(G){N.assertIsDefined(p),M([...p.getConfigFileParsingDiagnostics(),...p.getOptionsDiagnostics(G),...p.getGlobalDiagnostics(G),...p.getSyntacticDiagnostics(void 0,G)],8,"Syntactic")}function O(G){M(N.checkDefined(p).getSemanticDiagnostics(void 0,G),16,"Semantic")}function U(G,ne,he){var ye,$,Y;N.assertIsDefined(p),N.assert(u===3);const oe=p.saveEmitState();let fe;const Ne=je=>(fe||(fe=[])).push(je),pe=[],{emitResult:ie}=O7(p,Ne,void 0,void 0,(je,at,Gt,vt,$e,It)=>pe.push({name:je,text:at,writeByteOrderMark:Gt,data:It}),ne,!1,he||(($=(ye=t.host).getCustomTransformers)==null?void 0:$.call(ye,r)));if(fe)return p.restoreEmitState(oe),{buildResult:h,step:u}=rue(t,i,p,s,fe,32,"Declaration file"),{emitSkipped:!0,diagnostics:ie.diagnostics};const{host:ve,compilerHost:Le}=t,He=(Y=p.hasChangedEmitSignature)!=null&&Y.call(p)?0:2,Ee=RR(),De=new Map,Pe=p.getCompilerOptions(),We=uP(Pe);let At,Se;return pe.forEach(({name:je,text:at,writeByteOrderMark:Gt,data:vt})=>{const $e=Lf(t,je);De.set(Lf(t,je),je),vt!=null&&vt.buildInfo&&oue(t,vt.buildInfo,i,Pe,He);const It=vt!=null&&vt.differsOnlyInMap?IA(t.host,je):void 0;OC(G?{writeFile:G}:Le,Ee,je,at,Gt),vt!=null&&vt.differsOnlyInMap?t.host.setModifiedTime(je,It):!We&&t.watch&&(At||(At=iue(t,i))).set($e,Se||(Se=$w(t.host)))}),Z(Ee,De,pe.length?pe[0].name:AJ(s,!ve.useCaseSensitiveFileNames()),He),ie}function K(G,ne){N.assertIsDefined(p),N.assert(u===5);const he=p.emitBuildInfo((ye,$,Y,oe,fe,Ne)=>{Ne!=null&&Ne.buildInfo&&oue(t,Ne.buildInfo,i,p.getCompilerOptions(),2),G?G(ye,$,Y,oe,fe,Ne):t.compilerHost.writeFile(ye,$,Y,oe,fe,Ne)},ne);return he.diagnostics.length&&(U7(t,he.diagnostics),t.diagnostics.set(i,[...t.diagnostics.get(i),...he.diagnostics]),h=64&h),he.emittedFiles&&t.write&&he.emittedFiles.forEach(ye=>rDe(t,s,ye)),nue(t,p,s),u=7,he}function Z(G,ne,he,ye){const $=G.getDiagnostics();return $.length?({buildResult:h,step:u}=rue(t,i,p,s,$,64,"Emit"),$):(t.write&&ne.forEach(Y=>rDe(t,s,Y)),aDe(t,s,i,f.Updating_unchanged_output_timestamps_of_project_0,ne),t.diagnostics.delete(i),t.projectStatus.set(i,{type:1,oldestOutputFileName:he}),nue(t,p,s),u=7,h=ye,$)}function V(G,ne){var he,ye,$,Y;if(N.assert(e===1),t.options.dry){Dd(t,f.A_non_dry_build_would_update_output_of_project_0,r),h=1,u=7;return}t.options.verbose&&Dd(t,f.Updating_output_of_project_0,r);const{compilerHost:oe}=t;t.projectCompilerOptions=s.options,(ye=(he=t.host).beforeEmitBundle)==null||ye.call(he,s);const fe=fce(s,oe,He=>{const Ee=ZP(t,He.path);return NI(t,Ee,B_(t,Ee))},ne||((Y=($=t.host).getCustomTransformers)==null?void 0:Y.call($,r)));if(Po(fe))return Dd(t,f.Cannot_update_output_of_project_0_because_there_was_error_reading_file_1,r,cu(t,fe)),u=6,m=eDe(0,t,r,i,o,s,l);N.assert(!!fe.length);const Ne=RR(),pe=new Map;let ie=2;const ve=t.buildInfoCache.get(i).buildInfo||void 0;return fe.forEach(({name:He,text:Ee,writeByteOrderMark:De,data:Pe})=>{var We,At;pe.set(Lf(t,He),He),Pe!=null&&Pe.buildInfo&&(((We=Pe.buildInfo.program)==null?void 0:We.outSignature)!==((At=ve==null?void 0:ve.program)==null?void 0:At.outSignature)&&(ie&=-3),oue(t,Pe.buildInfo,i,s.options,ie)),OC(G?{writeFile:G}:oe,Ne,He,Ee,De)}),{emitSkipped:!1,diagnostics:Z(Ne,pe,fe[0].name,ie)}}function se(G,ne,he,ye){for(;u<=G&&u<8;){const $=u;switch(u){case 0:R();break;case 1:C(ne);break;case 2:O(ne);break;case 3:U(he,ne,ye);break;case 5:K(he,ne);break;case 4:V(he,ye);break;case 6:N.checkDefined(m).done(ne,he,ye),u=8;break;case 7:_qe(t,r,i,o,s,l,N.checkDefined(h)),u++;break}N.assert(u>$)}}}function uqe({options:e},t,r){return t.type!==3||e.force?!0:r.fileNames.length===0||!!rT(r).length||!uP(r.options)}function tDe(e,t,r){if(!e.projectPendingBuild.size||DI(t))return;const{options:i,projectPendingBuild:o}=e;for(let s=0;s<t.length;s++){const l=t[s],u=B_(e,l),p=e.projectPendingBuild.get(u);if(p===void 0)continue;r&&(r=!1,gDe(e,t));const h=NI(e,l,u);if(!h){_De(e,u),o.delete(u);continue}p===2?(dDe(e,l,u,h),pDe(e,u,h),fDe(e,l,u,h),uue(e,l,u,h),due(e,l,u,h)):p===1&&(h.fileNames=LP(h.options.configFile.configFileSpecs,ai(l),h.options,e.parseConfigFileHost),xF(h.fileNames,l,h.options.configFile.configFileSpecs,h.errors,MP(h.raw)),uue(e,l,u,h),due(e,l,u,h));const m=lue(e,h,u);if(!i.force){if(m.type===1){AK(e,l,m),e2(e,u,rT(h)),o.delete(u),i.dry&&Dd(e,f.Project_0_is_up_to_date,l);continue}if(m.type===2||m.type===15)return e2(e,u,rT(h)),{kind:2,status:m,project:l,projectPath:u,projectIndex:s,config:h}}if(m.type===12){AK(e,l,m),e2(e,u,rT(h)),o.delete(u),i.verbose&&Dd(e,m.upstreamProjectBlocked?f.Skipping_build_of_project_0_because_its_dependency_1_was_not_built:f.Skipping_build_of_project_0_because_its_dependency_1_has_errors,l,m.upstreamProjectName);continue}if(m.type===16){AK(e,l,m),e2(e,u,rT(h)),o.delete(u);continue}return{kind:uqe(e,m,h)?0:1,status:m,project:l,projectPath:u,projectIndex:s,config:h}}}function nDe(e,t,r){return AK(e,t.project,t.status),t.kind!==2?eDe(t.kind,e,t.project,t.projectPath,t.projectIndex,t.config,r):cqe(e,t.project,t.projectPath,t.config,r)}function tue(e,t,r){const i=tDe(e,t,r);return i&&nDe(e,i,t)}function rDe({write:e},t,r){e&&t.options.listEmittedFiles&&e(`TSFILE: ${r}`)}function dqe({options:e,builderPrograms:t,compilerHost:r},i,o){if(e.force)return;const s=t.get(i);return s||B7(o.options,r)}function nue(e,t,r){t?(e.write&&cK(t,e.write),e.host.afterProgramEmitAndDiagnostics&&e.host.afterProgramEmitAndDiagnostics(t),t.releaseProgram()):e.host.afterEmitBundle&&e.host.afterEmitBundle(r),e.projectCompilerOptions=e.baseCompilerOptions}function rue(e,t,r,i,o,s,l){const u=r&&!Ps(r.getCompilerOptions());return e2(e,t,o),e.projectStatus.set(t,{type:0,reason:`${l} errors`}),u?{buildResult:s,step:5}:(nue(e,r,i),{buildResult:s,step:7})}function SK(e){return!!e.watcher}function iDe(e,t){const r=Lf(e,t),i=e.filesWatched.get(r);if(e.watch&&i){if(!SK(i))return i;if(i.modifiedTime)return i.modifiedTime}const o=IA(e.host,t);return e.watch&&(i?i.modifiedTime=o:e.filesWatched.set(r,o)),o}function TK(e,t,r,i,o,s,l){const u=Lf(e,t),p=e.filesWatched.get(u);if(p&&SK(p))p.callbacks.push(r);else{const h=e.watchFile(t,(m,b,A)=>{const I=N.checkDefined(e.filesWatched.get(u));N.assert(SK(I)),I.modifiedTime=A,I.callbacks.forEach(R=>R(m,b,A))},i,o,s,l);e.filesWatched.set(u,{callbacks:[r],watcher:h,modifiedTime:p})}return{close:()=>{const h=N.checkDefined(e.filesWatched.get(u));N.assert(SK(h)),h.callbacks.length===1?(e.filesWatched.delete(u),Mf(h)):TA(h.callbacks,r)}}}function iue(e,t){if(!e.watch)return;let r=e.outputTimeStamps.get(t);return r||e.outputTimeStamps.set(t,r=new Map),r}function oue(e,t,r,i,o){const s=$v(i),l=aue(e,s,r),u=$w(e.host);l?(l.buildInfo=t,l.modifiedTime=u,o&2||(l.latestChangedDtsTime=u)):e.buildInfoCache.set(r,{path:Lf(e,s),buildInfo:t,modifiedTime:u,latestChangedDtsTime:o&2?void 0:u})}function aue(e,t,r){const i=Lf(e,t),o=e.buildInfoCache.get(r);return(o==null?void 0:o.path)===i?o:void 0}function oDe(e,t,r,i){const o=Lf(e,t),s=e.buildInfoCache.get(r);if(s!==void 0&&s.path===o)return s.buildInfo||void 0;const l=e.readFileWithCache(t),u=l?_7(t,l):void 0;return e.buildInfoCache.set(r,{path:o,buildInfo:u||!1,modifiedTime:i||Op}),u}function sue(e,t,r,i){const o=iDe(e,t);if(r<o)return{type:6,outOfDateOutputFileName:i,newerInputFileName:t}}function pqe(e,t,r){var i,o,s;if(!t.fileNames.length&&!MP(t.raw))return{type:16};let l;const u=!!e.options.force;if(t.projectReferences){e.projectStatus.set(r,{type:13});for(const $ of t.projectReferences){const Y=vD($),oe=B_(e,Y),fe=NI(e,Y,oe),Ne=lue(e,fe,oe);if(!(Ne.type===13||Ne.type===16)){if(Ne.type===0||Ne.type===12)return{type:12,upstreamProjectName:$.path,upstreamProjectBlocked:Ne.type===12};if(Ne.type!==1)return{type:11,upstreamProjectName:$.path};u||(l||(l=[])).push({ref:$,refStatus:Ne,resolvedRefPath:oe,resolvedConfig:fe})}}}if(u)return{type:17};const{host:p}=e,h=$v(t.options);let m,b=yDe,A,I,R;if(h){const $=aue(e,h,r);if(A=($==null?void 0:$.modifiedTime)||IA(p,h),A===Op)return $||e.buildInfoCache.set(r,{path:Lf(e,h),buildInfo:!1,modifiedTime:A}),{type:4,missingOutputFileName:h};const Y=oDe(e,h,r,A);if(!Y)return{type:5,fileName:h};if((Y.bundle||Y.program)&&Y.version!==Re)return{type:14,version:Y.version};if(Y.program){if((i=Y.program.changeFileSet)!=null&&i.length||(t.options.noEmit?bt(Y.program.semanticDiagnosticsPerFile,To):(o=Y.program.affectedFilesPendingEmit)!=null&&o.length||(s=Y.program.emitDiagnosticsPerFile)!=null&&s.length))return{type:8,buildInfoFile:h};if(!t.options.noEmit&&bD(t.options,Y.program.options||{}))return{type:9,buildInfoFile:h};I=Y.program}b=A,m=h}let M,C=vDe,O=!1;const U=new Set;for(const $ of t.fileNames){const Y=iDe(e,$);if(Y===Op)return{type:0,reason:`${$} does not exist`};if(A&&A<Y){let oe,fe;if(I){R||(R=tK(I,h,p)),oe=R.fileInfos.get(Lf(e,$));const Ne=oe?e.readFileWithCache($):void 0;fe=Ne!==void 0?W7(p,Ne):void 0,oe&&oe===fe&&(O=!0)}if(!oe||oe!==fe)return{type:6,outOfDateOutputFileName:h,newerInputFileName:$}}Y>C&&(M=$,C=Y),I&&U.add(Lf(e,$))}if(I){R||(R=tK(I,h,p));for(const $ of R.roots)if(!U.has($))return{type:10,buildInfoFile:h,inputFile:$}}if(!h){const $=f7(t,!p.useCaseSensitiveFileNames()),Y=iue(e,r);for(const oe of $){const fe=Lf(e,oe);let Ne=Y==null?void 0:Y.get(fe);if(Ne||(Ne=IA(e.host,oe),Y==null||Y.set(fe,Ne)),Ne===Op)return{type:4,missingOutputFileName:oe};if(Ne<C)return{type:6,outOfDateOutputFileName:oe,newerInputFileName:M};Ne<b&&(b=Ne,m=oe)}}const K=e.buildInfoCache.get(r);let Z=!1,V=!1,se;if(l)for(const{ref:$,refStatus:Y,resolvedConfig:oe,resolvedRefPath:fe}of l){if(V=V||!!$.prepend,Y.newestInputFileTime&&Y.newestInputFileTime<=b)continue;if(K&&fqe(e,K,fe))return{type:7,outOfDateOutputFileName:h,newerProjectName:$.path};const Ne=mqe(e,oe.options,fe);if(Ne&&Ne<=b){Z=!0,se=$.path;continue}return N.assert(m!==void 0,"Should have an oldest output filename here"),{type:7,outOfDateOutputFileName:m,newerProjectName:$.path}}const G=sue(e,t.options.configFilePath,b,m);if(G)return G;const ne=Ue(t.options.configFile.extendedSourceFiles||et,$=>sue(e,$,b,m));if(ne)return ne;const he=e.lastCachedPackageJsonLookups.get(r),ye=he&&_h(he,$=>sue(e,$,b,m));return ye||(V&&Z?{type:3,outOfDateOutputFileName:m,newerProjectName:se}:{type:Z?2:O?15:1,newestInputFileTime:C,newestInputFileName:M,oldestOutputFileName:m})}function fqe(e,t,r){return e.buildInfoCache.get(r).path===t.path}function lue(e,t,r){if(t===void 0)return{type:0,reason:"File deleted mid-build"};const i=e.projectStatus.get(r);if(i!==void 0)return i;il("SolutionBuilder::beforeUpToDateCheck");const o=pqe(e,t,r);return il("SolutionBuilder::afterUpToDateCheck"),ef("SolutionBuilder::Up-to-date check","SolutionBuilder::beforeUpToDateCheck","SolutionBuilder::afterUpToDateCheck"),e.projectStatus.set(r,o),o}function aDe(e,t,r,i,o){if(t.options.noEmit)return;let s;const l=$v(t.options);if(l){o!=null&&o.has(Lf(e,l))||(e.options.verbose&&Dd(e,i,t.options.configFilePath),e.host.setModifiedTime(l,s=$w(e.host)),aue(e,l,r).modifiedTime=s),e.outputTimeStamps.delete(r);return}const{host:u}=e,p=f7(t,!u.useCaseSensitiveFileNames()),h=iue(e,r),m=h?new Set:void 0;if(!o||p.length!==o.size){let b=!!e.options.verbose;for(const A of p){const I=Lf(e,A);o!=null&&o.has(I)||(b&&(b=!1,Dd(e,i,t.options.configFilePath)),u.setModifiedTime(A,s||(s=$w(e.host))),h&&(h.set(I,s),m.add(I)))}}h==null||h.forEach((b,A)=>{!(o!=null&&o.has(A))&&!m.has(A)&&h.delete(A)})}function mqe(e,t,r){if(!t.composite)return;const i=N.checkDefined(e.buildInfoCache.get(r));if(i.latestChangedDtsTime!==void 0)return i.latestChangedDtsTime||void 0;const o=i.buildInfo&&i.buildInfo.program&&i.buildInfo.program.latestChangedDtsFile?e.host.getModifiedTime(go(i.buildInfo.program.latestChangedDtsFile,ai(i.path))):void 0;return i.latestChangedDtsTime=o||!1,o}function sDe(e,t,r){if(e.options.dry)return Dd(e,f.A_non_dry_build_would_update_timestamps_for_output_of_project_0,t.options.configFilePath);aDe(e,t,r,f.Updating_output_timestamps_of_project_0),e.projectStatus.set(r,{type:1,oldestOutputFileName:AJ(t,!e.host.useCaseSensitiveFileNames())})}function _qe(e,t,r,i,o,s,l){if(!(l&124)&&o.options.composite)for(let u=i+1;u<s.length;u++){const p=s[u],h=B_(e,p);if(e.projectPendingBuild.has(h))continue;const m=NI(e,p,h);if(!(!m||!m.projectReferences))for(const b of m.projectReferences){const A=ZP(e,b.path);if(B_(e,A)!==r)continue;const I=e.projectStatus.get(h);if(I)switch(I.type){case 1:if(l&2){b.prepend?e.projectStatus.set(h,{type:3,outOfDateOutputFileName:I.oldestOutputFileName,newerProjectName:t}):I.type=2;break}case 15:case 2:case 3:l&2||e.projectStatus.set(h,{type:7,outOfDateOutputFileName:I.type===3?I.outOfDateOutputFileName:I.oldestOutputFileName,newerProjectName:t});break;case 12:B_(e,ZP(e,I.upstreamProjectName))===r&&YRe(e,h);break}$Re(e,h,0);break}}}function lDe(e,t,r,i,o,s){il("SolutionBuilder::beforeBuild");const l=hqe(e,t,r,i,o,s);return il("SolutionBuilder::afterBuild"),ef("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),l}function hqe(e,t,r,i,o,s){const l=KRe(e,t,s);if(!l)return 3;QRe(e,r);let u=!0,p=0;for(;;){const h=tue(e,l,u);if(!h)break;u=!1,h.done(r,i,o==null?void 0:o(h.project)),e.diagnostics.has(h.projectPath)||p++}return eue(e),hDe(e,l),bqe(e,l),DI(l)?4:l.some(h=>e.diagnostics.has(B_(e,h)))?p?2:1:0}function cDe(e,t,r){il("SolutionBuilder::beforeClean");const i=gqe(e,t,r);return il("SolutionBuilder::afterClean"),ef("SolutionBuilder::Clean","SolutionBuilder::beforeClean","SolutionBuilder::afterClean"),i}function gqe(e,t,r){const i=KRe(e,t,r);if(!i)return 3;if(DI(i))return U7(e,i.circularDiagnostics),4;const{options:o,host:s}=e,l=o.dry?[]:void 0;for(const u of i){const p=B_(e,u),h=NI(e,u,p);if(h===void 0){_De(e,p);continue}const m=f7(h,!s.useCaseSensitiveFileNames());if(!m.length)continue;const b=new Set(h.fileNames.map(A=>Lf(e,A)));for(const A of m)b.has(Lf(e,A))||s.fileExists(A)&&(l?l.push(A):(s.deleteFile(A),cue(e,p,0)))}return l&&Dd(e,f.A_non_dry_build_would_delete_the_following_files_Colon_0,l.map(u=>`\r
+ * ${u}`).join("")),0}function cue(e,t,r){e.host.getParsedCommandLine&&r===1&&(r=2),r===2&&(e.configFileCache.delete(t),e.buildOrder=void 0),e.needsSummary=!0,YRe(e,t),$Re(e,t,r),XRe(e)}function j7(e,t,r){e.reportFileChangeDetected=!0,cue(e,t,r),uDe(e,250,!0)}function uDe(e,t,r){const{hostWithWatch:i}=e;!i.setTimeout||!i.clearTimeout||(e.timerToBuildInvalidatedProject&&i.clearTimeout(e.timerToBuildInvalidatedProject),e.timerToBuildInvalidatedProject=i.setTimeout(vqe,t,"timerToBuildInvalidatedProject",e,r))}function vqe(e,t,r){il("SolutionBuilder::beforeBuild");const i=yqe(t,r);il("SolutionBuilder::afterBuild"),ef("SolutionBuilder::Build","SolutionBuilder::beforeBuild","SolutionBuilder::afterBuild"),i&&hDe(t,i)}function yqe(e,t){e.timerToBuildInvalidatedProject=void 0,e.reportFileChangeDetected&&(e.reportFileChangeDetected=!1,e.projectErrorsReported.clear(),pue(e,f.File_change_detected_Starting_incremental_compilation));let r=0;const i=V7(e),o=tue(e,i,!1);if(o)for(o.done(),r++;e.projectPendingBuild.size;){if(e.timerToBuildInvalidatedProject)return;const s=tDe(e,i,!1);if(!s)break;if(s.kind!==2&&(t||r===5)){uDe(e,100,!1);return}nDe(e,s,i).done(),s.kind!==2&&r++}return eue(e),i}function dDe(e,t,r,i){!e.watch||e.allWatchedConfigFiles.has(r)||e.allWatchedConfigFiles.set(r,TK(e,t,()=>j7(e,r,2),2e3,i==null?void 0:i.watchOptions,wc.ConfigFile,t))}function pDe(e,t,r){v7(t,r==null?void 0:r.options,e.allWatchedExtendedConfigFiles,(i,o)=>TK(e,i,()=>{var s;return(s=e.allWatchedExtendedConfigFiles.get(o))==null?void 0:s.projects.forEach(l=>j7(e,l,2))},2e3,r==null?void 0:r.watchOptions,wc.ExtendedConfigFile),i=>Lf(e,i))}function fDe(e,t,r,i){e.watch&&Gw(Qce(e.allWatchedWildcardDirectories,r),i.wildcardDirectories,(o,s)=>e.watchDirectory(o,l=>{var u;Vw({watchedDirPath:Lf(e,o),fileOrDirectory:l,fileOrDirectoryPath:Lf(e,l),configFileName:t,currentDirectory:e.compilerHost.getCurrentDirectory(),options:i.options,program:e.builderPrograms.get(r)||((u=sqe(e,r))==null?void 0:u.fileNames),useCaseSensitiveFileNames:e.parseConfigFileHost.useCaseSensitiveFileNames,writeLog:p=>e.writeLog(p),toPath:p=>Lf(e,p)})||j7(e,r,1)},s,i==null?void 0:i.watchOptions,wc.WildcardDirectory,t))}function uue(e,t,r,i){e.watch&&JC(Qce(e.allWatchedInputFiles,r),new Set(i.fileNames),{createNewValue:o=>TK(e,o,()=>j7(e,r,0),250,i==null?void 0:i.watchOptions,wc.SourceFile,t),onDeleteValue:Qm})}function due(e,t,r,i){!e.watch||!e.lastCachedPackageJsonLookups||JC(Qce(e.allWatchedPackageJsonFiles,r),e.lastCachedPackageJsonLookups.get(r),{createNewValue:o=>TK(e,o,()=>j7(e,r,0),2e3,i==null?void 0:i.watchOptions,wc.PackageJson,t),onDeleteValue:Qm})}function bqe(e,t){if(e.watchAllProjectsPending){il("SolutionBuilder::beforeWatcherCreation"),e.watchAllProjectsPending=!1;for(const r of G7(t)){const i=B_(e,r),o=NI(e,r,i);dDe(e,r,i,o),pDe(e,i,o),o&&(fDe(e,r,i,o),uue(e,r,i,o),due(e,r,i,o))}il("SolutionBuilder::afterWatcherCreation"),ef("SolutionBuilder::Watcher creation","SolutionBuilder::beforeWatcherCreation","SolutionBuilder::afterWatcherCreation")}}function Eqe(e){tp(e.allWatchedConfigFiles,Qm),tp(e.allWatchedExtendedConfigFiles,Mf),tp(e.allWatchedWildcardDirectories,t=>tp(t,Mf)),tp(e.allWatchedInputFiles,t=>tp(t,Qm)),tp(e.allWatchedPackageJsonFiles,t=>tp(t,Qm))}function mDe(e,t,r,i,o){const s=aqe(e,t,r,i,o);return{build:(l,u,p,h)=>lDe(s,l,u,p,h),clean:l=>cDe(s,l),buildReferences:(l,u,p,h)=>lDe(s,l,u,p,h,!0),cleanReferences:l=>cDe(s,l,!0),getNextInvalidatedProject:l=>(QRe(s,l),tue(s,V7(s),!1)),getBuildOrder:()=>V7(s),getUpToDateStatusOfProject:l=>{const u=ZP(s,l),p=B_(s,u);return lue(s,NI(s,u,p),p)},invalidateProject:(l,u)=>cue(s,l,u||0),close:()=>Eqe(s)}}function cu(e,t){return rC(t,e.compilerHost.getCurrentDirectory(),e.compilerHost.getCanonicalFileName)}function Dd(e,t,...r){e.host.reportSolutionBuilderStatus(Hl(t,...r))}function pue(e,t,...r){var i,o;(o=(i=e.hostWithWatch).onWatchStatusChange)==null||o.call(i,Hl(t,...r),e.host.getNewLine(),e.baseCompilerOptions)}function U7({host:e},t){t.forEach(r=>e.reportDiagnostic(r))}function e2(e,t,r){U7(e,r),e.projectErrorsReported.set(t,!0),r.length&&e.diagnostics.set(t,r)}function _De(e,t){e2(e,t,[e.configFileCache.get(t)])}function hDe(e,t){if(!e.needsSummary)return;e.needsSummary=!1;const r=e.watch||!!e.host.reportErrorSummary,{diagnostics:i}=e;let o=0,s=[];DI(t)?(gDe(e,t.buildOrder),U7(e,t.circularDiagnostics),r&&(o+=k7(t.circularDiagnostics)),r&&(s=[...s,...w7(t.circularDiagnostics)])):(t.forEach(l=>{const u=B_(e,l);e.projectErrorsReported.has(u)||U7(e,i.get(u)||et)}),r&&i.forEach(l=>o+=k7(l)),r&&i.forEach(l=>[...s,...w7(l)])),e.watch?pue(e,lK(o),o):e.host.reportErrorSummary&&e.host.reportErrorSummary(o,s)}function gDe(e,t){e.options.verbose&&Dd(e,f.Projects_in_this_build_Colon_0,t.map(r=>`\r
+ * `+cu(e,r)).join(""))}function Sqe(e,t,r){switch(r.type){case 6:return Dd(e,f.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,cu(e,t),cu(e,r.outOfDateOutputFileName),cu(e,r.newerInputFileName));case 7:return Dd(e,f.Project_0_is_out_of_date_because_output_1_is_older_than_input_2,cu(e,t),cu(e,r.outOfDateOutputFileName),cu(e,r.newerProjectName));case 4:return Dd(e,f.Project_0_is_out_of_date_because_output_file_1_does_not_exist,cu(e,t),cu(e,r.missingOutputFileName));case 5:return Dd(e,f.Project_0_is_out_of_date_because_there_was_error_reading_file_1,cu(e,t),cu(e,r.fileName));case 8:return Dd(e,f.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_some_of_the_changes_were_not_emitted,cu(e,t),cu(e,r.buildInfoFile));case 9:return Dd(e,f.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_there_is_change_in_compilerOptions,cu(e,t),cu(e,r.buildInfoFile));case 10:return Dd(e,f.Project_0_is_out_of_date_because_buildinfo_file_1_indicates_that_file_2_was_root_file_of_compilation_but_not_any_more,cu(e,t),cu(e,r.buildInfoFile),cu(e,r.inputFile));case 1:if(r.newestInputFileTime!==void 0)return Dd(e,f.Project_0_is_up_to_date_because_newest_input_1_is_older_than_output_2,cu(e,t),cu(e,r.newestInputFileName||""),cu(e,r.oldestOutputFileName||""));break;case 3:return Dd(e,f.Project_0_is_out_of_date_because_output_of_its_dependency_1_has_changed,cu(e,t),cu(e,r.newerProjectName));case 2:return Dd(e,f.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,cu(e,t));case 15:return Dd(e,f.Project_0_is_up_to_date_but_needs_to_update_timestamps_of_output_files_that_are_older_than_input_files,cu(e,t));case 11:return Dd(e,f.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,cu(e,t),cu(e,r.upstreamProjectName));case 12:return Dd(e,r.upstreamProjectBlocked?f.Project_0_can_t_be_built_because_its_dependency_1_was_not_built:f.Project_0_can_t_be_built_because_its_dependency_1_has_errors,cu(e,t),cu(e,r.upstreamProjectName));case 0:return Dd(e,f.Failed_to_parse_file_0_Colon_1,cu(e,t),r.reason);case 14:return Dd(e,f.Project_0_is_out_of_date_because_output_for_it_was_generated_with_version_1_that_differs_with_current_version_2,cu(e,t),r.version,Re);case 17:return Dd(e,f.Project_0_is_being_forcibly_rebuilt,cu(e,t))}}function AK(e,t,r){e.options.verbose&&Sqe(e,t,r)}var vDe,yDe,IK,Tqe=T({"src/compiler/tsbuildPublic.ts"(){ra(),fS(),vDe=new Date(-864e13),yDe=new Date(864e13),IK=(e=>(e[e.Build=0]="Build",e[e.UpdateBundle=1]="UpdateBundle",e[e.UpdateOutputFileStamps=2]="UpdateOutputFileStamps",e))(IK||{})}}),ra=T({"src/compiler/_namespaces/ts.ts"(){it(),k9e(),w9e(),H9e(),K9e(),X9e(),aBe(),B1e(),_Be(),bBe(),EBe(),xBe(),MBe(),CGe(),PGe(),MGe(),LGe(),BGe(),GGe(),VGe(),jGe(),hVe(),gVe(),RVe(),HVe(),gje(),Tje(),Aje(),Fje(),Uje(),Qje(),oUe(),vUe(),yUe(),DUe(),NUe(),CUe(),WUe(),FUe(),zUe(),BUe(),GUe(),VUe(),jUe(),UUe(),HUe(),KUe(),XUe(),YUe(),$Ue(),QUe(),eHe(),tHe(),nHe(),rHe(),iHe(),oHe(),dHe(),gHe(),RHe(),NHe(),LHe(),kHe(),wHe(),KHe(),XHe(),QHe(),tqe(),nqe(),rqe(),Tqe(),_le(),fS()}});function bDe(e){return gu.args.includes(e)}function EDe(e){const t=gu.args.indexOf(e);return t>=0&&t<gu.args.length-1?gu.args[t+1]:void 0}function SDe(){const e=new Date;return`${e.getHours().toString().padStart(2,"0")}:${e.getMinutes().toString().padStart(2,"0")}:${e.getSeconds().toString().padStart(2,"0")}.${e.getMilliseconds().toString().padStart(3,"0")}`}function t2(e){return fue+e.replace(/\n/g,fue)}function O0(e){return t2(JSON.stringify(e,void 0,2))}var Qw,Zw,eO,H7,q7,J7,xK,n2,RK,fue,Aqe=T({"src/jsTyping/shared.ts"(){tO(),Qw="action::set",Zw="action::invalidate",eO="action::packageInstalled",H7="event::typesRegistry",q7="event::beginInstallTypes",J7="event::endInstallTypes",xK="event::initializationFailed",n2="action::watchTypingLocations",(e=>{e.GlobalCacheLocation="--globalTypingsCacheLocation",e.LogFile="--logFile",e.EnableTelemetry="--enableTelemetry",e.TypingSafeListLocation="--typingSafeListLocation",e.TypesMapLocation="--typesMapLocation",e.NpmLocation="--npmLocation",e.ValidateDefaultNpmLocation="--validateDefaultNpmLocation"})(RK||(RK={})),fue=`
+ `}}),Iqe=T({"src/jsTyping/types.ts"(){}}),K7=T({"src/jsTyping/_namespaces/ts.server.ts"(){Aqe(),Iqe()}});function TDe(e,t){return new ym(k6(t,`ts${ue}`)||k6(t,"latest")).compareTo(e.version)<=0}function ADe(e){return vue.has(e)?"node":e}function xqe(e,t){const r=mw(t,i=>e.readFile(i));return new Map(Object.entries(r.config))}function Rqe(e,t){var r;const i=mw(t,o=>e.readFile(o));if((r=i.config)!=null&&r.simpleMap)return new Map(Object.entries(i.config.simpleMap))}function Dqe(e,t,r,i,o,s,l,u,p,h){if(!l||!l.enable)return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]};const m=new Map;r=Hi(r,Z=>{const V=ga(Z);if(YE(V))return V});const b=[];l.include&&O(l.include,"Explicitly included types");const A=l.exclude||[];if(!h.types){const Z=new Set(r.map(ai));Z.add(i),Z.forEach(V=>{U(V,"bower.json","bower_components",b),U(V,"package.json","node_modules",b)})}if(l.disableFilenameBasedTypeAcquisition||K(r),u){const Z=DE(u.map(ADe),dS,Uu);O(Z,"Inferred typings from unresolved imports")}for(const Z of A)m.delete(Z)&&t&&t(`Typing for ${Z} is in exclude list, will be ignored.`);s.forEach((Z,V)=>{const se=p.get(V);m.get(V)===!1&&se!==void 0&&TDe(Z,se)&&m.set(V,Z.typingLocation)});const I=[],R=[];m.forEach((Z,V)=>{Z?R.push(Z):I.push(V)});const M={cachedTypingPaths:R,newTypingNames:I,filesToWatch:b};return t&&t(`Finished typings discovery:${O0(M)}`),M;function C(Z){m.has(Z)||m.set(Z,!1)}function O(Z,V){t&&t(`${V}: ${JSON.stringify(Z)}`),Ue(Z,C)}function U(Z,V,se,G){const ne=Qr(Z,V);let he,ye;e.fileExists(ne)&&(G.push(ne),he=mw(ne,fe=>e.readFile(fe)).config,ye=Pi([he.dependencies,he.devDependencies,he.optionalDependencies,he.peerDependencies],Xh),O(ye,`Typing names in '${ne}' dependencies`));const $=Qr(Z,se);if(G.push($),!e.directoryExists($))return;const Y=[],oe=ye?ye.map(fe=>Qr($,fe,V)):e.readDirectory($,[".json"],void 0,void 0,3).filter(fe=>{if(ic(fe)!==V)return!1;const Ne=zc(ga(fe)),pe=Ne[Ne.length-3][0]==="@";return pe&&ch(Ne[Ne.length-4])===se||!pe&&ch(Ne[Ne.length-3])===se});t&&t(`Searching for typing names in ${$}; all files: ${JSON.stringify(oe)}`);for(const fe of oe){const Ne=ga(fe),ie=mw(Ne,Le=>e.readFile(Le)).config;if(!ie.name)continue;const ve=ie.types||ie.typings;if(ve){const Le=go(ve,ai(Ne));e.fileExists(Le)?(t&&t(` Package '${ie.name}' provides its own types.`),m.set(ie.name,Le)):t&&t(` Package '${ie.name}' provides its own types but they are missing.`)}else Y.push(ie.name)}O(Y," Found package names")}function K(Z){const V=Hi(Z,G=>{if(!YE(G))return;const ne=Id(ch(ic(G))),he=bG(ne);return o.get(he)});V.length&&O(V,"Inferred typings from file names"),bt(Z,G=>Il(G,".jsx"))&&(t&&t("Inferred 'react' typings due to presence of '.jsx' extension"),C("react"))}}function Nqe(e){return mue(e,!0)}function mue(e,t){if(!e)return 1;if(e.length>bue)return 2;if(e.charCodeAt(0)===46)return 3;if(e.charCodeAt(0)===95)return 4;if(t){const r=/^@([^/]+)\/([^/]+)$/.exec(e);if(r){const i=mue(r[1],!1);if(i!==0)return{name:r[1],isScopeName:!0,result:i};const o=mue(r[2],!1);return o!==0?{name:r[2],isScopeName:!1,result:o}:0}}return encodeURIComponent(e)!==e?5:0}function Cqe(e,t){return typeof e=="object"?IDe(t,e.result,e.name,e.isScopeName):IDe(t,e,t,!1)}function IDe(e,t,r,i){const o=i?"Scope":"Package";switch(t){case 1:return`'${e}':: ${o} name '${r}' cannot be empty`;case 2:return`'${e}':: ${o} name '${r}' should be less than ${bue} characters`;case 3:return`'${e}':: ${o} name '${r}' cannot start with '.'`;case 4:return`'${e}':: ${o} name '${r}' cannot start with '_'`;case 5:return`'${e}':: ${o} name '${r}' contains non URI safe characters`;case 0:return N.fail();default:N.assertNever(t)}}var _ue,hue,gue,vue,yue,bue,Pqe=T({"src/jsTyping/jsTyping.ts"(){tO(),K7(),_ue=["assert","assert/strict","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","diagnostics_channel","dns","dns/promises","domain","events","fs","fs/promises","http","https","http2","inspector","module","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","stream/promises","string_decoder","timers","timers/promises","tls","trace_events","tty","url","util","util/types","v8","vm","wasi","worker_threads","zlib"],hue=_ue.map(e=>`node:${e}`),gue=[..._ue,...hue],vue=new Set(gue),yue=(e=>(e[e.Ok=0]="Ok",e[e.EmptyName=1]="EmptyName",e[e.NameTooLong=2]="NameTooLong",e[e.NameStartsWithDot=3]="NameStartsWithDot",e[e.NameStartsWithUnderscore=4]="NameStartsWithUnderscore",e[e.NameContainsNonURISafeCharacters=5]="NameContainsNonURISafeCharacters",e))(yue||{}),bue=214}}),G_={};X(G_,{NameValidationResult:()=>yue,discoverTypings:()=>Dqe,isTypingUpToDate:()=>TDe,loadSafeList:()=>xqe,loadTypesMap:()=>Rqe,nodeCoreModuleList:()=>gue,nodeCoreModules:()=>vue,nonRelativeModuleNameForTypingCache:()=>ADe,prefixedNodeCoreModuleList:()=>hue,renderPackageNameValidationFailure:()=>Cqe,validatePackageName:()=>Nqe});var Mqe=T({"src/jsTyping/_namespaces/ts.JsTyping.ts"(){Pqe()}}),tO=T({"src/jsTyping/_namespaces/ts.ts"(){ra(),Mqe(),K7()}});function X7(e){return{indentSize:4,tabSize:4,newLineCharacter:e||`
+`,convertTabsToSpaces:!0,indentStyle:2,insertSpaceAfterConstructor:!1,insertSpaceAfterCommaDelimiter:!0,insertSpaceAfterSemicolonInForStatements:!0,insertSpaceBeforeAndAfterBinaryOperators:!0,insertSpaceAfterKeywordsInControlFlowStatements:!0,insertSpaceAfterFunctionKeywordForAnonymousFunctions:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:!1,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:!0,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:!1,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:!1,insertSpaceBeforeFunctionParenthesis:!1,placeOpenBraceOnNewLineForFunctions:!1,placeOpenBraceOnNewLineForControlBlocks:!1,semicolons:"ignore",trimTrailingWhitespace:!0,indentSwitchCase:!0}}var Y7,DK,NK,CK,kf,PK,MK,LK,kK,wK,OK,WK,Eue,nO,FK,zK,BK,GK,VK,jK,UK,HK,qK,Lqe=T({"src/services/types.ts"(){(e=>{class t{constructor(o){this.text=o}getText(o,s){return o===0&&s===this.text.length?this.text:this.text.substring(o,s)}getLength(){return this.text.length}getChangeRange(){}}function r(i){return new t(i)}e.fromString=r})(Y7||(Y7={})),DK=(e=>(e[e.Dependencies=1]="Dependencies",e[e.DevDependencies=2]="DevDependencies",e[e.PeerDependencies=4]="PeerDependencies",e[e.OptionalDependencies=8]="OptionalDependencies",e[e.All=15]="All",e))(DK||{}),NK=(e=>(e[e.Off=0]="Off",e[e.On=1]="On",e[e.Auto=2]="Auto",e))(NK||{}),CK=(e=>(e[e.Semantic=0]="Semantic",e[e.PartialSemantic=1]="PartialSemantic",e[e.Syntactic=2]="Syntactic",e))(CK||{}),kf={},PK=(e=>(e.Original="original",e.TwentyTwenty="2020",e))(PK||{}),MK=(e=>(e.All="All",e.SortAndCombine="SortAndCombine",e.RemoveUnused="RemoveUnused",e))(MK||{}),LK=(e=>(e[e.Invoked=1]="Invoked",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",e))(LK||{}),kK=(e=>(e.Type="Type",e.Parameter="Parameter",e.Enum="Enum",e))(kK||{}),wK=(e=>(e.none="none",e.definition="definition",e.reference="reference",e.writtenReference="writtenReference",e))(wK||{}),OK=(e=>(e[e.None=0]="None",e[e.Block=1]="Block",e[e.Smart=2]="Smart",e))(OK||{}),WK=(e=>(e.Ignore="ignore",e.Insert="insert",e.Remove="remove",e))(WK||{}),Eue=X7(`
+`),nO=(e=>(e[e.aliasName=0]="aliasName",e[e.className=1]="className",e[e.enumName=2]="enumName",e[e.fieldName=3]="fieldName",e[e.interfaceName=4]="interfaceName",e[e.keyword=5]="keyword",e[e.lineBreak=6]="lineBreak",e[e.numericLiteral=7]="numericLiteral",e[e.stringLiteral=8]="stringLiteral",e[e.localName=9]="localName",e[e.methodName=10]="methodName",e[e.moduleName=11]="moduleName",e[e.operator=12]="operator",e[e.parameterName=13]="parameterName",e[e.propertyName=14]="propertyName",e[e.punctuation=15]="punctuation",e[e.space=16]="space",e[e.text=17]="text",e[e.typeParameterName=18]="typeParameterName",e[e.enumMemberName=19]="enumMemberName",e[e.functionName=20]="functionName",e[e.regularExpressionLiteral=21]="regularExpressionLiteral",e[e.link=22]="link",e[e.linkName=23]="linkName",e[e.linkText=24]="linkText",e))(nO||{}),FK=(e=>(e[e.None=0]="None",e[e.MayIncludeAutoImports=1]="MayIncludeAutoImports",e[e.IsImportStatementCompletion=2]="IsImportStatementCompletion",e[e.IsContinuation=4]="IsContinuation",e[e.ResolvedModuleSpecifiers=8]="ResolvedModuleSpecifiers",e[e.ResolvedModuleSpecifiersBeyondLimit=16]="ResolvedModuleSpecifiersBeyondLimit",e[e.MayIncludeMethodSnippets=32]="MayIncludeMethodSnippets",e))(FK||{}),zK=(e=>(e.Comment="comment",e.Region="region",e.Code="code",e.Imports="imports",e))(zK||{}),BK=(e=>(e[e.JavaScript=0]="JavaScript",e[e.SourceMap=1]="SourceMap",e[e.Declaration=2]="Declaration",e))(BK||{}),GK=(e=>(e[e.None=0]="None",e[e.InMultiLineCommentTrivia=1]="InMultiLineCommentTrivia",e[e.InSingleQuoteStringLiteral=2]="InSingleQuoteStringLiteral",e[e.InDoubleQuoteStringLiteral=3]="InDoubleQuoteStringLiteral",e[e.InTemplateHeadOrNoSubstitutionTemplate=4]="InTemplateHeadOrNoSubstitutionTemplate",e[e.InTemplateMiddleOrTail=5]="InTemplateMiddleOrTail",e[e.InTemplateSubstitutionPosition=6]="InTemplateSubstitutionPosition",e))(GK||{}),VK=(e=>(e[e.Punctuation=0]="Punctuation",e[e.Keyword=1]="Keyword",e[e.Operator=2]="Operator",e[e.Comment=3]="Comment",e[e.Whitespace=4]="Whitespace",e[e.Identifier=5]="Identifier",e[e.NumberLiteral=6]="NumberLiteral",e[e.BigIntLiteral=7]="BigIntLiteral",e[e.StringLiteral=8]="StringLiteral",e[e.RegExpLiteral=9]="RegExpLiteral",e))(VK||{}),jK=(e=>(e.unknown="",e.warning="warning",e.keyword="keyword",e.scriptElement="script",e.moduleElement="module",e.classElement="class",e.localClassElement="local class",e.interfaceElement="interface",e.typeElement="type",e.enumElement="enum",e.enumMemberElement="enum member",e.variableElement="var",e.localVariableElement="local var",e.variableUsingElement="using",e.variableAwaitUsingElement="await using",e.functionElement="function",e.localFunctionElement="local function",e.memberFunctionElement="method",e.memberGetAccessorElement="getter",e.memberSetAccessorElement="setter",e.memberVariableElement="property",e.memberAccessorVariableElement="accessor",e.constructorImplementationElement="constructor",e.callSignatureElement="call",e.indexSignatureElement="index",e.constructSignatureElement="construct",e.parameterElement="parameter",e.typeParameterElement="type parameter",e.primitiveType="primitive type",e.label="label",e.alias="alias",e.constElement="const",e.letElement="let",e.directory="directory",e.externalModuleName="external module name",e.jsxAttribute="JSX attribute",e.string="string",e.link="link",e.linkName="link name",e.linkText="link text",e))(jK||{}),UK=(e=>(e.none="",e.publicMemberModifier="public",e.privateMemberModifier="private",e.protectedMemberModifier="protected",e.exportedModifier="export",e.ambientModifier="declare",e.staticModifier="static",e.abstractModifier="abstract",e.optionalModifier="optional",e.deprecatedModifier="deprecated",e.dtsModifier=".d.ts",e.tsModifier=".ts",e.tsxModifier=".tsx",e.jsModifier=".js",e.jsxModifier=".jsx",e.jsonModifier=".json",e.dmtsModifier=".d.mts",e.mtsModifier=".mts",e.mjsModifier=".mjs",e.dctsModifier=".d.cts",e.ctsModifier=".cts",e.cjsModifier=".cjs",e))(UK||{}),HK=(e=>(e.comment="comment",e.identifier="identifier",e.keyword="keyword",e.numericLiteral="number",e.bigintLiteral="bigint",e.operator="operator",e.stringLiteral="string",e.whiteSpace="whitespace",e.text="text",e.punctuation="punctuation",e.className="class name",e.enumName="enum name",e.interfaceName="interface name",e.moduleName="module name",e.typeParameterName="type parameter name",e.typeAliasName="type alias name",e.parameterName="parameter name",e.docCommentTagName="doc comment tag name",e.jsxOpenTagName="jsx open tag name",e.jsxCloseTagName="jsx close tag name",e.jsxSelfClosingTagName="jsx self closing tag name",e.jsxAttribute="jsx attribute",e.jsxText="jsx text",e.jsxAttributeStringLiteralValue="jsx attribute string literal value",e))(HK||{}),qK=(e=>(e[e.comment=1]="comment",e[e.identifier=2]="identifier",e[e.keyword=3]="keyword",e[e.numericLiteral=4]="numericLiteral",e[e.operator=5]="operator",e[e.stringLiteral=6]="stringLiteral",e[e.regularExpressionLiteral=7]="regularExpressionLiteral",e[e.whiteSpace=8]="whiteSpace",e[e.text=9]="text",e[e.punctuation=10]="punctuation",e[e.className=11]="className",e[e.enumName=12]="enumName",e[e.interfaceName=13]="interfaceName",e[e.moduleName=14]="moduleName",e[e.typeParameterName=15]="typeParameterName",e[e.typeAliasName=16]="typeAliasName",e[e.parameterName=17]="parameterName",e[e.docCommentTagName=18]="docCommentTagName",e[e.jsxOpenTagName=19]="jsxOpenTagName",e[e.jsxCloseTagName=20]="jsxCloseTagName",e[e.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",e[e.jsxAttribute=22]="jsxAttribute",e[e.jsxText=23]="jsxText",e[e.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",e[e.bigintLiteral=25]="bigintLiteral",e))(qK||{})}});function rO(e){switch(e.kind){case 260:return lr(e)&&YV(e)?7:1;case 169:case 208:case 172:case 171:case 303:case 304:case 174:case 173:case 176:case 177:case 178:case 262:case 218:case 219:case 299:case 291:return 1;case 168:case 264:case 265:case 187:return 2;case 353:return e.name===void 0?3:2;case 306:case 263:return 3;case 267:return ku(e)||Kg(e)===1?5:4;case 266:case 275:case 276:case 271:case 272:case 277:case 278:return 7;case 312:return 5}return 7}function oT(e){e=oX(e);const t=e.parent;return e.kind===312?1:kl(t)||Ku(t)||Ah(t)||np(t)||Sh(t)||tu(t)&&e===t.name?7:$7(e)?kqe(e):Bg(e)?rO(t):Zd(e)&&Gn(e,Ym(IP,kA,R0))?7:Fqe(e)?2:wqe(e)?4:gl(t)?(N.assert(sm(t.parent)),2):Zy(t)?3:1}function kqe(e){const t=e.kind===166?e:xd(e.parent)&&e.parent.right===e?e.parent:void 0;return t&&t.parent.kind===271?7:4}function $7(e){for(;e.parent.kind===166;)e=e.parent;return hR(e.parent)&&e.parent.moduleReference===e}function wqe(e){return Oqe(e)||Wqe(e)}function Oqe(e){let t=e,r=!0;if(t.parent.kind===166){for(;t.parent&&t.parent.kind===166;)t=t.parent;r=t.right===e}return t.parent.kind===183&&!r}function Wqe(e){let t=e,r=!0;if(t.parent.kind===211){for(;t.parent&&t.parent.kind===211;)t=t.parent;r=t.name===e}if(!r&&t.parent.kind===233&&t.parent.parent.kind===298){const i=t.parent.parent.parent;return i.kind===263&&t.parent.parent.token===119||i.kind===264&&t.parent.parent.token===96}return!1}function Fqe(e){switch(VC(e)&&(e=e.parent),e.kind){case 110:return!ng(e);case 197:return!0}switch(e.parent.kind){case 183:return!0;case 205:return!e.parent.isTypeOf;case 233:return tg(e.parent)}return!1}function JK(e,t=!1,r=!1){return iO(e,la,XK,t,r)}function r2(e,t=!1,r=!1){return iO(e,r1,XK,t,r)}function KK(e,t=!1,r=!1){return iO(e,I_,XK,t,r)}function Sue(e,t=!1,r=!1){return iO(e,i1,zqe,t,r)}function Tue(e,t=!1,r=!1){return iO(e,Eu,XK,t,r)}function Aue(e,t=!1,r=!1){return iO(e,ud,Bqe,t,r)}function XK(e){return e.expression}function zqe(e){return e.tag}function Bqe(e){return e.tagName}function iO(e,t,r,i,o){let s=i?Iue(e):Q7(e);return o&&(s=$l(s)),!!s&&!!s.parent&&t(s.parent)&&r(s.parent)===s}function Q7(e){return AD(e)?e.parent:e}function Iue(e){return AD(e)||ZK(e)?e.parent:e}function Z7(e,t){for(;e;){if(e.kind===256&&e.label.escapedText===t)return e.label;e=e.parent}}function oO(e,t){return Fr(e.expression)?e.expression.name.text===t:!1}function aO(e){var t;return Ve(e)&&((t=ii(e.parent,pC))==null?void 0:t.label)===e}function YK(e){var t;return Ve(e)&&((t=ii(e.parent,o1))==null?void 0:t.label)===e}function $K(e){return YK(e)||aO(e)}function QK(e){var t;return((t=ii(e.parent,iR))==null?void 0:t.tagName)===e}function xue(e){var t;return((t=ii(e.parent,xd))==null?void 0:t.right)===e}function AD(e){var t;return((t=ii(e.parent,Fr))==null?void 0:t.name)===e}function ZK(e){var t;return((t=ii(e.parent,Qs))==null?void 0:t.argumentExpression)===e}function eX(e){var t;return((t=ii(e.parent,Xl))==null?void 0:t.name)===e}function tX(e){var t;return Ve(e)&&((t=ii(e.parent,ea))==null?void 0:t.name)===e}function e5(e){switch(e.parent.kind){case 172:case 171:case 303:case 306:case 174:case 173:case 177:case 178:case 267:return Mo(e.parent)===e;case 212:return e.parent.argumentExpression===e;case 167:return!0;case 201:return e.parent.parent.kind===199;default:return!1}}function Rue(e){return h0(e.parent.parent)&&xC(e.parent.parent)===e}function aT(e){for(Zf(e)&&(e=e.parent.parent);;){if(e=e.parent,!e)return;switch(e.kind){case 312:case 174:case 173:case 262:case 218:case 177:case 178:case 263:case 264:case 266:case 267:return e}}}function y1(e){switch(e.kind){case 312:return sc(e)?"module":"script";case 267:return"module";case 263:case 231:return"class";case 264:return"interface";case 265:case 345:case 353:return"type";case 266:return"enum";case 260:return t(e);case 208:return t(C_(e));case 219:case 262:case 218:return"function";case 177:return"getter";case 178:return"setter";case 174:case 173:return"method";case 303:const{initializer:r}=e;return ea(r)?"method":"property";case 172:case 171:case 304:case 305:return"property";case 181:return"index";case 180:return"construct";case 179:return"call";case 176:case 175:return"constructor";case 168:return"type parameter";case 306:return"enum member";case 169:return Zr(e,31)?"property":"parameter";case 271:case 276:case 281:case 274:case 280:return"alias";case 226:const i=Bl(e),{right:o}=e;switch(i){case 7:case 8:case 9:case 0:return"";case 1:case 2:const l=y1(o);return l===""?"const":l;case 3:return Os(o)?"method":"property";case 4:return"property";case 5:return Os(o)?"method":"property";case 6:return"local class";default:return""}case 80:return Sh(e.parent)?"alias":"";case 277:const s=y1(e.expression);return s===""?"const":s;default:return""}function t(r){return uR(r)?"const":X4(r)?"let":"var"}}function ID(e){switch(e.kind){case 110:return!0;case 80:return hU(e)&&e.parent.kind===169;default:return!1}}function lm(e,t){const r=kg(t),i=t.getLineAndCharacterOfPosition(e).line;return r[i]}function cf(e,t){return nX(e.pos,e.end,t)}function Due(e,t){return lO(e,t.pos)&&lO(e,t.end)}function sO(e,t){return e.pos<=t&&t<=e.end}function lO(e,t){return e.pos<t&&t<e.end}function nX(e,t,r){return e<=r.pos&&t>=r.end}function cO(e,t,r){return e.pos<=t&&e.end>=r}function i2(e,t,r){return n5(e.pos,e.end,t,r)}function t5(e,t,r,i){return n5(e.getStart(t),e.end,r,i)}function n5(e,t,r,i){const o=Math.max(e,r),s=Math.min(t,i);return o<s}function rX(e,t,r){return N.assert(e.pos<=t),t<e.end||!i_(e,r)}function i_(e,t){if(e===void 0||zl(e))return!1;switch(e.kind){case 263:case 264:case 266:case 210:case 206:case 187:case 241:case 268:case 269:case 275:case 279:return iX(e,20,t);case 299:return i_(e.block,t);case 214:if(!e.arguments)return!0;case 213:case 217:case 196:return iX(e,22,t);case 184:case 185:return i_(e.type,t);case 176:case 177:case 178:case 262:case 218:case 174:case 173:case 180:case 179:case 219:return e.body?i_(e.body,t):e.type?i_(e.type,t):uO(e,22,t);case 267:return!!e.body&&i_(e.body,t);case 245:return e.elseStatement?i_(e.elseStatement,t):i_(e.thenStatement,t);case 244:return i_(e.expression,t)||uO(e,27,t);case 209:case 207:case 212:case 167:case 189:return iX(e,24,t);case 181:return e.type?i_(e.type,t):uO(e,24,t);case 296:case 297:return!1;case 248:case 249:case 250:case 247:return i_(e.statement,t);case 246:return uO(e,117,t)?iX(e,22,t):i_(e.statement,t);case 186:return i_(e.exprName,t);case 221:case 220:case 222:case 229:case 230:return i_(e.expression,t);case 215:return i_(e.template,t);case 228:const i=tl(e.templateSpans);return i_(i,t);case 239:return Yf(e.literal);case 278:case 272:return Yf(e.moduleSpecifier);case 224:return i_(e.operand,t);case 226:return i_(e.right,t);case 227:return i_(e.whenFalse,t);default:return!0}}function iX(e,t,r){const i=e.getChildren(r);if(i.length){const o=Ya(i);if(o.kind===t)return!0;if(o.kind===27&&i.length!==1)return i[i.length-2].kind===t}return!1}function Nue(e){const t=r5(e);if(!t)return;const r=t.getChildren();return{listItemIndex:sR(r,e),list:t}}function uO(e,t,r){return!!vs(e,t,r)}function vs(e,t,r){return An(e.getChildren(r),i=>i.kind===t)}function r5(e){const t=An(e.parent.getChildren(),r=>eD(r)&&cf(r,e));return N.assert(!t||Nr(t.getChildren(),e)),t}function xDe(e){return e.kind===90}function Gqe(e){return e.kind===86}function Vqe(e){return e.kind===100}function jqe(e){if(ld(e))return e.name;if(Ic(e)){const t=e.modifiers&&An(e.modifiers,xDe);if(t)return t}if(Zc(e)){const t=An(e.getChildren(),Gqe);if(t)return t}}function Uqe(e){if(ld(e))return e.name;if(Ac(e)){const t=An(e.modifiers,xDe);if(t)return t}if(Os(e)){const t=An(e.getChildren(),Vqe);if(t)return t}}function Hqe(e){let t;return Gn(e,r=>(ji(r)&&(t=r),!xd(r.parent)&&!ji(r.parent)&&!yS(r.parent))),t}function i5(e,t){if(e.flags&16777216)return;const r=T5(e,t);if(r)return r;const i=Hqe(e);return i&&t.getTypeAtLocation(i)}function qqe(e,t){if(!t)switch(e.kind){case 263:case 231:return jqe(e);case 262:case 218:return Uqe(e);case 176:return e}if(ld(e))return e.name}function RDe(e,t){if(e.importClause){if(e.importClause.name&&e.importClause.namedBindings)return;if(e.importClause.name)return e.importClause.name;if(e.importClause.namedBindings){if(Hg(e.importClause.namedBindings)){const r=sh(e.importClause.namedBindings.elements);return r?r.name:void 0}else if(nb(e.importClause.namedBindings))return e.importClause.namedBindings.name}}if(!t)return e.moduleSpecifier}function DDe(e,t){if(e.exportClause){if(Pf(e.exportClause))return sh(e.exportClause.elements)?e.exportClause.elements[0].name:void 0;if(Th(e.exportClause))return e.exportClause.name}if(!t)return e.moduleSpecifier}function Jqe(e){if(e.types.length===1)return e.types[0].expression}function NDe(e,t){const{parent:r}=e;if(xa(e)&&(t||e.kind!==90)?Cm(r)&&Nr(r.modifiers,e):e.kind===86?Ic(r)||Zc(e):e.kind===100?Ac(r)||Os(e):e.kind===120?hd(r):e.kind===94?x0(r):e.kind===156?Nm(r):e.kind===145||e.kind===144?Xl(r):e.kind===102?tu(r):e.kind===139?rf(r):e.kind===153&&bp(r)){const i=qqe(r,t);if(i)return i}if((e.kind===115||e.kind===87||e.kind===121)&&Uc(r)&&r.declarations.length===1){const i=r.declarations[0];if(Ve(i.name))return i.name}if(e.kind===156){if(Sh(r)&&r.isTypeOnly){const i=RDe(r.parent,t);if(i)return i}if(Yl(r)&&r.isTypeOnly){const i=DDe(r,t);if(i)return i}}if(e.kind===130){if(np(r)&&r.propertyName||Ku(r)&&r.propertyName||nb(r)||Th(r))return r.name;if(Yl(r)&&r.exportClause&&Th(r.exportClause))return r.exportClause.name}if(e.kind===102&&kc(r)){const i=RDe(r,t);if(i)return i}if(e.kind===95){if(Yl(r)){const i=DDe(r,t);if(i)return i}if(kl(r))return $l(r.expression)}if(e.kind===149&&Ah(r))return r.expression;if(e.kind===161&&(kc(r)||Yl(r))&&r.moduleSpecifier)return r.moduleSpecifier;if((e.kind===96||e.kind===119)&&of(r)&&r.token===e.kind){const i=Jqe(r);if(i)return i}if(e.kind===96){if(gl(r)&&r.constraint&&Cf(r.constraint))return r.constraint.typeName;if(dI(r)&&Cf(r.extendsType))return r.extendsType.typeName}if(e.kind===140&&BS(r))return r.typeParameter.name;if(e.kind===103&&gl(r)&&JR(r.parent))return r.name;if(e.kind===143&&VS(r)&&r.operator===143&&Cf(r.type))return r.type.typeName;if(e.kind===148&&VS(r)&&r.operator===148&&Xk(r.type)&&Cf(r.type.elementType))return r.type.elementType.typeName;if(!t){if((e.kind===105&&r1(r)||e.kind===116&&pI(r)||e.kind===114&&KR(r)||e.kind===135&&eb(r)||e.kind===127&&iF(r)||e.kind===91&&Vae(r))&&r.expression)return $l(r.expression);if((e.kind===103||e.kind===104)&&mr(r)&&r.operatorToken===e)return $l(r.right);if(e.kind===130&&$k(r)&&Cf(r.type))return r.type.typeName;if(e.kind===103&&aF(r)||e.kind===165&&Qk(r))return $l(r.expression)}return e}function oX(e){return NDe(e,!1)}function o5(e){return NDe(e,!0)}function Vd(e,t){return xD(e,t,r=>N_(r)||Bd(r.kind)||Ji(r))}function xD(e,t,r){return CDe(e,t,!1,r,!1)}function po(e,t){return CDe(e,t,!0,void 0,!1)}function CDe(e,t,r,i,o){let s=e,l;e:for(;;){const p=s.getChildren(e),h=bA(p,t,(m,b)=>b,(m,b)=>{const A=p[m].getEnd();if(A<t)return-1;const I=r?p[m].getFullStart():p[m].getStart(e,!0);return I>t?1:u(p[m],I,A)?p[m-1]&&u(p[m-1])?1:0:i&&I===t&&p[m-1]&&p[m-1].getEnd()===t&&u(p[m-1])?1:-1});if(l)return l;if(h>=0&&p[h]){s=p[h];continue e}return s}function u(p,h,m){if(m??(m=p.getEnd()),m<t||(h??(h=r?p.getFullStart():p.getStart(e,!0)),h>t))return!1;if(t<m||t===m&&(p.kind===1||o))return!0;if(i&&m===t){const b=xc(t,e,p);if(b&&i(b))return l=b,!0}return!1}}function Cue(e,t){let r=po(e,t);for(;s5(r);){const i=b1(r,r.parent,e);if(!i)return;r=i}return r}function a5(e,t){const r=po(e,t);return NA(r)&&t>r.getStart(e)&&t<r.getEnd()?r:xc(t,e)}function b1(e,t,r){return i(t);function i(o){return NA(o)&&o.pos===e.end?o:Ut(o.getChildren(r),s=>(s.pos<=e.pos&&s.end>e.end||s.pos===e.end)&&Wue(s,r)?i(s):void 0)}}function xc(e,t,r,i){const o=s(r||t);return N.assert(!(o&&s5(o))),o;function s(l){if(PDe(l)&&l.kind!==1)return l;const u=l.getChildren(t),p=bA(u,e,(m,b)=>b,(m,b)=>e<u[m].end?!u[m-1]||e>=u[m-1].end?0:1:-1);if(p>=0&&u[p]){const m=u[p];if(e<m.end)if(m.getStart(t,!i)>=e||!Wue(m,t)||s5(m)){const I=Mue(u,p,t,l.kind);return I?!i&&k4(I)&&I.getChildren(t).length?s(I):Pue(I,t):void 0}else return s(m)}N.assert(r!==void 0||l.kind===312||l.kind===1||k4(l));const h=Mue(u,u.length,t,l.kind);return h&&Pue(h,t)}}function PDe(e){return NA(e)&&!s5(e)}function Pue(e,t){if(PDe(e))return e;const r=e.getChildren(t);if(r.length===0)return e;const i=Mue(r,r.length,t,e.kind);return i&&Pue(i,t)}function Mue(e,t,r,i){for(let o=t-1;o>=0;o--){const s=e[o];if(s5(s))o===0&&(i===12||i===285)&&N.fail("`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`");else if(Wue(e[o],r))return e[o]}}function CI(e,t,r=xc(t,e)){if(r&&ij(r)){const i=r.getStart(e),o=r.getEnd();if(i<t&&t<o)return!0;if(t===o)return!!r.isUnterminated}return!1}function Lue(e,t){const r=po(e,t);return r?!!(r.kind===12||r.kind===30&&r.parent.kind===12||r.kind===30&&r.parent.kind===294||r&&r.kind===20&&r.parent.kind===294||r.kind===30&&r.parent.kind===287):!1}function s5(e){return nI(e)&&e.containsOnlyTriviaWhiteSpaces}function aX(e,t){const r=po(e,t);return wy(r.kind)&&t>r.getStart(e)}function kue(e,t){const r=po(e,t);return!!(nI(r)||r.kind===19&&TP(r.parent)&&dg(r.parent.parent)||r.kind===30&&ud(r.parent)&&dg(r.parent.parent))}function l5(e,t){function r(i){for(;i;)if(i.kind>=285&&i.kind<=294||i.kind===12||i.kind===30||i.kind===32||i.kind===80||i.kind===20||i.kind===19||i.kind===44)i=i.parent;else if(i.kind===284){if(t>i.getStart(e))return!0;i=i.parent}else return!1;return!1}return r(po(e,t))}function c5(e,t,r){const i=fa(e.kind),o=fa(t),s=e.getFullStart(),l=r.text.lastIndexOf(o,s);if(l===-1)return;if(r.text.lastIndexOf(i,s-1)<l){const h=xc(l+1,r);if(h&&h.kind===t)return h}const u=e.kind;let p=0;for(;;){const h=xc(e.getFullStart(),r);if(!h)return;if(e=h,e.kind===t){if(p===0)return e;p--}else e.kind===u&&p++}}function wue(e,t,r){return t?e.getNonNullableType():r?e.getNonOptionalType():e}function dO(e,t,r){const i=lX(e,t);return i!==void 0&&(tg(i.called)||sX(i.called,i.nTypeArguments,r).length!==0||dO(i.called,t,r))}function sX(e,t,r){let i=r.getTypeAtLocation(e);return qu(e.parent)&&(i=wue(i,uC(e.parent),!0)),(r1(e.parent)?i.getConstructSignatures():i.getCallSignatures()).filter(s=>!!s.typeParameters&&s.typeParameters.length>=t)}function lX(e,t){if(t.text.lastIndexOf("<",e?e.pos:t.text.length)===-1)return;let r=e,i=0,o=0;for(;r;){switch(r.kind){case 30:if(r=xc(r.getFullStart(),t),r&&r.kind===29&&(r=xc(r.getFullStart(),t)),!r||!Ve(r))return;if(!i)return Bg(r)?void 0:{called:r,nTypeArguments:o};i--;break;case 50:i=3;break;case 49:i=2;break;case 32:i++;break;case 20:if(r=c5(r,19,t),!r)return;break;case 22:if(r=c5(r,21,t),!r)return;break;case 24:if(r=c5(r,23,t),!r)return;break;case 28:o++;break;case 39:case 80:case 11:case 9:case 10:case 112:case 97:case 114:case 96:case 143:case 25:case 52:case 58:case 59:break;default:if(ji(r))break;return}r=xc(r.getFullStart(),t)}}function Qv(e,t,r){return Oc.getRangeOfEnclosingComment(e,t,void 0,r)}function Oue(e,t){const r=po(e,t);return!!Gn(r,n_)}function Wue(e,t){return e.kind===1?!!e.jsDoc:e.getWidth(t)!==0}function o2(e,t=0){const r=[],i=Ju(e)?qV(e)&~t:0;return i&2&&r.push("private"),i&4&&r.push("protected"),i&1&&r.push("public"),(i&256||Rl(e))&&r.push("static"),i&64&&r.push("abstract"),i&32&&r.push("export"),i&65536&&r.push("deprecated"),e.flags&33554432&&r.push("declare"),e.kind===277&&r.push("export"),r.length>0?r.join(","):""}function Fue(e){if(e.kind===183||e.kind===213)return e.typeArguments;if(ea(e)||e.kind===263||e.kind===264)return e.typeParameters}function u5(e){return e===2||e===3}function cX(e){return!!(e===11||e===14||wy(e))}function MDe(e,t,r){return!!(t.flags&4)&&e.isEmptyAnonymousObjectType(r)}function zue(e){if(!e.isIntersection())return!1;const{types:t,checker:r}=e;return t.length===2&&(MDe(r,t[0],t[1])||MDe(r,t[1],t[0]))}function pO(e,t,r){return wy(e.kind)&&e.getStart(r)<t&&t<e.end||!!e.isUnterminated&&t===e.end}function uX(e){switch(e){case 125:case 123:case 124:return!0}return!1}function dX(e){const t=hG(e);return vq(t,e&&e.configFile),t}function Zv(e){return!!((e.kind===209||e.kind===210)&&(e.parent.kind===226&&e.parent.left===e&&e.parent.operatorToken.kind===64||e.parent.kind===250&&e.parent.initializer===e||Zv(e.parent.kind===303?e.parent.parent:e.parent)))}function Bue(e,t){return LDe(e,t,!0)}function Gue(e,t){return LDe(e,t,!1)}function LDe(e,t,r){const i=Qv(e,t,void 0);return!!i&&r===GDe.test(e.text.substring(i.pos,i.end))}function pX(e){if(e)switch(e.kind){case 11:case 15:return fX(e);default:return Nd(e)}}function Nd(e,t,r){return pc(e.getStart(t),(r||e).getEnd())}function fX(e){if(!e.isUnterminated)return pc(e.getStart()+1,e.getEnd()-1)}function mX(e,t){return xf(e.getStart(t),e.end)}function sb(e){return pc(e.pos,e.end)}function d5(e){return xf(e.start,e.start+e.length)}function p5(e,t,r){return fO(vu(e,t),r)}function fO(e,t){return{span:e,newText:t}}function a2(e){return Nr(W5,e)}function _X(e){return e.kind===156}function f5(e){return _X(e)||Ve(e)&&e.text==="type"}function mO(e){return!!(e.flags&1536)&&e.name.charCodeAt(0)===34}function PI(){const e=[];return t=>{const r=as(t);return!e[r]&&(e[r]=!0)}}function RD(e){return e.getText(0,e.getLength())}function _O(e,t){let r="";for(let i=0;i<t;i++)r+=e;return r}function hX(e){return e.isTypeParameter()&&e.getConstraint()||e}function hO(e){return e.kind===167?nf(e.expression)?e.expression.text:void 0:Ji(e)?Sr(e):em(e)}function Vue(e){return e.getSourceFiles().some(t=>!t.isDeclarationFile&&!e.isSourceFileFromExternalLibrary(t)&&!!(t.externalModuleIndicator||t.commonJsModuleIndicator))}function jue(e){return e.getSourceFiles().some(t=>!t.isDeclarationFile&&!e.isSourceFileFromExternalLibrary(t)&&!!t.externalModuleIndicator)}function gX(e){return!!e.module||os(e)>=2||!!e.noEmit}function sT(e,t){return{fileExists:r=>e.fileExists(r),getCurrentDirectory:()=>t.getCurrentDirectory(),readFile:oa(t,t.readFile),useCaseSensitiveFileNames:oa(t,t.useCaseSensitiveFileNames),getSymlinkCache:oa(t,t.getSymlinkCache)||e.getSymlinkCache,getModuleSpecifierCache:oa(t,t.getModuleSpecifierCache),getPackageJsonInfoCache:()=>{var r;return(r=e.getModuleResolutionCache())==null?void 0:r.getPackageJsonInfoCache()},getGlobalTypingsCacheLocation:oa(t,t.getGlobalTypingsCacheLocation),redirectTargetsMap:e.redirectTargetsMap,getProjectReferenceRedirect:r=>e.getProjectReferenceRedirect(r),isSourceOfProjectReferenceRedirect:r=>e.isSourceOfProjectReferenceRedirect(r),getNearestAncestorDirectoryWithPackageJson:oa(t,t.getNearestAncestorDirectoryWithPackageJson),getFileIncludeReasons:()=>e.getFileIncludeReasons(),getCommonSourceDirectory:()=>e.getCommonSourceDirectory()}}function vX(e,t){return{...sT(e,t),getCommonSourceDirectory:()=>e.getCommonSourceDirectory()}}function m5(e){return e===2||e>=3&&e<=99||e===100}function Uue(e,t,r,i){return e||t&&t.length?ey(e,t,r,i):void 0}function ey(e,t,r,i,o){return w.createImportDeclaration(void 0,e||t?w.createImportClause(!!o,e,t&&t.length?w.createNamedImports(t):void 0):void 0,typeof r=="string"?MI(r,i):r,void 0)}function MI(e,t){return w.createStringLiteral(e,t===0)}function yX(e,t){return p3(e,t)?1:0}function uf(e,t){if(t.quotePreference&&t.quotePreference!=="auto")return t.quotePreference==="single"?0:1;{const r=e.imports&&An(e.imports,i=>Ma(i)&&!$s(i.parent));return r?yX(r,e):1}}function bX(e){switch(e){case 0:return"'";case 1:return'"';default:return N.assertNever(e)}}function _5(e){const t=h5(e);return t===void 0?void 0:Vi(t)}function h5(e){return e.escapedName!=="default"?e.escapedName:Ut(e.declarations,t=>{const r=Mo(t);return r&&r.kind===80?r.escapedText:void 0})}function g5(e){return ls(e)&&(Ah(e.parent)||kc(e.parent)||Ad(e.parent,!1)&&e.parent.arguments[0]===e||Bp(e.parent)&&e.parent.arguments[0]===e)}function gO(e){return Qa(e)&&am(e.parent)&&Ve(e.name)&&!e.propertyName}function v5(e,t){const r=e.getTypeAtLocation(t.parent);return r&&e.getPropertyOfType(r,t.name.text)}function vO(e,t,r){if(e)for(;e.parent;){if($i(e.parent)||!Kqe(r,e.parent,t))return e;e=e.parent}}function Kqe(e,t,r){return HV(e,t.getStart(r))&&t.getEnd()<=Kl(e)}function DD(e,t){return Cm(e)?An(e.modifiers,r=>r.kind===t):void 0}function s2(e,t,r,i,o){const l=(To(r)?r[0]:r).kind===243?Vj:TS,u=nr(t.statements,l);let p=To(r)?Lm.detectImportDeclarationSorting(r,o):3;const h=Lm.getOrganizeImportsComparer(o,p===2),m=To(r)?Dv(r,(b,A)=>Lm.compareImportsOrRequireStatements(b,A,h)):[r];if(!u.length)e.insertNodesAtTopOfFile(t,m,i);else if(u&&(p=Lm.detectImportDeclarationSorting(u,o))){const b=Lm.getOrganizeImportsComparer(o,p===2);for(const A of m){const I=Lm.getImportDeclarationInsertionIndex(u,A,b);if(I===0){const R=u[0]===t.statements[0]?{leadingTriviaOption:_r.LeadingTriviaOption.Exclude}:{};e.insertNodeBefore(t,u[0],A,!1,R)}else{const R=u[I-1];e.insertNodeAfter(t,R,A)}}}else{const b=tl(u);b?e.insertNodesAfter(t,b,m):e.insertNodesAtTopOfFile(t,m,i)}}function EX(e,t){return N.assert(e.isTypeOnly),aa(e.getChildAt(0,t),_X)}function ND(e,t){return!!e&&!!t&&e.start===t.start&&e.length===t.length}function SX(e,t,r){return(r?dS:i0)(e.fileName,t.fileName)&&ND(e.textSpan,t.textSpan)}function TX(e){return(t,r)=>SX(t,r,e)}function AX(e,t){if(e){for(let r=0;r<e.length;r++)if(e.indexOf(e[r])===r){const i=t(e[r],r);if(i)return i}}}function Hue(e,t,r){for(let i=t;i<r;i++)if(!wg(e.charCodeAt(i)))return!1;return!0}function l2(e,t,r){const i=t.tryGetSourcePosition(e);return i&&(!r||r(ga(i.fileName))?i:void 0)}function y5(e,t,r){const{fileName:i,textSpan:o}=e,s=l2({fileName:i,pos:o.start},t,r);if(!s)return;const l=l2({fileName:i,pos:o.start+o.length},t,r),u=l?l.pos-s.pos:o.length;return{fileName:s.fileName,textSpan:{start:s.pos,length:u},originalFileName:e.fileName,originalTextSpan:e.textSpan,contextSpan:IX(e,t,r),originalContextSpan:e.contextSpan}}function IX(e,t,r){const i=e.contextSpan&&l2({fileName:e.fileName,pos:e.contextSpan.start},t,r),o=e.contextSpan&&l2({fileName:e.fileName,pos:e.contextSpan.start+e.contextSpan.length},t,r);return i&&o?{start:i.pos,length:o.pos-i.pos}:void 0}function xX(e){const t=e.declarations?Xc(e.declarations):void 0;return!!Gn(t,r=>Ao(r)?!0:Qa(r)||am(r)||n1(r)?!1:"quit")}function Xqe(){const e=Nk*10;let t,r,i,o;m();const s=b=>u(b,17);return{displayParts:()=>{const b=t.length&&t[t.length-1].text;return o>e&&b&&b!=="..."&&(wg(b.charCodeAt(b.length-1))||t.push(ip(" ",16)),t.push(ip("...",15))),t},writeKeyword:b=>u(b,5),writeOperator:b=>u(b,12),writePunctuation:b=>u(b,15),writeTrailingSemicolon:b=>u(b,15),writeSpace:b=>u(b,16),writeStringLiteral:b=>u(b,8),writeParameter:b=>u(b,13),writeProperty:b=>u(b,14),writeLiteral:b=>u(b,8),writeSymbol:p,writeLine:h,write:s,writeComment:s,getText:()=>"",getTextPos:()=>0,getColumn:()=>0,getLine:()=>0,isAtStartOfLine:()=>!1,hasTrailingWhitespace:()=>!1,hasTrailingComment:()=>!1,rawWrite:Ko,getIndent:()=>i,increaseIndent:()=>{i++},decreaseIndent:()=>{i--},clear:m};function l(){if(!(o>e)&&r){const b=S3(i);b&&(o+=b.length,t.push(ip(b,16))),r=!1}}function u(b,A){o>e||(l(),o+=b.length,t.push(ip(b,A)))}function p(b,A){o>e||(l(),o+=b.length,t.push(que(b,A)))}function h(){o>e||(o+=1,t.push(CD()),r=!0)}function m(){t=[],r=!0,i=0,o=0}}function que(e,t){return ip(e,r(t));function r(i){const o=i.flags;return o&3?xX(i)?13:9:o&4||o&32768||o&65536?14:o&8?19:o&16?20:o&32?1:o&64?4:o&384?2:o&1536?11:o&8192?10:o&262144?18:o&524288||o&2097152?0:17}}function ip(e,t){return{text:e,kind:nO[t]}}function wl(){return ip(" ",16)}function Tp(e){return ip(fa(e),5)}function $u(e){return ip(fa(e),15)}function c2(e){return ip(fa(e),12)}function Jue(e){return ip(e,13)}function Kue(e){return ip(e,14)}function RX(e){const t=PE(e);return t===void 0?df(e):Tp(t)}function df(e){return ip(e,17)}function Xue(e){return ip(e,0)}function Yue(e){return ip(e,18)}function b5(e){return ip(e,24)}function $ue(e,t){return{text:e,kind:nO[23],target:{fileName:jn(t).fileName,textSpan:Nd(t)}}}function DX(e){return ip(e,22)}function Que(e,t){var r;const i=Xae(e)?"link":Yae(e)?"linkcode":"linkplain",o=[DX(`{@${i} `)];if(!e.name)e.text&&o.push(b5(e.text));else{const s=t==null?void 0:t.getSymbolAtLocation(e.name),l=s&&t?PX(s,t):void 0,u=$qe(e.text),p=fc(e.name)+e.text.slice(0,u),h=Yqe(e.text.slice(u)),m=(l==null?void 0:l.valueDeclaration)||((r=l==null?void 0:l.declarations)==null?void 0:r[0]);if(m)o.push($ue(p,m)),h&&o.push(b5(h));else{const b=u===0||e.text.charCodeAt(u)===124&&p.charCodeAt(p.length-1)!==32?" ":"";o.push(b5(p+b+h))}}return o.push(DX("}")),o}function Yqe(e){let t=0;if(e.charCodeAt(t++)===124){for(;t<e.length&&e.charCodeAt(t)===32;)t++;return e.slice(t)}return e}function $qe(e){let t=e.indexOf("://");if(t===0){for(;t<e.length&&e.charCodeAt(t)!==124;)t++;return t}if(e.indexOf("()")===0)return 2;if(e.charAt(0)==="<"){let r=0,i=0;for(;i<e.length;)if(e[i]==="<"&&r++,e[i]===">"&&r--,i++,!r)return i}return 0}function ty(e,t){var r;return(t==null?void 0:t.newLineCharacter)||((r=e.getNewLine)==null?void 0:r.call(e))||VDe}function CD(){return ip(`
+`,6)}function lb(e){try{return e(KX),KX.displayParts()}finally{KX.clear()}}function yO(e,t,r,i=0){return lb(o=>{e.writeType(t,r,i|1024|16384,o)})}function u2(e,t,r,i,o=0){return lb(s=>{e.writeSymbol(t,r,i,o|8,s)})}function NX(e,t,r,i=0){return i|=25632,lb(o=>{e.writeSignature(t,r,i,void 0,o)})}function kDe(e,t){const r=t.getSourceFile();return lb(i=>{Bw().writeNode(4,e,r,i)})}function Zue(e){return!!e.parent&&CA(e.parent)&&e.parent.propertyName===e}function CX(e,t){return Q3(e,t.getScriptKind&&t.getScriptKind(e))}function PX(e,t){let r=e;for(;Qqe(r)||mh(r)&&r.links.target;)mh(r)&&r.links.target?r=r.links.target:r=bu(r,t);return r}function Qqe(e){return(e.flags&2097152)!==0}function ede(e,t){return Ta(bu(e,t))}function tde(e,t){for(;wg(e.charCodeAt(t));)t+=1;return t}function E5(e,t){for(;t>-1&&A_(e.charCodeAt(t));)t-=1;return t+1}function cl(e,t=!0){const r=e&&wDe(e);return r&&!t&&Ap(r),r}function bO(e,t,r){let i=r(e);return i?Cr(i,e):i=wDe(e,r),i&&!t&&Ap(i),i}function wDe(e,t){const r=t?s=>bO(s,!0,t):cl,o=In(e,r,void 0,t?s=>s&&MX(s,!0,t):s=>s&&E1(s),r);if(o===e){const s=Ma(e)?Cr(w.createStringLiteralFromNode(e),e):vp(e)?Cr(w.createNumericLiteral(e.text,e.numericLiteralFlags),e):w.cloneNode(e);return dt(s,e)}return o.parent=void 0,o}function E1(e,t=!0){if(e){const r=w.createNodeArray(e.map(i=>cl(i,t)),e.hasTrailingComma);return dt(r,e),r}return e}function MX(e,t,r){return w.createNodeArray(e.map(i=>bO(i,t,r)),e.hasTrailingComma)}function Ap(e){LX(e),nde(e)}function LX(e){rde(e,1024,eJe)}function nde(e){rde(e,2048,NU)}function lT(e,t){const r=e.getSourceFile(),i=r.text;Zqe(e,i)?PD(e,t,r):SO(e,t,r),d2(e,t,r)}function Zqe(e,t){const r=e.getFullStart(),i=e.getStart();for(let o=r;o<i;o++)if(t.charCodeAt(o)===10)return!0;return!1}function rde(e,t,r){k_(e,t);const i=r(e);i&&rde(i,t,r)}function eJe(e){return e.forEachChild(t=>t)}function cT(e,t){let r=e;for(let i=1;!V4(t,r);i++)r=`${e}_${i}`;return r}function EO(e,t,r,i){let o=0,s=-1;for(const{fileName:l,textChanges:u}of e){N.assert(l===t);for(const p of u){const{span:h,newText:m}=p,b=tJe(m,og(r));if(b!==-1&&(s=h.start+o+b,!i))return s;o+=m.length-h.length}}return N.assert(i),N.assert(s>=0),s}function PD(e,t,r,i,o){rL(r.text,e.pos,ide(t,r,i,o,fP))}function d2(e,t,r,i,o){iL(r.text,e.end,ide(t,r,i,o,EW))}function SO(e,t,r,i,o){iL(r.text,e.pos,ide(t,r,i,o,fP))}function ide(e,t,r,i,o){return(s,l,u,p)=>{u===3?(s+=2,l-=2):s+=2,o(e,r||u,t.text.slice(s,l),i!==void 0?i:p)}}function tJe(e,t){if(uo(e,t))return 0;let r=e.indexOf(" "+t);return r===-1&&(r=e.indexOf("."+t)),r===-1&&(r=e.indexOf('"'+t)),r===-1?-1:r+1}function S5(e){return mr(e)&&e.operatorToken.kind===28||Oa(e)||($k(e)||MH(e))&&Oa(e.expression)}function T5(e,t,r){const i=Bv(e.parent);switch(i.kind){case 214:return t.getContextualType(i,r);case 226:{const{left:o,operatorToken:s,right:l}=i;return A5(s.kind)?t.getTypeAtLocation(e===l?o:l):t.getContextualType(e,r)}case 296:return wX(i,t);default:return t.getContextualType(e,r)}}function p2(e,t,r){const i=uf(e,t),o=JSON.stringify(r);return i===0?`'${tm(o).replace(/'/g,()=>"\\'").replace(/\\"/g,'"')}'`:o}function A5(e){switch(e){case 37:case 35:case 38:case 36:return!0;default:return!1}}function ode(e){switch(e.kind){case 11:case 15:case 228:case 215:return!0;default:return!1}}function kX(e){return!!e.getStringIndexType()||!!e.getNumberIndexType()}function wX(e,t){return t.getTypeAtLocation(e.parent.parent.expression)}function f2(e,t,r,i){const o=r.getTypeChecker();let s=!0;const l=()=>s=!1,u=o.typeToTypeNode(e,t,1,{trackSymbol:(p,h,m)=>(s=s&&o.isSymbolAccessible(p,h,m,!1).accessibility===0,!s),reportInaccessibleThisError:l,reportPrivateInBaseOfClassExpression:l,reportInaccessibleUniqueSymbolError:l,moduleResolverHost:vX(r,i)});return s?u:void 0}function ade(e){return e===179||e===180||e===181||e===171||e===173}function ODe(e){return e===262||e===176||e===174||e===177||e===178}function WDe(e){return e===267}function I5(e){return e===243||e===244||e===246||e===251||e===252||e===253||e===257||e===259||e===172||e===265||e===272||e===271||e===278||e===270||e===277}function nJe(e,t){const r=e.getLastToken(t);if(r&&r.kind===27)return!1;if(ade(e.kind)){if(r&&r.kind===28)return!1}else if(WDe(e.kind)){const u=Ya(e.getChildren(t));if(u&&O_(u))return!1}else if(ODe(e.kind)){const u=Ya(e.getChildren(t));if(u&&BE(u))return!1}else if(!I5(e.kind))return!1;if(e.kind===246)return!0;const i=Gn(e,u=>!u.parent),o=b1(e,i,t);if(!o||o.kind===20)return!0;const s=t.getLineAndCharacterOfPosition(e.getEnd()).line,l=t.getLineAndCharacterOfPosition(o.getStart(t)).line;return s!==l}function x5(e,t,r){const i=Gn(t,o=>o.end!==e?"quit":XX(o.kind));return!!i&&nJe(i,r)}function TO(e){let t=0,r=0;const i=5;return Ho(e,function o(s){if(I5(s.kind)){const l=s.getLastToken(e);(l==null?void 0:l.kind)===27?t++:r++}else if(ade(s.kind)){const l=s.getLastToken(e);if((l==null?void 0:l.kind)===27)t++;else if(l&&l.kind!==28){const u=bs(e,l.getStart(e)).line,p=bs(e,gh(e,l.end).start).line;u!==p&&r++}}return t+r>=i?!0:Ho(s,o)}),t===0&&r<=1?!0:t/r>1/i}function R5(e,t){return C5(e,e.getDirectories,t)||[]}function OX(e,t,r,i,o){return C5(e,e.readDirectory,t,r,i,o)||et}function AO(e,t){return C5(e,e.fileExists,t)}function D5(e,t){return N5(()=>$m(t,e))||!1}function N5(e){try{return e()}catch{return}}function C5(e,t,...r){return N5(()=>t&&t.apply(e,r))}function WX(e,t,r){const i=[];return Sm(e,o=>{if(o===r)return!0;const s=Qr(o,"package.json");AO(t,s)&&i.push(s)}),i}function sde(e,t){let r;return Sm(e,i=>{if(i==="node_modules"||(r=hce(i,o=>AO(t,o),"package.json"),r))return!0}),r}function lde(e,t){if(!t.fileExists)return[];const r=[];return Sm(ai(e),i=>{const o=Qr(i,"package.json");if(t.fileExists(o)){const s=FX(o,t);s&&r.push(s)}}),r}function FX(e,t){if(!t.readFile)return;const r=["dependencies","devDependencies","optionalDependencies","peerDependencies"],i=t.readFile(e)||"",o=w3(i),s={};if(o)for(const p of r){const h=o[p];if(!h)continue;const m=new Map;for(const b in h)m.set(b,h[b]);s[p]=m}const l=[[1,s.dependencies],[2,s.devDependencies],[8,s.optionalDependencies],[4,s.peerDependencies]];return{...s,parseable:!!o,fileName:e,get:u,has(p,h){return!!u(p,h)}};function u(p,h=15){for(const[m,b]of l)if(b&&h&m){const A=b.get(p);if(A!==void 0)return A}}}function m2(e,t,r){const i=(r.getPackageJsonsVisibleToFile&&r.getPackageJsonsVisibleToFile(e.fileName)||lde(e.fileName,r)).filter(R=>R.parseable);let o,s,l;return{allowsImportingAmbientModule:p,allowsImportingSourceFile:h,allowsImportingSpecifier:m};function u(R){const M=I(R);for(const C of i)if(C.has(M)||C.has(jF(M)))return!0;return!1}function p(R,M){if(!i.length||!R.valueDeclaration)return!0;if(!s)s=new Map;else{const Z=s.get(R);if(Z!==void 0)return Z}const C=tm(R.getName());if(b(C))return s.set(R,!0),!0;const O=R.valueDeclaration.getSourceFile(),U=A(O.fileName,M);if(typeof U>"u")return s.set(R,!0),!0;const K=u(U)||u(C);return s.set(R,K),K}function h(R,M){if(!i.length)return!0;if(!l)l=new Map;else{const U=l.get(R);if(U!==void 0)return U}const C=A(R.fileName,M);if(!C)return l.set(R,!0),!0;const O=u(C);return l.set(R,O),O}function m(R){return!i.length||b(R)||Wp(R)||fp(R)?!0:u(R)}function b(R){return!!(dd(e)&&G_.nodeCoreModules.has(R)&&(o===void 0&&(o=P5(e)),o))}function A(R,M){if(!R.includes("node_modules"))return;const C=m1.getNodeModulesPackageName(r.getCompilationSettings(),e,R,M,t);if(C&&!Wp(C)&&!fp(C))return I(C)}function I(R){const M=zc(FP(R)).slice(1);return uo(M[0],"@")?`${M[0]}/${M[1]}`:M[0]}}function P5(e){return bt(e.imports,({text:t})=>G_.nodeCoreModules.has(t))}function IO(e){return Nr(zc(e),"node_modules")}function zX(e){return e.file!==void 0&&e.start!==void 0&&e.length!==void 0}function cde(e,t){const r=Nd(e),i=bA(t,r,nl,W6);if(i>=0){const o=t[i];return N.assertEqual(o.file,e.getSourceFile(),"Diagnostics proided to 'findDiagnosticForNode' must be from a single SourceFile"),aa(o,zX)}}function ude(e,t){var r;let i=bA(t,e.start,l=>l.start,rl);for(i<0&&(i=~i);((r=t[i-1])==null?void 0:r.start)===e.start;)i--;const o=[],s=Kl(e);for(;;){const l=ii(t[i],zX);if(!l||l.start>s)break;fre(e,l)&&o.push(l),i++}return o}function LI({startPosition:e,endPosition:t}){return pc(e,t===void 0?e:t)}function BX(e,t){const r=po(e,t.start);return Gn(r,o=>o.getStart(e)<t.start||o.getEnd()>Kl(t)?"quit":yt(o)&&ND(t,Nd(o,e)))}function GX(e,t,r=nl){return e?To(e)?r(wt(e,t)):t(e,0):void 0}function VX(e){return To(e)?Ha(e):e}function dde(e,t){if(FDe(e)){const r=zDe(e);if(r)return r;const i=Fu.moduleSymbolToValidIdentifier(pde(e),t,!1),o=Fu.moduleSymbolToValidIdentifier(pde(e),t,!0);return i===o?i:[i,o]}return e.name}function M5(e,t,r){return FDe(e)?zDe(e)||Fu.moduleSymbolToValidIdentifier(pde(e),t,!!r):e.name}function FDe(e){return!(e.flags&33554432)&&(e.escapedName==="export="||e.escapedName==="default")}function zDe(e){return Ut(e.declarations,t=>{var r,i,o;return kl(t)?(r=ii($l(t.expression),Ve))==null?void 0:r.text:Ku(t)&&t.symbol.flags===2097152?(i=ii(t.propertyName,Ve))==null?void 0:i.text:(o=ii(Mo(t),Ve))==null?void 0:o.text})}function pde(e){var t;return N.checkDefined(e.parent,`Symbol parent was undefined. Flags: ${N.formatSymbolFlags(e.flags)}. Declarations: ${(t=e.declarations)==null?void 0:t.map(r=>{const i=N.formatSyntaxKind(r.kind),o=lr(r),{expression:s}=r;return(o?"[JS]":"")+i+(s?` (expression: ${N.formatSyntaxKind(s.kind)})`:"")}).join(", ")}.`)}function fde(e,t,r){const i=t.length;if(i+r>e.length)return!1;for(let o=0;o<i;o++)if(t.charCodeAt(o)!==e.charCodeAt(o+r))return!1;return!0}function jX(e){return e.charCodeAt(0)===95}function BDe(e){return!mde(e)}function mde(e){const t=e.getSourceFile();return!t.externalModuleIndicator&&!t.commonJsModuleIndicator?!1:lr(e)||!Gn(e,r=>Xl(r)&&R_(r))}function L5(e){return!!(qV(e)&65536)}function k5(e,t){return Ut(e.imports,i=>{if(G_.nodeCoreModules.has(i.text))return uo(i.text,"node:")})??t.usesUriStyleNodeCoreModules}function xO(e){return e===`
+`?1:0}function uT(e){return To(e)?lg(Wo(e[0]),e.slice(1)):Wo(e)}function w5({options:e},t){const r=!e.semicolons||e.semicolons==="ignore",i=e.semicolons==="remove"||r&&!TO(t);return{...e,semicolons:i?"remove":"ignore"}}function UX(e){return e===2||e===3}function MD(e,t){return e.isSourceFileFromExternalLibrary(t)||e.isSourceFileDefaultLibrary(t)}function O5(e,t){const r=new Set,i=new Set,o=new Set;for(const u of t)if(!AP(u)){const p=hs(u.expression);if(kE(p))switch(p.kind){case 15:case 11:r.add(p.text);break;case 9:i.add(parseInt(p.text));break;case 10:const h=Qoe(Al(p.text,"n")?p.text.slice(0,-1):p.text);h&&o.add($E(h));break}else{const h=e.getSymbolAtLocation(u.expression);if(h&&h.valueDeclaration&&u1(h.valueDeclaration)){const m=e.getConstantValue(h.valueDeclaration);m!==void 0&&s(m)}}}return{addValue:s,hasValue:l};function s(u){switch(typeof u){case"string":r.add(u);break;case"number":i.add(u)}}function l(u){switch(typeof u){case"string":return r.has(u);case"number":return i.has(u);case"object":return o.has($E(u))}}}function HX(e,t,r,i){var o;const s=typeof e=="string"?e:e.fileName;if(!YE(s))return!1;const l=t.getCompilerOptions(),u=wu(l),p=typeof e=="string"?Jw(ol(e,r.getCurrentDirectory(),Gv(r)),(o=t.getPackageJsonInfoCache)==null?void 0:o.call(t),r,l):e.impliedNodeFormat;if(p===99)return!1;if(p===1||l.verbatimModuleSyntax&&u===1)return!0;if(l.verbatimModuleSyntax&&j3(u))return!1;if(typeof e=="object"){if(e.commonJsModuleIndicator)return!0;if(e.externalModuleIndicator)return!1}return i}var Qu,qX,GDe,W5,JX,KX,VDe,F5,XX,rJe=T({"src/services/utilities.ts"(){si(),Qu=wv(99,!0),qX=(e=>(e[e.None=0]="None",e[e.Value=1]="Value",e[e.Type=2]="Type",e[e.Namespace=4]="Namespace",e[e.All=7]="All",e))(qX||{}),GDe=/^\/\/\/\s*</,W5=[133,131,163,136,97,140,143,146,106,150,151,148,154,155,114,112,116,157,158,159],JX=(e=>(e[e.Single=0]="Single",e[e.Double=1]="Double",e))(JX||{}),KX=Xqe(),VDe=`
+`,F5="anonymous function",XX=Ym(ade,ODe,WDe,I5)}});function YX(e){let t=1;const r=Zp(),i=new Map,o=new Map;let s;const l={isUsableByFile:I=>I===s,isEmpty:()=>!r.size,clear:()=>{r.clear(),i.clear(),s=void 0},add:(I,R,M,C,O,U,K,Z)=>{I!==s&&(l.clear(),s=I);let V;if(O){const pe=aW(O.fileName);if(pe){const{topLevelNodeModulesIndex:ie,topLevelPackageNameIndex:ve,packageRootIndex:Le}=pe;if(V=Pw(FP(O.fileName.substring(ve+1,Le))),uo(I,O.path.substring(0,ie))){const He=o.get(V),Ee=O.fileName.substring(0,ve+1);if(He){const De=He.indexOf(xh);ie>De&&o.set(V,Ee)}else o.set(V,Ee)}}}const G=U===1&&MR(R)||R,ne=U===0||mO(G)?Vi(M):dde(G,void 0),he=typeof ne=="string"?ne:ne[0],ye=typeof ne=="string"?void 0:ne[1],$=tm(C.name),Y=t++,oe=bu(R,Z),fe=R.flags&33554432?void 0:R,Ne=C.flags&33554432?void 0:C;(!fe||!Ne)&&i.set(Y,[R,C]),r.add(p(he,R,Yc($)?void 0:$,Z),{id:Y,symbolTableKey:M,symbolName:he,capitalizedSymbolName:ye,moduleName:$,moduleFile:O,moduleFileName:O==null?void 0:O.fileName,packageName:V,exportKind:U,targetFlags:oe.flags,isFromPackageJson:K,symbol:fe,moduleSymbol:Ne})},get:(I,R)=>{if(I!==s)return;const M=r.get(R);return M==null?void 0:M.map(u)},search:(I,R,M,C)=>{if(I===s)return Gc(r,(O,U)=>{const{symbolName:K,ambientModuleName:Z}=h(U),V=R&&O[0].capitalizedSymbolName||K;if(M(V,O[0].targetFlags)){const G=O.map(u).filter((ne,he)=>A(ne,O[he].packageName));if(G.length){const ne=C(G,V,!!Z,U);if(ne!==void 0)return ne}}})},releaseSymbols:()=>{i.clear()},onFileChanged:(I,R,M)=>m(I)&&m(R)?!1:s&&s!==R.path||M&&P5(I)!==P5(R)||!Km(I.moduleAugmentations,R.moduleAugmentations)||!b(I,R)?(l.clear(),!0):(s=R.path,!1)};return N.isDebugging&&Object.defineProperty(l,"__cache",{value:r}),l;function u(I){if(I.symbol&&I.moduleSymbol)return I;const{id:R,exportKind:M,targetFlags:C,isFromPackageJson:O,moduleFileName:U}=I,[K,Z]=i.get(R)||et;if(K&&Z)return{symbol:K,moduleSymbol:Z,moduleFileName:U,exportKind:M,targetFlags:C,isFromPackageJson:O};const V=(O?e.getPackageJsonAutoImportProvider():e.getCurrentProgram()).getTypeChecker(),se=I.moduleSymbol||Z||N.checkDefined(I.moduleFile?V.getMergedSymbol(I.moduleFile.symbol):V.tryFindAmbientModule(I.moduleName)),G=I.symbol||K||N.checkDefined(M===2?V.resolveExternalModuleSymbol(se):V.tryGetMemberInModuleExportsAndProperties(Vi(I.symbolTableKey),se),`Could not find symbol '${I.symbolName}' by key '${I.symbolTableKey}' in module ${se.name}`);return i.set(R,[G,se]),{symbol:G,moduleSymbol:se,moduleFileName:U,exportKind:M,targetFlags:C,isFromPackageJson:O}}function p(I,R,M,C){const O=M||"";return`${I.length} ${Ta(bu(R,C))} ${I} ${O}`}function h(I){const R=I.indexOf(" "),M=I.indexOf(" ",R+1),C=parseInt(I.substring(0,R),10),O=I.substring(M+1),U=O.substring(0,C),K=O.substring(C+1);return{symbolName:U,ambientModuleName:K===""?void 0:K}}function m(I){return!I.commonJsModuleIndicator&&!I.externalModuleIndicator&&!I.moduleAugmentations&&!I.ambientModuleNames}function b(I,R){if(!Km(I.ambientModuleNames,R.ambientModuleNames))return!1;let M=-1,C=-1;for(const O of R.ambientModuleNames){const U=K=>Aj(K)&&K.name.text===O;if(M=Gr(I.statements,U,M+1),C=Gr(R.statements,U,C+1),I.statements[M]!==R.statements[C])return!1}return!0}function A(I,R){if(!R||!I.moduleFileName)return!0;const M=e.getGlobalTypingsCacheLocation();if(M&&uo(I.moduleFileName,M))return!0;const C=o.get(R);return!C||uo(I.moduleFileName,C)}}function $X(e,t,r,i,o,s,l){var u;if(t===r)return!1;const p=l==null?void 0:l.get(t.path,r.path,i,{});if((p==null?void 0:p.isBlockedByPackageJsonDependencies)!==void 0)return!p.isBlockedByPackageJsonDependencies;const h=Gv(s),m=(u=s.getGlobalTypingsCacheLocation)==null?void 0:u.call(s),b=!!m1.forEachFileNameOfModule(t.fileName,r.fileName,s,!1,A=>{const I=e.getSourceFile(A);return(I===r||!I)&&iJe(t.fileName,A,h,m)});if(o){const A=b&&o.allowsImportingSourceFile(r,s);return l==null||l.setBlockedByPackageJsonDependencies(t.path,r.path,i,{},!A),A}return b}function iJe(e,t,r,i){const o=Sm(t,l=>ic(l)==="node_modules"?l:void 0),s=o&&ai(r(o));return s===void 0||uo(r(e),s)||!!i&&uo(r(i),s)}function QX(e,t,r,i,o){var s,l;const u=CR(t),p=r.autoImportFileExcludePatterns&&Hi(r.autoImportFileExcludePatterns,m=>{const b=Y3(m,"","exclude");return b?qy(b,u):void 0});jDe(e.getTypeChecker(),e.getSourceFiles(),p,t,(m,b)=>o(m,b,e,!1));const h=i&&((s=t.getPackageJsonAutoImportProvider)==null?void 0:s.call(t));if(h){const m=Ys(),b=e.getTypeChecker();jDe(h.getTypeChecker(),h.getSourceFiles(),p,t,(A,I)=>{(I&&!e.getSourceFile(I.fileName)||!I&&!b.resolveName(A.name,void 0,1536,!1))&&o(A,I,h,!0)}),(l=t.log)==null||l.call(t,`forEachExternalModuleToImportFrom autoImportProvider: ${Ys()-m}`)}}function jDe(e,t,r,i,o){var s,l;const u=(s=i.getSymlinkCache)==null?void 0:s.call(i).getSymlinkedDirectoriesByRealpath(),p=r&&(({fileName:h,path:m})=>{if(r.some(b=>b.test(h)))return!0;if(u!=null&&u.size&&L0(h)){let b=ai(h);return Sm(ai(m),A=>{const I=u.get(Bc(A));if(I)return I.some(R=>r.some(M=>M.test(h.replace(b,R))));b=ai(b)})??!1}return!1});for(const h of e.getAmbientModules())!h.name.includes("*")&&!(r&&((l=h.declarations)!=null&&l.every(m=>p(m.getSourceFile()))))&&o(h,void 0);for(const h of t)zp(h)&&!(p!=null&&p(h))&&o(e.getMergedSymbol(h.symbol),h)}function RO(e,t,r,i,o){var s,l,u,p,h;const m=Ys();(s=t.getPackageJsonAutoImportProvider)==null||s.call(t);const b=((l=t.getCachedExportInfoMap)==null?void 0:l.call(t))||YX({getCurrentProgram:()=>r,getPackageJsonAutoImportProvider:()=>{var R;return(R=t.getPackageJsonAutoImportProvider)==null?void 0:R.call(t)},getGlobalTypingsCacheLocation:()=>{var R;return(R=t.getGlobalTypingsCacheLocation)==null?void 0:R.call(t)}});if(b.isUsableByFile(e.path))return(u=t.log)==null||u.call(t,"getExportInfoMap: cache hit"),b;(p=t.log)==null||p.call(t,"getExportInfoMap: cache miss or empty; calculating new results");const A=r.getCompilerOptions();let I=0;try{QX(r,t,i,!0,(R,M,C,O)=>{++I%100===0&&(o==null||o.throwIfCancellationRequested());const U=new Map,K=C.getTypeChecker(),Z=z5(R,K,A);Z&&UDe(Z.symbol,K)&&b.add(e.path,Z.symbol,Z.exportKind===1?"default":"export=",R,M,Z.exportKind,O,K),K.forEachExportAndPropertyOfModule(R,(V,se)=>{V!==(Z==null?void 0:Z.symbol)&&UDe(V,K)&&Rm(U,se)&&b.add(e.path,V,se,R,M,0,O,K)})})}catch(R){throw b.clear(),R}return(h=t.log)==null||h.call(t,`getExportInfoMap: done in ${Ys()-m} ms`),b}function z5(e,t,r){const i=oJe(e,t);if(!i)return;const{symbol:o,exportKind:s}=i,l=B5(o,t,r);return l&&{symbol:o,exportKind:s,...l}}function UDe(e,t){return!t.isUndefinedSymbol(e)&&!t.isUnknownSymbol(e)&&!lk(e)&&!$ie(e)}function oJe(e,t){const r=t.resolveExternalModuleSymbol(e);if(r!==e)return{symbol:r,exportKind:2};const i=t.tryGetMemberInModuleExports("default",e);if(i)return{symbol:i,exportKind:1}}function B5(e,t,r){const i=MR(e);if(i)return{resolvedSymbol:i,name:i.name};const o=aJe(e);if(o!==void 0)return{resolvedSymbol:e,name:o};if(e.flags&2097152){const s=t.getImmediateAliasedSymbol(e);if(s&&s.parent)return B5(s,t,r)}return e.escapedName!=="default"&&e.escapedName!=="export="?{resolvedSymbol:e,name:e.getName()}:{resolvedSymbol:e,name:M5(e,r.target)}}function aJe(e){return e.declarations&&Ut(e.declarations,t=>{var r;if(kl(t))return(r=ii($l(t.expression),Ve))==null?void 0:r.text;if(Ku(t))return N.assert(t.name.text==="default","Expected the specifier to be a default export"),t.propertyName&&t.propertyName.text})}var ZX,eY,sJe=T({"src/services/exportInfoMap.ts"(){si(),ZX=(e=>(e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.Namespace=2]="Namespace",e[e.CommonJS=3]="CommonJS",e))(ZX||{}),eY=(e=>(e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.ExportEquals=2]="ExportEquals",e[e.UMD=3]="UMD",e))(eY||{})}});function HDe(){const e=wv(99,!1);function t(i,o,s){return uJe(r(i,o,s),i)}function r(i,o,s){let l=0,u=0;const p=[],{prefix:h,pushTemplate:m}=fJe(o);i=h+i;const b=h.length;m&&p.push(16),e.setText(i);let A=0;const I=[];let R=0;do{l=e.scan(),IR(l)||(M(),u=l);const C=e.getTokenEnd();if(cJe(e.getTokenStart(),C,b,hJe(l),I),C>=i.length){const O=lJe(e,l,tl(p));O!==void 0&&(A=O)}}while(l!==1);function M(){switch(l){case 44:case 69:!XDe[u]&&e.reScanSlashToken()===14&&(l=14);break;case 30:u===80&&R++;break;case 32:R>0&&R--;break;case 133:case 154:case 150:case 136:case 155:R>0&&!s&&(l=80);break;case 16:p.push(l);break;case 19:p.length>0&&p.push(l);break;case 20:if(p.length>0){const C=tl(p);C===16?(l=e.reScanTemplateToken(!1),l===18?p.pop():N.assertEqual(l,17,"Should have been a template middle.")):(N.assertEqual(C,19,"Should have been an open brace"),p.pop())}break;default:if(!Bd(l))break;(u===25||Bd(u)&&Bd(l)&&!pJe(u,l))&&(l=80)}}return{endOfLineState:A,spans:I}}return{getClassificationsForLine:t,getEncodedLexicalClassifications:r}}function lJe(e,t,r){switch(t){case 11:{if(!e.isUnterminated())return;const i=e.getTokenText(),o=i.length-1;let s=0;for(;i.charCodeAt(o-s)===92;)s++;return s&1?i.charCodeAt(0)===34?3:2:void 0}case 3:return e.isUnterminated()?1:void 0;default:if(wy(t)){if(!e.isUnterminated())return;switch(t){case 18:return 5;case 15:return 4;default:return N.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+t)}}return r===16?6:void 0}}function cJe(e,t,r,i,o){if(i===8)return;e===0&&r>0&&(e+=r);const s=t-e;s>0&&o.push(e-r,s,i)}function uJe(e,t){const r=[],i=e.spans;let o=0;for(let l=0;l<i.length;l+=3){const u=i[l],p=i[l+1],h=i[l+2];if(o>=0){const m=u-o;m>0&&r.push({length:m,classification:4})}r.push({length:p,classification:dJe(h)}),o=u+p}const s=t.length-o;return s>0&&r.push({length:s,classification:4}),{entries:r,finalLexState:e.endOfLineState}}function dJe(e){switch(e){case 1:return 3;case 3:return 1;case 4:return 6;case 25:return 7;case 5:return 2;case 6:return 8;case 8:return 4;case 10:return 0;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return 5;default:return}}function pJe(e,t){if(!uX(e))return!0;switch(t){case 139:case 153:case 137:case 126:case 129:return!0;default:return!1}}function fJe(e){switch(e){case 3:return{prefix:`"\\
+`};case 2:return{prefix:`'\\
+`};case 1:return{prefix:`/*
+`};case 4:return{prefix:"`\n"};case 5:return{prefix:`}
+`,pushTemplate:!0};case 6:return{prefix:"",pushTemplate:!0};case 0:return{prefix:""};default:return N.assertNever(e)}}function mJe(e){switch(e){case 42:case 44:case 45:case 40:case 41:case 48:case 49:case 50:case 30:case 32:case 33:case 34:case 104:case 103:case 130:case 152:case 35:case 36:case 37:case 38:case 51:case 53:case 52:case 56:case 57:case 75:case 74:case 79:case 71:case 72:case 73:case 65:case 66:case 67:case 69:case 70:case 64:case 28:case 61:case 76:case 77:case 78:return!0;default:return!1}}function _Je(e){switch(e){case 40:case 41:case 55:case 54:case 46:case 47:return!0;default:return!1}}function hJe(e){if(Bd(e))return 3;if(mJe(e)||_Je(e))return 5;if(e>=19&&e<=79)return 10;switch(e){case 9:return 4;case 10:return 25;case 11:return 6;case 14:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 80:default:return wy(e)?6:2}}function _de(e,t,r,i,o){return KDe(tY(e,t,r,i,o))}function qDe(e,t){switch(t){case 267:case 263:case 264:case 262:case 231:case 218:case 219:e.throwIfCancellationRequested()}}function tY(e,t,r,i,o){const s=[];return r.forEachChild(function u(p){if(!(!p||!v4(o,p.pos,p.getFullWidth()))){if(qDe(t,p.kind),Ve(p)&&!zl(p)&&i.has(p.escapedText)){const h=e.getSymbolAtLocation(p),m=h&&JDe(h,oT(p),e);m&&l(p.getStart(r),p.getEnd(),m)}p.forEachChild(u)}}),{spans:s,endOfLineState:0};function l(u,p,h){const m=p-u;N.assert(m>0,`Classification had non-positive length of ${m}`),s.push(u),s.push(m),s.push(h)}}function JDe(e,t,r){const i=e.getFlags();if(i&2885600)return i&32?11:i&384?12:i&524288?16:i&1536?t&4||t&1&&gJe(e)?14:void 0:i&2097152?JDe(r.getAliasedSymbol(e),t,r):t&2?i&64?13:i&262144?15:void 0:void 0}function gJe(e){return bt(e.declarations,t=>Xl(t)&&Kg(t)===1)}function vJe(e){switch(e){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return}}function KDe(e){N.assert(e.spans.length%3===0);const t=e.spans,r=[];for(let i=0;i<t.length;i+=3)r.push({textSpan:vu(t[i],t[i+1]),classificationType:vJe(t[i+2])});return r}function hde(e,t,r){return KDe(nY(e,t,r))}function nY(e,t,r){const i=r.start,o=r.length,s=wv(99,!1,t.languageVariant,t.text),l=wv(99,!1,t.languageVariant,t.text),u=[];return Z(t),{spans:u,endOfLineState:0};function p(V,se,G){u.push(V),u.push(se),u.push(G)}function h(V){for(s.resetTokenState(V.pos);;){const se=s.getTokenEnd();if(!lre(t.text,se))return se;const G=s.scan(),ne=s.getTokenEnd(),he=ne-se;if(!IR(G))return se;switch(G){case 4:case 5:continue;case 2:case 3:m(V,G,se,he),s.resetTokenState(ne);continue;case 7:const ye=t.text,$=ye.charCodeAt(se);if($===60||$===62){p(se,he,1);continue}N.assert($===124||$===61),M(ye,se,ne);break;case 6:break;default:N.assertNever(G)}}}function m(V,se,G,ne){if(se===3){const he=Tse(t.text,G,ne);if(he&&he.jsDoc){qa(he.jsDoc,V),A(he.jsDoc);return}}else if(se===2&&I(G,ne))return;b(G,ne)}function b(V,se){p(V,se,1)}function A(V){var se,G,ne,he,ye,$,Y,oe;let fe=V.pos;if(V.tags)for(const pe of V.tags){pe.pos!==fe&&b(fe,pe.pos-fe),p(pe.pos,1,10),p(pe.tagName.pos,pe.tagName.end-pe.tagName.pos,18),fe=pe.tagName.end;let ie=pe.tagName.end;switch(pe.kind){case 348:const ve=pe;Ne(ve),ie=ve.isNameFirst&&((se=ve.typeExpression)==null?void 0:se.end)||ve.name.end;break;case 355:const Le=pe;ie=Le.isNameFirst&&((G=Le.typeExpression)==null?void 0:G.end)||Le.name.end;break;case 352:R(pe),fe=pe.end,ie=pe.typeParameters.end;break;case 353:const He=pe;ie=((ne=He.typeExpression)==null?void 0:ne.kind)===316&&((he=He.fullName)==null?void 0:he.end)||((ye=He.typeExpression)==null?void 0:ye.end)||ie;break;case 345:ie=pe.typeExpression.end;break;case 351:Z(pe.typeExpression),fe=pe.end,ie=pe.typeExpression.end;break;case 350:case 347:ie=pe.typeExpression.end;break;case 349:Z(pe.typeExpression),fe=pe.end,ie=(($=pe.typeExpression)==null?void 0:$.end)||ie;break;case 354:ie=((Y=pe.name)==null?void 0:Y.end)||ie;break;case 335:case 336:ie=pe.class.end;break;case 356:Z(pe.typeExpression),fe=pe.end,ie=((oe=pe.typeExpression)==null?void 0:oe.end)||ie;break}typeof pe.comment=="object"?b(pe.comment.pos,pe.comment.end-pe.comment.pos):typeof pe.comment=="string"&&b(ie,pe.end-ie)}fe!==V.end&&b(fe,V.end-fe);return;function Ne(pe){pe.isNameFirst&&(b(fe,pe.name.pos-fe),p(pe.name.pos,pe.name.end-pe.name.pos,17),fe=pe.name.end),pe.typeExpression&&(b(fe,pe.typeExpression.pos-fe),Z(pe.typeExpression),fe=pe.typeExpression.end),pe.isNameFirst||(b(fe,pe.name.pos-fe),p(pe.name.pos,pe.name.end-pe.name.pos,17),fe=pe.name.end)}}function I(V,se){const G=/^(\/\/\/\s*)(<)(?:(\S+)((?:[^/]|\/[^>])*)(\/>)?)?/im,ne=/(\s)(\S+)(\s*)(=)(\s*)('[^']+'|"[^"]+")/img,he=t.text.substr(V,se),ye=G.exec(he);if(!ye||!ye[3]||!(ye[3]in qM))return!1;let $=V;b($,ye[1].length),$+=ye[1].length,p($,ye[2].length,10),$+=ye[2].length,p($,ye[3].length,21),$+=ye[3].length;const Y=ye[4];let oe=$;for(;;){const Ne=ne.exec(Y);if(!Ne)break;const pe=$+Ne.index+Ne[1].length;pe>oe&&(b(oe,pe-oe),oe=pe),p(oe,Ne[2].length,22),oe+=Ne[2].length,Ne[3].length&&(b(oe,Ne[3].length),oe+=Ne[3].length),p(oe,Ne[4].length,5),oe+=Ne[4].length,Ne[5].length&&(b(oe,Ne[5].length),oe+=Ne[5].length),p(oe,Ne[6].length,24),oe+=Ne[6].length}$+=ye[4].length,$>oe&&b(oe,$-oe),ye[5]&&(p($,ye[5].length,10),$+=ye[5].length);const fe=V+se;return $<fe&&b($,fe-$),!0}function R(V){for(const se of V.getChildren())Z(se)}function M(V,se,G){let ne;for(ne=se;ne<G&&!Hu(V.charCodeAt(ne));ne++);for(p(se,ne-se,1),l.resetTokenState(ne);l.getTokenEnd()<G;)C()}function C(){const V=l.getTokenEnd(),se=l.scan(),G=l.getTokenEnd(),ne=K(se);ne&&p(V,G-V,ne)}function O(V){if(n_(V)||zl(V))return!0;const se=U(V);if(!NA(V)&&V.kind!==12&&se===void 0)return!1;const G=V.kind===12?V.pos:h(V),ne=V.end-G;if(N.assert(ne>=0),ne>0){const he=se||K(V.kind,V);he&&p(G,ne,he)}return!0}function U(V){switch(V.parent&&V.parent.kind){case 286:if(V.parent.tagName===V)return 19;break;case 287:if(V.parent.tagName===V)return 20;break;case 285:if(V.parent.tagName===V)return 21;break;case 291:if(V.parent.name===V)return 22;break}}function K(V,se){if(Bd(V))return 3;if((V===30||V===32)&&se&&Fue(se.parent))return 10;if(eU(V)){if(se){const G=se.parent;if(V===64&&(G.kind===260||G.kind===172||G.kind===169||G.kind===291)||G.kind===226||G.kind===224||G.kind===225||G.kind===227)return 5}return 10}else{if(V===9)return 4;if(V===10)return 25;if(V===11)return se&&se.parent.kind===291?24:6;if(V===14)return 6;if(wy(V))return 6;if(V===12)return 23;if(V===80){if(se){switch(se.parent.kind){case 263:return se.parent.name===se?11:void 0;case 168:return se.parent.name===se?15:void 0;case 264:return se.parent.name===se?13:void 0;case 266:return se.parent.name===se?12:void 0;case 267:return se.parent.name===se?14:void 0;case 169:return se.parent.name===se?KE(se)?3:17:void 0}if(Og(se.parent))return 3}return 2}}}function Z(V){if(V&&lL(i,o,V.pos,V.getFullWidth())){qDe(e,V.kind);for(const se of V.getChildren(t))O(se)||Z(se)}}}var XDe,YDe=T({"src/services/classifier.ts"(){si(),XDe=Nne([80,11,9,10,14,110,46,47,22,24,20,112,97],e=>e,()=>!0)}}),G5,yJe=T({"src/services/documentHighlights.ts"(){si(),(e=>{function t($,Y,oe,fe,Ne){const pe=Vd(oe,fe);if(pe.parent&&(W_(pe.parent)&&pe.parent.tagName===pe||a1(pe.parent))){const{openingElement:ie,closingElement:ve}=pe.parent.parent,Le=[ie,ve].map(({tagName:He})=>r(He,oe));return[{fileName:oe.fileName,highlightSpans:Le}]}return i(fe,pe,$,Y,Ne)||o(pe,oe)}e.getDocumentHighlights=t;function r($,Y){return{fileName:Y.fileName,textSpan:Nd($,Y),kind:"none"}}function i($,Y,oe,fe,Ne){const pe=new Set(Ne.map(He=>He.fileName)),ie=Ws.getReferenceEntriesForNode($,Y,oe,Ne,fe,void 0,pe);if(!ie)return;const ve=FM(ie.map(Ws.toHighlightSpan),He=>He.fileName,He=>He.span),Le=Mu(oe.useCaseSensitiveFileNames());return zo(Pg(ve.entries(),([He,Ee])=>{if(!pe.has(He)){if(!oe.redirectTargetsMap.has(ol(He,oe.getCurrentDirectory(),Le)))return;const De=oe.getSourceFile(He);He=An(Ne,We=>!!We.redirectInfo&&We.redirectInfo.redirectTarget===De).fileName,N.assert(pe.has(He))}return{fileName:He,highlightSpans:Ee}}))}function o($,Y){const oe=s($,Y);return oe&&[{fileName:Y.fileName,highlightSpans:oe}]}function s($,Y){switch($.kind){case 101:case 93:return US($.parent)?ne($.parent,Y):void 0;case 107:return fe($.parent,Dm,Z);case 111:return fe($.parent,kH,K);case 113:case 85:case 98:const pe=$.kind===85?$.parent.parent:$.parent;return fe(pe,qS,U);case 109:return fe($.parent,EP,O);case 84:case 90:return AP($.parent)||YR($.parent)?fe($.parent.parent.parent,EP,O):void 0;case 83:case 88:return fe($.parent,pC,C);case 99:case 117:case 92:return fe($.parent,ie=>Wy(ie,!0),M);case 137:return oe(Ml,[137]);case 139:case 153:return oe(Oy,[139,153]);case 135:return fe($.parent,eb,V);case 134:return Ne(V($));case 127:return Ne(se($));case 103:case 147:return;default:return Wv($.kind)&&(Ju($.parent)||Ll($.parent))?Ne(A($.kind,$.parent)):void 0}function oe(pe,ie){return fe($.parent,pe,ve=>{var Le;return Hi((Le=ii(ve,x_))==null?void 0:Le.symbol.declarations,He=>pe(He)?An(He.getChildren(Y),Ee=>Nr(ie,Ee.kind)):void 0)})}function fe(pe,ie,ve){return ie(pe)?Ne(ve(pe,Y)):void 0}function Ne(pe){return pe&&pe.map(ie=>r(ie,Y))}}function l($){return kH($)?[$]:qS($)?So($.catchClause?l($.catchClause):$.tryBlock&&l($.tryBlock),$.finallyBlock&&l($.finallyBlock)):ea($)?void 0:h($,l)}function u($){let Y=$;for(;Y.parent;){const oe=Y.parent;if(BE(oe)||oe.kind===312)return oe;if(qS(oe)&&oe.tryBlock===Y&&oe.catchClause)return Y;Y=oe}}function p($){return pC($)?[$]:ea($)?void 0:h($,p)}function h($,Y){const oe=[];return $.forEachChild(fe=>{const Ne=Y(fe);Ne!==void 0&&oe.push(...SA(Ne))}),oe}function m($,Y){const oe=b(Y);return!!oe&&oe===$}function b($){return Gn($,Y=>{switch(Y.kind){case 255:if($.kind===251)return!1;case 248:case 249:case 250:case 247:case 246:return!$.label||ye(Y,$.label.escapedText);default:return ea(Y)&&"quit"}})}function A($,Y){return Hi(I(Y,UA($)),oe=>DD(oe,$))}function I($,Y){const oe=$.parent;switch(oe.kind){case 268:case 312:case 241:case 296:case 297:return Y&64&&Ic($)?[...$.members,$]:oe.statements;case 176:case 174:case 262:return[...oe.parameters,...ui(oe.parent)?oe.parent.members:[]];case 263:case 231:case 264:case 187:const fe=oe.members;if(Y&15){const Ne=An(oe.members,Ml);if(Ne)return[...fe,...Ne.parameters]}else if(Y&64)return[...fe,oe];return fe;case 210:return;default:N.assertNever(oe,"Invalid container kind.")}}function R($,Y,...oe){return Y&&Nr(oe,Y.kind)?($.push(Y),!0):!1}function M($){const Y=[];if(R(Y,$.getFirstToken(),99,117,92)&&$.kind===246){const oe=$.getChildren();for(let fe=oe.length-1;fe>=0&&!R(Y,oe[fe],117);fe--);}return Ue(p($.statement),oe=>{m($,oe)&&R(Y,oe.getFirstToken(),83,88)}),Y}function C($){const Y=b($);if(Y)switch(Y.kind){case 248:case 249:case 250:case 246:case 247:return M(Y);case 255:return O(Y)}}function O($){const Y=[];return R(Y,$.getFirstToken(),109),Ue($.caseBlock.clauses,oe=>{R(Y,oe.getFirstToken(),84,90),Ue(p(oe),fe=>{m($,fe)&&R(Y,fe.getFirstToken(),83)})}),Y}function U($,Y){const oe=[];if(R(oe,$.getFirstToken(),113),$.catchClause&&R(oe,$.catchClause.getFirstToken(),85),$.finallyBlock){const fe=vs($,98,Y);R(oe,fe,98)}return oe}function K($,Y){const oe=u($);if(!oe)return;const fe=[];return Ue(l(oe),Ne=>{fe.push(vs(Ne,111,Y))}),BE(oe)&&zE(oe,Ne=>{fe.push(vs(Ne,107,Y))}),fe}function Z($,Y){const oe=Gp($);if(!oe)return;const fe=[];return zE(aa(oe.body,Xo),Ne=>{fe.push(vs(Ne,107,Y))}),Ue(l(oe.body),Ne=>{fe.push(vs(Ne,111,Y))}),fe}function V($){const Y=Gp($);if(!Y)return;const oe=[];return Y.modifiers&&Y.modifiers.forEach(fe=>{R(oe,fe,134)}),Ho(Y,fe=>{G(fe,Ne=>{eb(Ne)&&R(oe,Ne.getFirstToken(),135)})}),oe}function se($){const Y=Gp($);if(!Y)return;const oe=[];return Ho(Y,fe=>{G(fe,Ne=>{iF(Ne)&&R(oe,Ne.getFirstToken(),127)})}),oe}function G($,Y){Y($),!ea($)&&!ui($)&&!hd($)&&!Xl($)&&!Nm($)&&!ji($)&&Ho($,oe=>G(oe,Y))}function ne($,Y){const oe=he($,Y),fe=[];for(let Ne=0;Ne<oe.length;Ne++){if(oe[Ne].kind===93&&Ne<oe.length-1){const pe=oe[Ne],ie=oe[Ne+1];let ve=!0;for(let Le=ie.getStart(Y)-1;Le>=pe.end;Le--)if(!A_(Y.text.charCodeAt(Le))){ve=!1;break}if(ve){fe.push({fileName:Y.fileName,textSpan:pc(pe.getStart(),ie.end),kind:"reference"}),Ne++;continue}}fe.push(r(oe[Ne],Y))}return fe}function he($,Y){const oe=[];for(;US($.parent)&&$.parent.elseStatement===$;)$=$.parent;for(;;){const fe=$.getChildren(Y);R(oe,fe[0],101);for(let Ne=fe.length-1;Ne>=0&&!R(oe,fe[Ne],93);Ne--);if(!$.elseStatement||!US($.elseStatement))break;$=$.elseStatement}return oe}function ye($,Y){return!!Gn($.parent,oe=>o1(oe)?oe.label.escapedText===Y:"quit")}})(G5||(G5={}))}});function DO(e){return!!e.sourceFile}function gde(e,t,r){return rY(e,t,r)}function rY(e,t="",r,i){const o=new Map,s=Mu(!!e);function l(){const C=zo(o.keys()).filter(O=>O&&O.charAt(0)==="_").map(O=>{const U=o.get(O),K=[];return U.forEach((Z,V)=>{DO(Z)?K.push({name:V,scriptKind:Z.sourceFile.scriptKind,refCount:Z.languageServiceRefCount}):Z.forEach((se,G)=>K.push({name:V,scriptKind:G,refCount:se.languageServiceRefCount}))}),K.sort((Z,V)=>V.refCount-Z.refCount),{bucket:O,sourceFiles:K}});return JSON.stringify(C,void 0,2)}function u(C){return typeof C.getCompilationSettings=="function"?C.getCompilationSettings():C}function p(C,O,U,K,Z,V){const se=ol(C,t,s),G=iY(u(O));return h(C,se,O,G,U,K,Z,V)}function h(C,O,U,K,Z,V,se,G){return I(C,O,U,K,Z,V,!0,se,G)}function m(C,O,U,K,Z,V){const se=ol(C,t,s),G=iY(u(O));return b(C,se,O,G,U,K,Z,V)}function b(C,O,U,K,Z,V,se,G){return I(C,O,u(U),K,Z,V,!1,se,G)}function A(C,O){const U=DO(C)?C:C.get(N.checkDefined(O,"If there are more than one scriptKind's for same document the scriptKind should be provided"));return N.assert(O===void 0||!U||U.sourceFile.scriptKind===O,`Script kind should match provided ScriptKind:${O} and sourceFile.scriptKind: ${U==null?void 0:U.sourceFile.scriptKind}, !entry: ${!U}`),U}function I(C,O,U,K,Z,V,se,G,ne){var he,ye,$,Y;G=Q3(C,G);const oe=u(U),fe=U===oe?void 0:U,Ne=G===6?100:os(oe),pe=typeof ne=="object"?ne:{languageVersion:Ne,impliedNodeFormat:fe&&Jw(O,(Y=($=(ye=(he=fe.getCompilerHost)==null?void 0:he.call(fe))==null?void 0:ye.getModuleResolutionCache)==null?void 0:$.call(ye))==null?void 0:Y.getPackageJsonInfoCache(),fe,oe),setExternalModuleIndicator:bk(oe),jsDocParsingMode:r};pe.languageVersion=Ne,N.assertEqual(r,pe.jsDocParsingMode);const ie=o.size,ve=vde(K,pe.impliedNodeFormat),Le=n0(o,ve,()=>new Map);if(sr){o.size>ie&&sr.instant(sr.Phase.Session,"createdDocumentRegistryBucket",{configFilePath:oe.configFilePath,key:ve});const Pe=!Su(O)&&Gc(o,(We,At)=>At!==ve&&We.has(O)&&At);Pe&&sr.instant(sr.Phase.Session,"documentRegistryBucketOverlap",{path:O,key1:Pe,key2:ve})}const He=Le.get(O);let Ee=He&&A(He,G);if(!Ee&&i){const Pe=i.getDocument(ve,O);Pe&&(N.assert(se),Ee={sourceFile:Pe,languageServiceRefCount:0},De())}if(Ee)Ee.sourceFile.version!==V&&(Ee.sourceFile=qY(Ee.sourceFile,Z,V,Z.getChangeRange(Ee.sourceFile.scriptSnapshot)),i&&i.setDocument(ve,O,Ee.sourceFile)),se&&Ee.languageServiceRefCount++;else{const Pe=pz(C,Z,pe,V,!1,G);i&&i.setDocument(ve,O,Pe),Ee={sourceFile:Pe,languageServiceRefCount:1},De()}return N.assert(Ee.languageServiceRefCount!==0),Ee.sourceFile;function De(){if(!He)Le.set(O,Ee);else if(DO(He)){const Pe=new Map;Pe.set(He.sourceFile.scriptKind,He),Pe.set(G,Ee),Le.set(O,Pe)}else He.set(G,Ee)}}function R(C,O,U,K){const Z=ol(C,t,s),V=iY(O);return M(Z,V,U,K)}function M(C,O,U,K){const Z=N.checkDefined(o.get(vde(O,K))),V=Z.get(C),se=A(V,U);se.languageServiceRefCount--,N.assert(se.languageServiceRefCount>=0),se.languageServiceRefCount===0&&(DO(V)?Z.delete(C):(V.delete(U),V.size===1&&Z.set(C,dn(V.values(),nl))))}return{acquireDocument:p,acquireDocumentWithKey:h,updateDocument:m,updateDocumentWithKey:b,releaseDocument:R,releaseDocumentWithKey:M,getKeyForCompilationSettings:iY,getDocumentRegistryBucketKeyWithMode:vde,reportStats:l,getBuckets:()=>o}}function iY(e){return Pq(e,CF)}function vde(e,t){return t?`${e}|${t}`:e}var bJe=T({"src/services/documentRegistry.ts"(){si()}});function yde(e,t,r,i,o,s,l){const u=CR(i),p=Mu(u),h=oY(t,r,p,l),m=oY(r,t,p,l);return _r.ChangeTracker.with({host:i,formatContext:o,preferences:s},b=>{SJe(e,b,h,t,r,i.getCurrentDirectory(),u),TJe(e,b,h,m,i,p)})}function oY(e,t,r,i){const o=r(e);return l=>{const u=i&&i.tryGetSourcePosition({fileName:l,pos:0}),p=s(u?u.fileName:l);return u?p===void 0?void 0:EJe(u.fileName,p,l,r):p};function s(l){if(r(l)===o)return t;const u=OU(l,o,r);return u===void 0?void 0:t+"/"+u}}function EJe(e,t,r,i){const o=QM(e,t,i);return bde(ai(r),o)}function SJe(e,t,r,i,o,s,l){const{configFile:u}=e.getCompilerOptions();if(!u)return;const p=ai(u.fileName),h=AC(u);if(!h)return;Ede(h,(I,R)=>{switch(R){case"files":case"include":case"exclude":{if(m(I)||R!=="include"||!_d(I.initializer))return;const C=Hi(I.initializer.elements,U=>Ma(U)?U.text:void 0);if(C.length===0)return;const O=$3(p,[],C,l,s);qy(N.checkDefined(O.includeFilePattern),l).test(i)&&!qy(N.checkDefined(O.includeFilePattern),l).test(o)&&t.insertNodeAfter(u,Ya(I.initializer.elements),w.createStringLiteral(A(o)));return}case"compilerOptions":Ede(I.initializer,(M,C)=>{const O=pq(C);N.assert((O==null?void 0:O.type)!=="listOrElement"),O&&(O.isFilePath||O.type==="list"&&O.element.isFilePath)?m(M):C==="paths"&&Ede(M.initializer,U=>{if(_d(U.initializer))for(const K of U.initializer.elements)b(K)})});return}});function m(I){const R=_d(I.initializer)?I.initializer.elements:[I.initializer];let M=!1;for(const C of R)M=b(C)||M;return M}function b(I){if(!Ma(I))return!1;const R=bde(p,I.text),M=r(R);return M!==void 0?(t.replaceRangeWithText(u,QDe(I,u),A(M)),!0):!1}function A(I){return Em(p,I,!l)}}function TJe(e,t,r,i,o,s){const l=e.getSourceFiles();for(const u of l){const p=r(u.fileName),h=p??u.fileName,m=ai(h),b=i(u.fileName),A=b||u.fileName,I=ai(A),R=p!==void 0||b!==void 0;xJe(u,t,M=>{if(!Wp(M))return;const C=bde(I,M),O=r(C);return O===void 0?void 0:CE(Em(m,O,s))},M=>{const C=e.getTypeChecker().getSymbolAtLocation(M);if(C!=null&&C.declarations&&C.declarations.some(U=>ku(U)))return;const O=b!==void 0?$De(M,uD(M.text,A,e.getCompilerOptions(),o),r,l):IJe(C,M,u,e,o,r);return O!==void 0&&(O.updated||R&&Wp(M.text))?m1.updateModuleSpecifier(e.getCompilerOptions(),u,h,O.newFileName,sT(e,o),M.text):void 0})}}function AJe(e,t){return ga(Qr(e,t))}function bde(e,t){return CE(AJe(e,t))}function IJe(e,t,r,i,o,s){if(e){const l=An(e.declarations,$i).fileName,u=s(l);return u===void 0?{newFileName:l,updated:!1}:{newFileName:u,updated:!0}}else{const l=i.getModeForUsageLocation(r,t),u=o.resolveModuleNameLiterals||!o.resolveModuleNames?i.getResolvedModuleFromModuleSpecifier(t):o.getResolvedModuleWithFailedLookupLocationsFromCache&&o.getResolvedModuleWithFailedLookupLocationsFromCache(t.text,r.fileName,l);return $De(t,u,s,i.getSourceFiles())}}function $De(e,t,r,i){if(!t)return;if(t.resolvedModule){const p=u(t.resolvedModule.resolvedFileName);if(p)return p}const o=Ue(t.failedLookupLocations,s)||Wp(e.text)&&Ue(t.failedLookupLocations,l);if(o)return o;return t.resolvedModule&&{newFileName:t.resolvedModule.resolvedFileName,updated:!1};function s(p){const h=r(p);return h&&An(i,m=>m.fileName===h)?l(p):void 0}function l(p){return Al(p,"/package.json")?void 0:u(p)}function u(p){const h=r(p);return h&&{newFileName:h,updated:!0}}}function xJe(e,t,r,i){for(const o of e.referencedFiles||et){const s=r(o.fileName);s!==void 0&&s!==e.text.slice(o.pos,o.end)&&t.replaceRangeWithText(e,o,s)}for(const o of e.imports){const s=i(o);s!==void 0&&s!==o.text&&t.replaceRangeWithText(e,QDe(o,e),s)}}function QDe(e,t){return xf(e.getStart(t)+1,e.end-1)}function Ede(e,t){if(Oa(e))for(const r of e.properties)hc(r)&&Ma(r.name)&&t(r,r.name.text)}var RJe=T({"src/services/getEditsForFileRename.ts"(){si()}});function _2(e,t){return{kind:e,isCaseSensitive:t}}function Sde(e){const t=new Map,r=e.trim().split(".").map(i=>PJe(i.trim()));if(r.length===1&&r[0].totalTextChunk.text==="")return{getMatchForLastSegmentOfPattern:()=>_2(2,!0),getFullMatch:()=>_2(2,!0),patternContainsDots:!1};if(!r.some(i=>!i.subWordTextChunks.length))return{getFullMatch:(i,o)=>DJe(i,o,r,t),getMatchForLastSegmentOfPattern:i=>Tde(i,Ya(r),t),patternContainsDots:r.length>1}}function DJe(e,t,r,i){if(!Tde(t,Ya(r),i)||r.length-1>e.length)return;let s;for(let l=r.length-2,u=e.length-1;l>=0;l-=1,u-=1)s=tNe(s,Tde(e[u],r[l],i));return s}function ZDe(e,t){let r=t.get(e);return r||t.set(e,r=Nde(e)),r}function eNe(e,t,r){const i=MJe(e,t.textLowerCase);if(i===0)return _2(t.text.length===e.length?0:1,uo(e,t.text));if(t.isLowerCase){if(i===-1)return;const o=ZDe(e,r);for(const s of o)if(Ade(e,s,t.text,!0))return _2(2,Ade(e,s,t.text,!1));if(t.text.length<e.length&&LD(e.charCodeAt(i)))return _2(2,!1)}else{if(e.indexOf(t.text)>0)return _2(2,!0);if(t.characterSpans.length>0){const o=ZDe(e,r),s=nNe(e,o,t,!1)?!0:nNe(e,o,t,!0)?!1:void 0;if(s!==void 0)return _2(3,s)}}}function Tde(e,t,r){if(aY(t.totalTextChunk.text,s=>s!==32&&s!==42)){const s=eNe(e,t.totalTextChunk,r);if(s)return s}const i=t.subWordTextChunks;let o;for(const s of i)o=tNe(o,eNe(e,s,r));return o}function tNe(e,t){return yG([e,t],NJe)}function NJe(e,t){return e===void 0?1:t===void 0?-1:rl(e.kind,t.kind)||Ry(!e.isCaseSensitive,!t.isCaseSensitive)}function Ade(e,t,r,i,o={start:0,length:r.length}){return o.length<=t.length&&aNe(0,o.length,s=>CJe(r.charCodeAt(o.start+s),e.charCodeAt(t.start+s),i))}function CJe(e,t,r){return r?Ide(e)===Ide(t):e===t}function nNe(e,t,r,i){const o=r.characterSpans;let s=0,l=0;for(;;){if(l===o.length)return!0;if(s===t.length)return!1;let u=t[s],p=!1;for(;l<o.length;l++){const h=o[l];if(p&&(!LD(r.text.charCodeAt(o[l-1].start))||!LD(r.text.charCodeAt(o[l].start)))||!Ade(e,u,r.text,i,h))break;p=!0,u=vu(u.start+h.length,u.length-h.length)}s++}}function PJe(e){return{totalTextChunk:Rde(e),subWordTextChunks:kJe(e)}}function LD(e){if(e>=65&&e<=90)return!0;if(e<127||!f4(e,99))return!1;const t=String.fromCharCode(e);return t===t.toUpperCase()}function rNe(e){if(e>=97&&e<=122)return!0;if(e<127||!f4(e,99))return!1;const t=String.fromCharCode(e);return t===t.toLowerCase()}function MJe(e,t){const r=e.length-t.length;for(let i=0;i<=r;i++)if(aY(t,(o,s)=>Ide(e.charCodeAt(s+i))===o))return i;return-1}function Ide(e){return e>=65&&e<=90?97+(e-65):e<127?e:String.fromCharCode(e).toLowerCase().charCodeAt(0)}function xde(e){return e>=48&&e<=57}function LJe(e){return LD(e)||rNe(e)||xde(e)||e===95||e===36}function kJe(e){const t=[];let r=0,i=0;for(let o=0;o<e.length;o++){const s=e.charCodeAt(o);LJe(s)?(i===0&&(r=o),i++):i>0&&(t.push(Rde(e.substr(r,i))),i=0)}return i>0&&t.push(Rde(e.substr(r,i))),t}function Rde(e){const t=e.toLowerCase();return{text:e,textLowerCase:t,isLowerCase:e===t,characterSpans:Dde(e)}}function Dde(e){return iNe(e,!1)}function Nde(e){return iNe(e,!0)}function iNe(e,t){const r=[];let i=0;for(let o=1;o<e.length;o++){const s=xde(e.charCodeAt(o-1)),l=xde(e.charCodeAt(o)),u=OJe(e,t,o),p=t&&wJe(e,o,i);(Cde(e.charCodeAt(o-1))||Cde(e.charCodeAt(o))||s!==l||u||p)&&(oNe(e,i,o)||r.push(vu(i,o-i)),i=o)}return oNe(e,i,e.length)||r.push(vu(i,e.length-i)),r}function Cde(e){switch(e){case 33:case 34:case 35:case 37:case 38:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 58:case 59:case 63:case 64:case 91:case 92:case 93:case 95:case 123:case 125:return!0}return!1}function oNe(e,t,r){return aY(e,i=>Cde(i)&&i!==95,t,r)}function wJe(e,t,r){return t!==r&&t+1<e.length&&LD(e.charCodeAt(t))&&rNe(e.charCodeAt(t+1))&&aY(e,LD,r,t)}function OJe(e,t,r){const i=LD(e.charCodeAt(r-1));return LD(e.charCodeAt(r))&&(!t||!i)}function aNe(e,t,r){for(let i=e;i<t;i++)if(!r(i))return!1;return!0}function aY(e,t,r=0,i=e.length){return aNe(r,i,o=>t(e.charCodeAt(o),o))}var V5,WJe=T({"src/services/patternMatcher.ts"(){si(),V5=(e=>(e[e.exact=0]="exact",e[e.prefix=1]="prefix",e[e.substring=2]="substring",e[e.camelCase=3]="camelCase",e))(V5||{})}});function sNe(e,t=!0,r=!1){const i={languageVersion:1,pragmas:void 0,checkJsDirective:void 0,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:void 0,moduleName:void 0},o=[];let s,l,u,p=0,h=!1;function m(){return l=u,u=Qu.scan(),u===19?p++:u===20&&p--,u}function b(){const V=Qu.getTokenValue(),se=Qu.getTokenStart();return{fileName:V,pos:se,end:se+V.length}}function A(){s||(s=[]),s.push({ref:b(),depth:p})}function I(){o.push(b()),R()}function R(){p===0&&(h=!0)}function M(){let V=Qu.getToken();return V===138?(V=m(),V===144&&(V=m(),V===11&&A()),!0):!1}function C(){if(l===25)return!1;let V=Qu.getToken();if(V===102){if(V=m(),V===21){if(V=m(),V===11||V===15)return I(),!0}else{if(V===11)return I(),!0;if(V===156&&Qu.lookAhead(()=>{const G=Qu.scan();return G!==161&&(G===42||G===19||G===80||Bd(G))})&&(V=m()),V===80||Bd(V))if(V=m(),V===161){if(V=m(),V===11)return I(),!0}else if(V===64){if(U(!0))return!0}else if(V===28)V=m();else return!0;if(V===19){for(V=m();V!==20&&V!==1;)V=m();V===20&&(V=m(),V===161&&(V=m(),V===11&&I()))}else V===42&&(V=m(),V===130&&(V=m(),(V===80||Bd(V))&&(V=m(),V===161&&(V=m(),V===11&&I()))))}return!0}return!1}function O(){let V=Qu.getToken();if(V===95){if(R(),V=m(),V===156&&Qu.lookAhead(()=>{const G=Qu.scan();return G===42||G===19})&&(V=m()),V===19){for(V=m();V!==20&&V!==1;)V=m();V===20&&(V=m(),V===161&&(V=m(),V===11&&I()))}else if(V===42)V=m(),V===161&&(V=m(),V===11&&I());else if(V===102&&(V=m(),V===156&&Qu.lookAhead(()=>{const G=Qu.scan();return G===80||Bd(G)})&&(V=m()),(V===80||Bd(V))&&(V=m(),V===64&&U(!0))))return!0;return!0}return!1}function U(V,se=!1){let G=V?m():Qu.getToken();return G===149?(G=m(),G===21&&(G=m(),(G===11||se&&G===15)&&I()),!0):!1}function K(){let V=Qu.getToken();if(V===80&&Qu.getTokenValue()==="define"){if(V=m(),V!==21)return!0;if(V=m(),V===11||V===15)if(V=m(),V===28)V=m();else return!0;if(V!==23)return!0;for(V=m();V!==24&&V!==1;)(V===11||V===15)&&I(),V=m();return!0}return!1}function Z(){for(Qu.setText(e),m();Qu.getToken()!==1;){if(Qu.getToken()===16){const V=[Qu.getToken()];e:for(;Me(V);){const se=Qu.scan();switch(se){case 1:break e;case 102:C();break;case 16:V.push(se);break;case 19:Me(V)&&V.push(se);break;case 20:Me(V)&&(tl(V)===16?Qu.reScanTemplateToken(!1)===18&&V.pop():V.pop());break}}m()}M()||C()||O()||r&&(U(!1,!0)||K())||m()}Qu.setText(void 0)}if(t&&Z(),aq(i,e),sq(i,$a),h){if(s)for(const V of s)o.push(V.ref);return{referencedFiles:i.referencedFiles,typeReferenceDirectives:i.typeReferenceDirectives,libReferenceDirectives:i.libReferenceDirectives,importedFiles:o,isLibFile:!!i.hasNoDefaultLib,ambientExternalModules:void 0}}else{let V;if(s)for(const se of s)se.depth===0?(V||(V=[]),V.push(se.ref.fileName)):o.push(se.ref);return{referencedFiles:i.referencedFiles,typeReferenceDirectives:i.typeReferenceDirectives,libReferenceDirectives:i.libReferenceDirectives,importedFiles:o,isLibFile:!!i.hasNoDefaultLib,ambientExternalModules:V}}}var FJe=T({"src/services/preProcess.ts"(){si()}});function Pde(e){const t=Mu(e.useCaseSensitiveFileNames()),r=e.getCurrentDirectory(),i=new Map,o=new Map;return{tryGetSourcePosition:u,tryGetGeneratedPosition:p,toLineColumnOffset:A,clearCache:I};function s(R){return ol(R,r,t)}function l(R,M){const C=s(R),O=o.get(C);if(O)return O;let U;if(e.getDocumentPositionMapper)U=e.getDocumentPositionMapper(R,M);else if(e.readFile){const K=b(R);U=K&&sY({getSourceFileLike:b,getCanonicalFileName:t,log:Z=>e.log(Z)},R,eJ(K.text,kg(K)),Z=>!e.fileExists||e.fileExists(Z)?e.readFile(Z):void 0)}return o.set(C,U||n7),U||n7}function u(R){if(!Su(R.fileName)||!h(R.fileName))return;const C=l(R.fileName).getSourcePosition(R);return!C||C===R?void 0:u(C)||C}function p(R){if(Su(R.fileName))return;const M=h(R.fileName);if(!M)return;const C=e.getProgram();if(C.isSourceOfProjectReferenceRedirect(M.fileName))return;const O=C.getCompilerOptions(),U=Ps(O),K=U?Id(U)+".d.ts":A3(R.fileName,C.getCompilerOptions(),r,C.getCommonSourceDirectory(),t);if(K===void 0)return;const Z=l(K,R.fileName).getGeneratedPosition(R);return Z===R?void 0:Z}function h(R){const M=e.getProgram();if(!M)return;const C=s(R),O=M.getSourceFileByPath(C);return O&&O.resolvedPath===C?O:void 0}function m(R){const M=s(R),C=i.get(M);if(C!==void 0)return C||void 0;if(!e.readFile||e.fileExists&&!e.fileExists(R)){i.set(M,!1);return}const O=e.readFile(R),U=O?zJe(O):!1;return i.set(M,U),U||void 0}function b(R){return e.getSourceFileLike?e.getSourceFileLike(R):h(R)||m(R)}function A(R,M){return b(R).getLineAndCharacterOfPosition(M)}function I(){i.clear(),o.clear()}}function sY(e,t,r,i){let o=Tle(r);if(o){const u=cNe.exec(o);if(u){if(u[1]){const p=u[1];return lNe(e,Toe(gu,p),t)}o=void 0}}const s=[];o&&s.push(o),s.push(t+".map");const l=o&&go(o,ai(t));for(const u of s){const p=go(u,ai(t)),h=i(p,l);if(Po(h))return lNe(e,h,p);if(h!==void 0)return h||void 0}}function lNe(e,t,r){const i=tJ(t);if(!(!i||!i.sources||!i.file||!i.mappings)&&!(i.sourcesContent&&i.sourcesContent.some(Po)))return xle(e,i,r)}function zJe(e,t){return{text:e,lineMap:t,getLineAndCharacterOfPosition(r){return Kx(kg(this),r)}}}var cNe,BJe=T({"src/services/sourcemaps.ts"(){si(),cNe=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+/=]+)$)?/}});function lY(e,t,r){var i;t.getSemanticDiagnostics(e,r);const o=[],s=t.getTypeChecker();!(e.impliedNodeFormat===1||Tc(e.fileName,[".cts",".cjs"]))&&e.commonJsModuleIndicator&&(jue(t)||gX(t.getCompilerOptions()))&&GJe(e)&&o.push(wr(HJe(e.commonJsModuleIndicator),f.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module));const u=dd(e);if(pY.clear(),p(e),FS(t.getCompilerOptions()))for(const h of e.imports){const m=DC(h),b=VJe(m);if(!b)continue;const A=(i=t.getResolvedModuleFromModuleSpecifier(h))==null?void 0:i.resolvedModule,I=A&&t.getSourceFile(A.resolvedFileName);I&&I.externalModuleIndicator&&I.externalModuleIndicator!==!0&&kl(I.externalModuleIndicator)&&I.externalModuleIndicator.isExportEquals&&o.push(wr(b,f.Import_may_be_converted_to_a_default_import))}return Jr(o,e.bindSuggestionDiagnostics),Jr(o,t.getSuggestionDiagnostics(e,r)),o.sort((h,m)=>h.start-m.start);function p(h){if(u)JJe(h,s)&&o.push(wr(wi(h.parent)?h.parent.name:h,f.This_constructor_function_may_be_converted_to_a_class_declaration));else{if(Ll(h)&&h.parent===e&&h.declarationList.flags&2&&h.declarationList.declarations.length===1){const b=h.declarationList.declarations[0].initializer;b&&Ad(b,!0)&&o.push(wr(b,f.require_call_may_be_converted_to_an_import))}const m=Fu.getJSDocTypedefNodes(h);for(const b of m)o.push(wr(b,f.JSDoc_typedef_may_be_converted_to_TypeScript_type));Fu.parameterShouldGetTypeFromJSDoc(h)&&o.push(wr(h.name||h,f.JSDoc_types_may_be_moved_to_TypeScript_types))}dY(h)&&jJe(h,s,o),h.forEachChild(p)}}function GJe(e){return e.statements.some(t=>{switch(t.kind){case 243:return t.declarationList.declarations.some(r=>!!r.initializer&&Ad(uNe(r.initializer),!0));case 244:{const{expression:r}=t;if(!mr(r))return Ad(r,!0);const i=Bl(r);return i===1||i===2}default:return!1}})}function uNe(e){return Fr(e)?uNe(e.expression):e}function VJe(e){switch(e.kind){case 272:const{importClause:t,moduleSpecifier:r}=e;return t&&!t.name&&t.namedBindings&&t.namedBindings.kind===274&&Ma(r)?t.namedBindings.name:void 0;case 271:return e.name;default:return}}function jJe(e,t,r){UJe(e,t)&&!pY.has(mNe(e))&&r.push(wr(!e.name&&wi(e.parent)&&Ve(e.parent.name)?e.parent.name:e,f.This_may_be_converted_to_an_async_function))}function UJe(e,t){return!MC(e)&&e.body&&Xo(e.body)&&qJe(e.body,t)&&cY(e,t)}function cY(e,t){const r=t.getSignatureFromDeclaration(e),i=r?t.getReturnTypeOfSignature(r):void 0;return!!i&&!!t.getPromisedTypeOfPromise(i)}function HJe(e){return mr(e)?e.left:e}function qJe(e,t){return!!zE(e,r=>j5(r,t))}function j5(e,t){return Dm(e)&&!!e.expression&&uY(e.expression,t)}function uY(e,t){if(!dNe(e)||!pNe(e)||!e.arguments.every(i=>fNe(i,t)))return!1;let r=e.expression.expression;for(;dNe(r)||Fr(r);)if(la(r)){if(!pNe(r)||!r.arguments.every(i=>fNe(i,t)))return!1;r=r.expression.expression}else r=r.expression;return!0}function dNe(e){return la(e)&&(oO(e,"then")||oO(e,"catch")||oO(e,"finally"))}function pNe(e){const t=e.expression.name.text,r=t==="then"?2:t==="catch"||t==="finally"?1:0;return e.arguments.length>r?!1:e.arguments.length<r?!0:r===1||bt(e.arguments,i=>i.kind===106||Ve(i)&&i.text==="undefined")}function fNe(e,t){switch(e.kind){case 262:case 218:if(Vc(e)&1)return!1;case 219:pY.set(mNe(e),!0);case 106:return!0;case 80:case 211:{const i=t.getSymbolAtLocation(e);return i?t.isUndefinedSymbol(i)||bt(bu(i,t).declarations,o=>ea(o)||zy(o)&&!!o.initializer&&ea(o.initializer)):!1}default:return!1}}function mNe(e){return`${e.pos.toString()}:${e.end.toString()}`}function JJe(e,t){var r,i,o,s;if(Os(e)){if(wi(e.parent)&&((r=e.symbol.members)!=null&&r.size))return!0;const l=t.getSymbolOfExpando(e,!1);return!!(l&&((i=l.exports)!=null&&i.size||(o=l.members)!=null&&o.size))}return Ac(e)?!!((s=e.symbol.members)!=null&&s.size):!1}function dY(e){switch(e.kind){case 262:case 174:case 218:case 219:return!0;default:return!1}}var pY,KJe=T({"src/services/suggestionDiagnostics.ts"(){si(),pY=new Map}});function Mde(e,t){const r=[],i=t.compilerOptions?fY(t.compilerOptions,r):{},o=dz();for(const A in o)xs(o,A)&&i[A]===void 0&&(i[A]=o[A]);for(const A of xq)i.verbatimModuleSyntax&&hNe.has(A.name)||(i[A.name]=A.transpileOptionValue);i.suppressOutputPathCheck=!0,i.allowNonTsExtensions=!0;const s=Uv(i),l={getSourceFile:A=>A===ga(u)?p:void 0,writeFile:(A,I)=>{Il(A,".map")?(N.assertEqual(m,void 0,"Unexpected multiple source map outputs, file:",A),m=I):(N.assertEqual(h,void 0,"Unexpected multiple outputs, file:",A),h=I)},getDefaultLibFileName:()=>"lib.d.ts",useCaseSensitiveFileNames:()=>!1,getCanonicalFileName:A=>A,getCurrentDirectory:()=>"",getNewLine:()=>s,fileExists:A=>A===u,readFile:()=>"",directoryExists:()=>!0,getDirectories:()=>[]},u=t.fileName||(t.compilerOptions&&t.compilerOptions.jsx?"module.tsx":"module.ts"),p=dw(u,e,{languageVersion:os(i),impliedNodeFormat:Jw(ol(u,"",l.getCanonicalFileName),void 0,l,i),setExternalModuleIndicator:bk(i),jsDocParsingMode:t.jsDocParsingMode??0});t.moduleName&&(p.moduleName=t.moduleName),t.renamedDependencies&&(p.renamedDependencies=new Map(Object.entries(t.renamedDependencies)));let h,m;const b=A7([u],i,l);return t.reportDiagnostics&&(Jr(r,b.getSyntacticDiagnostics(p)),Jr(r,b.getOptionsDiagnostics())),b.emit(void 0,void 0,void 0,void 0,t.transformers),h===void 0?N.fail("Output generation failed"):{outputText:h,diagnostics:r,sourceMapText:m}}function _Ne(e,t,r,i,o){const s=Mde(e,{compilerOptions:t,fileName:r,reportDiagnostics:!!i,moduleName:o});return Jr(i,s.diagnostics),s.outputText}function fY(e,t){Lde=Lde||nr(pg,r=>typeof r.type=="object"&&!Gc(r.type,i=>typeof i!="number")),e=dX(e);for(const r of Lde){if(!xs(e,r.name))continue;const i=e[r.name];Po(i)?e[r.name]=TF(r,i,t):Gc(r.type,o=>o===i)||t.push(Ase(r))}return e}var hNe,Lde,XJe=T({"src/services/transpile.ts"(){si(),hNe=new Set(["isolatedModules","preserveValueImports","importsNotUsedAsValues"])}});function gNe(e,t,r,i,o,s,l){const u=Sde(i);if(!u)return et;const p=[],h=e.length===1?e[0]:void 0;for(const m of e)r.throwIfCancellationRequested(),!(s&&m.isDeclarationFile)&&(vNe(m,!!l,h)||m.getNamedDeclarations().forEach((b,A)=>{YJe(u,A,b,t,m.fileName,!!l,h,p)}));return p.sort(eKe),(o===void 0?p:p.slice(0,o)).map(tKe)}function vNe(e,t,r){return e!==r&&t&&(IO(e.path)||e.hasNoDefaultLib)}function YJe(e,t,r,i,o,s,l,u){const p=e.getMatchForLastSegmentOfPattern(t);if(p){for(const h of r)if($Je(h,i,s,l))if(e.patternContainsDots){const m=e.getFullMatch(ZJe(h),t);m&&u.push({name:t,fileName:o,matchKind:m.kind,isCaseSensitive:m.isCaseSensitive,declaration:h})}else u.push({name:t,fileName:o,matchKind:p.kind,isCaseSensitive:p.isCaseSensitive,declaration:h})}}function $Je(e,t,r,i){var o;switch(e.kind){case 273:case 276:case 271:const s=t.getSymbolAtLocation(e.name),l=t.getAliasedSymbol(s);return s.escapedName!==l.escapedName&&!((o=l.declarations)!=null&&o.every(u=>vNe(u.getSourceFile(),r,i)));default:return!0}}function QJe(e,t){const r=Mo(e);return!!r&&(yNe(r,t)||r.kind===167&&kde(r.expression,t))}function kde(e,t){return yNe(e,t)||Fr(e)&&(t.push(e.name.text),!0)&&kde(e.expression,t)}function yNe(e,t){return N_(e)&&(t.push(em(e)),!0)}function ZJe(e){const t=[],r=Mo(e);if(r&&r.kind===167&&!kde(r.expression,t))return et;t.shift();let i=aT(e);for(;i;){if(!QJe(i,t))return et;i=aT(i)}return t.reverse()}function eKe(e,t){return rl(e.matchKind,t.matchKind)||BM(e.name,t.name)}function tKe(e){const t=e.declaration,r=aT(t),i=r&&Mo(r);return{name:e.name,kind:y1(t),kindModifiers:o2(t),matchKind:V5[e.matchKind],isCaseSensitive:e.isCaseSensitive,fileName:e.fileName,textSpan:Nd(t),containerName:i?i.text:"",containerKind:i?y1(r):""}}var nKe=T({"src/services/navigateTo.ts"(){si()}}),wde={};X(wde,{getNavigateToItems:()=>gNe});var bNe=T({"src/services/_namespaces/ts.NavigateTo.ts"(){nKe()}});function ENe(e,t){gY=t,NO=e;try{return wt(sKe(INe(e)),lKe)}finally{TNe()}}function SNe(e,t){gY=t,NO=e;try{return kNe(INe(e))}finally{TNe()}}function TNe(){NO=void 0,gY=void 0,CO=[],ny=void 0,vY=[]}function U5(e){return h2(e.getText(NO))}function mY(e){return e.node.kind}function ANe(e,t){e.children?e.children.push(t):e.children=[t]}function INe(e){N.assert(!CO.length);const t={node:e,name:void 0,additionalNodes:void 0,parent:void 0,children:void 0,indent:0};ny=t;for(const r of e.statements)kI(r);return W0(),N.assert(!ny&&!CO.length),t}function S1(e,t){ANe(ny,Ode(e,t))}function Ode(e,t){return{node:e,name:t||(Ju(e)||yt(e)?Mo(e):void 0),additionalNodes:void 0,parent:ny,children:void 0,indent:ny.indent+1}}function xNe(e){kD||(kD=new Map),kD.set(e,!0)}function RNe(e){for(let t=0;t<e;t++)W0()}function DNe(e,t){const r=[];for(;!N_(t);){const i=JL(t),o=zg(t);t=t.expression,!(o==="prototype"||Ji(i))&&r.push(i)}r.push(t);for(let i=r.length-1;i>0;i--){const o=r[i];T1(e,o)}return[r.length-1,r[0]]}function T1(e,t){const r=Ode(e,t);ANe(ny,r),CO.push(ny),Ude.push(kD),kD=void 0,ny=r}function W0(){ny.children&&(_Y(ny.children,ny),zde(ny.children)),ny=CO.pop(),kD=Ude.pop()}function F0(e,t,r){T1(e,r),kI(t),W0()}function NNe(e){e.initializer&&uKe(e.initializer)?(T1(e),Ho(e.initializer,kI),W0()):F0(e,e.initializer)}function Wde(e){const t=Mo(e);if(t===void 0)return!1;if(Za(t)){const r=t.expression;return Gl(r)||vp(r)||nf(r)}return!!t}function kI(e){if(gY.throwIfCancellationRequested(),!(!e||NA(e)))switch(e.kind){case 176:const t=e;F0(t,t.body);for(const l of t.parameters)mp(l,t)&&S1(l);break;case 174:case 177:case 178:case 173:Wde(e)&&F0(e,e.body);break;case 172:Wde(e)&&NNe(e);break;case 171:Wde(e)&&S1(e);break;case 273:const r=e;r.name&&S1(r.name);const{namedBindings:i}=r;if(i)if(i.kind===274)S1(i);else for(const l of i.elements)S1(l);break;case 304:F0(e,e.name);break;case 305:const{expression:o}=e;Ve(o)?S1(e,o):S1(e);break;case 208:case 303:case 260:{const l=e;ta(l.name)?kI(l.name):NNe(l);break}case 262:const s=e.name;s&&Ve(s)&&xNe(s.text),F0(e,e.body);break;case 219:case 218:F0(e,e.body);break;case 266:T1(e);for(const l of e.members)cKe(l)||S1(l);W0();break;case 263:case 231:case 264:T1(e);for(const l of e.members)kI(l);W0();break;case 267:F0(e,ONe(e).body);break;case 277:{const l=e.expression,u=Oa(l)||la(l)?l:Gs(l)||Os(l)?l.body:void 0;u?(T1(e),kI(u),W0()):S1(e);break}case 281:case 271:case 181:case 179:case 180:case 265:S1(e);break;case 213:case 226:{const l=Bl(e);switch(l){case 1:case 2:F0(e,e.right);return;case 6:case 3:{const u=e,p=u.left,h=l===3?p.expression:p;let m=0,b;Ve(h.expression)?(xNe(h.expression.text),b=h.expression):[m,b]=DNe(u,h.expression),l===6?Oa(u.right)&&u.right.properties.length>0&&(T1(u,b),Ho(u.right,kI),W0()):Os(u.right)||Gs(u.right)?F0(e,u.right,b):(T1(u,b),F0(e,u.right,p.name),W0()),RNe(m);return}case 7:case 9:{const u=e,p=l===7?u.arguments[0]:u.arguments[0].expression,h=u.arguments[1],[m,b]=DNe(e,p);T1(e,b),T1(e,dt(w.createIdentifier(h.text),h)),kI(e.arguments[2]),W0(),W0(),RNe(m);return}case 5:{const u=e,p=u.left,h=p.expression;if(Ve(h)&&zg(p)!=="prototype"&&kD&&kD.has(h.text)){Os(u.right)||Gs(u.right)?F0(e,u.right,h):VE(p)&&(T1(u,h),F0(u.left,u.right,JL(p)),W0());return}break}case 4:case 0:case 8:break;default:N.assertNever(l)}}default:Fp(e)&&Ue(e.jsDoc,l=>{Ue(l.tags,u=>{Zf(u)&&S1(u)})}),Ho(e,kI)}}function _Y(e,t){const r=new Map;Xs(e,(i,o)=>{const s=i.name||Mo(i.node),l=s&&U5(s);if(!l)return!0;const u=r.get(l);if(!u)return r.set(l,i),!0;if(u instanceof Array){for(const p of u)if(CNe(p,i,o,t))return!1;return u.push(i),!0}else{const p=u;return CNe(p,i,o,t)?!1:(r.set(l,[p,i]),!0)}})}function rKe(e,t,r,i){function o(u){return Os(u)||Ac(u)||wi(u)}const s=mr(t.node)||la(t.node)?Bl(t.node):0,l=mr(e.node)||la(e.node)?Bl(e.node):0;if(g2[s]&&g2[l]||o(e.node)&&g2[s]||o(t.node)&&g2[l]||Ic(e.node)&&Fde(e.node)&&g2[s]||Ic(t.node)&&g2[l]||Ic(e.node)&&Fde(e.node)&&o(t.node)||Ic(t.node)&&o(e.node)&&Fde(e.node)){let u=e.additionalNodes&&tl(e.additionalNodes)||e.node;if(!Ic(e.node)&&!Ic(t.node)||o(e.node)||o(t.node)){const h=o(e.node)?e.node:o(t.node)?t.node:void 0;if(h!==void 0){const m=dt(w.createConstructorDeclaration(void 0,[],void 0),h),b=Ode(m);b.indent=e.indent+1,b.children=e.node===h?e.children:t.children,e.children=e.node===h?So([b],t.children||[t]):So(e.children||[{...e}],[b])}else(e.children||t.children)&&(e.children=So(e.children||[{...e}],t.children||[t]),e.children&&(_Y(e.children,e),zde(e.children)));u=e.node=dt(w.createClassDeclaration(void 0,e.name||w.createIdentifier("__class__"),void 0,void 0,[]),e.node)}else e.children=So(e.children,t.children),e.children&&_Y(e.children,e);const p=t.node;return i.children[r-1].node.end===u.end?dt(u,{pos:u.pos,end:p.end}):(e.additionalNodes||(e.additionalNodes=[]),e.additionalNodes.push(dt(w.createClassDeclaration(void 0,e.name||w.createIdentifier("__class__"),void 0,void 0,[]),t.node))),!0}return s!==0}function CNe(e,t,r,i){return rKe(e,t,r,i)?!0:iKe(e.node,t.node,i)?(oKe(e,t),!0):!1}function iKe(e,t,r){if(e.kind!==t.kind||e.parent!==t.parent&&!(PNe(e,r)&&PNe(t,r)))return!1;switch(e.kind){case 172:case 174:case 177:case 178:return sa(e)===sa(t);case 267:return MNe(e,t)&&Vde(e)===Vde(t);default:return!0}}function Fde(e){return!!(e.flags&16)}function PNe(e,t){const r=O_(e.parent)?e.parent.parent:e.parent;return r===t.node||Nr(t.additionalNodes,r)}function MNe(e,t){return!e.body||!t.body?e.body===t.body:e.body.kind===t.body.kind&&(e.body.kind!==267||MNe(e.body,t.body))}function oKe(e,t){e.additionalNodes=e.additionalNodes||[],e.additionalNodes.push(t.node),t.additionalNodes&&e.additionalNodes.push(...t.additionalNodes),e.children=So(e.children,t.children),e.children&&(_Y(e.children,e),zde(e.children))}function zde(e){e.sort(aKe)}function aKe(e,t){return BM(LNe(e.node),LNe(t.node))||rl(mY(e),mY(t))}function LNe(e){if(e.kind===267)return wNe(e);const t=Mo(e);if(t&&oc(t)){const r=PS(t);return r&&Vi(r)}switch(e.kind){case 218:case 219:case 231:return FNe(e);default:return}}function Bde(e,t){if(e.kind===267)return h2(wNe(e));if(t){const r=Ve(t)?t.text:Qs(t)?`[${U5(t.argumentExpression)}]`:U5(t);if(r.length>0)return h2(r)}switch(e.kind){case 312:const r=e;return sc(r)?`"${og(ic(Id(ga(r.fileName))))}"`:"<global>";case 277:return kl(e)&&e.isExportEquals?"export=":"default";case 219:case 262:case 218:case 263:case 231:return Uy(e)&2048?"default":FNe(e);case 176:return"constructor";case 180:return"new()";case 179:return"()";case 181:return"[]";default:return"<unknown>"}}function sKe(e){const t=[];function r(o){if(i(o)&&(t.push(o),o.children))for(const s of o.children)r(s)}return r(e),t;function i(o){if(o.children)return!0;switch(mY(o)){case 263:case 231:case 266:case 264:case 267:case 312:case 265:case 353:case 345:return!0;case 219:case 262:case 218:return s(o);default:return!1}function s(l){if(!l.node.body)return!1;switch(mY(l.parent)){case 268:case 312:case 174:case 176:return!0;default:return!1}}}}function kNe(e){return{text:Bde(e.node,e.name),kind:y1(e.node),kindModifiers:WNe(e.node),spans:Gde(e),nameSpan:e.name&&jde(e.name),childItems:wt(e.children,kNe)}}function lKe(e){return{text:Bde(e.node,e.name),kind:y1(e.node),kindModifiers:WNe(e.node),spans:Gde(e),childItems:wt(e.children,t)||vY,indent:e.indent,bolded:!1,grayed:!1};function t(r){return{text:Bde(r.node,r.name),kind:y1(r.node),kindModifiers:o2(r.node),spans:Gde(r),childItems:vY,indent:0,bolded:!1,grayed:!1}}}function Gde(e){const t=[jde(e.node)];if(e.additionalNodes)for(const r of e.additionalNodes)t.push(jde(r));return t}function wNe(e){return ku(e)?fc(e.name):Vde(e)}function Vde(e){const t=[em(e.name)];for(;e.body&&e.body.kind===267;)e=e.body,t.push(em(e.name));return t.join(".")}function ONe(e){return e.body&&Xl(e.body)?ONe(e.body):e}function cKe(e){return!e.name||e.name.kind===167}function jde(e){return e.kind===312?sb(e):Nd(e,NO)}function WNe(e){return e.parent&&e.parent.kind===260&&(e=e.parent),o2(e)}function FNe(e){const{parent:t}=e;if(e.name&&xL(e.name)>0)return h2(Rs(e.name));if(wi(t))return h2(Rs(t.name));if(mr(t)&&t.operatorToken.kind===64)return U5(t.left).replace(BNe,"");if(hc(t))return U5(t.name);if(Uy(e)&2048)return"default";if(ui(e))return"<class>";if(la(t)){let r=zNe(t.expression);if(r!==void 0){if(r=h2(r),r.length>hY)return`${r} callback`;const i=h2(Hi(t.arguments,o=>ls(o)||LA(o)?o.getText(NO):void 0).join(", "));return`${r}(${i}) callback`}}return"<function>"}function zNe(e){if(Ve(e))return e.text;if(Fr(e)){const t=zNe(e.expression),r=e.name.text;return t===void 0?r:`${t}.${r}`}else return}function uKe(e){switch(e.kind){case 219:case 218:case 231:return!0;default:return!1}}function h2(e){return e=e.length>hY?e.substring(0,hY)+"...":e,e.replace(/\\?(\r?\n|\r|\u2028|\u2029)/g,"")}var BNe,hY,gY,NO,CO,ny,Ude,kD,vY,g2,dKe=T({"src/services/navigationBar.ts"(){si(),BNe=/\s+/g,hY=150,CO=[],Ude=[],vY=[],g2={5:!0,3:!0,7:!0,9:!0,0:!1,1:!1,2:!1,8:!1,6:!0,4:!1}}}),Hde={};X(Hde,{getNavigationBarItems:()=>ENe,getNavigationTree:()=>SNe});var GNe=T({"src/services/_namespaces/ts.NavigationBar.ts"(){dKe()}});function fg(e,t){yY.set(e,t)}function pKe(e,t){return zo(Qp(yY.values(),r=>{var i;return e.cancellationToken&&e.cancellationToken.isCancellationRequested()||!((i=r.kinds)!=null&&i.some(o=>z0(o,e.kind)))?void 0:r.getAvailableActions(e,t)}))}function fKe(e,t,r,i){const o=yY.get(t);return o&&o.getEditsForAction(e,r,i)}var yY,VNe=T({"src/services/refactorProvider.ts"(){si(),Dh(),yY=new Map}});function jNe(e,t=!0){const{file:r,program:i}=e,o=LI(e),s=po(r,o.start),l=s.parent&&Uy(s.parent)&32&&t?s.parent:vO(s,r,o);if(!l||!$i(l.parent)&&!(O_(l.parent)&&ku(l.parent.parent)))return{error:Wo(f.Could_not_find_export_statement)};const u=i.getTypeChecker(),p=yKe(l.parent,u),h=Uy(l)||(kl(l)&&!l.isExportEquals?2080:0),m=!!(h&2048);if(!(h&32)||!m&&p.exports.has("default"))return{error:Wo(f.This_file_already_has_a_default_export)};const b=A=>Ve(A)&&u.getSymbolAtLocation(A)?void 0:{error:Wo(f.Can_only_convert_named_export)};switch(l.kind){case 262:case 263:case 264:case 266:case 265:case 267:{const A=l;return A.name?b(A.name)||{exportNode:A,exportName:A.name,wasDefault:m,exportingModuleSymbol:p}:void 0}case 243:{const A=l;if(!(A.declarationList.flags&2)||A.declarationList.declarations.length!==1)return;const I=Ha(A.declarationList.declarations);return I.initializer?(N.assert(!m,"Can't have a default flag here"),b(I.name)||{exportNode:A,exportName:I.name,wasDefault:m,exportingModuleSymbol:p}):void 0}case 277:{const A=l;return A.isExportEquals?void 0:b(A.expression)||{exportNode:A,exportName:A.expression,wasDefault:m,exportingModuleSymbol:p}}default:return}}function mKe(e,t,r,i,o){_Ke(e,r,i,t.getTypeChecker()),hKe(t,r,i,o)}function _Ke(e,{wasDefault:t,exportNode:r,exportName:i},o,s){if(t)if(kl(r)&&!r.isExportEquals){const l=r.expression,u=UNe(l.text,l.text);o.replaceNode(e,r,w.createExportDeclaration(void 0,!1,w.createNamedExports([u])))}else o.delete(e,N.checkDefined(DD(r,90),"Should find a default keyword in modifier list"));else{const l=N.checkDefined(DD(r,95),"Should find an export keyword in modifier list");switch(r.kind){case 262:case 263:case 264:o.insertNodeAfter(e,l,w.createToken(90));break;case 243:const u=Ha(r.declarationList.declarations);if(!Ws.Core.isSymbolReferencedInFile(i,s,e)&&!u.type){o.replaceNode(e,r,w.createExportDefault(N.checkDefined(u.initializer,"Initializer was previously known to be present")));break}case 266:case 265:case 267:o.deleteModifier(e,l),o.insertNodeAfter(e,r,w.createExportDefault(w.createIdentifier(i.text)));break;default:N.fail(`Unexpected exportNode kind ${r.kind}`)}}}function hKe(e,{wasDefault:t,exportName:r,exportingModuleSymbol:i},o,s){const l=e.getTypeChecker(),u=N.checkDefined(l.getSymbolAtLocation(r),"Export name should resolve to a symbol");Ws.Core.eachExportReference(e.getSourceFiles(),l,s,u,i,r.text,t,p=>{if(r===p)return;const h=p.getSourceFile();t?gKe(h,p,o,r.text):vKe(h,p,o)})}function gKe(e,t,r,i){const{parent:o}=t;switch(o.kind){case 211:r.replaceNode(e,t,w.createIdentifier(i));break;case 276:case 281:{const l=o;r.replaceNode(e,l,qde(i,l.name.text));break}case 273:{const l=o;N.assert(l.name===t,"Import clause name should match provided ref");const u=qde(i,t.text),{namedBindings:p}=l;if(!p)r.replaceNode(e,t,w.createNamedImports([u]));else if(p.kind===274){r.deleteRange(e,{pos:t.getStart(e),end:p.getStart(e)});const h=Ma(l.parent.moduleSpecifier)?yX(l.parent.moduleSpecifier,e):1,m=ey(void 0,[qde(i,t.text)],l.parent.moduleSpecifier,h);r.insertNodeAfter(e,l.parent,m)}else r.delete(e,t),r.insertNodeAtEndOfList(e,p.elements,u);break}case 205:const s=o;r.replaceNode(e,o,w.createImportTypeNode(s.argument,s.attributes,w.createIdentifier(i),s.typeArguments,s.isTypeOf));break;default:N.failBadSyntaxKind(o)}}function vKe(e,t,r){const i=t.parent;switch(i.kind){case 211:r.replaceNode(e,t,w.createIdentifier("default"));break;case 276:{const o=w.createIdentifier(i.name.text);i.parent.elements.length===1?r.replaceNode(e,i.parent,o):(r.delete(e,i),r.insertNodeBefore(e,i.parent,o));break}case 281:{r.replaceNode(e,i,UNe("default",i.name.text));break}default:N.assertNever(i,`Unexpected parent kind ${i.kind}`)}}function qde(e,t){return w.createImportSpecifier(!1,e===t?void 0:w.createIdentifier(e),w.createIdentifier(t))}function UNe(e,t){return w.createExportSpecifier(!1,e===t?void 0:w.createIdentifier(e),w.createIdentifier(t))}function yKe(e,t){if($i(e))return e.symbol;const r=e.parent.symbol;return r.valueDeclaration&&WE(r.valueDeclaration)?t.getMergedSymbol(r):r}var bY,H5,q5,bKe=T({"src/services/refactors/convertExport.ts"(){si(),Dh(),bY="Convert export",H5={name:"Convert default export to named export",description:Wo(f.Convert_default_export_to_named_export),kind:"refactor.rewrite.export.named"},q5={name:"Convert named export to default export",description:Wo(f.Convert_named_export_to_default_export),kind:"refactor.rewrite.export.default"},fg(bY,{kinds:[H5.kind,q5.kind],getAvailableActions:function(t){const r=jNe(t,t.triggerReason==="invoked");if(!r)return et;if(!Xg(r)){const i=r.wasDefault?H5:q5;return[{name:bY,description:i.description,actions:[i]}]}return t.preferences.provideRefactorNotApplicableReason?[{name:bY,description:Wo(f.Convert_default_export_to_named_export),actions:[{...H5,notApplicableReason:r.error},{...q5,notApplicableReason:r.error}]}]:et},getEditsForAction:function(t,r){N.assert(r===H5.name||r===q5.name,"Unexpected action name");const i=jNe(t);return N.assert(i&&!Xg(i),"Expected applicable refactor info"),{edits:_r.ChangeTracker.with(t,s=>mKe(t.file,t.program,i,s,t.cancellationToken)),renameFilename:void 0,renameLocation:void 0}}})}});function HNe(e,t=!0){const{file:r}=e,i=LI(e),o=po(r,i.start),s=t?Gn(o,kc):vO(o,r,i);if(!s||!kc(s))return{error:"Selection is not an import declaration."};const l=i.start+i.length,u=b1(s,s.parent,r);if(u&&l>u.getStart())return;const{importClause:p}=s;return p?p.namedBindings?p.namedBindings.kind===274?{convertTo:0,import:p.namedBindings}:qNe(e.program,p)?{convertTo:1,import:p.namedBindings}:{convertTo:2,import:p.namedBindings}:{error:Wo(f.Could_not_find_namespace_import_or_named_imports)}:{error:Wo(f.Could_not_find_import_clause)}}function qNe(e,t){return FS(e.getCompilerOptions())&&AKe(t.parent.moduleSpecifier,e.getTypeChecker())}function EKe(e,t,r,i){const o=t.getTypeChecker();i.convertTo===0?SKe(e,o,r,i.import,FS(t.getCompilerOptions())):KNe(e,t,r,i.import,i.convertTo===1)}function SKe(e,t,r,i,o){let s=!1;const l=[],u=new Map;Ws.Core.eachSymbolReferenceInFile(i.name,t,e,b=>{if(!Ure(b.parent))s=!0;else{const A=JNe(b.parent).text;t.resolveName(A,b,-1,!0)&&u.set(A,!0),N.assert(TKe(b.parent)===b,"Parent expression should match id"),l.push(b.parent)}});const p=new Map;for(const b of l){const A=JNe(b).text;let I=p.get(A);I===void 0&&p.set(A,I=u.has(A)?cT(A,e):A),r.replaceNode(e,b,w.createIdentifier(I))}const h=[];p.forEach((b,A)=>{h.push(w.createImportSpecifier(!1,b===A?void 0:w.createIdentifier(A),w.createIdentifier(b)))});const m=i.parent.parent;s&&!o?r.insertNodeAfter(e,m,Jde(m,void 0,h)):r.replaceNode(e,m,Jde(m,s?w.createIdentifier(i.name.text):void 0,h))}function JNe(e){return Fr(e)?e.name:e.right}function TKe(e){return Fr(e)?e.expression:e.left}function KNe(e,t,r,i,o=qNe(t,i.parent)){const s=t.getTypeChecker(),l=i.parent.parent,{moduleSpecifier:u}=l,p=new Set;i.elements.forEach(R=>{const M=s.getSymbolAtLocation(R.name);M&&p.add(M)});const h=u&&Ma(u)?Fu.moduleSpecifierToValidIdentifier(u.text,99):"module";function m(R){return!!Ws.Core.eachSymbolReferenceInFile(R.name,s,e,M=>{const C=s.resolveName(h,M,-1,!0);return C?p.has(C)?Ku(M.parent):!0:!1})}const A=i.elements.some(m)?cT(h,e):h,I=new Set;for(const R of i.elements){const M=(R.propertyName||R.name).text;Ws.Core.eachSymbolReferenceInFile(R.name,s,e,C=>{const O=w.createPropertyAccessExpression(w.createIdentifier(A),M);rp(C.parent)?r.replaceNode(e,C.parent,w.createPropertyAssignment(C.text,O)):Ku(C.parent)?I.add(R):r.replaceNode(e,C,O)})}if(r.replaceNode(e,i,o?w.createIdentifier(A):w.createNamespaceImport(w.createIdentifier(A))),I.size){const R=zo(I.values(),M=>w.createImportSpecifier(M.isTypeOnly,M.propertyName&&w.createIdentifier(M.propertyName.text),w.createIdentifier(M.name.text)));r.insertNodeAfter(e,i.parent.parent,Jde(l,void 0,R))}}function AKe(e,t){const r=t.resolveExternalModuleName(e);if(!r)return!1;const i=t.resolveExternalModuleSymbol(r);return r!==i}function Jde(e,t,r){return w.createImportDeclaration(void 0,w.createImportClause(!1,t,r&&r.length?w.createNamedImports(r):void 0),e.moduleSpecifier,void 0)}var EY,J5,IKe=T({"src/services/refactors/convertImport.ts"(){si(),Dh(),EY="Convert import",J5={0:{name:"Convert namespace import to named imports",description:Wo(f.Convert_namespace_import_to_named_imports),kind:"refactor.rewrite.import.named"},2:{name:"Convert named imports to namespace import",description:Wo(f.Convert_named_imports_to_namespace_import),kind:"refactor.rewrite.import.namespace"},1:{name:"Convert named imports to default import",description:Wo(f.Convert_named_imports_to_default_import),kind:"refactor.rewrite.import.default"}},fg(EY,{kinds:EA(J5).map(e=>e.kind),getAvailableActions:function(t){const r=HNe(t,t.triggerReason==="invoked");if(!r)return et;if(!Xg(r)){const i=J5[r.convertTo];return[{name:EY,description:i.description,actions:[i]}]}return t.preferences.provideRefactorNotApplicableReason?EA(J5).map(i=>({name:EY,description:i.description,actions:[{...i,notApplicableReason:r.error}]})):et},getEditsForAction:function(t,r){N.assert(bt(EA(J5),s=>s.name===r),"Unexpected action name");const i=HNe(t);return N.assert(i&&!Xg(i),"Expected applicable refactor info"),{edits:_r.ChangeTracker.with(t,s=>EKe(t.file,t.program,s,i)),renameFilename:void 0,renameLocation:void 0}}})}});function XNe(e,t=!0){const{file:r,startPosition:i}=e,o=dd(r),s=d5(LI(e)),l=s.pos===s.end&&t,u=xKe(r,i,s,l);if(!u||!ji(u))return{error:Wo(f.Selection_is_not_a_valid_type_node)};const p=e.program.getTypeChecker(),h=PKe(u,o);if(h===void 0)return{error:Wo(f.No_type_could_be_extracted_from_this_type_node)};const m=MKe(u,h);if(!ji(m))return{error:Wo(f.Selection_is_not_a_valid_type_node)};const b=[];(Qy(m.parent)||uI(m.parent))&&s.end>u.end&&Jr(b,m.parent.types.filter(M=>t5(M,r,s.pos,s.end)));const A=b.length>1?b:m,I=RKe(p,A,h,r);if(!I)return{error:Wo(f.No_type_could_be_extracted_from_this_type_node)};const R=SY(p,A);return{isJS:o,selection:A,enclosingNode:h,typeParameters:I,typeElements:R}}function xKe(e,t,r,i){const o=[()=>po(e,t),()=>xD(e,t,()=>!0)];for(const s of o){const l=s(),u=t5(l,e,r.pos,r.end),p=Gn(l,h=>h.parent&&ji(h)&&!A1(r,h.parent,e)&&(i||u));if(p)return p}}function SY(e,t){if(t){if(To(t)){const r=[];for(const i of t){const o=SY(e,i);if(!o)return;Jr(r,o)}return r}if(uI(t)){const r=[],i=new Map;for(const o of t.types){const s=SY(e,o);if(!s||!s.every(l=>l.name&&Rm(i,hO(l.name))))return;Jr(r,s)}return r}else{if(GS(t))return SY(e,t.type);if(Ep(t))return t.members}}}function A1(e,t,r){return cO(e,ka(r.text,t.pos),t.end)}function RKe(e,t,r,i){const o=[],s=SA(t),l={pos:s[0].pos,end:s[s.length-1].end};for(const p of s)if(u(p))return;return o;function u(p){if(Cf(p)){if(Ve(p.typeName)){const h=p.typeName,m=e.resolveName(h.text,h,262144,!0);for(const b of(m==null?void 0:m.declarations)||et)if(gl(b)&&b.getSourceFile()===i){if(b.name.escapedText===h.escapedText&&A1(b,l,i))return!0;if(A1(r,b,i)&&!A1(l,b,i)){Tf(o,b);break}}}}else if(BS(p)){const h=Gn(p,m=>dI(m)&&A1(m.extendsType,p,i));if(!h||!A1(l,h,i))return!0}else if(Kk(p)||Yk(p)){const h=Gn(p.parent,ea);if(h&&h.type&&A1(h.type,p,i)&&!A1(l,h,i))return!0}else if(lI(p)){if(Ve(p.exprName)){const h=e.resolveName(p.exprName.text,p.exprName,111551,!1);if(h!=null&&h.valueDeclaration&&A1(r,h.valueDeclaration,i)&&!A1(l,h.valueDeclaration,i))return!0}else if(KE(p.exprName.left)&&!A1(l,p.parent,i))return!0}return i&&cI(p)&&bs(i,p.pos).line===bs(i,p.end).line&&pr(p,1),Ho(p,u)}}function DKe(e,t,r,i){const{enclosingNode:o,typeParameters:s}=i,{firstTypeNode:l,lastTypeNode:u,newTypeNode:p}=Kde(i),h=w.createTypeAliasDeclaration(void 0,r,s.map(m=>w.updateTypeParameterDeclaration(m,m.modifiers,m.name,m.constraint,void 0)),p);e.insertNodeBefore(t,o,EH(h),!0),e.replaceNodeRange(t,l,u,w.createTypeReferenceNode(r,s.map(m=>w.createTypeReferenceNode(m.name,void 0))),{leadingTriviaOption:_r.LeadingTriviaOption.Exclude,trailingTriviaOption:_r.TrailingTriviaOption.ExcludeWhitespace})}function NKe(e,t,r,i){var o;const{enclosingNode:s,typeParameters:l,typeElements:u}=i,p=w.createInterfaceDeclaration(void 0,r,l,void 0,u);dt(p,(o=u[0])==null?void 0:o.parent),e.insertNodeBefore(t,s,EH(p),!0);const{firstTypeNode:h,lastTypeNode:m}=Kde(i);e.replaceNodeRange(t,h,m,w.createTypeReferenceNode(r,l.map(b=>w.createTypeReferenceNode(b.name,void 0))),{leadingTriviaOption:_r.LeadingTriviaOption.Exclude,trailingTriviaOption:_r.TrailingTriviaOption.ExcludeWhitespace})}function CKe(e,t,r,i,o){var s;SA(o.selection).forEach(R=>{pr(R,7168)});const{enclosingNode:l,typeParameters:u}=o,{firstTypeNode:p,lastTypeNode:h,newTypeNode:m}=Kde(o),b=w.createJSDocTypedefTag(w.createIdentifier("typedef"),w.createJSDocTypeExpression(m),w.createIdentifier(i)),A=[];Ue(u,R=>{const M=Zx(R),C=w.createTypeParameterDeclaration(void 0,R.name),O=w.createJSDocTemplateTag(w.createIdentifier("template"),M&&aa(M,d1),[C]);A.push(O)});const I=w.createJSDocComment(void 0,w.createNodeArray(So(A,[b])));if(n_(l)){const R=l.getStart(r),M=ty(t.host,(s=t.formatContext)==null?void 0:s.options);e.insertNodeAt(r,l.getStart(r),I,{suffix:M+M+r.text.slice(E5(r.text,R-1),R)})}else e.insertNodeBefore(r,l,I,!0);e.replaceNodeRange(r,p,h,w.createTypeReferenceNode(i,u.map(R=>w.createTypeReferenceNode(R.name,void 0))))}function Kde(e){return To(e.selection)?{firstTypeNode:e.selection[0],lastTypeNode:e.selection[e.selection.length-1],newTypeNode:Qy(e.selection[0].parent)?w.createUnionTypeNode(e.selection):w.createIntersectionTypeNode(e.selection)}:{firstTypeNode:e.selection,lastTypeNode:e.selection,newTypeNode:e.selection}}function PKe(e,t){return Gn(e,qi)||(t?Gn(e,n_):void 0)}function MKe(e,t){return Gn(e,r=>r===t?"quit":!!(Qy(r.parent)||uI(r.parent)))??e}var TY,K5,X5,Y5,LKe=T({"src/services/refactors/extractType.ts"(){si(),Dh(),TY="Extract type",K5={name:"Extract to type alias",description:Wo(f.Extract_to_type_alias),kind:"refactor.extract.type"},X5={name:"Extract to interface",description:Wo(f.Extract_to_interface),kind:"refactor.extract.interface"},Y5={name:"Extract to typedef",description:Wo(f.Extract_to_typedef),kind:"refactor.extract.typedef"},fg(TY,{kinds:[K5.kind,X5.kind,Y5.kind],getAvailableActions:function(t){const r=XNe(t,t.triggerReason==="invoked");return r?Xg(r)?t.preferences.provideRefactorNotApplicableReason?[{name:TY,description:Wo(f.Extract_type),actions:[{...Y5,notApplicableReason:r.error},{...K5,notApplicableReason:r.error},{...X5,notApplicableReason:r.error}]}]:et:[{name:TY,description:Wo(f.Extract_type),actions:r.isJS?[Y5]:xn([K5],r.typeElements&&X5)}]:et},getEditsForAction:function(t,r){const{file:i}=t,o=XNe(t);N.assert(o&&!Xg(o),"Expected to find a range to extract");const s=cT("NewType",i),l=_r.ChangeTracker.with(t,h=>{switch(r){case K5.name:return N.assert(!o.isJS,"Invalid actionName/JS combo"),DKe(h,i,s,o);case Y5.name:return N.assert(o.isJS,"Invalid actionName/JS combo"),CKe(h,t,i,s,o);case X5.name:return N.assert(!o.isJS&&!!o.typeElements,"Invalid actionName/JS combo"),NKe(h,i,s,o);default:N.fail("Unexpected action name")}}),u=i.fileName,p=EO(l,u,s,!1);return{edits:l,renameFilename:u,renameLocation:p}}})}});function Xg(e){return e.error!==void 0}function z0(e,t){return t?e.substr(0,t.length)===t:!0}var kKe=T({"src/services/refactors/helpers.ts"(){}});function YNe(e,t,r,i){var o,s;const l=i.getTypeChecker(),u=Vd(e,t),p=u.parent;if(Ve(u)){if(vk(p)&&TC(p)&&Ve(p.name)){if(((o=l.getMergedSymbol(p.symbol).declarations)==null?void 0:o.length)!==1)return{error:Wo(f.Variables_with_multiple_declarations_cannot_be_inlined)};if($Ne(p))return;const h=QNe(p,l,e);return h&&{references:h,declaration:p,replacement:p.initializer}}if(r){let h=l.resolveName(u.text,u,111551,!1);if(h=h&&l.getMergedSymbol(h),((s=h==null?void 0:h.declarations)==null?void 0:s.length)!==1)return{error:Wo(f.Variables_with_multiple_declarations_cannot_be_inlined)};const m=h.declarations[0];if(!vk(m)||!TC(m)||!Ve(m.name)||$Ne(m))return;const b=QNe(m,l,e);return b&&{references:b,declaration:m,replacement:m.initializer}}return{error:Wo(f.Could_not_find_variable_to_inline)}}}function $Ne(e){const t=aa(e.parent.parent,Ll);return bt(t.modifiers,oI)}function QNe(e,t,r){const i=[],o=Ws.Core.eachSymbolReferenceInFile(e.name,t,r,s=>{if(Ws.isWriteAccessForReference(s)&&!rp(s.parent)||Ku(s.parent)||kl(s.parent)||lI(s.parent)||sL(e,s.pos))return!0;i.push(s)});return i.length===0||o?void 0:i}function wKe(e,t){t=cl(t);const{parent:r}=e;return yt(r)&&(wC(t)<wC(r)||S5(r))||ea(t)&&(wE(r)||Fr(r))||Fr(r)&&(vp(t)||Oa(t))?w.createParenthesizedExpression(t):Ve(e)&&rp(r)?w.createPropertyAssignment(e,t):t}var PO,AY,IY,OKe=T({"src/services/refactors/inlineVariable.ts"(){si(),Dh(),PO="Inline variable",AY=Wo(f.Inline_variable),IY={name:PO,description:AY,kind:"refactor.inline.variable"},fg(PO,{kinds:[IY.kind],getAvailableActions(e){const{file:t,program:r,preferences:i,startPosition:o,triggerReason:s}=e,l=YNe(t,o,s==="invoked",r);return l?wI.isRefactorErrorInfo(l)?i.provideRefactorNotApplicableReason?[{name:PO,description:AY,actions:[{...IY,notApplicableReason:l.error}]}]:et:[{name:PO,description:AY,actions:[IY]}]:et},getEditsForAction(e,t){N.assert(t===PO,"Unexpected refactor invoked");const{file:r,program:i,startPosition:o}=e,s=YNe(r,o,!0,i);if(!s||wI.isRefactorErrorInfo(s))return;const{references:l,declaration:u,replacement:p}=s;return{edits:_r.ChangeTracker.with(e,m=>{for(const b of l)m.replaceNode(r,b,wKe(b,p));m.delete(r,u)})}}})}});function WKe(e,t,r,i,o,s){const l=t.getTypeChecker(),u=Z5(e,r.all,l),p=ope(e,t,o,r);i.createNewFile(e,p,FKe(e,u,i,r,t,o,p,s)),Xde(t,i,e.fileName,p,Gv(o))}function FKe(e,t,r,i,o,s,l,u){const p=o.getTypeChecker(),h=j6(e.statements,Im);if(e.externalModuleIndicator===void 0&&e.commonJsModuleIndicator===void 0&&t.oldImportsNeededByTargetFile.size===0)return $5(e,i.ranges,r),[...h,...i.all];const m=!HX(l,o,s,!!e.commonJsModuleIndicator),b=uf(e,u),A=Zde(e,t.oldFileImportsFromTargetFile,l,o,s,m,b);A&&s2(r,e,A,!0,u),Yde(e,i.all,r,t.unusedImportsFromOldFile,p),$5(e,i.ranges,r),$de(r,o,s,e,t.movedSymbols,l,b);const I=zKe(e,t.oldImportsNeededByTargetFile,t.targetFileImportsFromOldFile,r,p,o,s,m,b),R=epe(e,i.all,t.oldFileImportsFromTargetFile,m);return I.length&&R.length?[...h,...I,4,...R]:[...h,...I,...R]}function zKe(e,t,r,i,o,s,l,u,p){const h=[];for(const I of e.statements)kO(I,R=>{xn(h,wO(R,LO(R),M=>t.has(o.getSymbolAtLocation(M))))});let m;const b=[],A=PI();return r.forEach(I=>{if(I.declarations)for(const R of I.declarations){if(!ez(R))continue;const M=rpe(R);if(!M)continue;const C=DY(R);A(C)&&ipe(e,C,M,i,u),Zr(R,2048)?m=M:b.push(M.text)}}),xn(h,Q5(e,m,b,ic(e.fileName),s,l,u,p)),h}var MO,xY,RY,BKe=T({"src/services/refactors/moveToNewFile.ts"(){si(),Dh(),MO="Move to a new file",xY=Wo(f.Move_to_a_new_file),RY={name:MO,description:xY,kind:"refactor.move.newFile"},fg(MO,{kinds:[RY.kind],getAvailableActions:function(t){const r=OO(t);return t.preferences.allowTextChangesInNewFiles&&r?[{name:MO,description:xY,actions:[RY]}]:t.preferences.provideRefactorNotApplicableReason?[{name:MO,description:xY,actions:[{...RY,notApplicableReason:Wo(f.Selection_is_not_a_valid_statement_or_statements)}]}]:et},getEditsForAction:function(t,r){N.assert(r===MO,"Wrong refactor invoked");const i=N.checkDefined(OO(t));return{edits:_r.ChangeTracker.with(t,s=>WKe(t.file,t.program,i,s,t.host,t.preferences)),renameFilename:void 0,renameLocation:void 0}}})}});function ZNe(e){return{edits:[],renameFilename:void 0,renameLocation:void 0,notApplicableReason:e}}function GKe(e,t,r,i,o,s,l,u){const p=i.getTypeChecker();if(!l.fileExists(r))s.createNewFile(t,r,eCe(t,r,Z5(t,o.all,p),s,o,i,l,u)),Xde(i,s,t.fileName,r,Gv(l));else{const h=N.checkDefined(i.getSourceFile(r)),m=Fu.createImportAdder(h,e.program,e.preferences,e.host);eCe(t,h,Z5(t,o.all,p,aXe(h,o.all,p)),s,o,i,l,u,m)}}function eCe(e,t,r,i,o,s,l,u,p){const h=s.getTypeChecker(),m=j6(e.statements,Im);if(e.externalModuleIndicator===void 0&&e.commonJsModuleIndicator===void 0&&r.oldImportsNeededByTargetFile.size===0&&r.targetFileImportsFromOldFile.size===0&&typeof t=="string")return $5(e,o.ranges,i),[...m,...o.all];const b=typeof t=="string"?t:t.fileName,A=!HX(b,s,l,!!e.commonJsModuleIndicator),I=uf(e,u),R=Zde(e,r.oldFileImportsFromTargetFile,b,s,l,A,I);R&&s2(i,e,R,!0,u),Yde(e,o.all,i,r.unusedImportsFromOldFile,h),$5(e,o.ranges,i),$de(i,s,l,e,r.movedSymbols,b,I);const M=VKe(e,b,r.oldImportsNeededByTargetFile,r.targetFileImportsFromOldFile,i,h,s,l,A,I,p),C=epe(e,o.all,r.oldFileImportsFromTargetFile,A);return typeof t!="string"&&(t.statements.length>0?oXe(i,s,C,t,o):i.insertNodesAtEndOfFile(t,C,!1),M.length>0&&s2(i,t,M,!0,u)),p&&p.writeFixes(i,I),M.length&&C.length?[...m,...M,4,...C]:[...m,...M,...C]}function VKe(e,t,r,i,o,s,l,u,p,h,m){const b=[];if(m)r.forEach((C,O)=>{try{m.addImportFromExportedSymbol(bu(O,s),C)}catch{for(const U of e.statements)kO(U,K=>{xn(b,wO(K,w.createStringLiteral(LO(K).text),Z=>r.has(s.getSymbolAtLocation(Z))))})}});else{const C=l.getSourceFile(t);for(const O of e.statements)kO(O,U=>{var K;const Z=LO(U),V=l.getCompilerOptions(),se=l.getResolvedModuleFromModuleSpecifier(Z),G=(K=se==null?void 0:se.resolvedModule)==null?void 0:K.resolvedFileName;if(G&&C){const ne=HF(V,C,C.fileName,G,sT(l,u));xn(b,wO(U,MI(ne,h),he=>r.has(s.getSymbolAtLocation(he))))}else xn(b,wO(U,w.createStringLiteral(LO(U).text),ne=>r.has(s.getSymbolAtLocation(ne))))})}const A=l.getSourceFile(t);let I;const R=[],M=PI();return i.forEach(C=>{if(C.declarations)for(const O of C.declarations){if(!ez(O))continue;const U=rpe(O);if(!U)continue;const K=DY(O);M(K)&&ipe(e,K,U,o,p),m&&s.isUnknownSymbol(C)?m.addImportFromExportedSymbol(bu(C,s)):Zr(O,2048)?I=U:R.push(U.text)}}),A?xn(b,Q5(A,I,R,e.fileName,l,u,p,h)):xn(b,Q5(e,I,R,e.fileName,l,u,p,h))}function Xde(e,t,r,i,o){const s=e.getCompilerOptions().configFile;if(!s)return;const l=ga(Qr(r,"..",i)),u=QM(s.fileName,l,o),p=s.statements[0]&&ii(s.statements[0].expression,Oa),h=p&&An(p.properties,m=>hc(m)&&Ma(m.name)&&m.name.text==="files");h&&_d(h.initializer)&&t.insertNodeInListAfter(s,Ya(h.initializer.elements),w.createStringLiteral(u),h.initializer.elements)}function $5(e,t,r){for(const{first:i,afterLast:o}of t)r.deleteNodeRangeExcludingEnd(e,i,o)}function Yde(e,t,r,i,o){for(const s of e.statements)Nr(t,s)||kO(s,l=>tpe(e,l,r,u=>i.has(o.getSymbolAtLocation(u))))}function $de(e,t,r,i,o,s,l){const u=t.getTypeChecker();for(const p of t.getSourceFiles())if(p!==i)for(const h of p.statements)kO(h,m=>{if(u.getSymbolAtLocation(LO(m))!==i.symbol)return;const b=C=>{const O=Qa(C.parent)?v5(u,C.parent):bu(u.getSymbolAtLocation(C),u);return!!O&&o.has(O)};tpe(p,m,e,b);const A=Py(ai(i.path),s),I=HF(t.getCompilerOptions(),p,p.fileName,A,sT(t,r)),R=wO(m,MI(I,l),b);R&&e.insertNodeAfter(p,h,R);const M=jKe(m);M&&UKe(e,p,u,o,I,M,m,l)})}function jKe(e){switch(e.kind){case 272:return e.importClause&&e.importClause.namedBindings&&e.importClause.namedBindings.kind===274?e.importClause.namedBindings.name:void 0;case 271:return e.name;case 260:return ii(e.name,Ve);default:return N.assertNever(e,`Unexpected node kind ${e.kind}`)}}function UKe(e,t,r,i,o,s,l,u){const p=Fu.moduleSpecifierToValidIdentifier(o,99);let h=!1;const m=[];if(Ws.Core.eachSymbolReferenceInFile(s,r,t,b=>{Fr(b.parent)&&(h=h||!!r.resolveName(p,b,-1,!0),i.has(r.getSymbolAtLocation(b.parent.name))&&m.push(b))}),m.length){const b=h?cT(p,t):p;for(const A of m)e.replaceNode(t,A,w.createIdentifier(b));e.insertNodeAfter(t,l,HKe(l,p,o,u))}}function HKe(e,t,r,i){const o=w.createIdentifier(t),s=MI(r,i);switch(e.kind){case 272:return w.createImportDeclaration(void 0,w.createImportClause(!1,void 0,w.createNamespaceImport(o)),s,void 0);case 271:return w.createImportEqualsDeclaration(void 0,!1,o,w.createExternalModuleReference(s));case 260:return w.createVariableDeclaration(o,void 0,void 0,Qde(s));default:return N.assertNever(e,`Unexpected node kind ${e.kind}`)}}function Qde(e){return w.createCallExpression(w.createIdentifier("require"),void 0,[e])}function LO(e){return e.kind===272?e.moduleSpecifier:e.kind===271?e.moduleReference.expression:e.initializer.arguments[0]}function kO(e,t){if(kc(e))Ma(e.moduleSpecifier)&&t(e);else if(tu(e))Ah(e.moduleReference)&&ls(e.moduleReference.expression)&&t(e);else if(Ll(e))for(const r of e.declarationList.declarations)r.initializer&&Ad(r.initializer,!0)&&t(r)}function Zde(e,t,r,i,o,s,l){let u;const p=[];return t.forEach(h=>{h.escapedName==="default"?u=w.createIdentifier(_5(h)):p.push(h.name)}),Q5(e,u,p,r,i,o,s,l)}function Q5(e,t,r,i,o,s,l,u){const p=Py(ai(e.path),i),h=HF(o.getCompilerOptions(),e,e.fileName,p,sT(o,s));if(l){const m=r.map(b=>w.createImportSpecifier(!1,void 0,w.createIdentifier(b)));return Uue(t,m,h,u)}else{N.assert(!t,"No default import should exist");const m=r.map(b=>w.createBindingElement(void 0,void 0,b));return m.length?tCe(w.createObjectBindingPattern(m),void 0,Qde(MI(h,u))):void 0}}function tCe(e,t,r,i=2){return w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(e,void 0,t,r)],i))}function epe(e,t,r,i){return Pi(t,o=>{if(rCe(o)&&!nCe(e,o,i)&&lpe(o,s=>{var l;return r.has(N.checkDefined((l=ii(s,x_))==null?void 0:l.symbol))})){const s=KKe(cl(o),i);if(s)return s}return cl(o)})}function nCe(e,t,r,i){var o;return r?!eu(t)&&Zr(t,32)||!!(i&&e.symbol&&((o=e.symbol.exports)!=null&&o.has(i.escapedText))):!!e.symbol&&!!e.symbol.exports&&npe(t).some(s=>e.symbol.exports.has(hl(s)))}function tpe(e,t,r,i){switch(t.kind){case 272:qKe(e,t,r,i);break;case 271:i(t.name)&&r.delete(e,t);break;case 260:JKe(e,t,r,i);break;default:N.assertNever(t,`Unexpected import decl kind ${t.kind}`)}}function qKe(e,t,r,i){if(!t.importClause)return;const{name:o,namedBindings:s}=t.importClause,l=!o||i(o),u=!s||(s.kind===274?i(s.name):s.elements.length!==0&&s.elements.every(p=>i(p.name)));if(l&&u)r.delete(e,t);else if(o&&l&&r.delete(e,o),s){if(u)r.replaceNode(e,t.importClause,w.updateImportClause(t.importClause,t.importClause.isTypeOnly,o,void 0));else if(s.kind===275)for(const p of s.elements)i(p.name)&&r.delete(e,p)}}function JKe(e,t,r,i){const{name:o}=t;switch(o.kind){case 80:i(o)&&(t.initializer&&Ad(t.initializer,!0)?r.delete(e,Uc(t.parent)&&Me(t.parent.declarations)===1?t.parent.parent:t):r.delete(e,o));break;case 207:break;case 206:if(o.elements.every(s=>Ve(s.name)&&i(s.name)))r.delete(e,Uc(t.parent)&&t.parent.declarations.length===1?t.parent.parent:t);else for(const s of o.elements)Ve(s.name)&&i(s.name)&&r.delete(e,s.name);break}}function rCe(e){return N.assert($i(e.parent),"Node parent should be a SourceFile"),lCe(e)||Ll(e)}function KKe(e,t){return t?[XKe(e)]:YKe(e)}function XKe(e){const t=Cm(e)?So([w.createModifier(95)],ME(e)):void 0;switch(e.kind){case 262:return w.updateFunctionDeclaration(e,t,e.asteriskToken,e.name,e.typeParameters,e.parameters,e.type,e.body);case 263:const r=QS(e)?Ly(e):void 0;return w.updateClassDeclaration(e,So(r,t),e.name,e.typeParameters,e.heritageClauses,e.members);case 243:return w.updateVariableStatement(e,t,e.declarationList);case 267:return w.updateModuleDeclaration(e,t,e.name,e.body);case 266:return w.updateEnumDeclaration(e,t,e.name,e.members);case 265:return w.updateTypeAliasDeclaration(e,t,e.name,e.typeParameters,e.type);case 264:return w.updateInterfaceDeclaration(e,t,e.name,e.typeParameters,e.heritageClauses,e.members);case 271:return w.updateImportEqualsDeclaration(e,t,e.isTypeOnly,e.name,e.moduleReference);case 244:return N.fail();default:return N.assertNever(e,`Unexpected declaration kind ${e.kind}`)}}function YKe(e){return[e,...npe(e).map(iCe)]}function iCe(e){return w.createExpressionStatement(w.createBinaryExpression(w.createPropertyAccessExpression(w.createIdentifier("exports"),w.createIdentifier(e)),64,w.createIdentifier(e)))}function npe(e){switch(e.kind){case 262:case 263:return[e.name.text];case 243:return Hi(e.declarationList.declarations,t=>Ve(t.name)?t.name.text:void 0);case 267:case 266:case 265:case 264:case 271:return et;case 244:return N.fail("Can't export an ExpressionStatement");default:return N.assertNever(e,`Unexpected decl kind ${e.kind}`)}}function wO(e,t,r){switch(e.kind){case 272:{const i=e.importClause;if(!i)return;const o=i.name&&r(i.name)?i.name:void 0,s=i.namedBindings&&$Ke(i.namedBindings,r);return o||s?w.createImportDeclaration(void 0,w.createImportClause(i.isTypeOnly,o,s),cl(t),void 0):void 0}case 271:return r(e.name)?e:void 0;case 260:{const i=QKe(e.name,r);return i?tCe(i,e.type,Qde(t),e.parent.flags):void 0}default:return N.assertNever(e,`Unexpected import kind ${e.kind}`)}}function $Ke(e,t){if(e.kind===274)return t(e.name)?e:void 0;{const r=e.elements.filter(i=>t(i.name));return r.length?w.createNamedImports(r):void 0}}function QKe(e,t){switch(e.kind){case 80:return t(e)?e:void 0;case 207:return e;case 206:{const r=e.elements.filter(i=>i.propertyName||!Ve(i.name)||t(i.name));return r.length?w.createObjectBindingPattern(r):void 0}}}function rpe(e){return eu(e)?ii(e.expression.left.name,Ve):ii(e.name,Ve)}function DY(e){switch(e.kind){case 260:return e.parent.parent;case 208:return DY(aa(e.parent.parent,t=>wi(t)||Qa(t)));default:return e}}function ipe(e,t,r,i,o){if(!nCe(e,t,o,r))if(o)eu(t)||i.insertExportModifier(e,t);else{const s=npe(t);s.length!==0&&i.insertNodesAfter(e,t,s.map(iCe))}}function ope(e,t,r,i){const o=t.getTypeChecker();if(i){const s=Z5(e,i.all,o),l=ai(e.fileName),u=QC(e.fileName);return Qr(l,nXe(rXe(s.oldFileImportsFromTargetFile,s.movedSymbols),u,l,r))+u}return""}function ZKe(e){const{file:t}=e,r=d5(LI(e)),{statements:i}=t;let o=Gr(i,h=>h.end>r.pos);if(o===-1)return;const s=i[o],l=cCe(t,s);l&&(o=l.start);let u=Gr(i,h=>h.end>=r.end,o);u!==-1&&r.end<=i[u].getStart()&&u--;const p=cCe(t,i[u]);return p&&(u=p.end),{toMove:i.slice(o,u===-1?i.length:u+1),afterLast:u===-1?void 0:i[u+1]}}function OO(e){const t=ZKe(e);if(t===void 0)return;const r=[],i=[],{toMove:o,afterLast:s}=t;return cG(o,eXe,(l,u)=>{for(let p=l;p<u;p++)r.push(o[p]);i.push({first:o[l],afterLast:s})}),r.length===0?void 0:{all:r,ranges:i}}function ape(e){return An(e,t=>!!(t.transformFlags&2))}function eXe(e){return!tXe(e)&&!Im(e)}function tXe(e){switch(e.kind){case 272:return!0;case 271:return!Zr(e,32);case 243:return e.declarationList.declarations.every(t=>!!t.initializer&&Ad(t.initializer,!0));default:return!1}}function Z5(e,t,r,i=new Set){const o=new Set,s=new Map,l=new Set,u=m(ape(t));u&&s.set(u,!1);for(const b of t)lpe(b,A=>{o.add(N.checkDefined(eu(A)?r.getSymbolAtLocation(A.expression.left):A.symbol,"Need a symbol here"))});const p=new Set;for(const b of t)spe(b,r,(A,I)=>{if(A.declarations){if(i.has(bu(A,r))){p.add(A);return}for(const R of A.declarations)if(oCe(R)){const M=s.get(A);s.set(A,(M===void 0||M)&&I)}else ez(R)&&iXe(R)===e&&!o.has(A)&&l.add(A)}});for(const b of s.keys())p.add(b);const h=new Set;for(const b of e.statements)Nr(t,b)||(u&&b.transformFlags&2&&p.delete(u),spe(b,r,A=>{o.has(A)&&h.add(A),p.delete(A)}));return{movedSymbols:o,targetFileImportsFromOldFile:l,oldFileImportsFromTargetFile:h,oldImportsNeededByTargetFile:s,unusedImportsFromOldFile:p};function m(b){if(b===void 0)return;const A=r.getJsxNamespace(b),I=r.resolveName(A,b,1920,!0);return I&&bt(I.declarations,oCe)?I:void 0}}function nXe(e,t,r,i){let o=e;for(let s=1;;s++){const l=Qr(r,o+t);if(!i.fileExists(l))return o;o=`${e}.${s}`}}function rXe(e,t){return _h(e,_5)||_h(t,_5)||"newFile"}function spe(e,t,r){e.forEachChild(function i(o){if(Ve(o)&&!Bg(o)){const s=t.getSymbolAtLocation(o);s&&r(s,T0(o))}else o.forEachChild(i)})}function lpe(e,t){switch(e.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return t(e);case 243:return Ut(e.declarationList.declarations,r=>sCe(r.name,t));case 244:{const{expression:r}=e;return mr(r)&&Bl(r)===1?t(e):void 0}}}function oCe(e){switch(e.kind){case 271:case 276:case 273:case 274:return!0;case 260:return aCe(e);case 208:return wi(e.parent.parent)&&aCe(e.parent.parent);default:return!1}}function aCe(e){return $i(e.parent.parent.parent)&&!!e.initializer&&Ad(e.initializer,!0)}function ez(e){return lCe(e)&&$i(e.parent)||wi(e)&&$i(e.parent.parent.parent)}function iXe(e){return wi(e)?e.parent.parent.parent:e.parent}function sCe(e,t){switch(e.kind){case 80:return t(aa(e.parent,r=>wi(r)||Qa(r)));case 207:case 206:return Ut(e.elements,r=>jc(r)?void 0:sCe(r.name,t));default:return N.assertNever(e,`Unexpected name kind ${e.kind}`)}}function lCe(e){switch(e.kind){case 262:case 263:case 267:case 266:case 265:case 264:case 271:return!0;default:return!1}}function oXe(e,t,r,i,o){var s;const l=new Set,u=(s=i.symbol)==null?void 0:s.exports;if(u){const h=t.getTypeChecker(),m=new Map;for(const b of o.all)rCe(b)&&Zr(b,32)&&lpe(b,A=>{var I;const R=x_(A)?(I=u.get(A.symbol.escapedName))==null?void 0:I.declarations:void 0,M=Ut(R,C=>Yl(C)?C:Ku(C)?ii(C.parent.parent,Yl):void 0);M&&M.moduleSpecifier&&m.set(M,(m.get(M)||new Set).add(A))});for(const[b,A]of zo(m))if(b.exportClause&&Pf(b.exportClause)&&Me(b.exportClause.elements)){const I=b.exportClause.elements,R=nr(I,M=>An(bu(M.symbol,h).declarations,C=>ez(C)&&A.has(C))===void 0);if(Me(R)===0){e.deleteNode(i,b),l.add(b);continue}Me(R)<Me(I)&&e.replaceNode(i,b,w.updateExportDeclaration(b,b.modifiers,b.isTypeOnly,w.updateNamedExports(b.exportClause,w.createNodeArray(R,I.hasTrailingComma)),b.moduleSpecifier,b.attributes))}}const p=Oo(i.statements,h=>Yl(h)&&!!h.moduleSpecifier&&!l.has(h));p?e.insertNodesBefore(i,p,r,!0):e.insertNodesAfter(i,i.statements[i.statements.length-1],r)}function cCe(e,t){if(Bs(t)){const r=t.symbol.declarations;if(r===void 0||Me(r)<=1||!Nr(r,t))return;const i=r[0],o=r[Me(r)-1],s=Hi(r,p=>jn(p)===e&&qi(p)?p:void 0),l=Gr(e.statements,p=>p.end>=o.end),u=Gr(e.statements,p=>p.end>=i.end);return{toMove:s,start:u,end:l}}}function aXe(e,t,r){const i=new Set;for(const o of e.imports){const s=DC(o);if(kc(s)&&s.importClause&&s.importClause.namedBindings&&Hg(s.importClause.namedBindings))for(const l of s.importClause.namedBindings.elements){const u=r.getSymbolAtLocation(l.propertyName||l.name);u&&i.add(bu(u,r))}if(d3(s.parent)&&am(s.parent.name))for(const l of s.parent.name.elements){const u=r.getSymbolAtLocation(l.propertyName||l.name);u&&i.add(bu(u,r))}}for(const o of t)spe(o,r,s=>{const l=bu(s,r);l.valueDeclaration&&jn(l.valueDeclaration)===e&&i.add(l)});return i}var tz,NY,CY,sXe=T({"src/services/refactors/moveToFile.ts"(){mle(),si(),VNe(),tz="Move to file",NY=Wo(f.Move_to_file),CY={name:"Move to file",description:NY,kind:"refactor.move.file"},fg(tz,{kinds:[CY.kind],getAvailableActions:function(t,r){const i=OO(t);return r?t.preferences.allowTextChangesInNewFiles&&i?[{name:tz,description:NY,actions:[CY]}]:t.preferences.provideRefactorNotApplicableReason?[{name:tz,description:NY,actions:[{...CY,notApplicableReason:Wo(f.Selection_is_not_a_valid_statement_or_statements)}]}]:et:et},getEditsForAction:function(t,r,i){N.assert(r===tz,"Wrong refactor invoked");const o=N.checkDefined(OO(t)),{host:s,program:l}=t;N.assert(i,"No interactive refactor arguments available");const u=i.targetFile;return YE(u)||XA(u)?s.fileExists(u)&&l.getSourceFile(u)===void 0?ZNe(Wo(f.Cannot_move_statements_to_the_selected_file)):{edits:_r.ChangeTracker.with(t,h=>GKe(t,t.file,i.targetFile,t.program,o,h,t.host,t.preferences)),renameFilename:void 0,renameLocation:void 0}:ZNe(Wo(f.Cannot_move_to_file_selected_file_is_invalid))}})}});function lXe(e){const{file:t,startPosition:r,program:i}=e;return dCe(t,r,i)?[{name:PY,description:cpe,actions:[upe]}]:et}function cXe(e){const{file:t,startPosition:r,program:i}=e,o=dCe(t,r,i);if(!o)return;const s=i.getTypeChecker(),l=o[o.length-1];let u=l;switch(l.kind){case 173:{u=w.updateMethodSignature(l,l.modifiers,l.name,l.questionToken,l.typeParameters,h(o),l.type);break}case 174:{u=w.updateMethodDeclaration(l,l.modifiers,l.asteriskToken,l.name,l.questionToken,l.typeParameters,h(o),l.type,l.body);break}case 179:{u=w.updateCallSignature(l,l.typeParameters,h(o),l.type);break}case 176:{u=w.updateConstructorDeclaration(l,l.modifiers,h(o),l.body);break}case 180:{u=w.updateConstructSignature(l,l.typeParameters,h(o),l.type);break}case 262:{u=w.updateFunctionDeclaration(l,l.modifiers,l.asteriskToken,l.name,l.typeParameters,h(o),l.type,l.body);break}default:return N.failBadSyntaxKind(l,"Unhandled signature kind in overload list conversion refactoring")}if(u===l)return;return{renameFilename:void 0,renameLocation:void 0,edits:_r.ChangeTracker.with(e,A=>{A.replaceNodeRange(t,o[0],o[o.length-1],u)})};function h(A){const I=A[A.length-1];return Bs(I)&&I.body&&(A=A.slice(0,A.length-1)),w.createNodeArray([w.createParameterDeclaration(void 0,w.createToken(26),"args",void 0,w.createUnionTypeNode(wt(A,m)))])}function m(A){const I=wt(A.parameters,b);return pr(w.createTupleTypeNode(I),bt(I,R=>!!Me(jR(R)))?0:1)}function b(A){N.assert(Ve(A.name));const I=dt(w.createNamedTupleMember(A.dotDotDotToken,A.name,A.questionToken,A.type||w.createKeywordTypeNode(133)),A),R=A.symbol&&A.symbol.getDocumentationComment(s);if(R){const M=jO(R);M.length&&I0(I,[{text:`*
+${M.split(`
+`).map(C=>` * ${C}`).join(`
+`)}
+ `,kind:3,pos:-1,end:-1,hasTrailingNewLine:!0,hasLeadingNewline:!0}])}return I}}function uCe(e){switch(e.kind){case 173:case 174:case 179:case 176:case 180:case 262:return!0}return!1}function dCe(e,t,r){const i=po(e,t),o=Gn(i,uCe);if(!o||Bs(o)&&o.body&&sO(o.body,t))return;const s=r.getTypeChecker(),l=o.symbol;if(!l)return;const u=l.declarations;if(Me(u)<=1||!Zn(u,A=>jn(A)===e)||!uCe(u[0]))return;const p=u[0].kind;if(!Zn(u,A=>A.kind===p))return;const h=u;if(bt(h,A=>!!A.typeParameters||bt(A.parameters,I=>!!I.modifiers||!Ve(I.name))))return;const m=Hi(h,A=>s.getSignatureFromDeclaration(A));if(Me(m)!==Me(u))return;const b=s.getReturnTypeOfSignature(m[0]);if(Zn(m,A=>s.getReturnTypeOfSignature(A)===b))return h}var PY,cpe,upe,uXe=T({"src/services/refactors/convertOverloadListToSingleSignature.ts"(){si(),Dh(),PY="Convert overload list to single signature",cpe=Wo(f.Convert_overload_list_to_single_signature),upe={name:PY,description:cpe,kind:"refactor.rewrite.function.overloadList"},fg(PY,{kinds:[upe.kind],getEditsForAction:cXe,getAvailableActions:lXe})}});function dXe(e){const{file:t,startPosition:r,triggerReason:i}=e,o=pCe(t,r,i==="invoked");return o?Xg(o)?e.preferences.provideRefactorNotApplicableReason?[{name:MY,description:dpe,actions:[{...nz,notApplicableReason:o.error},{...WO,notApplicableReason:o.error}]}]:et:[{name:MY,description:dpe,actions:[o.addBraces?nz:WO]}]:et}function pXe(e,t){const{file:r,startPosition:i}=e,o=pCe(r,i);N.assert(o&&!Xg(o),"Expected applicable refactor info");const{expression:s,returnStatement:l,func:u}=o;let p;if(t===nz.name){const m=w.createReturnStatement(s);p=w.createBlock([m],!0),PD(s,m,r,3,!0)}else if(t===WO.name&&l){const m=s||w.createVoidZero();p=S5(m)?w.createParenthesizedExpression(m):m,SO(l,p,r,3,!1),PD(l,p,r,3,!1),d2(l,p,r,3,!1)}else N.fail("invalid action");return{renameFilename:void 0,renameLocation:void 0,edits:_r.ChangeTracker.with(e,m=>{m.replaceNode(r,u.body,p)})}}function pCe(e,t,r=!0,i){const o=po(e,t),s=Gp(o);if(!s)return{error:Wo(f.Could_not_find_a_containing_arrow_function)};if(!Gs(s))return{error:Wo(f.Containing_function_is_not_an_arrow_function)};if(!(!cf(s,o)||cf(s.body,o)&&!r)){if(z0(nz.kind,i)&&yt(s.body))return{func:s,addBraces:!0,expression:s.body};if(z0(WO.kind,i)&&Xo(s.body)&&s.body.statements.length===1){const l=Ha(s.body.statements);if(Dm(l)){const u=l.expression&&Oa(wR(l.expression,!1))?w.createParenthesizedExpression(l.expression):l.expression;return{func:s,addBraces:!1,expression:u,returnStatement:l}}}}}var MY,dpe,nz,WO,fXe=T({"src/services/refactors/addOrRemoveBracesToArrowFunction.ts"(){si(),Dh(),MY="Add or remove braces in an arrow function",dpe=Wo(f.Add_or_remove_braces_in_an_arrow_function),nz={name:"Add braces to arrow function",description:Wo(f.Add_braces_to_arrow_function),kind:"refactor.rewrite.arrow.braces.add"},WO={name:"Remove braces from arrow function",description:Wo(f.Remove_braces_from_arrow_function),kind:"refactor.rewrite.arrow.braces.remove"},fg(MY,{kinds:[WO.kind],getEditsForAction:pXe,getAvailableActions:dXe})}}),mXe={},_Xe=T({"src/services/_namespaces/ts.refactor.addOrRemoveBracesToArrowFunction.ts"(){uXe(),fXe()}});function hXe(e){const{file:t,startPosition:r,program:i,kind:o}=e,s=mCe(t,r,i);if(!s)return et;const{selectedVariableDeclaration:l,func:u}=s,p=[],h=[];if(z0(zO.kind,o)){const m=l||Gs(u)&&wi(u.parent)?void 0:Wo(f.Could_not_convert_to_named_function);m?h.push({...zO,notApplicableReason:m}):p.push(zO)}if(z0(FO.kind,o)){const m=!l&&Gs(u)?void 0:Wo(f.Could_not_convert_to_anonymous_function);m?h.push({...FO,notApplicableReason:m}):p.push(FO)}if(z0(BO.kind,o)){const m=Os(u)?void 0:Wo(f.Could_not_convert_to_arrow_function);m?h.push({...BO,notApplicableReason:m}):p.push(BO)}return[{name:ppe,description:gCe,actions:p.length===0&&e.preferences.provideRefactorNotApplicableReason?h:p}]}function gXe(e,t){const{file:r,startPosition:i,program:o}=e,s=mCe(r,i,o);if(!s)return;const{func:l}=s,u=[];switch(t){case FO.name:u.push(...EXe(e,l));break;case zO.name:const p=bXe(l);if(!p)return;u.push(...SXe(e,l,p));break;case BO.name:if(!Os(l))return;u.push(...TXe(e,l));break;default:return N.fail("invalid action")}return{renameFilename:void 0,renameLocation:void 0,edits:u}}function fCe(e){let t=!1;return e.forEachChild(function r(i){if(ID(i)){t=!0;return}!ui(i)&&!Ac(i)&&!Os(i)&&Ho(i,r)}),t}function mCe(e,t,r){const i=po(e,t),o=r.getTypeChecker(),s=yXe(e,o,i.parent);if(s&&!fCe(s.body)&&!o.containsArgumentsReference(s))return{selectedVariableDeclaration:!0,func:s};const l=Gp(i);if(l&&(Os(l)||Gs(l))&&!cf(l.body,i)&&!fCe(l.body)&&!o.containsArgumentsReference(l))return Os(l)&&hCe(e,o,l)?void 0:{selectedVariableDeclaration:!1,func:l}}function vXe(e){return wi(e)||Uc(e)&&e.declarations.length===1}function yXe(e,t,r){if(!vXe(r))return;const o=(wi(r)?r:Ha(r.declarations)).initializer;if(o&&(Gs(o)||Os(o)&&!hCe(e,t,o)))return o}function _Ce(e){if(yt(e)){const t=w.createReturnStatement(e),r=e.getSourceFile();return dt(t,e),Ap(t),SO(e,t,r,void 0,!0),w.createBlock([t],!0)}else return e}function bXe(e){const t=e.parent;if(!wi(t)||!TC(t))return;const r=t.parent,i=r.parent;if(!(!Uc(r)||!Ll(i)||!Ve(t.name)))return{variableDeclaration:t,variableDeclarationList:r,statement:i,name:t.name}}function EXe(e,t){const{file:r}=e,i=_Ce(t.body),o=w.createFunctionExpression(t.modifiers,t.asteriskToken,void 0,t.typeParameters,t.parameters,t.type,i);return _r.ChangeTracker.with(e,s=>s.replaceNode(r,t,o))}function SXe(e,t,r){const{file:i}=e,o=_Ce(t.body),{variableDeclaration:s,variableDeclarationList:l,statement:u,name:p}=r;LX(u);const h=c0(s)&32|pd(t),m=w.createModifiersFromModifierFlags(h),b=w.createFunctionDeclaration(Me(m)?m:void 0,t.asteriskToken,p,t.typeParameters,t.parameters,t.type,o);return l.declarations.length===1?_r.ChangeTracker.with(e,A=>A.replaceNode(i,u,b)):_r.ChangeTracker.with(e,A=>{A.delete(i,s),A.insertNodeAfter(i,u,b)})}function TXe(e,t){const{file:r}=e,o=t.body.statements[0];let s;AXe(t.body,o)?(s=o.expression,Ap(s),lT(o,s)):s=t.body;const l=w.createArrowFunction(t.modifiers,t.typeParameters,t.parameters,t.type,w.createToken(39),s);return _r.ChangeTracker.with(e,u=>u.replaceNode(r,t,l))}function AXe(e,t){return e.statements.length===1&&Dm(t)&&!!t.expression}function hCe(e,t,r){return!!r.name&&Ws.Core.isSymbolReferencedInFile(r.name,t,e)}var ppe,gCe,FO,zO,BO,IXe=T({"src/services/refactors/convertArrowFunctionOrFunctionExpression.ts"(){si(),Dh(),ppe="Convert arrow function or function expression",gCe=Wo(f.Convert_arrow_function_or_function_expression),FO={name:"Convert to anonymous function",description:Wo(f.Convert_to_anonymous_function),kind:"refactor.rewrite.function.anonymous"},zO={name:"Convert to named function",description:Wo(f.Convert_to_named_function),kind:"refactor.rewrite.function.named"},BO={name:"Convert to arrow function",description:Wo(f.Convert_to_arrow_function),kind:"refactor.rewrite.function.arrow"},fg(ppe,{kinds:[FO.kind,zO.kind,BO.kind],getEditsForAction:gXe,getAvailableActions:hXe})}}),xXe={},RXe=T({"src/services/_namespaces/ts.refactor.convertArrowFunctionOrFunctionExpression.ts"(){IXe()}});function DXe(e){const{file:t,startPosition:r}=e;return dd(t)||!bCe(t,r,e.program.getTypeChecker())?et:[{name:iz,description:hpe,actions:[gpe]}]}function NXe(e,t){N.assert(t===iz,"Unexpected action name");const{file:r,startPosition:i,program:o,cancellationToken:s,host:l}=e,u=bCe(r,i,o.getTypeChecker());if(!u||!s)return;const p=PXe(u,o,s);return p.valid?{renameFilename:void 0,renameLocation:void 0,edits:_r.ChangeTracker.with(e,m=>CXe(r,o,l,m,u,p))}:{edits:[]}}function CXe(e,t,r,i,o,s){const l=s.signature,u=wt(ACe(o,t,r),m=>cl(m));if(l){const m=wt(ACe(l,t,r),b=>cl(b));h(l,m)}h(o,u);const p=KN(s.functionCalls,(m,b)=>rl(m.pos,b.pos));for(const m of p)if(m.arguments&&m.arguments.length){const b=cl(GXe(o,m.arguments),!0);i.replaceNodeRange(jn(m),Ha(m.arguments),Ya(m.arguments),b,{leadingTriviaOption:_r.LeadingTriviaOption.IncludeAll,trailingTriviaOption:_r.TrailingTriviaOption.Include})}function h(m,b){i.replaceNodeRangeWithNodes(e,Ha(m.parameters),Ya(m.parameters),b,{joiner:", ",indentation:0,leadingTriviaOption:_r.LeadingTriviaOption.IncludeAll,trailingTriviaOption:_r.TrailingTriviaOption.Include})}}function PXe(e,t,r){const i=jXe(e),o=Ml(e)?VXe(e):[],s=DE([...i,...o],Mv),l=t.getTypeChecker(),u=Pi(s,b=>Ws.getReferenceEntriesForNode(-1,b,t,t.getSourceFiles(),r)),p=h(u);return Zn(p.declarations,b=>Nr(s,b))||(p.valid=!1),p;function h(b){const A={accessExpressions:[],typeUsages:[]},I={functionCalls:[],declarations:[],classReferences:A,valid:!0},R=wt(i,m),M=wt(o,m),C=Ml(e),O=wt(i,U=>fpe(U,l));for(const U of b){if(U.kind===Ws.EntryKind.Span){I.valid=!1;continue}if(Nr(O,m(U.node))){if(wXe(U.node.parent)){I.signature=U.node.parent;continue}const Z=yCe(U);if(Z){I.functionCalls.push(Z);continue}}const K=fpe(U.node,l);if(K&&Nr(O,K)){const Z=mpe(U);if(Z){I.declarations.push(Z);continue}}if(Nr(R,m(U.node))||r2(U.node)){if(vCe(U))continue;const V=mpe(U);if(V){I.declarations.push(V);continue}const se=yCe(U);if(se){I.functionCalls.push(se);continue}}if(C&&Nr(M,m(U.node))){if(vCe(U))continue;const V=mpe(U);if(V){I.declarations.push(V);continue}const se=MXe(U);if(se){A.accessExpressions.push(se);continue}if(Ic(e.parent)){const G=LXe(U);if(G){A.typeUsages.push(G);continue}}}I.valid=!1}return I}function m(b){const A=l.getSymbolAtLocation(b);return A&&PX(A,l)}}function fpe(e,t){const r=UO(e);if(r){const i=t.getContextualTypeForObjectLiteralElement(r),o=i==null?void 0:i.getSymbol();if(o&&!(xl(o)&6))return o}}function vCe(e){const t=e.node;if(np(t.parent)||Sh(t.parent)||tu(t.parent)||nb(t.parent)||Ku(t.parent)||kl(t.parent))return t}function mpe(e){if(Ju(e.node.parent))return e.node}function yCe(e){if(e.node.parent){const t=e.node,r=t.parent;switch(r.kind){case 213:case 214:const i=ii(r,I_);if(i&&i.expression===t)return i;break;case 211:const o=ii(r,Fr);if(o&&o.parent&&o.name===t){const l=ii(o.parent,I_);if(l&&l.expression===o)return l}break;case 212:const s=ii(r,Qs);if(s&&s.parent&&s.argumentExpression===t){const l=ii(s.parent,I_);if(l&&l.expression===s)return l}break}}}function MXe(e){if(e.node.parent){const t=e.node,r=t.parent;switch(r.kind){case 211:const i=ii(r,Fr);if(i&&i.expression===t)return i;break;case 212:const o=ii(r,Qs);if(o&&o.expression===t)return o;break}}}function LXe(e){const t=e.node;if(oT(t)===2||M3(t.parent))return t}function bCe(e,t,r){const i=xD(e,t),o=kie(i);if(!kXe(i)&&o&&OXe(o,r)&&cf(o,i)&&!(o.body&&cf(o.body,i)))return o}function kXe(e){const t=Gn(e,rR);if(t){const r=Gn(t,i=>!rR(i));return!!r&&Bs(r)}return!1}function wXe(e){return bh(e)&&(hd(e.parent)||Ep(e.parent))}function OXe(e,t){var r;if(!WXe(e.parameters,t))return!1;switch(e.kind){case 262:return ECe(e)&&rz(e,t);case 174:if(Oa(e.parent)){const i=fpe(e.name,t);return((r=i==null?void 0:i.declarations)==null?void 0:r.length)===1&&rz(e,t)}return rz(e,t);case 176:return Ic(e.parent)?ECe(e.parent)&&rz(e,t):SCe(e.parent.parent)&&rz(e,t);case 218:case 219:return SCe(e.parent)}return!1}function rz(e,t){return!!e.body&&!t.isImplementationOfOverload(e)}function ECe(e){return e.name?!0:!!DD(e,90)}function WXe(e,t){return zXe(e)>=ICe&&Zn(e,r=>FXe(r,t))}function FXe(e,t){if(Zh(e)){const r=t.getTypeAtLocation(e);if(!t.isArrayType(r)&&!t.isTupleType(r))return!1}return!e.modifiers&&Ve(e.name)}function SCe(e){return wi(e)&&uR(e)&&Ve(e.name)&&!e.type}function _pe(e){return e.length>0&&ID(e[0].name)}function zXe(e){return _pe(e)?e.length-1:e.length}function TCe(e){return _pe(e)&&(e=w.createNodeArray(e.slice(1),e.hasTrailingComma)),e}function BXe(e,t){return Ve(t)&&em(t)===e?w.createShorthandPropertyAssignment(e):w.createPropertyAssignment(e,t)}function GXe(e,t){const r=TCe(e.parameters),i=Zh(Ya(r)),o=i?t.slice(0,r.length-1):t,s=wt(o,(u,p)=>{const h=LY(r[p]),m=BXe(h,u);return Ap(m.name),hc(m)&&Ap(m.initializer),lT(u,m),m});if(i&&t.length>=r.length){const u=t.slice(r.length-1),p=w.createPropertyAssignment(LY(Ya(r)),w.createArrayLiteralExpression(u));s.push(p)}return w.createObjectLiteralExpression(s,!1)}function ACe(e,t,r){const i=t.getTypeChecker(),o=TCe(e.parameters),s=wt(o,m),l=w.createObjectBindingPattern(s),u=b(o);let p;Zn(o,R)&&(p=w.createObjectLiteralExpression());const h=w.createParameterDeclaration(void 0,void 0,l,void 0,u,p);if(_pe(e.parameters)){const M=e.parameters[0],C=w.createParameterDeclaration(void 0,void 0,M.name,void 0,M.type);return Ap(C.name),lT(M.name,C.name),M.type&&(Ap(C.type),lT(M.type,C.type)),w.createNodeArray([C,h])}return w.createNodeArray([h]);function m(M){const C=w.createBindingElement(void 0,void 0,LY(M),Zh(M)&&R(M)?w.createArrayLiteralExpression():M.initializer);return Ap(C),M.initializer&&C.initializer&&lT(M.initializer,C.initializer),C}function b(M){const C=wt(M,A);return k_(w.createTypeLiteralNode(C),1)}function A(M){let C=M.type;!C&&(M.initializer||Zh(M))&&(C=I(M));const O=w.createPropertySignature(void 0,LY(M),R(M)?w.createToken(58):M.questionToken,C);return Ap(O),lT(M.name,O.name),M.type&&O.type&&lT(M.type,O.type),O}function I(M){const C=i.getTypeAtLocation(M);return f2(C,M,t,r)}function R(M){if(Zh(M)){const C=i.getTypeAtLocation(M);return!i.isTupleType(C)}return i.isOptionalParameter(M)}}function LY(e){return em(e.name)}function VXe(e){switch(e.parent.kind){case 263:const t=e.parent;return t.name?[t.name]:[N.checkDefined(DD(t,90),"Nameless class declaration should be a default export")];case 231:const i=e.parent,o=e.parent.parent,s=i.name;return s?[s,o.name]:[o.name]}}function jXe(e){switch(e.kind){case 262:return e.name?[e.name]:[N.checkDefined(DD(e,90),"Nameless function declaration should be a default export")];case 174:return[e.name];case 176:const r=N.checkDefined(vs(e,137,e.getSourceFile()),"Constructor declaration should have constructor keyword");return e.parent.kind===231?[e.parent.parent.name,r]:[r];case 219:return[e.parent.name];case 218:return e.name?[e.name,e.parent.name]:[e.parent.name];default:return N.assertNever(e,`Unexpected function declaration kind ${e.kind}`)}}var iz,ICe,hpe,gpe,UXe=T({"src/services/refactors/convertParamsToDestructuredObject.ts"(){si(),Dh(),iz="Convert parameters to destructured object",ICe=1,hpe=Wo(f.Convert_parameters_to_destructured_object),gpe={name:iz,description:hpe,kind:"refactor.rewrite.parameters.toDestructured"},fg(iz,{kinds:[gpe.kind],getEditsForAction:NXe,getAvailableActions:DXe})}}),HXe={},qXe=T({"src/services/_namespaces/ts.refactor.convertParamsToDestructuredObject.ts"(){UXe()}});function JXe(e){const{file:t,startPosition:r}=e,i=xCe(t,r),o=vpe(i),s=Ma(o),l={name:kY,description:wY,actions:[]};return s&&e.triggerReason!=="invoked"?et:ng(o)&&(s||mr(o)&&ype(o).isValidConcatenation)?(l.actions.push(OY),[l]):e.preferences.provideRefactorNotApplicableReason?(l.actions.push({...OY,notApplicableReason:Wo(f.Can_only_convert_string_concatenations_and_string_literals)}),[l]):et}function xCe(e,t){const r=po(e,t),i=vpe(r);return!ype(i).isValidConcatenation&&Gd(i.parent)&&mr(i.parent.parent)?i.parent.parent:r}function KXe(e,t){const{file:r,startPosition:i}=e,o=xCe(r,i);switch(t){case wY:return{edits:XXe(e,o)};default:return N.fail("invalid action")}}function XXe(e,t){const r=vpe(t),i=e.file,o=QXe(ype(r),i),s=a0(i.text,r.end);if(s){const l=s[s.length-1],u={pos:s[0].pos,end:l.end};return _r.ChangeTracker.with(e,p=>{p.deleteRange(i,u),p.replaceNode(i,r,o)})}else return _r.ChangeTracker.with(e,l=>l.replaceNode(i,r,o))}function YXe(e){return!(e.operatorToken.kind===64||e.operatorToken.kind===65)}function vpe(e){return Gn(e.parent,r=>{switch(r.kind){case 211:case 212:return!1;case 228:case 226:return!(mr(r.parent)&&YXe(r.parent));default:return"quit"}})||e}function ype(e){const t=l=>{if(!mr(l))return{nodes:[l],operators:[],validOperators:!0,hasString:Ma(l)||rI(l)};const{nodes:u,operators:p,hasString:h,validOperators:m}=t(l.left);if(!(h||Ma(l.right)||rF(l.right)))return{nodes:[l],operators:[],hasString:!1,validOperators:!0};const b=l.operatorToken.kind===40,A=m&&b;return u.push(l.right),p.push(l.operatorToken),{nodes:u,operators:p,hasString:!0,validOperators:A}},{nodes:r,operators:i,validOperators:o,hasString:s}=t(e);return{nodes:r,operators:i,isValidConcatenation:o&&s}}function $Xe(e){return e.replace(/\\.|[$`]/g,t=>t[0]==="\\"?t:"\\"+t)}function RCe(e){const t=iI(e)||xH(e)?-2:-1;return fc(e).slice(1,t)}function DCe(e,t){const r=[];let i="",o="";for(;e<t.length;){const s=t[e];if(ls(s))i+=s.text,o+=$Xe(fc(s).slice(1,-1)),r.push(e),e++;else if(rF(s)){i+=s.head.text,o+=RCe(s.head);break}else break}return[e,i,o,r]}function QXe({nodes:e,operators:t},r){const i=CCe(t,r),o=PCe(e,r,i),[s,l,u,p]=DCe(0,e);if(s===e.length){const b=w.createNoSubstitutionTemplateLiteral(l,u);return o(p,b),b}const h=[],m=w.createTemplateHead(l,u);o(p,m);for(let b=s;b<e.length;b++){const A=ZXe(e[b]);i(b,A);const[I,R,M,C]=DCe(b+1,e);b=I-1;const O=b===e.length-1;if(rF(A)){const U=wt(A.templateSpans,(K,Z)=>{NCe(K);const V=Z===A.templateSpans.length-1,se=K.literal.text+(V?R:""),G=RCe(K.literal)+(V?M:"");return w.createTemplateSpan(K.expression,O&&V?w.createTemplateTail(se,G):w.createTemplateMiddle(se,G))});h.push(...U)}else{const U=O?w.createTemplateTail(R,M):w.createTemplateMiddle(R,M);o(C,U),h.push(w.createTemplateSpan(A,U))}}return w.createTemplateExpression(m,h)}function NCe(e){const t=e.getSourceFile();d2(e,e.expression,t,3,!1),SO(e.expression,e.expression,t,3,!1)}function ZXe(e){return Gd(e)&&(NCe(e),e=e.expression),e}var kY,wY,OY,CCe,PCe,eYe=T({"src/services/refactors/convertStringOrTemplateLiteral.ts"(){si(),Dh(),kY="Convert to template string",wY=Wo(f.Convert_to_template_string),OY={name:kY,description:wY,kind:"refactor.rewrite.string"},fg(kY,{kinds:[OY.kind],getEditsForAction:KXe,getAvailableActions:JXe}),CCe=(e,t)=>(r,i)=>{r<e.length&&d2(e[r],i,t,3,!1)},PCe=(e,t,r)=>(i,o)=>{for(;i.length>0;){const s=i.shift();d2(e[s],o,t,3,!1),r(s,o)}}}}),tYe={},nYe=T({"src/services/_namespaces/ts.refactor.convertStringOrTemplateLiteral.ts"(){eYe()}});function rYe(e){const t=MCe(e,e.triggerReason==="invoked");return t?Xg(t)?e.preferences.provideRefactorNotApplicableReason?[{name:oz,description:zY,actions:[{...BY,notApplicableReason:t.error}]}]:et:[{name:oz,description:zY,actions:[BY]}]:et}function iYe(e,t){const r=MCe(e);return N.assert(r&&!Xg(r),"Expected applicable refactor info"),{edits:_r.ChangeTracker.with(e,o=>pYe(e.file,e.program.getTypeChecker(),o,r)),renameFilename:void 0,renameLocation:void 0}}function WY(e){return mr(e)||XR(e)}function oYe(e){return eu(e)||Dm(e)||Ll(e)}function FY(e){return WY(e)||oYe(e)}function MCe(e,t=!0){const{file:r,program:i}=e,o=LI(e),s=o.length===0;if(s&&!t)return;const l=po(r,o.start),u=a5(r,o.start+o.length),p=pc(l.pos,u&&u.end>=l.pos?u.getEnd():l.getEnd()),h=s?uYe(l):cYe(l,p),m=h&&FY(h)?dYe(h):void 0;if(!m)return{error:Wo(f.Could_not_find_convertible_access_expression)};const b=i.getTypeChecker();return XR(m)?aYe(m,b):sYe(m)}function aYe(e,t){const r=e.condition,i=Epe(e.whenTrue);if(!i||t.isNullableType(t.getTypeAtLocation(i)))return{error:Wo(f.Could_not_find_convertible_access_expression)};if((Fr(r)||Ve(r))&&bpe(r,i.expression))return{finalExpression:i,occurrences:[r],expression:e};if(mr(r)){const o=LCe(i.expression,r);return o?{finalExpression:i,occurrences:o,expression:e}:{error:Wo(f.Could_not_find_matching_access_expressions)}}}function sYe(e){if(e.operatorToken.kind!==56)return{error:Wo(f.Can_only_convert_logical_AND_access_chains)};const t=Epe(e.right);if(!t)return{error:Wo(f.Could_not_find_convertible_access_expression)};const r=LCe(t.expression,e.left);return r?{finalExpression:t,occurrences:r,expression:e}:{error:Wo(f.Could_not_find_matching_access_expressions)}}function LCe(e,t){const r=[];for(;mr(t)&&t.operatorToken.kind===56;){const o=bpe(hs(e),hs(t.right));if(!o)break;r.push(o),e=o,t=t.left}const i=bpe(e,t);return i&&r.push(i),r.length>0?r:void 0}function bpe(e,t){if(!(!Ve(t)&&!Fr(t)&&!Qs(t)))return lYe(e,t)?t:void 0}function lYe(e,t){for(;(la(e)||Fr(e)||Qs(e))&&GO(e)!==GO(t);)e=e.expression;for(;Fr(e)&&Fr(t)||Qs(e)&&Qs(t);){if(GO(e)!==GO(t))return!1;e=e.expression,t=t.expression}return Ve(e)&&Ve(t)&&e.getText()===t.getText()}function GO(e){if(Ve(e)||nf(e))return e.getText();if(Fr(e))return GO(e.name);if(Qs(e))return GO(e.argumentExpression)}function cYe(e,t){for(;e.parent;){if(FY(e)&&t.length!==0&&e.end>=t.start+t.length)return e;e=e.parent}}function uYe(e){for(;e.parent;){if(FY(e)&&!FY(e.parent))return e;e=e.parent}}function dYe(e){if(WY(e))return e;if(Ll(e)){const t=zA(e),r=t==null?void 0:t.initializer;return r&&WY(r)?r:void 0}return e.expression&&WY(e.expression)?e.expression:void 0}function Epe(e){if(e=hs(e),mr(e))return Epe(e.left);if((Fr(e)||Qs(e)||la(e))&&!qu(e))return e}function kCe(e,t,r){if(Fr(t)||Qs(t)||la(t)){const i=kCe(e,t.expression,r),o=r.length>0?r[r.length-1]:void 0,s=(o==null?void 0:o.getText())===t.expression.getText();if(s&&r.pop(),la(t))return s?w.createCallChain(i,w.createToken(29),t.typeArguments,t.arguments):w.createCallChain(i,t.questionDotToken,t.typeArguments,t.arguments);if(Fr(t))return s?w.createPropertyAccessChain(i,w.createToken(29),t.name):w.createPropertyAccessChain(i,t.questionDotToken,t.name);if(Qs(t))return s?w.createElementAccessChain(i,w.createToken(29),t.argumentExpression):w.createElementAccessChain(i,t.questionDotToken,t.argumentExpression)}return t}function pYe(e,t,r,i,o){const{finalExpression:s,occurrences:l,expression:u}=i,p=l[l.length-1],h=kCe(t,s,l);h&&(Fr(h)||Qs(h)||la(h))&&(mr(u)?r.replaceNodeRange(e,p,s,h):XR(u)&&r.replaceNode(e,u,w.createBinaryExpression(h,w.createToken(61),u.whenFalse)))}var oz,zY,BY,fYe=T({"src/services/refactors/convertToOptionalChainExpression.ts"(){si(),Dh(),oz="Convert to optional chain expression",zY=Wo(f.Convert_to_optional_chain_expression),BY={name:oz,description:zY,kind:"refactor.rewrite.expression.optionalChain"},fg(oz,{kinds:[BY.kind],getEditsForAction:iYe,getAvailableActions:rYe})}}),mYe={},_Ye=T({"src/services/_namespaces/ts.refactor.convertToOptionalChainExpression.ts"(){fYe()}});function wCe(e){const t=e.kind,r=Spe(e.file,LI(e),e.triggerReason==="invoked"),i=r.targetRange;if(i===void 0){if(!r.errors||r.errors.length===0||!e.preferences.provideRefactorNotApplicableReason)return et;const R=[];return z0(WD.kind,t)&&R.push({name:wD,description:WD.description,actions:[{...WD,notApplicableReason:I(r.errors)}]}),z0(OD.kind,t)&&R.push({name:wD,description:OD.description,actions:[{...OD,notApplicableReason:I(r.errors)}]}),R}const o=EYe(i,e);if(o===void 0)return et;const s=[],l=new Map;let u;const p=[],h=new Map;let m,b=0;for(const{functionExtraction:R,constantExtraction:M}of o){if(z0(WD.kind,t)){const C=R.description;R.errors.length===0?l.has(C)||(l.set(C,!0),s.push({description:C,name:`function_scope_${b}`,kind:WD.kind})):u||(u={description:C,name:`function_scope_${b}`,notApplicableReason:I(R.errors),kind:WD.kind})}if(z0(OD.kind,t)){const C=M.description;M.errors.length===0?h.has(C)||(h.set(C,!0),p.push({description:C,name:`constant_scope_${b}`,kind:OD.kind})):m||(m={description:C,name:`constant_scope_${b}`,notApplicableReason:I(M.errors),kind:OD.kind})}b++}const A=[];return s.length?A.push({name:wD,description:Wo(f.Extract_function),actions:s}):e.preferences.provideRefactorNotApplicableReason&&u&&A.push({name:wD,description:Wo(f.Extract_function),actions:[u]}),p.length?A.push({name:wD,description:Wo(f.Extract_constant),actions:p}):e.preferences.provideRefactorNotApplicableReason&&m&&A.push({name:wD,description:Wo(f.Extract_constant),actions:[m]}),A.length?A:et;function I(R){let M=R[0].messageText;return typeof M!="string"&&(M=M.messageText),M}}function OCe(e,t){const i=Spe(e.file,LI(e)).targetRange,o=/^function_scope_(\d+)$/.exec(t);if(o){const l=+o[1];return N.assert(isFinite(l),"Expected to parse a finite number from the function scope index"),yYe(i,e,l)}const s=/^constant_scope_(\d+)$/.exec(t);if(s){const l=+s[1];return N.assert(isFinite(l),"Expected to parse a finite number from the constant scope index"),bYe(i,e,l)}N.fail("Unrecognized action name")}function Spe(e,t,r=!0){const{length:i}=t;if(i===0&&!r)return{errors:[Qc(e,t.start,i,Tu.cannotExtractEmpty)]};const o=i===0&&r,s=Cue(e,t.start),l=a5(e,Kl(t)),u=s&&l&&r?hYe(s,l,e):t,p=o?GYe(s):vO(s,e,u),h=o?p:vO(l,e,u);let m=0,b;if(!p||!h)return{errors:[Qc(e,t.start,i,Tu.cannotExtractRange)]};if(p.flags&16777216)return{errors:[Qc(e,t.start,i,Tu.cannotExtractJSDoc)]};if(p.parent!==h.parent)return{errors:[Qc(e,t.start,i,Tu.cannotExtractRange)]};if(p!==h){if(!FCe(p.parent))return{errors:[Qc(e,t.start,i,Tu.cannotExtractRange)]};const U=[];for(const K of p.parent.statements){if(K===p||U.length){const Z=O(K);if(Z)return{errors:Z};U.push(K)}if(K===h)break}return U.length?{targetRange:{range:U,facts:m,thisNode:b}}:{errors:[Qc(e,t.start,i,Tu.cannotExtractRange)]}}if(Dm(p)&&!p.expression)return{errors:[Qc(e,t.start,i,Tu.cannotExtractRange)]};const A=R(p),I=M(A)||O(A);if(I)return{errors:I};return{targetRange:{range:gYe(A),facts:m,thisNode:b}};function R(U){if(Dm(U)){if(U.expression)return U.expression}else if(Ll(U)||Uc(U)){const K=Ll(U)?U.declarationList.declarations:U.declarations;let Z=0,V;for(const se of K)se.initializer&&(Z++,V=se.initializer);if(Z===1)return V}else if(wi(U)&&U.initializer)return U.initializer;return U}function M(U){if(Ve(eu(U)?U.expression:U))return[wr(U,Tu.cannotExtractIdentifier)]}function C(U,K){let Z=U;for(;Z!==K;){if(Z.kind===172){sa(Z)&&(m|=32);break}else if(Z.kind===169){Gp(Z).kind===176&&(m|=32);break}else Z.kind===174&&sa(Z)&&(m|=32);Z=Z.parent}}function O(U){let K;if((he=>{he[he.None=0]="None",he[he.Break=1]="Break",he[he.Continue=2]="Continue",he[he.Return=4]="Return"})(K||(K={})),N.assert(U.pos<=U.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (1)"),N.assert(!Zm(U.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809 (2)"),!qi(U)&&!(ng(U)&&WCe(U))&&!Rpe(U))return[wr(U,Tu.statementOrExpressionExpected)];if(U.flags&33554432)return[wr(U,Tu.cannotExtractAmbientBlock)];const Z=su(U);Z&&C(U,Z);let V,se=4,G;if(ne(U),m&8){const he=Fd(U,!1,!1);(he.kind===262||he.kind===174&&he.parent.kind===210||he.kind===218)&&(m|=16)}return V;function ne(he){if(V)return!0;if(Ju(he)){const $=he.kind===260?he.parent.parent:he;if(Zr($,32))return(V||(V=[])).push(wr(he,Tu.cannotExtractExportedEntity)),!0}switch(he.kind){case 272:return(V||(V=[])).push(wr(he,Tu.cannotExtractImport)),!0;case 277:return(V||(V=[])).push(wr(he,Tu.cannotExtractExportedEntity)),!0;case 108:if(he.parent.kind===213){const $=su(he);if($===void 0||$.pos<t.start||$.end>=t.start+t.length)return(V||(V=[])).push(wr(he,Tu.cannotExtractSuper)),!0}else m|=8,b=he;break;case 219:Ho(he,function $(Y){if(ID(Y))m|=8,b=he;else{if(ui(Y)||ea(Y)&&!Gs(Y))return!1;Ho(Y,$)}});case 263:case 262:$i(he.parent)&&he.parent.externalModuleIndicator===void 0&&(V||(V=[])).push(wr(he,Tu.functionWillNotBeVisibleInTheNewScope));case 231:case 218:case 174:case 176:case 177:case 178:return!1}const ye=se;switch(he.kind){case 245:se&=-5;break;case 258:se=0;break;case 241:he.parent&&he.parent.kind===258&&he.parent.finallyBlock===he&&(se=4);break;case 297:case 296:se|=1;break;default:Wy(he,!1)&&(se|=3);break}switch(he.kind){case 197:case 110:m|=8,b=he;break;case 256:{const $=he.label;(G||(G=[])).push($.escapedText),Ho(he,ne),G.pop();break}case 252:case 251:{const $=he.label;$?Nr(G,$.escapedText)||(V||(V=[])).push(wr(he,Tu.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange)):se&(he.kind===252?1:2)||(V||(V=[])).push(wr(he,Tu.cannotExtractRangeContainingConditionalBreakOrContinueStatements));break}case 223:m|=4;break;case 229:m|=2;break;case 253:se&4?m|=1:(V||(V=[])).push(wr(he,Tu.cannotExtractRangeContainingConditionalReturnStatement));break;default:Ho(he,ne);break}se=ye}}}function hYe(e,t,r){const i=e.getStart(r);let o=t.getEnd();return r.text.charCodeAt(o)===59&&o++,{start:i,length:o-i}}function gYe(e){if(qi(e))return[e];if(ng(e))return eu(e.parent)?[e.parent]:e;if(Rpe(e))return e}function Tpe(e){return Gs(e)?dj(e.body):Bs(e)||$i(e)||O_(e)||ui(e)}function vYe(e){let t=ry(e.range)?Ha(e.range):e.range;if(e.facts&8&&!(e.facts&16)){const i=su(t);if(i){const o=Gn(t,Bs);return o?[o,i]:[i]}}const r=[];for(;;)if(t=t.parent,t.kind===169&&(t=Gn(t,i=>Bs(i)).parent),Tpe(t)&&(r.push(t),t.kind===312))return r}function yYe(e,t,r){const{scopes:i,readsAndWrites:{target:o,usagesPerScope:s,functionErrorsPerScope:l,exposedVariableDeclarations:u}}=Ape(e,t);return N.assert(!l[r].length,"The extraction went missing? How?"),t.cancellationToken.throwIfCancellationRequested(),RYe(o,i[r],s[r],u,e,t)}function bYe(e,t,r){const{scopes:i,readsAndWrites:{target:o,usagesPerScope:s,constantErrorsPerScope:l,exposedVariableDeclarations:u}}=Ape(e,t);N.assert(!l[r].length,"The extraction went missing? How?"),N.assert(u.length===0,"Extract constant accepted a range containing a variable declaration?"),t.cancellationToken.throwIfCancellationRequested();const p=yt(o)?o:o.statements[0].expression;return DYe(p,i[r],s[r],e.facts,t)}function EYe(e,t){const{scopes:r,readsAndWrites:{functionErrorsPerScope:i,constantErrorsPerScope:o}}=Ape(e,t);return r.map((l,u)=>{const p=SYe(l),h=TYe(l),m=Bs(l)?AYe(l):ui(l)?IYe(l):xYe(l);let b,A;return m===1?(b=lg(Wo(f.Extract_to_0_in_1_scope),[p,"global"]),A=lg(Wo(f.Extract_to_0_in_1_scope),[h,"global"])):m===0?(b=lg(Wo(f.Extract_to_0_in_1_scope),[p,"module"]),A=lg(Wo(f.Extract_to_0_in_1_scope),[h,"module"])):(b=lg(Wo(f.Extract_to_0_in_1),[p,m]),A=lg(Wo(f.Extract_to_0_in_1),[h,m])),u===0&&!ui(l)&&(A=lg(Wo(f.Extract_to_0_in_enclosing_scope),[h])),{functionExtraction:{description:b,errors:i[u]},constantExtraction:{description:A,errors:o[u]}}})}function Ape(e,t){const{file:r}=t,i=vYe(e),o=zYe(e,r),s=BYe(e,i,o,r,t.program.getTypeChecker(),t.cancellationToken);return{scopes:i,readsAndWrites:s}}function SYe(e){return Bs(e)?"inner function":ui(e)?"method":"function"}function TYe(e){return ui(e)?"readonly field":"constant"}function AYe(e){switch(e.kind){case 176:return"constructor";case 218:case 262:return e.name?`function '${e.name.text}'`:F5;case 219:return"arrow function";case 174:return`method '${e.name.getText()}'`;case 177:return`'get ${e.name.getText()}'`;case 178:return`'set ${e.name.getText()}'`;default:N.assertNever(e,`Unexpected scope kind ${e.kind}`)}}function IYe(e){return e.kind===263?e.name?`class '${e.name.text}'`:"anonymous class declaration":e.name?`class expression '${e.name.text}'`:"anonymous class expression"}function xYe(e){return e.kind===268?`namespace '${e.parent.name.getText()}'`:e.externalModuleIndicator?0:1}function RYe(e,t,{usages:r,typeParameterUsages:i,substitutions:o},s,l,u){const p=u.program.getTypeChecker(),h=os(u.program.getCompilerOptions()),m=Fu.createImportAdder(u.file,u.program,u.preferences,u.host),b=t.getSourceFile(),A=cT(ui(t)?"newMethod":"newFunction",b),I=lr(t),R=w.createIdentifier(A);let M;const C=[],O=[];let U;r.forEach((De,Pe)=>{let We;if(!I){let Se=p.getTypeOfSymbolAtLocation(De.symbol,De.node);Se=p.getBaseTypeOfLiteralType(Se),We=Fu.typeToAutoImportableTypeNode(p,m,Se,t,h,1)}const At=w.createParameterDeclaration(void 0,void 0,Pe,void 0,We);C.push(At),De.usage===2&&(U||(U=[])).push(De),O.push(w.createIdentifier(Pe))});const Z=zo(i.values(),De=>({type:De,declaration:CYe(De,u.startPosition)})).sort(PYe),V=Z.length===0?void 0:Hi(Z,({declaration:De})=>De),se=V!==void 0?V.map(De=>w.createTypeReferenceNode(De.name,void 0)):void 0;if(yt(e)&&!I){const De=p.getContextualType(e);M=p.typeToTypeNode(De,t,1)}const{body:G,returnValueProperty:ne}=LYe(e,s,U,o,!!(l.facts&1));Ap(G);let he;const ye=!!(l.facts&16);if(ui(t)){const De=I?[]:[w.createModifier(123)];l.facts&32&&De.push(w.createModifier(126)),l.facts&4&&De.push(w.createModifier(134)),he=w.createMethodDeclaration(De.length?De:void 0,l.facts&2?w.createToken(42):void 0,R,void 0,V,C,M,G)}else ye&&C.unshift(w.createParameterDeclaration(void 0,void 0,"this",void 0,p.typeToTypeNode(p.getTypeAtLocation(l.thisNode),t,1),void 0)),he=w.createFunctionDeclaration(l.facts&4?[w.createToken(134)]:void 0,l.facts&2?w.createToken(42):void 0,R,V,C,M,G);const $=_r.ChangeTracker.fromContext(u),Y=(ry(l.range)?Ya(l.range):l.range).end,oe=OYe(Y,t);oe?$.insertNodeBefore(u.file,oe,he,!0):$.insertNodeAtEndOfScope(u.file,t,he),m.writeFixes($);const fe=[],Ne=MYe(t,l,A);ye&&O.unshift(w.createIdentifier("this"));let pe=w.createCallExpression(ye?w.createPropertyAccessExpression(Ne,"call"):Ne,se,O);if(l.facts&2&&(pe=w.createYieldExpression(w.createToken(42),pe)),l.facts&4&&(pe=w.createAwaitExpression(pe)),xpe(e)&&(pe=w.createJsxExpression(void 0,pe)),s.length&&!U)if(N.assert(!ne,"Expected no returnValueProperty"),N.assert(!(l.facts&1),"Expected RangeFacts.HasReturn flag to be unset"),s.length===1){const De=s[0];fe.push(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(cl(De.name),void 0,cl(De.type),pe)],De.parent.flags)))}else{const De=[],Pe=[];let We=s[0].parent.flags,At=!1;for(const je of s){De.push(w.createBindingElement(void 0,void 0,cl(je.name)));const at=p.typeToTypeNode(p.getBaseTypeOfLiteralType(p.getTypeAtLocation(je)),t,1);Pe.push(w.createPropertySignature(void 0,je.symbol.name,void 0,at)),At=At||je.type!==void 0,We=We&je.parent.flags}const Se=At?w.createTypeLiteralNode(Pe):void 0;Se&&pr(Se,1),fe.push(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(w.createObjectBindingPattern(De),void 0,Se,pe)],We)))}else if(s.length||U){if(s.length)for(const Pe of s){let We=Pe.parent.flags;We&2&&(We=We&-3|1),fe.push(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(Pe.symbol.name,void 0,Ee(Pe.type))],We)))}ne&&fe.push(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(ne,void 0,Ee(M))],1)));const De=Ipe(s,U);ne&&De.unshift(w.createShorthandPropertyAssignment(ne)),De.length===1?(N.assert(!ne,"Shouldn't have returnValueProperty here"),fe.push(w.createExpressionStatement(w.createAssignment(De[0].name,pe))),l.facts&1&&fe.push(w.createReturnStatement())):(fe.push(w.createExpressionStatement(w.createAssignment(w.createObjectLiteralExpression(De),pe))),ne&&fe.push(w.createReturnStatement(w.createIdentifier(ne))))}else l.facts&1?fe.push(w.createReturnStatement(pe)):ry(l.range)?fe.push(w.createExpressionStatement(pe)):fe.push(pe);ry(l.range)?$.replaceNodeRangeWithNodes(u.file,Ha(l.range),Ya(l.range),fe):$.replaceNodeWithNodes(u.file,l.range,fe);const ie=$.getChanges(),Le=(ry(l.range)?Ha(l.range):l.range).getSourceFile().fileName,He=EO(ie,Le,A,!1);return{renameFilename:Le,renameLocation:He,edits:ie};function Ee(De){if(De===void 0)return;const Pe=cl(De);let We=Pe;for(;GS(We);)We=We.type;return Qy(We)&&An(We.types,At=>At.kind===157)?Pe:w.createUnionTypeNode([Pe,w.createKeywordTypeNode(157)])}}function DYe(e,t,{substitutions:r},i,o){const s=o.program.getTypeChecker(),l=t.getSourceFile(),u=Fr(e)&&!ui(t)&&!s.resolveName(e.name.text,e,111551,!1)&&!Ji(e.name)&&!u0(e.name)?e.name.text:cT(ui(t)?"newProperty":"newLocal",l),p=lr(t);let h=p||!s.isContextSensitive(e)?void 0:s.typeToTypeNode(s.getContextualType(e),t,1),m=kYe(hs(e),r);({variableType:h,initializer:m}=M(h,m)),Ap(m);const b=_r.ChangeTracker.fromContext(o);if(ui(t)){N.assert(!p,"Cannot extract to a JS class");const C=[];C.push(w.createModifier(123)),i&32&&C.push(w.createModifier(126)),C.push(w.createModifier(148));const O=w.createPropertyDeclaration(C,u,void 0,h,m);let U=w.createPropertyAccessExpression(i&32?w.createIdentifier(t.name.getText()):w.createThis(),w.createIdentifier(u));xpe(e)&&(U=w.createJsxExpression(void 0,U));const K=e.pos,Z=WYe(K,t);b.insertNodeBefore(o.file,Z,O,!0),b.replaceNode(o.file,e,U)}else{const C=w.createVariableDeclaration(u,void 0,h,m),O=NYe(e,t);if(O){b.insertNodeBefore(o.file,O,C);const U=w.createIdentifier(u);b.replaceNode(o.file,e,U)}else if(e.parent.kind===244&&t===Gn(e,Tpe)){const U=w.createVariableStatement(void 0,w.createVariableDeclarationList([C],2));b.replaceNode(o.file,e.parent,U)}else{const U=w.createVariableStatement(void 0,w.createVariableDeclarationList([C],2)),K=FYe(e,t);if(K.pos===0?b.insertNodeAtTopOfFile(o.file,U,!1):b.insertNodeBefore(o.file,K,U,!1),e.parent.kind===244)b.delete(o.file,e.parent);else{let Z=w.createIdentifier(u);xpe(e)&&(Z=w.createJsxExpression(void 0,Z)),b.replaceNode(o.file,e,Z)}}}const A=b.getChanges(),I=e.getSourceFile().fileName,R=EO(A,I,u,!0);return{renameFilename:I,renameLocation:R,edits:A};function M(C,O){if(C===void 0)return{variableType:C,initializer:O};if(!Os(O)&&!Gs(O)||O.typeParameters)return{variableType:C,initializer:O};const U=s.getTypeAtLocation(e),K=sh(s.getSignaturesOfType(U,0));if(!K)return{variableType:C,initializer:O};if(K.getTypeParameters())return{variableType:C,initializer:O};const Z=[];let V=!1;for(const se of O.parameters)if(se.type)Z.push(se);else{const G=s.getTypeAtLocation(se);G===s.getAnyType()&&(V=!0),Z.push(w.updateParameterDeclaration(se,se.modifiers,se.dotDotDotToken,se.name,se.questionToken,se.type||s.typeToTypeNode(G,t,1),se.initializer))}if(V)return{variableType:C,initializer:O};if(C=void 0,Gs(O))O=w.updateArrowFunction(O,Cm(e)?ME(e):void 0,O.typeParameters,Z,O.type||s.typeToTypeNode(K.getReturnType(),t,1),O.equalsGreaterThanToken,O.body);else{if(K&&K.thisParameter){const se=Xc(Z);if(!se||Ve(se.name)&&se.name.escapedText!=="this"){const G=s.getTypeOfSymbolAtLocation(K.thisParameter,e);Z.splice(0,0,w.createParameterDeclaration(void 0,void 0,"this",void 0,s.typeToTypeNode(G,t,1)))}}O=w.updateFunctionExpression(O,Cm(e)?ME(e):void 0,O.asteriskToken,O.name,O.typeParameters,Z,O.type||s.typeToTypeNode(K.getReturnType(),t,1),O.body)}return{variableType:C,initializer:O}}}function NYe(e,t){let r;for(;e!==void 0&&e!==t;){if(wi(e)&&e.initializer===r&&Uc(e.parent)&&e.parent.declarations.length>1)return e;r=e,e=e.parent}}function CYe(e,t){let r;const i=e.symbol;if(i&&i.declarations)for(const o of i.declarations)(r===void 0||o.pos<r.pos)&&o.pos<t&&(r=o);return r}function PYe({type:e,declaration:t},{type:r,declaration:i}){return wne(t,i,"pos",rl)||Uu(e.symbol?e.symbol.getName():"",r.symbol?r.symbol.getName():"")||rl(e.id,r.id)}function MYe(e,t,r){const i=w.createIdentifier(r);if(ui(e)){const o=t.facts&32?w.createIdentifier(e.name.text):w.createThis();return w.createPropertyAccessExpression(o,i)}else return i}function LYe(e,t,r,i,o){const s=r!==void 0||t.length>0;if(Xo(e)&&!s&&i.size===0)return{body:w.createBlock(e.statements,!0),returnValueProperty:void 0};let l,u=!1;const p=w.createNodeArray(Xo(e)?e.statements.slice(0):[qi(e)?e:w.createReturnStatement(hs(e))]);if(s||i.size){const m=Vn(p,h,qi).slice();if(s&&!o&&qi(e)){const b=Ipe(t,r);b.length===1?m.push(w.createReturnStatement(b[0].name)):m.push(w.createReturnStatement(w.createObjectLiteralExpression(b)))}return{body:w.createBlock(m,!0),returnValueProperty:l}}else return{body:w.createBlock(p,!0),returnValueProperty:void 0};function h(m){if(!u&&Dm(m)&&s){const b=Ipe(t,r);return m.expression&&(l||(l="__return"),b.unshift(w.createPropertyAssignment(l,nt(m.expression,h,yt)))),b.length===1?w.createReturnStatement(b[0].name):w.createReturnStatement(w.createObjectLiteralExpression(b))}else{const b=u;u=u||Bs(m)||ui(m);const A=i.get(as(m).toString()),I=A?cl(A):In(m,h,void 0);return u=b,I}}}function kYe(e,t){return t.size?r(e):e;function r(i){const o=t.get(as(i).toString());return o?cl(o):In(i,r,void 0)}}function wYe(e){if(Bs(e)){const t=e.body;if(Xo(t))return t.statements}else{if(O_(e)||$i(e))return e.statements;if(ui(e))return e.members}return et}function OYe(e,t){return An(wYe(t),r=>r.pos>=e&&Bs(r)&&!Ml(r))}function WYe(e,t){const r=t.members;N.assert(r.length>0,"Found no members");let i,o=!0;for(const s of r){if(s.pos>e)return i||r[0];if(o&&!Jo(s)){if(i!==void 0)return s;o=!1}i=s}return i===void 0?N.fail():i}function FYe(e,t){N.assert(!ui(t));let r;for(let i=e;i!==t;i=i.parent)Tpe(i)&&(r=i);for(let i=(r||e).parent;;i=i.parent){if(FCe(i)){let o;for(const s of i.statements){if(s.pos>e.pos)break;o=s}return!o&&YR(i)?(N.assert(EP(i.parent.parent),"Grandparent isn't a switch statement"),i.parent.parent):N.checkDefined(o,"prevStatement failed to get set")}N.assert(i!==t,"Didn't encounter a block-like before encountering scope")}}function Ipe(e,t){const r=wt(e,o=>w.createShorthandPropertyAssignment(o.symbol.name)),i=wt(t,o=>w.createShorthandPropertyAssignment(o.symbol.name));return r===void 0?i:i===void 0?r:r.concat(i)}function ry(e){return To(e)}function zYe(e,t){return ry(e.range)?{pos:Ha(e.range).getStart(t),end:Ya(e.range).getEnd()}:e.range}function BYe(e,t,r,i,o,s){const l=new Map,u=[],p=[],h=[],m=[],b=[],A=new Map,I=[];let R;const M=ry(e.range)?e.range.length===1&&eu(e.range[0])?e.range[0].expression:void 0:e.range;let C;if(M===void 0){const oe=e.range,fe=Ha(oe).getStart(),Ne=Ya(oe).end;C=Qc(i,fe,Ne-fe,Tu.expressionExpected)}else o.getTypeAtLocation(M).flags&147456&&(C=wr(M,Tu.uselessConstantType));for(const oe of t){u.push({usages:new Map,typeParameterUsages:new Map,substitutions:new Map}),p.push(new Map),h.push([]);const fe=[];C&&fe.push(C),ui(oe)&&lr(oe)&&fe.push(wr(oe,Tu.cannotExtractToJSClass)),Gs(oe)&&!Xo(oe.body)&&fe.push(wr(oe,Tu.cannotExtractToExpressionArrowFunction)),m.push(fe)}const O=new Map,U=ry(e.range)?w.createBlock(e.range):e.range,K=ry(e.range)?Ha(e.range):e.range,Z=V(K);if(G(U),Z&&!ry(e.range)&&!F_(e.range)){const oe=o.getContextualType(e.range);se(oe)}if(l.size>0){const oe=new Map;let fe=0;for(let Ne=K;Ne!==void 0&&fe<t.length;Ne=Ne.parent)if(Ne===t[fe]&&(oe.forEach((pe,ie)=>{u[fe].typeParameterUsages.set(ie,pe)}),fe++),Cj(Ne))for(const pe of ky(Ne)){const ie=o.getTypeAtLocation(pe);l.has(ie.id.toString())&&oe.set(ie.id.toString(),ie)}N.assert(fe===t.length,"Should have iterated all scopes")}if(b.length){const oe=Nj(t[0],t[0].parent)?t[0]:hh(t[0]);Ho(oe,ye)}for(let oe=0;oe<t.length;oe++){const fe=u[oe];if(oe>0&&(fe.usages.size>0||fe.typeParameterUsages.size>0)){const ie=ry(e.range)?e.range[0]:e.range;m[oe].push(wr(ie,Tu.cannotAccessVariablesFromNestedScopes))}e.facts&16&&ui(t[oe])&&h[oe].push(wr(e.thisNode,Tu.cannotExtractFunctionsContainingThisToMethod));let Ne=!1,pe;if(u[oe].usages.forEach(ie=>{ie.usage===2&&(Ne=!0,ie.symbol.flags&106500&&ie.symbol.valueDeclaration&&gp(ie.symbol.valueDeclaration,8)&&(pe=ie.symbol.valueDeclaration))}),N.assert(ry(e.range)||I.length===0,"No variable declarations expected if something was extracted"),Ne&&!ry(e.range)){const ie=wr(e.range,Tu.cannotWriteInExpression);h[oe].push(ie),m[oe].push(ie)}else if(pe&&oe>0){const ie=wr(pe,Tu.cannotExtractReadonlyPropertyInitializerOutsideConstructor);h[oe].push(ie),m[oe].push(ie)}else if(R){const ie=wr(R,Tu.cannotExtractExportedEntity);h[oe].push(ie),m[oe].push(ie)}}return{target:U,usagesPerScope:u,functionErrorsPerScope:h,constantErrorsPerScope:m,exposedVariableDeclarations:I};function V(oe){return!!Gn(oe,fe=>Cj(fe)&&ky(fe).length!==0)}function se(oe){const fe=o.getSymbolWalker(()=>(s.throwIfCancellationRequested(),!0)),{visitedTypes:Ne}=fe.walkType(oe);for(const pe of Ne)pe.isTypeParameter()&&l.set(pe.id.toString(),pe)}function G(oe,fe=1){if(Z){const Ne=o.getTypeAtLocation(oe);se(Ne)}if(Ju(oe)&&oe.symbol&&b.push(oe),Lc(oe))G(oe.left,2),G(oe.right);else if(Hre(oe))G(oe.operand,2);else if(Fr(oe)||Qs(oe))Ho(oe,G);else if(Ve(oe)){if(!oe.parent||xd(oe.parent)&&oe!==oe.parent.left||Fr(oe.parent)&&oe!==oe.parent.expression)return;ne(oe,fe,tg(oe))}else Ho(oe,G)}function ne(oe,fe,Ne){const pe=he(oe,fe,Ne);if(pe)for(let ie=0;ie<t.length;ie++){const ve=p[ie].get(pe);ve&&u[ie].substitutions.set(as(oe).toString(),ve)}}function he(oe,fe,Ne){const pe=$(oe);if(!pe)return;const ie=Ta(pe).toString(),ve=O.get(ie);if(ve&&ve>=fe)return ie;if(O.set(ie,fe),ve){for(const Ee of u)Ee.usages.get(oe.text)&&Ee.usages.set(oe.text,{usage:fe,symbol:pe,node:oe});return ie}const Le=pe.getDeclarations(),He=Le&&An(Le,Ee=>Ee.getSourceFile()===i);if(He&&!cO(r,He.getStart(),He.end)){if(e.facts&2&&fe===2){const Ee=wr(oe,Tu.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(const De of h)De.push(Ee);for(const De of m)De.push(Ee)}for(let Ee=0;Ee<t.length;Ee++){const De=t[Ee];if(o.resolveName(pe.name,De,pe.flags,!1)!==pe&&!p[Ee].has(ie)){const We=Y(pe.exportSymbol||pe,De,Ne);if(We)p[Ee].set(ie,We);else if(Ne){if(!(pe.flags&262144)){const At=wr(oe,Tu.typeWillNotBeVisibleInTheNewScope);h[Ee].push(At),m[Ee].push(At)}}else u[Ee].usages.set(oe.text,{usage:fe,symbol:pe,node:oe})}}return ie}}function ye(oe){if(oe===e.range||ry(e.range)&&e.range.includes(oe))return;const fe=Ve(oe)?$(oe):o.getSymbolAtLocation(oe);if(fe){const Ne=An(b,pe=>pe.symbol===fe);if(Ne)if(wi(Ne)){const pe=Ne.symbol.id.toString();A.has(pe)||(I.push(Ne),A.set(pe,!0))}else R=R||Ne}Ho(oe,ye)}function $(oe){return oe.parent&&rp(oe.parent)&&oe.parent.name===oe?o.getShorthandAssignmentValueSymbol(oe.parent):o.getSymbolAtLocation(oe)}function Y(oe,fe,Ne){if(!oe)return;const pe=oe.getDeclarations();if(pe&&pe.some(ve=>ve.parent===fe))return w.createIdentifier(oe.name);const ie=Y(oe.parent,fe,Ne);if(ie!==void 0)return Ne?w.createQualifiedName(ie,w.createIdentifier(oe.name)):w.createPropertyAccessExpression(ie,oe.name)}}function GYe(e){return Gn(e,t=>t.parent&&WCe(t)&&!mr(t.parent))}function WCe(e){const{parent:t}=e;switch(t.kind){case 306:return!1}switch(e.kind){case 11:return t.kind!==272&&t.kind!==276;case 230:case 206:case 208:return!1;case 80:return t.kind!==208&&t.kind!==276&&t.kind!==281}return!0}function FCe(e){switch(e.kind){case 241:case 312:case 268:case 296:return!0;default:return!1}}function xpe(e){return Rpe(e)||(dg(e)||JS(e)||s1(e))&&(dg(e.parent)||s1(e.parent))}function Rpe(e){return Ma(e)&&e.parent&&F_(e.parent)}var wD,OD,WD,Tu,Dpe,VYe=T({"src/services/refactors/extractSymbol.ts"(){si(),Dh(),wD="Extract Symbol",OD={name:"Extract Constant",description:Wo(f.Extract_constant),kind:"refactor.extract.constant"},WD={name:"Extract Function",description:Wo(f.Extract_function),kind:"refactor.extract.function"},fg(wD,{kinds:[OD.kind,WD.kind],getEditsForAction:OCe,getAvailableActions:wCe}),(e=>{function t(r){return{message:r,code:0,category:3,key:r}}e.cannotExtractRange=t("Cannot extract range."),e.cannotExtractImport=t("Cannot extract import statement."),e.cannotExtractSuper=t("Cannot extract super call."),e.cannotExtractJSDoc=t("Cannot extract JSDoc."),e.cannotExtractEmpty=t("Cannot extract empty range."),e.expressionExpected=t("expression expected."),e.uselessConstantType=t("No reason to extract constant of type."),e.statementOrExpressionExpected=t("Statement or expression expected."),e.cannotExtractRangeContainingConditionalBreakOrContinueStatements=t("Cannot extract range containing conditional break or continue statements."),e.cannotExtractRangeContainingConditionalReturnStatement=t("Cannot extract range containing conditional return statement."),e.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=t("Cannot extract range containing labeled break or continue with target outside of the range."),e.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=t("Cannot extract range containing writes to references located outside of the target range in generators."),e.typeWillNotBeVisibleInTheNewScope=t("Type will not visible in the new scope."),e.functionWillNotBeVisibleInTheNewScope=t("Function will not visible in the new scope."),e.cannotExtractIdentifier=t("Select more than a single identifier."),e.cannotExtractExportedEntity=t("Cannot extract exported declaration"),e.cannotWriteInExpression=t("Cannot write back side-effects when extracting an expression"),e.cannotExtractReadonlyPropertyInitializerOutsideConstructor=t("Cannot move initialization of read-only class property outside of the constructor"),e.cannotExtractAmbientBlock=t("Cannot extract code from ambient contexts"),e.cannotAccessVariablesFromNestedScopes=t("Cannot access variables from nested scopes"),e.cannotExtractToJSClass=t("Cannot extract constant to a class scope in JS"),e.cannotExtractToExpressionArrowFunction=t("Cannot extract constant to an arrow function without a block"),e.cannotExtractFunctionsContainingThisToMethod=t("Cannot extract functions containing this to method")})(Tu||(Tu={})),Dpe=(e=>(e[e.None=0]="None",e[e.HasReturn=1]="HasReturn",e[e.IsGenerator=2]="IsGenerator",e[e.IsAsyncFunction=4]="IsAsyncFunction",e[e.UsesThis=8]="UsesThis",e[e.UsesThisInFunction=16]="UsesThisInFunction",e[e.InStaticRegion=32]="InStaticRegion",e))(Dpe||{})}}),zCe={};X(zCe,{Messages:()=>Tu,RangeFacts:()=>Dpe,getRangeToExtract:()=>Spe,getRefactorActionsToExtractSymbol:()=>wCe,getRefactorEditsToExtractSymbol:()=>OCe});var jYe=T({"src/services/_namespaces/ts.refactor.extractSymbol.ts"(){VYe()}}),az,GY,VY,UYe=T({"src/services/refactors/generateGetAccessorAndSetAccessor.ts"(){si(),Dh(),az="Generate 'get' and 'set' accessors",GY=Wo(f.Generate_get_and_set_accessors),VY={name:az,description:GY,kind:"refactor.rewrite.property.generateAccessors"},fg(az,{kinds:[VY.kind],getEditsForAction:function(t,r){if(!t.endPosition)return;const i=Fu.getAccessorConvertiblePropertyAtPosition(t.file,t.program,t.startPosition,t.endPosition);N.assert(i&&!Xg(i),"Expected applicable refactor info");const o=Fu.generateAccessorFromProperty(t.file,t.program,t.startPosition,t.endPosition,t,r);if(!o)return;const s=t.file.fileName,l=i.renameAccessor?i.accessorName:i.fieldName,p=(Ve(l)?0:-1)+EO(o,s,l.text,Ao(i.declaration));return{renameFilename:s,renameLocation:p,edits:o}},getAvailableActions(e){if(!e.endPosition)return et;const t=Fu.getAccessorConvertiblePropertyAtPosition(e.file,e.program,e.startPosition,e.endPosition,e.triggerReason==="invoked");return t?Xg(t)?e.preferences.provideRefactorNotApplicableReason?[{name:az,description:GY,actions:[{...VY,notApplicableReason:t.error}]}]:et:[{name:az,description:GY,actions:[VY]}]:et}})}}),HYe={},qYe=T({"src/services/_namespaces/ts.refactor.generateGetAccessorAndSetAccessor.ts"(){UYe()}});function JYe(e){const t=BCe(e);if(t&&!Xg(t))return{renameFilename:void 0,renameLocation:void 0,edits:_r.ChangeTracker.with(e,i=>XYe(e.file,i,t.declaration,t.returnTypeNode))}}function KYe(e){const t=BCe(e);return t?Xg(t)?e.preferences.provideRefactorNotApplicableReason?[{name:sz,description:jY,actions:[{...lz,notApplicableReason:t.error}]}]:et:[{name:sz,description:jY,actions:[lz]}]:et}function XYe(e,t,r,i){const o=vs(r,22,e),s=Gs(r)&&o===void 0,l=s?Ha(r.parameters):o;l&&(s&&(t.insertNodeBefore(e,l,w.createToken(21)),t.insertNodeAfter(e,l,w.createToken(22))),t.insertNodeAt(e,l.end,i,{prefix:": "}))}function BCe(e){if(lr(e.file)||!z0(lz.kind,e.kind))return;const t=Vd(e.file,e.startPosition),r=Gn(t,l=>Xo(l)||l.parent&&Gs(l.parent)&&(l.kind===39||l.parent.body===l)?"quit":YYe(l));if(!r||!r.body||r.type)return{error:Wo(f.Return_type_must_be_inferred_from_a_function)};const i=e.program.getTypeChecker(),o=$Ye(i,r);if(!o)return{error:Wo(f.Could_not_determine_function_return_type)};const s=i.typeToTypeNode(o,r,1);if(s)return{declaration:r,returnTypeNode:s}}function YYe(e){switch(e.kind){case 262:case 218:case 219:case 174:return!0;default:return!1}}function $Ye(e,t){if(e.isImplementationOfOverload(t)){const i=e.getTypeAtLocation(t).getCallSignatures();if(i.length>1)return e.getUnionType(Hi(i,o=>o.getReturnType()))}const r=e.getSignatureFromDeclaration(t);if(r)return e.getReturnTypeOfSignature(r)}var sz,jY,lz,QYe=T({"src/services/refactors/inferFunctionReturnType.ts"(){si(),Dh(),sz="Infer function return type",jY=Wo(f.Infer_function_return_type),lz={name:sz,description:jY,kind:"refactor.rewrite.function.returnType"},fg(sz,{kinds:[lz.kind],getEditsForAction:JYe,getAvailableActions:KYe})}}),ZYe={},e$e=T({"src/services/_namespaces/ts.refactor.inferFunctionReturnType.ts"(){QYe()}}),wI={};X(wI,{addExportToChanges:()=>ipe,addExports:()=>epe,addNewFileToTsconfig:()=>Xde,addOrRemoveBracesToArrowFunction:()=>mXe,containsJsx:()=>ape,convertArrowFunctionOrFunctionExpression:()=>xXe,convertParamsToDestructuredObject:()=>HXe,convertStringOrTemplateLiteral:()=>tYe,convertToOptionalChainExpression:()=>mYe,createNewFileName:()=>ope,createOldFileImportsFromTargetFile:()=>Zde,deleteMovedStatements:()=>$5,deleteUnusedImports:()=>tpe,deleteUnusedOldImports:()=>Yde,doChangeNamedToNamespaceOrDefault:()=>KNe,extractSymbol:()=>zCe,filterImport:()=>wO,forEachImportInStatement:()=>kO,generateGetAccessorAndSetAccessor:()=>HYe,getApplicableRefactors:()=>pKe,getEditsForRefactor:()=>fKe,getStatementsToMove:()=>OO,getTopLevelDeclarationStatement:()=>DY,getUsageInfo:()=>Z5,inferFunctionReturnType:()=>ZYe,isRefactorErrorInfo:()=>Xg,isTopLevelDeclaration:()=>ez,makeImportOrRequire:()=>Q5,moduleSpecifierFromImport:()=>LO,nameOfTopLevelDeclaration:()=>rpe,refactorKindBeginsWith:()=>z0,registerRefactor:()=>fg,updateImportsInOtherFiles:()=>$de});var Dh=T({"src/services/_namespaces/ts.refactor.ts"(){VNe(),bKe(),IKe(),LKe(),kKe(),OKe(),BKe(),sXe(),_Xe(),RXe(),qXe(),nYe(),_Ye(),jYe(),qYe(),e$e()}});function GCe(e,t,r,i){const o=Npe(e,t,r,i);N.assert(o.spans.length%3===0);const s=o.spans,l=[];for(let u=0;u<s.length;u+=3)l.push({textSpan:vu(s[u],s[u+1]),classificationType:s[u+2]});return l}function Npe(e,t,r,i){return{spans:t$e(e,r,i,t),endOfLineState:0}}function t$e(e,t,r,i){const o=[];return e&&t&&n$e(e,t,r,(l,u,p)=>{o.push(l.getStart(t),l.getWidth(t),(u+1<<8)+p)},i),o}function n$e(e,t,r,i,o){const s=e.getTypeChecker();let l=!1;function u(p){switch(p.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 219:o.throwIfCancellationRequested()}if(!p||!v4(r,p.pos,p.getFullWidth())||p.getFullWidth()===0)return;const h=l;if((dg(p)||JS(p))&&(l=!0),TP(p)&&(l=!1),Ve(p)&&!l&&!a$e(p)&&!iP(p.escapedText)){let m=s.getSymbolAtLocation(p);if(m){m.flags&2097152&&(m=s.getAliasedSymbol(m));let b=r$e(m,oT(p));if(b!==void 0){let A=0;p.parent&&(Qa(p.parent)||Lpe.get(p.parent.kind)===b)&&p.parent.name===p&&(A=1),b===6&&jCe(p)&&(b=9),b=i$e(s,p,b);const I=m.valueDeclaration;if(I){const R=c0(I),M=Ov(I);R&256&&(A|=2),R&1024&&(A|=4),b!==0&&b!==2&&(R&8||M&2||m.getFlags()&8)&&(A|=8),(b===7||b===10)&&o$e(I,t)&&(A|=32),e.isSourceFileDefaultLibrary(I.getSourceFile())&&(A|=16)}else m.declarations&&m.declarations.some(R=>e.isSourceFileDefaultLibrary(R.getSourceFile()))&&(A|=16);i(p,b,A)}}}Ho(p,u),l=h}u(t)}function r$e(e,t){const r=e.getFlags();if(r&32)return 0;if(r&384)return 1;if(r&524288)return 5;if(r&64){if(t&2)return 2}else if(r&262144)return 4;let i=e.valueDeclaration||e.declarations&&e.declarations[0];return i&&Qa(i)&&(i=VCe(i)),i&&Lpe.get(i.kind)}function i$e(e,t,r){if(r===7||r===9||r===6){const i=e.getTypeAtLocation(t);if(i){const o=s=>s(i)||i.isUnion()&&i.types.some(s);if(r!==6&&o(s=>s.getConstructSignatures().length>0))return 0;if(o(s=>s.getCallSignatures().length>0)&&!o(s=>s.getProperties().length>0)||s$e(t))return r===9?11:10}}return r}function o$e(e,t){return Qa(e)&&(e=VCe(e)),wi(e)?(!$i(e.parent.parent.parent)||c1(e.parent))&&e.getSourceFile()===t:Ac(e)?!$i(e.parent)&&e.getSourceFile()===t:!1}function VCe(e){for(;;)if(Qa(e.parent.parent))e=e.parent.parent;else return e.parent.parent}function a$e(e){const t=e.parent;return t&&(Sh(t)||np(t)||nb(t))}function s$e(e){for(;jCe(e);)e=e.parent;return la(e.parent)&&e.parent.expression===e}function jCe(e){return xd(e.parent)&&e.parent.right===e||Fr(e.parent)&&e.parent.name===e}var Cpe,Ppe,Mpe,Lpe,UCe=T({"src/services/classifier2020.ts"(){si(),Cpe=(e=>(e[e.typeOffset=8]="typeOffset",e[e.modifierMask=255]="modifierMask",e))(Cpe||{}),Ppe=(e=>(e[e.class=0]="class",e[e.enum=1]="enum",e[e.interface=2]="interface",e[e.namespace=3]="namespace",e[e.typeParameter=4]="typeParameter",e[e.type=5]="type",e[e.parameter=6]="parameter",e[e.variable=7]="variable",e[e.enumMember=8]="enumMember",e[e.property=9]="property",e[e.function=10]="function",e[e.member=11]="member",e))(Ppe||{}),Mpe=(e=>(e[e.declaration=0]="declaration",e[e.static=1]="static",e[e.async=2]="async",e[e.readonly=3]="readonly",e[e.defaultLibrary=4]="defaultLibrary",e[e.local=5]="local",e))(Mpe||{}),Lpe=new Map([[260,7],[169,6],[172,9],[267,3],[266,1],[306,8],[263,0],[174,11],[262,10],[218,10],[173,11],[177,9],[178,9],[171,9],[264,2],[265,5],[168,4],[303,9],[304,9]])}});function HCe(e,t,r,i){const o=mL(e)?new KY(e,t,r):e===80?new YY(80,t,r):e===81?new $Y(81,t,r):new Wpe(e,t,r);return o.parent=i,o.flags=i.flags&101441536,o}function l$e(e,t){if(!mL(e.kind))return et;const r=[];if(k4(e))return e.forEachChild(l=>{r.push(l)}),r;Qu.setText((t||e.getSourceFile()).text);let i=e.pos;const o=l=>{cz(r,i,l.pos,e),r.push(l),i=l.end},s=l=>{cz(r,i,l.pos,e),r.push(c$e(l,e)),i=l.end};return Ue(e.jsDoc,o),i=e.pos,e.forEachChild(o,s),cz(r,i,e.end,e),Qu.setText(void 0),r}function cz(e,t,r,i){for(Qu.resetTokenState(t);t<r;){const o=Qu.scan(),s=Qu.getTokenEnd();if(s<=r){if(o===80){if(oae(i))continue;N.fail(`Did not expect ${N.formatSyntaxKind(i.kind)} to have an Identifier in its trivia`)}e.push(HCe(o,t,s,i))}if(t=s,o===1)break}}function c$e(e,t){const r=HCe(358,e.pos,e.end,t);r._children=[];let i=e.pos;for(const o of e)cz(r._children,i,o.pos,t),r._children.push(o),i=o.end;return cz(r._children,i,e.end,t),r}function qCe(e){return f0(e).some(t=>t.tagName.text==="inheritDoc"||t.tagName.text==="inheritdoc")}function UY(e,t){if(!e)return et;let r=G0.getJsDocTagsFromDeclarations(e,t);if(t&&(r.length===0||e.some(qCe))){const i=new Set;for(const o of e){const s=JCe(t,o,l=>{var u;if(!i.has(l))return i.add(l),o.kind===177||o.kind===178?l.getContextualJsDocTags(o,t):((u=l.declarations)==null?void 0:u.length)===1?l.getJsDocTags():void 0});s&&(r=[...s,...r])}}return r}function uz(e,t){if(!e)return et;let r=G0.getJsDocCommentsFromDeclarations(e,t);if(t&&(r.length===0||e.some(qCe))){const i=new Set;for(const o of e){const s=JCe(t,o,l=>{if(!i.has(l))return i.add(l),o.kind===177||o.kind===178?l.getContextualDocumentationComment(o,t):l.getDocumentationComment(t)});s&&(r=r.length===0?s.slice():s.concat(CD(),r))}}return r}function JCe(e,t,r){var i;const o=((i=t.parent)==null?void 0:i.kind)===176?t.parent.parent:t.parent;if(!o)return;const s=mc(t);return Ut(CC(o),l=>{const u=e.getTypeAtLocation(l),p=s&&u.symbol?e.getTypeOfSymbol(u.symbol):u,h=e.getPropertyOfType(p,t.symbol.name);return h?r(h):void 0})}function u$e(){return{getNodeConstructor:()=>KY,getTokenConstructor:()=>Wpe,getIdentifierConstructor:()=>YY,getPrivateIdentifierConstructor:()=>$Y,getSourceFileConstructor:()=>ZCe,getSymbolConstructor:()=>YCe,getTypeConstructor:()=>$Ce,getSignatureConstructor:()=>QCe,getSourceMapSourceConstructor:()=>ePe}}function VO(e){let t=!0;for(const i in e)if(xs(e,i)&&!KCe(i)){t=!1;break}if(t)return e;const r={};for(const i in e)if(xs(e,i)){const o=KCe(i)?i:i.charAt(0).toLowerCase()+i.substr(1);r[o]=e[i]}return r}function KCe(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function jO(e){return e?wt(e,t=>t.text).join(""):""}function dz(){return{target:1,jsx:1}}function HY(){return Fu.getSupportedErrorCodes()}function XCe(e,t,r){e.version=r,e.scriptSnapshot=t}function pz(e,t,r,i,o,s){const l=dw(e,RD(t),r,o,s);return XCe(l,t,i),l}function qY(e,t,r,i,o){if(i&&r!==e.version){let l;const u=i.span.start!==0?e.text.substr(0,i.span.start):"",p=Kl(i.span)!==e.text.length?e.text.substr(Kl(i.span)):"";if(i.newLength===0)l=u&&p?u+p:u||p;else{const m=t.getText(i.span.start,i.span.start+i.newLength);l=u&&p?u+m+p:u?u+m:m+p}const h=iq(e,l,i,o);return XCe(h,t,r),h.nameTable=void 0,e!==h&&e.scriptSnapshot&&(e.scriptSnapshot.dispose&&e.scriptSnapshot.dispose(),e.scriptSnapshot=void 0),h}const s={languageVersion:e.languageVersion,impliedNodeFormat:e.impliedNodeFormat,setExternalModuleIndicator:e.setExternalModuleIndicator,jsDocParsingMode:e.jsDocParsingMode};return pz(e.fileName,t,s,r,!0,e.scriptKind)}function kpe(e,t=gde(e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames(),e.getCurrentDirectory()),r){var i;let o;r===void 0?o=0:typeof r=="boolean"?o=r?2:0:o=r;const s=new tPe(e);let l,u,p=0;const h=e.getCancellationToken?new rPe(e.getCancellationToken()):nPe,m=e.getCurrentDirectory();Woe((i=e.getLocalizedDiagnosticMessages)==null?void 0:i.bind(e));function b(L){e.log&&e.log(L)}const A=CR(e),I=Mu(A),R=Pde({useCaseSensitiveFileNames:()=>A,getCurrentDirectory:()=>m,getProgram:U,fileExists:oa(e,e.fileExists),readFile:oa(e,e.readFile),getDocumentPositionMapper:oa(e,e.getDocumentPositionMapper),getSourceFileLike:oa(e,e.getSourceFileLike),log:b});function M(L){const _e=l.getSourceFile(L);if(!_e){const J=new Error(`Could not find source file: '${L}'.`);throw J.ProgramFiles=l.getSourceFiles().map(me=>me.fileName),J}return _e}function C(){e.updateFromProject&&!e.updateFromProjectInProgress?e.updateFromProject():O()}function O(){var L,_e,J;if(N.assert(o!==2),e.getProjectVersion){const Lo=e.getProjectVersion();if(Lo){if(u===Lo&&!((L=e.hasChangedAutomaticTypeDirectiveNames)!=null&&L.call(e)))return;u=Lo}}const me=e.getTypeRootsVersion?e.getTypeRootsVersion():0;p!==me&&(b("TypeRoots version has changed; provide new program"),l=void 0,p=me);const Ge=e.getScriptFileNames().slice(),ke=e.getCompilationSettings()||dz(),Tt=e.hasInvalidatedResolutions||Xm,kt=oa(e,e.hasInvalidatedLibResolutions)||Xm,en=oa(e,e.hasChangedAutomaticTypeDirectiveNames),bn=(_e=e.getProjectReferences)==null?void 0:_e.call(e);let Bn,Hn={getSourceFile:Fs,getSourceFileByPath:Ql,getCancellationToken:()=>h,getCanonicalFileName:I,useCaseSensitiveFileNames:()=>A,getNewLine:()=>Uv(ke),getDefaultLibFileName:Lo=>e.getDefaultLibFileName(Lo),writeFile:$a,getCurrentDirectory:()=>m,fileExists:Lo=>e.fileExists(Lo),readFile:Lo=>e.readFile&&e.readFile(Lo),getSymlinkCache:oa(e,e.getSymlinkCache),realpath:oa(e,e.realpath),directoryExists:Lo=>$m(Lo,e),getDirectories:Lo=>e.getDirectories?e.getDirectories(Lo):[],readDirectory:(Lo,cs,Vs,vl,uu)=>(N.checkDefined(e.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'"),e.readDirectory(Lo,cs,Vs,vl,uu)),onReleaseOldSourceFile:Dn,onReleaseParsedCommandLine:xo,hasInvalidatedResolutions:Tt,hasInvalidatedLibResolutions:kt,hasChangedAutomaticTypeDirectiveNames:en,trace:oa(e,e.trace),resolveModuleNames:oa(e,e.resolveModuleNames),getModuleResolutionCache:oa(e,e.getModuleResolutionCache),createHash:oa(e,e.createHash),resolveTypeReferenceDirectives:oa(e,e.resolveTypeReferenceDirectives),resolveModuleNameLiterals:oa(e,e.resolveModuleNameLiterals),resolveTypeReferenceDirectiveReferences:oa(e,e.resolveTypeReferenceDirectiveReferences),resolveLibrary:oa(e,e.resolveLibrary),useSourceOfProjectReferenceRedirect:oa(e,e.useSourceOfProjectReferenceRedirect),getParsedCommandLine:Ii,jsDocParsingMode:e.jsDocParsingMode};const Ni=Hn.getSourceFile,{getSourceFileWithCache:Ai}=Uw(Hn,Lo=>ol(Lo,m,I),(...Lo)=>Ni.call(Hn,...Lo));Hn.getSourceFile=Ai,(J=e.setCompilerHost)==null||J.call(e,Hn);const ir={useCaseSensitiveFileNames:A,fileExists:Lo=>Hn.fileExists(Lo),readFile:Lo=>Hn.readFile(Lo),directoryExists:Lo=>Hn.directoryExists(Lo),getDirectories:Lo=>Hn.getDirectories(Lo),realpath:Hn.realpath,readDirectory:(...Lo)=>Hn.readDirectory(...Lo),trace:Hn.trace,getCurrentDirectory:Hn.getCurrentDirectory,onUnRecoverableConfigFileDiagnostic:$a},jr=t.getKeyForCompilationSettings(ke);let vo=new Set;if(UJ(l,Ge,ke,(Lo,cs)=>e.getScriptVersion(cs),Lo=>Hn.fileExists(Lo),Tt,kt,en,Ii,bn)){Hn=void 0,Bn=void 0,vo=void 0;return}l=A7({rootNames:Ge,options:ke,host:Hn,oldProgram:l,projectReferences:bn}),Hn=void 0,Bn=void 0,vo=void 0,R.clearCache(),l.getTypeChecker();return;function Ii(Lo){const cs=ol(Lo,m,I),Vs=Bn==null?void 0:Bn.get(cs);if(Vs!==void 0)return Vs||void 0;const vl=e.getParsedCommandLine?e.getParsedCommandLine(Lo):Kr(Lo);return(Bn||(Bn=new Map)).set(cs,vl||!1),vl}function Kr(Lo){const cs=Fs(Lo,100);if(cs)return cs.path=ol(Lo,m,I),cs.resolvedPath=cs.path,cs.originalFileName=cs.fileName,hw(cs,ir,go(ai(Lo),m),void 0,go(Lo,m))}function xo(Lo,cs,Vs){var vl;e.getParsedCommandLine?(vl=e.onReleaseParsedCommandLine)==null||vl.call(e,Lo,cs,Vs):cs&&Dn(cs.sourceFile,Vs)}function Dn(Lo,cs){const Vs=t.getKeyForCompilationSettings(cs);t.releaseDocumentWithKey(Lo.resolvedPath,Vs,Lo.scriptKind,Lo.impliedNodeFormat)}function Fs(Lo,cs,Vs,vl){return Ql(Lo,ol(Lo,m,I),cs,Vs,vl)}function Ql(Lo,cs,Vs,vl,uu){N.assert(Hn,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");const ho=e.getScriptSnapshot(Lo);if(!ho)return;const pa=CX(Lo,e),du=e.getScriptVersion(Lo);if(!uu){const As=l&&l.getSourceFileByPath(cs);if(As){if(pa===As.scriptKind||vo.has(As.resolvedPath))return t.updateDocumentWithKey(Lo,cs,e,jr,ho,du,pa,Vs);t.releaseDocumentWithKey(As.resolvedPath,t.getKeyForCompilationSettings(l.getCompilerOptions()),As.scriptKind,As.impliedNodeFormat),vo.add(As.resolvedPath)}}return t.acquireDocumentWithKey(Lo,cs,e,jr,ho,du,pa,Vs)}}function U(){if(o===2){N.assert(l===void 0);return}return C(),l}function K(){var L;return(L=e.getPackageJsonAutoImportProvider)==null?void 0:L.call(e)}function Z(L,_e){const J=l.getTypeChecker(),me=Ge();if(!me)return!1;for(const Tt of L)for(const kt of Tt.references){const en=ke(kt);if(N.assertIsDefined(en),_e.has(kt)||Ws.isDeclarationOfSymbol(en,me)){_e.add(kt),kt.isDefinition=!0;const bn=y5(kt,R,oa(e,e.fileExists));bn&&_e.add(bn)}else kt.isDefinition=!1}return!0;function Ge(){for(const Tt of L)for(const kt of Tt.references){if(_e.has(kt)){const bn=ke(kt);return N.assertIsDefined(bn),J.getSymbolAtLocation(bn)}const en=y5(kt,R,oa(e,e.fileExists));if(en&&_e.has(en)){const bn=ke(en);if(bn)return J.getSymbolAtLocation(bn)}}}function ke(Tt){const kt=l.getSourceFile(Tt.fileName);if(!kt)return;const en=Vd(kt,Tt.textSpan.start);return Ws.Core.getAdjustedNode(en,{use:Ws.FindReferencesUse.References})}}function V(){if(l){const L=t.getKeyForCompilationSettings(l.getCompilerOptions());Ue(l.getSourceFiles(),_e=>t.releaseDocumentWithKey(_e.resolvedPath,L,_e.scriptKind,_e.impliedNodeFormat)),l=void 0}}function se(){V(),e=void 0}function G(L){return C(),l.getSyntacticDiagnostics(M(L),h).slice()}function ne(L){C();const _e=M(L),J=l.getSemanticDiagnostics(_e,h);if(!Nf(l.getCompilerOptions()))return J.slice();const me=l.getDeclarationDiagnostics(_e,h);return[...J,...me]}function he(L){return C(),lY(M(L),l,h)}function ye(){return C(),[...l.getOptionsDiagnostics(h),...l.getGlobalDiagnostics(h)]}function $(L,_e,J=kf,me){const Ge={...J,includeCompletionsForModuleExports:J.includeCompletionsForModuleExports||J.includeExternalModuleExports,includeCompletionsWithInsertText:J.includeCompletionsWithInsertText||J.includeInsertTextCompletions};return C(),GI.getCompletionsAtPosition(e,l,b,M(L),_e,Ge,J.triggerCharacter,J.triggerKind,h,me&&Oc.getFormatContext(me,e),J.includeSymbol)}function Y(L,_e,J,me,Ge,ke=kf,Tt){return C(),GI.getCompletionEntryDetails(l,b,M(L),_e,{name:J,source:Ge,data:Tt},e,me&&Oc.getFormatContext(me,e),ke,h)}function oe(L,_e,J,me,Ge=kf){return C(),GI.getCompletionEntrySymbol(l,b,M(L),_e,{name:J,source:me},e,Ge)}function fe(L,_e){C();const J=M(L),me=Vd(J,_e);if(me===J)return;const Ge=l.getTypeChecker(),ke=Ne(me),Tt=m$e(ke,Ge);if(!Tt||Ge.isUnknownSymbol(Tt)){const Hn=pe(J,ke,_e)?Ge.getTypeAtLocation(ke):void 0;return Hn&&{kind:"",kindModifiers:"",textSpan:Nd(ke,J),displayParts:Ge.runWithCancellationToken(h,Ni=>yO(Ni,Hn,aT(ke))),documentation:Hn.symbol?Hn.symbol.getDocumentationComment(Ge):void 0,tags:Hn.symbol?Hn.symbol.getJsDocTags(Ge):void 0}}const{symbolKind:kt,displayParts:en,documentation:bn,tags:Bn}=Ge.runWithCancellationToken(h,Hn=>iy.getSymbolDisplayPartsDocumentationAndSymbolKind(Hn,Tt,J,aT(ke),ke));return{kind:kt,kindModifiers:iy.getSymbolModifiers(Ge,Tt),textSpan:Nd(ke,J),displayParts:en,documentation:bn,tags:Bn}}function Ne(L){return r1(L.parent)&&L.pos===L.parent.pos?L.parent.expression:qR(L.parent)&&L.pos===L.parent.pos||dR(L.parent)&&L.parent.name===L||t_(L.parent)?L.parent:L}function pe(L,_e,J){switch(_e.kind){case 80:return!$K(_e)&&!QK(_e)&&!Og(_e.parent);case 211:case 166:return!Qv(L,J);case 110:case 197:case 108:case 202:return!0;case 236:return dR(_e);default:return!1}}function ie(L,_e,J,me){return C(),UD.getDefinitionAtPosition(l,M(L),_e,J,me)}function ve(L,_e){return C(),UD.getDefinitionAndBoundSpan(l,M(L),_e)}function Le(L,_e){return C(),UD.getTypeDefinitionAtPosition(l.getTypeChecker(),M(L),_e)}function He(L,_e){return C(),Ws.getImplementationsAtPosition(l,h,l.getSourceFiles(),M(L),_e)}function Ee(L,_e,J){const me=ga(L);N.assert(J.some(Tt=>ga(Tt)===me)),C();const Ge=Hi(J,Tt=>l.getSourceFile(Tt)),ke=M(L);return G5.getDocumentHighlights(l,h,ke,_e,Ge)}function De(L,_e,J,me,Ge){C();const ke=M(L),Tt=o5(Vd(ke,_e));if(zz.nodeIsEligibleForRename(Tt))if(Ve(Tt)&&(W_(Tt.parent)||a1(Tt.parent))&&DR(Tt.escapedText)){const{openingElement:kt,closingElement:en}=Tt.parent.parent;return[kt,en].map(bn=>{const Bn=Nd(bn.tagName,ke);return{fileName:ke.fileName,textSpan:Bn,...Ws.toContextSpan(Bn,ke,bn.parent)}})}else{const kt=uf(ke,Ge??kf),en=typeof Ge=="boolean"?Ge:Ge==null?void 0:Ge.providePrefixAndSuffixTextForRename;return We(Tt,_e,{findInStrings:J,findInComments:me,providePrefixAndSuffixTextForRename:en,use:Ws.FindReferencesUse.Rename},(bn,Bn,Hn)=>Ws.toRenameLocation(bn,Bn,Hn,en||!1,kt))}}function Pe(L,_e){return C(),We(Vd(M(L),_e),_e,{use:Ws.FindReferencesUse.References},Ws.toReferenceEntry)}function We(L,_e,J,me){C();const Ge=J&&J.use===Ws.FindReferencesUse.Rename?l.getSourceFiles().filter(ke=>!l.isSourceFileDefaultLibrary(ke)):l.getSourceFiles();return Ws.findReferenceOrRenameEntries(l,h,Ge,L,_e,J,me)}function At(L,_e){return C(),Ws.findReferencedSymbols(l,h,l.getSourceFiles(),M(L),_e)}function Se(L){return C(),Ws.Core.getReferencesForFileName(L,l,l.getSourceFiles()).map(Ws.toReferenceEntry)}function je(L,_e,J,me=!1,Ge=!1){C();const ke=J?[M(J)]:l.getSourceFiles();return gNe(ke,l.getTypeChecker(),h,L,_e,me,Ge)}function at(L,_e,J){C();const me=M(L),Ge=e.getCustomTransformers&&e.getCustomTransformers();return xce(l,me,!!_e,h,Ge,J)}function Gt(L,_e,{triggerReason:J}=kf){C();const me=M(L);return o8.getSignatureHelpItems(l,me,_e,J,h)}function vt(L){return s.getCurrentSourceFile(L)}function $e(L,_e,J){const me=s.getCurrentSourceFile(L),Ge=Vd(me,_e);if(Ge===me)return;switch(Ge.kind){case 211:case 166:case 11:case 97:case 112:case 106:case 108:case 110:case 197:case 80:break;default:return}let ke=Ge;for(;;)if(AD(ke)||xue(ke))ke=ke.parent;else if(eX(ke))if(ke.parent.parent.kind===267&&ke.parent.parent.body===ke.parent)ke=ke.parent.parent.name;else break;else break;return pc(ke.getStart(),Ge.getEnd())}function It(L,_e){const J=s.getCurrentSourceFile(L);return ZY.spanInSourceFileAtLocation(J,_e)}function tn(L){return ENe(s.getCurrentSourceFile(L),h)}function rn(L){return SNe(s.getCurrentSourceFile(L),h)}function Pn(L,_e,J){return C(),(J||"original")==="2020"?GCe(l,h,M(L),_e):_de(l.getTypeChecker(),h,M(L),l.getClassifiableNames(),_e)}function Xn(L,_e,J){return C(),(J||"original")==="original"?tY(l.getTypeChecker(),h,M(L),l.getClassifiableNames(),_e):Npe(l,h,M(L),_e)}function hn(L,_e){return hde(h,s.getCurrentSourceFile(L),_e)}function Qt(L,_e){return nY(h,s.getCurrentSourceFile(L),_e)}function $t(L){const _e=s.getCurrentSourceFile(L);return XQ.collectElements(_e,h)}const _i=new Map(Object.entries({19:20,21:22,23:24,32:30}));_i.forEach((L,_e)=>_i.set(L.toString(),Number(_e)));function ao(L,_e){const J=s.getCurrentSourceFile(L),me=xD(J,_e),Ge=me.getStart(J)===_e?_i.get(me.kind.toString()):void 0,ke=Ge&&vs(me.parent,Ge,J);return ke?[Nd(me,J),Nd(ke,J)].sort((Tt,kt)=>Tt.start-kt.start):et}function Oi(L,_e,J){let me=Ys();const Ge=VO(J),ke=s.getCurrentSourceFile(L);b("getIndentationAtPosition: getCurrentSourceFile: "+(Ys()-me)),me=Ys();const Tt=Oc.SmartIndenter.getIndentation(_e,ke,Ge);return b("getIndentationAtPosition: computeIndentation : "+(Ys()-me)),Tt}function No(L,_e,J,me){const Ge=s.getCurrentSourceFile(L);return Oc.formatSelection(_e,J,Ge,Oc.getFormatContext(VO(me),e))}function Mn(L,_e){return Oc.formatDocument(s.getCurrentSourceFile(L),Oc.getFormatContext(VO(_e),e))}function Di(L,_e,J,me){const Ge=s.getCurrentSourceFile(L),ke=Oc.getFormatContext(VO(me),e);if(!Qv(Ge,_e))switch(J){case"{":return Oc.formatOnOpeningCurly(_e,Ge,ke);case"}":return Oc.formatOnClosingCurly(_e,Ge,ke);case";":return Oc.formatOnSemicolon(_e,Ge,ke);case`
+`:return Oc.formatOnEnter(_e,Ge,ke)}return[]}function Ar(L,_e,J,me,Ge,ke=kf){C();const Tt=M(L),kt=pc(_e,J),en=Oc.getFormatContext(Ge,e);return Pi(DE(me,Mv,rl),bn=>(h.throwIfCancellationRequested(),Fu.getFixes({errorCode:bn,sourceFile:Tt,span:kt,program:l,host:e,cancellationToken:h,formatContext:en,preferences:ke})))}function sn(L,_e,J,me=kf){C(),N.assert(L.type==="file");const Ge=M(L.fileName),ke=Oc.getFormatContext(J,e);return Fu.getAllFixes({fixId:_e,sourceFile:Ge,program:l,host:e,cancellationToken:h,formatContext:ke,preferences:me})}function tt(L,_e,J=kf){C(),N.assert(L.type==="file");const me=M(L.fileName),Ge=Oc.getFormatContext(_e,e),ke=L.mode??(L.skipDestructiveCodeActions?"SortAndCombine":"All");return Lm.organizeImports(me,Ge,e,l,J,ke)}function zt(L,_e,J,me=kf){return yde(U(),L,_e,e,Oc.getFormatContext(J,e),me,R)}function Rn(L,_e){const J=typeof L=="string"?_e:L;return To(J)?Promise.all(J.map(me=>li(me))):li(J)}function li(L){const _e=J=>ol(J,m,I);return N.assertEqual(L.type,"install package"),e.installPackage?e.installPackage({fileName:_e(L.file),packageName:L.packageName}):Promise.reject("Host does not implement `installPackage`")}function hi(L,_e,J,me){const Ge=me?Oc.getFormatContext(me,e).options:void 0;return G0.getDocCommentTemplateAtPosition(ty(e,Ge),s.getCurrentSourceFile(L),_e,J)}function Qi(L,_e,J){if(J===60)return!1;const me=s.getCurrentSourceFile(L);if(CI(me,_e))return!1;if(Lue(me,_e))return J===123;if(aX(me,_e))return!1;switch(J){case 39:case 34:case 96:return!Qv(me,_e)}return!0}function Io(L,_e){const J=s.getCurrentSourceFile(L),me=xc(_e,J);if(!me)return;const Ge=me.kind===32&&W_(me.parent)?me.parent.parent:nI(me)&&dg(me.parent)?me.parent:void 0;if(Ge&&ft(Ge))return{newText:`</${Ge.openingElement.tagName.getText(J)}>`};const ke=me.kind===32&&hI(me.parent)?me.parent.parent:nI(me)&&s1(me.parent)?me.parent:void 0;if(ke&&Ct(ke))return{newText:"</>"}}function ma(L,_e){const J=s.getCurrentSourceFile(L),me=xc(_e,J);if(!me||me.parent.kind===312)return;const Ge="[a-zA-Z0-9:\\-\\._$]*";if(s1(me.parent.parent)){const ke=me.parent.parent.openingFragment,Tt=me.parent.parent.closingFragment;if(aR(ke)||aR(Tt))return;const kt=ke.getStart(J)+1,en=Tt.getStart(J)+2;return _e!==kt&&_e!==en?void 0:{ranges:[{start:kt,length:0},{start:en,length:0}],wordPattern:Ge}}else{const ke=Gn(me.parent,Ai=>!!(W_(Ai)||a1(Ai)));if(!ke)return;N.assert(W_(ke)||a1(ke),"tag should be opening or closing element");const Tt=ke.parent.openingElement,kt=ke.parent.closingElement,en=Tt.tagName.getStart(J),bn=Tt.tagName.end,Bn=kt.tagName.getStart(J),Hn=kt.tagName.end;return en===Tt.getStart(J)||Bn===kt.getStart(J)||bn===Tt.getEnd()||Hn===kt.getEnd()||!(en<=_e&&_e<=bn||Bn<=_e&&_e<=Hn)||Tt.tagName.getText(J)!==kt.tagName.getText(J)?void 0:{ranges:[{start:en,length:bn-en},{start:Bn,length:Hn-Bn}],wordPattern:Ge}}}function Wa(L,_e){return{lineStarts:L.getLineStarts(),firstLine:L.getLineAndCharacterOfPosition(_e.pos).line,lastLine:L.getLineAndCharacterOfPosition(_e.end).line}}function Sn(L,_e,J){const me=s.getCurrentSourceFile(L),Ge=[],{lineStarts:ke,firstLine:Tt,lastLine:kt}=Wa(me,_e);let en=J||!1,bn=Number.MAX_VALUE;const Bn=new Map,Hn=new RegExp(/\S/),Ni=l5(me,ke[Tt]),Ai=Ni?"{/*":"//";for(let ir=Tt;ir<=kt;ir++){const jr=me.text.substring(ke[ir],me.getLineEndOfPosition(ke[ir])),vo=Hn.exec(jr);vo&&(bn=Math.min(bn,vo.index),Bn.set(ir.toString(),vo.index),jr.substr(vo.index,Ai.length)!==Ai&&(en=J===void 0||J))}for(let ir=Tt;ir<=kt;ir++){if(Tt!==kt&&ke[ir]===_e.end)continue;const jr=Bn.get(ir.toString());jr!==void 0&&(Ni?Ge.push(...kn(L,{pos:ke[ir]+bn,end:me.getLineEndOfPosition(ke[ir])},en,Ni)):en?Ge.push({newText:Ai,span:{length:0,start:ke[ir]+bn}}):me.text.substr(ke[ir]+jr,Ai.length)===Ai&&Ge.push({newText:"",span:{length:Ai.length,start:ke[ir]+jr}}))}return Ge}function kn(L,_e,J,me){var Ge;const ke=s.getCurrentSourceFile(L),Tt=[],{text:kt}=ke;let en=!1,bn=J||!1;const Bn=[];let{pos:Hn}=_e;const Ni=me!==void 0?me:l5(ke,Hn),Ai=Ni?"{/*":"/*",ir=Ni?"*/}":"*/",jr=Ni?"\\{\\/\\*":"\\/\\*",vo=Ni?"\\*\\/\\}":"\\*\\/";for(;Hn<=_e.end;){const Ci=kt.substr(Hn,Ai.length)===Ai?Ai.length:0,Ii=Qv(ke,Hn+Ci);if(Ii)Ni&&(Ii.pos--,Ii.end++),Bn.push(Ii.pos),Ii.kind===3&&Bn.push(Ii.end),en=!0,Hn=Ii.end+1;else{const Kr=kt.substring(Hn,_e.end).search(`(${jr})|(${vo})`);bn=J!==void 0?J:bn||!Hue(kt,Hn,Kr===-1?_e.end:Hn+Kr),Hn=Kr===-1?_e.end+1:Hn+Kr+ir.length}}if(bn||!en){((Ge=Qv(ke,_e.pos))==null?void 0:Ge.kind)!==2&&xy(Bn,_e.pos,rl),xy(Bn,_e.end,rl);const Ci=Bn[0];kt.substr(Ci,Ai.length)!==Ai&&Tt.push({newText:Ai,span:{length:0,start:Ci}});for(let Ii=1;Ii<Bn.length-1;Ii++)kt.substr(Bn[Ii]-ir.length,ir.length)!==ir&&Tt.push({newText:ir,span:{length:0,start:Bn[Ii]}}),kt.substr(Bn[Ii],Ai.length)!==Ai&&Tt.push({newText:Ai,span:{length:0,start:Bn[Ii]}});Tt.length%2!==0&&Tt.push({newText:ir,span:{length:0,start:Bn[Bn.length-1]}})}else for(const Ci of Bn){const Ii=Ci-ir.length>0?Ci-ir.length:0,Kr=kt.substr(Ii,ir.length)===ir?ir.length:0;Tt.push({newText:"",span:{length:Ai.length,start:Ci-Kr}})}return Tt}function qe(L,_e){const J=s.getCurrentSourceFile(L),{firstLine:me,lastLine:Ge}=Wa(J,_e);return me===Ge&&_e.pos!==_e.end?kn(L,_e,!0):Sn(L,_e,!0)}function mt(L,_e){const J=s.getCurrentSourceFile(L),me=[],{pos:Ge}=_e;let{end:ke}=_e;Ge===ke&&(ke+=l5(J,Ge)?2:1);for(let Tt=Ge;Tt<=ke;Tt++){const kt=Qv(J,Tt);if(kt){switch(kt.kind){case 2:me.push(...Sn(L,{end:kt.end,pos:kt.pos+1},!1));break;case 3:me.push(...kn(L,{end:kt.end,pos:kt.pos+1},!1))}Tt=kt.end+1}}return me}function ft({openingElement:L,closingElement:_e,parent:J}){return!C0(L.tagName,_e.tagName)||dg(J)&&C0(L.tagName,J.openingElement.tagName)&&ft(J)}function Ct({closingFragment:L,parent:_e}){return!!(L.flags&262144)||s1(_e)&&Ct(_e)}function le(L,_e,J){const me=s.getCurrentSourceFile(L),Ge=Oc.getRangeOfEnclosingComment(me,_e);return Ge&&(!J||Ge.kind===3)?sb(Ge):void 0}function Fe(L,_e){C();const J=M(L);h.throwIfCancellationRequested();const me=J.text,Ge=[];if(_e.length>0&&!en(J.fileName)){const bn=Tt();let Bn;for(;Bn=bn.exec(me);){h.throwIfCancellationRequested();const Hn=3;N.assert(Bn.length===_e.length+Hn);const Ni=Bn[1],Ai=Bn.index+Ni.length;if(!Qv(J,Ai))continue;let ir;for(let vo=0;vo<_e.length;vo++)Bn[vo+Hn]&&(ir=_e[vo]);if(ir===void 0)return N.fail();if(kt(me.charCodeAt(Ai+ir.text.length)))continue;const jr=Bn[2];Ge.push({descriptor:ir,message:jr,position:Ai})}}return Ge;function ke(bn){return bn.replace(/[-[\]/{}()*+?.\\^$|]/g,"\\$&")}function Tt(){const bn=/(?:\/\/+\s*)/.source,Bn=/(?:\/\*+\s*)/.source,Ni="("+/(?:^(?:\s|\*)*)/.source+"|"+bn+"|"+Bn+")",Ai="(?:"+wt(_e,Ii=>"("+ke(Ii.text)+")").join("|")+")",ir=/(?:$|\*\/)/.source,jr=/(?:.*?)/.source,vo="("+Ai+jr+")",Ci=Ni+vo+ir;return new RegExp(Ci,"gim")}function kt(bn){return bn>=97&&bn<=122||bn>=65&&bn<=90||bn>=48&&bn<=57}function en(bn){return bn.includes("/node_modules/")}}function pt(L,_e,J){return C(),zz.getRenameInfo(l,M(L),_e,J||{})}function j(L,_e,J,me,Ge,ke){const[Tt,kt]=typeof _e=="number"?[_e,void 0]:[_e.pos,_e.end];return{file:L,startPosition:Tt,endPosition:kt,program:U(),host:e,formatContext:Oc.getFormatContext(me,e),cancellationToken:h,preferences:J,triggerReason:Ge,kind:ke}}function ot(L,_e,J){return{file:L,program:U(),host:e,span:_e,preferences:J,cancellationToken:h}}function Rt(L,_e){return QQ.getSmartSelectionRange(_e,s.getCurrentSourceFile(L))}function Ye(L,_e,J=kf,me,Ge,ke){C();const Tt=M(L);return wI.getApplicableRefactors(j(Tt,_e,J,kf,me,Ge),ke)}function _t(L,_e,J=kf){C();const me=M(L),Ge=N.checkDefined(l.getSourceFiles()),ke=QC(L),Tt=OO(j(me,_e,J,kf)),kt=ape(Tt==null?void 0:Tt.all),en=Hi(Ge,bn=>{const Bn=QC(bn.fileName);return!(l!=null&&l.isSourceFileFromExternalLibrary(me))&&!(me===M(bn.fileName)||ke===".ts"&&Bn===".d.ts"||ke===".d.ts"&&uo(ic(bn.fileName),"lib.")&&Bn===".d.ts")&&(ke===Bn||(ke===".tsx"&&Bn===".ts"||ke===".jsx"&&Bn===".js")&&!kt)?bn.fileName:void 0});return{newFileName:ope(me,l,e,Tt),files:en}}function Vt(L,_e,J,me,Ge,ke=kf,Tt){C();const kt=M(L);return wI.getEditsForRefactor(j(kt,J,ke,_e),me,Ge,Tt)}function vn(L,_e){return _e===0?{line:0,character:0}:R.toLineColumnOffset(L,_e)}function fn(L,_e){C();const J=OI.resolveCallHierarchyDeclaration(l,Vd(M(L),_e));return J&&GX(J,me=>OI.createCallHierarchyItem(l,me))}function _n(L,_e){C();const J=M(L),me=VX(OI.resolveCallHierarchyDeclaration(l,_e===0?J:Vd(J,_e)));return me?OI.getIncomingCalls(l,me,h):[]}function q(L,_e){C();const J=M(L),me=VX(OI.resolveCallHierarchyDeclaration(l,_e===0?J:Vd(J,_e)));return me?OI.getOutgoingCalls(l,me):[]}function Oe(L,_e,J=kf){C();const me=M(L);return HQ.provideInlayHints(ot(me,_e,J))}const Lt={dispose:se,cleanupSemanticCache:V,getSyntacticDiagnostics:G,getSemanticDiagnostics:ne,getSuggestionDiagnostics:he,getCompilerOptionsDiagnostics:ye,getSyntacticClassifications:hn,getSemanticClassifications:Pn,getEncodedSyntacticClassifications:Qt,getEncodedSemanticClassifications:Xn,getCompletionsAtPosition:$,getCompletionEntryDetails:Y,getCompletionEntrySymbol:oe,getSignatureHelpItems:Gt,getQuickInfoAtPosition:fe,getDefinitionAtPosition:ie,getDefinitionAndBoundSpan:ve,getImplementationAtPosition:He,getTypeDefinitionAtPosition:Le,getReferencesAtPosition:Pe,findReferences:At,getFileReferences:Se,getDocumentHighlights:Ee,getNameOrDottedNameSpan:$e,getBreakpointStatementAtPosition:It,getNavigateToItems:je,getRenameInfo:pt,getSmartSelectionRange:Rt,findRenameLocations:De,getNavigationBarItems:tn,getNavigationTree:rn,getOutliningSpans:$t,getTodoComments:Fe,getBraceMatchingAtPosition:ao,getIndentationAtPosition:Oi,getFormattingEditsForRange:No,getFormattingEditsForDocument:Mn,getFormattingEditsAfterKeystroke:Di,getDocCommentTemplateAtPosition:hi,isValidBraceCompletionAtPosition:Qi,getJsxClosingTagAtPosition:Io,getLinkedEditingRangeAtPosition:ma,getSpanOfEnclosingComment:le,getCodeFixesAtPosition:Ar,getCombinedCodeFix:sn,applyCodeActionCommand:Rn,organizeImports:tt,getEditsForFileRename:zt,getEmitOutput:at,getNonBoundSourceFile:vt,getProgram:U,getCurrentProgram:()=>l,getAutoImportProvider:K,updateIsDefinitionOfReferencedSymbols:Z,getApplicableRefactors:Ye,getEditsForRefactor:Vt,getMoveToRefactoringFileSuggestions:_t,toLineColumnOffset:vn,getSourceMapper:()=>R,clearSourceMapperCache:()=>R.clearCache(),prepareCallHierarchy:fn,provideCallHierarchyIncomingCalls:_n,provideCallHierarchyOutgoingCalls:q,toggleLineComment:Sn,toggleMultilineComment:kn,commentSelection:qe,uncommentSelection:mt,provideInlayHints:Oe,getSupportedCodeFixes:HY};switch(o){case 0:break;case 1:Fpe.forEach(L=>Lt[L]=()=>{throw new Error(`LanguageService Operation: ${L} not allowed in LanguageServiceMode.PartialSemantic`)});break;case 2:iPe.forEach(L=>Lt[L]=()=>{throw new Error(`LanguageService Operation: ${L} not allowed in LanguageServiceMode.Syntactic`)});break;default:N.assertNever(o)}return Lt}function JY(e){return e.nameTable||d$e(e),e.nameTable}function d$e(e){const t=e.nameTable=new Map;e.forEachChild(function r(i){if(Ve(i)&&!QK(i)&&i.escapedText||nf(i)&&p$e(i)){const o=LC(i);t.set(o,t.get(o)===void 0?i.pos:-1)}else if(Ji(i)){const o=i.escapedText;t.set(o,t.get(o)===void 0?i.pos:-1)}if(Ho(i,r),Fp(i))for(const o of i.jsDoc)Ho(o,r)})}function p$e(e){return Bg(e)||e.parent.kind===283||_$e(e)||ik(e)}function UO(e){const t=f$e(e);return t&&(Oa(t.parent)||l1(t.parent))?t:void 0}function f$e(e){switch(e.kind){case 11:case 15:case 9:if(e.parent.kind===167)return fj(e.parent.parent)?e.parent.parent:void 0;case 80:return fj(e.parent)&&(e.parent.parent.kind===210||e.parent.parent.kind===292)&&e.parent.name===e?e.parent:void 0}}function m$e(e,t){const r=UO(e);if(r){const i=t.getContextualType(r.parent),o=i&&fz(r,t,i,!1);if(o&&o.length===1)return Ha(o)}return t.getSymbolAtLocation(e)}function fz(e,t,r,i){const o=hO(e.name);if(!o)return et;if(!r.isUnion()){const u=r.getProperty(o);return u?[u]:et}const s=Oa(e.parent)||l1(e.parent)?nr(r.types,u=>!t.isTypeInvalidDueToUnionDiscriminant(u,e.parent)):r.types,l=Hi(s,u=>u.getProperty(o));if(i&&(l.length===0||l.length===r.types.length)){const u=r.getProperty(o);if(u)return[u]}return!s.length&&!l.length?Hi(r.types,u=>u.getProperty(o)):DE(l,Mv)}function _$e(e){return e&&e.parent&&e.parent.kind===212&&e.parent.argumentExpression===e}function wpe(e){if(gu)return Qr(ai(ga(gu.getExecutingFilePath())),aL(e));throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}var Ope,KY,XY,YCe,Wpe,YY,$Y,$Ce,QCe,ZCe,ePe,tPe,nPe,rPe,QY,Fpe,iPe,h$e=T({"src/services/services.ts"(){si(),bNe(),GNe(),Dh(),YDe(),UCe(),Ope="0.8",KY=class{constructor(e,t,r){this.pos=t,this.end=r,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0,this.kind=e}assertHasRealPosition(e){N.assert(!Zm(this.pos)&&!Zm(this.end),e||"Node must have a real position for this operation")}getSourceFile(){return jn(this)}getStart(e,t){return this.assertHasRealPosition(),_0(this,e,t)}getFullStart(){return this.assertHasRealPosition(),this.pos}getEnd(){return this.assertHasRealPosition(),this.end}getWidth(e){return this.assertHasRealPosition(),this.getEnd()-this.getStart(e)}getFullWidth(){return this.assertHasRealPosition(),this.end-this.pos}getLeadingTriviaWidth(e){return this.assertHasRealPosition(),this.getStart(e)-this.pos}getFullText(e){return this.assertHasRealPosition(),(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return this.assertHasRealPosition(),e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(e){return this.getChildren(e).length}getChildAt(e,t){return this.getChildren(t)[e]}getChildren(e){return this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine"),this._children||(this._children=l$e(this,e))}getFirstToken(e){this.assertHasRealPosition();const t=this.getChildren(e);if(!t.length)return;const r=An(t,i=>i.kind<316||i.kind>357);return r.kind<166?r:r.getFirstToken(e)}getLastToken(e){this.assertHasRealPosition();const t=this.getChildren(e),r=tl(t);if(r)return r.kind<166?r:r.getLastToken(e)}forEachChild(e,t){return Ho(this,e,t)}},XY=class{constructor(e,t){this.pos=e,this.end=t,this.flags=0,this.modifierFlagsCache=0,this.transformFlags=0,this.parent=void 0}getSourceFile(){return jn(this)}getStart(e,t){return _0(this,e,t)}getFullStart(){return this.pos}getEnd(){return this.end}getWidth(e){return this.getEnd()-this.getStart(e)}getFullWidth(){return this.end-this.pos}getLeadingTriviaWidth(e){return this.getStart(e)-this.pos}getFullText(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)}getText(e){return e||(e=this.getSourceFile()),e.text.substring(this.getStart(e),this.getEnd())}getChildCount(){return this.getChildren().length}getChildAt(e){return this.getChildren()[e]}getChildren(){return this.kind===1&&this.jsDoc||et}getFirstToken(){}getLastToken(){}forEachChild(){}},YCe=class{constructor(e,t){this.id=0,this.mergeId=0,this.flags=e,this.escapedName=t}getFlags(){return this.flags}get name(){return Sl(this)}getEscapedName(){return this.escapedName}getName(){return this.name}getDeclarations(){return this.declarations}getDocumentationComment(e){if(!this.documentationComment)if(this.documentationComment=et,!this.declarations&&mh(this)&&this.links.target&&mh(this.links.target)&&this.links.target.links.tupleLabelDeclaration){const t=this.links.target.links.tupleLabelDeclaration;this.documentationComment=uz([t],e)}else this.documentationComment=uz(this.declarations,e);return this.documentationComment}getContextualDocumentationComment(e,t){if(e){if(Fy(e)&&(this.contextualGetAccessorDocumentationComment||(this.contextualGetAccessorDocumentationComment=uz(nr(this.declarations,Fy),t)),Me(this.contextualGetAccessorDocumentationComment)))return this.contextualGetAccessorDocumentationComment;if(Fv(e)&&(this.contextualSetAccessorDocumentationComment||(this.contextualSetAccessorDocumentationComment=uz(nr(this.declarations,Fv),t)),Me(this.contextualSetAccessorDocumentationComment)))return this.contextualSetAccessorDocumentationComment}return this.getDocumentationComment(t)}getJsDocTags(e){return this.tags===void 0&&(this.tags=UY(this.declarations,e)),this.tags}getContextualJsDocTags(e,t){if(e){if(Fy(e)&&(this.contextualGetAccessorTags||(this.contextualGetAccessorTags=UY(nr(this.declarations,Fy),t)),Me(this.contextualGetAccessorTags)))return this.contextualGetAccessorTags;if(Fv(e)&&(this.contextualSetAccessorTags||(this.contextualSetAccessorTags=UY(nr(this.declarations,Fv),t)),Me(this.contextualSetAccessorTags)))return this.contextualSetAccessorTags}return this.getJsDocTags(t)}},Wpe=class extends XY{constructor(e,t,r){super(t,r),this.kind=e}},YY=class extends XY{constructor(e,t,r){super(t,r),this.kind=80}get text(){return Sr(this)}},YY.prototype.kind=80,$Y=class extends XY{constructor(e,t,r){super(t,r),this.kind=81}get text(){return Sr(this)}},$Y.prototype.kind=81,$Ce=class{constructor(e,t){this.checker=e,this.flags=t}getFlags(){return this.flags}getSymbol(){return this.symbol}getProperties(){return this.checker.getPropertiesOfType(this)}getProperty(e){return this.checker.getPropertyOfType(this,e)}getApparentProperties(){return this.checker.getAugmentedPropertiesOfType(this)}getCallSignatures(){return this.checker.getSignaturesOfType(this,0)}getConstructSignatures(){return this.checker.getSignaturesOfType(this,1)}getStringIndexType(){return this.checker.getIndexTypeOfType(this,0)}getNumberIndexType(){return this.checker.getIndexTypeOfType(this,1)}getBaseTypes(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):void 0}isNullableType(){return this.checker.isNullableType(this)}getNonNullableType(){return this.checker.getNonNullableType(this)}getNonOptionalType(){return this.checker.getNonOptionalType(this)}getConstraint(){return this.checker.getBaseConstraintOfType(this)}getDefault(){return this.checker.getDefaultFromTypeParameter(this)}isUnion(){return!!(this.flags&1048576)}isIntersection(){return!!(this.flags&2097152)}isUnionOrIntersection(){return!!(this.flags&3145728)}isLiteral(){return!!(this.flags&2432)}isStringLiteral(){return!!(this.flags&128)}isNumberLiteral(){return!!(this.flags&256)}isTypeParameter(){return!!(this.flags&262144)}isClassOrInterface(){return!!(Wr(this)&3)}isClass(){return!!(Wr(this)&1)}isIndexType(){return!!(this.flags&4194304)}get typeArguments(){if(Wr(this)&4)return this.checker.getTypeArguments(this)}},QCe=class{constructor(e,t){this.checker=e,this.flags=t}getDeclaration(){return this.declaration}getTypeParameters(){return this.typeParameters}getParameters(){return this.parameters}getReturnType(){return this.checker.getReturnTypeOfSignature(this)}getTypeParameterAtPosition(e){const t=this.checker.getParameterType(this,e);if(t.isIndexType()&&oP(t.type)){const r=t.type.getConstraint();if(r)return this.checker.getIndexType(r)}return t}getDocumentationComment(){return this.documentationComment||(this.documentationComment=uz(AA(this.declaration),this.checker))}getJsDocTags(){return this.jsDocTags||(this.jsDocTags=UY(AA(this.declaration),this.checker))}},ZCe=class extends KY{constructor(e,t,r){super(e,t,r),this.kind=312}update(e,t){return iq(this,e,t)}getLineAndCharacterOfPosition(e){return bs(this,e)}getLineStarts(){return kg(this)}getPositionOfLineAndCharacter(e,t,r){return m4(kg(this),e,t,this.text,r)}getLineEndOfPosition(e){const{line:t}=this.getLineAndCharacterOfPosition(e),r=this.getLineStarts();let i;t+1>=r.length&&(i=this.getEnd()),i||(i=r[t+1]-1);const o=this.getFullText();return o[i]===`
+`&&o[i-1]==="\r"?i-1:i}getNamedDeclarations(){return this.namedDeclarations||(this.namedDeclarations=this.computeNamedDeclarations()),this.namedDeclarations}computeNamedDeclarations(){const e=Zp();return this.forEachChild(o),e;function t(s){const l=i(s);l&&e.add(l,s)}function r(s){let l=e.get(s);return l||e.set(s,l=[]),l}function i(s){const l=y4(s);return l&&(Za(l)&&Fr(l.expression)?l.expression.name.text:oc(l)?hO(l):void 0)}function o(s){switch(s.kind){case 262:case 218:case 174:case 173:const l=s,u=i(l);if(u){const m=r(u),b=tl(m);b&&l.parent===b.parent&&l.symbol===b.symbol?l.body&&!b.body&&(m[m.length-1]=l):m.push(l)}Ho(s,o);break;case 263:case 231:case 264:case 265:case 266:case 267:case 271:case 281:case 276:case 273:case 274:case 177:case 178:case 187:t(s),Ho(s,o);break;case 169:if(!Zr(s,31))break;case 260:case 208:{const m=s;if(ta(m.name)){Ho(m.name,o);break}m.initializer&&o(m.initializer)}case 306:case 172:case 171:t(s);break;case 278:const p=s;p.exportClause&&(Pf(p.exportClause)?Ue(p.exportClause.elements,o):o(p.exportClause.name));break;case 272:const h=s.importClause;h&&(h.name&&t(h.name),h.namedBindings&&(h.namedBindings.kind===274?t(h.namedBindings):Ue(h.namedBindings.elements,o)));break;case 226:Bl(s)!==0&&t(s);default:Ho(s,o)}}}},ePe=class{constructor(e,t,r){this.fileName=e,this.text=t,this.skipTrivia=r}getLineAndCharacterOfPosition(e){return bs(this,e)}},tPe=class{constructor(e){this.host=e}getCurrentSourceFile(e){var t,r,i,o,s,l,u,p;const h=this.host.getScriptSnapshot(e);if(!h)throw new Error("Could not find file: '"+e+"'.");const m=CX(e,this.host),b=this.host.getScriptVersion(e);let A;if(this.currentFileName!==e){const I={languageVersion:99,impliedNodeFormat:Jw(ol(e,this.host.getCurrentDirectory(),((i=(r=(t=this.host).getCompilerHost)==null?void 0:r.call(t))==null?void 0:i.getCanonicalFileName)||Gv(this.host)),(p=(u=(l=(s=(o=this.host).getCompilerHost)==null?void 0:s.call(o))==null?void 0:l.getModuleResolutionCache)==null?void 0:u.call(l))==null?void 0:p.getPackageJsonInfoCache(),this.host,this.host.getCompilationSettings()),setExternalModuleIndicator:bk(this.host.getCompilationSettings()),jsDocParsingMode:0};A=pz(e,h,I,b,!0,m)}else if(this.currentFileVersion!==b){const I=h.getChangeRange(this.currentFileScriptSnapshot);A=qY(this.currentSourceFile,h,b,I)}return A&&(this.currentFileVersion=b,this.currentFileName=e,this.currentFileScriptSnapshot=h,this.currentSourceFile=A),this.currentSourceFile}},nPe={isCancellationRequested:Xm,throwIfCancellationRequested:$a},rPe=class{constructor(e){this.cancellationToken=e}isCancellationRequested(){return this.cancellationToken.isCancellationRequested()}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw(e=sr)==null||e.instant(sr.Phase.Session,"cancellationThrown",{kind:"CancellationTokenObject"}),new Hx}},QY=class{constructor(e,t=20){this.hostCancellationToken=e,this.throttleWaitMilliseconds=t,this.lastCancellationCheckTime=0}isCancellationRequested(){const e=Ys();return Math.abs(e-this.lastCancellationCheckTime)>=this.throttleWaitMilliseconds?(this.lastCancellationCheckTime=e,this.hostCancellationToken.isCancellationRequested()):!1}throwIfCancellationRequested(){var e;if(this.isCancellationRequested())throw(e=sr)==null||e.instant(sr.Phase.Session,"cancellationThrown",{kind:"ThrottledCancellationToken"}),new Hx}},Fpe=["getSemanticDiagnostics","getSuggestionDiagnostics","getCompilerOptionsDiagnostics","getSemanticClassifications","getEncodedSemanticClassifications","getCodeFixesAtPosition","getCombinedCodeFix","applyCodeActionCommand","organizeImports","getEditsForFileRename","getEmitOutput","getApplicableRefactors","getEditsForRefactor","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls","provideInlayHints","getSupportedCodeFixes"],iPe=[...Fpe,"getCompletionsAtPosition","getCompletionEntryDetails","getCompletionEntrySymbol","getSignatureHelpItems","getQuickInfoAtPosition","getDefinitionAtPosition","getDefinitionAndBoundSpan","getImplementationAtPosition","getTypeDefinitionAtPosition","getReferencesAtPosition","findReferences","getDocumentHighlights","getNavigateToItems","getRenameInfo","findRenameLocations","getApplicableRefactors"],woe(u$e())}});function oPe(e,t,r){const i=[];r=fY(r,i);const o=To(e)?e:[e],s=Fw(void 0,void 0,w,r,o,t,!0);return s.diagnostics=So(s.diagnostics,i),s}var g$e=T({"src/services/transform.ts"(){si()}});function v$e(e,t){if(e.isDeclarationFile)return;let r=po(e,t);const i=e.getLineAndCharacterOfPosition(t).line;if(e.getLineAndCharacterOfPosition(r.getStart(e)).line>i){const b=xc(r.pos,e);if(!b||e.getLineAndCharacterOfPosition(b.getEnd()).line!==i)return;r=b}if(r.flags&33554432)return;return m(r);function o(b,A){const I=QS(b)?Oo(b.modifiers,Eu):void 0,R=I?ka(e.text,I.end):b.getStart(e);return pc(R,(A||b).getEnd())}function s(b,A){return o(b,b1(A,A.parent,e))}function l(b,A){return b&&i===e.getLineAndCharacterOfPosition(b.getStart(e)).line?m(b):m(A)}function u(b,A,I){if(b){const R=b.indexOf(A);if(R>=0){let M=R,C=R+1;for(;M>0&&I(b[M-1]);)M--;for(;C<b.length&&I(b[C]);)C++;return pc(ka(e.text,b[M].pos),b[C-1].end)}}return o(A)}function p(b){return m(xc(b.pos,e))}function h(b){return m(b1(b,b.parent,e))}function m(b){if(b){const{parent:ie}=b;switch(b.kind){case 243:return I(b.declarationList.declarations[0]);case 260:case 172:case 171:return I(b);case 169:return M(b);case 262:case 174:case 173:case 177:case 178:case 176:case 218:case 219:return O(b);case 241:if(BE(b))return U(b);case 268:return K(b);case 299:return K(b.block);case 244:return o(b.expression);case 253:return o(b.getChildAt(0),b.expression);case 247:return s(b,b.expression);case 246:return m(b.statement);case 259:return o(b.getChildAt(0));case 245:return s(b,b.expression);case 256:return m(b.statement);case 252:case 251:return o(b.getChildAt(0),b.label);case 248:return V(b);case 249:return s(b,b.expression);case 250:return Z(b);case 255:return s(b,b.expression);case 296:case 297:return m(b.statements[0]);case 258:return K(b.tryBlock);case 257:return o(b,b.expression);case 277:return o(b,b.expression);case 271:return o(b,b.moduleReference);case 272:return o(b,b.moduleSpecifier);case 278:return o(b,b.moduleSpecifier);case 267:if(Kg(b)!==1)return;case 263:case 266:case 306:case 208:return o(b);case 254:return m(b.statement);case 170:return u(ie.modifiers,b,Eu);case 206:case 207:return se(b);case 264:case 265:return;case 27:case 1:return l(xc(b.pos,e));case 28:return p(b);case 19:return ne(b);case 20:return he(b);case 24:return ye(b);case 21:return $(b);case 22:return Y(b);case 59:return oe(b);case 32:case 30:return fe(b);case 117:return Ne(b);case 93:case 85:case 98:return h(b);case 165:return pe(b);default:if(Zv(b))return G(b);if((b.kind===80||b.kind===230||b.kind===303||b.kind===304)&&Zv(ie))return o(b);if(b.kind===226){const{left:ve,operatorToken:Le}=b;if(Zv(ve))return G(ve);if(Le.kind===64&&Zv(b.parent))return o(b);if(Le.kind===28)return m(ve)}if(ng(b))switch(ie.kind){case 246:return p(b);case 170:return m(b.parent);case 248:case 250:return o(b);case 226:if(b.parent.operatorToken.kind===28)return o(b);break;case 219:if(b.parent.body===b)return o(b);break}switch(b.parent.kind){case 303:if(b.parent.name===b&&!Zv(b.parent.parent))return m(b.parent.initializer);break;case 216:if(b.parent.type===b)return h(b.parent.type);break;case 260:case 169:{const{initializer:ve,type:Le}=b.parent;if(ve===b||Le===b||Vv(b.kind))return p(b);break}case 226:{const{left:ve}=b.parent;if(Zv(ve)&&b!==ve)return p(b);break}default:if(ea(b.parent)&&b.parent.type===b)return p(b)}return m(b.parent)}}function A(ie){return Uc(ie.parent)&&ie.parent.declarations[0]===ie?o(xc(ie.pos,e,ie.parent),ie):o(ie)}function I(ie){if(ie.parent.parent.kind===249)return m(ie.parent.parent);const ve=ie.parent;if(ta(ie.name))return se(ie.name);if(ES(ie)&&ie.initializer||Zr(ie,32)||ve.parent.kind===250)return A(ie);if(Uc(ie.parent)&&ie.parent.declarations[0]!==ie)return m(xc(ie.pos,e,ie.parent))}function R(ie){return!!ie.initializer||ie.dotDotDotToken!==void 0||Zr(ie,3)}function M(ie){if(ta(ie.name))return se(ie.name);if(R(ie))return o(ie);{const ve=ie.parent,Le=ve.parameters.indexOf(ie);return N.assert(Le!==-1),Le!==0?M(ve.parameters[Le-1]):m(ve.body)}}function C(ie){return Zr(ie,32)||ie.parent.kind===263&&ie.kind!==176}function O(ie){if(ie.body)return C(ie)?o(ie):m(ie.body)}function U(ie){const ve=ie.statements.length?ie.statements[0]:ie.getLastToken();return C(ie.parent)?l(ie.parent,ve):m(ve)}function K(ie){switch(ie.parent.kind){case 267:if(Kg(ie.parent)!==1)return;case 247:case 245:case 249:return l(ie.parent,ie.statements[0]);case 248:case 250:return l(xc(ie.pos,e,ie.parent),ie.statements[0])}return m(ie.statements[0])}function Z(ie){if(ie.initializer.kind===261){const ve=ie.initializer;if(ve.declarations.length>0)return m(ve.declarations[0])}else return m(ie.initializer)}function V(ie){if(ie.initializer)return Z(ie);if(ie.condition)return o(ie.condition);if(ie.incrementor)return o(ie.incrementor)}function se(ie){const ve=Ue(ie.elements,Le=>Le.kind!==232?Le:void 0);return ve?m(ve):ie.parent.kind===208?o(ie.parent):A(ie.parent)}function G(ie){N.assert(ie.kind!==207&&ie.kind!==206);const ve=ie.kind===209?ie.elements:ie.properties,Le=Ue(ve,He=>He.kind!==232?He:void 0);return Le?m(Le):o(ie.parent.kind===226?ie.parent:ie)}function ne(ie){switch(ie.parent.kind){case 266:const ve=ie.parent;return l(xc(ie.pos,e,ie.parent),ve.members.length?ve.members[0]:ve.getLastToken(e));case 263:const Le=ie.parent;return l(xc(ie.pos,e,ie.parent),Le.members.length?Le.members[0]:Le.getLastToken(e));case 269:return l(ie.parent.parent,ie.parent.clauses[0])}return m(ie.parent)}function he(ie){switch(ie.parent.kind){case 268:if(Kg(ie.parent.parent)!==1)return;case 266:case 263:return o(ie);case 241:if(BE(ie.parent))return o(ie);case 299:return m(tl(ie.parent.statements));case 269:const ve=ie.parent,Le=tl(ve.clauses);return Le?m(tl(Le.statements)):void 0;case 206:const He=ie.parent;return m(tl(He.elements)||He);default:if(Zv(ie.parent)){const Ee=ie.parent;return o(tl(Ee.properties)||Ee)}return m(ie.parent)}}function ye(ie){switch(ie.parent.kind){case 207:const ve=ie.parent;return o(tl(ve.elements)||ve);default:if(Zv(ie.parent)){const Le=ie.parent;return o(tl(Le.elements)||Le)}return m(ie.parent)}}function $(ie){return ie.parent.kind===246||ie.parent.kind===213||ie.parent.kind===214?p(ie):ie.parent.kind===217?h(ie):m(ie.parent)}function Y(ie){switch(ie.parent.kind){case 218:case 262:case 219:case 174:case 173:case 177:case 178:case 176:case 247:case 246:case 248:case 250:case 213:case 214:case 217:return p(ie);default:return m(ie.parent)}}function oe(ie){return ea(ie.parent)||ie.parent.kind===303||ie.parent.kind===169?p(ie):m(ie.parent)}function fe(ie){return ie.parent.kind===216?h(ie):m(ie.parent)}function Ne(ie){return ie.parent.kind===246?s(ie,ie.parent.expression):m(ie.parent)}function pe(ie){return ie.parent.kind===250?h(ie):m(ie.parent)}}}var y$e=T({"src/services/breakpoints.ts"(){si()}}),ZY={};X(ZY,{spanInSourceFileAtLocation:()=>v$e});var b$e=T({"src/services/_namespaces/ts.BreakpointResolver.ts"(){y$e()}});function E$e(e){return(Os(e)||Zc(e))&&ld(e)}function aPe(e){return Jo(e)||wi(e)}function HO(e){return(Os(e)||Gs(e)||Zc(e))&&aPe(e.parent)&&e===e.parent.initializer&&Ve(e.parent.name)&&(!!(Ov(e.parent)&2)||Jo(e.parent))}function sPe(e){return $i(e)||Xl(e)||Ac(e)||Os(e)||Ic(e)||Zc(e)||Rl(e)||ql(e)||bh(e)||rf(e)||bp(e)}function FD(e){return $i(e)||Xl(e)&&Ve(e.name)||Ac(e)||Ic(e)||Rl(e)||ql(e)||bh(e)||rf(e)||bp(e)||E$e(e)||HO(e)}function lPe(e){return $i(e)?e:ld(e)?e.name:HO(e)?e.parent.name:N.checkDefined(e.modifiers&&An(e.modifiers,cPe))}function cPe(e){return e.kind===90}function uPe(e,t){const r=lPe(t);return r&&e.getSymbolAtLocation(r)}function S$e(e,t){if($i(t))return{text:t.fileName,pos:0,end:0};if((Ac(t)||Ic(t))&&!ld(t)){const o=t.modifiers&&An(t.modifiers,cPe);if(o)return{text:"default",pos:o.getStart(),end:o.getEnd()}}if(Rl(t)){const o=t.getSourceFile(),s=ka(o.text,L_(t).pos),l=s+6,u=e.getTypeChecker(),p=u.getSymbolAtLocation(t.parent);return{text:`${p?`${u.symbolToString(p,t.parent)} `:""}static {}`,pos:s,end:l}}const r=HO(t)?t.parent.name:N.checkDefined(Mo(t),"Expected call hierarchy item to have a name");let i=Ve(r)?Sr(r):nf(r)?r.text:Za(r)&&nf(r.expression)?r.expression.text:void 0;if(i===void 0){const o=e.getTypeChecker(),s=o.getSymbolAtLocation(r);s&&(i=o.symbolToString(s,t))}if(i===void 0){const o=Bw();i=yC(s=>o.writeNode(4,t,t.getSourceFile(),s))}return{text:i,pos:r.getStart(),end:r.getEnd()}}function T$e(e){var t,r,i,o;if(HO(e))return Jo(e.parent)&&ui(e.parent.parent)?Zc(e.parent.parent)?(t=b4(e.parent.parent))==null?void 0:t.getText():(r=e.parent.parent.name)==null?void 0:r.getText():O_(e.parent.parent.parent.parent)&&Ve(e.parent.parent.parent.parent.parent.name)?e.parent.parent.parent.parent.parent.name.getText():void 0;switch(e.kind){case 177:case 178:case 174:return e.parent.kind===210?(i=b4(e.parent))==null?void 0:i.getText():(o=Mo(e.parent))==null?void 0:o.getText();case 262:case 263:case 267:if(O_(e.parent)&&Ve(e.parent.parent.name))return e.parent.parent.name.getText()}}function dPe(e,t){if(t.body)return t;if(Ml(t))return ag(t.parent);if(Ac(t)||ql(t)){const r=uPe(e,t);return r&&r.valueDeclaration&&Bs(r.valueDeclaration)&&r.valueDeclaration.body?r.valueDeclaration:void 0}return t}function pPe(e,t){const r=uPe(e,t);let i;if(r&&r.declarations){const o=OM(r.declarations),s=wt(r.declarations,p=>({file:p.getSourceFile().fileName,pos:p.pos}));o.sort((p,h)=>Uu(s[p].file,s[h].file)||s[p].pos-s[h].pos);const l=wt(o,p=>r.declarations[p]);let u;for(const p of l)FD(p)&&((!u||u.parent!==p.parent||u.end!==p.pos)&&(i=xn(i,p)),u=p)}return i}function e$(e,t){return Rl(t)?t:Bs(t)?dPe(e,t)??pPe(e,t)??t:pPe(e,t)??t}function fPe(e,t){const r=e.getTypeChecker();let i=!1;for(;;){if(FD(t))return e$(r,t);if(sPe(t)){const o=Gn(t,FD);return o&&e$(r,o)}if(Bg(t)){if(FD(t.parent))return e$(r,t.parent);if(sPe(t.parent)){const o=Gn(t.parent,FD);return o&&e$(r,o)}return aPe(t.parent)&&t.parent.initializer&&HO(t.parent.initializer)?t.parent.initializer:void 0}if(Ml(t))return FD(t.parent)?t.parent:void 0;if(t.kind===126&&Rl(t.parent)){t=t.parent;continue}if(wi(t)&&t.initializer&&HO(t.initializer))return t.initializer;if(!i){let o=r.getSymbolAtLocation(t);if(o&&(o.flags&2097152&&(o=r.getAliasedSymbol(o)),o.valueDeclaration)){i=!0,t=o.valueDeclaration;continue}}return}}function zpe(e,t){const r=t.getSourceFile(),i=S$e(e,t),o=T$e(t),s=y1(t),l=o2(t),u=pc(ka(r.text,t.getFullStart(),!1,!0),t.getEnd()),p=pc(i.pos,i.end);return{file:r.fileName,kind:s,kindModifiers:l,name:i.text,containerName:o,span:u,selectionSpan:p}}function A$e(e){return e!==void 0}function I$e(e){if(e.kind===Ws.EntryKind.Node){const{node:t}=e;if(KK(t,!0,!0)||Sue(t,!0,!0)||Tue(t,!0,!0)||Aue(t,!0,!0)||AD(t)||ZK(t)){const r=t.getSourceFile();return{declaration:Gn(t,FD)||r,range:mX(t,r)}}}}function mPe(e){return as(e.declaration)}function x$e(e,t){return{from:e,fromSpans:t}}function R$e(e,t){return x$e(zpe(e,t[0].declaration),wt(t,r=>sb(r.range)))}function D$e(e,t,r){if($i(t)||Xl(t)||Rl(t))return[];const i=lPe(t),o=nr(Ws.findReferenceOrRenameEntries(e,r,e.getSourceFiles(),i,0,{use:Ws.FindReferencesUse.References},I$e),A$e);return o?YN(o,mPe,s=>R$e(e,s)):[]}function N$e(e,t){function r(o){const s=i1(o)?o.tag:ud(o)?o.tagName:ws(o)||Rl(o)?o:o.expression,l=fPe(e,s);if(l){const u=mX(s,o.getSourceFile());if(To(l))for(const p of l)t.push({declaration:p,range:u});else t.push({declaration:l,range:u})}}function i(o){if(o&&!(o.flags&33554432)){if(FD(o)){if(ui(o))for(const s of o.members)s.name&&Za(s.name)&&i(s.name.expression);return}switch(o.kind){case 80:case 271:case 272:case 278:case 264:case 265:return;case 175:r(o);return;case 216:case 234:i(o.expression);return;case 260:case 169:i(o.name),i(o.initializer);return;case 213:r(o),i(o.expression),Ue(o.arguments,i);return;case 214:r(o),i(o.expression),Ue(o.arguments,i);return;case 215:r(o),i(o.tag),i(o.template);return;case 286:case 285:r(o),i(o.tagName),i(o.attributes);return;case 170:r(o),i(o.expression);return;case 211:case 212:r(o),Ho(o,i);break;case 238:i(o.expression);return}tg(o)||Ho(o,i)}}return i}function C$e(e,t){Ue(e.statements,t)}function P$e(e,t){!Zr(e,128)&&e.body&&O_(e.body)&&Ue(e.body.statements,t)}function M$e(e,t,r){const i=dPe(e,t);i&&(Ue(i.parameters,r),r(i.body))}function L$e(e,t){t(e.body)}function k$e(e,t){Ue(e.modifiers,t);const r=UE(e);r&&t(r.expression);for(const i of e.members)Cm(i)&&Ue(i.modifiers,t),Jo(i)?t(i.initializer):Ml(i)&&i.body?(Ue(i.parameters,t),t(i.body)):Rl(i)&&t(i)}function w$e(e,t){const r=[],i=N$e(e,r);switch(t.kind){case 312:C$e(t,i);break;case 267:P$e(t,i);break;case 262:case 218:case 219:case 174:case 177:case 178:M$e(e.getTypeChecker(),t,i);break;case 263:case 231:k$e(t,i);break;case 175:L$e(t,i);break;default:N.assertNever(t)}return r}function O$e(e,t){return{to:e,fromSpans:t}}function W$e(e,t){return O$e(zpe(e,t[0].declaration),wt(t,r=>sb(r.range)))}function F$e(e,t){return t.flags&33554432||bh(t)?[]:YN(w$e(e,t),mPe,r=>W$e(e,r))}var z$e=T({"src/services/callHierarchy.ts"(){si()}}),OI={};X(OI,{createCallHierarchyItem:()=>zpe,getIncomingCalls:()=>D$e,getOutgoingCalls:()=>F$e,resolveCallHierarchyDeclaration:()=>fPe});var B$e=T({"src/services/_namespaces/ts.CallHierarchy.ts"(){z$e()}}),_Pe={};X(_Pe,{TokenEncodingConsts:()=>Cpe,TokenModifier:()=>Mpe,TokenType:()=>Ppe,getEncodedSemanticClassifications:()=>Npe,getSemanticClassifications:()=>GCe});var G$e=T({"src/services/_namespaces/ts.classifier.v2020.ts"(){UCe()}}),Bpe={};X(Bpe,{v2020:()=>_Pe});var V$e=T({"src/services/_namespaces/ts.classifier.ts"(){G$e()}});function o_(e,t,r){return Vpe(e,uT(r),t,void 0,void 0)}function ca(e,t,r,i,o,s){return Vpe(e,uT(r),t,i,uT(o),s)}function Gpe(e,t,r,i,o,s){return Vpe(e,uT(r),t,i,o&&uT(o),s)}function Vpe(e,t,r,i,o,s){return{fixName:e,description:t,changes:r,fixId:i,fixAllDescription:o,commands:s?[s]:void 0}}function Aa(e){for(const t of e.errorCodes)jpe=void 0,t$.add(String(t),e);if(e.fixIds)for(const t of e.fixIds)N.assert(!n$.has(t)),n$.set(t,e)}function j$e(){return jpe??(jpe=zo(t$.keys()))}function U$e(e,t){const{errorCodes:r}=e;let i=0;for(const s of t)if(Nr(r,s.code)&&i++,i>1)break;const o=i<2;return({fixId:s,fixAllDescription:l,...u})=>o?u:{...u,fixId:s,fixAllDescription:l}}function H$e(e){const t=gPe(e),r=t$.get(String(e.errorCode));return Pi(r,i=>wt(i.getCodeActions(e),U$e(i,t)))}function q$e(e){return n$.get(aa(e.fixId,Po)).getAllCodeActions(e)}function zD(e,t){return{changes:e,commands:t}}function hPe(e,t){return{fileName:e,textChanges:t}}function Es(e,t,r){const i=[],o=_r.ChangeTracker.with(e,s=>BD(e,t,l=>r(s,l,i)));return zD(o,i.length===0?void 0:i)}function BD(e,t,r){for(const i of gPe(e))Nr(t,i.code)&&r(i)}function gPe({program:e,sourceFile:t,cancellationToken:r}){return[...e.getSemanticDiagnostics(t,r),...e.getSyntacticDiagnostics(t,r),...lY(t,e,r)]}var t$,n$,jpe,J$e=T({"src/services/codeFixProvider.ts"(){si(),t$=Zp(),n$=new Map}});function vPe(e,t,r){const i=$k(r)?w.createAsExpression(r.expression,w.createKeywordTypeNode(159)):w.createTypeAssertion(w.createKeywordTypeNode(159),r.expression);e.replaceNode(t,r.expression,i)}function yPe(e,t){if(!lr(e))return Gn(po(e,t),r=>$k(r)||Gae(r))}var r$,Upe,K$e=T({"src/services/codefixes/addConvertToUnknownForNonOverlappingTypes.ts"(){si(),Ra(),r$="addConvertToUnknownForNonOverlappingTypes",Upe=[f.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code],Aa({errorCodes:Upe,getCodeActions:function(t){const r=yPe(t.sourceFile,t.span.start);if(r===void 0)return;const i=_r.ChangeTracker.with(t,o=>vPe(o,t.sourceFile,r));return[ca(r$,i,f.Add_unknown_conversion_for_non_overlapping_types,r$,f.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[r$],getAllCodeActions:e=>Es(e,Upe,(t,r)=>{const i=yPe(r.file,r.start);i&&vPe(t,r.file,i)})})}}),X$e=T({"src/services/codefixes/addEmptyExportDeclaration.ts"(){si(),Ra(),Aa({errorCodes:[f.await_expressions_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,f.await_using_statements_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code,f.for_await_loops_are_only_allowed_at_the_top_level_of_a_file_when_that_file_is_a_module_but_this_file_has_no_imports_or_exports_Consider_adding_an_empty_export_to_make_this_file_a_module.code],getCodeActions:function(t){const{sourceFile:r}=t,i=_r.ChangeTracker.with(t,o=>{const s=w.createExportDeclaration(void 0,!1,w.createNamedExports([]),void 0);o.insertNodeAtEndOfScope(r,r,s)});return[o_("addEmptyExportDeclaration",i,f.Add_export_to_make_this_file_into_a_module)]}})}});function bPe(e,t,r,i){const o=r(s=>Y$e(s,e.sourceFile,t,i));return ca(i$,o,f.Add_async_modifier_to_containing_function,i$,f.Add_all_missing_async_modifiers)}function Y$e(e,t,r,i){if(i&&i.has(as(r)))return;i==null||i.add(as(r));const o=w.replaceModifiers(cl(r,!0),w.createNodeArray(w.createModifiersFromModifierFlags(Uy(r)|1024)));e.replaceNode(t,r,o)}function EPe(e,t){if(!t)return;const r=po(e,t.start);return Gn(r,o=>o.getStart(e)<t.start||o.getEnd()>Kl(t)?"quit":(Gs(o)||ql(o)||Os(o)||Ac(o))&&ND(t,Nd(o,e)))}function $$e(e,t){return({start:r,length:i,relatedInformation:o,code:s})=>Cv(r)&&Cv(i)&&ND({start:r,length:i},e)&&s===t&&!!o&&bt(o,l=>l.code===f.Did_you_mean_to_mark_this_function_as_async.code)}var i$,Hpe,Q$e=T({"src/services/codefixes/addMissingAsync.ts"(){si(),Ra(),i$="addMissingAsync",Hpe=[f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,f.Type_0_is_not_assignable_to_type_1.code,f.Type_0_is_not_comparable_to_type_1.code],Aa({fixIds:[i$],errorCodes:Hpe,getCodeActions:function(t){const{sourceFile:r,errorCode:i,cancellationToken:o,program:s,span:l}=t,u=An(s.getTypeChecker().getDiagnostics(r,o),$$e(l,i)),p=u&&u.relatedInformation&&An(u.relatedInformation,b=>b.code===f.Did_you_mean_to_mark_this_function_as_async.code),h=EPe(r,p);return h?[bPe(t,h,b=>_r.ChangeTracker.with(t,b))]:void 0},getAllCodeActions:e=>{const{sourceFile:t}=e,r=new Set;return Es(e,Hpe,(i,o)=>{const s=o.relatedInformation&&An(o.relatedInformation,p=>p.code===f.Did_you_mean_to_mark_this_function_as_async.code),l=EPe(t,s);return l?bPe(e,l,p=>(p(i),[]),r):void 0})}})}});function SPe(e,t,r,i,o){const s=BX(e,r);return s&&Z$e(e,t,r,i,o)&&IPe(s)?s:void 0}function TPe(e,t,r,i,o,s){const{sourceFile:l,program:u,cancellationToken:p}=e,h=eQe(t,l,p,u,i);if(h){const m=o(b=>{Ue(h.initializers,({expression:A})=>qpe(b,r,l,i,A,s)),s&&h.needsSecondPassForFixAll&&qpe(b,r,l,i,t,s)});return o_("addMissingAwaitToInitializer",m,h.initializers.length===1?[f.Add_await_to_initializer_for_0,h.initializers[0].declarationSymbol.name]:f.Add_await_to_initializers)}}function APe(e,t,r,i,o,s){const l=o(u=>qpe(u,r,e.sourceFile,i,t,s));return ca(o$,l,f.Add_await,o$,f.Fix_all_expressions_possibly_missing_await)}function Z$e(e,t,r,i,o){const l=o.getTypeChecker().getDiagnostics(e,i);return bt(l,({start:u,length:p,relatedInformation:h,code:m})=>Cv(u)&&Cv(p)&&ND({start:u,length:p},r)&&m===t&&!!h&&bt(h,b=>b.code===f.Did_you_forget_to_use_await.code))}function eQe(e,t,r,i,o){const s=tQe(e,o);if(!s)return;let l=s.isCompleteFix,u;for(const p of s.identifiers){const h=o.getSymbolAtLocation(p);if(!h)continue;const m=ii(h.valueDeclaration,wi),b=m&&ii(m.name,Ve),A=b0(m,243);if(!m||!A||m.type||!m.initializer||A.getSourceFile()!==t||Zr(A,32)||!b||!IPe(m.initializer)){l=!1;continue}const I=i.getSemanticDiagnostics(t,r);if(Ws.Core.eachSymbolReferenceInFile(b,o,t,M=>p!==M&&!nQe(M,I,t,o))){l=!1;continue}(u||(u=[])).push({expression:m.initializer,declarationSymbol:h})}return u&&{initializers:u,needsSecondPassForFixAll:!l}}function tQe(e,t){if(Fr(e.parent)&&Ve(e.parent.expression))return{identifiers:[e.parent.expression],isCompleteFix:!0};if(Ve(e))return{identifiers:[e],isCompleteFix:!0};if(mr(e)){let r,i=!0;for(const o of[e.left,e.right]){const s=t.getTypeAtLocation(o);if(t.getPromisedTypeOfPromise(s)){if(!Ve(o)){i=!1;continue}(r||(r=[])).push(o)}}return r&&{identifiers:r,isCompleteFix:i}}}function nQe(e,t,r,i){const o=Fr(e.parent)?e.parent.name:mr(e.parent)?e.parent:e,s=An(t,l=>l.start===o.getStart(r)&&l.start+l.length===o.getEnd());return s&&Nr(a$,s.code)||i.getTypeAtLocation(o).flags&1}function IPe(e){return e.flags&65536||!!Gn(e,t=>t.parent&&Gs(t.parent)&&t.parent.body===t||Xo(t)&&(t.parent.kind===262||t.parent.kind===218||t.parent.kind===219||t.parent.kind===174))}function qpe(e,t,r,i,o,s){if(Qk(o.parent)&&!o.parent.awaitModifier){const l=i.getTypeAtLocation(o),u=i.getAsyncIterableType();if(u&&i.isTypeAssignableTo(l,u)){const p=o.parent;e.replaceNode(r,p,w.updateForOfStatement(p,w.createToken(135),p.initializer,p.expression,p.statement));return}}if(mr(o))for(const l of[o.left,o.right]){if(s&&Ve(l)){const h=i.getSymbolAtLocation(l);if(h&&s.has(Ta(h)))continue}const u=i.getTypeAtLocation(l),p=i.getPromisedTypeOfPromise(u)?w.createAwaitExpression(l):l;e.replaceNode(r,l,p)}else if(t===Jpe&&Fr(o.parent)){if(s&&Ve(o.parent.expression)){const l=i.getSymbolAtLocation(o.parent.expression);if(l&&s.has(Ta(l)))return}e.replaceNode(r,o.parent.expression,w.createParenthesizedExpression(w.createAwaitExpression(o.parent.expression))),xPe(e,o.parent.expression,r)}else if(Nr(Kpe,t)&&I_(o.parent)){if(s&&Ve(o)){const l=i.getSymbolAtLocation(o);if(l&&s.has(Ta(l)))return}e.replaceNode(r,o,w.createParenthesizedExpression(w.createAwaitExpression(o))),xPe(e,o,r)}else{if(s&&wi(o.parent)&&Ve(o.parent.name)){const l=i.getSymbolAtLocation(o.parent.name);if(l&&!Rv(s,Ta(l)))return}e.replaceNode(r,o,w.createAwaitExpression(o))}}function xPe(e,t,r){const i=xc(t.pos,r);i&&x5(i.end,i.parent,r)&&e.insertText(r,t.getStart(r),";")}var o$,Jpe,Kpe,a$,rQe=T({"src/services/codefixes/addMissingAwait.ts"(){si(),Ra(),o$="addMissingAwait",Jpe=f.Property_0_does_not_exist_on_type_1.code,Kpe=[f.This_expression_is_not_callable.code,f.This_expression_is_not_constructable.code],a$=[f.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type.code,f.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,f.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type.code,f.Operator_0_cannot_be_applied_to_type_1.code,f.Operator_0_cannot_be_applied_to_types_1_and_2.code,f.This_comparison_appears_to_be_unintentional_because_the_types_0_and_1_have_no_overlap.code,f.This_condition_will_always_return_true_since_this_0_is_always_defined.code,f.Type_0_is_not_an_array_type.code,f.Type_0_is_not_an_array_type_or_a_string_type.code,f.Type_0_can_only_be_iterated_through_when_using_the_downlevelIteration_flag_or_with_a_target_of_es2015_or_higher.code,f.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,f.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator.code,f.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator.code,f.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator.code,f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,Jpe,...Kpe],Aa({fixIds:[o$],errorCodes:a$,getCodeActions:function(t){const{sourceFile:r,errorCode:i,span:o,cancellationToken:s,program:l}=t,u=SPe(r,i,o,s,l);if(!u)return;const p=t.program.getTypeChecker(),h=m=>_r.ChangeTracker.with(t,m);return WM([TPe(t,u,i,p,h),APe(t,u,i,p,h)])},getAllCodeActions:e=>{const{sourceFile:t,program:r,cancellationToken:i}=e,o=e.program.getTypeChecker(),s=new Set;return Es(e,a$,(l,u)=>{const p=SPe(t,u.code,u,i,r);if(!p)return;const h=m=>(m(l),[]);return TPe(e,p,u.code,o,h,s)||APe(e,p,u.code,o,h,s)})}})}});function RPe(e,t,r,i,o){const s=po(t,r),l=Gn(s,h=>nR(h.parent)?h.parent.initializer===h:iQe(h)?!1:"quit");if(l)return s$(e,l,t,o);const u=s.parent;if(mr(u)&&u.operatorToken.kind===64&&eu(u.parent))return s$(e,s,t,o);if(_d(u)){const h=i.getTypeChecker();return Zn(u.elements,m=>oQe(m,h))?s$(e,u,t,o):void 0}const p=Gn(s,h=>eu(h.parent)?!0:aQe(h)?!1:"quit");if(p){const h=i.getTypeChecker();return DPe(p,h)?s$(e,p,t,o):void 0}}function s$(e,t,r,i){(!i||Rv(i,t))&&e.insertModifierBefore(r,87,t)}function iQe(e){switch(e.kind){case 80:case 209:case 210:case 303:case 304:return!0;default:return!1}}function oQe(e,t){const r=Ve(e)?e:Lc(e,!0)&&Ve(e.left)?e.left:void 0;return!!r&&!t.getSymbolAtLocation(r)}function aQe(e){switch(e.kind){case 80:case 226:case 28:return!0;default:return!1}}function DPe(e,t){return mr(e)?e.operatorToken.kind===28?Zn([e.left,e.right],r=>DPe(r,t)):e.operatorToken.kind===64&&Ve(e.left)&&!t.getSymbolAtLocation(e.left):!1}var l$,Xpe,sQe=T({"src/services/codefixes/addMissingConst.ts"(){si(),Ra(),l$="addMissingConst",Xpe=[f.Cannot_find_name_0.code,f.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code],Aa({errorCodes:Xpe,getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>RPe(i,t.sourceFile,t.span.start,t.program));if(r.length>0)return[ca(l$,r,f.Add_const_to_unresolved_variable,l$,f.Add_const_to_all_unresolved_variables)]},fixIds:[l$],getAllCodeActions:e=>{const t=new Set;return Es(e,Xpe,(r,i)=>RPe(r,i.file,i.start,e.program,t))}})}});function NPe(e,t,r,i){const o=po(t,r);if(!Ve(o))return;const s=o.parent;s.kind===172&&(!i||Rv(i,s))&&e.insertModifierBefore(t,138,s)}var c$,Ype,lQe=T({"src/services/codefixes/addMissingDeclareProperty.ts"(){si(),Ra(),c$="addMissingDeclareProperty",Ype=[f.Property_0_will_overwrite_the_base_property_in_1_If_this_is_intentional_add_an_initializer_Otherwise_add_a_declare_modifier_or_remove_the_redundant_declaration.code],Aa({errorCodes:Ype,getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>NPe(i,t.sourceFile,t.span.start));if(r.length>0)return[ca(c$,r,f.Prefix_with_declare,c$,f.Prefix_all_incorrect_property_declarations_with_declare)]},fixIds:[c$],getAllCodeActions:e=>{const t=new Set;return Es(e,Ype,(r,i)=>NPe(r,i.file,i.start,t))}})}});function CPe(e,t,r){const i=po(t,r),o=Gn(i,Eu);N.assert(!!o,"Expected position to be owned by a decorator.");const s=w.createCallExpression(o.expression,void 0,void 0);e.replaceNode(t,o.expression,s)}var u$,$pe,cQe=T({"src/services/codefixes/addMissingInvocationForDecorator.ts"(){si(),Ra(),u$="addMissingInvocationForDecorator",$pe=[f._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code],Aa({errorCodes:$pe,getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>CPe(i,t.sourceFile,t.span.start));return[ca(u$,r,f.Call_decorator_expression,u$,f.Add_to_all_uncalled_decorators)]},fixIds:[u$],getAllCodeActions:e=>Es(e,$pe,(t,r)=>CPe(t,r.file,r.start))})}});function PPe(e,t,r){const i=po(t,r),o=i.parent;if(!Ao(o))return N.fail("Tried to add a parameter name to a non-parameter: "+N.formatSyntaxKind(i.kind));const s=o.parent.parameters.indexOf(o);N.assert(!o.type,"Tried to add a parameter name to a parameter that already had one."),N.assert(s>-1,"Parameter not found in parent parameter list.");let l=o.name.getEnd(),u=w.createTypeReferenceNode(o.name,void 0),p=MPe(t,o);for(;p;)u=w.createArrayTypeNode(u),l=p.getEnd(),p=MPe(t,p);const h=w.createParameterDeclaration(o.modifiers,o.dotDotDotToken,"arg"+s,o.questionToken,o.dotDotDotToken&&!Xk(u)?w.createArrayTypeNode(u):u,o.initializer);e.replaceRange(t,xf(o.getStart(t),l),h)}function MPe(e,t){const r=b1(t.name,t.parent,e);if(r&&r.kind===23&&n1(r.parent)&&Ao(r.parent.parent))return r.parent.parent}var d$,Qpe,uQe=T({"src/services/codefixes/addNameToNamelessParameter.ts"(){si(),Ra(),d$="addNameToNamelessParameter",Qpe=[f.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1.code],Aa({errorCodes:Qpe,getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>PPe(i,t.sourceFile,t.span.start));return[ca(d$,r,f.Add_parameter_name,d$,f.Add_names_to_all_parameters_without_names)]},fixIds:[d$],getAllCodeActions:e=>Es(e,Qpe,(t,r)=>PPe(t,r.file,r.start))})}});function dQe(e,t,r){var i,o;const s=LPe(BX(e,t),r);if(!s)return et;const{source:l,target:u}=s,p=pQe(l,u,r)?r.getTypeAtLocation(u.expression):r.getTypeAtLocation(u);return(o=(i=p.symbol)==null?void 0:i.declarations)!=null&&o.some(h=>jn(h).fileName.match(/\.d\.ts$/))?et:r.getExactOptionalProperties(p)}function pQe(e,t,r){return Fr(t)&&!!r.getExactOptionalProperties(r.getTypeAtLocation(t.expression)).length&&r.getTypeAtLocation(e)===r.getUndefinedType()}function LPe(e,t){var r;if(e){if(mr(e.parent)&&e.parent.operatorToken.kind===64)return{source:e.parent.right,target:e.parent.left};if(wi(e.parent)&&e.parent.initializer)return{source:e.parent.initializer,target:e.parent.name};if(la(e.parent)){const i=t.getSymbolAtLocation(e.parent.expression);if(!(i!=null&&i.valueDeclaration)||!PA(i.valueDeclaration.kind)||!yt(e))return;const o=e.parent.arguments.indexOf(e);if(o===-1)return;const s=i.valueDeclaration.parameters[o].name;if(Ve(s))return{source:e,target:s}}else if(hc(e.parent)&&Ve(e.parent.name)||rp(e.parent)){const i=LPe(e.parent.parent,t);if(!i)return;const o=t.getPropertyOfType(t.getTypeAtLocation(i.target),e.parent.name.text),s=(r=o==null?void 0:o.declarations)==null?void 0:r[0];return s?{source:hc(e.parent)?e.parent.initializer:e.parent.name,target:s}:void 0}}else return}function fQe(e,t){for(const r of t){const i=r.valueDeclaration;if(i&&(yp(i)||Jo(i))&&i.type){const o=w.createUnionTypeNode([...i.type.kind===192?i.type.types:[i.type],w.createTypeReferenceNode("undefined")]);e.replaceNode(i.getSourceFile(),i.type,o)}}}var Zpe,kPe,mQe=T({"src/services/codefixes/addOptionalPropertyUndefined.ts"(){si(),Ra(),Zpe="addOptionalPropertyUndefined",kPe=[f.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_type_of_the_target.code,f.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code],Aa({errorCodes:kPe,getCodeActions(e){const t=e.program.getTypeChecker(),r=dQe(e.sourceFile,e.span,t);if(!r.length)return;const i=_r.ChangeTracker.with(e,o=>fQe(o,r));return[o_(Zpe,i,f.Add_undefined_to_optional_property_type)]},fixIds:[Zpe]})}});function wPe(e,t){const r=po(e,t);return ii(Ao(r.parent)?r.parent.parent:r.parent,OPe)}function OPe(e){return _Qe(e)&&WPe(e)}function WPe(e){return Bs(e)?e.parameters.some(WPe)||!e.type&&!!dL(e):!e.type&&!!p0(e)}function FPe(e,t,r){if(Bs(r)&&(dL(r)||r.parameters.some(i=>!!p0(i)))){if(!r.typeParameters){const o=N3(r);o.length&&e.insertTypeParameters(t,r,o)}const i=Gs(r)&&!vs(r,21,t);i&&e.insertNodeBefore(t,Ha(r.parameters),w.createToken(21));for(const o of r.parameters)if(!o.type){const s=p0(o);s&&e.tryInsertTypeAnnotation(t,o,nt(s,I1,ji))}if(i&&e.insertNodeAfter(t,Ya(r.parameters),w.createToken(22)),!r.type){const o=dL(r);o&&e.tryInsertTypeAnnotation(t,r,nt(o,I1,ji))}}else{const i=N.checkDefined(p0(r),"A JSDocType for this declaration should exist");N.assert(!r.type,"The JSDocType decl should have a type"),e.tryInsertTypeAnnotation(t,r,nt(i,I1,ji))}}function _Qe(e){return Bs(e)||e.kind===260||e.kind===171||e.kind===172}function I1(e){switch(e.kind){case 319:case 320:return w.createTypeReferenceNode("any",et);case 323:return gQe(e);case 322:return I1(e.type);case 321:return vQe(e);case 325:return yQe(e);case 324:return bQe(e);case 183:return SQe(e);case 329:return hQe(e);default:const t=In(e,I1,void 0);return pr(t,1),t}}function hQe(e){const t=w.createTypeLiteralNode(wt(e.jsDocPropertyTags,r=>w.createPropertySignature(void 0,Ve(r.name)?r.name:r.name.right,xk(r)?w.createToken(58):void 0,r.typeExpression&&nt(r.typeExpression.type,I1,ji)||w.createKeywordTypeNode(133))));return pr(t,1),t}function gQe(e){return w.createUnionTypeNode([nt(e.type,I1,ji),w.createTypeReferenceNode("undefined",et)])}function vQe(e){return w.createUnionTypeNode([nt(e.type,I1,ji),w.createTypeReferenceNode("null",et)])}function yQe(e){return w.createArrayTypeNode(nt(e.type,I1,ji))}function bQe(e){return w.createFunctionTypeNode(et,e.parameters.map(EQe),e.type??w.createKeywordTypeNode(133))}function EQe(e){const t=e.parent.parameters.indexOf(e),r=e.type.kind===325&&t===e.parent.parameters.length-1,i=e.name||(r?"rest":"arg"+t),o=r?w.createToken(26):e.dotDotDotToken;return w.createParameterDeclaration(e.modifiers,o,i,e.questionToken,nt(e.type,I1,ji),e.initializer)}function SQe(e){let t=e.typeName,r=e.typeArguments;if(Ve(e.typeName)){if(u3(e))return TQe(e);let i=e.typeName.text;switch(e.typeName.text){case"String":case"Boolean":case"Object":case"Number":i=i.toLowerCase();break;case"array":case"date":case"promise":i=i[0].toUpperCase()+i.slice(1);break}t=w.createIdentifier(i),(i==="Array"||i==="Promise")&&!e.typeArguments?r=w.createNodeArray([w.createTypeReferenceNode("any",et)]):r=Vn(e.typeArguments,I1,ji)}return w.createTypeReferenceNode(t,r)}function TQe(e){const t=w.createParameterDeclaration(void 0,void 0,e.typeArguments[0].kind===150?"n":"s",void 0,w.createTypeReferenceNode(e.typeArguments[0].kind===150?"number":"string",[]),void 0),r=w.createTypeLiteralNode([w.createIndexSignature(void 0,[t],e.typeArguments[1])]);return pr(r,1),r}var p$,efe,AQe=T({"src/services/codefixes/annotateWithTypeFromJSDoc.ts"(){si(),Ra(),p$="annotateWithTypeFromJSDoc",efe=[f.JSDoc_types_may_be_moved_to_TypeScript_types.code],Aa({errorCodes:efe,getCodeActions(e){const t=wPe(e.sourceFile,e.span.start);if(!t)return;const r=_r.ChangeTracker.with(e,i=>FPe(i,e.sourceFile,t));return[ca(p$,r,f.Annotate_with_type_from_JSDoc,p$,f.Annotate_everything_with_types_from_JSDoc)]},fixIds:[p$],getAllCodeActions:e=>Es(e,efe,(t,r)=>{const i=wPe(r.file,r.start);i&&FPe(t,r.file,i)})})}});function zPe(e,t,r,i,o,s){const l=i.getSymbolAtLocation(po(t,r));if(!l||!l.valueDeclaration||!(l.flags&19))return;const u=l.valueDeclaration;if(Ac(u)||Os(u))e.replaceNode(t,u,m(u));else if(wi(u)){const b=h(u);if(!b)return;const A=u.parent.parent;Uc(u.parent)&&u.parent.declarations.length>1?(e.delete(t,u),e.insertNodeAfter(t,A,b)):e.replaceNode(t,A,b)}function p(b){const A=[];return b.exports&&b.exports.forEach(M=>{if(M.name==="prototype"&&M.declarations){const C=M.declarations[0];if(M.declarations.length===1&&Fr(C)&&mr(C.parent)&&C.parent.operatorToken.kind===64&&Oa(C.parent.right)){const O=C.parent.right;R(O.symbol,void 0,A)}}else R(M,[w.createToken(126)],A)}),b.members&&b.members.forEach((M,C)=>{var O,U,K,Z;if(C==="constructor"&&M.valueDeclaration){const V=(Z=(K=(U=(O=b.exports)==null?void 0:O.get("prototype"))==null?void 0:U.declarations)==null?void 0:K[0])==null?void 0:Z.parent;V&&mr(V)&&Oa(V.right)&&bt(V.right.properties,m$)||e.delete(t,M.valueDeclaration.parent);return}R(M,void 0,A)}),A;function I(M,C){return ws(M)?Fr(M)&&m$(M)?!0:ea(C):Zn(M.properties,O=>!!(ql(O)||T4(O)||hc(O)&&Os(O.initializer)&&O.name||m$(O)))}function R(M,C,O){if(!(M.flags&8192)&&!(M.flags&4096))return;const U=M.valueDeclaration,K=U.parent,Z=K.right;if(!I(U,Z)||bt(O,he=>{const ye=Mo(he);return!!(ye&&Ve(ye)&&Sr(ye)===Sl(M))}))return;const V=K.parent&&K.parent.kind===244?K.parent:K;if(e.delete(t,V),!Z){O.push(w.createPropertyDeclaration(C,M.name,void 0,void 0,void 0));return}if(ws(U)&&(Os(Z)||Gs(Z))){const he=uf(t,o),ye=IQe(U,s,he);ye&&se(O,Z,ye);return}else if(Oa(Z)){Ue(Z.properties,he=>{(ql(he)||T4(he))&&O.push(he),hc(he)&&Os(he.initializer)&&se(O,he.initializer,he.name),m$(he)});return}else{if(dd(t)||!Fr(U))return;const he=w.createPropertyDeclaration(C,U.name,void 0,void 0,Z);PD(K.parent,he,t),O.push(he);return}function se(he,ye,$){return Os(ye)?G(he,ye,$):ne(he,ye,$)}function G(he,ye,$){const Y=So(C,f$(ye,134)),oe=w.createMethodDeclaration(Y,void 0,$,void 0,void 0,ye.parameters,void 0,ye.body);PD(K,oe,t),he.push(oe)}function ne(he,ye,$){const Y=ye.body;let oe;Y.kind===241?oe=Y:oe=w.createBlock([w.createReturnStatement(Y)]);const fe=So(C,f$(ye,134)),Ne=w.createMethodDeclaration(fe,void 0,$,void 0,void 0,ye.parameters,void 0,oe);PD(K,Ne,t),he.push(Ne)}}}function h(b){const A=b.initializer;if(!A||!Os(A)||!Ve(b.name))return;const I=p(b.symbol);A.body&&I.unshift(w.createConstructorDeclaration(void 0,A.parameters,A.body));const R=f$(b.parent.parent,95);return w.createClassDeclaration(R,b.name,void 0,void 0,I)}function m(b){const A=p(l);b.body&&A.unshift(w.createConstructorDeclaration(void 0,b.parameters,b.body));const I=f$(b,95);return w.createClassDeclaration(I,b.name,void 0,void 0,A)}}function f$(e,t){return Cm(e)?nr(e.modifiers,r=>r.kind===t):void 0}function m$(e){return e.name?!!(Ve(e.name)&&e.name.text==="constructor"):!1}function IQe(e,t,r){if(Fr(e))return e.name;const i=e.argumentExpression;if(vp(i))return i;if(ls(i))return tf(i.text,os(t))?w.createIdentifier(i.text):rI(i)?w.createStringLiteral(i.text,r===0):i}var _$,tfe,xQe=T({"src/services/codefixes/convertFunctionToEs6Class.ts"(){si(),Ra(),_$="convertFunctionToEs6Class",tfe=[f.This_constructor_function_may_be_converted_to_a_class_declaration.code],Aa({errorCodes:tfe,getCodeActions(e){const t=_r.ChangeTracker.with(e,r=>zPe(r,e.sourceFile,e.span.start,e.program.getTypeChecker(),e.preferences,e.program.getCompilerOptions()));return[ca(_$,t,f.Convert_function_to_an_ES2015_class,_$,f.Convert_all_constructor_functions_to_classes)]},fixIds:[_$],getAllCodeActions:e=>Es(e,tfe,(t,r)=>zPe(t,r.file,r.start,e.program.getTypeChecker(),e.preferences,e.program.getCompilerOptions()))})}});function BPe(e,t,r,i){const o=po(t,r);let s;if(Ve(o)&&wi(o.parent)&&o.parent.initializer&&Bs(o.parent.initializer)?s=o.parent.initializer:s=ii(Gp(po(t,r)),dY),!s)return;const l=new Map,u=lr(s),p=DQe(s,i),h=NQe(s,i,l);if(!cY(h,i))return;const m=h.body&&Xo(h.body)?RQe(h.body,i):et,b={checker:i,synthNamesMap:l,setOfExpressionsToReturn:p,isInJSFile:u};if(!m.length)return;const A=ka(t.text,L_(s).pos);e.insertModifierAt(t,A,134,{suffix:" "});for(const I of m)if(Ho(I,function R(M){if(la(M)){const C=GD(M,M,b,!1);if(WI())return!0;e.replaceNodeWithNodes(t,I,C)}else if(!ea(M)&&(Ho(M,R),WI()))return!0}),WI())return}function RQe(e,t){const r=[];return zE(e,i=>{j5(i,t)&&r.push(i)}),r}function DQe(e,t){if(!e.body)return new Set;const r=new Set;return Ho(e.body,function i(o){qO(o,t,"then")?(r.add(as(o)),Ue(o.arguments,i)):qO(o,t,"catch")||qO(o,t,"finally")?(r.add(as(o)),Ho(o,i)):VPe(o,t)?r.add(as(o)):Ho(o,i)}),r}function qO(e,t,r){if(!la(e))return!1;const o=oO(e,r)&&t.getTypeAtLocation(e);return!!(o&&t.getPromisedTypeOfPromise(o))}function GPe(e,t){return(Wr(e)&4)!==0&&e.target===t}function h$(e,t,r){if(e.expression.name.escapedText==="finally")return;const i=r.getTypeAtLocation(e.expression.expression);if(GPe(i,r.getPromiseType())||GPe(i,r.getPromiseLikeType()))if(e.expression.name.escapedText==="then"){if(t===Lv(e.arguments,0))return Lv(e.typeArguments,0);if(t===Lv(e.arguments,1))return Lv(e.typeArguments,1)}else return Lv(e.typeArguments,0)}function VPe(e,t){return yt(e)?!!t.getPromisedTypeOfPromise(t.getTypeAtLocation(e)):!1}function NQe(e,t,r){const i=new Map,o=Zp();return Ho(e,function s(l){if(!Ve(l)){Ho(l,s);return}const u=t.getSymbolAtLocation(l);if(u){const p=t.getTypeAtLocation(l),h=KPe(p,t),m=Ta(u).toString();if(h&&!Ao(l.parent)&&!Bs(l.parent)&&!r.has(m)){const b=Xc(h.parameters),A=(b==null?void 0:b.valueDeclaration)&&Ao(b.valueDeclaration)&&ii(b.valueDeclaration.name,Ve)||w.createUniqueName("result",16),I=jPe(A,o);r.set(m,I),o.add(A.text,u)}else if(l.parent&&(Ao(l.parent)||wi(l.parent)||Qa(l.parent))){const b=l.text,A=o.get(b);if(A&&A.some(I=>I!==u)){const I=jPe(l,o);i.set(m,I.identifier),r.set(m,I),o.add(b,u)}else{const I=cl(l);r.set(m,v2(I)),o.add(b,u)}}}}),bO(e,!0,s=>{if(Qa(s)&&Ve(s.name)&&am(s.parent)){const l=t.getSymbolAtLocation(s.name),u=l&&i.get(String(Ta(l)));if(u&&u.text!==(s.name||s.propertyName).getText())return w.createBindingElement(s.dotDotDotToken,s.propertyName||s.name,u,s.initializer)}else if(Ve(s)){const l=t.getSymbolAtLocation(s),u=l&&i.get(String(Ta(l)));if(u)return w.createIdentifier(u.text)}})}function jPe(e,t){const r=(t.get(e.text)||et).length,i=r===0?e:w.createIdentifier(e.text+"_"+r);return v2(i)}function WI(){return!_z}function B0(){return _z=!1,et}function GD(e,t,r,i,o){if(qO(t,r.checker,"then"))return MQe(t,Lv(t.arguments,0),Lv(t.arguments,1),r,i,o);if(qO(t,r.checker,"catch"))return qPe(t,Lv(t.arguments,0),r,i,o);if(qO(t,r.checker,"finally"))return PQe(t,Lv(t.arguments,0),r,i,o);if(Fr(t))return GD(e,t.expression,r,i,o);const s=r.checker.getTypeAtLocation(t);return s&&r.checker.getPromisedTypeOfPromise(s)?(N.assertNode(Pl(t).parent,Fr),LQe(e,t,r,i,o)):B0()}function g$({checker:e},t){if(t.kind===106)return!0;if(Ve(t)&&!sl(t)&&Sr(t)==="undefined"){const r=e.getSymbolAtLocation(t);return!r||e.isUndefinedSymbol(r)}return!1}function CQe(e){const t=w.createUniqueName(e.identifier.text,16);return v2(t)}function UPe(e,t,r){let i;return r&&!KO(e,t)&&(JO(r)?(i=r,t.synthNamesMap.forEach((o,s)=>{if(o.identifier.text===r.identifier.text){const l=CQe(r);t.synthNamesMap.set(s,l)}})):i=v2(w.createUniqueName("result",16),r.types),ofe(i)),i}function HPe(e,t,r,i,o){const s=[];let l;if(i&&!KO(e,t)){l=cl(ofe(i));const u=i.types,p=t.checker.getUnionType(u,2),h=t.isInJSFile?void 0:t.checker.typeToTypeNode(p,void 0,void 0),m=[w.createVariableDeclaration(l,void 0,h)],b=w.createVariableStatement(void 0,w.createVariableDeclarationList(m,1));s.push(b)}return s.push(r),o&&l&&OQe(o)&&s.push(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(cl(QPe(o)),void 0,void 0,l)],2))),s}function PQe(e,t,r,i,o){if(!t||g$(r,t))return GD(e,e.expression.expression,r,i,o);const s=UPe(e,r,o),l=GD(e,e.expression.expression,r,!0,s);if(WI())return B0();const u=rfe(t,i,void 0,void 0,e,r);if(WI())return B0();const p=w.createBlock(l),h=w.createBlock(u),m=w.createTryStatement(p,void 0,h);return HPe(e,r,m,s,o)}function qPe(e,t,r,i,o){if(!t||g$(r,t))return GD(e,e.expression.expression,r,i,o);const s=YPe(t,r),l=UPe(e,r,o),u=GD(e,e.expression.expression,r,!0,l);if(WI())return B0();const p=rfe(t,i,l,s,e,r);if(WI())return B0();const h=w.createBlock(u),m=w.createCatchClause(s&&cl(mz(s)),w.createBlock(p)),b=w.createTryStatement(h,m,void 0);return HPe(e,r,b,l,o)}function MQe(e,t,r,i,o,s){if(!t||g$(i,t))return qPe(e,r,i,o,s);if(r&&!g$(i,r))return B0();const l=YPe(t,i),u=GD(e.expression.expression,e.expression.expression,i,!0,l);if(WI())return B0();const p=rfe(t,o,s,l,e,i);return WI()?B0():So(u,p)}function LQe(e,t,r,i,o){if(KO(e,r)){let s=cl(t);return i&&(s=w.createAwaitExpression(s)),[w.createReturnStatement(s)]}return v$(o,w.createAwaitExpression(t),void 0)}function v$(e,t,r){return!e||$Pe(e)?[w.createExpressionStatement(t)]:JO(e)&&e.hasBeenDeclared?[w.createExpressionStatement(w.createAssignment(cl(ife(e)),t))]:[w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(cl(mz(e)),void 0,r,t)],2))]}function nfe(e,t){if(t&&e){const r=w.createUniqueName("result",16);return[...v$(v2(r),e,t),w.createReturnStatement(r)]}return[w.createReturnStatement(e)]}function rfe(e,t,r,i,o,s){var l;switch(e.kind){case 106:break;case 211:case 80:if(!i)break;const u=w.createCallExpression(cl(e),void 0,JO(i)?[ife(i)]:[]);if(KO(o,s))return nfe(u,h$(o,e,s.checker));const p=s.checker.getTypeAtLocation(e),h=s.checker.getSignaturesOfType(p,0);if(!h.length)return B0();const m=h[0].getReturnType(),b=v$(r,w.createAwaitExpression(u),h$(o,e,s.checker));return r&&r.types.push(s.checker.getAwaitedType(m)||m),b;case 218:case 219:{const A=e.body,I=(l=KPe(s.checker.getTypeAtLocation(e),s.checker))==null?void 0:l.getReturnType();if(Xo(A)){let R=[],M=!1;for(const C of A.statements)if(Dm(C))if(M=!0,j5(C,s.checker))R=R.concat(XPe(s,C,t,r));else{const O=I&&C.expression?JPe(s.checker,I,C.expression):C.expression;R.push(...nfe(O,h$(o,e,s.checker)))}else{if(t&&zE(C,Pv))return B0();R.push(C)}return KO(o,s)?R.map(C=>cl(C)):kQe(R,r,s,M)}else{const R=uY(A,s.checker)?XPe(s,w.createReturnStatement(A),t,r):et;if(R.length>0)return R;if(I){const M=JPe(s.checker,I,A);if(KO(o,s))return nfe(M,h$(o,e,s.checker));{const C=v$(r,M,void 0);return r&&r.types.push(s.checker.getAwaitedType(I)||I),C}}else return B0()}}default:return B0()}return et}function JPe(e,t,r){const i=cl(r);return e.getPromisedTypeOfPromise(t)?w.createAwaitExpression(i):i}function KPe(e,t){const r=t.getSignaturesOfType(e,0);return tl(r)}function kQe(e,t,r,i){const o=[];for(const s of e)if(Dm(s)){if(s.expression){const l=VPe(s.expression,r.checker)?w.createAwaitExpression(s.expression):s.expression;t===void 0?o.push(w.createExpressionStatement(l)):JO(t)&&t.hasBeenDeclared?o.push(w.createExpressionStatement(w.createAssignment(ife(t),l))):o.push(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(mz(t),void 0,void 0,l)],2)))}}else o.push(cl(s));return!i&&t!==void 0&&o.push(w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(mz(t),void 0,void 0,w.createIdentifier("undefined"))],2))),o}function XPe(e,t,r,i){let o=[];return Ho(t,function s(l){if(la(l)){const u=GD(l,l,e,r,i);if(o=o.concat(u),o.length>0)return}else ea(l)||Ho(l,s)}),o}function YPe(e,t){const r=[];let i;if(Bs(e)){if(e.parameters.length>0){const p=e.parameters[0].name;i=o(p)}}else Ve(e)?i=s(e):Fr(e)&&Ve(e.name)&&(i=s(e.name));if(!i||"identifier"in i&&i.identifier.text==="undefined")return;return i;function o(p){if(Ve(p))return s(p);const h=Pi(p.elements,m=>jc(m)?[]:[o(m.name)]);return wQe(p,h)}function s(p){const h=u(p),m=l(h);return m&&t.synthNamesMap.get(Ta(m).toString())||v2(p,r)}function l(p){var h;return((h=ii(p,x_))==null?void 0:h.symbol)??t.checker.getSymbolAtLocation(p)}function u(p){return p.original?p.original:p}}function $Pe(e){return e?JO(e)?!e.identifier.text:Zn(e.elements,$Pe):!0}function v2(e,t=[]){return{kind:0,identifier:e,types:t,hasBeenDeclared:!1,hasBeenReferenced:!1}}function wQe(e,t=et,r=[]){return{kind:1,bindingPattern:e,elements:t,types:r}}function ife(e){return e.hasBeenReferenced=!0,e.identifier}function mz(e){return JO(e)?ofe(e):QPe(e)}function QPe(e){for(const t of e.elements)mz(t);return e.bindingPattern}function ofe(e){return e.hasBeenDeclared=!0,e.identifier}function JO(e){return e.kind===0}function OQe(e){return e.kind===1}function KO(e,t){return!!e.original&&t.setOfExpressionsToReturn.has(as(e.original))}var y$,afe,_z,WQe=T({"src/services/codefixes/convertToAsyncFunction.ts"(){si(),Ra(),y$="convertToAsyncFunction",afe=[f.This_may_be_converted_to_an_async_function.code],_z=!0,Aa({errorCodes:afe,getCodeActions(e){_z=!0;const t=_r.ChangeTracker.with(e,r=>BPe(r,e.sourceFile,e.span.start,e.program.getTypeChecker()));return _z?[ca(y$,t,f.Convert_to_async_function,y$,f.Convert_all_to_async_functions)]:[]},fixIds:[y$],getAllCodeActions:e=>Es(e,afe,(t,r)=>BPe(t,r.file,r.start,e.program.getTypeChecker()))})}});function FQe(e,t,r,i,o){var s;for(const l of e.imports){const u=(s=r.getResolvedModuleFromModuleSpecifier(l))==null?void 0:s.resolvedModule;if(!u||u.resolvedFileName!==t.fileName)continue;const p=DC(l);switch(p.kind){case 271:i.replaceNode(e,p,ey(p.name,void 0,l,o));break;case 213:Ad(p,!1)&&i.replaceNode(e,p,w.createPropertyAccessExpression(cl(p),"default"));break}}}function zQe(e,t,r,i,o){const s={original:QQe(e),additional:new Set},l=BQe(e,t,s);GQe(e,l,r);let u=!1,p;for(const h of nr(e.statements,Ll)){const m=e2e(e,h,r,t,s,i,o);m&&F4(m,p??(p=new Map))}for(const h of nr(e.statements,m=>!Ll(m))){const m=VQe(e,h,t,r,s,i,l,p,o);u=u||m}return p==null||p.forEach((h,m)=>{r.replaceNode(e,m,h)}),u}function BQe(e,t,r){const i=new Map;return ZPe(e,o=>{const{text:s}=o.name;!i.has(s)&&(nU(o.name)||t.resolveName(s,o,111551,!0))&&i.set(s,b$(`_${s}`,r))}),i}function GQe(e,t,r){ZPe(e,(i,o)=>{if(o)return;const{text:s}=i.name;r.replaceNode(e,i,w.createIdentifier(t.get(s)||s))})}function ZPe(e,t){e.forEachChild(function r(i){if(Fr(i)&&f1(e,i.expression)&&Ve(i.name)){const{parent:o}=i;t(i,mr(o)&&o.left===i&&o.operatorToken.kind===64)}i.forEachChild(r)})}function VQe(e,t,r,i,o,s,l,u,p){switch(t.kind){case 243:return e2e(e,t,i,r,o,s,p),!1;case 244:{const{expression:h}=t;switch(h.kind){case 213:return Ad(h,!0)&&i.replaceNode(e,t,ey(void 0,void 0,h.arguments[0],p)),!1;case 226:{const{operatorToken:m}=h;return m.kind===64&&UQe(e,r,h,i,l,u)}}}default:return!1}}function e2e(e,t,r,i,o,s,l){const{declarationList:u}=t;let p=!1;const h=wt(u.declarations,m=>{const{name:b,initializer:A}=m;if(A){if(f1(e,A))return p=!0,y2([]);if(Ad(A,!0))return p=!0,YQe(b,A.arguments[0],i,o,s,l);if(Fr(A)&&Ad(A.expression,!0))return p=!0,jQe(b,A.name.text,A.expression.arguments[0],o,l)}return y2([w.createVariableStatement(void 0,w.createVariableDeclarationList([m],u.flags))])});if(p){r.replaceNodeWithNodes(e,t,Pi(h,b=>b.newImports));let m;return Ue(h,b=>{b.useSitesToUnqualify&&F4(b.useSitesToUnqualify,m??(m=new Map))}),m}}function jQe(e,t,r,i,o){switch(e.kind){case 206:case 207:{const s=b$(t,i);return y2([i2e(s,t,r,o),E$(void 0,e,w.createIdentifier(s))])}case 80:return y2([i2e(e.text,t,r,o)]);default:return N.assertNever(e,`Convert to ES module got invalid syntax form ${e.kind}`)}}function UQe(e,t,r,i,o,s){const{left:l,right:u}=r;if(!Fr(l))return!1;if(f1(e,l))if(f1(e,u))i.delete(e,r.parent);else{const p=Oa(u)?HQe(u,s):Ad(u,!0)?JQe(u.arguments[0],t):void 0;return p?(i.replaceNodeWithNodes(e,r.parent,p[0]),p[1]):(i.replaceRangeWithText(e,xf(l.getStart(e),u.pos),"export default"),!0)}else f1(e,l.expression)&&qQe(e,r,i,o);return!1}function HQe(e,t){const r=RE(e.properties,i=>{switch(i.kind){case 177:case 178:case 304:case 305:return;case 303:return Ve(i.name)?XQe(i.name.text,i.initializer,t):void 0;case 174:return Ve(i.name)?r2e(i.name.text,[w.createToken(95)],i,t):void 0;default:N.assertNever(i,`Convert to ES6 got invalid prop kind ${i.kind}`)}});return r&&[r,!1]}function qQe(e,t,r,i){const{text:o}=t.left.name,s=i.get(o);if(s!==void 0){const l=[E$(void 0,s,t.right),cfe([w.createExportSpecifier(!1,s,o)])];r.replaceNodeWithNodes(e,t.parent,l)}else KQe(t,e,r)}function JQe(e,t){const r=e.text,i=t.getSymbolAtLocation(e),o=i?i.exports:U6;return o.has("export=")?[[sfe(r)],!0]:o.has("default")?o.size>1?[[t2e(r),sfe(r)],!0]:[[sfe(r)],!0]:[[t2e(r)],!1]}function t2e(e){return cfe(void 0,e)}function sfe(e){return cfe([w.createExportSpecifier(!1,void 0,"default")],e)}function KQe({left:e,right:t,parent:r},i,o){const s=e.name.text;if((Os(t)||Gs(t)||Zc(t))&&(!t.name||t.name.text===s)){o.replaceRange(i,{pos:e.getStart(i),end:t.getStart(i)},w.createToken(95),{suffix:" "}),t.name||o.insertName(i,t,s);const l=vs(r,27,i);l&&o.delete(i,l)}else o.replaceNodeRangeWithNodes(i,e.expression,vs(e,25,i),[w.createToken(95),w.createToken(87)],{joiner:" ",suffix:" "})}function XQe(e,t,r){const i=[w.createToken(95)];switch(t.kind){case 218:{const{name:s}=t;if(s&&s.text!==e)return o()}case 219:return r2e(e,i,t,r);case 231:return eZe(e,i,t,r);default:return o()}function o(){return E$(i,w.createIdentifier(e),lfe(t,r))}}function lfe(e,t){if(!t||!bt(zo(t.keys()),i=>cf(e,i)))return e;return To(e)?MX(e,!0,r):bO(e,!0,r);function r(i){if(i.kind===211){const o=t.get(i);return t.delete(i),o}}}function YQe(e,t,r,i,o,s){switch(e.kind){case 206:{const l=RE(e.elements,u=>u.dotDotDotToken||u.initializer||u.propertyName&&!Ve(u.propertyName)||!Ve(u.name)?void 0:o2e(u.propertyName&&u.propertyName.text,u.name.text));if(l)return y2([ey(void 0,l,t,s)])}case 207:{const l=b$(Sfe(t.text,o),i);return y2([ey(w.createIdentifier(l),void 0,t,s),E$(void 0,cl(e),w.createIdentifier(l))])}case 80:return $Qe(e,t,r,i,s);default:return N.assertNever(e,`Convert to ES module got invalid name kind ${e.kind}`)}}function $Qe(e,t,r,i,o){const s=r.getSymbolAtLocation(e),l=new Map;let u=!1,p;for(const m of i.original.get(e.text)){if(r.getSymbolAtLocation(m)!==s||m===e)continue;const{parent:b}=m;if(Fr(b)){const{name:{text:A}}=b;if(A==="default"){u=!0;const I=m.getText();(p??(p=new Map)).set(b,w.createIdentifier(I))}else{N.assert(b.expression===m,"Didn't expect expression === use");let I=l.get(A);I===void 0&&(I=b$(A,i),l.set(A,I)),(p??(p=new Map)).set(b,w.createIdentifier(I))}}else u=!0}const h=l.size===0?void 0:zo(Ia(l.entries(),([m,b])=>w.createImportSpecifier(!1,m===b?void 0:w.createIdentifier(m),w.createIdentifier(b))));return h||(u=!0),y2([ey(u?cl(e):void 0,h,t,o)],p)}function b$(e,t){for(;t.original.has(e)||t.additional.has(e);)e=`_${e}`;return t.additional.add(e),e}function QQe(e){const t=Zp();return n2e(e,r=>t.add(r.text,r)),t}function n2e(e,t){Ve(e)&&ZQe(e)&&t(e),e.forEachChild(r=>n2e(r,t))}function ZQe(e){const{parent:t}=e;switch(t.kind){case 211:return t.name!==e;case 208:return t.propertyName!==e;case 276:return t.propertyName!==e;default:return!0}}function r2e(e,t,r,i){return w.createFunctionDeclaration(So(t,E1(r.modifiers)),cl(r.asteriskToken),e,E1(r.typeParameters),E1(r.parameters),cl(r.type),w.converters.convertToFunctionBlock(lfe(r.body,i)))}function eZe(e,t,r,i){return w.createClassDeclaration(So(t,E1(r.modifiers)),e,E1(r.typeParameters),E1(r.heritageClauses),lfe(r.members,i))}function i2e(e,t,r,i){return t==="default"?ey(w.createIdentifier(e),void 0,r,i):ey(void 0,[o2e(t,e)],r,i)}function o2e(e,t){return w.createImportSpecifier(!1,e!==void 0&&e!==t?w.createIdentifier(e):void 0,w.createIdentifier(t))}function E$(e,t,r){return w.createVariableStatement(e,w.createVariableDeclarationList([w.createVariableDeclaration(t,void 0,void 0,r)],2))}function cfe(e,t){return w.createExportDeclaration(void 0,!1,e&&w.createNamedExports(e),t===void 0?void 0:w.createStringLiteral(t))}function y2(e,t){return{newImports:e,useSitesToUnqualify:t}}var tZe=T({"src/services/codefixes/convertToEsModule.ts"(){si(),Ra(),Aa({errorCodes:[f.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES_module.code],getCodeActions(e){const{sourceFile:t,program:r,preferences:i}=e,o=_r.ChangeTracker.with(e,s=>{if(zQe(t,r.getTypeChecker(),s,os(r.getCompilerOptions()),uf(t,i)))for(const u of r.getSourceFiles())FQe(u,t,r,s,uf(u,i))});return[o_("convertToEsModule",o,f.Convert_to_ES_module)]}})}});function a2e(e,t){const r=Gn(po(e,t),xd);return N.assert(!!r,"Expected position to be owned by a qualified name."),Ve(r.left)?r:void 0}function s2e(e,t,r){const i=r.right.text,o=w.createIndexedAccessTypeNode(w.createTypeReferenceNode(r.left,void 0),w.createLiteralTypeNode(w.createStringLiteral(i)));e.replaceNode(t,r,o)}var S$,ufe,nZe=T({"src/services/codefixes/correctQualifiedNameToIndexedAccessType.ts"(){si(),Ra(),S$="correctQualifiedNameToIndexedAccessType",ufe=[f.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code],Aa({errorCodes:ufe,getCodeActions(e){const t=a2e(e.sourceFile,e.span.start);if(!t)return;const r=_r.ChangeTracker.with(e,o=>s2e(o,e.sourceFile,t)),i=`${t.left.text}["${t.right.text}"]`;return[ca(S$,r,[f.Rewrite_as_the_indexed_access_type_0,i],S$,f.Rewrite_all_as_indexed_access_types)]},fixIds:[S$],getAllCodeActions:e=>Es(e,ufe,(t,r)=>{const i=a2e(r.file,r.start);i&&s2e(t,r.file,i)})})}});function l2e(e,t){return ii(po(t,e.start).parent,Ku)}function c2e(e,t,r){if(!t)return;const i=t.parent,o=i.parent,s=rZe(t,r);if(s.length===i.elements.length)e.insertModifierBefore(r.sourceFile,156,i);else{const l=w.updateExportDeclaration(o,o.modifiers,!1,w.updateNamedExports(i,nr(i.elements,p=>!Nr(s,p))),o.moduleSpecifier,void 0),u=w.createExportDeclaration(void 0,!0,w.createNamedExports(s),o.moduleSpecifier,void 0);e.replaceNode(r.sourceFile,o,l,{leadingTriviaOption:_r.LeadingTriviaOption.IncludeAll,trailingTriviaOption:_r.TrailingTriviaOption.Exclude}),e.insertNodeAfter(r.sourceFile,o,u)}}function rZe(e,t){const r=e.parent;if(r.elements.length===1)return r.elements;const i=ude(Nd(r),t.program.getSemanticDiagnostics(t.sourceFile,t.cancellationToken));return nr(r.elements,o=>{var s;return o===e||((s=cde(o,i))==null?void 0:s.code)===T$[0]})}var T$,A$,iZe=T({"src/services/codefixes/convertToTypeOnlyExport.ts"(){si(),Ra(),T$=[f.Re_exporting_a_type_when_0_is_enabled_requires_using_export_type.code],A$="convertToTypeOnlyExport",Aa({errorCodes:T$,getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>c2e(i,l2e(t.span,t.sourceFile),t));if(r.length)return[ca(A$,r,f.Convert_to_type_only_export,A$,f.Convert_all_re_exported_types_to_type_only_exports)]},fixIds:[A$],getAllCodeActions:function(t){const r=new Map;return Es(t,T$,(i,o)=>{const s=l2e(o,t.sourceFile);s&&Rm(r,as(s.parent.parent))&&c2e(i,s,t)})}})}});function u2e(e,t){const{parent:r}=po(e,t);return np(r)||kc(r)&&r.importClause?r:void 0}function d2e(e,t,r){if(e.parent.parent.name)return!1;const i=e.parent.elements.filter(s=>!s.isTypeOnly);if(i.length===1)return!0;const o=r.getTypeChecker();for(const s of i)if(Ws.Core.eachSymbolReferenceInFile(s.name,o,t,u=>!T0(u)))return!1;return!0}function hz(e,t,r){var i;if(np(r))e.replaceNode(t,r,w.updateImportSpecifier(r,!0,r.propertyName,r.name));else{const o=r.importClause;if(o.name&&o.namedBindings)e.replaceNodeWithNodes(t,r,[w.createImportDeclaration(E1(r.modifiers,!0),w.createImportClause(!0,cl(o.name,!0),void 0),cl(r.moduleSpecifier,!0),cl(r.attributes,!0)),w.createImportDeclaration(E1(r.modifiers,!0),w.createImportClause(!0,void 0,cl(o.namedBindings,!0)),cl(r.moduleSpecifier,!0),cl(r.attributes,!0))]);else{const s=((i=o.namedBindings)==null?void 0:i.kind)===275?w.updateNamedImports(o.namedBindings,eo(o.namedBindings.elements,u=>w.updateImportSpecifier(u,!1,u.propertyName,u.name))):o.namedBindings,l=w.updateImportDeclaration(r,r.modifiers,w.updateImportClause(o,!0,o.name,s),r.moduleSpecifier,r.attributes);e.replaceNode(t,r,l)}}}var dfe,gz,oZe=T({"src/services/codefixes/convertToTypeOnlyImport.ts"(){si(),Ra(),dfe=[f.This_import_is_never_used_as_a_value_and_must_use_import_type_because_importsNotUsedAsValues_is_set_to_error.code,f._0_is_a_type_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code,f._0_resolves_to_a_type_only_declaration_and_must_be_imported_using_a_type_only_import_when_verbatimModuleSyntax_is_enabled.code],gz="convertToTypeOnlyImport",Aa({errorCodes:dfe,getCodeActions:function(t){var r;const i=u2e(t.sourceFile,t.span.start);if(i){const o=_r.ChangeTracker.with(t,u=>hz(u,t.sourceFile,i)),s=i.kind===276&&d2e(i,t.sourceFile,t.program)?_r.ChangeTracker.with(t,u=>hz(u,t.sourceFile,i.parent.parent.parent)):void 0,l=ca(gz,o,i.kind===276?[f.Use_type_0,((r=i.propertyName)==null?void 0:r.text)??i.name.text]:f.Use_import_type,gz,f.Fix_all_with_type_only_imports);return bt(s)?[o_(gz,s,f.Use_import_type),l]:[l]}},fixIds:[gz],getAllCodeActions:function(t){const r=new Set;return Es(t,dfe,(i,o)=>{const s=u2e(o.file,o.start);(s==null?void 0:s.kind)===272&&!r.has(s)?(hz(i,o.file,s),r.add(s)):(s==null?void 0:s.kind)===276&&!r.has(s.parent.parent.parent)&&d2e(s,o.file,t.program)?(hz(i,o.file,s.parent.parent.parent),r.add(s.parent.parent.parent)):(s==null?void 0:s.kind)===276&&hz(i,o.file,s)})}})}});function p2e(e,t,r,i,o=!1){if(!YS(t))return;const s=sZe(t);if(!s)return;const l=t.parent,{leftSibling:u,rightSibling:p}=aZe(t);let h=l.getStart(),m="";!u&&l.comment&&(h=f2e(l,l.getStart(),t.getStart()),m=`${i} */${i}`),u&&(o&&YS(u)?(h=t.getStart(),m=""):(h=f2e(l,u.getStart(),t.getStart()),m=`${i} */${i}`));let b=l.getEnd(),A="";p&&(o&&YS(p)?(b=p.getStart(),A=`${i}${i}`):(b=p.getStart(),A=`${i}/**${i} * `)),e.replaceRange(r,{pos:h,end:b},s,{prefix:m,suffix:A})}function aZe(e){const t=e.parent,r=t.getChildCount()-1,i=t.getChildren().findIndex(l=>l.getStart()===e.getStart()&&l.getEnd()===e.getEnd()),o=i>0?t.getChildAt(i-1):void 0,s=i<r?t.getChildAt(i+1):void 0;return{leftSibling:o,rightSibling:s}}function f2e(e,t,r){const i=e.getText().substring(t-e.getStart(),r-e.getStart());for(let o=i.length;o>0;o--)if(!/[*/\s]/g.test(i.substring(o-1,o)))return t+o;return r}function sZe(e){var t;const{typeExpression:r}=e;if(!r)return;const i=(t=e.name)==null?void 0:t.getText();if(i){if(r.kind===329)return lZe(i,r);if(r.kind===316)return cZe(i,r)}}function lZe(e,t){const r=m2e(t);if(bt(r))return w.createInterfaceDeclaration(void 0,e,void 0,void 0,r)}function cZe(e,t){const r=cl(t.type);if(r)return w.createTypeAliasDeclaration(void 0,w.createIdentifier(e),void 0,r)}function m2e(e){const t=e.jsDocPropertyTags;return bt(t)?Hi(t,i=>{var o;const s=uZe(i),l=(o=i.typeExpression)==null?void 0:o.type,u=i.isBracketed;let p;if(l&&XS(l)){const h=m2e(l);p=w.createTypeLiteralNode(h)}else l&&(p=cl(l));if(p&&s){const h=u?w.createToken(58):void 0;return w.createPropertySignature(void 0,s,h,p)}}):void 0}function uZe(e){return e.name.kind===80?e.name.text:e.name.right.text}function dZe(e){return Fp(e)?Pi(e.jsDoc,t=>{var r;return(r=t.tags)==null?void 0:r.filter(i=>YS(i))}):[]}var I$,pfe,pZe=T({"src/services/codefixes/convertTypedefToType.ts"(){si(),Ra(),I$="convertTypedefToType",pfe=[f.JSDoc_typedef_may_be_converted_to_TypeScript_type.code],Aa({fixIds:[I$],errorCodes:pfe,getCodeActions(e){const t=ty(e.host,e.formatContext.options),r=po(e.sourceFile,e.span.start);if(!r)return;const i=_r.ChangeTracker.with(e,o=>p2e(o,r,e.sourceFile,t));if(i.length>0)return[ca(I$,i,f.Convert_typedef_to_TypeScript_type,I$,f.Convert_all_typedef_to_TypeScript_types)]},getAllCodeActions:e=>Es(e,pfe,(t,r)=>{const i=ty(e.host,e.formatContext.options),o=po(r.file,r.start);o&&p2e(t,o,r.file,i,!0)})})}});function _2e(e,t){const r=po(e,t);if(Ve(r)){const i=aa(r.parent.parent,yp),o=r.getText(e);return{container:aa(i.parent,Ep),typeNode:i.type,constraint:o,name:o==="K"?"P":"K"}}}function h2e(e,t,{container:r,typeNode:i,constraint:o,name:s}){e.replaceNode(t,r,w.createMappedTypeNode(void 0,w.createTypeParameterDeclaration(void 0,s,w.createTypeReferenceNode(o)),void 0,void 0,i,void 0))}var x$,ffe,fZe=T({"src/services/codefixes/convertLiteralTypeToMappedType.ts"(){si(),Ra(),x$="convertLiteralTypeToMappedType",ffe=[f._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Did_you_mean_to_use_1_in_0.code],Aa({errorCodes:ffe,getCodeActions:function(t){const{sourceFile:r,span:i}=t,o=_2e(r,i.start);if(!o)return;const{name:s,constraint:l}=o,u=_r.ChangeTracker.with(t,p=>h2e(p,r,o));return[ca(x$,u,[f.Convert_0_to_1_in_0,l,s],x$,f.Convert_all_type_literals_to_mapped_type)]},fixIds:[x$],getAllCodeActions:e=>Es(e,ffe,(t,r)=>{const i=_2e(r.file,r.start);i&&h2e(t,r.file,i)})})}});function g2e(e,t){return N.checkDefined(su(po(e,t)),"There should be a containing class")}function v2e(e){return!e.valueDeclaration||!(pd(e.valueDeclaration)&2)}function y2e(e,t,r,i,o,s){const l=e.program.getTypeChecker(),u=mZe(i,l),p=l.getTypeAtLocation(t),m=l.getPropertiesOfType(p).filter(B6(v2e,C=>!u.has(C.escapedName))),b=l.getTypeAtLocation(i),A=An(i.members,C=>Ml(C));b.getNumberIndexType()||R(p,1),b.getStringIndexType()||R(p,0);const I=FI(r,e.program,s,e.host);Eme(i,m,r,e,s,I,C=>M(r,i,C)),I.writeFixes(o);function R(C,O){const U=l.getIndexInfoOfType(C,O);U&&M(r,i,l.indexInfoToIndexSignatureDeclaration(U,i,void 0,VD(e)))}function M(C,O,U){A?o.insertNodeAfter(C,A,U):o.insertMemberAtStart(C,O,U)}}function mZe(e,t){const r=D_(e);if(!r)return ua();const i=t.getTypeAtLocation(r),o=t.getPropertiesOfType(i);return ua(o.filter(v2e))}var mfe,R$,_Ze=T({"src/services/codefixes/fixClassIncorrectlyImplementsInterface.ts"(){si(),Ra(),mfe=[f.Class_0_incorrectly_implements_interface_1.code,f.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code],R$="fixClassIncorrectlyImplementsInterface",Aa({errorCodes:mfe,getCodeActions(e){const{sourceFile:t,span:r}=e,i=g2e(t,r.start);return Hi(AR(i),o=>{const s=_r.ChangeTracker.with(e,l=>y2e(e,o,t,i,l,e.preferences));return s.length===0?void 0:ca(R$,s,[f.Implement_interface_0,o.getText(t)],R$,f.Implement_all_unimplemented_interfaces)})},fixIds:[R$],getAllCodeActions(e){const t=new Map;return Es(e,mfe,(r,i)=>{const o=g2e(i.file,i.start);if(Rm(t,as(o)))for(const s of AR(o))y2e(e,s,i.file,o,r,e.preferences)})}})}});function FI(e,t,r,i,o){return b2e(e,t,!1,r,i,o)}function b2e(e,t,r,i,o,s){const l=t.getCompilerOptions(),u=[],p=[],h=new Map,m=new Map;return{addImportFromDiagnostic:b,addImportFromExportedSymbol:A,writeFixes:R,hasFixes:M};function b(C,O){const U=x2e(O,C.code,C.start,r);!U||!U.length||I(Ha(U))}function A(C,O){const U=N.checkDefined(C.parent),K=M5(C,os(l)),Z=t.getTypeChecker(),V=Z.getMergedSymbol(bu(C,Z)),se=T2e(e,V,K,U,!1,t,o,i,s),G=N$(e,t),ne=E2e(e,N.checkDefined(se),t,void 0,!!O,G,o,i);ne&&I({fix:ne,symbolName:K,errorIdentifierText:void 0})}function I(C){var O,U;const{fix:K,symbolName:Z}=C;switch(K.kind){case 0:u.push(K);break;case 1:p.push(K);break;case 2:{const{importClauseOrBindingPattern:ne,importKind:he,addAsTypeOnly:ye}=K,$=String(as(ne));let Y=h.get($);if(Y||h.set($,Y={importClauseOrBindingPattern:ne,defaultImport:void 0,namedImports:new Map}),he===0){const oe=Y==null?void 0:Y.namedImports.get(Z);Y.namedImports.set(Z,V(oe,ye))}else N.assert(Y.defaultImport===void 0||Y.defaultImport.name===Z,"(Add to Existing) Default import should be missing or match symbolName"),Y.defaultImport={name:Z,addAsTypeOnly:V((O=Y.defaultImport)==null?void 0:O.addAsTypeOnly,ye)};break}case 3:{const{moduleSpecifier:ne,importKind:he,useRequire:ye,addAsTypeOnly:$}=K,Y=se(ne,he,ye,$);switch(N.assert(Y.useRequire===ye,"(Add new) Tried to add an `import` and a `require` for the same module"),he){case 1:N.assert(Y.defaultImport===void 0||Y.defaultImport.name===Z,"(Add new) Default import should be missing or match symbolName"),Y.defaultImport={name:Z,addAsTypeOnly:V((U=Y.defaultImport)==null?void 0:U.addAsTypeOnly,$)};break;case 0:const oe=(Y.namedImports||(Y.namedImports=new Map)).get(Z);Y.namedImports.set(Z,V(oe,$));break;case 3:case 2:N.assert(Y.namespaceLikeImport===void 0||Y.namespaceLikeImport.name===Z,"Namespacelike import shoudl be missing or match symbolName"),Y.namespaceLikeImport={importKind:he,name:Z,addAsTypeOnly:$};break}break}case 4:break;default:N.assertNever(K,`fix wasn't never - got kind ${K.kind}`)}function V(ne,he){return Math.max(ne??0,he)}function se(ne,he,ye,$){const Y=G(ne,!0),oe=G(ne,!1),fe=m.get(Y),Ne=m.get(oe),pe={defaultImport:void 0,namedImports:void 0,namespaceLikeImport:void 0,useRequire:ye};return he===1&&$===2?fe||(m.set(Y,pe),pe):$===1&&(fe||Ne)?fe||Ne:Ne||(m.set(oe,pe),pe)}function G(ne,he){return`${he?1:0}|${ne}`}}function R(C,O){let U;e.imports.length===0&&O!==void 0?U=O:U=uf(e,i);for(const Z of u)yfe(C,e,Z);for(const Z of p)L2e(C,e,Z,U);h.forEach(({importClauseOrBindingPattern:Z,defaultImport:V,namedImports:se})=>{M2e(C,e,Z,V,zo(se.entries(),([G,ne])=>({addAsTypeOnly:ne,name:G})),i)});let K;m.forEach(({useRequire:Z,defaultImport:V,namedImports:se,namespaceLikeImport:G},ne)=>{const he=ne.slice(2),$=(Z?O2e:w2e)(he,U,V,se&&zo(se.entries(),([Y,oe])=>({addAsTypeOnly:oe,name:Y})),G,l,i);K=Wx(K,$)}),K&&s2(C,e,K,!0,i)}function M(){return u.length>0||p.length>0||h.size>0||m.size>0}}function hZe(e,t,r,i){const o=m2(e,i,r),s=A2e(t.getTypeChecker(),e,t.getCompilerOptions());return{getModuleSpecifierForBestExportInfo:l};function l(u,p,h,m){const{fixes:b,computedWithoutCacheCount:A}=D$(u,p,h,!1,t,e,r,i,s,m),I=R2e(b,e,t,o,r);return I&&{...I,computedWithoutCacheCount:A}}}function gZe(e,t,r,i,o,s,l,u,p,h,m,b){let A;r?(A=RO(i,l,u,m,b).get(i.path,r),N.assertIsDefined(A,"Some exportInfo should match the specified exportMapKey")):(A=WV(tm(t.name))?[yZe(e,o,t,u,l)]:T2e(i,e,o,t,s,u,l,m,b),N.assertIsDefined(A,"Some exportInfo should match the specified symbol / moduleSymbol"));const I=N$(i,u),R=T0(po(i,h)),M=N.checkDefined(E2e(i,A,u,h,R,I,l,m));return{moduleSpecifier:M.moduleSpecifier,codeAction:S2e(vfe({host:l,formatContext:p,preferences:m},i,o,M,!1,u,m))}}function vZe(e,t,r,i,o,s){const l=r.getCompilerOptions(),u=mG(gfe(e,r.getTypeChecker(),t,l)),p=C2e(e,t,u,r),h=u!==t.text;return p&&S2e(vfe({host:i,formatContext:o,preferences:s},e,u,p,h,r,s))}function E2e(e,t,r,i,o,s,l,u){const p=m2(e,u,l);return R2e(D$(t,i,o,s,r,e,l,u).fixes,e,r,p,l)}function S2e({description:e,changes:t,commands:r}){return{description:e,changes:t,commands:r}}function T2e(e,t,r,i,o,s,l,u,p){const h=I2e(s,l);return RO(e,l,s,u,p).search(e.path,o,m=>m===r,m=>{if(bu(m[0].symbol,h(m[0].isFromPackageJson))===t&&m.some(b=>b.moduleSymbol===i||b.symbol.parent===i))return m})}function yZe(e,t,r,i,o){var s,l;const u=i.getCompilerOptions(),p=m(i.getTypeChecker(),!1);if(p)return p;const h=(l=(s=o.getPackageJsonAutoImportProvider)==null?void 0:s.call(o))==null?void 0:l.getTypeChecker();return N.checkDefined(h&&m(h,!0),"Could not find symbol in specified module for code actions");function m(b,A){const I=z5(r,b,u);if(I&&bu(I.symbol,b)===e)return{symbol:I.symbol,moduleSymbol:r,moduleFileName:void 0,exportKind:I.exportKind,targetFlags:bu(e,b).flags,isFromPackageJson:A};const R=b.tryGetMemberInModuleExportsAndProperties(t,r);if(R&&bu(R,b)===e)return{symbol:R,moduleSymbol:r,moduleFileName:void 0,exportKind:0,targetFlags:bu(e,b).flags,isFromPackageJson:A}}}function D$(e,t,r,i,o,s,l,u,p=A2e(o.getTypeChecker(),s,o.getCompilerOptions()),h){const m=o.getTypeChecker(),b=Pi(e,p.getImportsForExportInfo),A=t!==void 0&&bZe(b,t),I=SZe(b,r,m,o.getCompilerOptions());if(I)return{computedWithoutCacheCount:0,fixes:[...A?[A]:et,I]};const{fixes:R,computedWithoutCacheCount:M=0}=AZe(e,b,o,s,t,r,i,l,u,h);return{computedWithoutCacheCount:M,fixes:[...A?[A]:et,...R]}}function bZe(e,t){return Ut(e,({declaration:r,importKind:i})=>{var o;if(i!==0)return;const s=EZe(r),l=s&&((o=vR(r))==null?void 0:o.text);if(l)return{kind:0,namespacePrefix:s,usagePosition:t,moduleSpecifier:l}})}function EZe(e){var t,r,i;switch(e.kind){case 260:return(t=ii(e.name,Ve))==null?void 0:t.text;case 271:return e.name.text;case 272:return(i=ii((r=e.importClause)==null?void 0:r.namedBindings,nb))==null?void 0:i.name.text;default:return N.assertNever(e)}}function _fe(e,t,r,i,o,s){return e?t&&s.importsNotUsedAsValues===2||LU(s)&&(!(i&111551)||o.getTypeOnlyAliasDeclaration(r))?2:1:4}function SZe(e,t,r,i){let o;for(const l of e){const u=s(l);if(!u)continue;const p=_L(u.importClauseOrBindingPattern);if(u.addAsTypeOnly!==4&&p||u.addAsTypeOnly===4&&!p)return u;o??(o=u)}return o;function s({declaration:l,importKind:u,symbol:p,targetFlags:h}){if(u===3||u===2||l.kind===271)return;if(l.kind===260)return(u===0||u===1)&&l.name.kind===206?{kind:2,importClauseOrBindingPattern:l.name,importKind:u,moduleSpecifier:l.initializer.arguments[0].text,addAsTypeOnly:4}:void 0;const{importClause:m}=l;if(!m||!ls(l.moduleSpecifier))return;const{name:b,namedBindings:A}=m;if(m.isTypeOnly&&!(u===0&&A))return;const I=_fe(t,!1,p,h,r,i);if(!(u===1&&(b||I===2&&A))&&!(u===0&&(A==null?void 0:A.kind)===274))return{kind:2,importClauseOrBindingPattern:m,importKind:u,moduleSpecifier:l.moduleSpecifier.text,addAsTypeOnly:I}}}function A2e(e,t,r){let i;for(const o of t.imports){const s=DC(o);if(d3(s.parent)){const l=e.resolveExternalModuleName(o);l&&(i||(i=Zp())).add(Ta(l),s.parent)}else if(s.kind===272||s.kind===271){const l=e.getSymbolAtLocation(o);l&&(i||(i=Zp())).add(Ta(l),s)}}return{getImportsForExportInfo:({moduleSymbol:o,exportKind:s,targetFlags:l,symbol:u})=>{if(!(l&111551)&&dd(t))return et;const p=i==null?void 0:i.get(Ta(o));if(!p)return et;const h=hfe(t,s,r);return p.map(m=>({declaration:m,importKind:h,symbol:u,targetFlags:l}))}}}function N$(e,t){if(!dd(e))return!1;if(e.commonJsModuleIndicator&&!e.externalModuleIndicator)return!0;if(e.externalModuleIndicator&&!e.commonJsModuleIndicator)return!1;const r=t.getCompilerOptions();if(r.configFile)return wu(r)<5;if(e.impliedNodeFormat===1)return!0;if(e.impliedNodeFormat===99)return!1;for(const i of t.getSourceFiles())if(!(i===e||!dd(i)||t.isSourceFileFromExternalLibrary(i))){if(i.commonJsModuleIndicator&&!i.externalModuleIndicator)return!0;if(i.externalModuleIndicator&&!i.commonJsModuleIndicator)return!1}return!0}function I2e(e,t){return uh(r=>r?t.getPackageJsonAutoImportProvider().getTypeChecker():e.getTypeChecker())}function TZe(e,t,r,i,o,s,l,u,p){const h=dd(t),m=e.getCompilerOptions(),b=sT(e,l),A=I2e(e,l),I=md(m),R=m5(I),M=p?U=>({moduleSpecifiers:m1.tryGetModuleSpecifiersFromCache(U,t,b,u),computedWithoutCache:!1}):(U,K)=>m1.getModuleSpecifiersWithCacheInfo(U,K,m,t,b,u,void 0,!0);let C=0;const O=Pi(s,(U,K)=>{const Z=A(U.isFromPackageJson),{computedWithoutCache:V,moduleSpecifiers:se}=M(U.moduleSymbol,Z),G=!!(U.targetFlags&111551),ne=_fe(i,!0,U.symbol,U.targetFlags,Z,m);return C+=V?1:0,Hi(se,he=>{var ye;if(R&&L0(he))return;if(!G&&h&&r!==void 0)return{kind:1,moduleSpecifier:he,usagePosition:r,exportInfo:U,isReExport:K>0};const $=hfe(t,U.exportKind,m);let Y;if(r!==void 0&&$===3&&U.exportKind===0){const oe=Z.resolveExternalModuleSymbol(U.moduleSymbol);let fe;oe!==U.moduleSymbol&&(fe=(ye=B5(oe,Z,m))==null?void 0:ye.name),fe||(fe=Efe(U.moduleSymbol,os(m),!1)),Y={namespacePrefix:fe,usagePosition:r}}return{kind:3,moduleSpecifier:he,importKind:$,useRequire:o,addAsTypeOnly:ne,exportInfo:U,isReExport:K>0,qualification:Y}})});return{computedWithoutCacheCount:C,fixes:O}}function AZe(e,t,r,i,o,s,l,u,p,h){const m=Ut(t,b=>IZe(b,s,l,r.getTypeChecker(),r.getCompilerOptions()));return m?{fixes:[m]}:TZe(r,i,o,s,l,e,u,p,h)}function IZe({declaration:e,importKind:t,symbol:r,targetFlags:i},o,s,l,u){var p;const h=(p=vR(e))==null?void 0:p.text;if(h){const m=s?4:_fe(o,!0,r,i,l,u);return{kind:3,moduleSpecifier:h,importKind:t,addAsTypeOnly:m,useRequire:s}}}function x2e(e,t,r,i){const o=po(e.sourceFile,r);let s;if(t===f._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code)s=NZe(e,o);else if(Ve(o))if(t===f._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code){const u=mG(gfe(e.sourceFile,e.program.getTypeChecker(),o,e.program.getCompilerOptions())),p=C2e(e.sourceFile,o,u,e.program);return p&&[{fix:p,symbolName:u,errorIdentifierText:o.text}]}else s=MZe(e,o,i);else return;const l=m2(e.sourceFile,e.preferences,e.host);return s&&xZe(s,e.sourceFile,e.program,l,e.host)}function xZe(e,t,r,i,o){const s=l=>ol(l,o.getCurrentDirectory(),Gv(o));return uS(e,(l,u)=>Ry(!!l.isJsxNamespaceFix,!!u.isJsxNamespaceFix)||rl(l.fix.kind,u.fix.kind)||D2e(l.fix,u.fix,t,r,i.allowsImportingSpecifier,s))}function R2e(e,t,r,i,o){if(bt(e))return e[0].kind===0||e[0].kind===2?e[0]:e.reduce((s,l)=>D2e(l,s,t,r,i.allowsImportingSpecifier,u=>ol(u,o.getCurrentDirectory(),Gv(o)))===-1?l:s)}function D2e(e,t,r,i,o,s){return e.kind!==0&&t.kind!==0?Ry(o(t.moduleSpecifier),o(e.moduleSpecifier))||DZe(e.moduleSpecifier,t.moduleSpecifier,r,i)||Ry(N2e(e,r,i.getCompilerOptions(),s),N2e(t,r,i.getCompilerOptions(),s))||Sk(e.moduleSpecifier,t.moduleSpecifier):0}function N2e(e,t,r,i){var o;if(e.isReExport&&((o=e.exportInfo)!=null&&o.moduleFileName)&&RZe(e.exportInfo.moduleFileName)){const s=i(ai(e.exportInfo.moduleFileName));return uo(t.path,s)}return!1}function RZe(e){return ic(e,[".js",".jsx",".d.ts",".ts",".tsx"],!0)==="index"}function DZe(e,t,r,i){return uo(e,"node:")&&!uo(t,"node:")?k5(r,i)?-1:1:uo(t,"node:")&&!uo(e,"node:")?k5(r,i)?1:-1:0}function NZe({sourceFile:e,program:t,host:r,preferences:i},o){const s=t.getTypeChecker(),l=CZe(o,s);if(!l)return;const u=s.getAliasedSymbol(l),p=l.name,h=[{symbol:l,moduleSymbol:u,moduleFileName:void 0,exportKind:3,targetFlags:u.flags,isFromPackageJson:!1}],m=N$(e,t);return D$(h,void 0,!1,m,t,e,r,i).fixes.map(A=>{var I;return{fix:A,symbolName:p,errorIdentifierText:(I=ii(o,Ve))==null?void 0:I.text}})}function CZe(e,t){const r=Ve(e)?t.getSymbolAtLocation(e):void 0;if(z3(r))return r;const{parent:i}=e;if(ud(i)&&i.tagName===e||hI(i)){const o=t.resolveName(t.getJsxNamespace(i),ud(i)?e:i,111551,!1);if(z3(o))return o}}function hfe(e,t,r,i){if(r.verbatimModuleSyntax&&(wu(r)===1||e.impliedNodeFormat===1))return 3;switch(t){case 0:return 0;case 1:return 1;case 2:return wZe(e,r,!!i);case 3:return PZe(e,r,!!i);default:return N.assertNever(t)}}function PZe(e,t,r){if(FS(t))return 1;const i=wu(t);switch(i){case 2:case 1:case 3:return lr(e)&&(sc(e)||r)?2:3;case 4:case 5:case 6:case 7:case 99:case 0:case 200:return 2;case 100:case 199:return e.impliedNodeFormat===99?2:3;default:return N.assertNever(i,`Unexpected moduleKind ${i}`)}}function MZe({sourceFile:e,program:t,cancellationToken:r,host:i,preferences:o},s,l){const u=t.getTypeChecker(),p=t.getCompilerOptions();return Pi(gfe(e,u,s,p),h=>{if(h==="default")return;const m=T0(s),b=N$(e,t),A=kZe(h,_R(s),oT(s),r,e,t,l,i,o);return zo(Qp(A.values(),I=>D$(I,s.getStart(e),m,b,t,e,i,o).fixes),I=>({fix:I,symbolName:h,errorIdentifierText:s.text,isJsxNamespaceFix:h!==s.text}))})}function C2e(e,t,r,i){const o=i.getTypeChecker(),s=o.resolveName(r,t,111551,!0);if(!s)return;const l=o.getTypeOnlyAliasDeclaration(s);if(!(!l||jn(l)!==e))return{kind:4,typeOnlyAliasDeclaration:l}}function gfe(e,t,r,i){const o=r.parent;if((ud(o)||a1(o))&&o.tagName===r&&UX(i.jsx)){const s=t.getJsxNamespace(e);if(LZe(s,r,t))return!DR(r.text)&&!t.resolveName(r.text,r,111551,!1)?[r.text,s]:[s]}return[r.text]}function LZe(e,t,r){if(DR(t.text))return!0;const i=r.resolveName(e,t,111551,!0);return!i||bt(i.declarations,m0)&&!(i.flags&111551)}function kZe(e,t,r,i,o,s,l,u,p){var h;const m=Zp(),b=m2(o,p,u),A=(h=u.getModuleSpecifierCache)==null?void 0:h.call(u),I=uh(M=>sT(M?u.getPackageJsonAutoImportProvider():s,u));function R(M,C,O,U,K,Z){const V=I(Z);if(C&&$X(K,o,C,p,b,V,A)||!C&&b.allowsImportingAmbientModule(M,V)){const se=K.getTypeChecker();m.add(ede(O,se).toString(),{symbol:O,moduleSymbol:M,moduleFileName:C==null?void 0:C.fileName,exportKind:U,targetFlags:bu(O,se).flags,isFromPackageJson:Z})}}return QX(s,u,p,l,(M,C,O,U)=>{const K=O.getTypeChecker();i.throwIfCancellationRequested();const Z=O.getCompilerOptions(),V=z5(M,K,Z);V&&(V.name===e||Efe(M,os(Z),t)===e)&&F2e(V.resolvedSymbol,r)&&R(M,C,V.symbol,V.exportKind,O,U);const se=K.tryGetMemberInModuleExportsAndProperties(e,M);se&&F2e(se,r)&&R(M,C,se,0,O,U)}),m}function wZe(e,t,r){const i=FS(t),o=lr(e);if(!o&&wu(t)>=5)return i?1:2;if(o)return sc(e)||r?i?1:2:3;for(const s of e.statements)if(tu(s)&&!zl(s.moduleReference))return 3;return i?1:3}function vfe(e,t,r,i,o,s,l){let u;const p=_r.ChangeTracker.with(e,h=>{u=OZe(h,t,r,i,o,s,l)});return ca(Tfe,p,u,Afe,f.Add_all_missing_imports)}function OZe(e,t,r,i,o,s,l){const u=uf(t,l);switch(i.kind){case 0:return yfe(e,t,i),[f.Change_0_to_1,r,`${i.namespacePrefix}.${r}`];case 1:return L2e(e,t,i,u),[f.Change_0_to_1,r,k2e(i.moduleSpecifier,u)+r];case 2:{const{importClauseOrBindingPattern:p,importKind:h,addAsTypeOnly:m,moduleSpecifier:b}=i;M2e(e,t,p,h===1?{name:r,addAsTypeOnly:m}:void 0,h===0?[{name:r,addAsTypeOnly:m}]:et,l);const A=tm(b);return o?[f.Import_0_from_1,r,A]:[f.Update_import_from_0,A]}case 3:{const{importKind:p,moduleSpecifier:h,addAsTypeOnly:m,useRequire:b,qualification:A}=i,I=b?O2e:w2e,R=p===1?{name:r,addAsTypeOnly:m}:void 0,M=p===0?[{name:r,addAsTypeOnly:m}]:void 0,C=p===2||p===3?{importKind:p,name:(A==null?void 0:A.namespacePrefix)||r,addAsTypeOnly:m}:void 0;return s2(e,t,I(h,u,R,M,C,s.getCompilerOptions(),l),!0,l),A&&yfe(e,t,A),o?[f.Import_0_from_1,r,h]:[f.Add_import_from_0,h]}case 4:{const{typeOnlyAliasDeclaration:p}=i,h=WZe(e,p,s,t,l);return h.kind===276?[f.Remove_type_from_import_of_0_from_1,r,P2e(h.parent.parent)]:[f.Remove_type_from_import_declaration_from_0,P2e(h)]}default:return N.assertNever(i,`Unexpected fix kind ${i.kind}`)}}function P2e(e){var t,r;return e.kind===271?((r=ii((t=ii(e.moduleReference,Ah))==null?void 0:t.expression,ls))==null?void 0:r.text)||e.moduleReference.getText():aa(e.parent.moduleSpecifier,Ma).text}function WZe(e,t,r,i,o){const s=r.getCompilerOptions(),l=LU(s);switch(t.kind){case 276:if(t.isTypeOnly){const p=Lm.detectImportSpecifierSorting(t.parent.elements,o);if(t.parent.elements.length>1&&p){const h=w.updateImportSpecifier(t,!1,t.propertyName,t.name),m=Lm.getOrganizeImportsComparer(o,p===2),b=Lm.getImportSpecifierInsertionIndex(t.parent.elements,h,m,o);if(b!==t.parent.elements.indexOf(t))return e.delete(i,t),e.insertImportSpecifierAtIndex(i,h,t.parent,b),t}return e.deleteRange(i,{pos:_0(t.getFirstToken()),end:_0(t.propertyName??t.name)}),t}else return N.assert(t.parent.parent.isTypeOnly),u(t.parent.parent),t.parent.parent;case 273:return u(t),t;case 274:return u(t.parent),t.parent;case 271:return e.deleteRange(i,t.getChildAt(1)),t;default:N.failBadSyntaxKind(t)}function u(p){var h;if(e.delete(i,EX(p,i)),!s.allowImportingTsExtensions){const m=vR(p.parent),b=m&&((h=r.getResolvedModuleFromModuleSpecifier(m))==null?void 0:h.resolvedModule);if(b!=null&&b.resolvedUsingTsExtension){const A=$M(m.text,p7(m.text,s));e.replaceNode(i,m,w.createStringLiteral(A))}}if(l){const m=ii(p.namedBindings,Hg);if(m&&m.elements.length>1){Lm.detectImportSpecifierSorting(m.elements,o)&&t.kind===276&&m.elements.indexOf(t)!==0&&(e.delete(i,t),e.insertImportSpecifierAtIndex(i,t,m,0));for(const b of m.elements)b!==t&&!b.isTypeOnly&&e.insertModifierBefore(i,156,b)}}}}function M2e(e,t,r,i,o,s){var l;if(r.kind===206){i&&h(r,i.name,"default");for(const m of o)h(r,m.name,void 0);return}const u=r.isTypeOnly&&bt([i,...o],m=>(m==null?void 0:m.addAsTypeOnly)===4),p=r.namedBindings&&((l=ii(r.namedBindings,Hg))==null?void 0:l.elements);if(i&&(N.assert(!r.name,"Cannot add a default import to an import clause that already has one"),e.insertNodeAt(t,r.getStart(t),w.createIdentifier(i.name),{suffix:", "})),o.length){let m;if(typeof s.organizeImportsIgnoreCase=="boolean")m=s.organizeImportsIgnoreCase;else if(p){const R=Lm.detectImportSpecifierSorting(p,s);R!==3&&(m=R===2)}m===void 0&&(m=Lm.detectSorting(t,s)===2);const b=Lm.getOrganizeImportsComparer(s,m),A=Dv(o.map(R=>w.createImportSpecifier((!r.isTypeOnly||u)&&C$(R,s),void 0,w.createIdentifier(R.name))),(R,M)=>Lm.compareImportOrExportSpecifiers(R,M,b)),I=(p==null?void 0:p.length)&&Lm.detectImportSpecifierSorting(p,s);if(I&&!(m&&I===1))for(const R of A){const M=u&&!R.isTypeOnly?0:Lm.getImportSpecifierInsertionIndex(p,R,b,s);e.insertImportSpecifierAtIndex(t,R,r.namedBindings,M)}else if(p!=null&&p.length)for(const R of A)e.insertNodeInListAfter(t,Ya(p),R,p);else if(A.length){const R=w.createNamedImports(A);r.namedBindings?e.replaceNode(t,r.namedBindings,R):e.insertNodeAfter(t,N.checkDefined(r.name,"Import clause must have either named imports or a default import"),R)}}if(u&&(e.delete(t,EX(r,t)),p))for(const m of p)e.insertModifierBefore(t,156,m);function h(m,b,A){const I=w.createBindingElement(void 0,A,b);m.elements.length?e.insertNodeInListAfter(t,Ya(m.elements),I):e.replaceNode(t,m,w.createObjectBindingPattern([I]))}}function yfe(e,t,{namespacePrefix:r,usagePosition:i}){e.insertText(t,i,r+".")}function L2e(e,t,{moduleSpecifier:r,usagePosition:i},o){e.insertText(t,i,k2e(r,o))}function k2e(e,t){const r=bX(t);return`import(${r}${e}${r}).`}function bfe({addAsTypeOnly:e}){return e===2}function C$(e,t){return bfe(e)||!!t.preferTypeOnlyAutoImports&&e.addAsTypeOnly!==4}function w2e(e,t,r,i,o,s,l){const u=MI(e,t);let p;if(r!==void 0||i!=null&&i.length){const h=(!r||bfe(r))&&Zn(i,bfe)||(s.verbatimModuleSyntax||l.preferTypeOnlyAutoImports)&&(r==null?void 0:r.addAsTypeOnly)!==4&&!bt(i,m=>m.addAsTypeOnly===4);p=Wx(p,ey(r&&w.createIdentifier(r.name),i==null?void 0:i.map(m=>w.createImportSpecifier(!h&&C$(m,l),void 0,w.createIdentifier(m.name))),e,t,h))}if(o){const h=o.importKind===3?w.createImportEqualsDeclaration(void 0,C$(o,l),w.createIdentifier(o.name),w.createExternalModuleReference(u)):w.createImportDeclaration(void 0,w.createImportClause(C$(o,l),void 0,w.createNamespaceImport(w.createIdentifier(o.name))),u,void 0);p=Wx(p,h)}return N.checkDefined(p)}function O2e(e,t,r,i,o){const s=MI(e,t);let l;if(r||i!=null&&i.length){const u=(i==null?void 0:i.map(({name:h})=>w.createBindingElement(void 0,void 0,h)))||[];r&&u.unshift(w.createBindingElement(void 0,"default",r.name));const p=W2e(w.createObjectBindingPattern(u),s);l=Wx(l,p)}if(o){const u=W2e(o.name,s);l=Wx(l,u)}return N.checkDefined(l)}function W2e(e,t){return w.createVariableStatement(void 0,w.createVariableDeclarationList([w.createVariableDeclaration(typeof e=="string"?w.createIdentifier(e):e,void 0,void 0,w.createCallExpression(w.createIdentifier("require"),void 0,[t]))],2))}function F2e({declarations:e},t){return bt(e,r=>!!(rO(r)&t))}function Efe(e,t,r){return Sfe(Id(tm(e.name)),t,r)}function Sfe(e,t,r){const i=ic(Bx(e,"/index"));let o="",s=!0;const l=i.charCodeAt(0);$h(l,t)?(o+=String.fromCharCode(l),r&&(o=o.toUpperCase())):s=!1;for(let u=1;u<i.length;u++){const p=i.charCodeAt(u),h=s0(p,t);if(h){let m=String.fromCharCode(p);s||(m=m.toUpperCase()),o+=m}s=h}return GA(o)?`_${o}`:o||"_"}var Tfe,Afe,Ife,FZe=T({"src/services/codefixes/importFixes.ts"(){si(),Ra(),Tfe="import",Afe="fixMissingImport",Ife=[f.Cannot_find_name_0.code,f.Cannot_find_name_0_Did_you_mean_1.code,f.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,f.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,f.Cannot_find_namespace_0.code,f._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,f._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code,f.No_value_exists_in_scope_for_the_shorthand_property_0_Either_declare_one_or_provide_an_initializer.code,f._0_cannot_be_used_as_a_value_because_it_was_imported_using_import_type.code,f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery.code,f.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_1_or_later.code,f.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom.code,f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig.code,f.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code,f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_save_dev_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig.code,f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_save_dev_types_Slashjest_or_npm_i_save_dev_types_Slashmocha.code,f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode.code,f.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_save_dev_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig.code,f.Cannot_find_namespace_0_Did_you_mean_1.code],Aa({errorCodes:Ife,getCodeActions(e){const{errorCode:t,preferences:r,sourceFile:i,span:o,program:s}=e,l=x2e(e,t,o.start,!0);if(l)return l.map(({fix:u,symbolName:p,errorIdentifierText:h})=>vfe(e,i,p,u,p!==h,s,r))},fixIds:[Afe],getAllCodeActions:e=>{const{sourceFile:t,program:r,preferences:i,host:o,cancellationToken:s}=e,l=b2e(t,r,!0,i,o,s);return BD(e,Ife,u=>l.addImportFromDiagnostic(u,e)),zD(_r.ChangeTracker.with(e,l.writeFixes))}})}});function z2e(e,t,r){const i=An(e.getSemanticDiagnostics(t),l=>l.start===r.start&&l.length===r.length);if(i===void 0||i.relatedInformation===void 0)return;const o=An(i.relatedInformation,l=>l.code===f.This_type_parameter_might_need_an_extends_0_constraint.code);if(o===void 0||o.file===void 0||o.start===void 0||o.length===void 0)return;let s=Dme(o.file,vu(o.start,o.length));if(s!==void 0&&(Ve(s)&&gl(s.parent)&&(s=s.parent),gl(s))){if(JR(s.parent))return;const l=po(t,r.start),u=e.getTypeChecker();return{constraint:BZe(u,l)||zZe(o.messageText),declaration:s,token:l}}}function B2e(e,t,r,i,o,s){const{declaration:l,constraint:u}=s,p=t.getTypeChecker();if(Po(u))e.insertText(o,l.name.end,` extends ${u}`);else{const h=os(t.getCompilerOptions()),m=VD({program:t,host:i}),b=FI(o,t,r,i),A=mQ(p,b,u,void 0,h,void 0,m);A&&(e.replaceNode(o,l,w.updateTypeParameterDeclaration(l,void 0,l.name,A,l.default)),b.writeFixes(e))}}function zZe(e){const[,t]=z_(e,`
+`,0).match(/`extends (.*)`/)||[];return t}function BZe(e,t){return ji(t.parent)?e.getTypeArgumentConstraint(t.parent):(yt(t)?e.getContextualType(t):void 0)||e.getTypeAtLocation(t)}var P$,xfe,GZe=T({"src/services/codefixes/fixAddMissingConstraint.ts"(){si(),Ra(),P$="addMissingConstraint",xfe=[f.Type_0_is_not_comparable_to_type_1.code,f.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,f.Type_0_is_not_assignable_to_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,f.Type_0_is_not_assignable_to_type_1.code,f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_with_exactOptionalPropertyTypes_Colon_true_Consider_adding_undefined_to_the_types_of_the_target_s_properties.code,f.Property_0_is_incompatible_with_index_signature.code,f.Property_0_in_type_1_is_not_assignable_to_type_2.code,f.Type_0_does_not_satisfy_the_constraint_1.code],Aa({errorCodes:xfe,getCodeActions(e){const{sourceFile:t,span:r,program:i,preferences:o,host:s}=e,l=z2e(i,t,r);if(l===void 0)return;const u=_r.ChangeTracker.with(e,p=>B2e(p,i,o,s,t,l));return[ca(P$,u,f.Add_extends_constraint,P$,f.Add_extends_constraint_to_all_type_parameters)]},fixIds:[P$],getAllCodeActions:e=>{const{program:t,preferences:r,host:i}=e,o=new Map;return zD(_r.ChangeTracker.with(e,s=>{BD(e,xfe,l=>{const u=z2e(t,l.file,vu(l.start,l.length));if(u&&Rm(o,as(u.declaration)))return B2e(s,t,r,i,l.file,u)})}))}})}});function G2e(e,t,r,i){switch(r){case f.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code:case f.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:case f.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code:case f.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code:case f.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code:return VZe(e,t.sourceFile,i);case f.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code:case f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code:case f.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code:case f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code:return jZe(e,t.sourceFile,i);default:N.fail("Unexpected error code: "+r)}}function VZe(e,t,r){const i=j2e(t,r);if(dd(t)){e.addJSDocTags(t,i,[w.createJSDocOverrideTag(w.createIdentifier("override"))]);return}const o=i.modifiers||et,s=An(o,aI),l=An(o,Oae),u=An(o,b=>uX(b.kind)),p=Oo(o,Eu),h=l?l.end:s?s.end:u?u.end:p?ka(t.text,p.end):i.getStart(t),m=u||s||l?{prefix:" "}:{suffix:" "};e.insertModifierAt(t,h,164,m)}function jZe(e,t,r){const i=j2e(t,r);if(dd(t)){e.filterJSDocTags(t,i,G6(cF));return}const o=An(i.modifiers,Wae);N.assertIsDefined(o),e.deleteModifier(t,o)}function V2e(e){switch(e.kind){case 176:case 172:case 174:case 177:case 178:return!0;case 169:return mp(e,e.parent);default:return!1}}function j2e(e,t){const r=po(e,t),i=Gn(r,o=>ui(o)?"quit":V2e(o));return N.assert(i&&V2e(i)),i}var Rfe,b2,XO,Dfe,Nfe,UZe=T({"src/services/codefixes/fixOverrideModifier.ts"(){si(),Ra(),Rfe="fixOverrideModifier",b2="fixAddOverrideModifier",XO="fixRemoveOverrideModifier",Dfe=[f.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code,f.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code,f.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code,f.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code,f.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code,f.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code,f.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code,f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code],Nfe={[f.This_member_must_have_an_override_modifier_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:f.Add_override_modifier,fixId:b2,fixAllDescriptions:f.Add_all_missing_override_modifiers},[f.This_member_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:f.Add_override_modifier,fixId:b2,fixAllDescriptions:f.Add_all_missing_override_modifiers},[f.This_member_cannot_have_an_override_modifier_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:f.Remove_override_modifier,fixId:XO,fixAllDescriptions:f.Remove_all_unnecessary_override_modifiers},[f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_its_containing_class_0_does_not_extend_another_class.code]:{descriptions:f.Remove_override_modifier,fixId:XO,fixAllDescriptions:f.Remove_override_modifier},[f.This_parameter_property_must_have_an_override_modifier_because_it_overrides_a_member_in_base_class_0.code]:{descriptions:f.Add_override_modifier,fixId:b2,fixAllDescriptions:f.Add_all_missing_override_modifiers},[f.This_parameter_property_must_have_a_JSDoc_comment_with_an_override_tag_because_it_overrides_a_member_in_the_base_class_0.code]:{descriptions:f.Add_override_modifier,fixId:b2,fixAllDescriptions:f.Add_all_missing_override_modifiers},[f.This_member_must_have_an_override_modifier_because_it_overrides_an_abstract_method_that_is_declared_in_the_base_class_0.code]:{descriptions:f.Add_override_modifier,fixId:b2,fixAllDescriptions:f.Remove_all_unnecessary_override_modifiers},[f.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:f.Remove_override_modifier,fixId:XO,fixAllDescriptions:f.Remove_all_unnecessary_override_modifiers},[f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0.code]:{descriptions:f.Remove_override_modifier,fixId:XO,fixAllDescriptions:f.Remove_all_unnecessary_override_modifiers}},Aa({errorCodes:Dfe,getCodeActions:function(t){const{errorCode:r,span:i}=t,o=Nfe[r];if(!o)return et;const{descriptions:s,fixId:l,fixAllDescriptions:u}=o,p=_r.ChangeTracker.with(t,h=>G2e(h,t,r,i.start));return[Gpe(Rfe,p,s,l,u)]},fixIds:[Rfe,b2,XO],getAllCodeActions:e=>Es(e,Dfe,(t,r)=>{const{code:i,start:o}=r,s=Nfe[i];!s||s.fixId!==e.fixId||G2e(t,e,i,o)})})}});function U2e(e,t,r,i){const o=uf(t,i),s=w.createStringLiteral(r.name.text,o===0);e.replaceNode(t,r,A4(r)?w.createElementAccessChain(r.expression,r.questionDotToken,s):w.createElementAccessExpression(r.expression,s))}function H2e(e,t){return aa(po(e,t).parent,Fr)}var M$,Cfe,HZe=T({"src/services/codefixes/fixNoPropertyAccessFromIndexSignature.ts"(){si(),Ra(),M$="fixNoPropertyAccessFromIndexSignature",Cfe=[f.Property_0_comes_from_an_index_signature_so_it_must_be_accessed_with_0.code],Aa({errorCodes:Cfe,fixIds:[M$],getCodeActions(e){const{sourceFile:t,span:r,preferences:i}=e,o=H2e(t,r.start),s=_r.ChangeTracker.with(e,l=>U2e(l,e.sourceFile,o,i));return[ca(M$,s,[f.Use_element_access_for_0,o.name.text],M$,f.Use_element_access_for_all_undeclared_properties)]},getAllCodeActions:e=>Es(e,Cfe,(t,r)=>U2e(t,r.file,H2e(r.file,r.start),e.preferences))})}});function q2e(e,t,r,i){const o=po(t,r);if(!ID(o))return;const s=Fd(o,!1,!1);if(!(!Ac(s)&&!Os(s))&&!$i(Fd(s,!1,!1))){const l=N.checkDefined(vs(s,100,t)),{name:u}=s,p=N.checkDefined(s.body);return Os(s)?u&&Ws.Core.isSymbolReferencedInFile(u,i,t,p)?void 0:(e.delete(t,l),u&&e.delete(t,u),e.insertText(t,p.pos," =>"),[f.Convert_function_expression_0_to_arrow_function,u?u.text:F5]):(e.replaceNode(t,l,w.createToken(87)),e.insertText(t,u.end," = "),e.insertText(t,p.pos," =>"),[f.Convert_function_declaration_0_to_arrow_function,u.text])}}var L$,Pfe,qZe=T({"src/services/codefixes/fixImplicitThis.ts"(){si(),Ra(),L$="fixImplicitThis",Pfe=[f.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code],Aa({errorCodes:Pfe,getCodeActions:function(t){const{sourceFile:r,program:i,span:o}=t;let s;const l=_r.ChangeTracker.with(t,u=>{s=q2e(u,r,o.start,i.getTypeChecker())});return s?[ca(L$,l,s,L$,f.Fix_all_implicit_this_errors)]:et},fixIds:[L$],getAllCodeActions:e=>Es(e,Pfe,(t,r)=>{q2e(t,r.file,r.start,e.program.getTypeChecker())})})}});function J2e(e,t,r){var i,o;const s=po(e,t);if(Ve(s)){const l=Gn(s,kc);if(l===void 0)return;const u=Ma(l.moduleSpecifier)?l.moduleSpecifier:void 0;if(u===void 0)return;const p=(i=r.getResolvedModuleFromModuleSpecifier(u))==null?void 0:i.resolvedModule;if(p===void 0)return;const h=r.getSourceFile(p.resolvedFileName);if(h===void 0||MD(r,h))return;const m=h.symbol,b=(o=ii(m.valueDeclaration,fh))==null?void 0:o.locals;if(b===void 0)return;const A=b.get(s.escapedText);if(A===void 0)return;const I=KZe(A);return I===void 0?void 0:{exportName:{node:s,isTypeOnly:BR(I)},node:I,moduleSourceFile:h,moduleSpecifier:u.text}}}function JZe(e,t,{exportName:r,node:i,moduleSourceFile:o}){const s=k$(o,r.isTypeOnly);s?K2e(e,t,o,s,[r]):Ik(i)?e.insertExportModifier(o,i):X2e(e,t,o,[r])}function Mfe(e,t,r,i,o){Me(i)&&(o?K2e(e,t,r,o,i):X2e(e,t,r,i))}function k$(e,t){const r=i=>Yl(i)&&(t&&i.isTypeOnly||!i.isTypeOnly);return Oo(e.statements,r)}function K2e(e,t,r,i,o){const s=i.exportClause&&Pf(i.exportClause)?i.exportClause.elements:w.createNodeArray([]),l=!i.isTypeOnly&&!!(om(t.getCompilerOptions())||An(s,u=>u.isTypeOnly));e.replaceNode(r,i,w.updateExportDeclaration(i,i.modifiers,i.isTypeOnly,w.createNamedExports(w.createNodeArray([...s,...Y2e(o,l)],s.hasTrailingComma)),i.moduleSpecifier,i.attributes))}function X2e(e,t,r,i){e.insertNodeAtEndOfScope(r,r,w.createExportDeclaration(void 0,!1,w.createNamedExports(Y2e(i,om(t.getCompilerOptions()))),void 0,void 0))}function Y2e(e,t){return w.createNodeArray(wt(e,r=>w.createExportSpecifier(t&&r.isTypeOnly,void 0,r.node)))}function KZe(e){if(e.valueDeclaration===void 0)return Xc(e.declarations);const t=e.valueDeclaration,r=wi(t)?ii(t.parent.parent,Ll):void 0;return r&&Me(r.declarationList.declarations)===1?r:t}var w$,Lfe,XZe=T({"src/services/codefixes/fixImportNonExportedMember.ts"(){si(),Ra(),w$="fixImportNonExportedMember",Lfe=[f.Module_0_declares_1_locally_but_it_is_not_exported.code],Aa({errorCodes:Lfe,fixIds:[w$],getCodeActions(e){const{sourceFile:t,span:r,program:i}=e,o=J2e(t,r.start,i);if(o===void 0)return;const s=_r.ChangeTracker.with(e,l=>JZe(l,i,o));return[ca(w$,s,[f.Export_0_from_module_1,o.exportName.node.text,o.moduleSpecifier],w$,f.Export_all_referenced_locals)]},getAllCodeActions(e){const{program:t}=e;return zD(_r.ChangeTracker.with(e,r=>{const i=new Map;BD(e,Lfe,o=>{const s=J2e(o.file,o.start,t);if(s===void 0)return;const{exportName:l,node:u,moduleSourceFile:p}=s;if(k$(p,l.isTypeOnly)===void 0&&Ik(u))r.insertExportModifier(p,u);else{const h=i.get(p)||{typeOnlyExports:[],exports:[]};l.isTypeOnly?h.typeOnlyExports.push(l):h.exports.push(l),i.set(p,h)}}),i.forEach((o,s)=>{const l=k$(s,!0);l&&l.isTypeOnly?(Mfe(r,t,s,o.typeOnlyExports,l),Mfe(r,t,s,o.exports,k$(s,!1))):Mfe(r,t,s,[...o.exports,...o.typeOnlyExports],l)})}))}})}});function YZe(e,t){const r=po(e,t);return Gn(r,i=>i.kind===202)}function $Ze(e,t,r){if(!r)return;let i=r.type,o=!1,s=!1;for(;i.kind===190||i.kind===191||i.kind===196;)i.kind===190?o=!0:i.kind===191&&(s=!0),i=i.type;const l=w.updateNamedTupleMember(r,r.dotDotDotToken||(s?w.createToken(26):void 0),r.name,r.questionToken||(o?w.createToken(58):void 0),i);l!==r&&e.replaceNode(t,r,l)}var O$,$2e,QZe=T({"src/services/codefixes/fixIncorrectNamedTupleSyntax.ts"(){si(),Ra(),O$="fixIncorrectNamedTupleSyntax",$2e=[f.A_labeled_tuple_element_is_declared_as_optional_with_a_question_mark_after_the_name_and_before_the_colon_rather_than_after_the_type.code,f.A_labeled_tuple_element_is_declared_as_rest_with_a_before_the_name_rather_than_before_the_type.code],Aa({errorCodes:$2e,getCodeActions:function(t){const{sourceFile:r,span:i}=t,o=YZe(r,i.start),s=_r.ChangeTracker.with(t,l=>$Ze(l,r,o));return[ca(O$,s,f.Move_labeled_tuple_element_modifiers_to_labels,O$,f.Move_labeled_tuple_element_modifiers_to_labels)]},fixIds:[O$]})}});function Q2e(e,t,r,i){const o=po(e,t),s=o.parent;if((i===f.No_overload_matches_this_call.code||i===f.Type_0_is_not_assignable_to_type_1.code)&&!F_(s))return;const l=r.program.getTypeChecker();let u;if(Fr(s)&&s.name===o){N.assert(Qh(o),"Expected an identifier for spelling (property access)");let p=l.getTypeAtLocation(s.expression);s.flags&64&&(p=l.getNonNullableType(p)),u=l.getSuggestedSymbolForNonexistentProperty(o,p)}else if(mr(s)&&s.operatorToken.kind===103&&s.left===o&&Ji(o)){const p=l.getTypeAtLocation(s.right);u=l.getSuggestedSymbolForNonexistentProperty(o,p)}else if(xd(s)&&s.right===o){const p=l.getSymbolAtLocation(s.left);p&&p.flags&1536&&(u=l.getSuggestedSymbolForNonexistentModule(s.right,p))}else if(np(s)&&s.name===o){N.assertNode(o,Ve,"Expected an identifier for spelling (import)");const p=Gn(o,kc),h=eet(r,p);h&&h.symbol&&(u=l.getSuggestedSymbolForNonexistentModule(o,h.symbol))}else if(F_(s)&&s.name===o){N.assertNode(o,Ve,"Expected an identifier for JSX attribute");const p=Gn(o,ud),h=l.getContextualTypeForArgumentAtIndex(p,0);u=l.getSuggestedSymbolForNonexistentJSXAttribute(o,h)}else if(P3(s)&&$c(s)&&s.name===o){const p=Gn(o,ui),h=p?D_(p):void 0,m=h?l.getTypeAtLocation(h):void 0;m&&(u=l.getSuggestedSymbolForNonexistentClassMember(fc(o),m))}else{const p=oT(o),h=fc(o);N.assert(h!==void 0,"name should be defined"),u=l.getSuggestedSymbolForNonexistentSymbol(o,h,ZZe(p))}return u===void 0?void 0:{node:o,suggestedSymbol:u}}function Z2e(e,t,r,i,o){const s=Sl(i);if(!tf(s,o)&&Fr(r.parent)){const l=i.valueDeclaration;l&&ld(l)&&Ji(l.name)?e.replaceNode(t,r,w.createIdentifier(s)):e.replaceNode(t,r.parent,w.createElementAccessExpression(r.parent.expression,w.createStringLiteral(s)))}else e.replaceNode(t,r,w.createIdentifier(s))}function ZZe(e){let t=0;return e&4&&(t|=1920),e&2&&(t|=788968),e&1&&(t|=111551),t}function eet(e,t){var r;if(!t||!ls(t.moduleSpecifier))return;const i=(r=e.program.getResolvedModuleFromModuleSpecifier(t.moduleSpecifier))==null?void 0:r.resolvedModule;if(i)return e.program.getSourceFile(i.resolvedFileName)}var kfe,wfe,tet=T({"src/services/codefixes/fixSpelling.ts"(){si(),Ra(),kfe="fixSpelling",wfe=[f.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,f.Property_0_may_not_exist_on_type_1_Did_you_mean_2.code,f.Cannot_find_name_0_Did_you_mean_1.code,f.Could_not_find_name_0_Did_you_mean_1.code,f.Cannot_find_namespace_0_Did_you_mean_1.code,f.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,f.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,f._0_has_no_exported_member_named_1_Did_you_mean_2.code,f.This_member_cannot_have_an_override_modifier_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,f.This_member_cannot_have_a_JSDoc_comment_with_an_override_tag_because_it_is_not_declared_in_the_base_class_0_Did_you_mean_1.code,f.No_overload_matches_this_call.code,f.Type_0_is_not_assignable_to_type_1.code],Aa({errorCodes:wfe,getCodeActions(e){const{sourceFile:t,errorCode:r}=e,i=Q2e(t,e.span.start,e,r);if(!i)return;const{node:o,suggestedSymbol:s}=i,l=os(e.host.getCompilationSettings()),u=_r.ChangeTracker.with(e,p=>Z2e(p,t,o,s,l));return[ca("spelling",u,[f.Change_spelling_to_0,Sl(s)],kfe,f.Fix_all_detected_spelling_errors)]},fixIds:[kfe],getAllCodeActions:e=>Es(e,wfe,(t,r)=>{const i=Q2e(r.file,r.start,e,r.code),o=os(e.host.getCompilationSettings());i&&Z2e(t,e.sourceFile,i.node,i.suggestedSymbol,o)})})}});function eMe(e,t,r){const i=e.createSymbol(4,t.escapedText);i.links.type=e.getTypeAtLocation(r);const o=ua([i]);return e.createAnonymousType(void 0,o,[],[],[])}function Ofe(e,t,r,i){if(!t.body||!Xo(t.body)||Me(t.body.statements)!==1)return;const o=Ha(t.body.statements);if(eu(o)&&Wfe(e,t,e.getTypeAtLocation(o.expression),r,i))return{declaration:t,kind:0,expression:o.expression,statement:o,commentSource:o.expression};if(o1(o)&&eu(o.statement)){const s=w.createObjectLiteralExpression([w.createPropertyAssignment(o.label,o.statement.expression)]),l=eMe(e,o.label,o.statement.expression);if(Wfe(e,t,l,r,i))return Gs(t)?{declaration:t,kind:1,expression:s,statement:o,commentSource:o.statement.expression}:{declaration:t,kind:0,expression:s,statement:o,commentSource:o.statement.expression}}else if(Xo(o)&&Me(o.statements)===1){const s=Ha(o.statements);if(o1(s)&&eu(s.statement)){const l=w.createObjectLiteralExpression([w.createPropertyAssignment(s.label,s.statement.expression)]),u=eMe(e,s.label,s.statement.expression);if(Wfe(e,t,u,r,i))return{declaration:t,kind:0,expression:l,statement:o,commentSource:s}}}}function Wfe(e,t,r,i,o){if(o){const s=e.getSignatureFromDeclaration(t);if(s){Zr(t,1024)&&(r=e.createPromiseType(r));const l=e.createSignature(t,s.typeParameters,s.thisParameter,s.parameters,r,void 0,s.minArgumentCount,s.flags);r=e.createAnonymousType(void 0,ua(),[l],[],[])}else r=e.getAnyType()}return e.isTypeAssignableTo(r,i)}function tMe(e,t,r,i){const o=po(t,r);if(!o.parent)return;const s=Gn(o.parent,Bs);switch(i){case f.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code:return!s||!s.body||!s.type||!cf(s.type,o)?void 0:Ofe(e,s,e.getTypeFromTypeNode(s.type),!1);case f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code:if(!s||!la(s.parent)||!s.body)return;const l=s.parent.arguments.indexOf(s);if(l===-1)return;const u=e.getContextualTypeForArgumentAtIndex(s.parent,l);return u?Ofe(e,s,u,!0):void 0;case f.Type_0_is_not_assignable_to_type_1.code:if(!Bg(o)||!pR(o.parent)&&!F_(o.parent))return;const p=net(o.parent);return!p||!Bs(p)||!p.body?void 0:Ofe(e,p,e.getTypeAtLocation(o.parent),!0)}}function net(e){switch(e.kind){case 260:case 169:case 208:case 172:case 303:return e.initializer;case 291:return e.initializer&&(TP(e.initializer)?e.initializer.expression:void 0);case 304:case 171:case 306:case 355:case 348:return}}function nMe(e,t,r,i){Ap(r);const o=TO(t);e.replaceNode(t,i,w.createReturnStatement(r),{leadingTriviaOption:_r.LeadingTriviaOption.Exclude,trailingTriviaOption:_r.TrailingTriviaOption.Exclude,suffix:o?";":void 0})}function rMe(e,t,r,i,o,s){const l=S5(i)?w.createParenthesizedExpression(i):i;Ap(o),lT(o,l),e.replaceNode(t,r.body,l)}function iMe(e,t,r,i){e.replaceNode(t,r.body,w.createParenthesizedExpression(i))}function ret(e,t,r){const i=_r.ChangeTracker.with(e,o=>nMe(o,e.sourceFile,t,r));return ca(W$,i,f.Add_a_return_statement,F$,f.Add_all_missing_return_statement)}function iet(e,t,r,i){const o=_r.ChangeTracker.with(e,s=>rMe(s,e.sourceFile,t,r,i));return ca(W$,o,f.Remove_braces_from_arrow_function_body,z$,f.Remove_braces_from_all_arrow_function_bodies_with_relevant_issues)}function oet(e,t,r){const i=_r.ChangeTracker.with(e,o=>iMe(o,e.sourceFile,t,r));return ca(W$,i,f.Wrap_the_following_body_with_parentheses_which_should_be_an_object_literal,B$,f.Wrap_all_object_literal_with_parentheses)}var W$,F$,z$,B$,Ffe,aet=T({"src/services/codefixes/returnValueCorrect.ts"(){si(),Ra(),W$="returnValueCorrect",F$="fixAddReturnStatement",z$="fixRemoveBracesFromArrowFunctionBody",B$="fixWrapTheBlockWithParen",Ffe=[f.A_function_whose_declared_type_is_neither_undefined_void_nor_any_must_return_a_value.code,f.Type_0_is_not_assignable_to_type_1.code,f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code],Aa({errorCodes:Ffe,fixIds:[F$,z$,B$],getCodeActions:function(t){const{program:r,sourceFile:i,span:{start:o},errorCode:s}=t,l=tMe(r.getTypeChecker(),i,o,s);if(l)return l.kind===0?xn([ret(t,l.expression,l.statement)],Gs(l.declaration)?iet(t,l.declaration,l.expression,l.commentSource):void 0):[oet(t,l.declaration,l.expression)]},getAllCodeActions:e=>Es(e,Ffe,(t,r)=>{const i=tMe(e.program.getTypeChecker(),r.file,r.start,r.code);if(i)switch(e.fixId){case F$:nMe(t,r.file,i.expression,i.statement);break;case z$:if(!Gs(i.declaration))return;rMe(t,r.file,i.declaration,i.expression,i.commentSource);break;case B$:if(!Gs(i.declaration))return;iMe(t,r.file,i.declaration,i.expression);break;default:N.fail(JSON.stringify(e.fixId))}})})}});function oMe(e,t,r,i,o){var s;const l=po(e,t),u=l.parent;if(r===f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code){if(!(l.kind===19&&Oa(u)&&la(u.parent)))return;const I=Gr(u.parent.arguments,O=>O===u);if(I<0)return;const R=i.getResolvedSignature(u.parent);if(!(R&&R.declaration&&R.parameters[I]))return;const M=R.parameters[I].valueDeclaration;if(!(M&&Ao(M)&&Ve(M.name)))return;const C=zo(i.getUnmatchedProperties(i.getTypeAtLocation(u),i.getParameterType(R,I),!1,!1));return Me(C)?{kind:3,token:M.name,identifier:M.name.text,properties:C,parentDeclaration:u}:void 0}if(l.kind===19&&Oa(u)){const I=i.getContextualType(u)||i.getTypeAtLocation(u),R=zo(i.getUnmatchedProperties(i.getTypeAtLocation(u),I,!1,!1));return Me(R)?{kind:3,token:u,identifier:"",properties:R,parentDeclaration:u}:void 0}if(!Qh(l))return;if(Ve(l)&&zy(u)&&u.initializer&&Oa(u.initializer)){const I=i.getContextualType(l)||i.getTypeAtLocation(l),R=zo(i.getUnmatchedProperties(i.getTypeAtLocation(u.initializer),I,!1,!1));return Me(R)?{kind:3,token:l,identifier:l.text,properties:R,parentDeclaration:u.initializer}:void 0}if(Ve(l)&&ud(l.parent)){const I=os(o.getCompilerOptions()),R=met(i,I,l.parent);return Me(R)?{kind:4,token:l,attributes:R,parentDeclaration:l.parent}:void 0}if(Ve(l)){const I=(s=i.getContextualType(l))==null?void 0:s.getNonNullableType();if(I&&Wr(I)&16){const R=Xc(i.getSignaturesOfType(I,0));return R===void 0?void 0:{kind:5,token:l,signature:R,sourceFile:e,parentDeclaration:hMe(l)}}if(la(u)&&u.expression===l)return{kind:2,token:l,call:u,sourceFile:e,modifierFlags:0,parentDeclaration:hMe(l)}}if(!Fr(u))return;const p=hX(i.getTypeAtLocation(u.expression)),h=p.symbol;if(!h||!h.declarations)return;if(Ve(l)&&la(u.parent)){const I=An(h.declarations,Xl),R=I==null?void 0:I.getSourceFile();if(I&&R&&!MD(o,R))return{kind:2,token:l,call:u.parent,sourceFile:e,modifierFlags:32,parentDeclaration:I};const M=An(h.declarations,$i);if(e.commonJsModuleIndicator)return;if(M&&!MD(o,M))return{kind:2,token:l,call:u.parent,sourceFile:M,modifierFlags:32,parentDeclaration:M}}const m=An(h.declarations,ui);if(!m&&Ji(l))return;const b=m||An(h.declarations,I=>hd(I)||Ep(I));if(b&&!MD(o,b.getSourceFile())){const I=!Ep(b)&&(p.target||p)!==i.getDeclaredTypeOfSymbol(h);if(I&&(Ji(l)||hd(b)))return;const R=b.getSourceFile(),M=Ep(b)?0:(I?256:0)|(jX(l.text)?2:0),C=dd(R),O=ii(u.parent,la);return{kind:0,token:l,call:O,modifierFlags:M,parentDeclaration:b,declSourceFile:R,isJSFile:C}}const A=An(h.declarations,x0);if(A&&!(p.flags&1056)&&!Ji(l)&&!MD(o,A.getSourceFile()))return{kind:1,token:l,parentDeclaration:A}}function set(e,t){return t.isJSFile?AA(cet(e,t)):uet(e,t)}function cet(e,{parentDeclaration:t,declSourceFile:r,modifierFlags:i,token:o}){if(hd(t)||Ep(t))return;const s=_r.ChangeTracker.with(e,u=>aMe(u,r,t,o,!!(i&256)));if(s.length===0)return;const l=i&256?f.Initialize_static_property_0:Ji(o)?f.Declare_a_private_field_named_0:f.Initialize_property_0_in_the_constructor;return ca(cb,s,[l,o.text],cb,f.Add_all_missing_members)}function aMe(e,t,r,i,o){const s=i.text;if(o){if(r.kind===231)return;const l=r.name.getText(),u=sMe(w.createIdentifier(l),s);e.insertNodeAfter(t,r,u)}else if(Ji(i)){const l=w.createPropertyDeclaration(void 0,s,void 0,void 0,void 0),u=uMe(r);u?e.insertNodeAfter(t,u,l):e.insertMemberAtStart(t,r,l)}else{const l=ag(r);if(!l)return;const u=sMe(w.createThis(),s);e.insertNodeAtConstructorEnd(t,l,u)}}function sMe(e,t){return w.createExpressionStatement(w.createAssignment(w.createPropertyAccessExpression(e,t),zI()))}function uet(e,{parentDeclaration:t,declSourceFile:r,modifierFlags:i,token:o}){const s=o.text,l=i&256,u=lMe(e.program.getTypeChecker(),t,o),p=m=>_r.ChangeTracker.with(e,b=>cMe(b,r,t,s,u,m)),h=[ca(cb,p(i&256),[l?f.Declare_static_property_0:f.Declare_property_0,s],cb,f.Add_all_missing_members)];return l||Ji(o)||(i&2&&h.unshift(o_(cb,p(2),[f.Declare_private_property_0,s])),h.push(det(e,r,t,o.text,u))),h}function lMe(e,t,r){let i;if(r.parent.parent.kind===226){const o=r.parent.parent,s=r.parent===o.left?o.right:o.left,l=e.getWidenedType(e.getBaseTypeOfLiteralType(e.getTypeAtLocation(s)));i=e.typeToTypeNode(l,t,1)}else{const o=e.getContextualType(r.parent);i=o?e.typeToTypeNode(o,void 0,1):void 0}return i||w.createKeywordTypeNode(133)}function cMe(e,t,r,i,o,s){const l=s?w.createNodeArray(w.createModifiersFromModifierFlags(s)):void 0,u=ui(r)?w.createPropertyDeclaration(l,i,void 0,o,void 0):w.createPropertySignature(void 0,i,void 0,o),p=uMe(r);p?e.insertNodeAfter(t,p,u):e.insertMemberAtStart(t,r,u)}function uMe(e){let t;for(const r of e.members){if(!Jo(r))break;t=r}return t}function det(e,t,r,i,o){const s=w.createKeywordTypeNode(154),l=w.createParameterDeclaration(void 0,void 0,"x",void 0,s,void 0),u=w.createIndexSignature(void 0,[l],o),p=_r.ChangeTracker.with(e,h=>h.insertMemberAtStart(t,r,u));return o_(cb,p,[f.Add_index_signature_for_property_0,i])}function pet(e,t){const{parentDeclaration:r,declSourceFile:i,modifierFlags:o,token:s,call:l}=t;if(l===void 0)return;const u=s.text,p=m=>_r.ChangeTracker.with(e,b=>dMe(e,b,l,s,m,r,i)),h=[ca(cb,p(o&256),[o&256?f.Declare_static_method_0:f.Declare_method_0,u],cb,f.Add_all_missing_members)];return o&2&&h.unshift(o_(cb,p(2),[f.Declare_private_method_0,u])),h}function dMe(e,t,r,i,o,s,l){const u=FI(l,e.program,e.preferences,e.host),p=ui(s)?174:173,h=Sme(p,e,u,r,i,o,s),m=_et(s,r);m?t.insertNodeAfter(l,m,h):t.insertMemberAtStart(l,s,h),u.writeFixes(t)}function pMe(e,t,{token:r,parentDeclaration:i}){const o=bt(i.members,p=>{const h=t.getTypeAtLocation(p);return!!(h&&h.flags&402653316)}),s=i.getSourceFile(),l=w.createEnumMember(r,o?w.createStringLiteral(r.text):void 0),u=tl(i.members);u?e.insertNodeInListAfter(s,u,l,i.members):e.insertMemberAtStart(s,i,l)}function fMe(e,t,r){const i=uf(t.sourceFile,t.preferences),o=FI(t.sourceFile,t.program,t.preferences,t.host),s=r.kind===2?Sme(262,t,o,r.call,Sr(r.token),r.modifierFlags,r.parentDeclaration):fQ(262,t,i,r.signature,xz(f.Function_not_implemented.message,i),r.token,void 0,void 0,void 0,o);s===void 0&&N.fail("fixMissingFunctionDeclaration codefix got unexpected error."),Dm(r.parentDeclaration)?e.insertNodeBefore(r.sourceFile,r.parentDeclaration,s,!0):e.insertNodeAtEndOfScope(r.sourceFile,r.parentDeclaration,s),o.writeFixes(e)}function mMe(e,t,r){const i=FI(t.sourceFile,t.program,t.preferences,t.host),o=uf(t.sourceFile,t.preferences),s=t.program.getTypeChecker(),l=r.parentDeclaration.attributes,u=bt(l.properties,gI),p=wt(r.attributes,b=>{const A=G$(t,s,i,o,s.getTypeOfSymbol(b),r.parentDeclaration),I=w.createIdentifier(b.name),R=w.createJsxAttribute(I,w.createJsxExpression(void 0,A));return qa(I,R),R}),h=w.createJsxAttributes(u?[...p,...l.properties]:[...l.properties,...p]),m={prefix:l.pos===l.end?" ":void 0};e.replaceNode(t.sourceFile,l,h,m),i.writeFixes(e)}function _Me(e,t,r){const i=FI(t.sourceFile,t.program,t.preferences,t.host),o=uf(t.sourceFile,t.preferences),s=os(t.program.getCompilerOptions()),l=t.program.getTypeChecker(),u=wt(r.properties,h=>{const m=G$(t,l,i,o,l.getTypeOfSymbol(h),r.parentDeclaration);return w.createPropertyAssignment(het(h,s,o,l),m)}),p={leadingTriviaOption:_r.LeadingTriviaOption.Exclude,trailingTriviaOption:_r.TrailingTriviaOption.Exclude,indentation:r.indentation};e.replaceNode(t.sourceFile,r.parentDeclaration,w.createObjectLiteralExpression([...r.parentDeclaration.properties,...u],!0),p),i.writeFixes(e)}function G$(e,t,r,i,o,s){if(o.flags&3)return zI();if(o.flags&134217732)return w.createStringLiteral("",i===0);if(o.flags&8)return w.createNumericLiteral(0);if(o.flags&64)return w.createBigIntLiteral("0n");if(o.flags&16)return w.createFalse();if(o.flags&1056){const l=o.symbol.exports?L6(o.symbol.exports.values()):o.symbol,u=t.symbolToExpression(o.symbol.parent?o.symbol.parent:o.symbol,111551,void 0,64);return l===void 0||u===void 0?w.createNumericLiteral(0):w.createPropertyAccessExpression(u,t.symbolToString(l))}if(o.flags&256)return w.createNumericLiteral(o.value);if(o.flags&2048)return w.createBigIntLiteral(o.value);if(o.flags&128)return w.createStringLiteral(o.value,i===0);if(o.flags&512)return o===t.getFalseType()||o===t.getFalseType(!0)?w.createFalse():w.createTrue();if(o.flags&65536)return w.createNull();if(o.flags&1048576)return Ut(o.types,u=>G$(e,t,r,i,u,s))??zI();if(t.isArrayLikeType(o))return w.createArrayLiteralExpression();if(fet(o)){const l=wt(t.getPropertiesOfType(o),u=>{const p=G$(e,t,r,i,t.getTypeOfSymbol(u),s);return w.createPropertyAssignment(u.name,p)});return w.createObjectLiteralExpression(l,!0)}if(Wr(o)&16){if(An(o.symbol.declarations||et,Ym(Eh,bh,ql))===void 0)return zI();const u=t.getSignaturesOfType(o,0);return u===void 0?zI():fQ(218,e,i,u[0],xz(f.Function_not_implemented.message,i),void 0,void 0,void 0,s,r)??zI()}if(Wr(o)&1){const l=Vg(o.symbol);if(l===void 0||XE(l))return zI();const u=ag(l);return u&&Me(u.parameters)?zI():w.createNewExpression(w.createIdentifier(o.symbol.name),void 0,void 0)}return zI()}function zI(){return w.createIdentifier("undefined")}function fet(e){return e.flags&524288&&(Wr(e)&128||e.symbol&&ii(sh(e.symbol.declarations),Ep))}function met(e,t,r){const i=e.getContextualType(r.attributes);if(i===void 0)return et;const o=i.getProperties();if(!Me(o))return et;const s=new Set;for(const l of r.attributes.properties)if(F_(l)&&s.add(sP(l.name)),gI(l)){const u=e.getTypeAtLocation(l.expression);for(const p of u.getProperties())s.add(p.escapedName)}return nr(o,l=>tf(l.name,t,1)&&!(l.flags&16777216||xl(l)&48||s.has(l.escapedName)))}function _et(e,t){if(Ep(e))return;const r=Gn(t,i=>ql(i)||Ml(i));return r&&r.parent===e?r:void 0}function het(e,t,r,i){if(mh(e)){const o=i.symbolToNode(e,111551,void 0,1073741824);if(o&&Za(o))return o}return oW(e.name,t,r===0,!1,!1)}function hMe(e){if(Gn(e,TP)){const t=Gn(e.parent,Dm);if(t)return t}return jn(e)}var cb,vz,yz,bz,zfe,get=T({"src/services/codefixes/fixAddMissingMember.ts"(){si(),Ra(),cb="fixMissingMember",vz="fixMissingProperties",yz="fixMissingAttributes",bz="fixMissingFunctionDeclaration",zfe=[f.Property_0_does_not_exist_on_type_1.code,f.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,f.Property_0_is_missing_in_type_1_but_required_in_type_2.code,f.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,f.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code,f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,f.Cannot_find_name_0.code],Aa({errorCodes:zfe,getCodeActions(e){const t=e.program.getTypeChecker(),r=oMe(e.sourceFile,e.span.start,e.errorCode,t,e.program);if(r){if(r.kind===3){const i=_r.ChangeTracker.with(e,o=>_Me(o,e,r));return[ca(vz,i,f.Add_missing_properties,vz,f.Add_all_missing_properties)]}if(r.kind===4){const i=_r.ChangeTracker.with(e,o=>mMe(o,e,r));return[ca(yz,i,f.Add_missing_attributes,yz,f.Add_all_missing_attributes)]}if(r.kind===2||r.kind===5){const i=_r.ChangeTracker.with(e,o=>fMe(o,e,r));return[ca(bz,i,[f.Add_missing_function_declaration_0,r.token.text],bz,f.Add_all_missing_function_declarations)]}if(r.kind===1){const i=_r.ChangeTracker.with(e,o=>pMe(o,e.program.getTypeChecker(),r));return[ca(cb,i,[f.Add_missing_enum_member_0,r.token.text],cb,f.Add_all_missing_members)]}return So(pet(e,r),set(e,r))}},fixIds:[cb,bz,vz,yz],getAllCodeActions:e=>{const{program:t,fixId:r}=e,i=t.getTypeChecker(),o=new Map,s=new Map;return zD(_r.ChangeTracker.with(e,l=>{BD(e,zfe,u=>{const p=oMe(u.file,u.start,u.code,i,e.program);if(!(!p||!Rm(o,as(p.parentDeclaration)+"#"+(p.kind===3?p.identifier:p.token.text)))){if(r===bz&&(p.kind===2||p.kind===5))fMe(l,e,p);else if(r===vz&&p.kind===3)_Me(l,e,p);else if(r===yz&&p.kind===4)mMe(l,e,p);else if(p.kind===1&&pMe(l,i,p),p.kind===0){const{parentDeclaration:h,token:m}=p,b=n0(s,h,()=>[]);b.some(A=>A.token.text===m.text)||b.push(p)}}}),s.forEach((u,p)=>{const h=Ep(p)?void 0:Cme(p,i);for(const m of u){if(h!=null&&h.some(O=>{const U=s.get(O);return!!U&&U.some(({token:K})=>K.text===m.token.text)}))continue;const{parentDeclaration:b,declSourceFile:A,modifierFlags:I,token:R,call:M,isJSFile:C}=m;if(M&&!Ji(R))dMe(e,l,M,R,I&256,b,A);else if(C&&!hd(b)&&!Ep(b))aMe(l,A,b,R,!!(I&256));else{const O=lMe(i,b,R);cMe(l,A,b,R.text,O,I&256)}}})}))}})}});function gMe(e,t,r){const i=aa(vet(t,r),la),o=w.createNewExpression(i.expression,i.typeArguments,i.arguments);e.replaceNode(t,i,o)}function vet(e,t){let r=po(e,t.start);const i=Kl(t);for(;r.end<i;)r=r.parent;return r}var V$,Bfe,yet=T({"src/services/codefixes/fixAddMissingNewOperator.ts"(){si(),Ra(),V$="addMissingNewOperator",Bfe=[f.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new.code],Aa({errorCodes:Bfe,getCodeActions(e){const{sourceFile:t,span:r}=e,i=_r.ChangeTracker.with(e,o=>gMe(o,t,r));return[ca(V$,i,f.Add_missing_new_operator_to_call,V$,f.Add_missing_new_operator_to_all_calls)]},fixIds:[V$],getAllCodeActions:e=>Es(e,Bfe,(t,r)=>gMe(t,e.sourceFile,r))})}});function vMe(e,t,r){const i=po(e,r),o=Gn(i,la);if(o===void 0||Me(o.arguments)===0)return;const s=t.getTypeChecker(),l=s.getTypeAtLocation(o.expression),u=nr(l.symbol.declarations,yMe);if(u===void 0)return;const p=tl(u);if(p===void 0||p.body===void 0||MD(t,p.getSourceFile()))return;const h=bet(p);if(h===void 0)return;const m=[],b=[],A=Me(p.parameters),I=Me(o.arguments);if(A>I)return;const R=[p,...Tet(p,u)];for(let M=0,C=0,O=0;M<I;M++){const U=o.arguments[M],K=ws(U)?PU(U):U,Z=s.getWidenedType(s.getBaseTypeOfLiteralType(s.getTypeAtLocation(U))),V=C<A?p.parameters[C]:void 0;if(V&&s.isTypeAssignableTo(Z,s.getTypeAtLocation(V))){C++;continue}const se=K&&Ve(K)?K.text:`p${O++}`,G=Eet(s,Z,p);xn(m,{pos:M,declaration:EMe(se,G,void 0)}),!Iet(R,C)&&xn(b,{pos:M,declaration:EMe(se,G,w.createToken(58))})}return{newParameters:m,newOptionalParameters:b,name:Rs(h),declarations:R}}function bet(e){const t=Mo(e);if(t)return t;if(wi(e.parent)&&Ve(e.parent.name)||Jo(e.parent)||Ao(e.parent))return e.parent.name}function Eet(e,t,r){return e.typeToTypeNode(e.getWidenedType(t),r,1)??w.createKeywordTypeNode(159)}function j$(e,t,r,i){Ue(r,o=>{Me(o.parameters)?e.replaceNodeRangeWithNodes(t,Ha(o.parameters),Ya(o.parameters),bMe(o,i),{joiner:", ",indentation:0,leadingTriviaOption:_r.LeadingTriviaOption.IncludeAll,trailingTriviaOption:_r.TrailingTriviaOption.Include}):Ue(bMe(o,i),(s,l)=>{Me(o.parameters)===0&&l===0?e.insertNodeAt(t,o.parameters.end,s):e.insertNodeAtEndOfList(t,o.parameters,s)})})}function yMe(e){switch(e.kind){case 262:case 218:case 174:case 219:return!0;default:return!1}}function bMe(e,t){const r=wt(e.parameters,i=>w.createParameterDeclaration(i.modifiers,i.dotDotDotToken,i.name,i.questionToken,i.type,i.initializer));for(const{pos:i,declaration:o}of t){const s=i>0?r[i-1]:void 0;r.splice(i,0,w.updateParameterDeclaration(o,o.modifiers,o.dotDotDotToken,o.name,s&&s.questionToken?w.createToken(58):o.questionToken,o.type,o.initializer))}return r}function Tet(e,t){const r=[];for(const i of t)if(Aet(i)){if(Me(i.parameters)===Me(e.parameters)){r.push(i);continue}if(Me(i.parameters)>Me(e.parameters))return[]}return r}function Aet(e){return yMe(e)&&e.body===void 0}function EMe(e,t,r){return w.createParameterDeclaration(void 0,void 0,e,r,t,void 0)}function Iet(e,t){return Me(e)&&bt(e,r=>t<Me(r.parameters)&&!!r.parameters[t]&&r.parameters[t].questionToken===void 0)}var Ez,Sz,Gfe,xet=T({"src/services/codefixes/fixAddMissingParam.ts"(){si(),Ra(),Ez="addMissingParam",Sz="addOptionalParam",Gfe=[f.Expected_0_arguments_but_got_1.code],Aa({errorCodes:Gfe,fixIds:[Ez,Sz],getCodeActions(e){const t=vMe(e.sourceFile,e.program,e.span.start);if(t===void 0)return;const{name:r,declarations:i,newParameters:o,newOptionalParameters:s}=t,l=[];return Me(o)&&xn(l,ca(Ez,_r.ChangeTracker.with(e,u=>j$(u,e.sourceFile,i,o)),[Me(o)>1?f.Add_missing_parameters_to_0:f.Add_missing_parameter_to_0,r],Ez,f.Add_all_missing_parameters)),Me(s)&&xn(l,ca(Sz,_r.ChangeTracker.with(e,u=>j$(u,e.sourceFile,i,s)),[Me(s)>1?f.Add_optional_parameters_to_0:f.Add_optional_parameter_to_0,r],Sz,f.Add_all_optional_parameters)),l},getAllCodeActions:e=>Es(e,Gfe,(t,r)=>{const i=vMe(e.sourceFile,e.program,r.start);if(i){const{declarations:o,newParameters:s,newOptionalParameters:l}=i;e.fixId===Ez&&j$(t,e.sourceFile,o,s),e.fixId===Sz&&j$(t,e.sourceFile,o,l)}})})}});function SMe(e,t){return{type:"install package",file:e,packageName:t}}function TMe(e,t){const r=ii(po(e,t),Ma);if(!r)return;const i=r.text,{packageName:o}=Nw(i);return Yc(o)?void 0:o}function AMe(e,t,r){var i;return r===Vfe?G_.nodeCoreModules.has(e)?"@types/node":void 0:(i=t.isKnownTypesPackageName)!=null&&i.call(t,e)?jF(e):void 0}var IMe,U$,Vfe,jfe,Ret=T({"src/services/codefixes/fixCannotFindModule.ts"(){si(),Ra(),IMe="fixCannotFindModule",U$="installTypesPackage",Vfe=f.Cannot_find_module_0_or_its_corresponding_type_declarations.code,jfe=[Vfe,f.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type.code],Aa({errorCodes:jfe,getCodeActions:function(t){const{host:r,sourceFile:i,span:{start:o}}=t,s=TMe(i,o);if(s===void 0)return;const l=AMe(s,r,t.errorCode);return l===void 0?[]:[ca(IMe,[],[f.Install_0,l],U$,f.Install_all_missing_types_packages,SMe(i.fileName,l))]},fixIds:[U$],getAllCodeActions:e=>Es(e,jfe,(t,r,i)=>{const o=TMe(r.file,r.start);if(o!==void 0)switch(e.fixId){case U$:{const s=AMe(o,e.host,r.code);s&&i.push(SMe(r.file.fileName,s));break}default:N.fail(`Bad fixId: ${e.fixId}`)}})})}});function xMe(e,t){const r=po(e,t);return aa(r.parent,ui)}function RMe(e,t,r,i,o){const s=D_(e),l=r.program.getTypeChecker(),u=l.getTypeAtLocation(s),p=l.getPropertiesOfType(u).filter(Det),h=FI(t,r.program,o,r.host);Eme(e,p,t,r,o,h,m=>i.insertMemberAtStart(t,e,m)),h.writeFixes(i)}function Det(e){const t=Uy(Ha(e.getDeclarations()));return!(t&2)&&!!(t&64)}var Ufe,H$,Net=T({"src/services/codefixes/fixClassDoesntImplementInheritedAbstractMember.ts"(){si(),Ra(),Ufe=[f.Non_abstract_class_0_does_not_implement_all_abstract_members_of_1.code],H$="fixClassDoesntImplementInheritedAbstractMember",Aa({errorCodes:Ufe,getCodeActions:function(t){const{sourceFile:r,span:i}=t,o=_r.ChangeTracker.with(t,s=>RMe(xMe(r,i.start),r,t,s,t.preferences));return o.length===0?void 0:[ca(H$,o,f.Implement_inherited_abstract_class,H$,f.Implement_all_inherited_abstract_classes)]},fixIds:[H$],getAllCodeActions:function(t){const r=new Map;return Es(t,Ufe,(i,o)=>{const s=xMe(o.file,o.start);Rm(r,as(s))&&RMe(s,t.sourceFile,t,i,t.preferences)})}})}});function DMe(e,t,r,i){e.insertNodeAtConstructorStart(t,r,i),e.delete(t,i)}function NMe(e,t){const r=po(e,t);if(r.kind!==110)return;const i=Gp(r),o=CMe(i.body);return o&&!o.expression.arguments.some(s=>Fr(s)&&s.expression===r)?{constructor:i,superCall:o}:void 0}function CMe(e){return eu(e)&&IS(e.expression)?e:ea(e)?void 0:Ho(e,CMe)}var q$,Hfe,Cet=T({"src/services/codefixes/fixClassSuperMustPrecedeThisAccess.ts"(){si(),Ra(),q$="classSuperMustPrecedeThisAccess",Hfe=[f.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code],Aa({errorCodes:Hfe,getCodeActions(e){const{sourceFile:t,span:r}=e,i=NMe(t,r.start);if(!i)return;const{constructor:o,superCall:s}=i,l=_r.ChangeTracker.with(e,u=>DMe(u,t,o,s));return[ca(q$,l,f.Make_super_call_the_first_statement_in_the_constructor,q$,f.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[q$],getAllCodeActions(e){const{sourceFile:t}=e,r=new Map;return Es(e,Hfe,(i,o)=>{const s=NMe(o.file,o.start);if(!s)return;const{constructor:l,superCall:u}=s;Rm(r,as(l.parent))&&DMe(i,t,l,u)})}})}});function PMe(e,t){const r=po(e,t);return N.assert(Ml(r.parent),"token should be at the constructor declaration"),r.parent}function MMe(e,t,r){const i=w.createExpressionStatement(w.createCallExpression(w.createSuper(),void 0,et));e.insertNodeAtConstructorStart(t,r,i)}var J$,qfe,Pet=T({"src/services/codefixes/fixConstructorForDerivedNeedSuperCall.ts"(){si(),Ra(),J$="constructorForDerivedNeedSuperCall",qfe=[f.Constructors_for_derived_classes_must_contain_a_super_call.code],Aa({errorCodes:qfe,getCodeActions(e){const{sourceFile:t,span:r}=e,i=PMe(t,r.start),o=_r.ChangeTracker.with(e,s=>MMe(s,t,i));return[ca(J$,o,f.Add_missing_super_call,J$,f.Add_all_missing_super_calls)]},fixIds:[J$],getAllCodeActions:e=>Es(e,qfe,(t,r)=>MMe(t,e.sourceFile,PMe(r.file,r.start)))})}});function LMe(e,t){xme(e,t,"jsx",w.createStringLiteral("react"))}var Jfe,Kfe,Met=T({"src/services/codefixes/fixEnableJsxFlag.ts"(){si(),Ra(),Jfe="fixEnableJsxFlag",Kfe=[f.Cannot_use_JSX_unless_the_jsx_flag_is_provided.code],Aa({errorCodes:Kfe,getCodeActions:function(t){const{configFile:r}=t.program.getCompilerOptions();if(r===void 0)return;const i=_r.ChangeTracker.with(t,o=>LMe(o,r));return[o_(Jfe,i,f.Enable_the_jsx_flag_in_your_configuration_file)]},fixIds:[Jfe],getAllCodeActions:e=>Es(e,Kfe,t=>{const{configFile:r}=e.program.getCompilerOptions();r!==void 0&&LMe(t,r)})})}});function kMe(e,t,r){const i=An(e.getSemanticDiagnostics(t),l=>l.start===r.start&&l.length===r.length);if(i===void 0||i.relatedInformation===void 0)return;const o=An(i.relatedInformation,l=>l.code===f.Did_you_mean_0.code);if(o===void 0||o.file===void 0||o.start===void 0||o.length===void 0)return;const s=Dme(o.file,vu(o.start,o.length));if(s!==void 0&&yt(s)&&mr(s.parent))return{suggestion:Let(o.messageText),expression:s.parent,arg:s}}function wMe(e,t,r,i){const o=w.createCallExpression(w.createPropertyAccessExpression(w.createIdentifier("Number"),w.createIdentifier("isNaN")),void 0,[r]),s=i.operatorToken.kind;e.replaceNode(t,i,s===38||s===36?w.createPrefixUnaryExpression(54,o):o)}function Let(e){const[,t]=z_(e,`
+`,0).match(/'(.*)'/)||[];return t}var K$,Xfe,ket=T({"src/services/codefixes/fixNaNEquality.ts"(){si(),Ra(),K$="fixNaNEquality",Xfe=[f.This_condition_will_always_return_0.code],Aa({errorCodes:Xfe,getCodeActions(e){const{sourceFile:t,span:r,program:i}=e,o=kMe(i,t,r);if(o===void 0)return;const{suggestion:s,expression:l,arg:u}=o,p=_r.ChangeTracker.with(e,h=>wMe(h,t,u,l));return[ca(K$,p,[f.Use_0,s],K$,f.Use_Number_isNaN_in_all_conditions)]},fixIds:[K$],getAllCodeActions:e=>Es(e,Xfe,(t,r)=>{const i=kMe(e.program,r.file,vu(r.start,r.length));i&&wMe(t,r.file,i.arg,i.expression)})})}}),wet=T({"src/services/codefixes/fixModuleAndTargetOptions.ts"(){si(),Ra(),Aa({errorCodes:[f.Top_level_await_expressions_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,f.Top_level_await_using_statements_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code,f.Top_level_for_await_loops_are_only_allowed_when_the_module_option_is_set_to_es2022_esnext_system_node16_nodenext_or_preserve_and_the_target_option_is_set_to_es2017_or_higher.code],getCodeActions:function(t){const r=t.program.getCompilerOptions(),{configFile:i}=r;if(i===void 0)return;const o=[],s=wu(r);if(s>=5&&s<99){const h=_r.ChangeTracker.with(t,m=>{xme(m,i,"module",w.createStringLiteral("esnext"))});o.push(o_("fixModuleOption",h,[f.Set_the_module_option_in_your_configuration_file_to_0,"esnext"]))}const u=os(r);if(u<4||u>99){const h=_r.ChangeTracker.with(t,m=>{if(!AC(i))return;const A=[["target",w.createStringLiteral("es2017")]];s===1&&A.push(["module",w.createStringLiteral("commonjs")]),Ime(m,i,A)});o.push(o_("fixTargetOption",h,[f.Set_the_target_option_in_your_configuration_file_to_0,"es2017"]))}return o.length?o:void 0}})}});function OMe(e,t,r){e.replaceNode(t,r,w.createPropertyAssignment(r.name,r.objectAssignmentInitializer))}function WMe(e,t){return aa(po(e,t).parent,rp)}var X$,Yfe,Oet=T({"src/services/codefixes/fixPropertyAssignment.ts"(){si(),Ra(),X$="fixPropertyAssignment",Yfe=[f.Did_you_mean_to_use_a_Colon_An_can_only_follow_a_property_name_when_the_containing_object_literal_is_part_of_a_destructuring_pattern.code],Aa({errorCodes:Yfe,fixIds:[X$],getCodeActions(e){const{sourceFile:t,span:r}=e,i=WMe(t,r.start),o=_r.ChangeTracker.with(e,s=>OMe(s,e.sourceFile,i));return[ca(X$,o,[f.Change_0_to_1,"=",":"],X$,[f.Switch_each_misused_0_to_1,"=",":"])]},getAllCodeActions:e=>Es(e,Yfe,(t,r)=>OMe(t,r.file,WMe(r.file,r.start)))})}});function FMe(e,t){const r=po(e,t),i=su(r).heritageClauses,o=i[0].getFirstToken();return o.kind===96?{extendsToken:o,heritageClauses:i}:void 0}function zMe(e,t,r,i){if(e.replaceNode(t,r,w.createToken(119)),i.length===2&&i[0].token===96&&i[1].token===119){const o=i[1].getFirstToken(),s=o.getFullStart();e.replaceRange(t,{pos:s,end:s},w.createToken(28));const l=t.text;let u=o.end;for(;u<l.length&&A_(l.charCodeAt(u));)u++;e.deleteRange(t,{pos:o.getStart(),end:u})}}var Y$,$fe,Wet=T({"src/services/codefixes/fixExtendsInterfaceBecomesImplements.ts"(){si(),Ra(),Y$="extendsInterfaceBecomesImplements",$fe=[f.Cannot_extend_an_interface_0_Did_you_mean_implements.code],Aa({errorCodes:$fe,getCodeActions(e){const{sourceFile:t}=e,r=FMe(t,e.span.start);if(!r)return;const{extendsToken:i,heritageClauses:o}=r,s=_r.ChangeTracker.with(e,l=>zMe(l,t,i,o));return[ca(Y$,s,f.Change_extends_to_implements,Y$,f.Change_all_extended_interfaces_to_implements)]},fixIds:[Y$],getAllCodeActions:e=>Es(e,$fe,(t,r)=>{const i=FMe(r.file,r.start);i&&zMe(t,r.file,i.extendsToken,i.heritageClauses)})})}});function BMe(e,t,r){const i=po(e,t);if(Ve(i)||Ji(i))return{node:i,className:r===Qfe?su(i).name.text:void 0}}function GMe(e,t,{node:r,className:i}){Ap(r),e.replaceNode(t,r,w.createPropertyAccessExpression(i?w.createIdentifier(i):w.createThis(),r))}var $$,Qfe,Zfe,Fet=T({"src/services/codefixes/fixForgottenThisPropertyAccess.ts"(){si(),Ra(),$$="forgottenThisPropertyAccess",Qfe=f.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,Zfe=[f.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,f.Private_identifiers_are_only_allowed_in_class_bodies_and_may_only_be_used_as_part_of_a_class_member_declaration_property_access_or_on_the_left_hand_side_of_an_in_expression.code,Qfe],Aa({errorCodes:Zfe,getCodeActions(e){const{sourceFile:t}=e,r=BMe(t,e.span.start,e.errorCode);if(!r)return;const i=_r.ChangeTracker.with(e,o=>GMe(o,t,r));return[ca($$,i,[f.Add_0_to_unresolved_variable,r.className||"this"],$$,f.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[$$],getAllCodeActions:e=>Es(e,Zfe,(t,r)=>{const i=BMe(r.file,r.start,r.code);i&&GMe(t,e.sourceFile,i)})})}});function zet(e){return xs(nme,e)}function eme(e,t,r,i,o){const s=r.getText()[i];if(!zet(s))return;const l=o?nme[s]:`{${p2(r,t,s)}}`;e.replaceRangeWithText(r,{pos:i,end:i+1},l)}var Q$,Tz,tme,nme,Bet=T({"src/services/codefixes/fixInvalidJsxCharacters.ts"(){si(),Ra(),Q$="fixInvalidJsxCharacters_expression",Tz="fixInvalidJsxCharacters_htmlEntity",tme=[f.Unexpected_token_Did_you_mean_or_gt.code,f.Unexpected_token_Did_you_mean_or_rbrace.code],Aa({errorCodes:tme,fixIds:[Q$,Tz],getCodeActions(e){const{sourceFile:t,preferences:r,span:i}=e,o=_r.ChangeTracker.with(e,l=>eme(l,r,t,i.start,!1)),s=_r.ChangeTracker.with(e,l=>eme(l,r,t,i.start,!0));return[ca(Q$,o,f.Wrap_invalid_character_in_an_expression_container,Q$,f.Wrap_all_invalid_characters_in_an_expression_container),ca(Tz,s,f.Convert_invalid_character_to_its_html_entity_code,Tz,f.Convert_all_invalid_characters_to_HTML_entity_code)]},getAllCodeActions(e){return Es(e,tme,(t,r)=>eme(t,e.preferences,r.file,r.start,e.fixId===Tz))}}),nme={">":"&gt;","}":"&rbrace;"}}});function Get(e,{name:t,jsDocHost:r,jsDocParameterTag:i}){const o=_r.ChangeTracker.with(e,s=>s.filterJSDocTags(e.sourceFile,r,l=>l!==i));return ca(Az,o,[f.Delete_unused_param_tag_0,t.getText(e.sourceFile)],Az,f.Delete_all_unused_param_tags)}function Vet(e,{name:t,jsDocHost:r,signature:i,jsDocParameterTag:o}){if(!Me(i.parameters))return;const s=e.sourceFile,l=f0(i),u=new Set;for(const b of l)r_(b)&&Ve(b.name)&&u.add(b.name.escapedText);const p=Ut(i.parameters,b=>Ve(b.name)&&!u.has(b.name.escapedText)?b.name.getText(s):void 0);if(p===void 0)return;const h=w.updateJSDocParameterTag(o,o.tagName,w.createIdentifier(p),o.isBracketed,o.typeExpression,o.isNameFirst,o.comment),m=_r.ChangeTracker.with(e,b=>b.replaceJSDocComment(s,r,wt(l,A=>A===o?h:A)));return o_(rme,m,[f.Rename_param_tag_name_0_to_1,t.getText(s),p])}function VMe(e,t){const r=po(e,t);if(r.parent&&r_(r.parent)&&Ve(r.parent.name)){const i=r.parent,o=CS(i),s=v0(i);if(o&&s)return{jsDocHost:o,signature:s,name:r.parent.name,jsDocParameterTag:i}}}var Az,rme,ime,jet=T({"src/services/codefixes/fixUnmatchedParameter.ts"(){si(),Ra(),Az="deleteUnmatchedParameter",rme="renameUnmatchedParameter",ime=[f.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name.code],Aa({fixIds:[Az,rme],errorCodes:ime,getCodeActions:function(t){const{sourceFile:r,span:i}=t,o=[],s=VMe(r,i.start);if(s)return xn(o,Get(t,s)),xn(o,Vet(t,s)),o},getAllCodeActions:function(t){const r=new Map;return zD(_r.ChangeTracker.with(t,i=>{BD(t,ime,({file:o,start:s})=>{const l=VMe(o,s);l&&r.set(l.signature,xn(r.get(l.signature),l.jsDocParameterTag))}),r.forEach((o,s)=>{if(t.fixId===Az){const l=new Set(o);i.filterJSDocTags(s.getSourceFile(),s,u=>!l.has(u))}})}))}})}});function Uet(e,t,r){const i=ii(po(e,r),Ve);if(!i||i.parent.kind!==183)return;const s=t.getTypeChecker().getSymbolAtLocation(i);return An((s==null?void 0:s.declarations)||et,Ym(Sh,np,tu))}function Het(e,t,r,i){if(r.kind===271){e.insertModifierBefore(t,156,r.name);return}const o=r.kind===273?r:r.parent.parent;if(o.name&&o.namedBindings)return;const s=i.getTypeChecker();h3(o,u=>{if(bu(u.symbol,s).flags&111551)return!0})||e.insertModifierBefore(t,156,o)}function qet(e,t,r,i){wI.doChangeNamedToNamespaceOrDefault(t,i,e,r.parent)}var Z$,jMe,Jet=T({"src/services/codefixes/fixUnreferenceableDecoratorMetadata.ts"(){si(),Ra(),Z$="fixUnreferenceableDecoratorMetadata",jMe=[f.A_type_referenced_in_a_decorated_signature_must_be_imported_with_import_type_or_a_namespace_import_when_isolatedModules_and_emitDecoratorMetadata_are_enabled.code],Aa({errorCodes:jMe,getCodeActions:e=>{const t=Uet(e.sourceFile,e.program,e.span.start);if(!t)return;const r=_r.ChangeTracker.with(e,s=>t.kind===276&&qet(s,e.sourceFile,t,e.program)),i=_r.ChangeTracker.with(e,s=>Het(s,e.sourceFile,t,e.program));let o;return r.length&&(o=xn(o,o_(Z$,r,f.Convert_named_imports_to_namespace_import))),i.length&&(o=xn(o,o_(Z$,i,f.Use_import_type))),o},fixIds:[Z$]})}});function UMe(e,t,r){e.replaceNode(t,r.parent,w.createKeywordTypeNode(159))}function YO(e,t){return ca($O,e,t,nQ,f.Delete_all_unused_declarations)}function HMe(e,t,r){e.delete(t,N.checkDefined(aa(r.parent,Pj).typeParameters,"The type parameter to delete should exist"))}function ome(e){return e.kind===102||e.kind===80&&(e.parent.kind===276||e.parent.kind===273)}function qMe(e){return e.kind===102?ii(e.parent,kc):void 0}function JMe(e,t){return Uc(t.parent)&&Ha(t.parent.getChildren(e))===t}function KMe(e,t,r){e.delete(t,r.parent.kind===243?r.parent:r)}function Ket(e,t,r){Ue(r.elements,i=>e.delete(t,i))}function Xet(e,t,r,{parent:i}){if(wi(i)&&i.initializer&&wE(i.initializer))if(Uc(i.parent)&&Me(i.parent.declarations)>1){const o=i.parent.parent,s=o.getStart(r),l=o.end;t.delete(r,i),t.insertNodeAt(r,l,i.initializer,{prefix:ty(e.host,e.formatContext.options)+r.text.slice(E5(r.text,s-1),s),suffix:TO(r)?";":""})}else t.replaceNode(r,i.parent,i.initializer);else t.delete(r,i)}function XMe(e,t,r,i){t!==f.Property_0_is_declared_but_its_value_is_never_read.code&&(i.kind===140&&(i=aa(i.parent,BS).typeParameter.name),Ve(i)&&Yet(i)&&(e.replaceNode(r,i,w.createIdentifier(`_${i.text}`)),Ao(i.parent)&&Qx(i.parent).forEach(o=>{Ve(o.name)&&e.replaceNode(r,o.name,w.createIdentifier(`_${o.name.text}`))})))}function Yet(e){switch(e.parent.kind){case 169:case 168:return!0;case 260:switch(e.parent.parent.parent.kind){case 250:case 249:return!0}}return!1}function eQ(e,t,r,i,o,s,l,u){$et(t,r,e,i,o,s,l,u),Ve(t)&&Ws.Core.eachSymbolReferenceInFile(t,i,e,p=>{Fr(p.parent)&&p.parent.name===p&&(p=p.parent),!u&&ttt(p)&&r.delete(e,p.parent.parent)})}function $et(e,t,r,i,o,s,l,u){const{parent:p}=e;if(Ao(p))Qet(t,r,p,i,o,s,l,u);else if(!(u&&Ve(e)&&Ws.Core.isSymbolReferencedInFile(e,i,r))){const h=Sh(p)?e:Za(p)?p.parent:p;N.assert(h!==r,"should not delete whole source file"),t.delete(r,h)}}function Qet(e,t,r,i,o,s,l,u=!1){if(Zet(i,t,r,o,s,l,u))if(r.modifiers&&r.modifiers.length>0&&(!Ve(r.name)||Ws.Core.isSymbolReferencedInFile(r.name,i,t)))for(const p of r.modifiers)xa(p)&&e.deleteModifier(t,p);else!r.initializer&&YMe(r,i,o)&&e.delete(t,r)}function YMe(e,t,r){const i=e.parent.parameters.indexOf(e);return!Ws.Core.someSignatureUsage(e.parent,r,t,(o,s)=>!s||s.arguments.length>i)}function Zet(e,t,r,i,o,s,l){const{parent:u}=r;switch(u.kind){case 174:case 176:const p=u.parameters.indexOf(r),h=ql(u)?u.name:u,m=Ws.Core.getReferencedSymbolsForNode(u.pos,h,o,i,s);if(m){for(const b of m)for(const A of b.references)if(A.kind===Ws.EntryKind.Node){const I=hP(A.node)&&la(A.node.parent)&&A.node.parent.arguments.length>p,R=Fr(A.node.parent)&&hP(A.node.parent.expression)&&la(A.node.parent.parent)&&A.node.parent.parent.arguments.length>p,M=(ql(A.node.parent)||bh(A.node.parent))&&A.node.parent!==r.parent&&A.node.parent.parameters.length>p;if(I||R||M)return!1}}return!0;case 262:return u.name&&ett(e,t,u.name)?$Me(u,r,l):!0;case 218:case 219:return $Me(u,r,l);case 178:return!1;case 177:return!0;default:return N.failBadSyntaxKind(u)}}function ett(e,t,r){return!!Ws.Core.eachSymbolReferenceInFile(r,e,t,i=>Ve(i)&&la(i.parent)&&i.parent.arguments.includes(i))}function $Me(e,t,r){const i=e.parameters,o=i.indexOf(t);return N.assert(o!==-1,"The parameter should already be in the list"),r?i.slice(o+1).every(s=>Ve(s.name)&&!s.symbol.isReferenced):o===i.length-1}function ttt(e){return(mr(e.parent)&&e.parent.left===e||(PH(e.parent)||tb(e.parent))&&e.parent.operand===e)&&eu(e.parent.parent)}var $O,tQ,nQ,Iz,rQ,ame,ntt=T({"src/services/codefixes/fixUnusedIdentifier.ts"(){si(),Ra(),$O="unusedIdentifier",tQ="unusedIdentifier_prefix",nQ="unusedIdentifier_delete",Iz="unusedIdentifier_deleteImports",rQ="unusedIdentifier_infer",ame=[f._0_is_declared_but_its_value_is_never_read.code,f._0_is_declared_but_never_used.code,f.Property_0_is_declared_but_its_value_is_never_read.code,f.All_imports_in_import_declaration_are_unused.code,f.All_destructured_elements_are_unused.code,f.All_variables_are_unused.code,f.All_type_parameters_are_unused.code],Aa({errorCodes:ame,getCodeActions(e){const{errorCode:t,sourceFile:r,program:i,cancellationToken:o}=e,s=i.getTypeChecker(),l=i.getSourceFiles(),u=po(r,e.span.start);if(sm(u))return[YO(_r.ChangeTracker.with(e,b=>b.delete(r,u)),f.Remove_template_tag)];if(u.kind===30){const b=_r.ChangeTracker.with(e,A=>HMe(A,r,u));return[YO(b,f.Remove_type_parameters)]}const p=qMe(u);if(p){const b=_r.ChangeTracker.with(e,A=>A.delete(r,p));return[ca($O,b,[f.Remove_import_from_0,Coe(p)],Iz,f.Delete_all_unused_imports)]}else if(ome(u)){const b=_r.ChangeTracker.with(e,A=>eQ(r,u,A,s,l,i,o,!1));if(b.length)return[ca($O,b,[f.Remove_unused_declaration_for_Colon_0,u.getText(r)],Iz,f.Delete_all_unused_imports)]}if(am(u.parent)||n1(u.parent)){if(Ao(u.parent.parent)){const b=u.parent.elements,A=[b.length>1?f.Remove_unused_declarations_for_Colon_0:f.Remove_unused_declaration_for_Colon_0,wt(b,I=>I.getText(r)).join(", ")];return[YO(_r.ChangeTracker.with(e,I=>Ket(I,r,u.parent)),A)]}return[YO(_r.ChangeTracker.with(e,b=>Xet(e,b,r,u.parent)),f.Remove_unused_destructuring_declaration)]}if(JMe(r,u))return[YO(_r.ChangeTracker.with(e,b=>KMe(b,r,u.parent)),f.Remove_variable_statement)];const h=[];if(u.kind===140){const b=_r.ChangeTracker.with(e,I=>UMe(I,r,u)),A=aa(u.parent,BS).typeParameter.name.text;h.push(ca($O,b,[f.Replace_infer_0_with_unknown,A],rQ,f.Replace_all_unused_infer_with_unknown))}else{const b=_r.ChangeTracker.with(e,A=>eQ(r,u,A,s,l,i,o,!1));if(b.length){const A=Za(u.parent)?u.parent:u;h.push(YO(b,[f.Remove_unused_declaration_for_Colon_0,A.getText(r)]))}}const m=_r.ChangeTracker.with(e,b=>XMe(b,t,r,u));return m.length&&h.push(ca($O,m,[f.Prefix_0_with_an_underscore,u.getText(r)],tQ,f.Prefix_all_unused_declarations_with_where_possible)),h},fixIds:[tQ,nQ,Iz,rQ],getAllCodeActions:e=>{const{sourceFile:t,program:r,cancellationToken:i}=e,o=r.getTypeChecker(),s=r.getSourceFiles();return Es(e,ame,(l,u)=>{const p=po(t,u.start);switch(e.fixId){case tQ:XMe(l,u.code,t,p);break;case Iz:{const h=qMe(p);h?l.delete(t,h):ome(p)&&eQ(t,p,l,o,s,r,i,!0);break}case nQ:{if(p.kind===140||ome(p))break;if(sm(p))l.delete(t,p);else if(p.kind===30)HMe(l,t,p);else if(am(p.parent)){if(p.parent.parent.initializer)break;(!Ao(p.parent.parent)||YMe(p.parent.parent,o,s))&&l.delete(t,p.parent.parent)}else{if(n1(p.parent.parent)&&p.parent.parent.parent.initializer)break;JMe(t,p)?KMe(l,t,p.parent):eQ(t,p,l,o,s,r,i,!0)}break}case rQ:p.kind===140&&UMe(l,t,p);break;default:N.fail(JSON.stringify(e.fixId))}})}})}});function QMe(e,t,r,i,o){const s=po(t,r),l=Gn(s,qi);if(l.getStart(t)!==s.getStart(t)){const p=JSON.stringify({statementKind:N.formatSyntaxKind(l.kind),tokenKind:N.formatSyntaxKind(s.kind),errorCode:o,start:r,length:i});N.fail("Token and statement should start at the same point. "+p)}const u=(Xo(l.parent)?l.parent:l).parent;if(!Xo(l.parent)||l===Ha(l.parent.statements))switch(u.kind){case 245:if(u.elseStatement){if(Xo(l.parent))break;e.replaceNode(t,l,w.createBlock(et));return}case 247:case 248:e.delete(t,u);return}if(Xo(l.parent)){const p=r+i,h=N.checkDefined(rtt(BU(l.parent.statements,l),m=>m.pos<p),"Some statement should be last");e.deleteNodeRange(t,l,h)}else e.delete(t,l)}function rtt(e,t){let r;for(const i of e){if(!t(i))break;r=i}return r}var iQ,sme,itt=T({"src/services/codefixes/fixUnreachableCode.ts"(){si(),Ra(),iQ="fixUnreachableCode",sme=[f.Unreachable_code_detected.code],Aa({errorCodes:sme,getCodeActions(e){if(e.program.getSyntacticDiagnostics(e.sourceFile,e.cancellationToken).length)return;const r=_r.ChangeTracker.with(e,i=>QMe(i,e.sourceFile,e.span.start,e.span.length,e.errorCode));return[ca(iQ,r,f.Remove_unreachable_code,iQ,f.Remove_all_unreachable_code)]},fixIds:[iQ],getAllCodeActions:e=>Es(e,sme,(t,r)=>QMe(t,r.file,r.start,r.length,r.code))})}});function ZMe(e,t,r){const i=po(t,r),o=aa(i.parent,o1),s=i.getStart(t),l=o.statement.getStart(t),u=Rf(s,l,t)?l:ka(t.text,vs(o,59,t).end,!0);e.deleteRange(t,{pos:s,end:u})}var oQ,lme,ott=T({"src/services/codefixes/fixUnusedLabel.ts"(){si(),Ra(),oQ="fixUnusedLabel",lme=[f.Unused_label.code],Aa({errorCodes:lme,getCodeActions(e){const t=_r.ChangeTracker.with(e,r=>ZMe(r,e.sourceFile,e.span.start));return[ca(oQ,t,f.Remove_unused_label,oQ,f.Remove_all_unused_labels)]},fixIds:[oQ],getAllCodeActions:e=>Es(e,lme,(t,r)=>ZMe(t,r.file,r.start))})}});function eLe(e,t,r,i,o){e.replaceNode(t,r,o.typeToTypeNode(i,r,void 0))}function tLe(e,t,r){const i=Gn(po(e,t),att),o=i&&i.type;return o&&{typeNode:o,type:stt(r,o)}}function att(e){switch(e.kind){case 234:case 179:case 180:case 262:case 177:case 181:case 200:case 174:case 173:case 169:case 172:case 171:case 178:case 265:case 216:case 260:return!0;default:return!1}}function stt(e,t){if($R(t)){const r=e.getTypeFromTypeNode(t.type);return r===e.getNeverType()||r===e.getVoidType()?r:e.getUnionType(xn([r,e.getUndefinedType()],t.postfix?void 0:e.getNullType()))}return e.getTypeFromTypeNode(t)}var cme,aQ,ume,ltt=T({"src/services/codefixes/fixJSDocTypes.ts"(){si(),Ra(),cme="fixJSDocTypes_plain",aQ="fixJSDocTypes_nullable",ume=[f.JSDoc_types_can_only_be_used_inside_documentation_comments.code,f._0_at_the_end_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code,f._0_at_the_start_of_a_type_is_not_valid_TypeScript_syntax_Did_you_mean_to_write_1.code],Aa({errorCodes:ume,getCodeActions(e){const{sourceFile:t}=e,r=e.program.getTypeChecker(),i=tLe(t,e.span.start,r);if(!i)return;const{typeNode:o,type:s}=i,l=o.getText(t),u=[p(s,cme,f.Change_all_jsdoc_style_types_to_TypeScript)];return o.kind===321&&u.push(p(s,aQ,f.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types)),u;function p(h,m,b){const A=_r.ChangeTracker.with(e,I=>eLe(I,t,o,h,r));return ca("jdocTypes",A,[f.Change_0_to_1,l,r.typeToString(h)],m,b)}},fixIds:[cme,aQ],getAllCodeActions(e){const{fixId:t,program:r,sourceFile:i}=e,o=r.getTypeChecker();return Es(e,ume,(s,l)=>{const u=tLe(l.file,l.start,o);if(!u)return;const{typeNode:p,type:h}=u,m=p.kind===321&&t===aQ?o.getNullableType(h,32768):h;eLe(s,i,p,m,o)})}})}});function nLe(e,t,r){e.replaceNodeWithText(t,r,`${r.text}()`)}function rLe(e,t){const r=po(e,t);if(Fr(r.parent)){let i=r.parent;for(;Fr(i.parent);)i=i.parent;return i.name}if(Ve(r))return r}var sQ,dme,ctt=T({"src/services/codefixes/fixMissingCallParentheses.ts"(){si(),Ra(),sQ="fixMissingCallParentheses",dme=[f.This_condition_will_always_return_true_since_this_function_is_always_defined_Did_you_mean_to_call_it_instead.code],Aa({errorCodes:dme,fixIds:[sQ],getCodeActions(e){const{sourceFile:t,span:r}=e,i=rLe(t,r.start);if(!i)return;const o=_r.ChangeTracker.with(e,s=>nLe(s,e.sourceFile,i));return[ca(sQ,o,f.Add_missing_call_parentheses,sQ,f.Add_all_missing_call_parentheses)]},getAllCodeActions:e=>Es(e,dme,(t,r)=>{const i=rLe(r.file,r.start);i&&nLe(t,r.file,i)})})}});function utt(e){if(e.type)return e.type;if(wi(e.parent)&&e.parent.type&&Eh(e.parent.type))return e.parent.type.type}function iLe(e,t){const r=po(e,t),i=Gp(r);if(!i)return;let o;switch(i.kind){case 174:o=i.name;break;case 262:case 218:o=vs(i,100,e);break;case 219:const s=i.typeParameters?30:21;o=vs(i,s,e)||Ha(i.parameters);break;default:return}return o&&{insertBefore:o,returnType:utt(i)}}function oLe(e,t,{insertBefore:r,returnType:i}){if(i){const o=zL(i);(!o||o.kind!==80||o.text!=="Promise")&&e.replaceNode(t,i,w.createTypeReferenceNode("Promise",w.createNodeArray([i])))}e.insertModifierBefore(t,134,r)}var lQ,pme,dtt=T({"src/services/codefixes/fixAwaitInSyncFunction.ts"(){si(),Ra(),lQ="fixAwaitInSyncFunction",pme=[f.await_expressions_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,f.await_using_statements_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,f.for_await_loops_are_only_allowed_within_async_functions_and_at_the_top_levels_of_modules.code,f.Cannot_find_name_0_Did_you_mean_to_write_this_in_an_async_function.code],Aa({errorCodes:pme,getCodeActions(e){const{sourceFile:t,span:r}=e,i=iLe(t,r.start);if(!i)return;const o=_r.ChangeTracker.with(e,s=>oLe(s,t,i));return[ca(lQ,o,f.Add_async_modifier_to_containing_function,lQ,f.Add_all_missing_async_modifiers)]},fixIds:[lQ],getAllCodeActions:function(t){const r=new Map;return Es(t,pme,(i,o)=>{const s=iLe(o.file,o.start);!s||!Rm(r,as(s.insertBefore))||oLe(i,t.sourceFile,s)})}})}});function aLe(e,t,r,i,o){let s,l;if(i===f._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code)s=t,l=t+r;else if(i===f._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code){const u=o.program.getTypeChecker(),p=po(e,t).parent;N.assert(Oy(p),"error span of fixPropertyOverrideAccessor should only be on an accessor");const h=p.parent;N.assert(ui(h),"erroneous accessors should only be inside classes");const m=sh(Cme(h,u));if(!m)return[];const b=Vi(lR(p.name)),A=u.getPropertyOfType(u.getTypeAtLocation(m),b);if(!A||!A.valueDeclaration)return[];s=A.valueDeclaration.pos,l=A.valueDeclaration.end,e=jn(A.valueDeclaration)}else N.fail("fixPropertyOverrideAccessor codefix got unexpected error code "+i);return ELe(e,o.program,s,l,o,f.Generate_get_and_set_accessors.message)}var fme,cQ,ptt=T({"src/services/codefixes/fixPropertyOverrideAccessor.ts"(){si(),Ra(),fme=[f._0_is_defined_as_an_accessor_in_class_1_but_is_overridden_here_in_2_as_an_instance_property.code,f._0_is_defined_as_a_property_in_class_1_but_is_overridden_here_in_2_as_an_accessor.code],cQ="fixPropertyOverrideAccessor",Aa({errorCodes:fme,getCodeActions(e){const t=aLe(e.sourceFile,e.span.start,e.span.length,e.errorCode,e);if(t)return[ca(cQ,t,f.Generate_get_and_set_accessors,cQ,f.Generate_get_and_set_accessors_for_all_overriding_properties)]},fixIds:[cQ],getAllCodeActions:e=>Es(e,fme,(t,r)=>{const i=aLe(r.file,r.start,r.length,r.code,e);if(i)for(const o of i)t.pushRaw(e.sourceFile,o)})})}});function ftt(e,t){switch(e){case f.Parameter_0_implicitly_has_an_1_type.code:case f.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return bp(Gp(t))?f.Infer_type_of_0_from_usage:f.Infer_parameter_types_from_usage;case f.Rest_parameter_0_implicitly_has_an_any_type.code:case f.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return f.Infer_parameter_types_from_usage;case f.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:return f.Infer_this_type_of_0_from_usage;default:return f.Infer_type_of_0_from_usage}}function mtt(e){switch(e){case f.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return f.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case f.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return f.Variable_0_implicitly_has_an_1_type.code;case f.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return f.Parameter_0_implicitly_has_an_1_type.code;case f.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return f.Rest_parameter_0_implicitly_has_an_any_type.code;case f.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return f.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case f._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return f._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case f.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return f.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case f.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return f.Member_0_implicitly_has_an_1_type.code}return e}function sLe(e,t,r,i,o,s,l,u,p){if(!_C(r.kind)&&r.kind!==80&&r.kind!==26&&r.kind!==110)return;const{parent:h}=r,m=FI(t,o,p,u);switch(i=mtt(i),i){case f.Member_0_implicitly_has_an_1_type.code:case f.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(wi(h)&&l(h)||Jo(h)||yp(h))return lLe(e,m,t,h,o,u,s),m.writeFixes(e),h;if(Fr(h)){const I=QO(h.name,o,s),R=f2(I,h,o,u);if(R){const M=w.createJSDocTypeTag(void 0,w.createJSDocTypeExpression(R),void 0);e.addJSDocTags(t,aa(h.parent.parent,eu),[M])}return m.writeFixes(e),h}return;case f.Variable_0_implicitly_has_an_1_type.code:{const I=o.getTypeChecker().getSymbolAtLocation(r);return I&&I.valueDeclaration&&wi(I.valueDeclaration)&&l(I.valueDeclaration)?(lLe(e,m,jn(I.valueDeclaration),I.valueDeclaration,o,u,s),m.writeFixes(e),I.valueDeclaration):void 0}}const b=Gp(r);if(b===void 0)return;let A;switch(i){case f.Parameter_0_implicitly_has_an_1_type.code:if(bp(b)){cLe(e,m,t,b,o,u,s),A=b;break}case f.Rest_parameter_0_implicitly_has_an_any_type.code:if(l(b)){const I=aa(h,Ao);_tt(e,m,t,I,b,o,u,s),A=I}break;case f.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case f._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:rf(b)&&Ve(b.name)&&(uQ(e,m,t,b,QO(b.name,o,s),o,u),A=b);break;case f.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:bp(b)&&(cLe(e,m,t,b,o,u,s),A=b);break;case f.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code:_r.isThisTypeAnnotatable(b)&&l(b)&&(htt(e,t,b,o,u,s),A=b);break;default:return N.fail(String(i))}return m.writeFixes(e),A}function lLe(e,t,r,i,o,s,l){Ve(i.name)&&uQ(e,t,r,i,QO(i.name,o,l),o,s)}function _tt(e,t,r,i,o,s,l,u){if(!Ve(i.name))return;const p=ytt(o,r,s,u);if(N.assert(o.parameters.length===p.length,"Parameter count and inference count should match"),lr(o))uLe(e,r,p,s,l);else{const h=Gs(o)&&!vs(o,21,r);h&&e.insertNodeBefore(r,Ha(o.parameters),w.createToken(21));for(const{declaration:m,type:b}of p)m&&!m.type&&!m.initializer&&uQ(e,t,r,m,b,s,l);h&&e.insertNodeAfter(r,Ya(o.parameters),w.createToken(22))}}function htt(e,t,r,i,o,s){const l=dLe(r,t,i,s);if(!l||!l.length)return;const u=_me(i,l,s).thisParameter(),p=f2(u,r,i,o);p&&(lr(r)?gtt(e,t,r,p):e.tryInsertThisTypeAnnotation(t,r,p))}function gtt(e,t,r,i){e.addJSDocTags(t,r,[w.createJSDocThisTag(void 0,w.createJSDocTypeExpression(i))])}function cLe(e,t,r,i,o,s,l){const u=Xc(i.parameters);if(u&&Ve(i.name)&&Ve(u.name)){let p=QO(i.name,o,l);p===o.getTypeChecker().getAnyType()&&(p=QO(u.name,o,l)),lr(i)?uLe(e,r,[{declaration:u,type:p}],o,s):uQ(e,t,r,u,p,o,s)}}function uQ(e,t,r,i,o,s,l){const u=f2(o,i,s,l);if(u)if(lr(r)&&i.kind!==171){const p=wi(i)?ii(i.parent.parent,Ll):i;if(!p)return;const h=w.createJSDocTypeExpression(u),m=rf(i)?w.createJSDocReturnTag(void 0,h,void 0):w.createJSDocTypeTag(void 0,h,void 0);e.addJSDocTags(r,p,[m])}else vtt(u,i,r,e,t,os(s.getCompilerOptions()))||e.tryInsertTypeAnnotation(r,i,u)}function vtt(e,t,r,i,o,s){const l=BI(e,s);return l&&i.tryInsertTypeAnnotation(r,t,l.typeNode)?(Ue(l.symbols,u=>o.addImportFromExportedSymbol(u,!0)),!0):!1}function uLe(e,t,r,i,o){const s=r.length&&r[0].declaration.parent;if(!s)return;const l=Hi(r,u=>{const p=u.declaration;if(p.initializer||p0(p)||!Ve(p.name))return;const h=u.type&&f2(u.type,p,i,o);if(h){const m=w.cloneNode(p.name);return pr(m,7168),{name:w.cloneNode(p.name),param:p,isOptional:!!u.isOptional,typeNode:h}}});if(l.length)if(Gs(s)||Os(s)){const u=Gs(s)&&!vs(s,21,t);u&&e.insertNodeBefore(t,Ha(s.parameters),w.createToken(21)),Ue(l,({typeNode:p,param:h})=>{const m=w.createJSDocTypeTag(void 0,w.createJSDocTypeExpression(p)),b=w.createJSDocComment(void 0,[m]);e.insertNodeAt(t,h.getStart(t),b,{suffix:" "})}),u&&e.insertNodeAfter(t,Ya(s.parameters),w.createToken(22))}else{const u=wt(l,({name:p,typeNode:h,isOptional:m})=>w.createJSDocParameterTag(void 0,p,!!m,w.createJSDocTypeExpression(h),!1,void 0));e.addJSDocTags(t,s,u)}}function mme(e,t,r){return Hi(Ws.getReferenceEntriesForNode(-1,e,t,t.getSourceFiles(),r),i=>i.kind!==Ws.EntryKind.Span?ii(i.node,Ve):void 0)}function QO(e,t,r){const i=mme(e,t,r);return _me(t,i,r).single()}function ytt(e,t,r,i){const o=dLe(e,t,r,i);return o&&_me(r,o,i).parameters(e)||e.parameters.map(s=>({declaration:s,type:Ve(s.name)?QO(s.name,r,i):r.getTypeChecker().getAnyType()}))}function dLe(e,t,r,i){let o;switch(e.kind){case 176:o=vs(e,137,t);break;case 219:case 218:const s=e.parent;o=(wi(s)||Jo(s))&&Ve(s.name)?s.name:e.name;break;case 262:case 174:case 173:o=e.name;break}if(o)return mme(o,r,i)}function _me(e,t,r){const i=e.getTypeChecker(),o={string:()=>i.getStringType(),number:()=>i.getNumberType(),Array:De=>i.createArrayType(De),Promise:De=>i.createPromiseType(De)},s=[i.getStringType(),i.getNumberType(),i.createArrayType(i.getAnyType()),i.createPromiseType(i.getAnyType())];return{single:p,parameters:h,thisParameter:m};function l(){return{isNumber:void 0,isString:void 0,isNumberOrString:void 0,candidateTypes:void 0,properties:void 0,calls:void 0,constructs:void 0,numberIndex:void 0,stringIndex:void 0,candidateThisTypes:void 0,inferredTypes:void 0}}function u(De){const Pe=new Map;for(const At of De)At.properties&&At.properties.forEach((Se,je)=>{Pe.has(je)||Pe.set(je,[]),Pe.get(je).push(Se)});const We=new Map;return Pe.forEach((At,Se)=>{We.set(Se,u(At))}),{isNumber:De.some(At=>At.isNumber),isString:De.some(At=>At.isString),isNumberOrString:De.some(At=>At.isNumberOrString),candidateTypes:Pi(De,At=>At.candidateTypes),properties:We,calls:Pi(De,At=>At.calls),constructs:Pi(De,At=>At.constructs),numberIndex:Ue(De,At=>At.numberIndex),stringIndex:Ue(De,At=>At.stringIndex),candidateThisTypes:Pi(De,At=>At.candidateThisTypes),inferredTypes:void 0}}function p(){return he(b(t))}function h(De){if(t.length===0||!De.parameters)return;const Pe=l();for(const At of t)r.throwIfCancellationRequested(),A(At,Pe);const We=[...Pe.constructs||[],...Pe.calls||[]];return De.parameters.map((At,Se)=>{const je=[],at=Zh(At);let Gt=!1;for(const $e of We)if($e.argumentTypes.length<=Se)Gt=lr(De),je.push(i.getUndefinedType());else if(at)for(let It=Se;It<$e.argumentTypes.length;It++)je.push(i.getBaseTypeOfLiteralType($e.argumentTypes[It]));else je.push(i.getBaseTypeOfLiteralType($e.argumentTypes[Se]));if(Ve(At.name)){const $e=b(mme(At.name,e,r));je.push(...at?Hi($e,i.getElementTypeOfArrayType):$e)}const vt=he(je);return{type:at?i.createArrayType(vt):vt,isOptional:Gt&&!at,declaration:At}})}function m(){const De=l();for(const Pe of t)r.throwIfCancellationRequested(),A(Pe,De);return he(De.candidateThisTypes||et)}function b(De){const Pe=l();for(const We of De)r.throwIfCancellationRequested(),A(We,Pe);return $(Pe)}function A(De,Pe){for(;VC(De);)De=De.parent;switch(De.parent.kind){case 244:R(De,Pe);break;case 225:Pe.isNumber=!0;break;case 224:M(De.parent,Pe);break;case 226:C(De,De.parent,Pe);break;case 296:case 297:O(De.parent,Pe);break;case 213:case 214:De.parent.expression===De?U(De.parent,Pe):I(De,Pe);break;case 211:K(De.parent,Pe);break;case 212:Z(De.parent,De,Pe);break;case 303:case 304:V(De.parent,Pe);break;case 172:se(De.parent,Pe);break;case 260:{const{name:We,initializer:At}=De.parent;if(De===We){At&&He(Pe,i.getTypeAtLocation(At));break}}default:return I(De,Pe)}}function I(De,Pe){ng(De)&&He(Pe,i.getContextualType(De))}function R(De,Pe){He(Pe,la(De)?i.getVoidType():i.getAnyType())}function M(De,Pe){switch(De.operator){case 46:case 47:case 41:case 55:Pe.isNumber=!0;break;case 40:Pe.isNumberOrString=!0;break}}function C(De,Pe,We){switch(Pe.operatorToken.kind){case 43:case 42:case 44:case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 66:case 68:case 67:case 69:case 70:case 74:case 75:case 79:case 71:case 73:case 72:case 41:case 30:case 33:case 32:case 34:const At=i.getTypeAtLocation(Pe.left===De?Pe.right:Pe.left);At.flags&1056?He(We,At):We.isNumber=!0;break;case 65:case 40:const Se=i.getTypeAtLocation(Pe.left===De?Pe.right:Pe.left);Se.flags&1056?He(We,Se):Se.flags&296?We.isNumber=!0:Se.flags&402653316?We.isString=!0:Se.flags&1||(We.isNumberOrString=!0);break;case 64:case 35:case 37:case 38:case 36:case 77:case 78:case 76:He(We,i.getTypeAtLocation(Pe.left===De?Pe.right:Pe.left));break;case 103:De===Pe.left&&(We.isString=!0);break;case 57:case 61:De===Pe.left&&(De.parent.parent.kind===260||Lc(De.parent.parent,!0))&&He(We,i.getTypeAtLocation(Pe.right));break}}function O(De,Pe){He(Pe,i.getTypeAtLocation(De.parent.parent.expression))}function U(De,Pe){const We={argumentTypes:[],return_:l()};if(De.arguments)for(const At of De.arguments)We.argumentTypes.push(i.getTypeAtLocation(At));A(De,We.return_),De.kind===213?(Pe.calls||(Pe.calls=[])).push(We):(Pe.constructs||(Pe.constructs=[])).push(We)}function K(De,Pe){const We=hl(De.name.text);Pe.properties||(Pe.properties=new Map);const At=Pe.properties.get(We)||l();A(De,At),Pe.properties.set(We,At)}function Z(De,Pe,We){if(Pe===De.argumentExpression){We.isNumberOrString=!0;return}else{const At=i.getTypeAtLocation(De.argumentExpression),Se=l();A(De,Se),At.flags&296?We.numberIndex=Se:We.stringIndex=Se}}function V(De,Pe){const We=wi(De.parent.parent)?De.parent.parent:De.parent;Ee(Pe,i.getTypeAtLocation(We))}function se(De,Pe){Ee(Pe,i.getTypeAtLocation(De.parent))}function G(De,Pe){const We=[];for(const At of De)for(const{high:Se,low:je}of Pe)Se(At)&&(N.assert(!je(At),"Priority can't have both low and high"),We.push(je));return De.filter(At=>We.every(Se=>!Se(At)))}function ne(De){return he($(De))}function he(De){if(!De.length)return i.getAnyType();const Pe=i.getUnionType([i.getStringType(),i.getNumberType()]);let At=G(De,[{high:je=>je===i.getStringType()||je===i.getNumberType(),low:je=>je===Pe},{high:je=>!(je.flags&16385),low:je=>!!(je.flags&16385)},{high:je=>!(je.flags&114689)&&!(Wr(je)&16),low:je=>!!(Wr(je)&16)}]);const Se=At.filter(je=>Wr(je)&16);return Se.length&&(At=At.filter(je=>!(Wr(je)&16)),At.push(ye(Se))),i.getWidenedType(i.getUnionType(At.map(i.getBaseTypeOfLiteralType),2))}function ye(De){if(De.length===1)return De[0];const Pe=[],We=[],At=[],Se=[];let je=!1,at=!1;const Gt=Zp();for(const It of De){for(const Pn of i.getPropertiesOfType(It))Gt.add(Pn.escapedName,Pn.valueDeclaration?i.getTypeOfSymbolAtLocation(Pn,Pn.valueDeclaration):i.getAnyType());Pe.push(...i.getSignaturesOfType(It,0)),We.push(...i.getSignaturesOfType(It,1));const tn=i.getIndexInfoOfType(It,0);tn&&(At.push(tn.type),je=je||tn.isReadonly);const rn=i.getIndexInfoOfType(It,1);rn&&(Se.push(rn.type),at=at||rn.isReadonly)}const vt=Ane(Gt,(It,tn)=>{const rn=tn.length<De.length?16777216:0,Pn=i.createSymbol(4|rn,It);return Pn.links.type=i.getUnionType(tn),[It,Pn]}),$e=[];return At.length&&$e.push(i.createIndexInfo(i.getStringType(),i.getUnionType(At),je)),Se.length&&$e.push(i.createIndexInfo(i.getNumberType(),i.getUnionType(Se),at)),i.createAnonymousType(De[0].symbol,vt,Pe,We,$e)}function $(De){var Pe,We,At;const Se=[];De.isNumber&&Se.push(i.getNumberType()),De.isString&&Se.push(i.getStringType()),De.isNumberOrString&&Se.push(i.getUnionType([i.getStringType(),i.getNumberType()])),De.numberIndex&&Se.push(i.createArrayType(ne(De.numberIndex))),((Pe=De.properties)!=null&&Pe.size||(We=De.constructs)!=null&&We.length||De.stringIndex)&&Se.push(Y(De));const je=(De.candidateTypes||[]).map(Gt=>i.getBaseTypeOfLiteralType(Gt)),at=(At=De.calls)!=null&&At.length?Y(De):void 0;return at&&je?Se.push(i.getUnionType([at,...je],2)):(at&&Se.push(at),Me(je)&&Se.push(...je)),Se.push(...oe(De)),Se}function Y(De){const Pe=new Map;De.properties&&De.properties.forEach((je,at)=>{const Gt=i.createSymbol(4,at);Gt.links.type=ne(je),Pe.set(at,Gt)});const We=De.calls?[Le(De.calls)]:[],At=De.constructs?[Le(De.constructs)]:[],Se=De.stringIndex?[i.createIndexInfo(i.getStringType(),ne(De.stringIndex),!1)]:[];return i.createAnonymousType(void 0,Pe,We,At,Se)}function oe(De){if(!De.properties||!De.properties.size)return[];const Pe=s.filter(We=>fe(We,De));return 0<Pe.length&&Pe.length<3?Pe.map(We=>Ne(We,De)):[]}function fe(De,Pe){return Pe.properties?!Gc(Pe.properties,(We,At)=>{const Se=i.getTypeOfPropertyOfType(De,At);return Se?We.calls?!i.getSignaturesOfType(Se,0).length||!i.isTypeAssignableTo(Se,ve(We.calls)):!i.isTypeAssignableTo(Se,ne(We)):!0}):!1}function Ne(De,Pe){if(!(Wr(De)&4)||!Pe.properties)return De;const We=De.target,At=sh(We.typeParameters);if(!At)return De;const Se=[];return Pe.properties.forEach((je,at)=>{const Gt=i.getTypeOfPropertyOfType(We,at);N.assert(!!Gt,"generic should have all the properties of its reference."),Se.push(...pe(Gt,ne(je),At))}),o[De.symbol.escapedName](he(Se))}function pe(De,Pe,We){if(De===We)return[Pe];if(De.flags&3145728)return Pi(De.types,je=>pe(je,Pe,We));if(Wr(De)&4&&Wr(Pe)&4){const je=i.getTypeArguments(De),at=i.getTypeArguments(Pe),Gt=[];if(je&&at)for(let vt=0;vt<je.length;vt++)at[vt]&&Gt.push(...pe(je[vt],at[vt],We));return Gt}const At=i.getSignaturesOfType(De,0),Se=i.getSignaturesOfType(Pe,0);return At.length===1&&Se.length===1?ie(At[0],Se[0],We):[]}function ie(De,Pe,We){var At;const Se=[];for(let Gt=0;Gt<De.parameters.length;Gt++){const vt=De.parameters[Gt],$e=Pe.parameters[Gt],It=De.declaration&&Zh(De.declaration.parameters[Gt]);if(!$e)break;let tn=vt.valueDeclaration?i.getTypeOfSymbolAtLocation(vt,vt.valueDeclaration):i.getAnyType();const rn=It&&i.getElementTypeOfArrayType(tn);rn&&(tn=rn);const Pn=((At=ii($e,mh))==null?void 0:At.links.type)||($e.valueDeclaration?i.getTypeOfSymbolAtLocation($e,$e.valueDeclaration):i.getAnyType());Se.push(...pe(tn,Pn,We))}const je=i.getReturnTypeOfSignature(De),at=i.getReturnTypeOfSignature(Pe);return Se.push(...pe(je,at,We)),Se}function ve(De){return i.createAnonymousType(void 0,ua(),[Le(De)],et,et)}function Le(De){const Pe=[],We=Math.max(...De.map(Se=>Se.argumentTypes.length));for(let Se=0;Se<We;Se++){const je=i.createSymbol(1,hl(`arg${Se}`));je.links.type=he(De.map(at=>at.argumentTypes[Se]||i.getUndefinedType())),De.some(at=>at.argumentTypes[Se]===void 0)&&(je.flags|=16777216),Pe.push(je)}const At=ne(u(De.map(Se=>Se.return_)));return i.createSignature(void 0,void 0,void 0,Pe,At,void 0,We,0)}function He(De,Pe){Pe&&!(Pe.flags&1)&&!(Pe.flags&131072)&&(De.candidateTypes||(De.candidateTypes=[])).push(Pe)}function Ee(De,Pe){Pe&&!(Pe.flags&1)&&!(Pe.flags&131072)&&(De.candidateThisTypes||(De.candidateThisTypes=[])).push(Pe)}}var dQ,hme,btt=T({"src/services/codefixes/inferFromUsage.ts"(){si(),Ra(),dQ="inferFromUsage",hme=[f.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,f.Variable_0_implicitly_has_an_1_type.code,f.Parameter_0_implicitly_has_an_1_type.code,f.Rest_parameter_0_implicitly_has_an_any_type.code,f.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,f._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,f.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,f.Member_0_implicitly_has_an_1_type.code,f.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,f.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,f.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,f.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,f.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,f._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,f.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,f.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,f.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation.code],Aa({errorCodes:hme,getCodeActions(e){const{sourceFile:t,program:r,span:{start:i},errorCode:o,cancellationToken:s,host:l,preferences:u}=e,p=po(t,i);let h;const m=_r.ChangeTracker.with(e,A=>{h=sLe(A,t,p,o,r,s,Pv,l,u)}),b=h&&Mo(h);return!b||m.length===0?void 0:[ca(dQ,m,[ftt(o,p),fc(b)],dQ,f.Infer_all_types_from_usage)]},fixIds:[dQ],getAllCodeActions(e){const{sourceFile:t,program:r,cancellationToken:i,host:o,preferences:s}=e,l=PI();return Es(e,hme,(u,p)=>{sLe(u,t,po(p.file,p.start),p.code,r,i,l,o,s)})}})}});function pLe(e,t,r){if(lr(e))return;const i=po(e,r),o=Gn(i,Bs),s=o==null?void 0:o.type;if(!s)return;const l=t.getTypeFromTypeNode(s),u=t.getAwaitedType(l)||t.getVoidType(),p=t.typeToTypeNode(u,s,void 0);if(p)return{returnTypeNode:s,returnType:l,promisedTypeNode:p,promisedType:u}}function fLe(e,t,r,i){e.replaceNode(t,r,w.createTypeReferenceNode("Promise",[i]))}var pQ,gme,Ett=T({"src/services/codefixes/fixReturnTypeInAsyncFunction.ts"(){si(),Ra(),pQ="fixReturnTypeInAsyncFunction",gme=[f.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_Did_you_mean_to_write_Promise_0.code],Aa({errorCodes:gme,fixIds:[pQ],getCodeActions:function(t){const{sourceFile:r,program:i,span:o}=t,s=i.getTypeChecker(),l=pLe(r,i.getTypeChecker(),o.start);if(!l)return;const{returnTypeNode:u,returnType:p,promisedTypeNode:h,promisedType:m}=l,b=_r.ChangeTracker.with(t,A=>fLe(A,r,u,h));return[ca(pQ,b,[f.Replace_0_with_Promise_1,s.typeToString(p),s.typeToString(m)],pQ,f.Fix_all_incorrect_return_type_of_an_async_functions)]},getAllCodeActions:e=>Es(e,gme,(t,r)=>{const i=pLe(r.file,e.program.getTypeChecker(),r.start);i&&fLe(t,r.file,i.returnTypeNode,i.promisedTypeNode)})})}});function mLe(e,t,r,i){const{line:o}=bs(t,r);(!i||Rv(i,o))&&e.insertCommentBeforeLine(t,o,r," @ts-ignore")}var vme,yme,bme,Stt=T({"src/services/codefixes/disableJsDiagnostics.ts"(){si(),Ra(),vme="disableJsDiagnostics",yme="disableJsDiagnostics",bme=Hi(Object.keys(f),e=>{const t=f[e];return t.category===1?t.code:void 0}),Aa({errorCodes:bme,getCodeActions:function(t){const{sourceFile:r,program:i,span:o,host:s,formatContext:l}=t;if(!lr(r)||!Ak(r,i.getCompilerOptions()))return;const u=r.checkJsDirective?"":ty(s,l.options),p=[o_(vme,[hPe(r.fileName,[fO(r.checkJsDirective?pc(r.checkJsDirective.pos,r.checkJsDirective.end):vu(0,0),`// @ts-nocheck${u}`)])],f.Disable_checking_for_this_file)];return _r.isValidLocationToAddComment(r,o.start)&&p.unshift(ca(vme,_r.ChangeTracker.with(t,h=>mLe(h,r,o.start)),f.Ignore_this_error_message,yme,f.Add_ts_ignore_to_all_error_messages)),p},fixIds:[yme],getAllCodeActions:e=>{const t=new Set;return Es(e,bme,(r,i)=>{_r.isValidLocationToAddComment(i.file,i.start)&&mLe(r,i.file,i.start,t)})}})}});function Eme(e,t,r,i,o,s,l){const u=e.symbol.members;for(const p of t)u.has(p.escapedName)||_Le(p,e,r,i,o,s,l,void 0)}function VD(e){return{trackSymbol:()=>!1,moduleResolverHost:vX(e.program,e.host)}}function _Le(e,t,r,i,o,s,l,u,p=3,h=!1){const m=e.getDeclarations(),b=Xc(m),A=i.program.getTypeChecker(),I=os(i.program.getCompilerOptions()),R=(b==null?void 0:b.kind)??171,M=oe(e,b),C=b?pd(b):0;let O=C&256;O|=C&1?1:C&4?4:0,b&&Wd(b)&&(O|=512);const U=ne(),K=A.getWidenedType(A.getTypeOfSymbolAtLocation(e,t)),Z=!!(e.flags&16777216),V=!!(t.flags&33554432)||h,se=uf(r,o);switch(R){case 171:case 172:const fe=se===0?268435456:void 0;let Ne=A.typeToTypeNode(K,t,fe,VD(i));if(s){const ie=BI(Ne,I);ie&&(Ne=ie.typeNode,jD(s,ie.symbols))}l(w.createPropertyDeclaration(U,b?ye(M):e.getName(),Z&&p&2?w.createToken(58):void 0,Ne,void 0));break;case 177:case 178:{N.assertIsDefined(m);let ie=A.typeToTypeNode(K,t,void 0,VD(i));const ve=wS(m,b),Le=ve.secondAccessor?[ve.firstAccessor,ve.secondAccessor]:[ve.firstAccessor];if(s){const He=BI(ie,I);He&&(ie=He.typeNode,jD(s,He.symbols))}for(const He of Le)if(rf(He))l(w.createGetAccessorDeclaration(U,ye(M),et,Y(ie),$(u,se,V)));else{N.assertNode(He,bp,"The counterpart to a getter should be a setter");const Ee=FC(He),De=Ee&&Ve(Ee.name)?Sr(Ee.name):void 0;l(w.createSetAccessorDeclaration(U,ye(M),Tme(1,[De],[Y(ie)],1,!1),$(u,se,V)))}break}case 173:case 174:N.assertIsDefined(m);const pe=K.isUnion()?Pi(K.types,ie=>ie.getCallSignatures()):K.getCallSignatures();if(!bt(pe))break;if(m.length===1){N.assert(pe.length===1,"One declaration implies one signature");const ie=pe[0];G(se,ie,U,ye(M),$(u,se,V));break}for(const ie of pe)G(se,ie,U,ye(M));if(!V)if(m.length>pe.length){const ie=A.getSignatureFromDeclaration(m[m.length-1]);G(se,ie,U,ye(M),$(u,se))}else N.assert(m.length===pe.length,"Declarations and signatures should match count"),l(Itt(A,i,t,pe,ye(M),Z&&!!(p&1),U,se,u));break}function G(fe,Ne,pe,ie,ve){const Le=fQ(174,i,fe,Ne,ve,ie,pe,Z&&!!(p&1),t,s);Le&&l(Le)}function ne(){let fe;return O&&(fe=Wx(fe,w.createModifiersFromModifierFlags(O))),he()&&(fe=xn(fe,w.createToken(164))),fe&&w.createNodeArray(fe)}function he(){return!!(i.program.getCompilerOptions().noImplicitOverride&&b&&XE(b))}function ye(fe){return Ve(fe)&&fe.escapedText==="constructor"?w.createComputedPropertyName(w.createStringLiteral(Sr(fe),se===0)):cl(fe,!1)}function $(fe,Ne,pe){return pe?void 0:cl(fe,!1)||Ame(Ne)}function Y(fe){return cl(fe,!1)}function oe(fe,Ne){if(xl(fe)&262144){const pe=fe.links.nameType;if(pe&&rm(pe))return w.createIdentifier(Vi(im(pe)))}return cl(Mo(Ne),!1)}}function fQ(e,t,r,i,o,s,l,u,p,h){const m=t.program,b=m.getTypeChecker(),A=os(m.getCompilerOptions()),I=lr(p),R=524545|(r===0?268435456:0),M=b.signatureToSignatureDeclaration(i,e,p,R,VD(t));if(!M)return;let C=I?void 0:M.typeParameters,O=M.parameters,U=I?void 0:M.type;if(h){if(C){const se=eo(C,G=>{let ne=G.constraint,he=G.default;if(ne){const ye=BI(ne,A);ye&&(ne=ye.typeNode,jD(h,ye.symbols))}if(he){const ye=BI(he,A);ye&&(he=ye.typeNode,jD(h,ye.symbols))}return w.updateTypeParameterDeclaration(G,G.modifiers,G.name,ne,he)});C!==se&&(C=dt(w.createNodeArray(se,C.hasTrailingComma),C))}const V=eo(O,se=>{let G=I?void 0:se.type;if(G){const ne=BI(G,A);ne&&(G=ne.typeNode,jD(h,ne.symbols))}return w.updateParameterDeclaration(se,se.modifiers,se.dotDotDotToken,se.name,I?void 0:se.questionToken,G,se.initializer)});if(O!==V&&(O=dt(w.createNodeArray(V,O.hasTrailingComma),O)),U){const se=BI(U,A);se&&(U=se.typeNode,jD(h,se.symbols))}}const K=u?w.createToken(58):void 0,Z=M.asteriskToken;if(Os(M))return w.updateFunctionExpression(M,l,M.asteriskToken,ii(s,Ve),C,O,U,o??M.body);if(Gs(M))return w.updateArrowFunction(M,l,C,O,U,M.equalsGreaterThanToken,o??M.body);if(ql(M))return w.updateMethodDeclaration(M,l,Z,s??w.createIdentifier(""),K,C,O,U,o);if(Ac(M))return w.updateFunctionDeclaration(M,l,M.asteriskToken,ii(s,Ve),C,O,U,o??M.body)}function Sme(e,t,r,i,o,s,l){const u=uf(t.sourceFile,t.preferences),p=os(t.program.getCompilerOptions()),h=VD(t),m=t.program.getTypeChecker(),b=lr(l),{typeArguments:A,arguments:I,parent:R}=i,M=b?void 0:m.getContextualType(i),C=wt(I,he=>Ve(he)?he.text:Fr(he)&&Ve(he.name)?he.name.text:void 0),O=b?[]:wt(I,he=>m.getTypeAtLocation(he)),{argumentTypeNodes:U,argumentTypeParameters:K}=vLe(m,r,O,l,p,1,h),Z=s?w.createNodeArray(w.createModifiersFromModifierFlags(s)):void 0,V=iF(R)?w.createToken(42):void 0,se=b?void 0:Ttt(m,K,A),G=Tme(I.length,C,U,void 0,b),ne=b||M===void 0?void 0:m.typeToTypeNode(M,l,void 0,h);switch(e){case 174:return w.createMethodDeclaration(Z,V,o,void 0,se,G,ne,Ame(u));case 173:return w.createMethodSignature(Z,o,void 0,se,G,ne===void 0?w.createKeywordTypeNode(159):ne);case 262:return N.assert(typeof o=="string"||Ve(o),"Unexpected name"),w.createFunctionDeclaration(Z,V,o,se,G,ne,xz(f.Function_not_implemented.message,u));default:N.fail("Unexpected kind")}}function Ttt(e,t,r){const i=new Set(t.map(s=>s[0])),o=new Map(t);if(r){const s=r.filter(u=>!t.some(p=>{var h;return e.getTypeAtLocation(u)===((h=p[1])==null?void 0:h.argumentType)})),l=i.size+s.length;for(let u=0;i.size<l;u+=1)i.add(hLe(u))}return zo(i.values(),s=>{var l;return w.createTypeParameterDeclaration(void 0,s,(l=o.get(s))==null?void 0:l.constraint)})}function hLe(e){return 84+e<=90?String.fromCharCode(84+e):`T${e}`}function mQ(e,t,r,i,o,s,l){let u=e.typeToTypeNode(r,i,s,l);if(u&&ug(u)){const p=BI(u,o);p&&(jD(t,p.symbols),u=p.typeNode)}return cl(u)}function gLe(e){return e.isUnionOrIntersection()?e.types.some(gLe):e.flags&262144}function vLe(e,t,r,i,o,s,l){const u=[],p=new Map;for(let h=0;h<r.length;h+=1){const m=r[h];if(m.isUnionOrIntersection()&&m.types.some(gLe)){const M=hLe(h);u.push(w.createTypeReferenceNode(M)),p.set(M,void 0);continue}const b=e.getBaseTypeOfLiteralType(m),A=mQ(e,t,b,i,o,s,l);if(!A)continue;u.push(A);const I=yLe(m),R=m.isTypeParameter()&&m.constraint&&!Att(m.constraint)?mQ(e,t,m.constraint,i,o,s,l):void 0;I&&p.set(I,{argumentType:m,constraint:R})}return{argumentTypeNodes:u,argumentTypeParameters:zo(p.entries())}}function Att(e){return e.flags&524288&&e.objectFlags===16}function yLe(e){var t;if(e.flags&3145728)for(const r of e.types){const i=yLe(r);if(i)return i}return e.flags&262144?(t=e.getSymbol())==null?void 0:t.getName():void 0}function Tme(e,t,r,i,o){const s=[],l=new Map;for(let u=0;u<e;u++){const p=(t==null?void 0:t[u])||`arg${u}`,h=l.get(p);l.set(p,(h||0)+1);const m=w.createParameterDeclaration(void 0,void 0,p+(h||""),i!==void 0&&u>=i?w.createToken(58):void 0,o?void 0:(r==null?void 0:r[u])||w.createKeywordTypeNode(159),void 0);s.push(m)}return s}function Itt(e,t,r,i,o,s,l,u,p){let h=i[0],m=i[0].minArgumentCount,b=!1;for(const M of i)m=Math.min(M.minArgumentCount,m),Yu(M)&&(b=!0),M.parameters.length>=h.parameters.length&&(!Yu(M)||Yu(h))&&(h=M);const A=h.parameters.length-(Yu(h)?1:0),I=h.parameters.map(M=>M.name),R=Tme(A,I,void 0,m,!1);if(b){const M=w.createParameterDeclaration(void 0,w.createToken(26),I[A]||"rest",A>=m?w.createToken(58):void 0,w.createArrayTypeNode(w.createKeywordTypeNode(159)),void 0);R.push(M)}return Rtt(l,o,s,void 0,R,xtt(i,e,t,r),u,p)}function xtt(e,t,r,i){if(Me(e)){const o=t.getUnionType(wt(e,t.getReturnTypeOfSignature));return t.typeToTypeNode(o,i,1,VD(r))}}function Rtt(e,t,r,i,o,s,l,u){return w.createMethodDeclaration(e,void 0,t,r?w.createToken(58):void 0,i,o,s,u||Ame(l))}function Ame(e){return xz(f.Method_not_implemented.message,e)}function xz(e,t){return w.createBlock([w.createThrowStatement(w.createNewExpression(w.createIdentifier("Error"),void 0,[w.createStringLiteral(e,t===0)]))],!0)}function Ime(e,t,r){const i=AC(t);if(!i)return;const o=Rme(i,"compilerOptions");if(o===void 0){e.insertNodeAtObjectStart(t,i,_Q("compilerOptions",w.createObjectLiteralExpression(r.map(([l,u])=>_Q(l,u)),!0)));return}const s=o.initializer;if(Oa(s))for(const[l,u]of r){const p=Rme(s,l);p===void 0?e.insertNodeAtObjectStart(t,s,_Q(l,u)):e.replaceNode(t,p.initializer,u)}}function xme(e,t,r,i){Ime(e,t,[[r,i]])}function _Q(e,t){return w.createPropertyAssignment(w.createStringLiteral(e),t)}function Rme(e,t){return An(e.properties,r=>hc(r)&&!!r.name&&Ma(r.name)&&r.name.text===t)}function BI(e,t){let r;const i=nt(e,o,ji);if(r&&i)return{typeNode:i,symbols:r};function o(s){if(Vy(s)&&s.qualifier){const l=Vp(s.qualifier),u=M5(l.symbol,t),p=u!==l.text?bLe(s.qualifier,w.createIdentifier(u)):s.qualifier;r=xn(r,l.symbol);const h=Vn(s.typeArguments,o,ji);return w.createTypeReferenceNode(p,h)}return In(s,o,void 0)}}function bLe(e,t){return e.kind===80?t:w.createQualifiedName(bLe(e.left,t),e.right)}function jD(e,t){t.forEach(r=>e.addImportFromExportedSymbol(r,!0))}function Dme(e,t){const r=Kl(t);let i=po(e,t.start);for(;i.end<r;)i=i.parent;return i}var Nme,Dtt=T({"src/services/codefixes/helpers.ts"(){si(),Nme=(e=>(e[e.Method=1]="Method",e[e.Property=2]="Property",e[e.All=3]="All",e))(Nme||{})}});function ELe(e,t,r,i,o,s){const l=ALe(e,t,r,i);if(!l||wI.isRefactorErrorInfo(l))return;const u=_r.ChangeTracker.fromContext(o),{isStatic:p,isReadonly:h,fieldName:m,accessorName:b,originalName:A,type:I,container:R,declaration:M}=l;Ap(m),Ap(b),Ap(M),Ap(R);let C,O;if(ui(R)){const K=pd(M);if(dd(e)){const Z=w.createModifiersFromModifierFlags(K);C=Z,O=Z}else C=w.createModifiersFromModifierFlags(Ptt(K)),O=w.createModifiersFromModifierFlags(Mtt(K));QS(M)&&(O=So(Ly(M),O))}Wtt(u,e,M,I,m,O);const U=Ltt(m,b,I,C,p,R);if(Ap(U),ILe(u,e,U,M,R),h){const K=ag(R);K&&Ftt(u,e,K,m.text,A)}else{const K=ktt(m,b,I,C,p,R);Ap(K),ILe(u,e,K,M,R)}return u.getChanges()}function Ntt(e){return Ve(e)||Ma(e)}function Ctt(e){return mp(e,e.parent)||Jo(e)||hc(e)}function SLe(e,t){return Ve(t)?w.createIdentifier(e):w.createStringLiteral(e)}function TLe(e,t,r){const i=t?r.name:w.createThis();return Ve(e)?w.createPropertyAccessExpression(i,e):w.createElementAccessExpression(i,w.createStringLiteralFromNode(e))}function Ptt(e){return e&=-9,e&=-3,e&4||(e|=1),e}function Mtt(e){return e&=-2,e&=-5,e|=2,e}function ALe(e,t,r,i,o=!0){const s=po(e,r),l=r===i&&o,u=Gn(s.parent,Ctt),p=271;if(!u||!(t5(u.name,e,r,i)||l))return{error:Wo(f.Could_not_find_property_for_which_to_generate_accessor)};if(!Ntt(u.name))return{error:Wo(f.Name_is_not_valid)};if((pd(u)&98303|p)!==p)return{error:Wo(f.Can_only_convert_property_with_modifier)};const h=u.name.text,m=jX(h),b=SLe(m?h:cT(`_${h}`,e),u.name),A=SLe(m?cT(h.substring(1),e):h,u.name);return{isStatic:mc(u),isReadonly:zC(u),type:ztt(u,t),container:u.kind===169?u.parent.parent:u.parent,originalName:u.name.text,declaration:u,fieldName:b,accessorName:A,renameAccessor:m}}function Ltt(e,t,r,i,o,s){return w.createGetAccessorDeclaration(i,t,[],r,w.createBlock([w.createReturnStatement(TLe(e,o,s))],!0))}function ktt(e,t,r,i,o,s){return w.createSetAccessorDeclaration(i,t,[w.createParameterDeclaration(void 0,void 0,w.createIdentifier("value"),void 0,r)],w.createBlock([w.createExpressionStatement(w.createAssignment(TLe(e,o,s),w.createIdentifier("value")))],!0))}function wtt(e,t,r,i,o,s){const l=w.updatePropertyDeclaration(r,s,o,r.questionToken||r.exclamationToken,i,r.initializer);e.replaceNode(t,r,l)}function Ott(e,t,r,i){let o=w.updatePropertyAssignment(r,i,r.initializer);(o.modifiers||o.questionToken||o.exclamationToken)&&(o===r&&(o=w.cloneNode(o)),o.modifiers=void 0,o.questionToken=void 0,o.exclamationToken=void 0),e.replacePropertyAssignment(t,r,o)}function Wtt(e,t,r,i,o,s){Jo(r)?wtt(e,t,r,i,o,s):hc(r)?Ott(e,t,r,o):e.replaceNode(t,r,w.updateParameterDeclaration(r,s,r.dotDotDotToken,aa(o,Ve),r.questionToken,r.type,r.initializer))}function ILe(e,t,r,i,o){mp(i,i.parent)?e.insertMemberAtStart(t,o,r):hc(i)?e.insertNodeAfterComma(t,i,r):e.insertNodeAfter(t,i,r)}function Ftt(e,t,r,i,o){r.body&&r.body.forEachChild(function s(l){Qs(l)&&l.expression.kind===110&&Ma(l.argumentExpression)&&l.argumentExpression.text===o&&HA(l)&&e.replaceNode(t,l.argumentExpression,w.createStringLiteral(i)),Fr(l)&&l.expression.kind===110&&l.name.text===o&&HA(l)&&e.replaceNode(t,l.name,w.createIdentifier(i)),!ea(l)&&!ui(l)&&l.forEachChild(s)})}function ztt(e,t){const r=ooe(e);if(Jo(e)&&r&&e.questionToken){const i=t.getTypeChecker(),o=i.getTypeFromTypeNode(r);if(!i.isTypeAssignableTo(i.getUndefinedType(),o)){const s=Qy(r)?r.types:[r];return w.createUnionTypeNode([...s,w.createKeywordTypeNode(157)])}}return r}function Cme(e,t){const r=[];for(;e;){const i=UE(e),o=i&&t.getSymbolAtLocation(i.expression);if(!o)break;const s=o.flags&2097152?t.getAliasedSymbol(o):o,l=s.declarations&&An(s.declarations,ui);if(!l)break;r.push(l),e=l}return r}var Btt=T({"src/services/codefixes/generateAccessors.ts"(){si()}});function Gtt(e,t){const r=jn(t),i=bR(t),o=e.program.getCompilerOptions(),s=[];return s.push(xLe(e,r,t,ey(i.name,void 0,t.moduleSpecifier,uf(r,e.preferences)))),wu(o)===1&&s.push(xLe(e,r,t,w.createImportEqualsDeclaration(void 0,!1,i.name,w.createExternalModuleReference(t.moduleSpecifier)))),s}function xLe(e,t,r,i){const o=_r.ChangeTracker.with(e,s=>s.replaceNode(t,r,i));return o_(Pme,o,[f.Replace_import_with_0,o[0].textChanges[0].newText])}function Vtt(e){const t=e.sourceFile,r=f.This_expression_is_not_callable.code===e.errorCode?213:214,i=Gn(po(t,e.span.start),s=>s.kind===r);if(!i)return[];const o=i.expression;return RLe(e,o)}function jtt(e){const t=e.sourceFile,r=Gn(po(t,e.span.start),i=>i.getStart()===e.span.start&&i.getEnd()===e.span.start+e.span.length);return r?RLe(e,r):[]}function RLe(e,t){const r=e.program.getTypeChecker().getTypeAtLocation(t);if(!(r.symbol&&mh(r.symbol)&&r.symbol.links.originatingImport))return[];const i=[],o=r.symbol.links.originatingImport;if(Bp(o)||Jr(i,Gtt(e,o)),yt(t)&&!(ld(t.parent)&&t.parent.name===t)){const s=e.sourceFile,l=_r.ChangeTracker.with(e,u=>u.replaceNode(s,t,w.createPropertyAccessExpression(t,"default"),{}));i.push(o_(Pme,l,f.Use_synthetic_default_member))}return i}var Pme,Utt=T({"src/services/codefixes/fixInvalidImportSyntax.ts"(){si(),Ra(),Pme="invalidImportSyntax",Aa({errorCodes:[f.This_expression_is_not_callable.code,f.This_expression_is_not_constructable.code],getCodeActions:Vtt}),Aa({errorCodes:[f.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,f.Type_0_does_not_satisfy_the_constraint_1.code,f.Type_0_is_not_assignable_to_type_1.code,f.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,f.Type_predicate_0_is_not_assignable_to_1.code,f.Property_0_of_type_1_is_not_assignable_to_2_index_type_3.code,f._0_index_type_1_is_not_assignable_to_2_index_type_3.code,f.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,f.Property_0_in_type_1_is_not_assignable_to_type_2.code,f.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,f.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:jtt})}});function DLe(e,t){const r=po(e,t);if(Ve(r)&&Jo(r.parent)){const i=yu(r.parent);if(i)return{type:i,prop:r.parent,isJs:lr(r.parent)}}}function Htt(e,t){if(t.isJs)return;const r=_r.ChangeTracker.with(e,i=>NLe(i,e.sourceFile,t.prop));return ca(hQ,r,[f.Add_definite_assignment_assertion_to_property_0,t.prop.getText()],gQ,f.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function NLe(e,t,r){Ap(r);const i=w.updatePropertyDeclaration(r,r.modifiers,r.name,w.createToken(54),r.type,r.initializer);e.replaceNode(t,r,i)}function qtt(e,t){const r=_r.ChangeTracker.with(e,i=>CLe(i,e.sourceFile,t));return ca(hQ,r,[f.Add_undefined_type_to_property_0,t.prop.name.getText()],vQ,f.Add_undefined_type_to_all_uninitialized_properties)}function CLe(e,t,r){const i=w.createKeywordTypeNode(157),o=Qy(r.type)?r.type.types.concat(i):[r.type,i],s=w.createUnionTypeNode(o);r.isJs?e.addJSDocTags(t,r.prop,[w.createJSDocTypeTag(void 0,w.createJSDocTypeExpression(s))]):e.replaceNode(t,r.type,s)}function Jtt(e,t){if(t.isJs)return;const r=e.program.getTypeChecker(),i=MLe(r,t.prop);if(!i)return;const o=_r.ChangeTracker.with(e,s=>PLe(s,e.sourceFile,t.prop,i));return ca(hQ,o,[f.Add_initializer_to_property_0,t.prop.name.getText()],yQ,f.Add_initializers_to_all_uninitialized_properties)}function PLe(e,t,r,i){Ap(r);const o=w.updatePropertyDeclaration(r,r.modifiers,r.name,r.questionToken,r.type,i);e.replaceNode(t,r,o)}function MLe(e,t){return LLe(e,e.getTypeFromTypeNode(t.type))}function LLe(e,t){if(t.flags&512)return t===e.getFalseType()||t===e.getFalseType(!0)?w.createFalse():w.createTrue();if(t.isStringLiteral())return w.createStringLiteral(t.value);if(t.isNumberLiteral())return w.createNumericLiteral(t.value);if(t.flags&2048)return w.createBigIntLiteral(t.value);if(t.isUnion())return Ut(t.types,r=>LLe(e,r));if(t.isClass()){const r=Vg(t.symbol);if(!r||Zr(r,64))return;const i=ag(r);return i&&i.parameters.length?void 0:w.createNewExpression(w.createIdentifier(t.symbol.name),void 0,void 0)}else if(e.isArrayLikeType(t))return w.createArrayLiteralExpression()}var hQ,gQ,vQ,yQ,Mme,Ktt=T({"src/services/codefixes/fixStrictClassInitialization.ts"(){si(),Ra(),hQ="strictClassInitialization",gQ="addMissingPropertyDefiniteAssignmentAssertions",vQ="addMissingPropertyUndefinedType",yQ="addMissingPropertyInitializer",Mme=[f.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code],Aa({errorCodes:Mme,getCodeActions:function(t){const r=DLe(t.sourceFile,t.span.start);if(!r)return;const i=[];return xn(i,qtt(t,r)),xn(i,Htt(t,r)),xn(i,Jtt(t,r)),i},fixIds:[gQ,vQ,yQ],getAllCodeActions:e=>Es(e,Mme,(t,r)=>{const i=DLe(r.file,r.start);if(i)switch(e.fixId){case gQ:NLe(t,r.file,i.prop);break;case vQ:CLe(t,r.file,i);break;case yQ:const o=e.program.getTypeChecker(),s=MLe(o,i.prop);if(!s)return;PLe(t,r.file,i.prop,s);break;default:N.fail(JSON.stringify(e.fixId))}})})}});function kLe(e,t,r){const{allowSyntheticDefaults:i,defaultImportName:o,namedImports:s,statement:l,required:u}=r;e.replaceNode(t,l,o&&!i?w.createImportEqualsDeclaration(void 0,!1,o,w.createExternalModuleReference(u)):w.createImportDeclaration(void 0,w.createImportClause(!1,o,s),u,void 0))}function wLe(e,t,r){const{parent:i}=po(e,r);Ad(i,!0)||N.failBadSyntaxKind(i);const o=aa(i.parent,wi),s=ii(o.name,Ve),l=am(o.name)?Xtt(o.name):void 0;if(s||l)return{allowSyntheticDefaults:FS(t.getCompilerOptions()),defaultImportName:s,namedImports:l,statement:aa(o.parent.parent,Ll),required:Ha(i.arguments)}}function Xtt(e){const t=[];for(const r of e.elements){if(!Ve(r.name)||r.initializer)return;t.push(w.createImportSpecifier(!1,ii(r.propertyName,Ve),r.name))}if(t.length)return w.createNamedImports(t)}var bQ,Lme,Ytt=T({"src/services/codefixes/requireInTs.ts"(){si(),Ra(),bQ="requireInTs",Lme=[f.require_call_may_be_converted_to_an_import.code],Aa({errorCodes:Lme,getCodeActions(e){const t=wLe(e.sourceFile,e.program,e.span.start);if(!t)return;const r=_r.ChangeTracker.with(e,i=>kLe(i,e.sourceFile,t));return[ca(bQ,r,f.Convert_require_to_import,bQ,f.Convert_all_require_to_import)]},fixIds:[bQ],getAllCodeActions:e=>Es(e,Lme,(t,r)=>{const i=wLe(r.file,e.program,r.start);i&&kLe(t,e.sourceFile,i)})})}});function OLe(e,t){const r=po(e,t);if(!Ve(r))return;const{parent:i}=r;if(tu(i)&&Ah(i.moduleReference))return{importNode:i,name:r,moduleSpecifier:i.moduleReference.expression};if(nb(i)){const o=i.parent.parent;return{importNode:o,name:r,moduleSpecifier:o.moduleSpecifier}}}function WLe(e,t,r,i){e.replaceNode(t,r.importNode,ey(r.name,void 0,r.moduleSpecifier,uf(t,i)))}var EQ,kme,$tt=T({"src/services/codefixes/useDefaultImport.ts"(){si(),Ra(),EQ="useDefaultImport",kme=[f.Import_may_be_converted_to_a_default_import.code],Aa({errorCodes:kme,getCodeActions(e){const{sourceFile:t,span:{start:r}}=e,i=OLe(t,r);if(!i)return;const o=_r.ChangeTracker.with(e,s=>WLe(s,t,i,e.preferences));return[ca(EQ,o,f.Convert_to_default_import,EQ,f.Convert_all_to_default_imports)]},fixIds:[EQ],getAllCodeActions:e=>Es(e,kme,(t,r)=>{const i=OLe(r.file,r.start);i&&WLe(t,r.file,i,e.preferences)})})}});function FLe(e,t,r){const i=ii(po(t,r.start),vp);if(!i)return;const o=i.getText(t)+"n";e.replaceNode(t,i,w.createBigIntLiteral(o))}var SQ,wme,Qtt=T({"src/services/codefixes/useBigintLiteral.ts"(){si(),Ra(),SQ="useBigintLiteral",wme=[f.Numeric_literals_with_absolute_values_equal_to_2_53_or_greater_are_too_large_to_be_represented_accurately_as_integers.code],Aa({errorCodes:wme,getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>FLe(i,t.sourceFile,t.span));if(r.length>0)return[ca(SQ,r,f.Convert_to_a_bigint_numeric_literal,SQ,f.Convert_all_to_bigint_numeric_literals)]},fixIds:[SQ],getAllCodeActions:e=>Es(e,wme,(t,r)=>FLe(t,r.file,r))})}});function zLe(e,t){const r=po(e,t);return N.assert(r.kind===102,"This token should be an ImportKeyword"),N.assert(r.parent.kind===205,"Token parent should be an ImportType"),r.parent}function BLe(e,t,r){const i=w.updateImportTypeNode(r,r.argument,r.attributes,r.qualifier,r.typeArguments,!0);e.replaceNode(t,r,i)}var GLe,TQ,Ome,Ztt=T({"src/services/codefixes/fixAddModuleReferTypeMissingTypeof.ts"(){si(),Ra(),GLe="fixAddModuleReferTypeMissingTypeof",TQ=GLe,Ome=[f.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code],Aa({errorCodes:Ome,getCodeActions:function(t){const{sourceFile:r,span:i}=t,o=zLe(r,i.start),s=_r.ChangeTracker.with(t,l=>BLe(l,r,o));return[ca(TQ,s,f.Add_missing_typeof,TQ,f.Add_missing_typeof)]},fixIds:[TQ],getAllCodeActions:e=>Es(e,Ome,(t,r)=>BLe(t,e.sourceFile,zLe(r.file,r.start)))})}});function VLe(e,t){let o=po(e,t).parent.parent;if(!(!mr(o)&&(o=o.parent,!mr(o)))&&zl(o.operatorToken))return o}function jLe(e,t,r){const i=ent(r);i&&e.replaceNode(t,r,w.createJsxFragment(w.createJsxOpeningFragment(),i,w.createJsxJsxClosingFragment()))}function ent(e){const t=[];let r=e;for(;;)if(mr(r)&&zl(r.operatorToken)&&r.operatorToken.kind===28){if(t.push(r.left),AL(r.right))return t.push(r.right),t;if(mr(r.right)){r=r.right;continue}else return}else return}var AQ,Wme,tnt=T({"src/services/codefixes/wrapJsxInFragment.ts"(){si(),Ra(),AQ="wrapJsxInFragment",Wme=[f.JSX_expressions_must_have_one_parent_element.code],Aa({errorCodes:Wme,getCodeActions:function(t){const{sourceFile:r,span:i}=t,o=VLe(r,i.start);if(!o)return;const s=_r.ChangeTracker.with(t,l=>jLe(l,r,o));return[ca(AQ,s,f.Wrap_in_JSX_fragment,AQ,f.Wrap_all_unparented_JSX_in_JSX_fragment)]},fixIds:[AQ],getAllCodeActions:e=>Es(e,Wme,(t,r)=>{const i=VLe(e.sourceFile,r.start);i&&jLe(t,e.sourceFile,i)})})}});function ULe(e,t){const r=po(e,t),i=ii(r.parent.parent,t1);if(!i)return;const o=hd(i.parent)?i.parent:ii(i.parent.parent,Nm);if(o)return{indexSignature:i,container:o}}function nnt(e,t){return w.createTypeAliasDeclaration(e.modifiers,e.name,e.typeParameters,t)}function HLe(e,t,{indexSignature:r,container:i}){const s=(hd(i)?i.members:i.type.members).filter(m=>!t1(m)),l=Ha(r.parameters),u=w.createTypeParameterDeclaration(void 0,aa(l.name,Ve),l.type),p=w.createMappedTypeNode(zC(r)?w.createModifier(148):void 0,u,void 0,r.questionToken,r.type,void 0),h=w.createIntersectionTypeNode([...CC(i),p,...s.length?[w.createTypeLiteralNode(s)]:et]);e.replaceNode(t,i,nnt(i,h))}var IQ,Fme,rnt=T({"src/services/codefixes/convertToMappedObjectType.ts"(){si(),Ra(),IQ="fixConvertToMappedObjectType",Fme=[f.An_index_signature_parameter_type_cannot_be_a_literal_type_or_generic_type_Consider_using_a_mapped_object_type_instead.code],Aa({errorCodes:Fme,getCodeActions:function(t){const{sourceFile:r,span:i}=t,o=ULe(r,i.start);if(!o)return;const s=_r.ChangeTracker.with(t,u=>HLe(u,r,o)),l=Sr(o.container.name);return[ca(IQ,s,[f.Convert_0_to_mapped_object_type,l],IQ,[f.Convert_0_to_mapped_object_type,l])]},fixIds:[IQ],getAllCodeActions:e=>Es(e,Fme,(t,r)=>{const i=ULe(r.file,r.start);i&&HLe(t,r.file,i)})})}}),zme,qLe,int=T({"src/services/codefixes/removeAccidentalCallParentheses.ts"(){si(),Ra(),zme="removeAccidentalCallParentheses",qLe=[f.This_expression_is_not_callable_because_it_is_a_get_accessor_Did_you_mean_to_use_it_without.code],Aa({errorCodes:qLe,getCodeActions(e){const t=Gn(po(e.sourceFile,e.span.start),la);if(!t)return;const r=_r.ChangeTracker.with(e,i=>{i.deleteRange(e.sourceFile,{pos:t.expression.end,end:t.end})});return[o_(zme,r,f.Remove_parentheses)]},fixIds:[zme]})}});function JLe(e,t,r){const i=ii(po(t,r.start),u=>u.kind===135),o=i&&ii(i.parent,eb);if(!o)return;let s=o;if(Gd(o.parent)){const u=wR(o.expression,!1);if(Ve(u)){const p=xc(o.parent.pos,t);p&&p.kind!==105&&(s=o.parent)}}e.replaceNode(t,s,o.expression)}var xQ,Bme,ont=T({"src/services/codefixes/removeUnnecessaryAwait.ts"(){si(),Ra(),xQ="removeUnnecessaryAwait",Bme=[f.await_has_no_effect_on_the_type_of_this_expression.code],Aa({errorCodes:Bme,getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>JLe(i,t.sourceFile,t.span));if(r.length>0)return[ca(xQ,r,f.Remove_unnecessary_await,xQ,f.Remove_all_unnecessary_uses_of_await)]},fixIds:[xQ],getAllCodeActions:e=>Es(e,Bme,(t,r)=>JLe(t,r.file,r))})}});function KLe(e,t){return Gn(po(e,t.start),kc)}function XLe(e,t,r){if(!t)return;const i=N.checkDefined(t.importClause);e.replaceNode(r.sourceFile,t,w.updateImportDeclaration(t,t.modifiers,w.updateImportClause(i,i.isTypeOnly,i.name,void 0),t.moduleSpecifier,t.attributes)),e.insertNodeAfter(r.sourceFile,t,w.createImportDeclaration(void 0,w.updateImportClause(i,i.isTypeOnly,void 0,i.namedBindings),t.moduleSpecifier,t.attributes))}var Gme,RQ,ant=T({"src/services/codefixes/splitTypeOnlyImport.ts"(){si(),Ra(),Gme=[f.A_type_only_import_can_specify_a_default_import_or_named_bindings_but_not_both.code],RQ="splitTypeOnlyImport",Aa({errorCodes:Gme,fixIds:[RQ],getCodeActions:function(t){const r=_r.ChangeTracker.with(t,i=>XLe(i,KLe(t.sourceFile,t.span),t));if(r.length)return[ca(RQ,r,f.Split_into_two_separate_import_declarations,RQ,f.Split_all_invalid_type_only_imports)]},getAllCodeActions:e=>Es(e,Gme,(t,r)=>{XLe(t,KLe(e.sourceFile,r),e)})})}});function YLe(e,t,r){var i;const s=r.getTypeChecker().getSymbolAtLocation(po(e,t));if(s===void 0)return;const l=ii((i=s==null?void 0:s.valueDeclaration)==null?void 0:i.parent,Uc);if(l===void 0)return;const u=vs(l,87,e);if(u!==void 0)return{symbol:s,token:u}}function $Le(e,t,r){e.replaceNode(t,r,w.createToken(121))}var DQ,Vme,snt=T({"src/services/codefixes/convertConstToLet.ts"(){si(),Ra(),DQ="fixConvertConstToLet",Vme=[f.Cannot_assign_to_0_because_it_is_a_constant.code],Aa({errorCodes:Vme,getCodeActions:function(t){const{sourceFile:r,span:i,program:o}=t,s=YLe(r,i.start,o);if(s===void 0)return;const l=_r.ChangeTracker.with(t,u=>$Le(u,r,s.token));return[Gpe(DQ,l,f.Convert_const_to_let,DQ,f.Convert_all_const_to_let)]},getAllCodeActions:e=>{const{program:t}=e,r=new Map;return zD(_r.ChangeTracker.with(e,i=>{BD(e,Vme,o=>{const s=YLe(o.file,o.start,t);if(s&&Rm(r,Ta(s.symbol)))return $Le(i,o.file,s.token)})}))},fixIds:[DQ]})}});function QLe(e,t,r){const i=po(e,t);return i.kind===27&&i.parent&&(Oa(i.parent)||_d(i.parent))?{node:i}:void 0}function ZLe(e,t,{node:r}){const i=w.createToken(28);e.replaceNode(t,r,i)}var NQ,eke,jme,lnt=T({"src/services/codefixes/fixExpectedComma.ts"(){si(),Ra(),NQ="fixExpectedComma",eke=f._0_expected.code,jme=[eke],Aa({errorCodes:jme,getCodeActions(e){const{sourceFile:t}=e,r=QLe(t,e.span.start,e.errorCode);if(!r)return;const i=_r.ChangeTracker.with(e,o=>ZLe(o,t,r));return[ca(NQ,i,[f.Change_0_to_1,";",","],NQ,[f.Change_0_to_1,";",","])]},fixIds:[NQ],getAllCodeActions:e=>Es(e,jme,(t,r)=>{const i=QLe(r.file,r.start,r.code);i&&ZLe(t,e.sourceFile,i)})})}});function tke(e,t,r,i,o){const s=po(t,r.start);if(!Ve(s)||!la(s.parent)||s.parent.expression!==s||s.parent.arguments.length!==0)return;const l=i.getTypeChecker(),u=l.getSymbolAtLocation(s),p=u==null?void 0:u.valueDeclaration;if(!p||!Ao(p)||!r1(p.parent.parent)||o!=null&&o.has(p))return;o==null||o.add(p);const h=cnt(p.parent.parent);if(bt(h)){const m=h[0],b=!Qy(m)&&!GS(m)&&GS(w.createUnionTypeNode([m,w.createKeywordTypeNode(116)]).types[0]);b&&e.insertText(t,m.pos,"("),e.insertText(t,m.end,b?") | void":" | void")}else{const m=l.getResolvedSignature(s.parent),b=m==null?void 0:m.parameters[0],A=b&&l.getTypeOfSymbolAtLocation(b,p.parent.parent);lr(p)?(!A||A.flags&3)&&(e.insertText(t,p.parent.parent.end,")"),e.insertText(t,ka(t.text,p.parent.parent.pos),"/** @type {Promise<void>} */(")):(!A||A.flags&2)&&e.insertText(t,p.parent.parent.expression.end,"<void>")}}function cnt(e){var t;if(lr(e)){if(Gd(e.parent)){const r=(t=d0(e.parent))==null?void 0:t.typeExpression.type;if(r&&Cf(r)&&Ve(r.typeName)&&Sr(r.typeName)==="Promise")return r.typeArguments}}else return e.typeArguments}var nke,Ume,Hme,unt=T({"src/services/codefixes/fixAddVoidToPromise.ts"(){si(),Ra(),nke="addVoidToPromise",Ume="addVoidToPromise",Hme=[f.Expected_1_argument_but_got_0_new_Promise_needs_a_JSDoc_hint_to_produce_a_resolve_that_can_be_called_without_arguments.code,f.Expected_0_arguments_but_got_1_Did_you_forget_to_include_void_in_your_type_argument_to_Promise.code],Aa({errorCodes:Hme,fixIds:[Ume],getCodeActions(e){const t=_r.ChangeTracker.with(e,r=>tke(r,e.sourceFile,e.span,e.program));if(t.length>0)return[ca(nke,t,f.Add_void_to_Promise_resolved_without_a_value,Ume,f.Add_void_to_all_Promises_resolved_without_a_value)]},getAllCodeActions(e){return Es(e,Hme,(t,r)=>tke(t,r.file,r,e.program,new Set))}})}}),Fu={};X(Fu,{PreserveOptionalFlags:()=>Nme,addNewNodeForMemberSymbol:()=>_Le,codeFixAll:()=>Es,createCodeFixAction:()=>ca,createCodeFixActionMaybeFixAll:()=>Gpe,createCodeFixActionWithoutFixAll:()=>o_,createCombinedCodeActions:()=>zD,createFileTextChanges:()=>hPe,createImportAdder:()=>FI,createImportSpecifierResolver:()=>hZe,createJsonPropertyAssignment:()=>_Q,createMissingMemberNodes:()=>Eme,createSignatureDeclarationFromCallExpression:()=>Sme,createSignatureDeclarationFromSignature:()=>fQ,createStubbedBody:()=>xz,eachDiagnostic:()=>BD,findAncestorMatchingSpan:()=>Dme,findJsonProperty:()=>Rme,generateAccessorFromProperty:()=>ELe,getAccessorConvertiblePropertyAtPosition:()=>ALe,getAllFixes:()=>q$e,getAllSupers:()=>Cme,getArgumentTypesAndTypeParameters:()=>vLe,getFixes:()=>H$e,getImportCompletionAction:()=>gZe,getImportKind:()=>hfe,getJSDocTypedefNodes:()=>dZe,getNoopSymbolTrackerWithResolver:()=>VD,getPromoteTypeOnlyCompletionAction:()=>vZe,getSupportedErrorCodes:()=>j$e,importFixName:()=>Tfe,importSymbols:()=>jD,moduleSpecifierToValidIdentifier:()=>Sfe,moduleSymbolToValidIdentifier:()=>Efe,parameterShouldGetTypeFromJSDoc:()=>OPe,registerCodeFix:()=>Aa,setJsonCompilerOptionValue:()=>xme,setJsonCompilerOptionValues:()=>Ime,tryGetAutoImportableReferenceFromTypeNode:()=>BI,typeToAutoImportableTypeNode:()=>mQ});var Ra=T({"src/services/_namespaces/ts.codefix.ts"(){J$e(),K$e(),X$e(),Q$e(),rQe(),sQe(),lQe(),cQe(),uQe(),mQe(),AQe(),xQe(),WQe(),tZe(),nZe(),iZe(),oZe(),pZe(),fZe(),_Ze(),FZe(),GZe(),UZe(),HZe(),qZe(),XZe(),QZe(),tet(),aet(),get(),yet(),xet(),Ret(),Net(),Cet(),Pet(),Met(),ket(),wet(),Oet(),Wet(),Fet(),Bet(),jet(),Jet(),ntt(),itt(),ott(),ltt(),ctt(),dtt(),ptt(),btt(),Ett(),Stt(),Dtt(),Btt(),Utt(),Ktt(),Ytt(),$tt(),Qtt(),Ztt(),tnt(),rnt(),int(),ont(),ant(),snt(),lnt(),unt()}});function dnt(e){return!!(e.kind&1)}function pnt(e){return!!(e.kind&2)}function Rz(e){return!!(e&&e.kind&4)}function E2(e){return!!(e&&e.kind===32)}function fnt(e){return Rz(e)||E2(e)||qme(e)}function mnt(e){return(Rz(e)||E2(e))&&!!e.isFromPackageJson}function _nt(e){return!!(e.kind&8)}function hnt(e){return!!(e.kind&16)}function rke(e){return!!(e&&e.kind&64)}function ike(e){return!!(e&&e.kind&128)}function gnt(e){return!!(e&&e.kind&256)}function qme(e){return!!(e&&e.kind&512)}function oke(e,t,r,i,o,s,l,u,p){var h,m,b;const A=Ys(),I=l||KA(md(i.getCompilerOptions()));let R=!1,M=0,C=0,O=0,U=0;const K=p({tryResolve:V,skippedAny:()=>R,resolvedAny:()=>C>0,resolvedBeyondLimit:()=>C>zQ}),Z=U?` (${(O/U*100).toFixed(1)}% hit rate)`:"";return(h=t.log)==null||h.call(t,`${e}: resolved ${C} module specifiers, plus ${M} ambient and ${O} from cache${Z}`),(m=t.log)==null||m.call(t,`${e}: response is ${R?"incomplete":"complete"}`),(b=t.log)==null||b.call(t,`${e}: ${Ys()-A}`),K;function V(se,G){if(G){const $=r.getModuleSpecifierForBestExportInfo(se,o,u);return $&&M++,$||"failed"}const ne=I||s.allowIncompleteCompletions&&C<zQ,he=!ne&&s.allowIncompleteCompletions&&U<n_e,ye=ne||he?r.getModuleSpecifierForBestExportInfo(se,o,u,he):void 0;return(!ne&&!he||he&&!ye)&&(R=!0),C+=(ye==null?void 0:ye.computedWithoutCacheCount)||0,O+=se.length-((ye==null?void 0:ye.computedWithoutCacheCount)||0),he&&U++,ye||(I?"failed":"skipped")}}function vnt(e,t,r,i,o,s,l,u,p,h,m=!1){var b;const{previousToken:A}=LQ(o,i);if(l&&!CI(i,o,A)&&!Znt(i,l,A,o))return;if(l===" ")return s.includeCompletionsForImportStatements&&s.includeCompletionsWithInsertText?{isGlobalCompletion:!0,isMemberCompletion:!1,isNewIdentifierLocation:!0,isIncomplete:!0,entries:[]}:void 0;const I=t.getCompilerOptions(),R=t.getTypeChecker(),M=s.allowIncompleteCompletions?(b=e.getIncompleteCompletionsCache)==null?void 0:b.call(e):void 0;if(M&&u===3&&A&&Ve(A)){const U=ynt(M,i,A,t,e,s,p,o);if(U)return U}else M==null||M.clear();const C=GQ.getStringLiteralCompletions(i,o,A,I,e,t,r,s,m);if(C)return C;if(A&&pC(A.parent)&&(A.kind===83||A.kind===88||A.kind===80))return Fnt(A.parent);const O=gke(t,r,i,I,o,s,void 0,e,h,p);if(O)switch(O.kind){case 0:const U=Ant(i,e,t,I,r,O,s,h,o,m);return U!=null&&U.isIncomplete&&(M==null||M.set(U)),U;case 1:return Jme([...G0.getJSDocTagNameCompletions(),...ske(i,o,R,I,s,!0)]);case 2:return Jme([...G0.getJSDocTagCompletions(),...ske(i,o,R,I,s,!1)]);case 3:return Jme(G0.getJSDocParameterNameCompletions(O.tag));case 4:return Snt(O.keywordCompletions,O.isNewIdentifierLocation);default:return N.assertNever(O)}}function Dz(e,t){var r,i;let o=BM(e.sortText,t.sortText);return o===0&&(o=BM(e.name,t.name)),o===0&&((r=e.data)!=null&&r.moduleSpecifier)&&((i=t.data)!=null&&i.moduleSpecifier)&&(o=Sk(e.data.moduleSpecifier,t.data.moduleSpecifier)),o===0?-1:o}function ake(e){return!!(e!=null&&e.moduleSpecifier)}function ynt(e,t,r,i,o,s,l,u){const p=e.get();if(!p)return;const h=Vd(t,u),m=r.text.toLowerCase(),b=RO(t,o,i,s,l),A=oke("continuePreviousIncompleteResponse",o,Fu.createImportSpecifierResolver(t,i,o,s),i,r.getStart(),s,!1,T0(r),I=>{const R=Hi(p.entries,M=>{var C;if(!M.hasAction||!M.source||!M.data||ake(M.data))return M;if(!Pke(M.name,m))return;const{origin:O}=N.checkDefined(vke(M.name,M.data,i,o)),U=b.get(t.path,M.data.exportMapKey),K=U&&I.tryResolve(U,!Yc(tm(O.moduleSymbol.name)));if(K==="skipped")return M;if(!K||K==="failed"){(C=o.log)==null||C.call(o,`Unexpected failure resolving auto import for '${M.name}' from '${M.source}'`);return}const Z={...O,kind:32,moduleSpecifier:K.moduleSpecifier};return M.data=mke(Z),M.source=Xme(Z),M.sourceDisplay=[df(Z.moduleSpecifier)],M});return I.skippedAny()||(p.isIncomplete=void 0),R});return p.entries=A,p.flags=(p.flags||0)|4,p.optionalReplacementSpan=uke(h),p}function Jme(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:e}}function ske(e,t,r,i,o,s){const l=po(e,t);if(!iR(l)&&!n_(l))return[];const u=n_(l)?l:l.parent;if(!n_(u))return[];const p=u.parent;if(!ea(p))return[];const h=dd(e),m=o.includeCompletionsWithSnippetText||void 0,b=au(u.tags,A=>r_(A)&&A.getEnd()<=t);return Hi(p.parameters,A=>{if(!Qx(A).length){if(Ve(A.name)){const I={tabstop:1},R=A.name.text;let M=ZO(R,A.initializer,A.dotDotDotToken,h,!1,!1,r,i,o),C=m?ZO(R,A.initializer,A.dotDotDotToken,h,!1,!0,r,i,o,I):void 0;return s&&(M=M.slice(1),C&&(C=C.slice(1))),{name:M,kind:"parameter",sortText:zu.LocationPriority,insertText:m?C:void 0,isSnippet:m}}else if(A.parent.parameters.indexOf(A)===b){const I=`param${b}`,R=lke(I,A.name,A.initializer,A.dotDotDotToken,h,!1,r,i,o),M=m?lke(I,A.name,A.initializer,A.dotDotDotToken,h,!0,r,i,o):void 0;let C=R.join(Uv(i)+"* "),O=M==null?void 0:M.join(Uv(i)+"* ");return s&&(C=C.slice(1),O&&(O=O.slice(1))),{name:C,kind:"parameter",sortText:zu.LocationPriority,insertText:m?O:void 0,isSnippet:m}}}})}function lke(e,t,r,i,o,s,l,u,p){if(!o)return[ZO(e,r,i,o,!1,s,l,u,p,{tabstop:1})];return h(e,t,r,i,{tabstop:1});function h(b,A,I,R,M){if(am(A)&&!R){const O={tabstop:M.tabstop},U=ZO(b,I,R,o,!0,s,l,u,p,O);let K=[];for(const Z of A.elements){const V=m(b,Z,O);if(V)K.push(...V);else{K=void 0;break}}if(K)return M.tabstop=O.tabstop,[U,...K]}return[ZO(b,I,R,o,!1,s,l,u,p,M)]}function m(b,A,I){if(!A.propertyName&&Ve(A.name)||Ve(A.name)){const R=A.propertyName?SC(A.propertyName):A.name.text;if(!R)return;const M=`${b}.${R}`;return[ZO(M,A.initializer,A.dotDotDotToken,o,!1,s,l,u,p,I)]}else if(A.propertyName){const R=SC(A.propertyName);return R&&h(`${b}.${R}`,A.name,A.initializer,A.dotDotDotToken,I)}}}function ZO(e,t,r,i,o,s,l,u,p,h){if(s&&N.assertIsDefined(h),t&&(e=bnt(e,t)),s&&(e=ZE(e)),i){let m="*";if(o)N.assert(!r,"Cannot annotate a rest parameter with type 'Object'."),m="Object";else{if(t){const I=l.getTypeAtLocation(t.parent);if(!(I.flags&16385)){const R=t.getSourceFile(),C=uf(R,p)===0?268435456:0,O=l.typeToTypeNode(I,Gn(t,ea),C);if(O){const U=s?MQ({removeComments:!0,module:u.module,target:u.target}):k0({removeComments:!0,module:u.module,target:u.target});pr(O,1),m=U.printNode(4,O,R)}}}s&&m==="*"&&(m=`\${${h.tabstop++}:${m}}`)}const b=!o&&r?"...":"",A=s?`\${${h.tabstop++}}`:"";return`@param {${b}${m}} ${e} ${A}`}else{const m=s?`\${${h.tabstop++}}`:"";return`@param ${e} ${m}`}}function bnt(e,t){const r=t.getText().trim();return r.includes(`
+`)||r.length>80?`[${e}]`:`[${e}=${r}]`}function Ent(e){return{name:fa(e),kind:"keyword",kindModifiers:"",sortText:zu.GlobalsOrKeywords}}function Snt(e,t){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:t,entries:e.slice()}}function cke(e,t,r){return{kind:4,keywordCompletions:yke(e,t),isNewIdentifierLocation:r}}function Tnt(e){switch(e){case 156:return 8;default:N.fail("Unknown mapping from SyntaxKind to KeywordCompletionFilters")}}function uke(e){return(e==null?void 0:e.kind)===80?Nd(e):void 0}function Ant(e,t,r,i,o,s,l,u,p,h){const{symbols:m,contextToken:b,completionKind:A,isInSnippetScope:I,isNewIdentifierLocation:R,location:M,propertyAccessToConvert:C,keywordFilters:O,symbolToOriginInfoMap:U,recommendedCompletion:K,isJsxInitializer:Z,isTypeOnlyLocation:V,isJsxIdentifierExpected:se,isRightOfOpenTag:G,isRightOfDotOrQuestionDot:ne,importStatementCompletion:he,insideJsDocTagTypeExpression:ye,symbolToSortTextMap:$,hasUnresolvedAutoImports:Y}=s;let oe=s.literals;const fe=r.getTypeChecker();if(yk(e.scriptKind)===1){const He=xnt(M,e);if(He)return He}const Ne=Gn(b,YR);if(Ne&&(zae(b)||jE(b,Ne.expression))){const He=O5(fe,Ne.parent.clauses);oe=oe.filter(Ee=>!He.hasValue(Ee)),m.forEach((Ee,De)=>{if(Ee.valueDeclaration&&u1(Ee.valueDeclaration)){const Pe=fe.getConstantValue(Ee.valueDeclaration);Pe!==void 0&&He.hasValue(Pe)&&(U[De]={kind:256})}})}const pe=uG(),ie=dke(e,i);if(ie&&!R&&(!m||m.length===0)&&O===0)return;const ve=Yme(m,pe,void 0,b,M,p,e,t,r,os(i),o,A,l,i,u,V,C,se,Z,he,K,U,$,se,G,h);if(O!==0)for(const He of yke(O,!ye&&dd(e)))(V&&a2(PE(He.name))||!V&&srt(He.name)||!ve.has(He.name))&&(ve.add(He.name),xy(pe,He,Dz,!0));for(const He of Knt(b,p))ve.has(He.name)||(ve.add(He.name),xy(pe,He,Dz,!0));for(const He of oe){const Ee=Dnt(e,l,He);ve.add(Ee.name),xy(pe,Ee,Dz,!0)}ie||Rnt(e,M.pos,ve,os(i),pe);let Le;if(l.includeCompletionsWithInsertText&&b&&!G&&!ne&&(Le=Gn(b,SP))){const He=pke(Le,e,l,i,t,r,u);He&&pe.push(He.entry)}return{flags:s.flags,isGlobalCompletion:I,isIncomplete:l.allowIncompleteCompletions&&Y?!0:void 0,isMemberCompletion:Int(A),isNewIdentifierLocation:R,optionalReplacementSpan:uke(M),entries:pe}}function dke(e,t){return!dd(e)||!!Ak(e,t)}function pke(e,t,r,i,o,s,l){const u=e.clauses,p=s.getTypeChecker(),h=p.getTypeAtLocation(e.parent.expression);if(h&&h.isUnion()&&Zn(h.types,m=>m.isLiteral())){const m=O5(p,u),b=os(i),A=uf(t,r),I=Fu.createImportAdder(t,s,r,o),R=[];for(const V of h.types)if(V.flags&1024){N.assert(V.symbol,"An enum member type should have a symbol"),N.assert(V.symbol.parent,"An enum member type should have a parent symbol (the enum symbol)");const se=V.symbol.valueDeclaration&&p.getConstantValue(V.symbol.valueDeclaration);if(se!==void 0){if(m.hasValue(se))continue;m.addValue(se)}const G=Fu.typeToAutoImportableTypeNode(p,I,V,e,b);if(!G)return;const ne=CQ(G,b,A);if(!ne)return;R.push(ne)}else if(!m.hasValue(V.value))switch(typeof V.value){case"object":R.push(V.value.negative?w.createPrefixUnaryExpression(41,w.createBigIntLiteral({negative:!1,base10Value:V.value.base10Value})):w.createBigIntLiteral(V.value));break;case"number":R.push(V.value<0?w.createPrefixUnaryExpression(41,w.createNumericLiteral(-V.value)):w.createNumericLiteral(V.value));break;case"string":R.push(w.createStringLiteral(V.value,A===0));break}if(R.length===0)return;const M=wt(R,V=>w.createCaseClause(V,[])),C=ty(o,l==null?void 0:l.options),O=MQ({removeComments:!0,module:i.module,target:i.target,newLine:xO(C)}),U=l?V=>O.printAndFormatNode(4,V,t,l):V=>O.printNode(4,V,t),K=wt(M,(V,se)=>r.includeCompletionsWithSnippetText?`${U(V)}$${se+1}`:`${U(V)}`).join(C);return{entry:{name:`${O.printNode(4,M[0],t)} ...`,kind:"",sortText:zu.GlobalsOrKeywords,insertText:K,hasAction:I.hasFixes()||void 0,source:"SwitchCases/",isSnippet:r.includeCompletionsWithSnippetText?!0:void 0},importAdder:I}}}function CQ(e,t,r){switch(e.kind){case 183:const i=e.typeName;return PQ(i,t,r);case 199:const o=CQ(e.objectType,t,r),s=CQ(e.indexType,t,r);return o&&s&&w.createElementAccessExpression(o,s);case 201:const l=e.literal;switch(l.kind){case 11:return w.createStringLiteral(l.text,r===0);case 9:return w.createNumericLiteral(l.text,l.numericLiteralFlags)}return;case 196:const u=CQ(e.type,t,r);return u&&(Ve(u)?u:w.createParenthesizedExpression(u));case 186:return PQ(e.exprName,t,r);case 205:N.fail("We should not get an import type after calling 'codefix.typeToAutoImportableTypeNode'.")}}function PQ(e,t,r){if(Ve(e))return e;const i=Vi(e.right.escapedText);return HU(i,t)?w.createPropertyAccessExpression(PQ(e.left,t,r),i):w.createElementAccessExpression(PQ(e.left,t,r),w.createStringLiteral(i,r===0))}function Int(e){switch(e){case 0:case 3:case 2:return!0;default:return!1}}function xnt(e,t){const r=Gn(e,i=>{switch(i.kind){case 287:return!0;case 44:case 32:case 80:case 211:return!1;default:return"quit"}});if(r){const i=!!vs(r,32,t),l=r.parent.openingElement.tagName.getText(t)+(i?"":">"),u=Nd(r.tagName),p={name:l,kind:"class",kindModifiers:void 0,sortText:zu.LocationPriority};return{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:!1,optionalReplacementSpan:u,entries:[p]}}}function Rnt(e,t,r,i,o){JY(e).forEach((s,l)=>{if(s===t)return;const u=Vi(l);!r.has(u)&&tf(u,i)&&(r.add(u),xy(o,{name:u,kind:"warning",kindModifiers:"",sortText:zu.JavascriptIdentifiers,isFromUncheckedFile:!0},Dz))})}function Kme(e,t,r){return typeof r=="object"?$E(r)+"n":Po(r)?p2(e,t,r):JSON.stringify(r)}function Dnt(e,t,r){return{name:Kme(e,t,r),kind:"string",kindModifiers:"",sortText:zu.LocationPriority}}function Nnt(e,t,r,i,o,s,l,u,p,h,m,b,A,I,R,M,C,O,U,K,Z,V,se,G){var ne,he;let ye,$,Y=pX(r),oe,fe,Ne=Xme(b),pe,ie,ve;const Le=p.getTypeChecker(),He=b&&hnt(b),Ee=b&&pnt(b)||m;if(b&&dnt(b))ye=m?`this${He?"?.":""}[${_ke(l,U,h)}]`:`this${He?"?.":"."}${h}`;else if((Ee||He)&&I){ye=Ee?m?`[${_ke(l,U,h)}]`:`[${h}]`:h,(He||I.questionDotToken)&&(ye=`?.${ye}`);const Pe=vs(I,25,l)||vs(I,29,l);if(!Pe)return;const We=uo(h,I.name.text)?I.name.end:Pe.end;Y=pc(Pe.getStart(l),We)}if(R&&(ye===void 0&&(ye=h),ye=`{${ye}}`,typeof R!="boolean"&&(Y=Nd(R,l))),b&&_nt(b)&&I){ye===void 0&&(ye=h);const Pe=xc(I.pos,l);let We="";Pe&&x5(Pe.end,Pe.parent,l)&&(We=";"),We+=`(await ${I.expression.getText()})`,ye=m?`${We}${ye}`:`${We}${He?"?.":"."}${ye}`;const Se=ii(I.parent,eb)?I.parent:I.expression;Y=pc(Se.getStart(l),I.end)}if(E2(b)&&(pe=[df(b.moduleSpecifier)],M&&({insertText:ye,replacementSpan:Y}=Ont(h,M,b,C,l,O,U),fe=U.includeCompletionsWithSnippetText?!0:void 0)),(b==null?void 0:b.kind)===64&&(ie=!0),K===0&&i&&((ne=xc(i.pos,l,i))==null?void 0:ne.kind)!==28&&(ql(i.parent.parent)||rf(i.parent.parent)||bp(i.parent.parent)||Xv(i.parent)||((he=Gn(i.parent,hc))==null?void 0:he.getLastToken(l))===i||rp(i.parent)&&bs(l,i.getEnd()).line!==bs(l,s).line)&&(Ne="ObjectLiteralMemberWithComma/",ie=!0),U.includeCompletionsWithClassMemberSnippets&&U.includeCompletionsWithInsertText&&K===3&&Cnt(e,o,l)){let Pe;const We=fke(u,p,O,U,h,e,o,s,i,Z);if(We)({insertText:ye,filterText:$,isSnippet:fe,importAdder:Pe}=We),Pe!=null&&Pe.hasFixes()&&(ie=!0,Ne="ClassMemberSnippet/");else return}if(b&&ike(b)&&({insertText:ye,isSnippet:fe,labelDetails:ve}=b,U.useLabelDetailsInCompletionEntries||(h=h+ve.detail,ve=void 0),Ne="ObjectLiteralMethodSnippet/",t=zu.SortBelow(t)),V&&!se&&U.includeCompletionsWithSnippetText&&U.jsxAttributeCompletionStyle&&U.jsxAttributeCompletionStyle!=="none"&&!(F_(o.parent)&&o.parent.initializer)){let Pe=U.jsxAttributeCompletionStyle==="braces";const We=Le.getTypeOfSymbolAtLocation(e,o);U.jsxAttributeCompletionStyle==="auto"&&!(We.flags&528)&&!(We.flags&1048576&&An(We.types,At=>!!(At.flags&528)))&&(We.flags&402653316||We.flags&1048576&&Zn(We.types,At=>!!(At.flags&402686084||zue(At)))?(ye=`${ZE(h)}=${p2(l,U,"$1")}`,fe=!0):Pe=!0),Pe&&(ye=`${ZE(h)}={$1}`,fe=!0)}if(ye!==void 0&&!U.includeCompletionsWithInsertText)return;(Rz(b)||E2(b))&&(oe=mke(b),ie=!M);const De=Gn(o,B3);if((De==null?void 0:De.kind)===275){const Pe=PE(h);De&&Pe&&(Pe===135||tU(Pe))&&(ye=`${h} as ${h}_`)}return{name:h,kind:iy.getSymbolKind(Le,e,o),kindModifiers:iy.getSymbolModifiers(Le,e),sortText:t,source:Ne,hasAction:ie?!0:void 0,isRecommended:Wnt(e,A,Le)||void 0,insertText:ye,filterText:$,replacementSpan:Y,sourceDisplay:pe,labelDetails:ve,isSnippet:fe,isPackageJsonImport:mnt(b)||void 0,isImportStatementCompletion:!!M||void 0,data:oe,...G?{symbol:e}:void 0}}function Cnt(e,t,r){return lr(t)?!1:!!(e.flags&106500)&&(ui(t)||t.parent&&t.parent.parent&&$c(t.parent)&&t===t.parent.name&&t.parent.getLastToken(r)===t.parent.name&&ui(t.parent.parent)||t.parent&&eD(t)&&ui(t.parent))}function fke(e,t,r,i,o,s,l,u,p,h){const m=Gn(l,ui);if(!m)return;let b,A=o;const I=o,R=t.getTypeChecker(),M=l.getSourceFile(),C=MQ({removeComments:!0,module:r.module,target:r.target,omitTrailingSemicolon:!1,newLine:xO(ty(e,h==null?void 0:h.options))}),O=Fu.createImportAdder(M,t,i,e);let U;if(i.includeCompletionsWithSnippetText){b=!0;const he=w.createEmptyStatement();U=w.createBlock([he],!0),bH(he,{kind:0,order:0})}else U=w.createBlock([],!0);let K=0;const{modifiers:Z,range:V,decorators:se}=Pnt(p,M,u),G=Z&64&&m.modifierFlagsCache&64;let ne=[];if(Fu.addNewNodeForMemberSymbol(s,m,M,{program:t,host:e},i,O,he=>{let ye=0;G&&(ye|=64),$c(he)&&R.getMemberOverrideModifierStatus(m,he,s)===1&&(ye|=16),ne.length||(K=he.modifierFlagsCache|ye),he=w.replaceModifiers(he,K),ne.push(he)},U,Fu.PreserveOptionalFlags.Property,!!G),ne.length){const he=s.flags&8192;let ye=K|16|1;he?ye|=1024:ye|=136;const $=Z&ye;if(Z&~ye)return;if(K&4&&$&1&&(K&=-5),$!==0&&!($&1)&&(K&=-2),K|=$,ne=ne.map(oe=>w.replaceModifiers(oe,K)),se!=null&&se.length){const oe=ne[ne.length-1];QS(oe)&&(ne[ne.length-1]=w.replaceDecoratorsAndModifiers(oe,se.concat(ME(oe)||[])))}const Y=131073;h?A=C.printAndFormatSnippetList(Y,w.createNodeArray(ne),M,h):A=C.printSnippetList(Y,w.createNodeArray(ne),M)}return{insertText:A,filterText:I,isSnippet:b,importAdder:O,eraseRange:V}}function Pnt(e,t,r){if(!e||bs(t,r).line>bs(t,e.getEnd()).line)return{modifiers:0};let i=0,o,s;const l={pos:r,end:r};if(Jo(e.parent)&&e.parent.modifiers&&(i|=M_(e.parent.modifiers)&98303,o=e.parent.modifiers.filter(Eu)||[],l.pos=Math.min(l.pos,e.parent.modifiers.pos)),s=Mnt(e)){const u=UA(s);i&u||(i|=u,l.pos=Math.min(l.pos,e.pos))}return{modifiers:i,decorators:o,range:l.pos!==r?l:void 0}}function Mnt(e){if(xa(e))return e.kind;if(Ve(e)){const t=u0(e);if(t&&Wv(t))return t}}function Lnt(e,t,r,i,o,s,l,u){const p=l.includeCompletionsWithSnippetText||void 0;let h=t;const m=r.getSourceFile(),b=knt(e,r,m,i,o,l);if(!b)return;const A=MQ({removeComments:!0,module:s.module,target:s.target,omitTrailingSemicolon:!1,newLine:xO(ty(o,u==null?void 0:u.options))});u?h=A.printAndFormatSnippetList(80,w.createNodeArray([b],!0),m,u):h=A.printSnippetList(80,w.createNodeArray([b],!0),m);const I=k0({removeComments:!0,module:s.module,target:s.target,omitTrailingSemicolon:!0}),R=w.createMethodSignature(void 0,"",b.questionToken,b.typeParameters,b.parameters,b.type),M={detail:I.printNode(4,R,m)};return{isSnippet:p,insertText:h,labelDetails:M}}function knt(e,t,r,i,o,s){const l=e.getDeclarations();if(!(l&&l.length))return;const u=i.getTypeChecker(),p=l[0],h=cl(Mo(p),!1),m=u.getWidenedType(u.getTypeOfSymbolAtLocation(e,t)),A=33554432|(uf(r,s)===0?268435456:0);switch(p.kind){case 171:case 172:case 173:case 174:{let I=m.flags&1048576&&m.types.length<10?u.getUnionType(m.types,2):m;if(I.flags&1048576){const U=nr(I.types,K=>u.getSignaturesOfType(K,0).length>0);if(U.length===1)I=U[0];else return}if(u.getSignaturesOfType(I,0).length!==1)return;const M=u.typeToTypeNode(I,t,A,Fu.getNoopSymbolTrackerWithResolver({program:i,host:o}));if(!M||!Eh(M))return;let C;if(s.includeCompletionsWithSnippetText){const U=w.createEmptyStatement();C=w.createBlock([U],!0),bH(U,{kind:0,order:0})}else C=w.createBlock([],!0);const O=M.parameters.map(U=>w.createParameterDeclaration(void 0,U.dotDotDotToken,U.name,void 0,void 0,U.initializer));return w.createMethodDeclaration(void 0,void 0,h,void 0,void 0,O,void 0,C)}default:return}}function MQ(e){let t;const r=_r.createWriter(Uv(e)),i=k0(e,r),o={...r,write:A=>s(A,()=>r.write(A)),nonEscapingWrite:r.write,writeLiteral:A=>s(A,()=>r.writeLiteral(A)),writeStringLiteral:A=>s(A,()=>r.writeStringLiteral(A)),writeSymbol:(A,I)=>s(A,()=>r.writeSymbol(A,I)),writeParameter:A=>s(A,()=>r.writeParameter(A)),writeComment:A=>s(A,()=>r.writeComment(A)),writeProperty:A=>s(A,()=>r.writeProperty(A))};return{printSnippetList:l,printAndFormatSnippetList:p,printNode:h,printAndFormatNode:b};function s(A,I){const R=ZE(A);if(R!==A){const M=r.getTextPos();I();const C=r.getTextPos();t=xn(t||(t=[]),{newText:R,span:{start:M,length:C-M}})}else I()}function l(A,I,R){const M=u(A,I,R);return t?_r.applyChanges(M,t):M}function u(A,I,R){return t=void 0,o.clear(),i.writeList(A,I,R,o),o.getText()}function p(A,I,R,M){const C={text:u(A,I,R),getLineAndCharacterOfPosition(Z){return bs(this,Z)}},O=w5(M,R),U=Pi(I,Z=>{const V=_r.assignPositionsToNode(Z);return Oc.formatNodeGivenIndentation(V,C,R.languageVariant,0,0,{...M,options:O})}),K=t?Dv(So(U,t),(Z,V)=>W6(Z.span,V.span)):U;return _r.applyChanges(C.text,K)}function h(A,I,R){const M=m(A,I,R);return t?_r.applyChanges(M,t):M}function m(A,I,R){return t=void 0,o.clear(),i.writeNode(A,I,R,o),o.getText()}function b(A,I,R,M){const C={text:m(A,I,R),getLineAndCharacterOfPosition(V){return bs(this,V)}},O=w5(M,R),U=_r.assignPositionsToNode(I),K=Oc.formatNodeGivenIndentation(U,C,R.languageVariant,0,0,{...M,options:O}),Z=t?Dv(So(K,t),(V,se)=>W6(V.span,se.span)):K;return _r.applyChanges(C.text,Z)}}function mke(e){const t=e.fileName?void 0:tm(e.moduleSymbol.name),r=e.isFromPackageJson?!0:void 0;return E2(e)?{exportName:e.exportName,exportMapKey:e.exportMapKey,moduleSpecifier:e.moduleSpecifier,ambientModuleName:t,fileName:e.fileName,isPackageJsonImport:r}:{exportName:e.exportName,exportMapKey:e.exportMapKey,fileName:e.fileName,ambientModuleName:e.fileName?void 0:tm(e.moduleSymbol.name),isPackageJsonImport:e.isFromPackageJson?!0:void 0}}function wnt(e,t,r){const i=e.exportName==="default",o=!!e.isPackageJsonImport;return ake(e)?{kind:32,exportName:e.exportName,exportMapKey:e.exportMapKey,moduleSpecifier:e.moduleSpecifier,symbolName:t,fileName:e.fileName,moduleSymbol:r,isDefaultExport:i,isFromPackageJson:o}:{kind:4,exportName:e.exportName,exportMapKey:e.exportMapKey,symbolName:t,fileName:e.fileName,moduleSymbol:r,isDefaultExport:i,isFromPackageJson:o}}function Ont(e,t,r,i,o,s,l){const u=t.replacementSpan,p=ZE(p2(o,l,r.moduleSpecifier)),h=r.isDefaultExport?1:r.exportName==="export="?2:0,m=l.includeCompletionsWithSnippetText?"$1":"",b=Fu.getImportKind(o,h,s,!0),A=t.couldBeTypeOnlyImportSpecifier,I=t.isTopLevelTypeOnly?` ${fa(156)} `:" ",R=A?`${fa(156)} `:"",M=i?";":"";switch(b){case 3:return{replacementSpan:u,insertText:`import${I}${ZE(e)}${m} = require(${p})${M}`};case 1:return{replacementSpan:u,insertText:`import${I}${ZE(e)}${m} from ${p}${M}`};case 2:return{replacementSpan:u,insertText:`import${I}* as ${ZE(e)} from ${p}${M}`};case 0:return{replacementSpan:u,insertText:`import${I}{ ${R}${ZE(e)}${m} } from ${p}${M}`}}}function _ke(e,t,r){return/^\d+$/.test(r)?r:p2(e,t,r)}function Wnt(e,t,r){return e===t||!!(e.flags&1048576)&&r.getExportSymbolOfSymbol(e)===t}function Xme(e){if(Rz(e))return tm(e.moduleSymbol.name);if(E2(e))return e.moduleSpecifier;if((e==null?void 0:e.kind)===1)return"ThisProperty/";if((e==null?void 0:e.kind)===64)return"TypeOnlyAlias/"}function Yme(e,t,r,i,o,s,l,u,p,h,m,b,A,I,R,M,C,O,U,K,Z,V,se,G,ne,he=!1){const ye=Ys(),$=irt(i,o),Y=TO(l),oe=p.getTypeChecker(),fe=new Map;for(let ie=0;ie<e.length;ie++){const ve=e[ie],Le=V==null?void 0:V[ie],He=kQ(ve,h,Le,b,!!O);if(!He||fe.get(He.name)&&(!Le||!ike(Le))||b===1&&se&&!Ne(ve,se)||!M&&lr(l)&&pe(ve))continue;const{name:Ee,needsConvertPropertyAccess:De}=He,Pe=(se==null?void 0:se[Ta(ve)])??zu.LocationPriority,We=ort(ve,oe)?zu.Deprecated(Pe):Pe,At=Nnt(ve,We,r,i,o,s,l,u,p,Ee,De,Le,Z,C,U,K,Y,I,A,b,R,G,ne,he);if(!At)continue;const Se=(!Le||rke(Le))&&!(ve.parent===void 0&&!bt(ve.declarations,je=>je.getSourceFile()===o.getSourceFile()));fe.set(Ee,Se),xy(t,At,Dz,!0)}return m("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(Ys()-ye)),{has:ie=>fe.has(ie),add:ie=>fe.set(ie,!0)};function Ne(ie,ve){var Le;let He=ie.flags;if(!$i(o)){if(kl(o.parent))return!0;if(ii($,wi)&&ie.valueDeclaration===$)return!1;const Ee=ie.valueDeclaration??((Le=ie.declarations)==null?void 0:Le[0]);if($&&Ee&&(gl($)&&gl(Ee)||Ao($)&&Ao(Ee))){const Pe=Ee.pos,We=Ao($)?$.parent.parameters:BS($.parent)?void 0:$.parent.typeParameters;if(Pe>=$.pos&&We&&Pe<We.end)return!1}const De=bu(ie,oe);if(l.externalModuleIndicator&&!I.allowUmdGlobalAccess&&ve[Ta(ie)]===zu.GlobalsOrKeywords&&(ve[Ta(De)]===zu.AutoImportSuggestions||ve[Ta(De)]===zu.LocationPriority))return!1;if(He|=LR(De),$7(o))return!!(He&1920);if(M)return t_e(ie,oe)}return!!(He&111551)}function pe(ie){var ve;const Le=LR(bu(ie,oe));return!(Le&111551)&&(!lr((ve=ie.declarations)==null?void 0:ve[0])||!!(Le&788968))}}function Fnt(e){const t=znt(e);if(t.length)return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!1,entries:t}}function znt(e){const t=[],r=new Map;let i=e;for(;i&&!ea(i);){if(o1(i)){const o=i.label.text;r.has(o)||(r.set(o,!0),t.push({name:o,kindModifiers:"",kind:"label",sortText:zu.LocationPriority}))}i=i.parent}return t}function hke(e,t,r,i,o,s,l){if(o.source==="SwitchCases/")return{type:"cases"};if(o.data){const K=vke(o.name,o.data,e,s);if(K){const{contextToken:Z,previousToken:V}=LQ(i,r);return{type:"symbol",symbol:K.symbol,location:Vd(r,i),previousToken:V,contextToken:Z,isJsxInitializer:!1,isTypeOnlyLocation:!1,origin:K.origin}}}const u=e.getCompilerOptions(),p=gke(e,t,r,u,i,{includeCompletionsForModuleExports:!0,includeCompletionsWithInsertText:!0},o,s,void 0);if(!p)return{type:"none"};if(p.kind!==0)return{type:"request",request:p};const{symbols:h,literals:m,location:b,completionKind:A,symbolToOriginInfoMap:I,contextToken:R,previousToken:M,isJsxInitializer:C,isTypeOnlyLocation:O}=p,U=An(m,K=>Kme(r,l,K)===o.name);return U!==void 0?{type:"literal",literal:U}:Ut(h,(K,Z)=>{const V=I[Z],se=kQ(K,os(u),V,A,p.isJsxIdentifierExpected);return se&&se.name===o.name&&(o.source==="ClassMemberSnippet/"&&K.flags&106500||o.source==="ObjectLiteralMethodSnippet/"&&K.flags&8196||Xme(V)===o.source||o.source==="ObjectLiteralMemberWithComma/")?{type:"symbol",symbol:K,location:b,origin:V,contextToken:R,previousToken:M,isJsxInitializer:C,isTypeOnlyLocation:O}:void 0})||{type:"none"}}function Bnt(e,t,r,i,o,s,l,u,p){const h=e.getTypeChecker(),m=e.getCompilerOptions(),{name:b,source:A,data:I}=o,{previousToken:R,contextToken:M}=LQ(i,r);if(CI(r,i,R))return GQ.getStringLiteralCompletionDetails(b,r,i,R,e,s,p,u);const C=hke(e,t,r,i,o,s,u);switch(C.type){case"request":{const{request:O}=C;switch(O.kind){case 1:return G0.getJSDocTagNameCompletionDetails(b);case 2:return G0.getJSDocTagCompletionDetails(b);case 3:return G0.getJSDocParameterNameCompletionDetails(b);case 4:return bt(O.keywordCompletions,U=>U.name===b)?$me(b,"keyword",5):void 0;default:return N.assertNever(O)}}case"symbol":{const{symbol:O,location:U,contextToken:K,origin:Z,previousToken:V}=C,{codeActions:se,sourceDisplay:G}=Gnt(b,U,K,Z,O,e,s,m,r,i,V,l,u,I,A,p),ne=qme(Z)?Z.symbolName:O.name;return Qme(O,ne,h,r,U,p,se,G)}case"literal":{const{literal:O}=C;return $me(Kme(r,u,O),"string",typeof O=="string"?8:7)}case"cases":{const O=pke(M.parent,r,u,e.getCompilerOptions(),s,e,void 0);if(O!=null&&O.importAdder.hasFixes()){const{entry:U,importAdder:K}=O,Z=_r.ChangeTracker.with({host:s,formatContext:l,preferences:u},K.writeFixes);return{name:U.name,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0,codeActions:[{changes:Z,description:uT([f.Includes_imports_of_types_referenced_by_0,b])}]}}return{name:b,kind:"",kindModifiers:"",displayParts:[],sourceDisplay:void 0}}case"none":return a_e().some(O=>O.name===b)?$me(b,"keyword",5):void 0;default:N.assertNever(C)}}function $me(e,t,r){return Nz(e,"",t,[ip(e,r)])}function Qme(e,t,r,i,o,s,l,u){const{displayParts:p,documentation:h,symbolKind:m,tags:b}=r.runWithCancellationToken(s,A=>iy.getSymbolDisplayPartsDocumentationAndSymbolKind(A,e,i,o,o,7));return Nz(t,iy.getSymbolModifiers(r,e),m,p,h,b,l,u)}function Nz(e,t,r,i,o,s,l,u){return{name:e,kindModifiers:t,kind:r,displayParts:i,documentation:o,tags:s,codeActions:l,source:u,sourceDisplay:u}}function Gnt(e,t,r,i,o,s,l,u,p,h,m,b,A,I,R,M){if(I!=null&&I.moduleSpecifier&&m&&xke(r||m,p).replacementSpan)return{codeActions:void 0,sourceDisplay:[df(I.moduleSpecifier)]};if(R==="ClassMemberSnippet/"){const{importAdder:se,eraseRange:G}=fke(l,s,u,A,e,o,t,h,r,b);if(se||G)return{sourceDisplay:void 0,codeActions:[{changes:_r.ChangeTracker.with({host:l,formatContext:b,preferences:A},he=>{se&&se.writeFixes(he),G&&he.deleteRange(p,G)}),description:uT([f.Includes_imports_of_types_referenced_by_0,e])}]}}if(rke(i)){const se=Fu.getPromoteTypeOnlyCompletionAction(p,i.declaration.name,s,l,b,A);return N.assertIsDefined(se,"Expected to have a code action for promoting type-only alias"),{codeActions:[se],sourceDisplay:void 0}}if(R==="ObjectLiteralMemberWithComma/"&&r){const se=_r.ChangeTracker.with({host:l,formatContext:b,preferences:A},G=>G.insertText(p,r.end,","));if(se)return{sourceDisplay:void 0,codeActions:[{changes:se,description:uT([f.Add_missing_comma_for_object_member_completion_0,e])}]}}if(!i||!(Rz(i)||E2(i)))return{codeActions:void 0,sourceDisplay:void 0};const C=i.isFromPackageJson?l.getPackageJsonAutoImportProvider().getTypeChecker():s.getTypeChecker(),{moduleSymbol:O}=i,U=C.getMergedSymbol(bu(o.exportSymbol||o,C)),K=(r==null?void 0:r.kind)===30&&ud(r.parent),{moduleSpecifier:Z,codeAction:V}=Fu.getImportCompletionAction(U,O,I==null?void 0:I.exportMapKey,p,e,K,l,s,b,m&&Ve(m)?m.getStart(p):h,A,M);return N.assert(!(I!=null&&I.moduleSpecifier)||Z===I.moduleSpecifier),{sourceDisplay:[df(Z)],codeActions:[V]}}function Vnt(e,t,r,i,o,s,l){const u=hke(e,t,r,i,o,s,l);return u.type==="symbol"?u.symbol:void 0}function jnt(e,t,r){return Ut(t&&(t.isUnion()?t.types:[t]),i=>{const o=i&&i.symbol;return o&&o.flags&424&&!Noe(o)?Zme(o,e,r):void 0})}function Unt(e,t,r,i){const{parent:o}=e;switch(e.kind){case 80:return T5(e,i);case 64:switch(o.kind){case 260:return i.getContextualType(o.initializer);case 226:return i.getTypeAtLocation(o.left);case 291:return i.getContextualTypeForJsxAttribute(o);default:return}case 105:return i.getContextualType(o);case 84:const s=ii(o,YR);return s?wX(s,i):void 0;case 19:return TP(o)&&!dg(o.parent)&&!s1(o.parent)?i.getContextualTypeForJsxAttribute(o.parent):void 0;default:const l=o8.getArgumentInfoForCompletions(e,t,r,i);return l?i.getContextualTypeForArgumentAtIndex(l.invocation,l.argumentIndex):A5(e.kind)&&mr(o)&&A5(o.operatorToken.kind)?i.getTypeAtLocation(o.left):i.getContextualType(e,4)||i.getContextualType(e)}}function Zme(e,t,r){const i=r.getAccessibleSymbolChain(e,t,-1,!1);return i?Ha(i):e.parent&&(Hnt(e.parent)?e:Zme(e.parent,t,r))}function Hnt(e){var t;return!!((t=e.declarations)!=null&&t.some(r=>r.kind===312))}function gke(e,t,r,i,o,s,l,u,p,h){const m=e.getTypeChecker(),b=dke(r,i);let A=Ys(),I=po(r,o);t("getCompletionData: Get current token: "+(Ys()-A)),A=Ys();const R=Qv(r,o,I);t("getCompletionData: Is inside comment: "+(Ys()-A));let M=!1,C=!1;if(R){if(Oue(r,o)){if(r.text.charCodeAt(o-1)===64)return{kind:1};{const Ge=lm(o,r);if(!/[^*|\s(/)]/.test(r.text.substring(Ge,o)))return{kind:2}}}const me=Xnt(I,o);if(me){if(me.tagName.pos<=o&&o<=me.tagName.end)return{kind:1};const Ge=tn(me);if(Ge&&(I=po(r,o),(!I||!Bg(I)&&(I.parent.kind!==355||I.parent.name!==I))&&(M=J(Ge))),!M&&r_(me)&&(zl(me.name)||me.name.pos<=o&&o<=me.name.end))return{kind:3,tag:me}}if(!M){t("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return}}A=Ys();const O=!M&&dd(r),U=LQ(o,r),K=U.previousToken;let Z=U.contextToken;t("getCompletionData: Get previous token: "+(Ys()-A));let V=I,se,G=!1,ne=!1,he=!1,ye=!1,$=!1,Y=!1,oe,fe=Vd(r,o),Ne=0,pe=!1,ie=0;if(Z){const me=xke(Z,r);if(me.keywordCompletion){if(me.isKeywordOnlyCompletion)return{kind:4,keywordCompletions:[Ent(me.keywordCompletion)],isNewIdentifierLocation:me.isNewIdentifierLocation};Ne=Tnt(me.keywordCompletion)}if(me.replacementSpan&&s.includeCompletionsForImportStatements&&s.includeCompletionsWithInsertText&&(ie|=2,oe=me,pe=me.isNewIdentifierLocation),!me.replacementSpan&&Qi(Z))return t("Returning an empty list because completion was requested in an invalid position."),Ne?cke(Ne,O,ma()):void 0;let Ge=Z.parent;if(Z.kind===25||Z.kind===29)switch(G=Z.kind===25,ne=Z.kind===29,Ge.kind){case 211:se=Ge,V=se.expression;const ke=kR(se);if(zl(ke)||(la(V)||ea(V))&&V.end===Z.pos&&V.getChildCount(r)&&Ya(V.getChildren(r)).kind!==22)return;break;case 166:V=Ge.left;break;case 267:V=Ge.name;break;case 205:V=Ge;break;case 236:V=Ge.getFirstToken(r),N.assert(V.kind===102||V.kind===105);break;default:return}else if(!oe){if(Ge&&Ge.kind===211&&(Z=Ge,Ge=Ge.parent),I.parent===fe)switch(I.kind){case 32:(I.parent.kind===284||I.parent.kind===286)&&(fe=I);break;case 44:I.parent.kind===285&&(fe=I);break}switch(Ge.kind){case 287:Z.kind===44&&(ye=!0,fe=Z);break;case 226:if(!Ike(Ge))break;case 285:case 284:case 286:Y=!0,Z.kind===30&&(he=!0,fe=Z);break;case 294:case 293:(K.kind===20||K.kind===80&&K.parent.kind===291)&&(Y=!0);break;case 291:if(Ge.initializer===K&&K.end<o){Y=!0;break}switch(K.kind){case 64:$=!0;break;case 80:Y=!0,Ge!==K.parent&&!Ge.initializer&&vs(Ge,64,r)&&($=K)}break}}}const ve=Ys();let Le=5,He=!1,Ee=[],De;const Pe=[],We=[],At=new Map,Se=Di(),je=uh(me=>sT(me?u.getPackageJsonAutoImportProvider():e,u));if(G||ne)rn();else if(he)Ee=m.getJsxIntrinsicTagNamesAt(fe),N.assertEachIsDefined(Ee,"getJsxIntrinsicTagNames() should all be defined"),Qt(),Le=1,Ne=0;else if(ye){const me=Z.parent.parent.openingElement.tagName,Ge=m.getSymbolAtLocation(me);Ge&&(Ee=[Ge]),Le=1,Ne=0}else if(!Qt())return Ne?cke(Ne,O,pe):void 0;t("getCompletionData: Semantic work: "+(Ys()-ve));const at=K&&Unt(K,o,r,m),vt=!ii(K,ls)&&!Y?Hi(at&&(at.isUnion()?at.types:[at]),me=>me.isLiteral()&&!(me.flags&1024)?me.value:void 0):[],$e=K&&at&&jnt(K,at,m);return{kind:0,symbols:Ee,completionKind:Le,isInSnippetScope:C,propertyAccessToConvert:se,isNewIdentifierLocation:pe,location:fe,keywordFilters:Ne,literals:vt,symbolToOriginInfoMap:Pe,recommendedCompletion:$e,previousToken:K,contextToken:Z,isJsxInitializer:$,insideJsDocTagTypeExpression:M,symbolToSortTextMap:We,isTypeOnlyLocation:Se,isJsxIdentifierExpected:Y,isRightOfOpenTag:he,isRightOfDotOrQuestionDot:G||ne,importStatementCompletion:oe,hasUnresolvedAutoImports:He,flags:ie};function It(me){switch(me.kind){case 348:case 355:case 349:case 351:case 353:case 356:case 357:return!0;case 352:return!!me.constraint;default:return!1}}function tn(me){if(It(me)){const Ge=sm(me)?me.constraint:me.typeExpression;return Ge&&Ge.kind===316?Ge:void 0}if(vI(me)||dF(me))return me.class}function rn(){Le=2;const me=Vy(V),Ge=me&&!V.isTypeOf||tg(V.parent)||dO(Z,r,m),ke=$7(V);if(Zd(V)||me||Fr(V)){const Tt=Xl(V.parent);Tt&&(pe=!0);let kt=m.getSymbolAtLocation(V);if(kt&&(kt=bu(kt,m),kt.flags&1920)){const en=m.getExportsOfModule(kt);N.assertEachIsDefined(en,"getExportsOfModule() should all be defined");const bn=Ni=>m.isValidPropertyAccess(me?V:V.parent,Ni.name),Bn=Ni=>t_e(Ni,m),Hn=Tt?Ni=>{var Ai;return!!(Ni.flags&1920)&&!((Ai=Ni.declarations)!=null&&Ai.every(ir=>ir.parent===V.parent))}:ke?Ni=>Bn(Ni)||bn(Ni):Ge||M?Bn:bn;for(const Ni of en)Hn(Ni)&&Ee.push(Ni);if(!Ge&&!M&&kt.declarations&&kt.declarations.some(Ni=>Ni.kind!==312&&Ni.kind!==267&&Ni.kind!==266)){let Ni=m.getTypeOfSymbolAtLocation(kt,V).getNonOptionalType(),Ai=!1;if(Ni.isNullableType()){const ir=G&&!ne&&s.includeAutomaticOptionalChainCompletions!==!1;(ir||ne)&&(Ni=Ni.getNonNullableType(),ir&&(Ai=!0))}Pn(Ni,!!(V.flags&65536),Ai)}return}}if(!Ge||kS(V)){m.tryGetThisTypeAt(V,!1);let Tt=m.getTypeAtLocation(V).getNonOptionalType();if(Ge)Pn(Tt.getNonNullableType(),!1,!1);else{let kt=!1;if(Tt.isNullableType()){const en=G&&!ne&&s.includeAutomaticOptionalChainCompletions!==!1;(en||ne)&&(Tt=Tt.getNonNullableType(),en&&(kt=!0))}Pn(Tt,!!(V.flags&65536),kt)}}}function Pn(me,Ge,ke){pe=!!me.getStringIndexType(),ne&&bt(me.getCallSignatures())&&(pe=!0);const Tt=V.kind===205?V:V.parent;if(b)for(const kt of me.getApparentProperties())m.isValidPropertyAccessForCompletions(Tt,me,kt)&&Xn(kt,!1,ke);else Ee.push(...nr(WQ(me,m),kt=>m.isValidPropertyAccessForCompletions(Tt,me,kt)));if(Ge&&s.includeCompletionsWithInsertText){const kt=m.getPromisedTypeOfPromise(me);if(kt)for(const en of kt.getApparentProperties())m.isValidPropertyAccessForCompletions(Tt,kt,en)&&Xn(en,!0,ke)}}function Xn(me,Ge,ke){var Tt;const kt=Ut(me.declarations,Hn=>ii(Mo(Hn),Za));if(kt){const Hn=hn(kt.expression),Ni=Hn&&m.getSymbolAtLocation(Hn),Ai=Ni&&Zme(Ni,Z,m),ir=Ai&&Ta(Ai);if(ir&&Rm(At,ir)){const jr=Ee.length;Ee.push(Ai);const vo=Ai.parent;if(!vo||!mO(vo)||m.tryGetMemberInModuleExportsAndProperties(Ai.name,vo)!==Ai)Pe[jr]={kind:Bn(2)};else{const Ci=Yc(tm(vo.name))?(Tt=G4(vo))==null?void 0:Tt.fileName:void 0,{moduleSpecifier:Ii}=(De||(De=Fu.createImportSpecifierResolver(r,e,u,s))).getModuleSpecifierForBestExportInfo([{exportKind:0,moduleFileName:Ci,isFromPackageJson:!1,moduleSymbol:vo,symbol:Ai,targetFlags:bu(Ai,m).flags}],o,T0(fe))||{};if(Ii){const Kr={kind:Bn(6),moduleSymbol:vo,isDefaultExport:!1,symbolName:Ai.name,exportName:Ai.name,fileName:Ci,moduleSpecifier:Ii};Pe[jr]=Kr}}}else if(s.includeCompletionsWithInsertText){if(ir&&At.has(ir))return;bn(me),en(me),Ee.push(me)}}else bn(me),en(me),Ee.push(me);function en(Hn){trt(Hn)&&(We[Ta(Hn)]=zu.LocalDeclarationPriority)}function bn(Hn){s.includeCompletionsWithInsertText&&(Ge&&Rm(At,Ta(Hn))?Pe[Ee.length]={kind:Bn(8)}:ke&&(Pe[Ee.length]={kind:16}))}function Bn(Hn){return ke?Hn|16:Hn}}function hn(me){return Ve(me)?me:Fr(me)?hn(me.expression):void 0}function Qt(){return(Sn()||kn()||ao()||qe()||mt()||ft()||$t()||Ct()||_i()||(Oi(),1))===1}function $t(){return Fe(Z)?(Le=5,pe=!0,Ne=4,1):0}function _i(){const me=j(Z),Ge=me&&m.getContextualType(me.attributes);if(!Ge)return 0;const ke=me&&m.getContextualType(me.attributes,4);return Ee=So(Ee,_e(OQ(Ge,ke,me.attributes,m),me.attributes.properties)),q(),Le=3,pe=!1,1}function ao(){return oe?(pe=!0,tt(),1):0}function Oi(){Ne=pt(Z)?5:1,Le=1,pe=ma(),K!==Z&&N.assert(!!K,"Expected 'contextToken' to be defined when different from 'previousToken'.");const me=K!==Z?K.getStart():o,Ge=hi(Z,me,r)||r;C=Mn(Ge);const ke=(Se?0:111551)|788968|1920|2097152,Tt=K&&!T0(K);Ee=So(Ee,m.getSymbolsInScope(Ge,ke)),N.assertEachIsDefined(Ee,"getSymbolsInScope() should all be defined");for(let kt=0;kt<Ee.length;kt++){const en=Ee[kt];if(!m.isArgumentsSymbol(en)&&!bt(en.declarations,bn=>bn.getSourceFile()===r)&&(We[Ta(en)]=zu.GlobalsOrKeywords),Tt&&!(en.flags&111551)){const bn=en.declarations&&An(en.declarations,_L);if(bn){const Bn={kind:64,declaration:bn};Pe[kt]=Bn}}}if(s.includeCompletionsWithInsertText&&Ge.kind!==312){const kt=m.tryGetThisTypeAt(Ge,!1,ui(Ge.parent)?Ge:void 0);if(kt&&!ert(kt,r,m))for(const en of WQ(kt,m))Pe[Ee.length]={kind:1},Ee.push(en),We[Ta(en)]=zu.SuggestedClassMembers}tt(),Se&&(Ne=Z&&bS(Z.parent)?6:7)}function No(){return oe?!0:s.includeCompletionsForModuleExports?r.externalModuleIndicator||r.commonJsModuleIndicator||gX(e.getCompilerOptions())?!0:Vue(e):!1}function Mn(me){switch(me.kind){case 312:case 228:case 294:case 241:return!0;default:return qi(me)}}function Di(){return M||!!oe&&m0(fe.parent)||!Ar(Z)&&(dO(Z,r,m)||tg(fe)||sn(Z))}function Ar(me){return me&&(me.kind===114&&(me.parent.kind===186||KR(me.parent))||me.kind===131&&me.parent.kind===182)}function sn(me){if(me){const Ge=me.parent.kind;switch(me.kind){case 59:return Ge===172||Ge===171||Ge===169||Ge===260||PA(Ge);case 64:return Ge===265||Ge===168;case 130:return Ge===234;case 30:return Ge===183||Ge===216;case 96:return Ge===168;case 152:return Ge===238}}return!1}function tt(){var me,Ge;if(!No()||(N.assert(!(l!=null&&l.data),"Should not run 'collectAutoImports' when faster path is available via `data`"),l&&!l.source))return;ie|=1;const Tt=K===Z&&oe?"":K&&Ve(K)?K.text.toLowerCase():"",kt=(me=u.getModuleSpecifierCache)==null?void 0:me.call(u),en=RO(r,u,e,s,h),bn=(Ge=u.getPackageJsonAutoImportProvider)==null?void 0:Ge.call(u),Bn=l?void 0:m2(r,s,u);oke("collectAutoImports",u,De||(De=Fu.createImportSpecifierResolver(r,e,u,s)),e,o,s,!!oe,T0(fe),Ni=>{en.search(r.path,he,(Ai,ir)=>{if(!tf(Ai,os(u.getCompilationSettings()))||!l&&GA(Ai)||!Se&&!oe&&!(ir&111551)||Se&&!(ir&790504))return!1;const jr=Ai.charCodeAt(0);return he&&(jr<65||jr>90)?!1:l?!0:Pke(Ai,Tt)},(Ai,ir,jr,vo)=>{if(l&&!bt(Ai,Fs=>l.source===tm(Fs.moduleSymbol.name))||(Ai=nr(Ai,Hn),!Ai.length))return;const Ci=Ni.tryResolve(Ai,jr)||{};if(Ci==="failed")return;let Ii=Ai[0],Kr;Ci!=="skipped"&&({exportInfo:Ii=Ai[0],moduleSpecifier:Kr}=Ci);const xo=Ii.exportKind===1,Dn=xo&&MR(Ii.symbol)||Ii.symbol;zt(Dn,{kind:Kr?32:4,moduleSpecifier:Kr,symbolName:ir,exportMapKey:vo,exportName:Ii.exportKind===2?"export=":Ii.symbol.name,fileName:Ii.moduleFileName,isDefaultExport:xo,moduleSymbol:Ii.moduleSymbol,isFromPackageJson:Ii.isFromPackageJson})}),He=Ni.skippedAny(),ie|=Ni.resolvedAny()?8:0,ie|=Ni.resolvedBeyondLimit()?16:0});function Hn(Ni){const Ai=ii(Ni.moduleSymbol.valueDeclaration,$i);if(!Ai){const ir=tm(Ni.moduleSymbol.name);return G_.nodeCoreModules.has(ir)&&uo(ir,"node:")!==k5(r,e)?!1:Bn?Bn.allowsImportingAmbientModule(Ni.moduleSymbol,je(Ni.isFromPackageJson)):!0}return $X(Ni.isFromPackageJson?bn:e,r,Ai,s,Bn,je(Ni.isFromPackageJson),kt)}}function zt(me,Ge){const ke=Ta(me);We[ke]!==zu.GlobalsOrKeywords&&(Pe[Ee.length]=Ge,We[ke]=oe?zu.LocationPriority:zu.AutoImportSuggestions,Ee.push(me))}function Rn(me,Ge){lr(fe)||me.forEach(ke=>{if(!li(ke))return;const Tt=kQ(ke,os(i),void 0,0,!1);if(!Tt)return;const{name:kt}=Tt,en=Lnt(ke,kt,Ge,e,u,i,s,p);if(!en)return;const bn={kind:128,...en};ie|=32,Pe[Ee.length]=bn,Ee.push(ke)})}function li(me){return!!(me.flags&8196)}function hi(me,Ge,ke){let Tt=me;for(;Tt&&!rX(Tt,Ge,ke);)Tt=Tt.parent;return Tt}function Qi(me){const Ge=Ys(),ke=Wa(me)||Rt(me)||Vt(me)||Io(me)||YW(me);return t("getCompletionsAtPosition: isCompletionListBlocker: "+(Ys()-Ge)),ke}function Io(me){if(me.kind===12)return!0;if(me.kind===32&&me.parent){if(fe===me.parent&&(fe.kind===286||fe.kind===285))return!1;if(me.parent.kind===286)return fe.parent.kind!==286;if(me.parent.kind===287||me.parent.kind===285)return!!me.parent.parent&&me.parent.parent.kind===284}return!1}function ma(){if(Z){const me=Z.parent.kind,Ge=wQ(Z);switch(Ge){case 28:return me===213||me===176||me===214||me===209||me===226||me===184||me===210;case 21:return me===213||me===176||me===214||me===217||me===196;case 23:return me===209||me===181||me===167;case 144:case 145:case 102:return!0;case 25:return me===267;case 19:return me===263||me===210;case 64:return me===260||me===226;case 16:return me===228;case 17:return me===239;case 134:return me===174||me===304;case 42:return me===174}if(Cz(Ge))return!0}return!1}function Wa(me){return(IH(me)||ij(me))&&(lO(me,o)||o===me.end&&(!!me.isUnterminated||IH(me)))}function Sn(){const me=Qnt(Z);if(!me)return 0;const ke=(uI(me.parent)?me.parent:void 0)||me,Tt=Ake(ke,m);if(!Tt)return 0;const kt=m.getTypeFromTypeNode(ke),en=WQ(Tt,m),bn=WQ(kt,m),Bn=new Set;return bn.forEach(Hn=>Bn.add(Hn.escapedName)),Ee=So(Ee,nr(en,Hn=>!Bn.has(Hn.escapedName))),Le=0,pe=!0,1}function kn(){const me=Ee.length,Ge=qnt(Z,o,r);if(!Ge)return 0;Le=0;let ke,Tt;if(Ge.kind===210){const kt=nrt(Ge,m);if(kt===void 0)return Ge.flags&67108864?2:0;const en=m.getContextualType(Ge,4),bn=(en||kt).getStringIndexType(),Bn=(en||kt).getNumberIndexType();if(pe=!!bn||!!Bn,ke=OQ(kt,en,Ge,m),Tt=Ge.properties,ke.length===0&&!Bn)return 0}else{N.assert(Ge.kind===206),pe=!1;const kt=C_(Ge.parent);if(!pR(kt))return N.fail("Root declaration is not variable-like.");let en=zy(kt)||!!yu(kt)||kt.parent.parent.kind===250;if(!en&&kt.kind===169&&(yt(kt.parent)?en=!!m.getContextualType(kt.parent):(kt.parent.kind===174||kt.parent.kind===178)&&(en=yt(kt.parent.parent)&&!!m.getContextualType(kt.parent.parent))),en){const bn=m.getTypeAtLocation(Ge);if(!bn)return 2;ke=m.getPropertiesOfType(bn).filter(Bn=>m.isPropertyAccessible(Ge,!1,!1,bn,Bn)),Tt=Ge.elements}}if(ke&&ke.length>0){const kt=fn(ke,N.checkDefined(Tt));Ee=So(Ee,kt),q(),Ge.kind===210&&s.includeCompletionsWithObjectLiteralMethodSnippets&&s.includeCompletionsWithInsertText&&(Lt(me),Rn(kt,Ge))}return 1}function qe(){if(!Z)return 0;const me=Z.kind===19||Z.kind===28?ii(Z.parent,B3):f5(Z)?ii(Z.parent.parent,B3):void 0;if(!me)return 0;f5(Z)||(Ne=8);const{moduleSpecifier:Ge}=me.kind===275?me.parent.parent:me.parent;if(!Ge)return pe=!0,me.kind===275?2:0;const ke=m.getSymbolAtLocation(Ge);if(!ke)return pe=!0,2;Le=3,pe=!1;const Tt=m.getExportsAndPropertiesOfModule(ke),kt=new Set(me.elements.filter(bn=>!J(bn)).map(bn=>(bn.propertyName||bn.name).escapedText)),en=Tt.filter(bn=>bn.escapedName!=="default"&&!kt.has(bn.escapedName));return Ee=So(Ee,en),en.length||(Ne=0),1}function mt(){if(Z===void 0)return 0;const me=Z.kind===19||Z.kind===28?ii(Z.parent,mI):Z.kind===59?ii(Z.parent.parent,mI):void 0;if(me===void 0)return 0;const Ge=new Set(me.elements.map(cW));return Ee=nr(m.getTypeAtLocation(me).getApparentProperties(),ke=>!Ge.has(ke.escapedName)),1}function ft(){var me;const Ge=Z&&(Z.kind===19||Z.kind===28)?ii(Z.parent,Pf):void 0;if(!Ge)return 0;const ke=Gn(Ge,Ym($i,Xl));return Le=5,pe=!1,(me=ke.locals)==null||me.forEach((Tt,kt)=>{var en,bn;Ee.push(Tt),(bn=(en=ke.symbol)==null?void 0:en.exports)!=null&&bn.has(kt)&&(We[Ta(Tt)]=zu.OptionalMember)}),1}function Ct(){const me=$nt(r,Z,fe,o);if(!me)return 0;if(Le=3,pe=!0,Ne=Z.kind===42?0:ui(me)?2:3,!ui(me))return 1;const Ge=Z.kind===27?Z.parent.parent:Z.parent;let ke=$c(Ge)?pd(Ge):0;if(Z.kind===80&&!J(Z))switch(Z.getText()){case"private":ke=ke|2;break;case"static":ke=ke|256;break;case"override":ke=ke|16;break}if(Rl(Ge)&&(ke|=256),!(ke&2)){const Tt=ui(me)&&ke&16?AA(D_(me)):CC(me),kt=Pi(Tt,en=>{const bn=m.getTypeAtLocation(en);return ke&256?(bn==null?void 0:bn.symbol)&&m.getPropertiesOfType(m.getTypeOfSymbolAtLocation(bn.symbol,me)):bn&&m.getPropertiesOfType(bn)});Ee=So(Ee,L(kt,me.members,ke)),Ue(Ee,(en,bn)=>{const Bn=en==null?void 0:en.valueDeclaration;if(Bn&&$c(Bn)&&Bn.name&&Za(Bn.name)){const Hn={kind:512,symbolName:m.symbolToString(en)};Pe[bn]=Hn}})}return 1}function le(me){return!!me.parent&&Ao(me.parent)&&Ml(me.parent.parent)&&(_C(me.kind)||Bg(me))}function Fe(me){if(me){const Ge=me.parent;switch(me.kind){case 21:case 28:return Ml(me.parent)?me.parent:void 0;default:if(le(me))return Ge.parent}}}function pt(me){if(me){let Ge;const ke=Gn(me.parent,Tt=>ui(Tt)?"quit":Bs(Tt)&&Ge===Tt.body?!0:(Ge=Tt,!1));return ke&&ke}}function j(me){if(me){const Ge=me.parent;switch(me.kind){case 32:case 31:case 44:case 80:case 211:case 292:case 291:case 293:if(Ge&&(Ge.kind===285||Ge.kind===286)){if(me.kind===32){const ke=xc(me.pos,r,void 0);if(!Ge.typeArguments||ke&&ke.kind===44)break}return Ge}else if(Ge.kind===291)return Ge.parent.parent;break;case 11:if(Ge&&(Ge.kind===291||Ge.kind===293))return Ge.parent.parent;break;case 20:if(Ge&&Ge.kind===294&&Ge.parent&&Ge.parent.kind===291)return Ge.parent.parent.parent;if(Ge&&Ge.kind===293)return Ge.parent.parent;break}}}function ot(me,Ge){return r.getLineEndOfPosition(me.getEnd())<Ge}function Rt(me){const Ge=me.parent,ke=Ge.kind;switch(me.kind){case 28:return ke===260||vn(me)||ke===243||ke===266||_t(ke)||ke===264||ke===207||ke===265||ui(Ge)&&!!Ge.typeParameters&&Ge.typeParameters.end>=me.pos;case 25:return ke===207;case 59:return ke===208;case 23:return ke===207;case 21:return ke===299||_t(ke);case 19:return ke===266;case 30:return ke===263||ke===231||ke===264||ke===265||PA(ke);case 126:return ke===172&&!ui(Ge.parent);case 26:return ke===169||!!Ge.parent&&Ge.parent.kind===207;case 125:case 123:case 124:return ke===169&&!Ml(Ge.parent);case 130:return ke===276||ke===281||ke===274;case 139:case 153:return!FQ(me);case 80:{if(ke===276&&me===Ge.name&&me.text==="type"||Gn(me.parent,wi)&&ot(me,o))return!1;break}case 86:case 94:case 120:case 100:case 115:case 102:case 121:case 87:case 140:return!0;case 156:return ke!==276;case 42:return ea(me.parent)&&!ql(me.parent)}if(Cz(wQ(me))&&FQ(me)||le(me)&&(!Ve(me)||_C(wQ(me))||J(me)))return!1;switch(wQ(me)){case 128:case 86:case 87:case 138:case 94:case 100:case 120:case 121:case 123:case 124:case 125:case 126:case 115:return!0;case 134:return Jo(me.parent)}if(Gn(me.parent,ui)&&me===K&&Ye(me,o))return!1;const kt=b0(me.parent,172);if(kt&&me!==K&&ui(K.parent.parent)&&o<=K.end){if(Ye(me,K.end))return!1;if(me.kind!==64&&(ww(kt)||w4(kt)))return!0}return Bg(me)&&!rp(me.parent)&&!F_(me.parent)&&!((ui(me.parent)||hd(me.parent)||gl(me.parent))&&(me!==K||o>K.end))}function Ye(me,Ge){return me.kind!==64&&(me.kind===27||!Rf(me.end,Ge,r))}function _t(me){return PA(me)&&me!==176}function Vt(me){if(me.kind===9){const Ge=me.getFullText();return Ge.charAt(Ge.length-1)==="."}return!1}function vn(me){return me.parent.kind===261&&!dO(me,r,m)}function fn(me,Ge){if(Ge.length===0)return me;const ke=new Set,Tt=new Set;for(const en of Ge){if(en.kind!==303&&en.kind!==304&&en.kind!==208&&en.kind!==174&&en.kind!==177&&en.kind!==178&&en.kind!==305||J(en))continue;let bn;if(Xv(en))_n(en,ke);else if(Qa(en)&&en.propertyName)en.propertyName.kind===80&&(bn=en.propertyName.escapedText);else{const Bn=Mo(en);bn=Bn&&N_(Bn)?LC(Bn):void 0}bn!==void 0&&Tt.add(bn)}const kt=me.filter(en=>!Tt.has(en.escapedName));return Oe(ke,kt),kt}function _n(me,Ge){const ke=me.expression,Tt=m.getSymbolAtLocation(ke),kt=Tt&&m.getTypeOfSymbolAtLocation(Tt,ke),en=kt&&kt.properties;en&&en.forEach(bn=>{Ge.add(bn.name)})}function q(){Ee.forEach(me=>{if(me.flags&16777216){const Ge=Ta(me);We[Ge]=We[Ge]??zu.OptionalMember}})}function Oe(me,Ge){if(me.size!==0)for(const ke of Ge)me.has(ke.name)&&(We[Ta(ke)]=zu.MemberDeclaredBySpreadAssignment)}function Lt(me){for(let Ge=me;Ge<Ee.length;Ge++){const ke=Ee[Ge],Tt=Ta(ke),kt=Pe==null?void 0:Pe[Ge],en=os(i),bn=kQ(ke,en,kt,0,!1);if(bn){const Bn=We[Tt]??zu.LocationPriority,{name:Hn}=bn;We[Tt]=zu.ObjectLiteralProperty(Bn,Hn)}}}function L(me,Ge,ke){const Tt=new Set;for(const kt of Ge){if(kt.kind!==172&&kt.kind!==174&&kt.kind!==177&&kt.kind!==178||J(kt)||gp(kt,2)||sa(kt)!==!!(ke&256))continue;const en=PS(kt.name);en&&Tt.add(en)}return me.filter(kt=>!Tt.has(kt.escapedName)&&!!kt.declarations&&!(Df(kt)&2)&&!(kt.valueDeclaration&&cd(kt.valueDeclaration)))}function _e(me,Ge){const ke=new Set,Tt=new Set;for(const en of Ge)J(en)||(en.kind===291?ke.add(sP(en.name)):gI(en)&&_n(en,Tt));const kt=me.filter(en=>!ke.has(en.escapedName));return Oe(Tt,kt),kt}function J(me){return me.getStart(r)<=o&&o<=me.getEnd()}}function qnt(e,t,r){var i;if(e){const{parent:o}=e;switch(e.kind){case 19:case 28:if(Oa(o)||am(o))return o;break;case 42:return ql(o)?ii(o.parent,Oa):void 0;case 134:return ii(o.parent,Oa);case 80:if(e.text==="async"&&rp(e.parent))return e.parent.parent;{if(Oa(e.parent.parent)&&(Xv(e.parent)||rp(e.parent)&&bs(r,e.getEnd()).line!==bs(r,t).line))return e.parent.parent;const l=Gn(o,hc);if((l==null?void 0:l.getLastToken(r))===e&&Oa(l.parent))return l.parent}break;default:if((i=o.parent)!=null&&i.parent&&(ql(o.parent)||rf(o.parent)||bp(o.parent))&&Oa(o.parent.parent))return o.parent.parent;if(Xv(o)&&Oa(o.parent))return o.parent;const s=Gn(o,hc);if(e.kind!==59&&(s==null?void 0:s.getLastToken(r))===e&&Oa(s.parent))return s.parent}}}function LQ(e,t){const r=xc(e,t);return r&&e<=r.end&&(Qh(r)||Bd(r.kind))?{contextToken:xc(r.getFullStart(),t,void 0),previousToken:r}:{contextToken:r,previousToken:r}}function vke(e,t,r,i){const o=t.isPackageJsonImport?i.getPackageJsonAutoImportProvider():r,s=o.getTypeChecker(),l=t.ambientModuleName?s.tryFindAmbientModule(t.ambientModuleName):t.fileName?s.getMergedSymbol(N.checkDefined(o.getSourceFile(t.fileName)).symbol):void 0;if(!l)return;let u=t.exportName==="export="?s.resolveExternalModuleSymbol(l):s.tryGetMemberInModuleExportsAndProperties(t.exportName,l);return u?(u=t.exportName==="default"&&MR(u)||u,{symbol:u,origin:wnt(t,e,l)}):void 0}function kQ(e,t,r,i,o){if(gnt(r))return;const s=fnt(r)?r.symbolName:e.name;if(s===void 0||e.flags&1536&&VL(s.charCodeAt(0))||lk(e))return;const l={name:s,needsConvertPropertyAccess:!1};if(tf(s,t,o?1:0)||e.valueDeclaration&&cd(e.valueDeclaration))return l;switch(i){case 3:return qme(r)?{name:r.symbolName,needsConvertPropertyAccess:!1}:void 0;case 0:return{name:JSON.stringify(s),needsConvertPropertyAccess:!1};case 2:case 1:return s.charCodeAt(0)===32?void 0:{name:s,needsConvertPropertyAccess:!0};case 5:case 4:return l;default:N.assertNever(i)}}function yke(e,t){if(!t)return bke(e);const r=e+8+1;return Pz[r]||(Pz[r]=bke(e).filter(i=>!Jnt(PE(i.name))))}function bke(e){return Pz[e]||(Pz[e]=a_e().filter(t=>{const r=PE(t.name);switch(e){case 0:return!1;case 1:return Ske(r)||r===138||r===144||r===156||r===145||r===128||a2(r)&&r!==157;case 5:return Ske(r);case 2:return Cz(r);case 3:return Eke(r);case 4:return _C(r);case 6:return a2(r)||r===87;case 7:return a2(r);case 8:return r===156;default:return N.assertNever(e)}}))}function Jnt(e){switch(e){case 128:case 133:case 163:case 136:case 138:case 94:case 162:case 119:case 140:case 120:case 142:case 143:case 144:case 145:case 146:case 150:case 151:case 164:case 123:case 124:case 125:case 148:case 154:case 155:case 156:case 158:case 159:return!0;default:return!1}}function Eke(e){return e===148}function Cz(e){switch(e){case 128:case 129:case 137:case 139:case 153:case 134:case 138:case 164:return!0;default:return oj(e)}}function Ske(e){return e===134||e===135||e===160||e===130||e===152||e===156||!y3(e)&&!Cz(e)}function wQ(e){return Ve(e)?u0(e)??0:e.kind}function Knt(e,t){const r=[];if(e){const i=e.getSourceFile(),o=e.parent,s=i.getLineAndCharacterOfPosition(e.end).line,l=i.getLineAndCharacterOfPosition(t).line;(kc(o)||Yl(o)&&o.moduleSpecifier)&&e===o.moduleSpecifier&&s===l&&r.push({name:fa(132),kind:"keyword",kindModifiers:"",sortText:zu.GlobalsOrKeywords})}return r}function Xnt(e,t){return Gn(e,r=>iR(r)&&sO(r,t)?!0:n_(r)?"quit":!1)}function OQ(e,t,r,i){const o=t&&t!==e,s=o&&!(t.flags&3)?i.getUnionType([e,t]):e,l=Ynt(s,r,i);return s.isClass()&&Tke(l)?[]:o?nr(l,u):l;function u(p){return Me(p.declarations)?bt(p.declarations,h=>h.parent!==r):!0}}function Ynt(e,t,r){return e.isUnion()?r.getAllPossiblePropertiesOfTypes(nr(e.types,i=>!(i.flags&402784252||r.isArrayLikeType(i)||r.isTypeInvalidDueToUnionDiscriminant(i,t)||r.typeHasCallOrConstructSignatures(i)||i.isClass()&&Tke(i.getApparentProperties())))):e.getApparentProperties()}function Tke(e){return bt(e,t=>!!(Df(t)&6))}function WQ(e,t){return e.isUnion()?N.checkEachDefined(t.getAllPossiblePropertiesOfTypes(e.types),"getAllPossiblePropertiesOfTypes() should all be defined"):N.checkEachDefined(e.getApparentProperties(),"getApparentProperties() should all be defined")}function $nt(e,t,r,i){switch(r.kind){case 358:return ii(r.parent,qA);case 1:const o=ii(tl(aa(r.parent,$i).statements),qA);if(o&&!vs(o,20,e))return o;break;case 81:if(ii(r.parent,Jo))return Gn(r,ui);break;case 80:{if(u0(r)||Jo(r.parent)&&r.parent.initializer===r)return;if(FQ(r))return Gn(r,qA)}}if(t){if(r.kind===137||Ve(t)&&Jo(t.parent)&&ui(r))return Gn(t,ui);switch(t.kind){case 64:return;case 27:case 20:return FQ(r)&&r.parent.name===r?r.parent.parent:ii(r,qA);case 19:case 28:return ii(t.parent,qA);default:if(qA(r)){if(bs(e,t.getEnd()).line!==bs(e,i).line)return r;const o=ui(t.parent.parent)?Cz:Eke;return o(t.kind)||t.kind===42||Ve(t)&&o(u0(t)??0)?t.parent.parent:void 0}return}}}function Qnt(e){if(!e)return;const t=e.parent;switch(e.kind){case 19:if(Ep(t))return t;break;case 27:case 28:case 80:if(t.kind===171&&Ep(t.parent))return t.parent;break}}function Ake(e,t){if(!e)return;if(ji(e)&&O4(e.parent))return t.getTypeArgumentConstraint(e);const r=Ake(e.parent,t);if(r)switch(e.kind){case 171:return t.getTypeOfPropertyOfContextualType(r,e.symbol.escapedName);case 193:case 187:case 192:return r}}function FQ(e){return e.parent&&D4(e.parent)&&qA(e.parent.parent)}function Znt(e,t,r,i){switch(t){case".":case"@":return!0;case'"':case"'":case"`":return!!r&&ode(r)&&i===r.getStart(e)+1;case"#":return!!r&&Ji(r)&&!!su(r);case"<":return!!r&&r.kind===30&&(!mr(r.parent)||Ike(r.parent));case"/":return!!r&&(ls(r)?!!$L(r):r.kind===44&&a1(r.parent));case" ":return!!r&&gP(r)&&r.parent.kind===312;default:return N.assertNever(t)}}function Ike({left:e}){return zl(e)}function ert(e,t,r){const i=r.resolveName("self",void 0,111551,!1);if(i&&r.getTypeOfSymbolAtLocation(i,t)===e)return!0;const o=r.resolveName("global",void 0,111551,!1);if(o&&r.getTypeOfSymbolAtLocation(o,t)===e)return!0;const s=r.resolveName("globalThis",void 0,111551,!1);return!!(s&&r.getTypeOfSymbolAtLocation(s,t)===e)}function trt(e){return!!(e.valueDeclaration&&pd(e.valueDeclaration)&256&&ui(e.valueDeclaration.parent))}function nrt(e,t){const r=t.getContextualType(e);if(r)return r;const i=Bv(e.parent);if(mr(i)&&i.operatorToken.kind===64&&e===i.left)return t.getTypeAtLocation(i);if(yt(i))return t.getContextualType(i)}function xke(e,t){var r,i,o;let s,l=!1;const u=p();return{isKeywordOnlyCompletion:l,keywordCompletion:s,isNewIdentifierLocation:!!(u||s===156),isTopLevelTypeOnly:!!((i=(r=ii(u,kc))==null?void 0:r.importClause)!=null&&i.isTypeOnly)||!!((o=ii(u,tu))!=null&&o.isTypeOnly),couldBeTypeOnlyImportSpecifier:!!u&&Dke(u,e),replacementSpan:rrt(u)};function p(){const h=e.parent;if(tu(h)){const m=h.getLastToken(t);if(Ve(e)&&m!==e){s=161,l=!0;return}return s=e.kind===156?void 0:156,e_e(h.moduleReference)?h:void 0}if(Dke(h,e)&&Nke(h.parent))return h;if(Hg(h)||nb(h)){if(!h.parent.isTypeOnly&&(e.kind===19||e.kind===102||e.kind===28)&&(s=156),Nke(h))if(e.kind===20||e.kind===80)l=!0,s=161;else return h.parent.parent;return}if(Yl(h)&&e.kind===42||Pf(h)&&e.kind===20){l=!0,s=161;return}if(gP(e)&&$i(h))return s=156,e;if(gP(e)&&kc(h))return s=156,e_e(h.moduleSpecifier)?h:void 0}}function rrt(e){var t;if(!e)return;const r=Gn(e,Ym(kc,tu))??e,i=r.getSourceFile();if(OS(r,i))return Nd(r,i);N.assert(r.kind!==102&&r.kind!==276);const o=r.kind===272?Rke((t=r.importClause)==null?void 0:t.namedBindings)??r.moduleSpecifier:r.moduleReference,s={pos:r.getFirstToken().getStart(),end:o.pos};if(OS(s,i))return sb(s)}function Rke(e){var t;return An((t=ii(e,Hg))==null?void 0:t.elements,r=>{var i;return!r.propertyName&&GA(r.name.text)&&((i=xc(r.name.pos,e.getSourceFile(),e))==null?void 0:i.kind)!==28})}function Dke(e,t){return np(e)&&(e.isTypeOnly||t===e.name&&f5(t))}function Nke(e){if(!e_e(e.parent.parent.moduleSpecifier)||e.parent.name)return!1;if(Hg(e)){const t=Rke(e);return(t?e.elements.indexOf(t):e.elements.length)<2}return!0}function e_e(e){var t;return zl(e)?!0:!((t=ii(Ah(e)?e.expression:e,ls))!=null&&t.text)}function irt(e,t){if(!e)return;const r=Gn(e,o=>BE(o)||Cke(o)||ta(o)?"quit":(Ao(o)||gl(o))&&!t1(o.parent)),i=Gn(t,o=>BE(o)||Cke(o)||ta(o)?"quit":wi(o));return r||i}function Cke(e){return e.parent&&Gs(e.parent)&&(e.parent.body===e||e.kind===39)}function t_e(e,t,r=new Map){return i(e)||i(bu(e.exportSymbol||e,t));function i(o){return!!(o.flags&788968)||t.isUnknownSymbol(o)||!!(o.flags&1536)&&Rm(r,Ta(o))&&t.getExportsOfModule(o).some(s=>t_e(s,t,r))}}function ort(e,t){const r=bu(e,t).declarations;return!!Me(r)&&Zn(r,L5)}function Pke(e,t){if(t.length===0)return!0;let r=!1,i,o=0;const s=e.length;for(let l=0;l<s;l++){const u=e.charCodeAt(l),p=t.charCodeAt(o);if((u===p||u===art(p))&&(r||(r=i===void 0||97<=i&&i<=122&&65<=u&&u<=90||i===95&&u!==95),r&&o++,o===t.length))return!0;i=u}return!1}function art(e){return 97<=e&&e<=122?e-32:e}function srt(e){return e==="abstract"||e==="async"||e==="await"||e==="declare"||e==="module"||e==="namespace"||e==="type"}var zQ,n_e,zu,r_e,i_e,o_e,Pz,a_e,lrt=T({"src/services/completions.ts"(){si(),f_e(),zQ=100,n_e=1e3,zu={LocalDeclarationPriority:"10",LocationPriority:"11",OptionalMember:"12",MemberDeclaredBySpreadAssignment:"13",SuggestedClassMembers:"14",GlobalsOrKeywords:"15",AutoImportSuggestions:"16",ClassMemberSnippets:"17",JavascriptIdentifiers:"18",Deprecated(e){return"z"+e},ObjectLiteralProperty(e,t){return`${e}\0${t}\0`},SortBelow(e){return e+"1"}},r_e=(e=>(e.ThisProperty="ThisProperty/",e.ClassMemberSnippet="ClassMemberSnippet/",e.TypeOnlyAlias="TypeOnlyAlias/",e.ObjectLiteralMethodSnippet="ObjectLiteralMethodSnippet/",e.SwitchCases="SwitchCases/",e.ObjectLiteralMemberWithComma="ObjectLiteralMemberWithComma/",e))(r_e||{}),i_e=(e=>(e[e.ThisType=1]="ThisType",e[e.SymbolMember=2]="SymbolMember",e[e.Export=4]="Export",e[e.Promise=8]="Promise",e[e.Nullable=16]="Nullable",e[e.ResolvedExport=32]="ResolvedExport",e[e.TypeOnlyAlias=64]="TypeOnlyAlias",e[e.ObjectLiteralMethod=128]="ObjectLiteralMethod",e[e.Ignore=256]="Ignore",e[e.ComputedPropertyName=512]="ComputedPropertyName",e[e.SymbolMemberNoExport=2]="SymbolMemberNoExport",e[e.SymbolMemberExport=6]="SymbolMemberExport",e))(i_e||{}),o_e=(e=>(e[e.ObjectPropertyDeclaration=0]="ObjectPropertyDeclaration",e[e.Global=1]="Global",e[e.PropertyAccess=2]="PropertyAccess",e[e.MemberLike=3]="MemberLike",e[e.String=4]="String",e[e.None=5]="None",e))(o_e||{}),Pz=[],a_e=Td(()=>{const e=[];for(let t=83;t<=165;t++)e.push({name:fa(t),kind:"keyword",kindModifiers:"",sortText:zu.GlobalsOrKeywords});return e})}});function s_e(){const e=new Map;function t(r){const i=e.get(r.name);(!i||p_e[i.kind]<p_e[r.kind])&&e.set(r.name,r)}return{add:t,has:e.has.bind(e),values:e.values.bind(e)}}function crt(e,t,r,i,o,s,l,u,p){if(Bue(e,t)){const h=Irt(e,t,i,o);return h&&Mke(h)}if(CI(e,t,r)){if(!r||!ls(r))return;const h=kke(e,r,t,s,o,u);return urt(h,r,e,o,s,l,i,u,t,p)}}function urt(e,t,r,i,o,s,l,u,p,h){if(e===void 0)return;const m=fX(t);switch(e.kind){case 0:return Mke(e.paths);case 1:{const b=uG();return Yme(e.symbols,b,t,t,r,p,r,i,o,99,s,4,u,l,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,void 0,h),{isGlobalCompletion:!1,isMemberCompletion:!0,isNewIdentifierLocation:e.hasIndexSignature,optionalReplacementSpan:m,entries:b}}case 2:{const b=t.kind===15?96:uo(fc(t),"'")?39:34,A=e.types.map(I=>({name:og(I.value,b),kindModifiers:"",kind:"string",sortText:zu.LocationPriority,replacementSpan:pX(t)}));return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:e.isNewIdentifier,optionalReplacementSpan:m,entries:A}}default:return N.assertNever(e)}}function drt(e,t,r,i,o,s,l,u){if(!i||!ls(i))return;const p=kke(t,i,r,o,s,u);return p&&prt(e,i,p,t,o.getTypeChecker(),l)}function prt(e,t,r,i,o,s){switch(r.kind){case 0:{const l=An(r.paths,u=>u.name===e);return l&&Nz(e,Lke(l.extension),l.kind,[df(e)])}case 1:{const l=An(r.symbols,u=>u.name===e);return l&&Qme(l,l.name,o,i,t,s)}case 2:return An(r.types,l=>l.value===e)?Nz(e,"","string",[df(e)]):void 0;default:return N.assertNever(r)}}function Mke(e){return{isGlobalCompletion:!1,isMemberCompletion:!1,isNewIdentifierLocation:!0,entries:e.map(({name:o,kind:s,span:l,extension:u})=>({name:o,kind:s,kindModifiers:Lke(u),sortText:zu.LocationPriority,replacementSpan:l}))}}function Lke(e){switch(e){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case".d.mts":return".d.mts";case".mjs":return".mjs";case".mts":return".mts";case".d.cts":return".d.cts";case".cjs":return".cjs";case".cts":return".cts";case".tsbuildinfo":return N.fail("Extension .tsbuildinfo is unsupported.");case void 0:return"";default:return N.assertNever(e)}}function kke(e,t,r,i,o,s){const l=i.getTypeChecker(),u=l_e(t.parent);switch(u.kind){case 201:{const I=l_e(u.parent);return I.kind===205?{kind:0,paths:Wke(e,t,i,o,s)}:p(I)}case 303:return Oa(u.parent)&&u.name===t?_rt(l,u.parent):h()||h(0);case 212:{const{expression:I,argumentExpression:R}=u;return t===hs(R)?wke(l.getTypeAtLocation(I)):void 0}case 213:case 214:case 291:if(!Nrt(t)&&!Bp(u)){const I=o8.getArgumentInfoForCompletions(u.kind===291?u.parent:t,r,e,l);return I&&mrt(I.invocation,t,I,l)||h(0)}case 272:case 278:case 283:return{kind:0,paths:Wke(e,t,i,o,s)};case 296:const m=O5(l,u.parent.clauses),b=h();return b?{kind:2,types:b.types.filter(I=>!m.hasValue(I.value)),isNewIdentifier:!1}:void 0;default:return h()||h(0)}function p(m){switch(m.kind){case 233:case 183:{const I=Gn(u,R=>R.parent===m);return I?{kind:2,types:BQ(l.getTypeArgumentConstraint(I)),isNewIdentifier:!1}:void 0}case 199:const{indexType:b,objectType:A}=m;return sO(b,r)?wke(l.getTypeFromTypeNode(A)):void 0;case 192:{const I=p(l_e(m.parent));if(!I)return;const R=frt(m,u);return I.kind===1?{kind:1,symbols:I.symbols.filter(M=>!Nr(R,M.name)),hasIndexSignature:I.hasIndexSignature}:{kind:2,types:I.types.filter(M=>!Nr(R,M.value)),isNewIdentifier:!1}}default:return}}function h(m=4){const b=BQ(T5(t,l,m));if(b.length)return{kind:2,types:b,isNewIdentifier:!1}}}function l_e(e){switch(e.kind){case 196:return nk(e);case 217:return Bv(e);default:return e}}function frt(e,t){return Hi(e.types,r=>r!==t&&Zy(r)&&Ma(r.literal)?r.literal.text:void 0)}function mrt(e,t,r,i){let o=!1;const s=new Map,l=ud(e)?N.checkDefined(Gn(t.parent,F_)):t,u=i.getCandidateSignaturesForStringLiteralCompletions(e,l),p=Pi(u,h=>{if(!Yu(h)&&r.argumentCount>h.parameters.length)return;let m=h.getTypeParameterAtPosition(r.argumentIndex);if(ud(e)){const b=i.getTypeOfPropertyOfType(m,Dk(l.name));b&&(m=b)}return o=o||!!(m.flags&4),BQ(m,s)});return Me(p)?{kind:2,types:p,isNewIdentifier:o}:void 0}function wke(e){return e&&{kind:1,symbols:nr(e.getApparentProperties(),t=>!(t.valueDeclaration&&cd(t.valueDeclaration))),hasIndexSignature:kX(e)}}function _rt(e,t){const r=e.getContextualType(t);if(!r)return;const i=e.getContextualType(t,4);return{kind:1,symbols:OQ(r,i,t,e),hasIndexSignature:kX(r)}}function BQ(e,t=new Map){return e?(e=hX(e),e.isUnion()?Pi(e.types,r=>BQ(r,t)):e.isStringLiteral()&&!(e.flags&1024)&&Rm(t,e.value)?[e]:et):et}function S2(e,t,r){return{name:e,kind:t,extension:r}}function c_e(e){return S2(e,"directory",void 0)}function Oke(e,t,r){const i=Rrt(e,t),o=e.length===0?void 0:vu(t,e.length);return r.map(({name:s,kind:l,extension:u})=>s.includes(al)||s.includes(ZM)?{name:s,kind:l,extension:u,span:o}:{name:s,kind:l,extension:u,span:i})}function Wke(e,t,r,i,o){return Oke(t.text,t.getStart(e)+1,hrt(e,t,r,i,o))}function hrt(e,t,r,i,o){const s=Lu(t.text),l=ls(t)?r.getModeForUsageLocation(e,t):void 0,u=e.path,p=ai(u),h=r.getCompilerOptions(),m=r.getTypeChecker(),b=u_e(h,1,e,m,o,l);return Drt(s)||!h.baseUrl&&!h.paths&&(fp(s)||rre(s))?grt(s,p,h,i,u,b):Ert(s,p,l,h,i,b,m)}function u_e(e,t,r,i,o,s){return{extensionsToSearch:ia(vrt(e,i)),referenceKind:t,importingSourceFile:r,endingPreference:o==null?void 0:o.importModuleSpecifierEnding,resolutionMode:s}}function grt(e,t,r,i,o,s){return r.rootDirs?brt(r.rootDirs,e,t,s,r,i,o):zo(e8(e,t,s,i,!0,o).values())}function vrt(e,t){const r=t?Hi(t.getAmbientModules(),s=>{const l=s.name.slice(1,-1);if(!(!l.startsWith("*.")||l.includes("/")))return l.slice(1)}):[],i=[...YC(e),r],o=md(e);return m5(o)?Ek(e,i):i}function yrt(e,t,r,i){e=e.map(s=>Bc(ga(fp(s)?s:Qr(t,s))));const o=Ut(e,s=>bm(s,r,t,i)?r.substr(s.length):void 0);return DE([...e.map(s=>Qr(s,o)),r].map(s=>o0(s)),dS,Uu)}function brt(e,t,r,i,o,s,l){const u=o.project||s.getCurrentDirectory(),p=!(s.useCaseSensitiveFileNames&&s.useCaseSensitiveFileNames()),h=yrt(e,u,r,p);return DE(Pi(h,m=>zo(e8(t,m,i,s,!0,l).values())),(m,b)=>m.name===b.name&&m.kind===b.kind&&m.extension===b.extension)}function e8(e,t,r,i,o,s,l=s_e()){var u;e===void 0&&(e=""),e=Lu(e),kv(e)||(e=ai(e)),e===""&&(e="."+al),e=Bc(e);const p=Py(t,e),h=kv(p)?p:ai(p);if(!o){const I=sde(h,i);if(I){const M=jC(I,i).typesVersions;if(typeof M=="object"){const C=(u=OF(M))==null?void 0:u.paths;if(C){const O=ai(I),U=p.slice(Bc(O).length);if(zke(l,U,O,r,i,C))return l}}}}const m=!(i.useCaseSensitiveFileNames&&i.useCaseSensitiveFileNames());if(!D5(i,h))return l;const b=OX(i,h,r.extensionsToSearch,void 0,["./*"]);if(b)for(let I of b){if(I=ga(I),s&&Lg(I,s,t,m)===0)continue;const{name:R,extension:M}=Fke(ic(I),i.getCompilationSettings(),r,!1);l.add(S2(R,"script",M))}const A=R5(i,h);if(A)for(const I of A){const R=ic(ga(I));R!=="@types"&&l.add(c_e(R))}return l}function Fke(e,t,r,i){const o=m1.tryGetRealFileNameForNonJsDeclarationFileName(e);if(o)return{name:o,extension:jg(o)};if(r.referenceKind===0)return{name:e,extension:jg(e)};let s=Mw({importModuleSpecifierEnding:r.endingPreference},t,r.importingSourceFile).getAllowedEndingsInPreferredOrder(r.resolutionMode);if(i&&(s=s.filter(u=>u!==0&&u!==1)),s[0]===3){if(Tc(e,Lk))return{name:e,extension:jg(e)};const u=m1.tryGetJSExtensionForFile(e,t);return u?{name:S0(e,u),extension:u}:{name:e,extension:jg(e)}}if(!i&&(s[0]===0||s[0]===1)&&Tc(e,[".js",".jsx",".ts",".tsx",".d.ts"]))return{name:Id(e),extension:jg(e)};const l=m1.tryGetJSExtensionForFile(e,t);return l?{name:S0(e,l),extension:l}:{name:e,extension:jg(e)}}function zke(e,t,r,i,o,s){const l=p=>s[p],u=(p,h)=>{const m=WR(p),b=WR(h),A=typeof m=="object"?m.prefix.length:p.length,I=typeof b=="object"?b.prefix.length:h.length;return rl(I,A)};return Bke(e,!1,t,r,i,o,Xh(s),l,u)}function Bke(e,t,r,i,o,s,l,u,p){let h=[],m;for(const b of l){if(b===".")continue;const A=b.replace(/^\.\//,""),I=u(b);if(I){const R=WR(A);if(!R)continue;const M=typeof R=="object"&&z6(R,r);M&&(m===void 0||p(b,m)===-1)&&(m=b,h=h.filter(O=>!O.matchedPattern)),(typeof R=="string"||m===void 0||p(b,m)!==1)&&h.push({matchedPattern:M,results:Srt(A,I,r,i,o,t&&M,s).map(({name:O,kind:U,extension:K})=>S2(O,U,K))})}}return h.forEach(b=>b.results.forEach(A=>e.add(A))),m!==void 0}function Ert(e,t,r,i,o,s,l){const{baseUrl:u,paths:p}=i,h=s_e(),m=md(i);if(u){const A=ga(Qr(o.getCurrentDirectory(),u));e8(e,A,s,o,!1,void 0,h)}if(p){const A=x3(i,o);zke(h,e,A,s,o,p)}const b=Vke(e);for(const A of Art(e,b,l))h.add(S2(A,"external module name",void 0));if(Hke(o,i,t,b,s,h),m5(m)){let A=!1;if(b===void 0)for(const I of xrt(o,t)){const R=S2(I,"external module name",void 0);h.has(R.name)||(A=!0,h.add(R))}if(!A){let I=R=>{const M=Qr(R,"node_modules");D5(o,M)&&e8(e,M,s,o,!1,void 0,h)};if(b&&mW(i)){const R=I;I=M=>{const C=zc(e);C.shift();let O=C.shift();if(!O)return R(M);if(uo(O,"@")){const Z=C.shift();if(!Z)return R(M);O=Qr(O,Z)}const U=Qr(M,"node_modules",O),K=Qr(U,"package.json");if(AO(o,K)){const V=jC(K,o).exports;if(V){if(typeof V!="object"||V===null)return;const se=Xh(V),G=C.join("/")+(C.length&&kv(e)?"/":""),ne=ib(i,r);Bke(h,!0,G,U,s,o,se,he=>AA(Gke(V[he],ne)),Bq);return}}return R(M)}}Sm(t,I)}}return zo(h.values())}function Gke(e,t){if(typeof e=="string")return e;if(e&&typeof e=="object"&&!To(e)){for(const r in e)if(r==="default"||t.includes(r)||Cw(t,r)){const i=e[r];return Gke(i,t)}}}function Vke(e){return d_e(e)?kv(e)?e:ai(e):void 0}function Srt(e,t,r,i,o,s,l){if(!Al(e,"*"))return e.includes("*")?et:h(e,"script");const u=e.slice(0,e.length-1),p=TG(r,u);if(p===void 0)return e[e.length-2]==="/"?h(u,"directory"):Pi(t,b=>{var A;return(A=jke("",i,b,o,s,l))==null?void 0:A.map(({name:I,...R})=>({name:u+I,...R}))});return Pi(t,m=>jke(p,i,m,o,s,l));function h(m,b){return uo(m,r)?[{name:o0(m),kind:b,extension:void 0}]:et}}function jke(e,t,r,i,o,s){if(!s.readDirectory)return;const l=WR(r);if(l===void 0||Po(l))return;const u=Py(l.prefix),p=kv(l.prefix)?u:ai(u),h=kv(l.prefix)?"":ic(u),m=d_e(e),b=m?kv(e)?e:ai(e):void 0,A=m?Qr(p,h+b):p,I=ga(l.suffix),R=I&&I3("_"+I),M=R?[S0(I,R),I]:[I],C=ga(Qr(t,A)),O=m?C:Bc(C)+h,U=I?M.map(se=>"**/*"+se):["./*"],K=Hi(OX(s,C,i.extensionsToSearch,void 0,U),se=>{const G=V(se);if(G){if(d_e(G))return c_e(zc(Uke(G))[1]);const{name:ne,extension:he}=Fke(G,s.getCompilationSettings(),i,o);return S2(ne,"script",he)}}),Z=I?et:Hi(R5(s,C),se=>se==="node_modules"?void 0:c_e(se));return[...K,...Z];function V(se){return Ut(M,G=>{const ne=Trt(ga(se),O,G);return ne===void 0?void 0:Uke(ne)})}}function Trt(e,t,r){return uo(e,t)&&Al(e,r)?e.slice(t.length,e.length-r.length):void 0}function Uke(e){return e[0]===al?e.slice(1):e}function Art(e,t,r){const o=r.getAmbientModules().map(s=>tm(s.name)).filter(s=>uo(s,e)&&!s.includes("*"));if(t!==void 0){const s=Bc(t);return o.map(l=>QN(l,s))}return o}function Irt(e,t,r,i){const o=po(e,t),s=Yh(e.text,o.pos),l=s&&An(s,R=>t>=R.pos&&t<=R.end);if(!l)return;const u=e.text.slice(l.pos,t),p=qke.exec(u);if(!p)return;const[,h,m,b]=p,A=ai(e.path),I=m==="path"?e8(b,A,u_e(r,0,e),i,!0,e.path):m==="types"?Hke(i,r,A,Vke(b),u_e(r,1,e)):N.fail();return Oke(b,l.pos+h.length,zo(I.values()))}function Hke(e,t,r,i,o,s=s_e()){const l=new Map,u=N5(()=>OP(t,e))||et;for(const h of u)p(h);for(const h of WX(r,e)){const m=Qr(ai(h),"node_modules/@types");p(m)}return s;function p(h){if(D5(e,h))for(const m of R5(e,h)){const b=Pw(m);if(!(t.types&&!Nr(t.types,b)))if(i===void 0)l.has(b)||(s.add(S2(b,"external module name",void 0)),l.set(b,!0));else{const A=Qr(h,m),I=OU(i,b,Gv(e));I!==void 0&&e8(I,A,o,e,!1,void 0,s)}}}}function xrt(e,t){if(!e.readFile||!e.fileExists)return et;const r=[];for(const i of WX(t,e)){const o=jC(i,e);for(const s of Jke){const l=o[s];if(l)for(const u in l)xs(l,u)&&!uo(u,"@types/")&&r.push(u)}}return r}function Rrt(e,t){const r=Math.max(e.lastIndexOf(al),e.lastIndexOf(ZM)),i=r!==-1?r+1:0,o=e.length-i;return o===0||tf(e.substr(i,o),99)?void 0:vu(t+i,o)}function Drt(e){if(e&&e.length>=2&&e.charCodeAt(0)===46){const t=e.length>=3&&e.charCodeAt(1)===46?2:1,r=e.charCodeAt(t);return r===47||r===92}return!1}function d_e(e){return e.includes(al)}function Nrt(e){return la(e.parent)&&Xc(e.parent.arguments)===e&&Ve(e.parent.expression)&&e.parent.expression.escapedText==="require"}var p_e,qke,Jke,Crt=T({"src/services/stringCompletions.ts"(){mle(),si(),f_e(),p_e={directory:0,script:1,"external module name":2},qke=/^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\3"]*)$/,Jke=["dependencies","devDependencies","peerDependencies","optionalDependencies"]}}),GQ={};X(GQ,{getStringLiteralCompletionDetails:()=>drt,getStringLiteralCompletions:()=>crt});var Prt=T({"src/services/_namespaces/ts.Completions.StringCompletions.ts"(){Crt()}}),GI={};X(GI,{CompletionKind:()=>o_e,CompletionSource:()=>r_e,SortText:()=>zu,StringCompletions:()=>GQ,SymbolOriginInfoKind:()=>i_e,createCompletionDetails:()=>Nz,createCompletionDetailsForSymbol:()=>Qme,getCompletionEntriesFromSymbols:()=>Yme,getCompletionEntryDetails:()=>Bnt,getCompletionEntrySymbol:()=>Vnt,getCompletionsAtPosition:()=>vnt,getPropertiesForObjectExpression:()=>OQ,moduleSpecifierResolutionCacheAttemptLimit:()=>n_e,moduleSpecifierResolutionLimit:()=>zQ});var f_e=T({"src/services/_namespaces/ts.Completions.ts"(){lrt(),Prt()}});function m_e(e,t,r,i){const o=wrt(e,r,i);return(s,l,u)=>{const{directImports:p,indirectUsers:h}=Mrt(e,t,o,l,r,i);return{indirectUsers:h,...Lrt(p,s,l.exportKind,r,u)}}}function Mrt(e,t,r,{exportingModuleSymbol:i,exportKind:o},s,l){const u=PI(),p=PI(),h=[],m=!!i.globalExports,b=m?void 0:[];return I(i),{directImports:h,indirectUsers:A()};function A(){if(m)return e;if(i.declarations)for(const K of i.declarations)WE(K)&&t.has(K.getSourceFile().fileName)&&O(K);return b.map(jn)}function I(K){const Z=U(K);if(Z){for(const V of Z)if(u(V))switch(l&&l.throwIfCancellationRequested(),V.kind){case 213:if(Bp(V)){R(V);break}if(!m){const G=V.parent;if(o===2&&G.kind===260){const{name:ne}=G;if(ne.kind===80){h.push(ne);break}}}break;case 80:break;case 271:C(V,V.name,Zr(V,32),!1);break;case 272:h.push(V);const se=V.importClause&&V.importClause.namedBindings;se&&se.kind===274?C(V,se.name,!1,!0):!m&&WA(V)&&O(Mz(V));break;case 278:V.exportClause?V.exportClause.kind===280?O(Mz(V),!0):h.push(V):I(Brt(V,s));break;case 205:!m&&V.isTypeOf&&!V.qualifier&&M(V)&&O(V.getSourceFile(),!0),h.push(V);break;default:N.failBadSyntaxKind(V,"Unexpected import kind.")}}}function R(K){const Z=Gn(K,VQ)||K.getSourceFile();O(Z,!!M(K,!0))}function M(K,Z=!1){return Gn(K,V=>Z&&VQ(V)?"quit":Cm(V)&&bt(V.modifiers,oI))}function C(K,Z,V,se){if(o===2)se||h.push(K);else if(!m){const G=Mz(K);N.assert(G.kind===312||G.kind===267),V||krt(G,Z,s)?O(G,!0):O(G)}}function O(K,Z=!1){if(N.assert(!m),!p(K)||(b.push(K),!Z))return;const se=s.getMergedSymbol(K.symbol);if(!se)return;N.assert(!!(se.flags&1536));const G=U(se);if(G)for(const ne of G)ug(ne)||O(Mz(ne),!0)}function U(K){return r.get(Ta(K).toString())}}function Lrt(e,t,r,i,o){const s=[],l=[];function u(A,I){s.push([A,I])}if(e)for(const A of e)p(A);return{importSearches:s,singleReferences:l};function p(A){if(A.kind===271){h_e(A)&&h(A.name);return}if(A.kind===80){h(A);return}if(A.kind===205){if(A.qualifier){const M=Vp(A.qualifier);M.escapedText===Sl(t)&&l.push(M)}else r===2&&l.push(A.argument.literal);return}if(A.moduleSpecifier.kind!==11)return;if(A.kind===278){A.exportClause&&Pf(A.exportClause)&&m(A.exportClause);return}const{name:I,namedBindings:R}=A.importClause||{name:void 0,namedBindings:void 0};if(R)switch(R.kind){case 274:h(R.name);break;case 275:(r===0||r===1)&&m(R);break;default:N.assertNever(R)}if(I&&(r===1||r===2)&&(!o||I.escapedText===h5(t))){const M=i.getSymbolAtLocation(I);u(I,M)}}function h(A){r===2&&(!o||b(A.escapedText))&&u(A,i.getSymbolAtLocation(A))}function m(A){if(A)for(const I of A.elements){const{name:R,propertyName:M}=I;if(b((M||R).escapedText))if(M)l.push(M),(!o||R.escapedText===t.escapedName)&&u(R,i.getSymbolAtLocation(R));else{const C=I.kind===281&&I.propertyName?i.getExportSpecifierLocalTargetSymbol(I):i.getSymbolAtLocation(R);u(R,C)}}}function b(A){return A===t.escapedName||r!==0&&A==="default"}}function krt(e,t,r){const i=r.getSymbolAtLocation(t);return!!Xke(e,o=>{if(!Yl(o))return;const{exportClause:s,moduleSpecifier:l}=o;return!l&&s&&Pf(s)&&s.elements.some(u=>r.getExportSpecifierLocalTargetSymbol(u)===i)})}function Kke(e,t,r){var i;const o=[],s=e.getTypeChecker();for(const l of t){const u=r.valueDeclaration;if((u==null?void 0:u.kind)===312){for(const p of l.referencedFiles)e.getSourceFileFromReference(l,p)===u&&o.push({kind:"reference",referencingFile:l,ref:p});for(const p of l.typeReferenceDirectives){const h=(i=e.getResolvedTypeReferenceDirectives().get(p.fileName,p.resolutionMode||l.impliedNodeFormat))==null?void 0:i.resolvedTypeReferenceDirective;h!==void 0&&h.resolvedFileName===u.fileName&&o.push({kind:"reference",referencingFile:l,ref:p})}}Yke(l,(p,h)=>{s.getSymbolAtLocation(h)===r&&o.push($s(p)?{kind:"implicit",literal:h,referencingFile:l}:{kind:"import",literal:h})})}return o}function wrt(e,t,r){const i=new Map;for(const o of e)r&&r.throwIfCancellationRequested(),Yke(o,(s,l)=>{const u=t.getSymbolAtLocation(l);if(u){const p=Ta(u).toString();let h=i.get(p);h||i.set(p,h=[]),h.push(s)}});return i}function Xke(e,t){return Ue(e.kind===312?e.statements:e.body.statements,r=>t(r)||VQ(r)&&Ue(r.body&&r.body.statements,t))}function Yke(e,t){if(e.externalModuleIndicator||e.imports!==void 0)for(const r of e.imports)t(DC(r),r);else Xke(e,r=>{switch(r.kind){case 278:case 272:{const i=r;i.moduleSpecifier&&Ma(i.moduleSpecifier)&&t(i,i.moduleSpecifier);break}case 271:{const i=r;h_e(i)&&t(i,i.moduleReference.expression);break}}})}function $ke(e,t,r,i){return i?o():o()||s();function o(){var p;const{parent:h}=e,m=h.parent;if(t.exportSymbol)return h.kind===211?(p=t.declarations)!=null&&p.some(I=>I===h)&&mr(m)?A(m,!1):void 0:l(t.exportSymbol,u(h));{const I=Wrt(h,e);if(I&&Zr(I,32))return tu(I)&&I.moduleReference===e?i?void 0:{kind:0,symbol:r.getSymbolAtLocation(I.name)}:l(t,u(I));if(Th(h))return l(t,0);if(kl(h))return b(h);if(kl(m))return b(m);if(mr(h))return A(h,!0);if(mr(m))return A(m,!0);if(YS(h)||FH(h))return l(t,0)}function b(I){if(!I.symbol.parent)return;const R=I.isExportEquals?2:1;return{kind:1,symbol:t,exportInfo:{exportingModuleSymbol:I.symbol.parent,exportKind:R}}}function A(I,R){let M;switch(Bl(I)){case 1:M=0;break;case 2:M=2;break;default:return}const C=R?r.getSymbolAtLocation(PU(aa(I.left,ws))):t;return C&&l(C,M)}}function s(){if(!Frt(e))return;let h=r.getImmediateAliasedSymbol(t);if(!h||(h=zrt(h,r),h.escapedName==="export="&&(h=Ort(h,r),h===void 0)))return;const m=h5(h);if(m===void 0||m==="default"||m===t.escapedName)return{kind:0,symbol:h}}function l(p,h){const m=__e(p,h,r);return m&&{kind:1,symbol:p,exportInfo:m}}function u(p){return Zr(p,2048)?1:0}}function Ort(e,t){var r,i;if(e.flags&2097152)return t.getImmediateAliasedSymbol(e);const o=N.checkDefined(e.valueDeclaration);if(kl(o))return(r=ii(o.expression,x_))==null?void 0:r.symbol;if(mr(o))return(i=ii(o.right,x_))==null?void 0:i.symbol;if($i(o))return o.symbol}function Wrt(e,t){const r=wi(e)?e:Qa(e)?$x(e):void 0;return r?e.name!==t||c1(r.parent)?void 0:Ll(r.parent.parent)?r.parent.parent:void 0:e}function Frt(e){const{parent:t}=e;switch(t.kind){case 271:return t.name===e&&h_e(t);case 276:return!t.propertyName;case 273:case 274:return N.assert(t.name===e),!0;case 208:return lr(e)&&GE(t.parent.parent);default:return!1}}function __e(e,t,r){const i=e.parent;if(!i)return;const o=r.getMergedSymbol(i);return mO(o)?{exportingModuleSymbol:o,exportKind:t}:void 0}function zrt(e,t){if(e.declarations)for(const r of e.declarations){if(Ku(r)&&!r.propertyName&&!r.parent.parent.moduleSpecifier)return t.getExportSpecifierLocalTargetSymbol(r)||e;if(Fr(r)&&rg(r.expression)&&!Ji(r.name))return t.getSymbolAtLocation(r);if(rp(r)&&mr(r.parent.parent)&&Bl(r.parent.parent)===2)return t.getExportSpecifierLocalTargetSymbol(r.name)}return e}function Brt(e,t){return t.getMergedSymbol(Mz(e).symbol)}function Mz(e){if(e.kind===213)return e.getSourceFile();const{parent:t}=e;return t.kind===312?t:(N.assert(t.kind===268),aa(t.parent,VQ))}function VQ(e){return e.kind===267&&e.name.kind===11}function h_e(e){return e.moduleReference.kind===283&&e.moduleReference.expression.kind===11}var g_e,v_e,Grt=T({"src/services/importTracker.ts"(){si(),g_e=(e=>(e[e.Named=0]="Named",e[e.Default=1]="Default",e[e.ExportEquals=2]="ExportEquals",e))(g_e||{}),v_e=(e=>(e[e.Import=0]="Import",e[e.Export=1]="Export",e))(v_e||{})}});function mg(e,t=1){return{kind:t,node:e.name||e,context:Vrt(e)}}function y_e(e){return e&&e.kind===void 0}function Vrt(e){if(Ju(e))return dT(e);if(e.parent){if(!Ju(e.parent)&&!kl(e.parent)){if(lr(e)){const r=mr(e.parent)?e.parent:ws(e.parent)&&mr(e.parent.parent)&&e.parent.parent.left===e.parent?e.parent.parent:void 0;if(r&&Bl(r)!==0)return dT(r)}if(W_(e.parent)||a1(e.parent))return e.parent.parent;if(JS(e.parent)||o1(e.parent)||pC(e.parent))return e.parent;if(ls(e)){const r=$L(e);if(r){const i=Gn(r,o=>Ju(o)||qi(o)||iR(o));return Ju(i)?dT(i):i}}const t=Gn(e,Za);return t?dT(t.parent):void 0}if(e.parent.name===e||Ml(e.parent)||kl(e.parent)||(CA(e.parent)||Qa(e.parent))&&e.parent.propertyName===e||e.kind===90&&Zr(e.parent,2080))return dT(e.parent)}}function dT(e){if(e)switch(e.kind){case 260:return!Uc(e.parent)||e.parent.declarations.length!==1?e:Ll(e.parent.parent)?e.parent.parent:nR(e.parent.parent)?dT(e.parent.parent):e.parent;case 208:return dT(e.parent.parent);case 276:return e.parent.parent.parent;case 281:case 274:return e.parent.parent;case 273:case 280:return e.parent;case 226:return eu(e.parent)?e.parent:e;case 250:case 249:return{start:e.initializer,end:e.expression};case 303:case 304:return Zv(e.parent)?dT(Gn(e.parent,t=>mr(t)||nR(t))):e;case 255:return{start:An(e.getChildren(e.getSourceFile()),t=>t.kind===109),end:e.caseBlock};default:return e}}function b_e(e,t,r){if(!r)return;const i=y_e(r)?kz(r.start,t,r.end):kz(r,t);return i.start!==e.start||i.length!==e.length?{contextSpan:i}:void 0}function jrt(e,t,r,i,o){const s=Vd(i,o),l={use:1},u=VI.getReferencedSymbolsForNode(o,s,e,r,t,l),p=e.getTypeChecker(),h=VI.getAdjustedNode(s,l),m=Urt(h)?p.getSymbolAtLocation(h):void 0;return!u||!u.length?void 0:Hi(u,({definition:b,references:A})=>b&&{definition:p.runWithCancellationToken(t,I=>Jrt(b,I,s)),references:A.map(I=>Xrt(I,m))})}function Urt(e){return e.kind===90||!!NC(e)||ik(e)||e.kind===137&&Ml(e.parent)}function Hrt(e,t,r,i,o){const s=Vd(i,o);let l;const u=Qke(e,t,r,s,o);if(s.parent.kind===211||s.parent.kind===208||s.parent.kind===212||s.kind===108)l=u&&[...u];else if(u){const h=zM(u),m=new Map;for(;!h.isEmpty();){const b=h.dequeue();if(!Rm(m,as(b.node)))continue;l=xn(l,b);const A=Qke(e,t,r,b.node,b.node.pos);A&&h.enqueue(...A)}}const p=e.getTypeChecker();return wt(l,h=>$rt(h,p))}function Qke(e,t,r,i,o){if(i.kind===312)return;const s=e.getTypeChecker();if(i.parent.kind===304){const l=[];return VI.getReferenceEntriesForShorthandPropertyAssignment(i,s,u=>l.push(mg(u))),l}else if(i.kind===108||zd(i.parent)){const l=s.getSymbolAtLocation(i);return l.valueDeclaration&&[mg(l.valueDeclaration)]}else return Zke(o,i,e,r,t,{implementations:!0,use:1})}function qrt(e,t,r,i,o,s,l){return wt(ewe(VI.getReferencedSymbolsForNode(o,i,e,r,t,s)),u=>l(u,i,e.getTypeChecker()))}function Zke(e,t,r,i,o,s={},l=new Set(i.map(u=>u.fileName))){return ewe(VI.getReferencedSymbolsForNode(e,t,r,i,o,s,l))}function ewe(e){return e&&Pi(e,t=>t.references)}function Jrt(e,t,r){const i=(()=>{switch(e.type){case 0:{const{symbol:m}=e,{displayParts:b,kind:A}=twe(m,t,r),I=b.map(C=>C.text).join(""),R=m.declarations&&Xc(m.declarations),M=R?Mo(R)||R:r;return{...Lz(M),name:I,kind:A,displayParts:b,context:dT(R)}}case 1:{const{node:m}=e;return{...Lz(m),name:m.text,kind:"label",displayParts:[ip(m.text,17)]}}case 2:{const{node:m}=e,b=fa(m.kind);return{...Lz(m),name:b,kind:"keyword",displayParts:[{text:b,kind:"keyword"}]}}case 3:{const{node:m}=e,b=t.getSymbolAtLocation(m),A=b&&iy.getSymbolDisplayPartsDocumentationAndSymbolKind(t,b,m.getSourceFile(),aT(m),m).displayParts||[df("this")];return{...Lz(m),name:"this",kind:"var",displayParts:A}}case 4:{const{node:m}=e;return{...Lz(m),name:m.text,kind:"var",displayParts:[ip(fc(m),8)]}}case 5:return{textSpan:sb(e.reference),sourceFile:e.file,name:e.reference.fileName,kind:"string",displayParts:[ip(`"${e.reference.fileName}"`,8)]};default:return N.assertNever(e)}})(),{sourceFile:o,textSpan:s,name:l,kind:u,displayParts:p,context:h}=i;return{containerKind:"",containerName:"",fileName:o.fileName,kind:u,name:l,textSpan:s,displayParts:p,...b_e(s,o,h)}}function Lz(e){const t=e.getSourceFile();return{sourceFile:t,textSpan:kz(Za(e)?e.expression:e,t)}}function twe(e,t,r){const i=VI.getIntersectingMeaningFromDeclarations(r,e),o=e.declarations&&Xc(e.declarations)||r,{displayParts:s,symbolKind:l}=iy.getSymbolDisplayPartsDocumentationAndSymbolKind(t,e,o.getSourceFile(),o,o,i);return{displayParts:s,kind:l}}function Krt(e,t,r,i,o){return{...jQ(e),...i&&Yrt(e,t,r,o)}}function Xrt(e,t){const r=nwe(e);return t?{...r,isDefinition:e.kind!==0&&rwe(e.node,t)}:r}function nwe(e){const t=jQ(e);if(e.kind===0)return{...t,isWriteAccess:!1};const{kind:r,node:i}=e;return{...t,isWriteAccess:S_e(i),isInString:r===2?!0:void 0}}function jQ(e){if(e.kind===0)return{textSpan:e.textSpan,fileName:e.fileName};{const t=e.node.getSourceFile(),r=kz(e.node,t);return{textSpan:r,fileName:t.fileName,...b_e(r,t,e.context)}}}function Yrt(e,t,r,i){if(e.kind!==0&&Ve(t)){const{node:o,kind:s}=e,l=o.parent,u=t.text,p=rp(l);if(p||gO(l)&&l.name===o&&l.dotDotDotToken===void 0){const h={prefixText:u+": "},m={suffixText:": "+u};if(s===3)return h;if(s===4)return m;if(p){const b=l.parent;return Oa(b)&&mr(b.parent)&&rg(b.parent.left)?h:m}else return h}else if(np(l)&&!l.propertyName){const h=Ku(t.parent)?r.getExportSpecifierLocalTargetSymbol(t.parent):r.getSymbolAtLocation(t);return Nr(h.declarations,l)?{prefixText:u+" as "}:kf}else if(Ku(l)&&!l.propertyName)return t===e.node||r.getSymbolAtLocation(t)===r.getSymbolAtLocation(e.node)?{prefixText:u+" as "}:{suffixText:" as "+u}}if(e.kind!==0&&vp(e.node)&&ws(e.node.parent)){const o=bX(i);return{prefixText:o,suffixText:o}}return kf}function $rt(e,t){const r=jQ(e);if(e.kind!==0){const{node:i}=e;return{...r,...Qrt(i,t)}}else return{...r,kind:"",displayParts:[]}}function Qrt(e,t){const r=t.getSymbolAtLocation(Ju(e)&&e.name?e.name:e);return r?twe(r,t,e):e.kind===210?{kind:"interface",displayParts:[$u(21),df("object literal"),$u(22)]}:e.kind===231?{kind:"local class",displayParts:[$u(21),df("anonymous local class"),$u(22)]}:{kind:y1(e),displayParts:[]}}function Zrt(e){const t=jQ(e);if(e.kind===0)return{fileName:t.fileName,span:{textSpan:t.textSpan,kind:"reference"}};const r=S_e(e.node),i={textSpan:t.textSpan,kind:r?"writtenReference":"reference",isInString:e.kind===2?!0:void 0,...t.contextSpan&&{contextSpan:t.contextSpan}};return{fileName:t.fileName,span:i}}function kz(e,t,r){let i=e.getStart(t),o=(r||e).getEnd();return ls(e)&&o-i>2&&(N.assert(r===void 0),i+=1,o-=1),(r==null?void 0:r.kind)===269&&(o=r.getFullStart()),pc(i,o)}function E_e(e){return e.kind===0?e.textSpan:kz(e.node,e.node.getSourceFile())}function S_e(e){const t=NC(e);return!!t&&eit(t)||e.kind===90||HA(e)}function rwe(e,t){var r;if(!t)return!1;const i=NC(e)||(e.kind===90?e.parent:ik(e)||e.kind===137&&Ml(e.parent)?e.parent.parent:void 0),o=i&&mr(i)?i.left:void 0;return!!(i&&((r=t.declarations)!=null&&r.some(s=>s===i||s===o)))}function eit(e){if(e.flags&33554432)return!0;switch(e.kind){case 226:case 208:case 263:case 231:case 90:case 266:case 306:case 281:case 273:case 271:case 276:case 264:case 345:case 353:case 291:case 267:case 270:case 274:case 280:case 169:case 304:case 265:case 168:return!0;case 303:return!Zv(e.parent);case 262:case 218:case 176:case 174:case 177:case 178:return!!e.body;case 260:case 172:return!!e.initializer||c1(e.parent);case 173:case 171:case 355:case 348:return!1;default:return N.failBadSyntaxKind(e)}}var T_e,A_e,I_e,VI,tit=T({"src/services/findAllReferences.ts"(){si(),x_e(),T_e=(e=>(e[e.Symbol=0]="Symbol",e[e.Label=1]="Label",e[e.Keyword=2]="Keyword",e[e.This=3]="This",e[e.String=4]="String",e[e.TripleSlashReference=5]="TripleSlashReference",e))(T_e||{}),A_e=(e=>(e[e.Span=0]="Span",e[e.Node=1]="Node",e[e.StringLiteral=2]="StringLiteral",e[e.SearchedLocalFoundProperty=3]="SearchedLocalFoundProperty",e[e.SearchedPropertyFoundLocal=4]="SearchedPropertyFoundLocal",e))(A_e||{}),I_e=(e=>(e[e.Other=0]="Other",e[e.References=1]="References",e[e.Rename=2]="Rename",e))(I_e||{}),(e=>{function t(qe,mt,ft,Ct,le,Fe={},pt=new Set(Ct.map(j=>j.fileName))){var j,ot;if(mt=r(mt,Fe),$i(mt)){const _n=UD.getReferenceAtPosition(mt,qe,ft);if(!(_n!=null&&_n.file))return;const q=ft.getTypeChecker().getMergedSymbol(_n.file.symbol);if(q)return h(ft,q,!1,Ct,pt);const Oe=ft.getFileIncludeReasons();return Oe?[{definition:{type:5,reference:_n.reference,file:mt},references:o(_n.file,Oe,ft)||et}]:void 0}if(!Fe.implementations){const _n=b(mt,Ct,le);if(_n)return _n}const Rt=ft.getTypeChecker(),Ye=Rt.getSymbolAtLocation(Ml(mt)&&mt.parent.name||mt);if(!Ye){if(!Fe.implementations&&ls(mt)){if(g5(mt)){const _n=ft.getFileIncludeReasons(),q=(ot=(j=ft.getResolvedModuleFromModuleSpecifier(mt))==null?void 0:j.resolvedModule)==null?void 0:ot.resolvedFileName,Oe=q?ft.getSourceFile(q):void 0;if(Oe)return[{definition:{type:4,node:mt},references:o(Oe,_n,ft)||et}]}return Di(mt,Ct,Rt,le)}return}if(Ye.escapedName==="export=")return h(ft,Ye.parent,!1,Ct,pt);const _t=l(Ye,ft,Ct,le,Fe,pt);if(_t&&!(Ye.flags&33554432))return _t;const Vt=s(mt,Ye,Rt),vn=Vt&&l(Vt,ft,Ct,le,Fe,pt),fn=A(Ye,mt,Ct,pt,Rt,le,Fe);return u(ft,_t,fn,vn)}e.getReferencedSymbolsForNode=t;function r(qe,mt){return mt.use===1?qe=oX(qe):mt.use===2&&(qe=o5(qe)),qe}e.getAdjustedNode=r;function i(qe,mt,ft,Ct=new Set(ft.map(le=>le.fileName))){var le,Fe;const pt=(le=mt.getSourceFile(qe))==null?void 0:le.symbol;if(pt)return((Fe=h(mt,pt,!1,ft,Ct)[0])==null?void 0:Fe.references)||et;const j=mt.getFileIncludeReasons(),ot=mt.getSourceFile(qe);return ot&&j&&o(ot,j,mt)||et}e.getReferencesForFileName=i;function o(qe,mt,ft){let Ct;const le=mt.get(qe.path)||et;for(const Fe of le)if(w0(Fe)){const pt=ft.getSourceFileByPath(Fe.file),j=QP(ft,Fe);gD(j)&&(Ct=xn(Ct,{kind:0,fileName:pt.fileName,textSpan:sb(j)}))}return Ct}function s(qe,mt,ft){if(qe.parent&&Zk(qe.parent)){const Ct=ft.getAliasedSymbol(mt),le=ft.getMergedSymbol(Ct);if(Ct!==le)return le}}function l(qe,mt,ft,Ct,le,Fe){const pt=qe.flags&1536&&qe.declarations&&An(qe.declarations,$i);if(!pt)return;const j=qe.exports.get("export="),ot=h(mt,qe,!!j,ft,Fe);if(!j||!Fe.has(pt.fileName))return ot;const Rt=mt.getTypeChecker();return qe=bu(j,Rt),u(mt,ot,A(qe,void 0,ft,Fe,Rt,Ct,le))}function u(qe,...mt){let ft;for(const Ct of mt)if(!(!Ct||!Ct.length)){if(!ft){ft=Ct;continue}for(const le of Ct){if(!le.definition||le.definition.type!==0){ft.push(le);continue}const Fe=le.definition.symbol,pt=Gr(ft,ot=>!!ot.definition&&ot.definition.type===0&&ot.definition.symbol===Fe);if(pt===-1){ft.push(le);continue}const j=ft[pt];ft[pt]={definition:j.definition,references:j.references.concat(le.references).sort((ot,Rt)=>{const Ye=p(qe,ot),_t=p(qe,Rt);if(Ye!==_t)return rl(Ye,_t);const Vt=E_e(ot),vn=E_e(Rt);return Vt.start!==vn.start?rl(Vt.start,vn.start):rl(Vt.length,vn.length)})}}}return ft}function p(qe,mt){const ft=mt.kind===0?qe.getSourceFile(mt.fileName):mt.node.getSourceFile();return qe.getSourceFiles().indexOf(ft)}function h(qe,mt,ft,Ct,le){N.assert(!!mt.valueDeclaration);const Fe=Hi(Kke(qe,Ct,mt),j=>{if(j.kind==="import"){const ot=j.literal.parent;if(Zy(ot)){const Rt=aa(ot.parent,ug);if(ft&&!Rt.qualifier)return}return mg(j.literal)}else if(j.kind==="implicit"){const ot=j.literal.text!==Ky&&CP(j.referencingFile,Rt=>Rt.transformFlags&2?dg(Rt)||JS(Rt)||s1(Rt)?Rt:void 0:"skip")||j.referencingFile.statements[0]||j.referencingFile;return mg(ot)}else return{kind:0,fileName:j.referencingFile.fileName,textSpan:sb(j.ref)}});if(mt.declarations)for(const j of mt.declarations)switch(j.kind){case 312:break;case 267:le.has(j.getSourceFile().fileName)&&Fe.push(mg(j.name));break;default:N.assert(!!(mt.flags&33554432),"Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}const pt=mt.exports.get("export=");if(pt!=null&&pt.declarations)for(const j of pt.declarations){const ot=j.getSourceFile();if(le.has(ot.fileName)){const Rt=mr(j)&&Fr(j.left)?j.left.expression:kl(j)?N.checkDefined(vs(j,95,ot)):Mo(j)||j;Fe.push(mg(Rt))}}return Fe.length?[{definition:{type:0,symbol:mt},references:Fe}]:et}function m(qe){return qe.kind===148&&VS(qe.parent)&&qe.parent.operator===148}function b(qe,mt,ft){if(a2(qe.kind))return qe.kind===116&&pI(qe.parent)||qe.kind===148&&!m(qe)?void 0:Le(mt,qe.kind,ft,qe.kind===148?m:void 0);if(dR(qe.parent)&&qe.parent.name===qe)return ve(mt,ft);if(aI(qe)&&Rl(qe.parent))return[{definition:{type:2,node:qe},references:[mg(qe)]}];if(aO(qe)){const Ct=Z7(qe.parent,qe.text);return Ct&&pe(Ct.parent,Ct)}else if(YK(qe))return pe(qe.parent,qe);if(ID(qe))return Mn(qe,mt,ft);if(qe.kind===108)return Oi(qe)}function A(qe,mt,ft,Ct,le,Fe,pt){const j=mt&&M(qe,mt,le,!kn(pt))||qe,ot=mt?hi(mt,j):7,Rt=[],Ye=new U(ft,Ct,mt?R(mt):0,le,Fe,ot,pt,Rt),_t=!kn(pt)||!j.declarations?void 0:An(j.declarations,Ku);if(_t)At(_t.name,j,_t,Ye.createSearch(mt,qe,void 0),Ye,!0,!0);else if(mt&&mt.kind===90&&j.escapedName==="default"&&j.parent)vt(mt,j,Ye),K(mt,j,{exportingModuleSymbol:j.parent,exportKind:1},Ye);else{const Vt=Ye.createSearch(mt,j,void 0,{allSearchSymbols:mt?sn(j,mt,le,pt.use===2,!!pt.providePrefixAndSuffixTextForRename,!!pt.implementations):[j]});I(j,Ye,Vt)}return Rt}function I(qe,mt,ft){const Ct=he(qe);if(Ct)Ee(Ct,Ct.getSourceFile(),ft,mt,!($i(Ct)&&!Nr(mt.sourceFiles,Ct)));else for(const le of mt.sourceFiles)mt.cancellationToken.throwIfCancellationRequested(),G(le,ft,mt)}function R(qe){switch(qe.kind){case 176:case 137:return 1;case 80:if(ui(qe.parent))return N.assert(qe.parent.name===qe),2;default:return 0}}function M(qe,mt,ft,Ct){const{parent:le}=mt;return Ku(le)&&Ct?Se(mt,qe,le,ft):Ut(qe.declarations,Fe=>{if(!Fe.parent){if(qe.flags&33554432)return;N.fail(`Unexpected symbol at ${N.formatSyntaxKind(mt.kind)}: ${N.formatSymbol(qe)}`)}return Ep(Fe.parent)&&Qy(Fe.parent.parent)?ft.getPropertyOfType(ft.getTypeFromTypeNode(Fe.parent.parent),qe.name):void 0})}let C;(qe=>{qe[qe.None=0]="None",qe[qe.Constructor=1]="Constructor",qe[qe.Class=2]="Class"})(C||(C={}));function O(qe){if(!(qe.flags&33555968))return;const mt=qe.declarations&&An(qe.declarations,ft=>!$i(ft)&&!Xl(ft));return mt&&mt.symbol}class U{constructor(mt,ft,Ct,le,Fe,pt,j,ot){this.sourceFiles=mt,this.sourceFilesSet=ft,this.specialSearchKind=Ct,this.checker=le,this.cancellationToken=Fe,this.searchMeaning=pt,this.options=j,this.result=ot,this.inheritsFromCache=new Map,this.markSeenContainingTypeReference=PI(),this.markSeenReExportRHS=PI(),this.symbolIdToReferences=[],this.sourceFileToSeenSymbols=[]}includesSourceFile(mt){return this.sourceFilesSet.has(mt.fileName)}getImportSearches(mt,ft){return this.importTracker||(this.importTracker=m_e(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken)),this.importTracker(mt,ft,this.options.use===2)}createSearch(mt,ft,Ct,le={}){const{text:Fe=tm(Sl(MR(ft)||O(ft)||ft)),allSearchSymbols:pt=[ft]}=le,j=hl(Fe),ot=this.options.implementations&&mt?Sn(mt,ft,this.checker):void 0;return{symbol:ft,comingFrom:Ct,text:Fe,escapedText:j,parents:ot,allSearchSymbols:pt,includes:Rt=>Nr(pt,Rt)}}referenceAdder(mt){const ft=Ta(mt);let Ct=this.symbolIdToReferences[ft];return Ct||(Ct=this.symbolIdToReferences[ft]=[],this.result.push({definition:{type:0,symbol:mt},references:Ct})),(le,Fe)=>Ct.push(mg(le,Fe))}addStringOrCommentReference(mt,ft){this.result.push({definition:void 0,references:[{kind:0,fileName:mt,textSpan:ft}]})}markSearchedSymbols(mt,ft){const Ct=as(mt),le=this.sourceFileToSeenSymbols[Ct]||(this.sourceFileToSeenSymbols[Ct]=new Set);let Fe=!1;for(const pt of ft)Fe=Rv(le,Ta(pt))||Fe;return Fe}}function K(qe,mt,ft,Ct){const{importSearches:le,singleReferences:Fe,indirectUsers:pt}=Ct.getImportSearches(mt,ft);if(Fe.length){const j=Ct.referenceAdder(mt);for(const ot of Fe)V(ot,Ct)&&j(ot)}for(const[j,ot]of le)He(j.getSourceFile(),Ct.createSearch(j,ot,1),Ct);if(pt.length){let j;switch(ft.exportKind){case 0:j=Ct.createSearch(qe,mt,1);break;case 1:j=Ct.options.use===2?void 0:Ct.createSearch(qe,mt,1,{text:"default"});break}if(j)for(const ot of pt)G(ot,j,Ct)}}function Z(qe,mt,ft,Ct,le,Fe,pt,j){const ot=m_e(qe,new Set(qe.map(Vt=>Vt.fileName)),mt,ft),{importSearches:Rt,indirectUsers:Ye,singleReferences:_t}=ot(Ct,{exportKind:pt?1:0,exportingModuleSymbol:le},!1);for(const[Vt]of Rt)j(Vt);for(const Vt of _t)Ve(Vt)&&ug(Vt.parent)&&j(Vt);for(const Vt of Ye)for(const vn of fe(Vt,pt?"default":Fe)){const fn=mt.getSymbolAtLocation(vn),_n=bt(fn==null?void 0:fn.declarations,q=>!!ii(q,kl));Ve(vn)&&!CA(vn.parent)&&(fn===Ct||_n)&&j(vn)}}e.eachExportReference=Z;function V(qe,mt){return De(qe,mt)?mt.options.use!==2?!0:Ve(qe)?!(CA(qe.parent)&&qe.escapedText==="default"):!1:!1}function se(qe,mt){if(qe.declarations)for(const ft of qe.declarations){const Ct=ft.getSourceFile();He(Ct,mt.createSearch(ft,qe,0),mt,mt.includesSourceFile(Ct))}}function G(qe,mt,ft){JY(qe).get(mt.escapedText)!==void 0&&He(qe,mt,ft)}function ne(qe,mt){return Zv(qe.parent.parent)?mt.getPropertySymbolOfDestructuringAssignment(qe):void 0}function he(qe){const{declarations:mt,flags:ft,parent:Ct,valueDeclaration:le}=qe;if(le&&(le.kind===218||le.kind===231))return le;if(!mt)return;if(ft&8196){const j=An(mt,ot=>gp(ot,2)||cd(ot));return j?b0(j,263):void 0}if(mt.some(gO))return;const Fe=Ct&&!(qe.flags&262144);if(Fe&&!(mO(Ct)&&!Ct.globalExports))return;let pt;for(const j of mt){const ot=aT(j);if(pt&&pt!==ot||!ot||ot.kind===312&&!zp(ot))return;if(pt=ot,Os(pt)){let Rt;for(;Rt=Kj(pt);)pt=Rt}}return Fe?pt.getSourceFile():pt}function ye(qe,mt,ft,Ct=ft){return $(qe,mt,ft,()=>!0,Ct)||!1}e.isSymbolReferencedInFile=ye;function $(qe,mt,ft,Ct,le=ft){const Fe=mp(qe.parent,qe.parent.parent)?Ha(mt.getSymbolsOfParameterPropertyDeclaration(qe.parent,qe.text)):mt.getSymbolAtLocation(qe);if(Fe)for(const pt of fe(ft,Fe.name,le)){if(!Ve(pt)||pt===qe||pt.escapedText!==qe.escapedText)continue;const j=mt.getSymbolAtLocation(pt);if(j===Fe||mt.getShorthandAssignmentValueSymbol(pt.parent)===Fe||Ku(pt.parent)&&Se(pt,j,pt.parent,mt)===Fe){const ot=Ct(pt);if(ot)return ot}}}e.eachSymbolReferenceInFile=$;function Y(qe,mt){return nr(fe(mt,qe),le=>!!NC(le)).reduce((le,Fe)=>{const pt=Ct(Fe);return!bt(le.declarationNames)||pt===le.depth?(le.declarationNames.push(Fe),le.depth=pt):pt<le.depth&&(le.declarationNames=[Fe],le.depth=pt),le},{depth:1/0,declarationNames:[]}).declarationNames;function Ct(le){let Fe=0;for(;le;)le=aT(le),Fe++;return Fe}}e.getTopMostDeclarationNamesInFile=Y;function oe(qe,mt,ft,Ct){if(!qe.name||!Ve(qe.name))return!1;const le=N.checkDefined(ft.getSymbolAtLocation(qe.name));for(const Fe of mt)for(const pt of fe(Fe,le.name)){if(!Ve(pt)||pt===qe.name||pt.escapedText!==qe.name.escapedText)continue;const j=Q7(pt),ot=la(j.parent)&&j.parent.expression===j?j.parent:void 0,Rt=ft.getSymbolAtLocation(pt);if(Rt&&ft.getRootSymbols(Rt).some(Ye=>Ye===le)&&Ct(pt,ot))return!0}return!1}e.someSignatureUsage=oe;function fe(qe,mt,ft=qe){return Hi(Ne(qe,mt,ft),Ct=>{const le=Vd(qe,Ct);return le===qe?void 0:le})}function Ne(qe,mt,ft=qe){const Ct=[];if(!mt||!mt.length)return Ct;const le=qe.text,Fe=le.length,pt=mt.length;let j=le.indexOf(mt,ft.pos);for(;j>=0&&!(j>ft.end);){const ot=j+pt;(j===0||!s0(le.charCodeAt(j-1),99))&&(ot===Fe||!s0(le.charCodeAt(ot),99))&&Ct.push(j),j=le.indexOf(mt,j+pt+1)}return Ct}function pe(qe,mt){const ft=qe.getSourceFile(),Ct=mt.text,le=Hi(fe(ft,Ct,qe),Fe=>Fe===mt||aO(Fe)&&Z7(Fe,Ct)===mt?mg(Fe):void 0);return[{definition:{type:1,node:mt},references:le}]}function ie(qe,mt){switch(qe.kind){case 81:if(R0(qe.parent))return!0;case 80:return qe.text.length===mt.length;case 15:case 11:{const ft=qe;return(e5(ft)||eX(qe)||Rue(qe)||la(qe.parent)&&DS(qe.parent)&&qe.parent.arguments[1]===qe)&&ft.text.length===mt.length}case 9:return e5(qe)&&qe.text.length===mt.length;case 90:return mt.length===7;default:return!1}}function ve(qe,mt){const ft=Pi(qe,Ct=>(mt.throwIfCancellationRequested(),Hi(fe(Ct,"meta",Ct),le=>{const Fe=le.parent;if(dR(Fe))return mg(Fe)})));return ft.length?[{definition:{type:2,node:ft[0].node},references:ft}]:void 0}function Le(qe,mt,ft,Ct){const le=Pi(qe,Fe=>(ft.throwIfCancellationRequested(),Hi(fe(Fe,fa(mt),Fe),pt=>{if(pt.kind===mt&&(!Ct||Ct(pt)))return mg(pt)})));return le.length?[{definition:{type:2,node:le[0].node},references:le}]:void 0}function He(qe,mt,ft,Ct=!0){return ft.cancellationToken.throwIfCancellationRequested(),Ee(qe,qe,mt,ft,Ct)}function Ee(qe,mt,ft,Ct,le){if(Ct.markSearchedSymbols(mt,ft.allSearchSymbols))for(const Fe of Ne(mt,ft.text,qe))Pe(mt,Fe,ft,Ct,le)}function De(qe,mt){return!!(oT(qe)&mt.searchMeaning)}function Pe(qe,mt,ft,Ct,le){const Fe=Vd(qe,mt);if(!ie(Fe,ft.text)){!Ct.options.implementations&&(Ct.options.findInStrings&&CI(qe,mt)||Ct.options.findInComments&&Gue(qe,mt))&&Ct.addStringOrCommentReference(qe.fileName,vu(mt,ft.text.length));return}if(!De(Fe,Ct))return;let pt=Ct.checker.getSymbolAtLocation(Fe);if(!pt)return;const j=Fe.parent;if(np(j)&&j.propertyName===Fe)return;if(Ku(j)){N.assert(Fe.kind===80),At(Fe,pt,j,ft,Ct,le);return}if(fC(j)&&j.isNameFirst&&j.typeExpression&&XS(j.typeExpression.type)&&j.typeExpression.type.jsDocPropertyTags&&Me(j.typeExpression.type.jsDocPropertyTags)){We(j.typeExpression.type.jsDocPropertyTags,Fe,ft,Ct);return}const ot=li(ft,pt,Fe,Ct);if(!ot){Gt(pt,ft,Ct);return}switch(Ct.specialSearchKind){case 0:le&&vt(Fe,ot,Ct);break;case 1:$e(Fe,qe,ft,Ct);break;case 2:It(Fe,ft,Ct);break;default:N.assertNever(Ct.specialSearchKind)}lr(Fe)&&Qa(Fe.parent)&&GE(Fe.parent.parent.parent)&&(pt=Fe.parent.symbol,!pt)||at(Fe,pt,ft,Ct)}function We(qe,mt,ft,Ct){const le=Ct.referenceAdder(ft.symbol);vt(mt,ft.symbol,Ct),Ue(qe,Fe=>{xd(Fe.name)&&le(Fe.name.left)})}function At(qe,mt,ft,Ct,le,Fe,pt){N.assert(!pt||!!le.options.providePrefixAndSuffixTextForRename,"If alwaysGetReferences is true, then prefix/suffix text must be enabled");const{parent:j,propertyName:ot,name:Rt}=ft,Ye=j.parent,_t=Se(qe,mt,ft,le.checker);if(!pt&&!Ct.includes(_t))return;if(ot?qe===ot?(Ye.moduleSpecifier||Vt(),Fe&&le.options.use!==2&&le.markSeenReExportRHS(Rt)&&vt(Rt,N.checkDefined(ft.symbol),le)):le.markSeenReExportRHS(qe)&&Vt():le.options.use===2&&Rt.escapedText==="default"||Vt(),!kn(le.options)||pt){const fn=qe.escapedText==="default"||ft.name.escapedText==="default"?1:0,_n=N.checkDefined(ft.symbol),q=__e(_n,fn,le.checker);q&&K(qe,_n,q,le)}if(Ct.comingFrom!==1&&Ye.moduleSpecifier&&!ot&&!kn(le.options)){const vn=le.checker.getExportSpecifierLocalTargetSymbol(ft);vn&&se(vn,le)}function Vt(){Fe&&vt(qe,_t,le)}}function Se(qe,mt,ft,Ct){return je(qe,ft)&&Ct.getExportSpecifierLocalTargetSymbol(ft)||mt}function je(qe,mt){const{parent:ft,propertyName:Ct,name:le}=mt;return N.assert(Ct===qe||le===qe),Ct?Ct===qe:!ft.parent.moduleSpecifier}function at(qe,mt,ft,Ct){const le=$ke(qe,mt,Ct.checker,ft.comingFrom===1);if(!le)return;const{symbol:Fe}=le;le.kind===0?kn(Ct.options)||se(Fe,Ct):K(qe,Fe,le.exportInfo,Ct)}function Gt({flags:qe,valueDeclaration:mt},ft,Ct){const le=Ct.checker.getShorthandAssignmentValueSymbol(mt),Fe=mt&&Mo(mt);!(qe&33554432)&&Fe&&ft.includes(le)&&vt(Fe,le,Ct)}function vt(qe,mt,ft){const{kind:Ct,symbol:le}="kind"in mt?mt:{kind:void 0,symbol:mt};if(ft.options.use===2&&qe.kind===90)return;const Fe=ft.referenceAdder(le);ft.options.implementations?Qt(qe,Fe,ft):Fe(qe,Ct)}function $e(qe,mt,ft,Ct){r2(qe)&&vt(qe,ft.symbol,Ct);const le=()=>Ct.referenceAdder(ft.symbol);if(ui(qe.parent))N.assert(qe.kind===90||qe.parent.name===qe),tn(ft.symbol,mt,le());else{const Fe=Wa(qe);Fe&&(Pn(Fe,le()),hn(Fe,Ct))}}function It(qe,mt,ft){vt(qe,mt.symbol,ft);const Ct=qe.parent;if(ft.options.use===2||!ui(Ct))return;N.assert(Ct.name===qe);const le=ft.referenceAdder(mt.symbol);for(const Fe of Ct.members)MA(Fe)&&sa(Fe)&&Fe.body&&Fe.body.forEachChild(function pt(j){j.kind===110?le(j):!ea(j)&&!ui(j)&&j.forEachChild(pt)})}function tn(qe,mt,ft){const Ct=rn(qe);if(Ct&&Ct.declarations)for(const le of Ct.declarations){const Fe=vs(le,137,mt);N.assert(le.kind===176&&!!Fe),ft(Fe)}qe.exports&&qe.exports.forEach(le=>{const Fe=le.valueDeclaration;if(Fe&&Fe.kind===174){const pt=Fe.body;pt&&ma(pt,110,j=>{r2(j)&&ft(j)})}})}function rn(qe){return qe.members&&qe.members.get("__constructor")}function Pn(qe,mt){const ft=rn(qe.symbol);if(ft&&ft.declarations)for(const Ct of ft.declarations){N.assert(Ct.kind===176);const le=Ct.body;le&&ma(le,108,Fe=>{JK(Fe)&&mt(Fe)})}}function Xn(qe){return!!rn(qe.symbol)}function hn(qe,mt){if(Xn(qe))return;const ft=qe.symbol,Ct=mt.createSearch(void 0,ft,void 0);I(ft,mt,Ct)}function Qt(qe,mt,ft){if(Bg(qe)&&Qi(qe.parent)){mt(qe);return}if(qe.kind!==80)return;qe.parent.kind===304&&Io(qe,ft.checker,mt);const Ct=$t(qe);if(Ct){mt(Ct);return}const le=Gn(qe,j=>!xd(j.parent)&&!ji(j.parent)&&!yS(j.parent)),Fe=le.parent;if(w4(Fe)&&Fe.type===le&&ft.markSeenContainingTypeReference(Fe))if(zy(Fe))pt(Fe.initializer);else if(ea(Fe)&&Fe.body){const j=Fe.body;j.kind===241?zE(j,ot=>{ot.expression&&pt(ot.expression)}):pt(j)}else bS(Fe)&&pt(Fe.expression);function pt(j){_i(j)&&mt(j)}}function $t(qe){return Ve(qe)||Fr(qe)?$t(qe.parent):Kv(qe)?ii(qe.parent.parent,Ym(ui,hd)):void 0}function _i(qe){switch(qe.kind){case 217:return _i(qe.expression);case 219:case 218:case 210:case 231:case 209:return!0;default:return!1}}function ao(qe,mt,ft,Ct){if(qe===mt)return!0;const le=Ta(qe)+","+Ta(mt),Fe=ft.get(le);if(Fe!==void 0)return Fe;ft.set(le,!1);const pt=!!qe.declarations&&qe.declarations.some(j=>CC(j).some(ot=>{const Rt=Ct.getTypeAtLocation(ot);return!!Rt&&!!Rt.symbol&&ao(Rt.symbol,mt,ft,Ct)}));return ft.set(le,pt),pt}function Oi(qe){let mt=WL(qe,!1);if(!mt)return;let ft=256;switch(mt.kind){case 172:case 171:case 174:case 173:case 176:case 177:case 178:ft&=Uy(mt),mt=mt.parent;break;default:return}const Ct=mt.getSourceFile(),le=Hi(fe(Ct,"super",mt),Fe=>{if(Fe.kind!==108)return;const pt=WL(Fe,!1);return pt&&sa(pt)===!!ft&&pt.parent.symbol===mt.symbol?mg(Fe):void 0});return[{definition:{type:0,symbol:mt.symbol},references:le}]}function No(qe){return qe.kind===80&&qe.parent.kind===169&&qe.parent.name===qe}function Mn(qe,mt,ft){let Ct=Fd(qe,!1,!1),le=256;switch(Ct.kind){case 174:case 173:if(xm(Ct)){le&=Uy(Ct),Ct=Ct.parent;break}case 172:case 171:case 176:case 177:case 178:le&=Uy(Ct),Ct=Ct.parent;break;case 312:if(sc(Ct)||No(qe))return;case 262:case 218:break;default:return}const Fe=Pi(Ct.kind===312?mt:[Ct.getSourceFile()],j=>(ft.throwIfCancellationRequested(),fe(j,"this",$i(Ct)?j:Ct).filter(ot=>{if(!ID(ot))return!1;const Rt=Fd(ot,!1,!1);if(!x_(Rt))return!1;switch(Ct.kind){case 218:case 262:return Ct.symbol===Rt.symbol;case 174:case 173:return xm(Ct)&&Ct.symbol===Rt.symbol;case 231:case 263:case 210:return Rt.parent&&x_(Rt.parent)&&Ct.symbol===Rt.parent.symbol&&sa(Rt)===!!le;case 312:return Rt.kind===312&&!sc(Rt)&&!No(ot)}}))).map(j=>mg(j));return[{definition:{type:3,node:Ut(Fe,j=>Ao(j.node.parent)?j.node:void 0)||qe},references:Fe}]}function Di(qe,mt,ft,Ct){const le=i5(qe,ft),Fe=Pi(mt,pt=>(Ct.throwIfCancellationRequested(),Hi(fe(pt,qe.text),j=>{if(ls(j)&&j.text===qe.text)if(le){const ot=i5(j,ft);if(le!==ft.getStringType()&&(le===ot||Ar(j,ft)))return mg(j,2)}else return rI(j)&&!OS(j,pt)?void 0:mg(j,2)})));return[{definition:{type:4,node:qe},references:Fe}]}function Ar(qe,mt){if(yp(qe.parent))return mt.getPropertyOfType(mt.getTypeAtLocation(qe.parent.parent),qe.text)}function sn(qe,mt,ft,Ct,le,Fe){const pt=[];return tt(qe,mt,ft,Ct,!(Ct&&le),(j,ot,Rt)=>{Rt&&Rn(qe)!==Rn(Rt)&&(Rt=void 0),pt.push(Rt||ot||j)},()=>!Fe),pt}function tt(qe,mt,ft,Ct,le,Fe,pt){const j=UO(mt);if(j){const fn=ft.getShorthandAssignmentValueSymbol(mt.parent);if(fn&&Ct)return Fe(fn,void 0,void 0,3);const _n=ft.getContextualType(j.parent),q=_n&&Ut(fz(j,ft,_n,!0),_e=>Vt(_e,4));if(q)return q;const Oe=ne(mt,ft),Lt=Oe&&Fe(Oe,void 0,void 0,4);if(Lt)return Lt;const L=fn&&Fe(fn,void 0,void 0,3);if(L)return L}const ot=s(mt,qe,ft);if(ot){const fn=Fe(ot,void 0,void 0,1);if(fn)return fn}const Rt=Vt(qe);if(Rt)return Rt;if(qe.valueDeclaration&&mp(qe.valueDeclaration,qe.valueDeclaration.parent)){const fn=ft.getSymbolsOfParameterPropertyDeclaration(aa(qe.valueDeclaration,Ao),qe.name);return N.assert(fn.length===2&&!!(fn[0].flags&1)&&!!(fn[1].flags&4)),Vt(qe.flags&1?fn[1]:fn[0])}const Ye=fl(qe,281);if(!Ct||Ye&&!Ye.propertyName){const fn=Ye&&ft.getExportSpecifierLocalTargetSymbol(Ye);if(fn){const _n=Fe(fn,void 0,void 0,1);if(_n)return _n}}if(!Ct){let fn;return le?fn=gO(mt.parent)?v5(ft,mt.parent):void 0:fn=vn(qe,ft),fn&&Vt(fn,4)}if(N.assert(Ct),le){const fn=vn(qe,ft);return fn&&Vt(fn,4)}function Vt(fn,_n){return Ut(ft.getRootSymbols(fn),q=>Fe(fn,q,void 0,_n)||(q.parent&&q.parent.flags&96&&pt(q)?zt(q.parent,q.name,ft,Oe=>Fe(fn,q,Oe,_n)):void 0))}function vn(fn,_n){const q=fl(fn,208);if(q&&gO(q))return v5(_n,q)}}function zt(qe,mt,ft,Ct){const le=new Map;return Fe(qe);function Fe(pt){if(!(!(pt.flags&96)||!Rm(le,Ta(pt))))return Ut(pt.declarations,j=>Ut(CC(j),ot=>{const Rt=ft.getTypeAtLocation(ot),Ye=Rt&&Rt.symbol&&ft.getPropertyOfType(Rt,mt);return Rt&&Ye&&(Ut(ft.getRootSymbols(Ye),Ct)||Fe(Rt.symbol))}))}}function Rn(qe){return qe.valueDeclaration?!!(pd(qe.valueDeclaration)&256):!1}function li(qe,mt,ft,Ct){const{checker:le}=Ct;return tt(mt,ft,le,!1,Ct.options.use!==2||!!Ct.options.providePrefixAndSuffixTextForRename,(Fe,pt,j,ot)=>(j&&Rn(mt)!==Rn(j)&&(j=void 0),qe.includes(j||pt||Fe)?{symbol:pt&&!(xl(Fe)&6)?pt:Fe,kind:ot}:void 0),Fe=>!(qe.parents&&!qe.parents.some(pt=>ao(Fe.parent,pt,Ct.inheritsFromCache,le))))}function hi(qe,mt){let ft=oT(qe);const{declarations:Ct}=mt;if(Ct){let le;do{le=ft;for(const Fe of Ct){const pt=rO(Fe);pt&ft&&(ft|=pt)}}while(ft!==le)}return ft}e.getIntersectingMeaningFromDeclarations=hi;function Qi(qe){return qe.flags&33554432?!(hd(qe)||Nm(qe)):pR(qe)?zy(qe):Bs(qe)?!!qe.body:ui(qe)||SL(qe)}function Io(qe,mt,ft){const Ct=mt.getSymbolAtLocation(qe),le=mt.getShorthandAssignmentValueSymbol(Ct.valueDeclaration);if(le)for(const Fe of le.getDeclarations())rO(Fe)&1&&ft(Fe)}e.getReferenceEntriesForShorthandPropertyAssignment=Io;function ma(qe,mt,ft){Ho(qe,Ct=>{Ct.kind===mt&&ft(Ct),ma(Ct,mt,ft)})}function Wa(qe){return bU(Q7(qe).parent)}function Sn(qe,mt,ft){const Ct=AD(qe)?qe.parent:void 0,le=Ct&&ft.getTypeAtLocation(Ct.expression),Fe=Hi(le&&(le.isUnionOrIntersection()?le.types:le.symbol===mt.parent?void 0:[le]),pt=>pt.symbol&&pt.symbol.flags&96?pt.symbol:void 0);return Fe.length===0?void 0:Fe}function kn(qe){return qe.use===2&&qe.providePrefixAndSuffixTextForRename}})(VI||(VI={}))}}),Ws={};X(Ws,{Core:()=>VI,DefinitionKind:()=>T_e,EntryKind:()=>A_e,ExportKind:()=>g_e,FindReferencesUse:()=>I_e,ImportExport:()=>v_e,createImportTracker:()=>m_e,findModuleReferences:()=>Kke,findReferenceOrRenameEntries:()=>qrt,findReferencedSymbols:()=>jrt,getContextNode:()=>dT,getExportInfo:()=>__e,getImplementationsAtPosition:()=>Hrt,getImportOrExportSymbol:()=>$ke,getReferenceEntriesForNode:()=>Zke,getTextSpanOfEntry:()=>E_e,isContextWithStartAndEndNode:()=>y_e,isDeclarationOfSymbol:()=>rwe,isWriteAccessForReference:()=>S_e,nodeEntry:()=>mg,toContextSpan:()=>b_e,toHighlightSpan:()=>Zrt,toReferenceEntry:()=>nwe,toRenameLocation:()=>Krt});var x_e=T({"src/services/_namespaces/ts.FindAllReferences.ts"(){Grt(),tit()}});function iwe(e,t,r,i,o){var s;const l=awe(t,r,e),u=l&&[fit(l.reference.fileName,l.fileName,l.unverified)]||et;if(l!=null&&l.file)return u;const p=Vd(t,r);if(p===t)return;const{parent:h}=p,m=e.getTypeChecker();if(p.kind===164||Ve(p)&&cF(h)&&h.tagName===p)return rit(m,p)||et;if(aO(p)){const C=Z7(p.parent,p.text);return C?[R_e(m,C,"label",p.text,void 0)]:void 0}switch(p.kind){case 107:const C=Gn(p.parent,U=>Rl(U)?"quit":Bs(U));return C?[wz(m,C)]:void 0;case 90:if(!AP(p.parent))break;case 84:const O=Gn(p.parent,EP);if(O)return[pit(O,t)];break}if(p.kind===135){const C=Gn(p,U=>Bs(U));return C&&bt(C.modifiers,U=>U.kind===134)?[wz(m,C)]:void 0}if(p.kind===127){const C=Gn(p,U=>Bs(U));return C&&C.asteriskToken?[wz(m,C)]:void 0}if(aI(p)&&Rl(p.parent)){const C=p.parent.parent,{symbol:O,failedAliasResolution:U}=UQ(C,m,o),K=nr(C.members,Rl),Z=O?m.symbolToString(O,C):"",V=p.getSourceFile();return wt(K,se=>{let{pos:G}=L_(se);return G=ka(V.text,G),R_e(m,se,"constructor","static {}",Z,!1,U,{start:G,length:6})})}let{symbol:b,failedAliasResolution:A}=UQ(p,m,o),I=p;if(i&&A){const C=Ue([p,...(b==null?void 0:b.declarations)||et],U=>Gn(U,vie)),O=C&&vR(C);O&&({symbol:b,failedAliasResolution:A}=UQ(O,m,o),I=O)}if(!b&&g5(I)){const C=(s=e.getResolvedModuleFromModuleSpecifier(I))==null?void 0:s.resolvedModule;if(C)return[{name:I.text,fileName:C.resolvedFileName,containerName:void 0,containerKind:void 0,kind:"script",textSpan:vu(0,0),failedAliasResolution:A,isAmbient:Su(C.resolvedFileName),unverified:I!==p}]}if(!b)return So(u,cit(p,m));if(i&&Zn(b.declarations,C=>C.getSourceFile().fileName===t.fileName))return;const R=_it(m,p);if(R&&!(ud(p.parent)&&hit(R))){const C=wz(m,R,A);if(m.getRootSymbols(b).some(O=>nit(O,R)))return[C];{const O=T2(m,b,p,A,R)||et;return p.kind===108?[C,...O]:[...O,C]}}if(p.parent.kind===304){const C=m.getShorthandAssignmentValueSymbol(b.valueDeclaration),O=C!=null&&C.declarations?C.declarations.map(U=>n8(U,m,C,p,!1,A)):et;return So(O,owe(m,p))}if(oc(p)&&Qa(h)&&am(h.parent)&&p===(h.propertyName||h.name)){const C=hO(p),O=m.getTypeAtLocation(h.parent);return C===void 0?et:Pi(O.isUnion()?O.types:[O],U=>{const K=U.getProperty(C);return K&&T2(m,K,p)})}const M=owe(m,p);return So(u,M.length?M:T2(m,b,p,A))}function nit(e,t){var r;return e===t.symbol||e===t.symbol.parent||Lc(t.parent)||!wE(t.parent)&&e===((r=ii(t.parent,x_))==null?void 0:r.symbol)}function owe(e,t){const r=UO(t);if(r){const i=r&&e.getContextualType(r.parent);if(i)return Pi(fz(r,e,i,!1),o=>T2(e,o,t))}return et}function rit(e,t){const r=Gn(t,$c);if(!(r&&r.name))return;const i=Gn(r,ui);if(!i)return;const o=D_(i);if(!o)return;const s=hs(o.expression),l=Zc(s)?s.symbol:e.getSymbolAtLocation(s);if(!l)return;const u=Vi(lR(r.name)),p=mc(r)?e.getPropertyOfType(e.getTypeOfSymbol(l),u):e.getPropertyOfType(e.getDeclaredTypeOfSymbol(l),u);if(p)return T2(e,p,t)}function awe(e,t,r){var i,o;const s=A2(e.referencedFiles,t);if(s){const p=r.getSourceFileFromReference(e,s);return p&&{reference:s,fileName:p.fileName,file:p,unverified:!1}}const l=A2(e.typeReferenceDirectives,t);if(l){const p=(i=r.getResolvedTypeReferenceDirectives().get(l.fileName,l.resolutionMode||e.impliedNodeFormat))==null?void 0:i.resolvedTypeReferenceDirective,h=p&&r.getSourceFile(p.resolvedFileName);return h&&{reference:l,fileName:h.fileName,file:h,unverified:!1}}const u=A2(e.libReferenceDirectives,t);if(u){const p=r.getLibFileFromReference(u);return p&&{reference:u,fileName:p.fileName,file:p,unverified:!1}}if(e.imports.length||e.moduleAugmentations.length){const p=xD(e,t);let h;if(g5(p)&&Yc(p.text)&&(h=r.getResolvedModuleFromModuleSpecifier(p))){const m=(o=h.resolvedModule)==null?void 0:o.resolvedFileName,b=m||Py(ai(e.fileName),p.text);return{file:r.getSourceFile(b),fileName:b,reference:{pos:p.getStart(),end:p.getEnd(),fileName:p.text},unverified:!m}}}}function iit(e,t){const r=t.symbol.name;if(!N_e.has(r))return!1;const i=e.resolveName(r,void 0,788968,!1);return!!i&&i===t.target.symbol}function swe(e,t){if(!t.aliasSymbol)return!1;const r=t.aliasSymbol.name;if(!N_e.has(r))return!1;const i=e.resolveName(r,void 0,788968,!1);return!!i&&i===t.aliasSymbol}function oit(e,t,r,i){var o,s;if(Wr(t)&4&&iit(e,t))return t8(e.getTypeArguments(t)[0],e,r,i);if(swe(e,t)&&t.aliasTypeArguments)return t8(t.aliasTypeArguments[0],e,r,i);if(Wr(t)&32&&t.target&&swe(e,t.target)){const l=(s=(o=t.aliasSymbol)==null?void 0:o.declarations)==null?void 0:s[0];if(l&&Nm(l)&&Cf(l.type)&&l.type.typeArguments)return t8(e.getTypeAtLocation(l.type.typeArguments[0]),e,r,i)}return[]}function ait(e,t,r){const i=Vd(t,r);if(i===t)return;if(dR(i.parent)&&i.parent.name===i)return t8(e.getTypeAtLocation(i.parent),e,i.parent,!1);const{symbol:o,failedAliasResolution:s}=UQ(i,e,!1);if(!o)return;const l=e.getTypeOfSymbolAtLocation(o,i),u=sit(o,l,e),p=u&&t8(u,e,i,s),[h,m]=p&&p.length!==0?[u,p]:[l,t8(l,e,i,s)];return m.length?[...oit(e,h,i,s),...m]:!(o.flags&111551)&&o.flags&788968?T2(e,bu(o,e),i,s):void 0}function t8(e,t,r,i){return Pi(e.isUnion()&&!(e.flags&32)?e.types:[e],o=>o.symbol&&T2(t,o.symbol,r,i))}function sit(e,t,r){if(t.symbol===e||e.valueDeclaration&&t.symbol&&wi(e.valueDeclaration)&&e.valueDeclaration.initializer===t.symbol.valueDeclaration){const i=t.getCallSignatures();if(i.length===1)return r.getReturnTypeOfSignature(Ha(i))}}function lit(e,t,r){const i=iwe(e,t,r);if(!i||i.length===0)return;const o=A2(t.referencedFiles,r)||A2(t.typeReferenceDirectives,r)||A2(t.libReferenceDirectives,r);if(o)return{definitions:i,textSpan:sb(o)};const s=Vd(t,r),l=vu(s.getStart(),s.getWidth());return{definitions:i,textSpan:l}}function cit(e,t){return Hi(t.getIndexInfosAtLocation(e),r=>r.declaration&&wz(t,r.declaration))}function UQ(e,t,r){const i=t.getSymbolAtLocation(e);let o=!1;if(i!=null&&i.declarations&&i.flags&2097152&&!r&&uit(e,i.declarations[0])){const s=t.getAliasedSymbol(i);if(s.declarations)return{symbol:s};o=!0}return{symbol:i,failedAliasResolution:o}}function uit(e,t){return e.kind!==80?!1:e.parent===t?!0:t.kind!==274}function dit(e){if(!RC(e))return!1;const t=Gn(e,r=>Lc(r)?!0:RC(r)?!1:"quit");return!!t&&Bl(t)===5}function T2(e,t,r,i,o){const s=nr(t.declarations,b=>b!==o),l=nr(s,b=>!dit(b)),u=bt(l)?l:s;return p()||h()||wt(u,b=>n8(b,e,t,r,!1,i));function p(){if(t.flags&32&&!(t.flags&19)&&(r2(r)||r.kind===137)){const b=An(s,ui)||N.fail("Expected declaration to have at least one class-like declaration");return m(b.members,!0)}}function h(){return KK(r)||tX(r)?m(s,!1):void 0}function m(b,A){if(!b)return;const I=b.filter(A?Ml:ea),R=I.filter(M=>!!M.body);return I.length?R.length!==0?R.map(M=>n8(M,e,t,r)):[n8(Ya(I),e,t,r,!1,i)]:void 0}}function n8(e,t,r,i,o,s){const l=t.symbolToString(r),u=iy.getSymbolKind(t,r,i),p=r.parent?t.symbolToString(r.parent,i):"";return R_e(t,e,u,l,p,o,s)}function R_e(e,t,r,i,o,s,l,u){const p=t.getSourceFile();if(!u){const h=Mo(t)||t;u=Nd(h,p)}return{fileName:p.fileName,textSpan:u,kind:r,name:i,containerKind:void 0,containerName:o,...Ws.toContextSpan(u,p,Ws.getContextNode(t)),isLocal:!D_e(e,t),isAmbient:!!(t.flags&33554432),unverified:s,failedAliasResolution:l}}function pit(e,t){const r=Ws.getContextNode(e),i=Nd(y_e(r)?r.start:r,t);return{fileName:t.fileName,textSpan:i,kind:"keyword",name:"switch",containerKind:void 0,containerName:"",...Ws.toContextSpan(i,t,r),isLocal:!0,isAmbient:!1,unverified:!1,failedAliasResolution:void 0}}function D_e(e,t){if(e.isDeclarationVisible(t))return!0;if(!t.parent)return!1;if(zy(t.parent)&&t.parent.initializer===t)return D_e(e,t.parent);switch(t.kind){case 172:case 177:case 178:case 174:if(gp(t,2))return!1;case 176:case 303:case 304:case 210:case 231:case 219:case 218:return D_e(e,t.parent);default:return!1}}function wz(e,t,r){return n8(t,e,t.symbol,t,!1,r)}function A2(e,t){return An(e,r=>sL(r,t))}function fit(e,t,r){return{fileName:t,textSpan:pc(0,0),kind:"script",name:e,containerName:void 0,containerKind:void 0,unverified:r}}function mit(e){const t=Gn(e,i=>!AD(i)),r=t==null?void 0:t.parent;return r&&wE(r)&&o3(r)===t?r:void 0}function _it(e,t){const r=mit(t),i=r&&e.getResolvedSignature(r);return ii(i&&i.declaration,o=>ea(o)&&!Eh(o))}function hit(e){switch(e.kind){case 176:case 185:case 180:return!0;default:return!1}}var N_e,git=T({"src/services/goToDefinition.ts"(){si(),x_e(),N_e=new Set(["Array","ArrayLike","ReadonlyArray","Promise","PromiseLike","Iterable","IterableIterator","AsyncIterable","Set","WeakSet","ReadonlySet","Map","WeakMap","ReadonlyMap","Partial","Required","Readonly","Pick","Omit"])}}),UD={};X(UD,{createDefinitionInfo:()=>n8,findReferenceInPosition:()=>A2,getDefinitionAndBoundSpan:()=>lit,getDefinitionAtPosition:()=>iwe,getReferenceAtPosition:()=>awe,getTypeDefinitionAtPosition:()=>ait});var vit=T({"src/services/_namespaces/ts.GoToDefinition.ts"(){git()}});function yit(e){return e.includeInlayParameterNameHints==="literals"||e.includeInlayParameterNameHints==="all"}function bit(e){return e.includeInlayParameterNameHints==="literals"}function lwe(e){return e.interactiveInlayHints===!0}function Eit(e){const{file:t,program:r,span:i,cancellationToken:o,preferences:s}=e,l=t.text,u=r.getCompilerOptions(),p=uf(t,s),h=r.getTypeChecker(),m=[];return b(t),m;function b(pe){if(!(!pe||pe.getFullWidth()===0)){switch(pe.kind){case 267:case 263:case 264:case 262:case 231:case 218:case 174:case 219:o.throwIfCancellationRequested()}if(v4(i,pe.pos,pe.getFullWidth())&&!(ji(pe)&&!Kv(pe)))return s.includeInlayVariableTypeHints&&wi(pe)||s.includeInlayPropertyDeclarationTypeHints&&Jo(pe)?U(pe):s.includeInlayEnumMemberValueHints&&u1(pe)?C(pe):yit(s)&&(la(pe)||r1(pe))?K(pe):(s.includeInlayFunctionParameterTypeHints&&Bs(pe)&&iW(pe)&&he(pe),s.includeInlayFunctionLikeReturnTypeHints&&A(pe)&&G(pe)),Ho(pe,b)}}function A(pe){return Gs(pe)||Os(pe)||Ac(pe)||ql(pe)||rf(pe)}function I(pe,ie,ve,Le){let He=`${Le?"...":""}${pe}`,Ee;lwe(s)?(Ee=[Ne(He,ie),{text:":"}],He=""):He+=":",m.push({text:He,position:ve,kind:"Parameter",whitespaceAfter:!0,displayParts:Ee})}function R(pe,ie){m.push({text:typeof pe=="string"?`: ${pe}`:"",displayParts:typeof pe=="string"?void 0:[{text:": "},...pe],position:ie,kind:"Type",whitespaceBefore:!0})}function M(pe,ie){m.push({text:`= ${pe}`,position:ie,kind:"Enum",whitespaceBefore:!0})}function C(pe){if(pe.initializer)return;const ie=h.getConstantValue(pe);ie!==void 0&&M(ie.toString(),pe.end)}function O(pe){return pe.symbol&&pe.symbol.flags&1536}function U(pe){if(!pe.initializer||ta(pe.name)||wi(pe)&&!fe(pe)||yu(pe))return;const ve=h.getTypeAtLocation(pe);if(O(ve))return;const Le=Y(ve);if(Le){const He=typeof Le=="string"?Le:Le.map(De=>De.text).join("");if(s.includeInlayVariableTypeHintsWhenTypeMatchesName===!1&&i0(pe.name.getText(),He))return;R(Le,pe.name.end)}}function K(pe){const ie=pe.arguments;if(!ie||!ie.length)return;const ve=[],Le=h.getResolvedSignatureForSignatureHelp(pe,ve);if(!Le||!ve.length)return;let He=0;for(const Ee of ie){const De=hs(Ee);if(bit(s)&&!se(De)){He++;continue}let Pe=0;if(e_(De)){const At=h.getTypeAtLocation(De.expression);if(h.isTupleType(At)){const{elementFlags:Se,fixedLength:je}=At.target;if(je===0)continue;const at=Gr(Se,vt=>!(vt&1));(at<0?je:at)>0&&(Pe=at<0?je:at)}}const We=h.getParameterIdentifierInfoAtPosition(Le,He);if(He=He+(Pe||1),We){const{parameter:At,parameterName:Se,isRestParameter:je}=We;if(!(s.includeInlayParameterNameHintsWhenArgumentMatchesName||!Z(De,Se))&&!je)continue;const Gt=Vi(Se);if(V(De,Gt))continue;I(Gt,At,Ee.getStart(),je)}}}function Z(pe,ie){return Ve(pe)?pe.text===ie:Fr(pe)?pe.name.text===ie:!1}function V(pe,ie){if(!tf(ie,u.target,yk(t.scriptKind)))return!1;const ve=Yh(l,pe.pos);if(!(ve!=null&&ve.length))return!1;const Le=cwe(ie);return bt(ve,He=>Le.test(l.substring(He.pos,He.end)))}function se(pe){switch(pe.kind){case 224:{const ie=pe.operand;return kE(ie)||Ve(ie)&&iP(ie.escapedText)}case 112:case 97:case 106:case 15:case 228:return!0;case 80:{const ie=pe.escapedText;return oe(ie)||iP(ie)}}return kE(pe)}function G(pe){if(Gs(pe)&&!vs(pe,21,t)||nm(pe)||!pe.body)return;const ve=h.getSignatureFromDeclaration(pe);if(!ve)return;const Le=h.getReturnTypeOfSignature(ve);if(O(Le))return;const He=Y(Le);He&&R(He,ne(pe))}function ne(pe){const ie=vs(pe,22,t);return ie?ie.end:pe.parameters.end}function he(pe){const ie=h.getSignatureFromDeclaration(pe);if(ie)for(let ve=0;ve<pe.parameters.length&&ve<ie.parameters.length;++ve){const Le=pe.parameters[ve];if(!fe(Le)||yu(Le))continue;const Ee=ye(ie.parameters[ve]);Ee&&R(Ee,Le.questionToken?Le.questionToken.end:Le.name.end)}}function ye(pe){const ie=pe.valueDeclaration;if(!ie||!Ao(ie))return;const ve=h.getTypeOfSymbolAtLocation(pe,ie);if(!O(ve))return Y(ve)}function $(pe){const ve=g1();return yC(Le=>{const He=h.typeToTypeNode(pe,void 0,71286784);N.assertIsDefined(He,"should always get typenode"),ve.writeNode(4,He,t,Le)})}function Y(pe){if(!lwe(s))return $(pe);const ve=h.typeToTypeNode(pe,void 0,71286784);N.assertIsDefined(ve,"should always get typenode");const Le=[];return He(ve),Le;function He(We){var At,Se;if(!We)return;const je=fa(We.kind);if(je){Le.push({text:je});return}if(kE(We)){Le.push({text:Pe(We)});return}switch(We.kind){case 80:N.assertNode(We,Ve);const at=Sr(We),Gt=We.symbol&&We.symbol.declarations&&We.symbol.declarations.length&&Mo(We.symbol.declarations[0]);Gt?Le.push(Ne(at,Gt)):Le.push({text:at});break;case 166:N.assertNode(We,xd),He(We.left),Le.push({text:"."}),He(We.right);break;case 182:N.assertNode(We,Kk),We.assertsModifier&&Le.push({text:"asserts "}),He(We.parameterName),We.type&&(Le.push({text:" is "}),He(We.type));break;case 183:N.assertNode(We,Cf),He(We.typeName),We.typeArguments&&(Le.push({text:"<"}),De(We.typeArguments,", "),Le.push({text:">"}));break;case 168:N.assertNode(We,gl),We.modifiers&&De(We.modifiers," "),He(We.name),We.constraint&&(Le.push({text:" extends "}),He(We.constraint)),We.default&&(Le.push({text:" = "}),He(We.default));break;case 169:N.assertNode(We,Ao),We.modifiers&&De(We.modifiers," "),We.dotDotDotToken&&Le.push({text:"..."}),He(We.name),We.questionToken&&Le.push({text:"?"}),We.type&&(Le.push({text:": "}),He(We.type));break;case 185:N.assertNode(We,HR),Le.push({text:"new "}),Ee(We),Le.push({text:" => "}),He(We.type);break;case 186:N.assertNode(We,lI),Le.push({text:"typeof "}),He(We.exprName),We.typeArguments&&(Le.push({text:"<"}),De(We.typeArguments,", "),Le.push({text:">"}));break;case 187:N.assertNode(We,Ep),Le.push({text:"{"}),We.members.length&&(Le.push({text:" "}),De(We.members,"; "),Le.push({text:" "})),Le.push({text:"}"});break;case 188:N.assertNode(We,Xk),He(We.elementType),Le.push({text:"[]"});break;case 189:N.assertNode(We,cI),Le.push({text:"["}),De(We.elements,", "),Le.push({text:"]"});break;case 202:N.assertNode(We,qR),We.dotDotDotToken&&Le.push({text:"..."}),He(We.name),We.questionToken&&Le.push({text:"?"}),Le.push({text:": "}),He(We.type);break;case 190:N.assertNode(We,tF),He(We.type),Le.push({text:"?"});break;case 191:N.assertNode(We,nF),Le.push({text:"..."}),He(We.type);break;case 192:N.assertNode(We,Qy),De(We.types," | ");break;case 193:N.assertNode(We,uI),De(We.types," & ");break;case 194:N.assertNode(We,dI),He(We.checkType),Le.push({text:" extends "}),He(We.extendsType),Le.push({text:" ? "}),He(We.trueType),Le.push({text:" : "}),He(We.falseType);break;case 195:N.assertNode(We,BS),Le.push({text:"infer "}),He(We.typeParameter);break;case 196:N.assertNode(We,GS),Le.push({text:"("}),He(We.type),Le.push({text:")"});break;case 198:N.assertNode(We,VS),Le.push({text:`${fa(We.operator)} `}),He(We.type);break;case 199:N.assertNode(We,jS),He(We.objectType),Le.push({text:"["}),He(We.indexType),Le.push({text:"]"});break;case 200:N.assertNode(We,JR),Le.push({text:"{ "}),We.readonlyToken&&(We.readonlyToken.kind===40?Le.push({text:"+"}):We.readonlyToken.kind===41&&Le.push({text:"-"}),Le.push({text:"readonly "})),Le.push({text:"["}),He(We.typeParameter),We.nameType&&(Le.push({text:" as "}),He(We.nameType)),Le.push({text:"]"}),We.questionToken&&(We.questionToken.kind===40?Le.push({text:"+"}):We.questionToken.kind===41&&Le.push({text:"-"}),Le.push({text:"?"})),Le.push({text:": "}),We.type&&He(We.type),Le.push({text:"; }"});break;case 201:N.assertNode(We,Zy),He(We.literal);break;case 184:N.assertNode(We,Eh),Ee(We),Le.push({text:" => "}),He(We.type);break;case 205:N.assertNode(We,ug),We.isTypeOf&&Le.push({text:"typeof "}),Le.push({text:"import("}),He(We.argument),We.assertions&&(Le.push({text:", { assert: "}),De(We.assertions.assertClause.elements,", "),Le.push({text:" }"})),Le.push({text:")"}),We.qualifier&&(Le.push({text:"."}),He(We.qualifier)),We.typeArguments&&(Le.push({text:"<"}),De(We.typeArguments,", "),Le.push({text:">"}));break;case 171:N.assertNode(We,yp),(At=We.modifiers)!=null&&At.length&&(De(We.modifiers," "),Le.push({text:" "})),He(We.name),We.questionToken&&Le.push({text:"?"}),We.type&&(Le.push({text:": "}),He(We.type));break;case 181:N.assertNode(We,t1),Le.push({text:"["}),De(We.parameters,", "),Le.push({text:"]"}),We.type&&(Le.push({text:": "}),He(We.type));break;case 173:N.assertNode(We,bh),(Se=We.modifiers)!=null&&Se.length&&(De(We.modifiers," "),Le.push({text:" "})),He(We.name),We.questionToken&&Le.push({text:"?"}),Ee(We),We.type&&(Le.push({text:": "}),He(We.type));break;case 179:N.assertNode(We,sI),Ee(We),We.type&&(Le.push({text:": "}),He(We.type));break;case 207:N.assertNode(We,n1),Le.push({text:"["}),De(We.elements,", "),Le.push({text:"]"});break;case 206:N.assertNode(We,am),Le.push({text:"{"}),We.elements.length&&(Le.push({text:" "}),De(We.elements,", "),Le.push({text:" "})),Le.push({text:"}"});break;case 208:N.assertNode(We,Qa),He(We.name);break;case 224:N.assertNode(We,tb),Le.push({text:fa(We.operator)}),He(We.operand);break;case 203:N.assertNode(We,Bae),He(We.head),We.templateSpans.forEach(He);break;case 16:N.assertNode(We,iI),Le.push({text:Pe(We)});break;case 204:N.assertNode(We,CH),He(We.type),He(We.literal);break;case 17:N.assertNode(We,xH),Le.push({text:Pe(We)});break;case 18:N.assertNode(We,$W),Le.push({text:Pe(We)});break;case 197:N.assertNode(We,Yk),Le.push({text:"this"});break;default:N.failBadSyntaxKind(We)}}function Ee(We){We.typeParameters&&(Le.push({text:"<"}),De(We.typeParameters,", "),Le.push({text:">"})),Le.push({text:"("}),De(We.parameters,", "),Le.push({text:")"})}function De(We,At){We.forEach((Se,je)=>{je>0&&Le.push({text:At}),He(Se)})}function Pe(We){switch(We.kind){case 11:return p===0?`'${og(We.text,39)}'`:`"${og(We.text,34)}"`;case 16:case 17:case 18:{const At=We.rawText??cU(og(We.text,96));switch(We.kind){case 16:return"`"+At+"${";case 17:return"}"+At+"${";case 18:return"}"+At+"`"}}}return We.text}}function oe(pe){return pe==="undefined"}function fe(pe){if((HE(pe)||wi(pe)&&uR(pe))&&pe.initializer){const ie=hs(pe.initializer);return!(se(ie)||r1(ie)||Oa(ie)||bS(ie))}return!0}function Ne(pe,ie){const ve=ie.getSourceFile();return{text:pe,span:Nd(ie,ve),file:ve.fileName}}}var cwe,Sit=T({"src/services/inlayHints.ts"(){si(),cwe=e=>new RegExp(`^\\s?/\\*\\*?\\s?${e}\\s?\\*\\/\\s?$`)}}),HQ={};X(HQ,{provideInlayHints:()=>Eit});var Tit=T({"src/services/_namespaces/ts.InlayHints.ts"(){Sit()}});function Ait(e,t){const r=[];return AX(e,i=>{for(const o of xit(i)){const s=n_(o)&&o.tags&&An(o.tags,u=>u.kind===334&&(u.tagName.escapedText==="inheritDoc"||u.tagName.escapedText==="inheritdoc"));if(o.comment===void 0&&!s||n_(o)&&i.kind!==353&&i.kind!==345&&o.tags&&o.tags.some(u=>u.kind===353||u.kind===345)&&!o.tags.some(u=>u.kind===348||u.kind===349))continue;let l=o.comment?HD(o.comment,t):[];s&&s.comment&&(l=l.concat(HD(s.comment,t))),Nr(r,l,Iit)||r.push(l)}}),ia(co(r,[CD()]))}function Iit(e,t){return Ca(e,t,(r,i)=>r.kind===i.kind&&r.text===i.text)}function xit(e){switch(e.kind){case 348:case 355:return[e];case 345:case 353:return[e,e.parent];case 330:if(ZR(e.parent))return[e.parent.parent];default:return Jj(e)}}function Rit(e,t){const r=[];return AX(e,i=>{const o=f0(i);if(!(o.some(s=>s.kind===353||s.kind===345)&&!o.some(s=>s.kind===348||s.kind===349)))for(const s of o)r.push({name:s.tagName.text,text:pwe(s,t)}),r.push(...uwe(dwe(s),t))}),r}function uwe(e,t){return Pi(e,r=>So([{name:r.tagName.text,text:pwe(r,t)}],uwe(dwe(r),t)))}function dwe(e){return fC(e)&&e.isNameFirst&&e.typeExpression&&XS(e.typeExpression.type)?e.typeExpression.type.jsDocPropertyTags:void 0}function HD(e,t){return typeof e=="string"?[df(e)]:Pi(e,r=>r.kind===328?[df(r.text)]:Que(r,t))}function pwe(e,t){const{comment:r,kind:i}=e,o=Dit(i);switch(i){case 356:const u=e.typeExpression;return u?s(u):r===void 0?void 0:HD(r,t);case 336:return s(e.class);case 335:return s(e.class);case 352:const p=e,h=[];if(p.constraint&&h.push(df(p.constraint.getText())),Me(p.typeParameters)){Me(h)&&h.push(wl());const b=p.typeParameters[p.typeParameters.length-1];Ue(p.typeParameters,A=>{h.push(o(A.getText())),b!==A&&h.push($u(28),wl())})}return r&&h.push(wl(),...HD(r,t)),h;case 351:case 357:return s(e.typeExpression);case 353:case 345:case 355:case 348:case 354:const{name:m}=e;return m?s(m):r===void 0?void 0:HD(r,t);default:return r===void 0?void 0:HD(r,t)}function s(u){return l(u.getText())}function l(u){return r?u.match(/^https?$/)?[df(u),...HD(r,t)]:[o(u),wl(),...HD(r,t)]:[df(u)]}}function Dit(e){switch(e){case 348:return Jue;case 355:return Kue;case 352:return Yue;case 353:case 345:return Xue;default:return df}}function Nit(){return mwe||(mwe=wt(P_e,e=>({name:e,kind:"keyword",kindModifiers:"",sortText:GI.SortText.LocationPriority})))}function Cit(){return _we||(_we=wt(P_e,e=>({name:`@${e}`,kind:"keyword",kindModifiers:"",sortText:GI.SortText.LocationPriority})))}function fwe(e){return{name:e,kind:"",kindModifiers:"",displayParts:[df(e)],documentation:et,tags:void 0,codeActions:void 0}}function Pit(e){if(!Ve(e.name))return et;const t=e.name.text,r=e.parent,i=r.parent;return ea(i)?Hi(i.parameters,o=>{if(!Ve(o.name))return;const s=o.name.text;if(!(r.tags.some(l=>l!==e&&r_(l)&&Ve(l.name)&&l.name.escapedText===s)||t!==void 0&&!uo(s,t)))return{name:s,kind:"parameter",kindModifiers:"",sortText:GI.SortText.LocationPriority}}):[]}function Mit(e){return{name:e,kind:"parameter",kindModifiers:"",displayParts:[df(e)],documentation:et,tags:void 0,codeActions:void 0}}function Lit(e,t,r,i){const o=po(t,r),s=Gn(o,n_);if(s&&(s.comment!==void 0||Me(s.tags)))return;const l=o.getStart(t);if(!s&&l<r)return;const u=Wit(o,i);if(!u)return;const{commentOwner:p,parameters:h,hasReturn:m}=u,b=Fp(p)&&p.jsDoc?p.jsDoc:void 0,A=tl(b);if(p.getStart(t)<r||A&&s&&A!==s)return;const I=kit(t,r),R=YE(t.fileName),M=(h?wit(h||[],R,I,e):"")+(m?Oit(I,e):""),C="/**",O=" */",U=Me(f0(p))>0;if(M&&!U){const K=C+e+I+" * ",Z=l===r?e+I:"";return{newText:K+e+M+I+O+Z,caretOffset:K.length}}return{newText:C+O,caretOffset:3}}function kit(e,t){const{text:r}=e,i=lm(t,e);let o=i;for(;o<=t&&A_(r.charCodeAt(o));o++);return r.slice(i,o)}function wit(e,t,r,i){return e.map(({name:o,dotDotDotToken:s},l)=>{const u=o.kind===80?o.text:"param"+l;return`${r} * @param ${t?s?"{...any} ":"{any} ":""}${u}${i}`}).join("")}function Oit(e,t){return`${e} * @returns${t}`}function Wit(e,t){return sie(e,r=>C_e(r,t))}function C_e(e,t){switch(e.kind){case 262:case 218:case 174:case 176:case 173:case 219:const r=e;return{commentOwner:e,parameters:r.parameters,hasReturn:Oz(r,t)};case 303:return C_e(e.initializer,t);case 263:case 264:case 266:case 306:case 265:return{commentOwner:e};case 171:{const o=e;return o.type&&Eh(o.type)?{commentOwner:e,parameters:o.type.parameters,hasReturn:Oz(o.type,t)}:{commentOwner:e}}case 243:{const s=e.declarationList.declarations,l=s.length===1&&s[0].initializer?Fit(s[0].initializer):void 0;return l?{commentOwner:e,parameters:l.parameters,hasReturn:Oz(l,t)}:{commentOwner:e}}case 312:return"quit";case 267:return e.parent.kind===267?void 0:{commentOwner:e};case 244:return C_e(e.expression,t);case 226:{const o=e;return Bl(o)===0?"quit":ea(o.right)?{commentOwner:e,parameters:o.right.parameters,hasReturn:Oz(o.right,t)}:{commentOwner:e}}case 172:const i=e.initializer;if(i&&(Os(i)||Gs(i)))return{commentOwner:e,parameters:i.parameters,hasReturn:Oz(i,t)}}}function Oz(e,t){return!!(t!=null&&t.generateReturnInDocTemplate)&&(Eh(e)||Gs(e)&&yt(e.body)||Bs(e)&&e.body&&Xo(e.body)&&!!zE(e.body,r=>r))}function Fit(e){for(;e.kind===217;)e=e.expression;switch(e.kind){case 218:case 219:return e;case 231:return An(e.members,Ml)}}var P_e,mwe,_we,hwe,zit=T({"src/services/jsDoc.ts"(){si(),P_e=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","inheritdoc","inner","instance","interface","kind","lends","license","link","linkcode","linkplain","listens","member","memberof","method","mixes","module","name","namespace","overload","override","package","param","private","prop","property","protected","public","readonly","requires","returns","satisfies","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"],hwe=fwe}}),G0={};X(G0,{getDocCommentTemplateAtPosition:()=>Lit,getJSDocParameterNameCompletionDetails:()=>Mit,getJSDocParameterNameCompletions:()=>Pit,getJSDocTagCompletionDetails:()=>fwe,getJSDocTagCompletions:()=>Cit,getJSDocTagNameCompletionDetails:()=>hwe,getJSDocTagNameCompletions:()=>Nit,getJsDocCommentsFromDeclarations:()=>Ait,getJsDocTagsFromDeclarations:()=>Rit});var Bit=T({"src/services/_namespaces/ts.JsDoc.ts"(){zit()}});function Git(e,t,r,i,o,s){const l=_r.ChangeTracker.fromContext({host:r,formatContext:t,preferences:o}),u=s==="SortAndCombine"||s==="All",p=u,h=s==="RemoveUnused"||s==="All",m=qQ(e,e.statements.filter(kc)),b=iot(o,u?()=>ywe(m,o)===2:void 0),A=R=>(h&&(R=jit(R,e,i)),p&&(R=gwe(R,b,e,o)),u&&(R=Dv(R,(M,C)=>O_e(M,C,b))),R);m.forEach(R=>I(R,A)),s!=="RemoveUnused"&&oot(e).forEach(R=>I(R,M=>M_e(M,b,o)));for(const R of e.statements.filter(ku)){if(!R.body)continue;if(qQ(e,R.body.statements.filter(kc)).forEach(C=>I(C,A)),s!=="RemoveUnused"){const C=R.body.statements.filter(Yl);I(C,O=>M_e(O,b,o))}}return l.getChanges();function I(R,M){if(Me(R)===0)return;pr(R[0],1024);const C=p?YN(R,K=>Wz(K.moduleSpecifier)):[R],O=u?Dv(C,(K,Z)=>k_e(K[0].moduleSpecifier,Z[0].moduleSpecifier,b)):C,U=Pi(O,K=>Wz(K[0].moduleSpecifier)||K[0].moduleSpecifier===void 0?M(K):K);if(U.length===0)l.deleteNodes(e,R,{leadingTriviaOption:_r.LeadingTriviaOption.Exclude,trailingTriviaOption:_r.TrailingTriviaOption.Include},!0);else{const K={leadingTriviaOption:_r.LeadingTriviaOption.Exclude,trailingTriviaOption:_r.TrailingTriviaOption.Include,suffix:ty(r,t.options)};l.replaceNodeWithNodes(e,R[0],U,K);const Z=l.nodeHasTrailingComment(e,R[0],K);l.deleteNodes(e,R.slice(1),{trailingTriviaOption:_r.TrailingTriviaOption.Include},Z)}}}function qQ(e,t){const r=wv(e.languageVersion,!1,e.languageVariant),i=[];let o=0;for(const s of t)i[o]&&Vit(e,s,r)&&o++,i[o]||(i[o]=[]),i[o].push(s);return i}function Vit(e,t,r){const i=t.getFullStart(),o=t.getStart();r.setText(e.text,i,o-i);let s=0;for(;r.getTokenStart()<o;)if(r.scan()===4&&(s++,s>=2))return!0;return!1}function jit(e,t,r){const i=r.getTypeChecker(),o=r.getCompilerOptions(),s=i.getJsxNamespace(t),l=i.getJsxFragmentFactory(t),u=!!(t.transformFlags&2),p=[];for(const m of e){const{importClause:b,moduleSpecifier:A}=m;if(!b){p.push(m);continue}let{name:I,namedBindings:R}=b;if(I&&!h(I)&&(I=void 0),R)if(nb(R))h(R.name)||(R=void 0);else{const M=R.elements.filter(C=>h(C.name));M.length<R.elements.length&&(R=M.length?w.updateNamedImports(R,M):void 0)}I||R?p.push(r8(m,I,R)):Uit(t,A)&&(t.isDeclarationFile?p.push(w.createImportDeclaration(m.modifiers,void 0,A,void 0)):p.push(m))}return p;function h(m){return u&&(m.text===s||l&&m.text===l)&&UX(o.jsx)||Ws.Core.isSymbolReferencedInFile(m,i,t)}}function Uit(e,t){const r=Ma(t)&&t.text;return Po(r)&&bt(e.moduleAugmentations,i=>Ma(i)&&i.text===r)}function Wz(e){return e!==void 0&&ls(e)?e.text:void 0}function Hit(e,t,r,i){const o=JQ(t);return gwe(e,o,r,i)}function gwe(e,t,r,i){if(e.length===0)return e;const o=w6(e,l=>{if(l.attributes){let u=l.attributes.token+" ";for(const p of uS(l.attributes.elements,(h,m)=>Uu(h.name.text,m.name.text)))u+=p.name.text+":",u+=ls(p.value)?`"${p.value.text}"`:p.value.getText()+" ";return u}return""}),s=[];for(const l in o){const u=o[l],{importWithoutClause:p,typeOnlyImports:h,regularImports:m}=qit(u);p&&s.push(p);for(const b of[m,h]){const A=b===h,{defaultImports:I,namespaceImports:R,namedImports:M}=b;if(!A&&I.length===1&&R.length===1&&M.length===0){const ne=I[0];s.push(r8(ne,ne.importClause.name,R[0].importClause.namedBindings));continue}const C=Dv(R,(ne,he)=>t(ne.importClause.namedBindings.name.text,he.importClause.namedBindings.name.text));for(const ne of C)s.push(r8(ne,void 0,ne.importClause.namedBindings));const O=Xc(I),U=Xc(M),K=O??U;if(!K)continue;let Z;const V=[];if(I.length===1)Z=I[0].importClause.name;else for(const ne of I)V.push(w.createImportSpecifier(!1,w.createIdentifier("default"),ne.importClause.name));V.push(...eot(M));const se=w.createNodeArray(vwe(V,t,i),U==null?void 0:U.importClause.namedBindings.elements.hasTrailingComma),G=se.length===0?Z?void 0:w.createNamedImports(et):U?w.updateNamedImports(U.importClause.namedBindings,se):w.createNamedImports(se);r&&G&&(U!=null&&U.importClause.namedBindings)&&!OS(U.importClause.namedBindings,r)&&pr(G,2),A&&Z&&G?(s.push(r8(K,Z,void 0)),s.push(r8(U??K,void 0,G))):s.push(r8(K,Z,G))}}return s}function qit(e){let t;const r={defaultImports:[],namespaceImports:[],namedImports:[]},i={defaultImports:[],namespaceImports:[],namedImports:[]};for(const o of e){if(o.importClause===void 0){t=t||o;continue}const s=o.importClause.isTypeOnly?r:i,{name:l,namedBindings:u}=o.importClause;l&&s.defaultImports.push(o),u&&(nb(u)?s.namespaceImports.push(o):s.namedImports.push(o))}return{importWithoutClause:t,typeOnlyImports:r,regularImports:i}}function Jit(e,t,r){const i=JQ(t);return M_e(e,i,r)}function M_e(e,t,r){if(e.length===0)return e;const{exportWithoutClause:i,namedExports:o,typeOnlyExports:s}=u(e),l=[];i&&l.push(i);for(const p of[o,s]){if(p.length===0)continue;const h=[];h.push(...Pi(p,A=>A.exportClause&&Pf(A.exportClause)?A.exportClause.elements:et));const m=vwe(h,t,r),b=p[0];l.push(w.updateExportDeclaration(b,b.modifiers,b.isTypeOnly,b.exportClause&&(Pf(b.exportClause)?w.updateNamedExports(b.exportClause,m):w.updateNamespaceExport(b.exportClause,b.exportClause.name)),b.moduleSpecifier,b.attributes))}return l;function u(p){let h;const m=[],b=[];for(const A of p)A.exportClause===void 0?h=h||A:A.isTypeOnly?b.push(A):m.push(A);return{exportWithoutClause:h,namedExports:m,typeOnlyExports:b}}}function r8(e,t,r){return w.updateImportDeclaration(e,e.modifiers,w.updateImportClause(e.importClause,e.importClause.isTypeOnly,t,r),e.moduleSpecifier,e.attributes)}function vwe(e,t,r){return Dv(e,(i,o)=>L_e(i,o,t,r))}function L_e(e,t,r,i){switch(i==null?void 0:i.organizeImportsTypeOrder){case"first":return Ry(t.isTypeOnly,e.isTypeOnly)||r(e.name.text,t.name.text);case"inline":return r(e.name.text,t.name.text);default:return Ry(e.isTypeOnly,t.isTypeOnly)||r(e.name.text,t.name.text)}}function Kit(e,t,r){const i=JQ(!!r);return k_e(e,t,i)}function k_e(e,t,r){const i=e===void 0?void 0:Wz(e),o=t===void 0?void 0:Wz(t);return Ry(i===void 0,o===void 0)||Ry(Yc(i),Yc(o))||r(i,o)}function w_e(e){var t;switch(e.kind){case 271:return(t=ii(e.moduleReference,Ah))==null?void 0:t.expression;case 272:return e.moduleSpecifier;case 243:return e.declarationList.declarations[0].initializer.arguments[0]}}function Xit(e,t){return ywe(qQ(e,e.statements.filter(kc)),t)}function ywe(e,t){const r=qD(t,!1),i=qD(t,!0);let o=3,s=!1;for(const l of e){if(l.length>1){const p=XN(l,h=>{var m;return((m=ii(h.moduleSpecifier,Ma))==null?void 0:m.text)??""},r,i);if(p&&(o&=p,s=!0),!o)return o}const u=An(l,p=>{var h,m;return((m=ii((h=p.importClause)==null?void 0:h.namedBindings,Hg))==null?void 0:m.elements.length)>1});if(u){const p=W_e(u.importClause.namedBindings.elements,t);if(p&&(o&=p,s=!0),!o)return o}if(o!==3)return o}return s?0:o}function Yit(e,t){const r=qD(t,!1),i=qD(t,!0);return XN(e,o=>Wz(w_e(o))||"",r,i)}function $it(e,t,r){const i=Nv(e,t,nl,(o,s)=>O_e(o,s,r));return i<0?~i:i}function Qit(e,t,r,i){const o=Nv(e,t,nl,(s,l)=>L_e(s,l,r,i));return o<0?~o:o}function O_e(e,t,r){return k_e(w_e(e),w_e(t),r)||Zit(e,t)}function Zit(e,t){return rl(bwe(e),bwe(t))}function bwe(e){var t;switch(e.kind){case 272:return e.importClause?e.importClause.isTypeOnly?1:((t=e.importClause.namedBindings)==null?void 0:t.kind)===274?2:e.importClause.name?3:4:0;case 271:return 5;case 243:return 6}}function eot(e){return Pi(e,t=>wt(tot(t),r=>r.name&&r.propertyName&&r.name.escapedText===r.propertyName.escapedText?w.updateImportSpecifier(r,r.isTypeOnly,void 0,r.name):r))}function tot(e){var t;return(t=e.importClause)!=null&&t.namedBindings&&Hg(e.importClause.namedBindings)?e.importClause.namedBindings.elements:void 0}function JQ(e){return e?Mne:Uu}function not(e,t){const r=rot(t),i=t.organizeImportsCaseFirst??!1,o=t.organizeImportsNumericCollation??!1,s=t.organizeImportsAccentCollation??!0,l=e?s?"accent":"base":s?"variant":"case";return new Intl.Collator(r,{usage:"sort",caseFirst:i||"false",sensitivity:l,numeric:o}).compare}function rot(e){let t=e.organizeImportsLocale;t==="auto"&&(t=Lne()),t===void 0&&(t="en");const r=Intl.Collator.supportedLocalesOf(t);return r.length?r[0]:"en"}function qD(e,t){return(e.organizeImportsCollation??"ordinal")==="unicode"?not(t,e):JQ(t)}function iot(e,t){const r=typeof e.organizeImportsIgnoreCase=="boolean"?e.organizeImportsIgnoreCase:(t==null?void 0:t())??!1;return qD(e,r)}function oot(e){const t=[],r=e.statements,i=Me(r);let o=0,s=0;for(;o<i;)if(Yl(r[o])){t[s]===void 0&&(t[s]=[]);const l=r[o];if(l.moduleSpecifier)t[s].push(l),o++;else{for(;o<i&&Yl(r[o]);)t[s].push(r[o++]);s++}}else o++;return Pi(t,l=>qQ(e,l))}var Ewe,W_e,aot=T({"src/services/organizeImports.ts"(){si(),Ewe=class{has([e,t]){return this._lastPreferences!==t||!this._cache?!1:this._cache.has(e)}get([e,t]){if(!(this._lastPreferences!==t||!this._cache))return this._cache.get(e)}set([e,t],r){this._lastPreferences!==t&&(this._lastPreferences=t,this._cache=void 0),this._cache??(this._cache=new WeakMap),this._cache.set(e,r)}},W_e=Pne((e,t)=>{switch(t.organizeImportsTypeOrder){case"first":if(!M6(e,(o,s)=>Ry(s.isTypeOnly,o.isTypeOnly)))return 0;break;case"inline":if(!M6(e,(o,s)=>zx(!0)(o.name.text,s.name.text)))return 0;break;default:if(!M6(e,(o,s)=>Ry(o.isTypeOnly,s.isTypeOnly)))return 0;break}const r=qD(t,!1),i=qD(t,!0);if(t.organizeImportsTypeOrder!=="inline"){const{type:o,regular:s}=w6(e,p=>p.isTypeOnly?"type":"regular"),l=o!=null&&o.length?XN(o,p=>p.name.text,r,i):void 0,u=s!=null&&s.length?XN(s,p=>p.name.text??"",r,i):void 0;return l===void 0?u??0:u===void 0?l:l===0||u===0?0:u&l}return XN(e,o=>o.name.text,r,i)},new Ewe)}}),Lm={};X(Lm,{coalesceExports:()=>Jit,coalesceImports:()=>Hit,compareImportOrExportSpecifiers:()=>L_e,compareImportsOrRequireStatements:()=>O_e,compareModuleSpecifiers:()=>Kit,detectImportDeclarationSorting:()=>Yit,detectImportSpecifierSorting:()=>W_e,detectSorting:()=>Xit,getImportDeclarationInsertionIndex:()=>$it,getImportSpecifierInsertionIndex:()=>Qit,getOrganizeImportsComparer:()=>qD,organizeImports:()=>Git});var sot=T({"src/services/_namespaces/ts.OrganizeImports.ts"(){aot()}});function lot(e,t){const r=[];return cot(e,t,r),uot(e,r),r.sort((i,o)=>i.textSpan.start-o.textSpan.start)}function cot(e,t,r){let i=40,o=0;const s=[...e.statements,e.endOfFileToken],l=s.length;for(;o<l;){for(;o<l&&!TS(s[o]);)u(s[o]),o++;if(o===l)break;const p=o;for(;o<l&&TS(s[o]);)u(s[o]),o++;const h=o-1;h!==p&&r.push(Fz(vs(s[p],102,e).getStart(e),s[h].getEnd(),"imports"))}function u(p){var h;if(i===0)return;t.throwIfCancellationRequested(),(Ju(p)||Ll(p)||Dm(p)||I_(p)||p.kind===1)&&Twe(p,e,t,r),ea(p)&&mr(p.parent)&&Fr(p.parent.left)&&Twe(p.parent.left,e,t,r),(Xo(p)||O_(p))&&F_e(p.statements.end,e,t,r),(ui(p)||hd(p))&&F_e(p.members.end,e,t,r);const m=dot(p,e);m&&r.push(m),i--,la(p)?(i++,u(p.expression),i--,p.arguments.forEach(u),(h=p.typeArguments)==null||h.forEach(u)):US(p)&&p.elseStatement&&US(p.elseStatement)?(u(p.expression),u(p.thenStatement),i++,u(p.elseStatement),i--):p.forEachChild(u),i++}}function uot(e,t){const r=[],i=e.getLineStarts();for(const o of i){const s=e.getLineEndOfPosition(o),l=e.text.substring(o,s),u=Swe(l);if(!(!u||Qv(e,o)))if(u[1]){const p=r.pop();p&&(p.textSpan.length=s-p.textSpan.start,p.hintSpan.length=s-p.textSpan.start,t.push(p))}else{const p=pc(e.text.indexOf("//",o),s);r.push(jI(p,"region",p,!1,u[2]||"#region"))}}}function Swe(e){return e=e.trimStart(),uo(e,"//")?(e=e.slice(2).trim(),Awe.exec(e)):null}function F_e(e,t,r,i){const o=Yh(t.text,e);if(!o)return;let s=-1,l=-1,u=0;const p=t.getFullText();for(const{kind:m,pos:b,end:A}of o)switch(r.throwIfCancellationRequested(),m){case 2:const I=p.slice(b,A);if(Swe(I)){h(),u=0;break}u===0&&(s=b),l=A,u++;break;case 3:h(),i.push(Fz(b,A,"comment")),u=0;break;default:N.assertNever(m)}h();function h(){u>1&&i.push(Fz(s,l,"comment"))}}function Twe(e,t,r,i){nI(e)||F_e(e.pos,t,r,i)}function Fz(e,t,r){return jI(pc(e,t),r)}function dot(e,t){switch(e.kind){case 241:if(ea(e.parent))return pot(e.parent,e,t);switch(e.parent.kind){case 246:case 249:case 250:case 248:case 245:case 247:case 254:case 299:return m(e.parent);case 258:const I=e.parent;if(I.tryBlock===e)return m(e.parent);if(I.finallyBlock===e){const R=vs(I,98,t);if(R)return m(R)}default:return jI(Nd(e,t),"code")}case 268:return m(e.parent);case 263:case 231:case 264:case 266:case 269:case 187:case 206:return m(e);case 189:return m(e,!1,!cI(e.parent),23);case 296:case 297:return b(e.statements);case 210:return h(e);case 209:return h(e,23);case 284:return s(e);case 288:return l(e);case 285:case 286:return u(e.attributes);case 228:case 15:return p(e);case 207:return m(e,!1,!Qa(e.parent),23);case 219:return o(e);case 213:return i(e);case 217:return A(e);case 275:case 279:case 300:return r(e)}function r(I){if(!I.elements.length)return;const R=vs(I,19,t),M=vs(I,20,t);if(!(!R||!M||Rf(R.pos,M.pos,t)))return KQ(R,M,I,t,!1,!1)}function i(I){if(!I.arguments.length)return;const R=vs(I,21,t),M=vs(I,22,t);if(!(!R||!M||Rf(R.pos,M.pos,t)))return KQ(R,M,I,t,!1,!0)}function o(I){if(Xo(I.body)||Gd(I.body)||Rf(I.body.getFullStart(),I.body.getEnd(),t))return;const R=pc(I.body.getFullStart(),I.body.getEnd());return jI(R,"code",Nd(I))}function s(I){const R=pc(I.openingElement.getStart(t),I.closingElement.getEnd()),M=I.openingElement.tagName.getText(t),C="<"+M+">...</"+M+">";return jI(R,"code",R,!1,C)}function l(I){const R=pc(I.openingFragment.getStart(t),I.closingFragment.getEnd());return jI(R,"code",R,!1,"<>...</>")}function u(I){if(I.properties.length!==0)return Fz(I.getStart(t),I.getEnd(),"code")}function p(I){if(!(I.kind===15&&I.text.length===0))return Fz(I.getStart(t),I.getEnd(),"code")}function h(I,R=19){return m(I,!1,!_d(I.parent)&&!la(I.parent),R)}function m(I,R=!1,M=!0,C=19,O=C===19?20:24){const U=vs(e,C,t),K=vs(e,O,t);return U&&K&&KQ(U,K,I,t,R,M)}function b(I){return I.length?jI(sb(I),"code"):void 0}function A(I){if(Rf(I.getStart(),I.getEnd(),t))return;const R=pc(I.getStart(),I.getEnd());return jI(R,"code",Nd(I))}}function pot(e,t,r){const i=fot(e,t,r),o=vs(t,20,r);return i&&o&&KQ(i,o,e,r,e.kind!==219)}function KQ(e,t,r,i,o=!1,s=!0){const l=pc(s?e.getFullStart():e.getStart(i),t.getEnd());return jI(l,"code",Nd(r,i),o)}function jI(e,t,r=e,i=!1,o="..."){return{textSpan:e,kind:t,hintSpan:r,bannerText:o,autoCollapse:i}}function fot(e,t,r){if(xoe(e.parameters,r)){const i=vs(e,21,r);if(i)return i}return vs(t,19,r)}var Awe,mot=T({"src/services/outliningElementsCollector.ts"(){si(),Awe=/^#(end)?region(?:\s+(.*))?(?:\r)?$/}}),XQ={};X(XQ,{collectElements:()=>lot});var _ot=T({"src/services/_namespaces/ts.OutliningElementsCollector.ts"(){mot()}});function hot(e,t,r,i){const o=o5(Vd(t,r));if(xwe(o)){const s=got(o,e.getTypeChecker(),t,e,i);if(s)return s}return YQ(f.You_cannot_rename_this_element)}function got(e,t,r,i,o){const s=t.getSymbolAtLocation(e);if(!s){if(ls(e)){const A=i5(e,t);if(A&&(A.flags&128||A.flags&1048576&&Zn(A.types,I=>!!(I.flags&128))))return z_e(e.text,e.text,"string","",e,r)}else if($K(e)){const A=fc(e);return z_e(A,A,"label","",e,r)}return}const{declarations:l}=s;if(!l||l.length===0)return;if(l.some(A=>vot(i,A)))return YQ(f.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);if(Ve(e)&&e.escapedText==="default"&&s.parent&&s.parent.flags&1536)return;if(ls(e)&&$L(e))return o.allowRenameOfImportPath?bot(e,r,s):void 0;const u=yot(r,s,t,o);if(u)return YQ(u);const p=iy.getSymbolKind(t,s,e),h=Zue(e)||nf(e)&&e.parent.kind===167?tm(em(e)):void 0,m=h||t.symbolToString(s),b=h||t.getFullyQualifiedName(s);return z_e(m,b,p,iy.getSymbolModifiers(t,s),e,r)}function vot(e,t){const r=t.getSourceFile();return e.isSourceFileDefaultLibrary(r)&&Il(r.fileName,".d.ts")}function yot(e,t,r,i){if(!i.providePrefixAndSuffixTextForRename&&t.flags&2097152){const l=t.declarations&&An(t.declarations,u=>np(u));l&&!l.propertyName&&(t=r.getAliasedSymbol(t))}const{declarations:o}=t;if(!o)return;const s=Iwe(e.path);if(s===void 0)return bt(o,l=>IO(l.getSourceFile().path))?f.You_cannot_rename_elements_that_are_defined_in_a_node_modules_folder:void 0;for(const l of o){const u=Iwe(l.getSourceFile().path);if(u){const p=Math.min(s.length,u.length);for(let h=0;h<=p;h++)if(Uu(s[h],u[h])!==0)return f.You_cannot_rename_elements_that_are_defined_in_another_node_modules_folder}}}function Iwe(e){const t=zc(e),r=t.lastIndexOf("node_modules");if(r!==-1)return t.slice(0,r+2)}function bot(e,t,r){if(!Yc(e.text))return YQ(f.You_cannot_rename_a_module_via_a_global_import);const i=r.declarations&&An(r.declarations,$i);if(!i)return;const o=Al(e.text,"/index")||Al(e.text,"/index.js")?void 0:One(Id(i.fileName),"/index"),s=o===void 0?i.fileName:o,l=o===void 0?"module":"directory",u=e.text.lastIndexOf("/")+1,p=vu(e.getStart(t)+1+u,e.text.length-u);return{canRename:!0,fileToRename:s,kind:l,displayName:s,fullDisplayName:e.text,kindModifiers:"",triggerSpan:p}}function z_e(e,t,r,i,o,s){return{canRename:!0,fileToRename:void 0,kind:r,displayName:e,fullDisplayName:t,kindModifiers:i,triggerSpan:Eot(o,s)}}function YQ(e){return{canRename:!1,localizedErrorMessage:Wo(e)}}function Eot(e,t){let r=e.getStart(t),i=e.getWidth(t);return ls(e)&&(r+=1,i-=2),vu(r,i)}function xwe(e){switch(e.kind){case 80:case 81:case 11:case 15:case 110:return!0;case 9:return e5(e);default:return!1}}var Sot=T({"src/services/rename.ts"(){si()}}),zz={};X(zz,{getRenameInfo:()=>hot,nodeIsEligibleForRename:()=>xwe});var Tot=T({"src/services/_namespaces/ts.Rename.ts"(){Sot()}});function Aot(e,t,r,i,o){const s=e.getTypeChecker(),l=a5(t,r);if(!l)return;const u=!!i&&i.kind==="characterTyped";if(u&&(CI(t,r,l)||Qv(t,r)))return;const p=!!i&&i.kind==="invoked",h=Got(l,r,t,s,p);if(!h)return;o.throwIfCancellationRequested();const m=Iot(h,s,t,l,u);return o.throwIfCancellationRequested(),m?s.runWithCancellationToken(o,b=>m.kind===0?kwe(m.candidates,m.resolvedSignature,h,t,b):jot(m.symbol,h,t,b)):dd(t)?Rot(h,e,o):void 0}function Iot({invocation:e,argumentCount:t},r,i,o,s){switch(e.kind){case 0:{if(s&&!xot(o,e.node,i))return;const l=[],u=r.getResolvedSignatureForSignatureHelp(e.node,l,t);return l.length===0?void 0:{kind:0,candidates:l,resolvedSignature:u}}case 1:{const{called:l}=e;if(s&&!Rwe(o,i,Ve(l)?l.parent:l))return;const u=sX(l,t,r);if(u.length!==0)return{kind:0,candidates:u,resolvedSignature:Ha(u)};const p=r.getSymbolAtLocation(l);return p&&{kind:1,symbol:p}}case 2:return{kind:0,candidates:[e.signature],resolvedSignature:e.signature};default:return N.assertNever(e)}}function xot(e,t,r){if(!I_(t))return!1;const i=t.getChildren(r);switch(e.kind){case 21:return Nr(i,e);case 28:{const o=r5(e);return!!o&&Nr(i,o)}case 30:return Rwe(e,r,t.expression);default:return!1}}function Rot(e,t,r){if(e.invocation.kind===2)return;const i=Mwe(e.invocation),o=Fr(i)?i.name.text:void 0,s=t.getTypeChecker();return o===void 0?void 0:Ut(t.getSourceFiles(),l=>Ut(l.getNamedDeclarations().get(o),u=>{const p=u.symbol&&s.getTypeOfSymbolAtLocation(u.symbol,u),h=p&&p.getCallSignatures();if(h&&h.length)return s.runWithCancellationToken(r,m=>kwe(h,h[0],e,l,m,!0))}))}function Rwe(e,t,r){const i=e.getFullStart();let o=e.parent;for(;o;){const s=xc(i,t,o,!0);if(s)return cf(r,s);o=o.parent}return N.fail("Could not find preceding token")}function Dot(e,t,r,i){const o=Nwe(e,t,r,i);return!o||o.isTypeParameterList||o.invocation.kind!==0?void 0:{invocation:o.invocation.node,argumentCount:o.argumentCount,argumentIndex:o.argumentIndex}}function Dwe(e,t,r,i){const o=Not(e,r,i);if(!o)return;const{list:s,argumentIndex:l}=o,u=Wot(i,s);l!==0&&N.assertLessThan(l,u);const p=zot(s,r);return{list:s,argumentIndex:l,argumentCount:u,argumentsSpan:p}}function Not(e,t,r){if(e.kind===30||e.kind===21)return{list:Vot(e.parent,e,t),argumentIndex:0};{const i=r5(e);return i&&{list:i,argumentIndex:Oot(r,i,e)}}}function Nwe(e,t,r,i){const{parent:o}=e;if(I_(o)){const s=o,l=Dwe(e,t,r,i);if(!l)return;const{list:u,argumentIndex:p,argumentCount:h,argumentsSpan:m}=l;return{isTypeParameterList:!!o.typeArguments&&o.typeArguments.pos===u.pos,invocation:{kind:0,node:s},argumentsSpan:m,argumentIndex:p,argumentCount:h}}else{if(rI(e)&&i1(o))return pO(e,t,r)?G_e(o,0,r):void 0;if(iI(e)&&o.parent.kind===215){const s=o,l=s.parent;N.assert(s.kind===228);const u=pO(e,t,r)?0:1;return G_e(l,u,r)}else if(bP(o)&&i1(o.parent.parent)){const s=o,l=o.parent.parent;if($W(e)&&!pO(e,t,r))return;const u=s.parent.templateSpans.indexOf(s),p=Fot(u,e,t,r);return G_e(l,p,r)}else if(ud(o)){const s=o.attributes.pos,l=ka(r.text,o.attributes.end,!1);return{isTypeParameterList:!1,invocation:{kind:0,node:o},argumentsSpan:vu(s,l-s),argumentIndex:0,argumentCount:1}}else{const s=lX(e,r);if(s){const{called:l,nTypeArguments:u}=s,p={kind:1,called:l},h=pc(l.getStart(r),e.end);return{isTypeParameterList:!0,invocation:p,argumentsSpan:h,argumentIndex:u,argumentCount:u+1}}return}}}function Cot(e,t,r,i){return Pot(e,t,r,i)||Nwe(e,t,r,i)}function Cwe(e){return mr(e.parent)?Cwe(e.parent):e}function B_e(e){return mr(e.left)?B_e(e.left)+1:2}function Pot(e,t,r,i){const o=Mot(e);if(o===void 0)return;const s=Lot(o,r,t,i);if(s===void 0)return;const{contextualType:l,argumentIndex:u,argumentCount:p,argumentsSpan:h}=s,m=l.getNonNullableType(),b=m.symbol;if(b===void 0)return;const A=tl(m.getCallSignatures());return A===void 0?void 0:{isTypeParameterList:!1,invocation:{kind:2,signature:A,node:e,symbol:kot(b)},argumentsSpan:h,argumentIndex:u,argumentCount:p}}function Mot(e){switch(e.kind){case 21:case 28:return e;default:return Gn(e.parent,t=>Ao(t)?!0:Qa(t)||am(t)||n1(t)?!1:"quit")}}function Lot(e,t,r,i){const{parent:o}=e;switch(o.kind){case 217:case 174:case 218:case 219:const s=Dwe(e,r,t,i);if(!s)return;const{argumentIndex:l,argumentCount:u,argumentsSpan:p}=s,h=ql(o)?i.getContextualTypeForObjectLiteralElement(o):i.getContextualType(o);return h&&{contextualType:h,argumentIndex:l,argumentCount:u,argumentsSpan:p};case 226:{const m=Cwe(o),b=i.getContextualType(m),A=e.kind===21?0:B_e(o)-1,I=B_e(m);return b&&{contextualType:b,argumentIndex:A,argumentCount:I,argumentsSpan:Nd(o)}}default:return}}function kot(e){return e.name==="__type"&&Ut(e.declarations,t=>{var r;return Eh(t)?(r=ii(t.parent,x_))==null?void 0:r.symbol:void 0})||e}function wot(e,t){const r=t.getTypeAtLocation(e.expression);if(t.isTupleType(r)){const{elementFlags:i,fixedLength:o}=r.target;if(o===0)return 0;const s=Gr(i,l=>!(l&1));return s<0?o:s}return 0}function Oot(e,t,r){return Pwe(e,t,r)}function Wot(e,t){return Pwe(e,t,void 0)}function Pwe(e,t,r){const i=t.getChildren();let o=0,s=!1;for(const l of i){if(r&&l===r)return!s&&l.kind===28&&o++,o;if(e_(l)){o+=wot(l,e),s=!0;continue}if(l.kind!==28){o++,s=!0;continue}if(s){s=!1;continue}o++}return r?o:i.length&&Ya(i).kind===28?o+1:o}function Fot(e,t,r,i){return N.assert(r>=t.getStart(),"Assumed 'position' could not occur before node."),Wre(t)?pO(t,r,i)?0:e+2:e+1}function G_e(e,t,r){const i=rI(e.template)?1:e.template.templateSpans.length+1;return t!==0&&N.assertLessThan(t,i),{isTypeParameterList:!1,invocation:{kind:0,node:e},argumentsSpan:Bot(e,r),argumentIndex:t,argumentCount:i}}function zot(e,t){const r=e.getFullStart(),i=ka(t.text,e.getEnd(),!1);return vu(r,i-r)}function Bot(e,t){const r=e.template,i=r.getStart();let o=r.getEnd();return r.kind===228&&Ya(r.templateSpans).literal.getFullWidth()===0&&(o=ka(t.text,o,!1)),vu(i,o-i)}function Got(e,t,r,i,o){for(let s=e;!$i(s)&&(o||!Xo(s));s=s.parent){N.assert(cf(s.parent,s),"Not a subspan",()=>`Child: ${N.formatSyntaxKind(s.kind)}, parent: ${N.formatSyntaxKind(s.parent.kind)}`);const l=Cot(s,t,r,i);if(l)return l}}function Vot(e,t,r){const i=e.getChildren(r),o=i.indexOf(t);return N.assert(o>=0&&i.length>o+1),i[o+1]}function Mwe(e){return e.kind===0?o3(e.node):e.called}function Lwe(e){return e.kind===0?e.node:e.kind===1?e.called:e.node}function kwe(e,t,{isTypeParameterList:r,argumentCount:i,argumentsSpan:o,invocation:s,argumentIndex:l},u,p,h){var m;const b=Lwe(s),A=s.kind===2?s.symbol:p.getSymbolAtLocation(Mwe(s))||h&&((m=t.declaration)==null?void 0:m.symbol),I=A?u2(p,A,h?u:void 0,void 0):et,R=wt(e,K=>Hot(K,I,r,p,b,u));l!==0&&N.assertLessThan(l,i);let M=0,C=0;for(let K=0;K<R.length;K++){const Z=R[K];if(e[K]===t&&(M=C,Z.length>1)){let V=0;for(const se of Z){if(se.isVariadic||se.parameters.length>=i){M=C+V;break}V++}}C+=Z.length}N.assert(M!==-1);const O={items:rc(R,nl),applicableSpan:o,selectedItemIndex:M,argumentIndex:l,argumentCount:i},U=O.items[M];if(U.isVariadic){const K=Gr(U.parameters,Z=>!!Z.isRest);-1<K&&K<U.parameters.length-1?O.argumentIndex=U.parameters.length:O.argumentIndex=Math.min(O.argumentIndex,U.parameters.length-1)}return O}function jot(e,{argumentCount:t,argumentsSpan:r,invocation:i,argumentIndex:o},s,l){const u=l.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);return u?{items:[Uot(e,u,l,Lwe(i),s)],applicableSpan:r,selectedItemIndex:0,argumentIndex:o,argumentCount:t}:void 0}function Uot(e,t,r,i,o){const s=u2(r,e),l=g1(),u=t.map(b=>wwe(b,r,i,o,l)),p=e.getDocumentationComment(r),h=e.getJsDocTags(r);return{isVariadic:!1,prefixDisplayParts:[...s,$u(30)],suffixDisplayParts:[$u(32)],separatorDisplayParts:V_e,parameters:u,documentation:p,tags:h}}function Hot(e,t,r,i,o,s){const l=(r?Jot:Kot)(e,i,o,s);return wt(l,({isVariadic:u,parameters:p,prefix:h,suffix:m})=>{const b=[...t,...h],A=[...m,...qot(e,o,i)],I=e.getDocumentationComment(i),R=e.getJsDocTags();return{isVariadic:u,prefixDisplayParts:b,suffixDisplayParts:A,separatorDisplayParts:V_e,parameters:p,documentation:I,tags:R}})}function qot(e,t,r){return lb(i=>{i.writePunctuation(":"),i.writeSpace(" ");const o=r.getTypePredicateOfSignature(e);o?r.writeTypePredicate(o,t,void 0,i):r.writeType(r.getReturnTypeOfSignature(e),t,void 0,i)})}function Jot(e,t,r,i){const o=(e.target||e).typeParameters,s=g1(),l=(o||et).map(p=>wwe(p,t,r,i,s)),u=e.thisParameter?[t.symbolToParameterDeclaration(e.thisParameter,r,i8)]:[];return t.getExpandedParameters(e).map(p=>{const h=w.createNodeArray([...u,...wt(p,b=>t.symbolToParameterDeclaration(b,r,i8))]),m=lb(b=>{s.writeList(2576,h,i,b)});return{isVariadic:!1,parameters:l,prefix:[$u(30)],suffix:[$u(32),...m]}})}function Kot(e,t,r,i){const o=g1(),s=lb(p=>{if(e.typeParameters&&e.typeParameters.length){const h=w.createNodeArray(e.typeParameters.map(m=>t.typeParameterToDeclaration(m,r,i8)));o.writeList(53776,h,i,p)}}),l=t.getExpandedParameters(e),u=t.hasEffectiveRestParameter(e)?l.length===1?p=>!0:p=>{var h;return!!(p.length&&((h=ii(p[p.length-1],mh))==null?void 0:h.links.checkFlags)&32768)}:p=>!1;return l.map(p=>({isVariadic:u(p),parameters:p.map(h=>Xot(h,t,r,i,o)),prefix:[...s,$u(21)],suffix:[$u(22)]}))}function Xot(e,t,r,i,o){const s=lb(p=>{const h=t.symbolToParameterDeclaration(e,r,i8);o.writeNode(4,h,i,p)}),l=t.isOptionalParameter(e.valueDeclaration),u=mh(e)&&!!(e.links.checkFlags&32768);return{name:e.name,documentation:e.getDocumentationComment(t),displayParts:s,isOptional:l,isRest:u}}function wwe(e,t,r,i,o){const s=lb(l=>{const u=t.typeParameterToDeclaration(e,r,i8);o.writeNode(4,u,i,l)});return{name:e.symbol.name,documentation:e.symbol.getDocumentationComment(t),displayParts:s,isOptional:!1,isRest:!1}}var i8,V_e,Yot=T({"src/services/signatureHelp.ts"(){si(),i8=70246400,V_e=[$u(28),wl()]}}),o8={};X(o8,{getArgumentInfoForCompletions:()=>Dot,getSignatureHelpItems:()=>Aot});var $ot=T({"src/services/_namespaces/ts.SignatureHelp.ts"(){Yot()}});function Qot(e,t){var r,i;let o={textSpan:pc(t.getFullStart(),t.getEnd())},s=t;e:for(;;){const p=eat(s);if(!p.length)break;for(let h=0;h<p.length;h++){const m=p[h-1],b=p[h],A=p[h+1];if(_0(b,t,!0)>e)break e;const I=sh(a0(t.text,b.end));if(I&&I.kind===2&&u(I.pos,I.end),Zot(t,e,b)){if(dj(b)&&Bs(s)&&!Rf(b.getStart(t),b.getEnd(),t)&&l(b.getStart(t),b.getEnd()),Xo(b)||bP(b)||iI(b)||$W(b)||m&&iI(m)||Uc(b)&&Ll(s)||eD(b)&&Uc(s)||wi(b)&&eD(s)&&p.length===1||d1(b)||D0(b)||XS(b)){s=b;break}if(bP(s)&&A&&R4(A)){const O=b.getFullStart()-2,U=A.getStart()+1;l(O,U)}const R=eD(b)&&tat(m)&&nat(A)&&!Rf(m.getStart(),A.getStart(),t);let M=R?m.getEnd():b.getStart();const C=R?A.getStart():rat(t,b);if(Fp(b)&&((r=b.jsDoc)!=null&&r.length)&&l(Ha(b.jsDoc).getStart(),C),eD(b)){const O=b.getChildren()[0];O&&Fp(O)&&((i=O.jsDoc)!=null&&i.length)&&O.getStart()!==b.pos&&(M=Math.min(M,Ha(O.jsDoc).getStart()))}l(M,C),(Ma(b)||LA(b))&&l(M+1,C-1),s=b;break}if(h===p.length-1)break e}}return o;function l(p,h){if(p!==h){const m=pc(p,h);(!o||!ND(m,o.textSpan)&&_re(m,e))&&(o={textSpan:m,...o&&{parent:o}})}}function u(p,h){l(p,h);let m=p;for(;t.text.charCodeAt(m)===47;)m++;l(m,h)}}function Zot(e,t,r){return N.assert(r.pos<=t),t<r.end?!0:r.getEnd()===t?Vd(e,t).pos<r.end:!1}function eat(e){var t;if($i(e))return a8(e.getChildAt(0).getChildren(),Owe);if(JR(e)){const[r,...i]=e.getChildren(),o=N.checkDefined(i.pop());N.assertEqual(r.kind,19),N.assertEqual(o.kind,20);const s=a8(i,u=>u===e.readonlyToken||u.kind===148||u===e.questionToken||u.kind===58),l=a8(s,({kind:u})=>u===23||u===168||u===24);return[r,s8($Q(l,({kind:u})=>u===59)),o]}if(yp(e)){const r=a8(e.getChildren(),l=>l===e.name||Nr(e.modifiers,l)),i=((t=r[0])==null?void 0:t.kind)===327?r[0]:void 0,o=i?r.slice(1):r,s=$Q(o,({kind:l})=>l===59);return i?[i,s8(s)]:s}if(Ao(e)){const r=a8(e.getChildren(),o=>o===e.dotDotDotToken||o===e.name),i=a8(r,o=>o===r[0]||o===e.questionToken);return $Q(i,({kind:o})=>o===64)}return Qa(e)?$Q(e.getChildren(),({kind:r})=>r===64):e.getChildren()}function a8(e,t){const r=[];let i;for(const o of e)t(o)?(i=i||[],i.push(o)):(i&&(r.push(s8(i)),i=void 0),r.push(o));return i&&r.push(s8(i)),r}function $Q(e,t,r=!0){if(e.length<2)return e;const i=Gr(e,t);if(i===-1)return e;const o=e.slice(0,i),s=e[i],l=Ya(e),u=r&&l.kind===27,p=e.slice(i+1,u?e.length-1:void 0),h=WM([o.length?s8(o):void 0,s,p.length?s8(p):void 0]);return u?h.concat(l):h}function s8(e){return N.assertGreaterThanOrEqual(e.length,1),vh(Ih.createSyntaxList(e),e[0].pos,Ya(e).end)}function tat(e){const t=e&&e.kind;return t===19||t===23||t===21||t===286}function nat(e){const t=e&&e.kind;return t===20||t===24||t===22||t===287}function rat(e,t){switch(t.kind){case 348:case 345:case 355:case 353:case 350:return e.getLineEndOfPosition(t.getStart());default:return t.getEnd()}}var Owe,iat=T({"src/services/smartSelection.ts"(){si(),Owe=Ym(kc,tu)}}),QQ={};X(QQ,{getSmartSelectionRange:()=>Qot});var oat=T({"src/services/_namespaces/ts.SmartSelectionRange.ts"(){iat()}});function Wwe(e,t,r){const i=Fwe(e,t,r);if(i!=="")return i;const o=LR(t);return o&32?fl(t,231)?"local class":"class":o&384?"enum":o&524288?"type":o&64?"interface":o&262144?"type parameter":o&8?"enum member":o&2097152?"alias":o&1536?"module":i}function Fwe(e,t,r){const i=e.getRootSymbols(t);if(i.length===1&&Ha(i).flags&8192&&e.getTypeOfSymbolAtLocation(t,r).getNonNullableType().getCallSignatures().length!==0)return"method";if(e.isUndefinedSymbol(t))return"var";if(e.isArgumentsSymbol(t))return"local var";if(r.kind===110&&yt(r)||VA(r))return"parameter";const o=LR(t);if(o&3)return xX(t)?"parameter":t.valueDeclaration&&uR(t.valueDeclaration)?"const":t.valueDeclaration&&kL(t.valueDeclaration)?"using":t.valueDeclaration&&LL(t.valueDeclaration)?"await using":Ue(t.declarations,X4)?"let":Gwe(t)?"local var":"var";if(o&16)return Gwe(t)?"local function":"function";if(o&32768)return"getter";if(o&65536)return"setter";if(o&8192)return"method";if(o&16384)return"constructor";if(o&131072)return"index";if(o&4){if(o&33554432&&t.links.checkFlags&6){const s=Ue(e.getRootSymbols(t),l=>{if(l.getFlags()&98311)return"property"});return s||(e.getTypeOfSymbolAtLocation(t,r).getCallSignatures().length?"method":"property")}return"property"}return""}function zwe(e){if(e.declarations&&e.declarations.length){const[t,...r]=e.declarations,i=Me(r)&&L5(t)&&bt(r,s=>!L5(s))?65536:0,o=o2(t,i);if(o)return o.split(",")}return[]}function aat(e,t){if(!t)return"";const r=new Set(zwe(t));if(t.flags&2097152){const i=e.getAliasedSymbol(t);i!==t&&Ue(zwe(i),o=>{r.add(o)})}return t.flags&16777216&&r.add("optional"),r.size>0?zo(r.values()).join(","):""}function Bwe(e,t,r,i,o,s,l,u){var p;const h=[];let m=[],b=[];const A=LR(t);let I=l&1?Fwe(e,t,o):"",R=!1;const M=o.kind===110&&s3(o)||VA(o);let C,O,U=!1;if(o.kind===110&&!M)return{displayParts:[Tp(110)],documentation:[],symbolKind:"primitive type",tags:void 0};if(I!==""||A&32||A&2097152){if(I==="getter"||I==="setter"){const fe=An(t.declarations,Ne=>Ne.name===o);if(fe)switch(fe.kind){case 177:I="getter";break;case 178:I="setter";break;case 172:I="accessor";break;default:N.assertNever(fe)}else I="property"}let Y;if(s??(s=M?e.getTypeAtLocation(o):e.getTypeOfSymbolAtLocation(t,o)),o.parent&&o.parent.kind===211){const fe=o.parent.name;(fe===o||fe&&fe.getFullWidth()===0)&&(o=o.parent)}let oe;if(I_(o)?oe=o:(JK(o)||r2(o)||o.parent&&(ud(o.parent)||i1(o.parent))&&ea(t.valueDeclaration))&&(oe=o.parent),oe){Y=e.getResolvedSignature(oe);const fe=oe.kind===214||la(oe)&&oe.expression.kind===108,Ne=fe?s.getConstructSignatures():s.getCallSignatures();if(Y&&!Nr(Ne,Y.target)&&!Nr(Ne,Y)&&(Y=Ne.length?Ne[0]:void 0),Y){switch(fe&&A&32?(I="constructor",ne(s.symbol,I)):A&2097152?(I="alias",he(I),h.push(wl()),fe&&(Y.flags&4&&(h.push(Tp(128)),h.push(wl())),h.push(Tp(105)),h.push(wl())),G(t)):ne(t,I),I){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":h.push($u(59)),h.push(wl()),!(Wr(s)&16)&&s.symbol&&(Jr(h,u2(e,s.symbol,i,void 0,5)),h.push(CD())),fe&&(Y.flags&4&&(h.push(Tp(128)),h.push(wl())),h.push(Tp(105)),h.push(wl())),ye(Y,Ne,262144);break;default:ye(Y,Ne)}R=!0,U=Ne.length>1}}else if(tX(o)&&!(A&98304)||o.kind===137&&o.parent.kind===176){const fe=o.parent;if(t.declarations&&An(t.declarations,pe=>pe===(o.kind===137?fe.parent:fe))){const pe=fe.kind===176?s.getNonNullableType().getConstructSignatures():s.getNonNullableType().getCallSignatures();e.isImplementationOfOverload(fe)?Y=pe[0]:Y=e.getSignatureFromDeclaration(fe),fe.kind===176?(I="constructor",ne(s.symbol,I)):ne(fe.kind===179&&!(s.symbol.flags&2048||s.symbol.flags&4096)?s.symbol:t,I),Y&&ye(Y,pe),R=!0,U=pe.length>1}}}if(A&32&&!R&&!M&&(V(),fl(t,231)?he("local class"):h.push(Tp(86)),h.push(wl()),G(t),$(t,r)),A&64&&l&2&&(Z(),h.push(Tp(120)),h.push(wl()),G(t),$(t,r)),A&524288&&l&2&&(Z(),h.push(Tp(156)),h.push(wl()),G(t),$(t,r),h.push(wl()),h.push(c2(64)),h.push(wl()),Jr(h,yO(e,o.parent&&Og(o.parent)?e.getTypeAtLocation(o.parent):e.getDeclaredTypeOfSymbol(t),i,8388608))),A&384&&(Z(),bt(t.declarations,Y=>x0(Y)&&FE(Y))&&(h.push(Tp(87)),h.push(wl())),h.push(Tp(94)),h.push(wl()),G(t)),A&1536&&!M){Z();const Y=fl(t,267),oe=Y&&Y.name&&Y.name.kind===80;h.push(Tp(oe?145:144)),h.push(wl()),G(t)}if(A&262144&&l&2)if(Z(),h.push($u(21)),h.push(df("type parameter")),h.push($u(22)),h.push(wl()),G(t),t.parent)se(),G(t.parent,i),$(t.parent,i);else{const Y=fl(t,168);if(Y===void 0)return N.fail();const oe=Y.parent;if(oe)if(ea(oe)){se();const fe=e.getSignatureFromDeclaration(oe);oe.kind===180?(h.push(Tp(105)),h.push(wl())):oe.kind!==179&&oe.name&&G(oe.symbol),Jr(h,NX(e,fe,r,32))}else Nm(oe)&&(se(),h.push(Tp(156)),h.push(wl()),G(oe.symbol),$(oe.symbol,r))}if(A&8){I="enum member",ne(t,"enum member");const Y=(p=t.declarations)==null?void 0:p[0];if((Y==null?void 0:Y.kind)===306){const oe=e.getConstantValue(Y);oe!==void 0&&(h.push(wl()),h.push(c2(64)),h.push(wl()),h.push(ip(mie(oe),typeof oe=="number"?7:8)))}}if(t.flags&2097152){if(Z(),!R||m.length===0&&b.length===0){const Y=e.getAliasedSymbol(t);if(Y!==t&&Y.declarations&&Y.declarations.length>0){const oe=Y.declarations[0],fe=Mo(oe);if(fe&&!R){const Ne=H4(oe)&&Zr(oe,128),pe=t.name!=="default"&&!Ne,ie=Bwe(e,Y,jn(oe),oe,fe,s,l,pe?t:Y);h.push(...ie.displayParts),h.push(CD()),C=ie.documentation,O=ie.tags}else C=Y.getContextualDocumentationComment(oe,e),O=Y.getJsDocTags(e)}}if(t.declarations)switch(t.declarations[0].kind){case 270:h.push(Tp(95)),h.push(wl()),h.push(Tp(145));break;case 277:h.push(Tp(95)),h.push(wl()),h.push(Tp(t.declarations[0].isExportEquals?64:90));break;case 281:h.push(Tp(95));break;default:h.push(Tp(102))}h.push(wl()),G(t),Ue(t.declarations,Y=>{if(Y.kind===271){const oe=Y;if(h0(oe))h.push(wl()),h.push(c2(64)),h.push(wl()),h.push(Tp(149)),h.push($u(21)),h.push(ip(fc(xC(oe)),8)),h.push($u(22));else{const fe=e.getSymbolAtLocation(oe.moduleReference);fe&&(h.push(wl()),h.push(c2(64)),h.push(wl()),G(fe,i))}return!0}})}if(!R)if(I!==""){if(s){if(M?(Z(),h.push(Tp(110))):ne(t,I),I==="property"||I==="accessor"||I==="getter"||I==="setter"||I==="JSX attribute"||A&3||I==="local var"||I==="index"||I==="using"||I==="await using"||M){if(h.push($u(59)),h.push(wl()),s.symbol&&s.symbol.flags&262144&&I!=="index"){const Y=lb(oe=>{const fe=e.typeParameterToDeclaration(s,i,j_e);K().writeNode(4,fe,jn(Do(i)),oe)});Jr(h,Y)}else Jr(h,yO(e,s,i));if(mh(t)&&t.links.target&&mh(t.links.target)&&t.links.target.links.tupleLabelDeclaration){const Y=t.links.target.links.tupleLabelDeclaration;N.assertNode(Y.name,Ve),h.push(wl()),h.push($u(21)),h.push(df(Sr(Y.name))),h.push($u(22))}}else if(A&16||A&8192||A&16384||A&131072||A&98304||I==="method"){const Y=s.getNonNullableType().getCallSignatures();Y.length&&(ye(Y[0],Y),U=Y.length>1)}}}else I=Wwe(e,t,o);if(m.length===0&&!U&&(m=t.getContextualDocumentationComment(i,e)),m.length===0&&A&4&&t.parent&&t.declarations&&Ue(t.parent.declarations,Y=>Y.kind===312))for(const Y of t.declarations){if(!Y.parent||Y.parent.kind!==226)continue;const oe=e.getSymbolAtLocation(Y.parent.right);if(oe&&(m=oe.getDocumentationComment(e),b=oe.getJsDocTags(e),m.length>0))break}if(m.length===0&&Ve(o)&&t.valueDeclaration&&Qa(t.valueDeclaration)){const Y=t.valueDeclaration,oe=Y.parent,fe=Y.propertyName||Y.name;if(Ve(fe)&&am(oe)){const Ne=em(fe),pe=e.getTypeAtLocation(oe);m=Ut(pe.isUnion()?pe.types:[pe],ie=>{const ve=ie.getProperty(Ne);return ve?ve.getDocumentationComment(e):void 0})||et}}return b.length===0&&!U&&(b=t.getContextualJsDocTags(i,e)),m.length===0&&C&&(m=C),b.length===0&&O&&(b=O),{displayParts:h,documentation:m,symbolKind:I,tags:b.length===0?void 0:b};function K(){return g1()}function Z(){h.length&&h.push(CD()),V()}function V(){u&&(he("alias"),h.push(wl()))}function se(){h.push(wl()),h.push(Tp(103)),h.push(wl())}function G(Y,oe){let fe;u&&Y===t&&(Y=u),I==="index"&&(fe=e.getIndexInfosOfIndexSymbol(Y));let Ne=[];Y.flags&131072&&fe?(Y.parent&&(Ne=u2(e,Y.parent)),Ne.push($u(23)),fe.forEach((pe,ie)=>{Ne.push(...yO(e,pe.keyType)),ie!==fe.length-1&&(Ne.push(wl()),Ne.push($u(52)),Ne.push(wl()))}),Ne.push($u(24))):Ne=u2(e,Y,oe||r,void 0,7),Jr(h,Ne),t.flags&16777216&&h.push($u(58))}function ne(Y,oe){Z(),oe&&(he(oe),Y&&!bt(Y.declarations,fe=>Gs(fe)||(Os(fe)||Zc(fe))&&!fe.name)&&(h.push(wl()),G(Y)))}function he(Y){switch(Y){case"var":case"function":case"let":case"const":case"constructor":case"using":case"await using":h.push(RX(Y));return;default:h.push($u(21)),h.push(RX(Y)),h.push($u(22));return}}function ye(Y,oe,fe=0){Jr(h,NX(e,Y,i,fe|32)),oe.length>1&&(h.push(wl()),h.push($u(21)),h.push(c2(40)),h.push(ip((oe.length-1).toString(),7)),h.push(wl()),h.push(df(oe.length===2?"overload":"overloads")),h.push($u(22))),m=Y.getDocumentationComment(e),b=Y.getJsDocTags(),oe.length>1&&m.length===0&&b.length===0&&(m=oe[0].getDocumentationComment(e),b=oe[0].getJsDocTags().filter(Ne=>Ne.name!=="deprecated"))}function $(Y,oe){const fe=lb(Ne=>{const pe=e.symbolToTypeParameterDeclarations(Y,oe,j_e);K().writeList(53776,pe,jn(Do(oe)),Ne)});Jr(h,fe)}}function sat(e,t,r,i,o,s=oT(o),l){return Bwe(e,t,r,i,o,void 0,s,l)}function Gwe(e){return e.parent?!1:Ue(e.declarations,t=>{if(t.kind===218)return!0;if(t.kind!==260&&t.kind!==262)return!1;for(let r=t.parent;!BE(r);r=r.parent)if(r.kind===312||r.kind===268)return!1;return!0})}var j_e,lat=T({"src/services/symbolDisplay.ts"(){si(),j_e=70246400}}),iy={};X(iy,{getSymbolDisplayPartsDocumentationAndSymbolKind:()=>sat,getSymbolKind:()=>Wwe,getSymbolModifiers:()=>aat});var cat=T({"src/services/_namespaces/ts.SymbolDisplay.ts"(){lat()}});function Vwe(e){const t=e.__pos;return N.assert(typeof t=="number"),t}function U_e(e,t){N.assert(typeof t=="number"),e.__pos=t}function jwe(e){const t=e.__end;return N.assert(typeof t=="number"),t}function H_e(e,t){N.assert(typeof t=="number"),e.__end=t}function Uwe(e,t){return ka(e,t,!1,!0)}function uat(e,t){let r=t;for(;r<e.length;){const i=e.charCodeAt(r);if(A_(i)){r++;continue}return i===47}return!1}function l8(e,t,r,i){return{pos:pT(e,t,i),end:JD(e,r,i)}}function pT(e,t,r,i=!1){var o,s;const{leadingTriviaOption:l}=r;if(l===0)return t.getStart(e);if(l===3){const I=t.getStart(e),R=lm(I,e);return sO(t,R)?R:I}if(l===2){const I=wj(t,e.text);if(I!=null&&I.length)return lm(I[0].pos,e)}const u=t.getFullStart(),p=t.getStart(e);if(u===p)return p;const h=lm(u,e);if(lm(p,e)===h)return l===1?u:p;if(i){const I=((o=Yh(e.text,u))==null?void 0:o[0])||((s=a0(e.text,u))==null?void 0:s[0]);if(I)return ka(e.text,I.end,!0,!0)}const b=u>0?1:0;let A=Gy(WC(e,h)+b,e);return A=Uwe(e.text,A),Gy(WC(e,A),e)}function q_e(e,t,r){const{end:i}=t,{trailingTriviaOption:o}=r;if(o===2){const s=a0(e.text,i);if(s){const l=WC(e,t.end);for(const u of s){if(u.kind===2||WC(e,u.pos)>l)break;if(WC(e,u.end)>l)return ka(e.text,u.end,!0,!0)}}}}function JD(e,t,r){var i;const{end:o}=t,{trailingTriviaOption:s}=r;if(s===0)return o;if(s===1){const p=So(a0(e.text,o),Yh(e.text,o)),h=(i=p==null?void 0:p[p.length-1])==null?void 0:i.end;return h||o}const l=q_e(e,t,r);if(l)return l;const u=ka(e.text,o,!0);return u!==o&&(s===2||Hu(e.text.charCodeAt(u-1)))?u:o}function ZQ(e,t){return!!t&&!!e.parent&&(t.kind===28||t.kind===27&&e.parent.kind===210)}function dat(e){return Os(e)||Ac(e)}function pat(e){if(e.kind!==219)return e;const t=e.parent.kind===172?e.parent:e.parent.parent;return t.jsDoc=e.jsDoc,t}function fat(e,t){if(e.kind===t.kind)switch(e.kind){case 348:{const r=e,i=t;return Ve(r.name)&&Ve(i.name)&&r.name.escapedText===i.name.escapedText?w.createJSDocParameterTag(void 0,i.name,!1,i.typeExpression,i.isNameFirst,r.comment):void 0}case 349:return w.createJSDocReturnTag(void 0,t.typeExpression,e.comment);case 351:return w.createJSDocTypeTag(void 0,t.typeExpression,e.comment)}}function J_e(e,t){return ka(e.text,pT(e,t,{leadingTriviaOption:1}),!1,!0)}function mat(e,t,r,i){const o=J_e(e,i);if(r===void 0||Rf(JD(e,t,{}),o,e))return o;const s=xc(i.getStart(e),e);if(ZQ(t,s)){const l=xc(t.getStart(e),e);if(ZQ(r,l)){const u=ka(e.text,s.getEnd(),!0,!0);if(Rf(l.getStart(e),s.getStart(e),e))return Hu(e.text.charCodeAt(u-1))?u-1:u;if(Hu(e.text.charCodeAt(u)))return u}}return o}function _at(e,t){const r=vs(e,19,t),i=vs(e,20,t);return[r==null?void 0:r.end,i==null?void 0:i.end]}function eZ(e){return Oa(e)?e.properties:e.members}function K_e(e,t){for(let r=t.length-1;r>=0;r--){const{span:i,newText:o}=t[r];e=`${e.substring(0,i.start)}${o}${e.substring(Kl(i))}`}return e}function hat(e){return ka(e,0)===e.length}function tZ(e){const t=In(e,tZ,Kwe,gat,tZ),r=$s(t)?t:Object.create(t);return vh(r,Vwe(e),jwe(e)),r}function gat(e,t,r,i,o){const s=Vn(e,t,r,i,o);if(!s)return s;N.assert(e);const l=s===e?w.createNodeArray(s.slice(0)):s;return vh(l,Vwe(e),jwe(e)),l}function Hwe(e){let t=0;const r=pk(e),i=ie=>{ie&&U_e(ie,t)},o=ie=>{ie&&H_e(ie,t)},s=ie=>{ie&&U_e(ie,t)},l=ie=>{ie&&H_e(ie,t)},u=ie=>{ie&&U_e(ie,t)},p=ie=>{ie&&H_e(ie,t)};function h(ie,ve){if(ve||!hat(ie)){t=r.getTextPos();let Le=0;for(;wg(ie.charCodeAt(ie.length-Le-1));)Le++;t-=Le}}function m(ie){r.write(ie),h(ie,!1)}function b(ie){r.writeComment(ie)}function A(ie){r.writeKeyword(ie),h(ie,!1)}function I(ie){r.writeOperator(ie),h(ie,!1)}function R(ie){r.writePunctuation(ie),h(ie,!1)}function M(ie){r.writeTrailingSemicolon(ie),h(ie,!1)}function C(ie){r.writeParameter(ie),h(ie,!1)}function O(ie){r.writeProperty(ie),h(ie,!1)}function U(ie){r.writeSpace(ie),h(ie,!1)}function K(ie){r.writeStringLiteral(ie),h(ie,!1)}function Z(ie,ve){r.writeSymbol(ie,ve),h(ie,!1)}function V(ie){r.writeLine(ie)}function se(){r.increaseIndent()}function G(){r.decreaseIndent()}function ne(){return r.getText()}function he(ie){r.rawWrite(ie),h(ie,!1)}function ye(ie){r.writeLiteral(ie),h(ie,!0)}function $(){return r.getTextPos()}function Y(){return r.getLine()}function oe(){return r.getColumn()}function fe(){return r.getIndent()}function Ne(){return r.isAtStartOfLine()}function pe(){r.clear(),t=0}return{onBeforeEmitNode:i,onAfterEmitNode:o,onBeforeEmitNodeArray:s,onAfterEmitNodeArray:l,onBeforeEmitToken:u,onAfterEmitToken:p,write:m,writeComment:b,writeKeyword:A,writeOperator:I,writePunctuation:R,writeTrailingSemicolon:M,writeParameter:C,writeProperty:O,writeSpace:U,writeStringLiteral:K,writeSymbol:Z,writeLine:V,increaseIndent:se,decreaseIndent:G,getText:ne,rawWrite:he,writeLiteral:ye,getTextPos:$,getLine:Y,getColumn:oe,getIndent:fe,isAtStartOfLine:Ne,hasTrailingComment:()=>r.hasTrailingComment(),hasTrailingWhitespace:()=>r.hasTrailingWhitespace(),clear:pe}}function vat(e){let t;for(const h of e.statements)if(Im(h))t=h;else break;let r=0;const i=e.text;if(t)return r=t.end,p(),r;const o=h4(i);o!==void 0&&(r=o.length,p());const s=Yh(i,r);if(!s)return r;let l,u;for(const h of s){if(h.kind===3){if(j4(i,h.pos)){l={range:h,pinnedOrTripleSlash:!0};continue}}else if(bj(i,h.pos,h.end)){l={range:h,pinnedOrTripleSlash:!0};continue}if(l){if(l.pinnedOrTripleSlash)break;const m=e.getLineAndCharacterOfPosition(h.pos).line,b=e.getLineAndCharacterOfPosition(l.range.end).line;if(m>=b+2)break}if(e.statements.length){u===void 0&&(u=e.getLineAndCharacterOfPosition(e.statements[0].getStart()).line);const m=e.getLineAndCharacterOfPosition(h.end).line;if(u<m+2)break}l={range:h,pinnedOrTripleSlash:!1}}return l&&(r=l.range.end,p()),r;function p(){if(r<i.length){const h=i.charCodeAt(r);Hu(h)&&(r++,r<i.length&&h===13&&i.charCodeAt(r)===10&&r++)}}}function qwe(e,t){return!Qv(e,t)&&!CI(e,t)&&!aX(e,t)&&!kue(e,t)}function yat(e,t){return(yp(e)||Jo(e))&&D4(t)&&t.name.kind===167||TL(e)&&TL(t)}function Yg(e,t,r,i={leadingTriviaOption:1}){const o=pT(t,r,i),s=JD(t,r,i);e.deleteRange(t,{pos:o,end:s})}function c8(e,t,r,i){const o=N.checkDefined(Oc.SmartIndenter.getContainingList(i,r)),s=sR(o,i);if(N.assert(s!==-1),o.length===1){Yg(e,r,i);return}N.assert(!t.has(i),"Deleting a node twice"),t.add(i),e.deleteRange(r,{pos:J_e(r,i),end:s===o.length-1?JD(r,i,{}):mat(r,i,o[s-1],o[s+1])})}var X_e,Y_e,I2,Jwe,nZ,Kwe,$_e,bat=T({"src/services/textChanges.ts"(){si(),X_e=(e=>(e[e.Exclude=0]="Exclude",e[e.IncludeAll=1]="IncludeAll",e[e.JSDoc=2]="JSDoc",e[e.StartLine=3]="StartLine",e))(X_e||{}),Y_e=(e=>(e[e.Exclude=0]="Exclude",e[e.ExcludeWhitespace=1]="ExcludeWhitespace",e[e.Include=2]="Include",e))(Y_e||{}),I2={leadingTriviaOption:0,trailingTriviaOption:0},Jwe=class jbe{constructor(t,r){this.newLineCharacter=t,this.formatContext=r,this.changes=[],this.classesWithNodesInsertedAtStart=new Map,this.deletedNodes=[]}static fromContext(t){return new jbe(ty(t.host,t.formatContext.options),t.formatContext)}static with(t,r){const i=jbe.fromContext(t);return r(i),i.getChanges()}pushRaw(t,r){N.assertEqual(t.fileName,r.fileName);for(const i of r.textChanges)this.changes.push({kind:3,sourceFile:t,text:i.newText,range:d5(i.span)})}deleteRange(t,r){this.changes.push({kind:0,sourceFile:t,range:r})}delete(t,r){this.deletedNodes.push({sourceFile:t,node:r})}deleteNode(t,r,i={leadingTriviaOption:1}){this.deleteRange(t,l8(t,r,r,i))}deleteNodes(t,r,i={leadingTriviaOption:1},o){for(const s of r){const l=pT(t,s,i,o),u=JD(t,s,i);this.deleteRange(t,{pos:l,end:u}),o=!!q_e(t,s,i)}}deleteModifier(t,r){this.deleteRange(t,{pos:r.getStart(t),end:ka(t.text,r.end,!0)})}deleteNodeRange(t,r,i,o={leadingTriviaOption:1}){const s=pT(t,r,o),l=JD(t,i,o);this.deleteRange(t,{pos:s,end:l})}deleteNodeRangeExcludingEnd(t,r,i,o={leadingTriviaOption:1}){const s=pT(t,r,o),l=i===void 0?t.text.length:pT(t,i,o);this.deleteRange(t,{pos:s,end:l})}replaceRange(t,r,i,o={}){this.changes.push({kind:1,sourceFile:t,range:r,options:o,node:i})}replaceNode(t,r,i,o=I2){this.replaceRange(t,l8(t,r,r,o),i,o)}replaceNodeRange(t,r,i,o,s=I2){this.replaceRange(t,l8(t,r,i,s),o,s)}replaceRangeWithNodes(t,r,i,o={}){this.changes.push({kind:2,sourceFile:t,range:r,options:o,nodes:i})}replaceNodeWithNodes(t,r,i,o=I2){this.replaceRangeWithNodes(t,l8(t,r,r,o),i,o)}replaceNodeWithText(t,r,i){this.replaceRangeWithText(t,l8(t,r,r,I2),i)}replaceNodeRangeWithNodes(t,r,i,o,s=I2){this.replaceRangeWithNodes(t,l8(t,r,i,s),o,s)}nodeHasTrailingComment(t,r,i=I2){return!!q_e(t,r,i)}nextCommaToken(t,r){const i=b1(r,r.parent,t);return i&&i.kind===28?i:void 0}replacePropertyAssignment(t,r,i){const o=this.nextCommaToken(t,r)?"":","+this.newLineCharacter;this.replaceNode(t,r,i,{suffix:o})}insertNodeAt(t,r,i,o={}){this.replaceRange(t,xf(r),i,o)}insertNodesAt(t,r,i,o={}){this.replaceRangeWithNodes(t,xf(r),i,o)}insertNodeAtTopOfFile(t,r,i){this.insertAtTopOfFile(t,r,i)}insertNodesAtTopOfFile(t,r,i){this.insertAtTopOfFile(t,r,i)}insertAtTopOfFile(t,r,i){const o=vat(t),s={prefix:o===0?void 0:this.newLineCharacter,suffix:(Hu(t.text.charCodeAt(o))?"":this.newLineCharacter)+(i?this.newLineCharacter:"")};To(r)?this.insertNodesAt(t,o,r,s):this.insertNodeAt(t,o,r,s)}insertNodesAtEndOfFile(t,r,i){this.insertAtEndOfFile(t,r,i)}insertAtEndOfFile(t,r,i){const o=t.end+1,s={prefix:this.newLineCharacter,suffix:this.newLineCharacter+(i?this.newLineCharacter:"")};this.insertNodesAt(t,o,r,s)}insertStatementsInNewFile(t,r,i){this.newFileChanges||(this.newFileChanges=Zp()),this.newFileChanges.add(t,{oldFile:i,statements:r})}insertFirstParameter(t,r,i){const o=Xc(r);o?this.insertNodeBefore(t,o,i):this.insertNodeAt(t,r.pos,i)}insertNodeBefore(t,r,i,o=!1,s={}){this.insertNodeAt(t,pT(t,r,s),i,this.getOptionsForInsertNodeBefore(r,i,o))}insertNodesBefore(t,r,i,o=!1,s={}){this.insertNodesAt(t,pT(t,r,s),i,this.getOptionsForInsertNodeBefore(r,Ha(i),o))}insertModifierAt(t,r,i,o={}){this.insertNodeAt(t,r,w.createToken(i),o)}insertModifierBefore(t,r,i){return this.insertModifierAt(t,i.getStart(t),r,{suffix:" "})}insertCommentBeforeLine(t,r,i,o){const s=Gy(r,t),l=tde(t.text,s),u=qwe(t,l),p=xD(t,u?l:i),h=t.text.slice(s,l),m=`${u?"":this.newLineCharacter}//${o}${this.newLineCharacter}${h}`;this.insertText(t,p.getStart(t),m)}insertJsdocCommentBefore(t,r,i){const o=r.getStart(t);if(r.jsDoc)for(const u of r.jsDoc)this.deleteRange(t,{pos:lm(u.getStart(t),t),end:JD(t,u,{})});const s=E5(t.text,o-1),l=t.text.slice(s,o);this.insertNodeAt(t,o,i,{suffix:this.newLineCharacter+l})}createJSDocText(t,r){const i=Pi(r.jsDoc,s=>Po(s.comment)?w.createJSDocText(s.comment):s.comment),o=sh(r.jsDoc);return o&&Rf(o.pos,o.end,t)&&Me(i)===0?void 0:w.createNodeArray(co(i,w.createJSDocText(`
+`)))}replaceJSDocComment(t,r,i){this.insertJsdocCommentBefore(t,pat(r),w.createJSDocComment(this.createJSDocText(t,r),w.createNodeArray(i)))}addJSDocTags(t,r,i){const o=rc(r.jsDoc,l=>l.tags),s=i.filter(l=>!o.some((u,p)=>{const h=fat(u,l);return h&&(o[p]=h),!!h}));this.replaceJSDocComment(t,r,[...o,...s])}filterJSDocTags(t,r,i){this.replaceJSDocComment(t,r,nr(rc(r.jsDoc,o=>o.tags),i))}replaceRangeWithText(t,r,i){this.changes.push({kind:3,sourceFile:t,range:r,text:i})}insertText(t,r,i){this.replaceRangeWithText(t,xf(r),i)}tryInsertTypeAnnotation(t,r,i){let o;if(ea(r)){if(o=vs(r,22,t),!o){if(!Gs(r))return!1;o=Ha(r.parameters)}}else o=(r.kind===260?r.exclamationToken:r.questionToken)??r.name;return this.insertNodeAt(t,o.end,i,{prefix:": "}),!0}tryInsertThisTypeAnnotation(t,r,i){const o=vs(r,21,t).getStart(t)+1,s=r.parameters.length?", ":"";this.insertNodeAt(t,o,i,{prefix:"this: ",suffix:s})}insertTypeParameters(t,r,i){const o=(vs(r,21,t)||Ha(r.parameters)).getStart(t);this.insertNodesAt(t,o,i,{prefix:"<",suffix:">",joiner:", "})}getOptionsForInsertNodeBefore(t,r,i){return qi(t)||$c(t)?{suffix:i?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}:wi(t)?{suffix:", "}:Ao(t)?Ao(r)?{suffix:", "}:{}:Ma(t)&&kc(t.parent)||Hg(t)?{suffix:", "}:np(t)?{suffix:","+(i?this.newLineCharacter:" ")}:N.failBadSyntaxKind(t)}insertNodeAtConstructorStart(t,r,i){const o=Xc(r.body.statements);!o||!r.body.multiLine?this.replaceConstructorBody(t,r,[i,...r.body.statements]):this.insertNodeBefore(t,o,i)}insertNodeAtConstructorStartAfterSuperCall(t,r,i){const o=An(r.body.statements,s=>eu(s)&&IS(s.expression));!o||!r.body.multiLine?this.replaceConstructorBody(t,r,[...r.body.statements,i]):this.insertNodeAfter(t,o,i)}insertNodeAtConstructorEnd(t,r,i){const o=tl(r.body.statements);!o||!r.body.multiLine?this.replaceConstructorBody(t,r,[...r.body.statements,i]):this.insertNodeAfter(t,o,i)}replaceConstructorBody(t,r,i){this.replaceNode(t,r.body,w.createBlock(i,!0))}insertNodeAtEndOfScope(t,r,i){const o=pT(t,r.getLastToken(),{});this.insertNodeAt(t,o,i,{prefix:Hu(t.text.charCodeAt(r.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})}insertMemberAtStart(t,r,i){this.insertNodeAtStartWorker(t,r,i)}insertNodeAtObjectStart(t,r,i){this.insertNodeAtStartWorker(t,r,i)}insertNodeAtStartWorker(t,r,i){const o=this.guessIndentationFromExistingMembers(t,r)??this.computeIndentationForNewMember(t,r);this.insertNodeAt(t,eZ(r).pos,i,this.getInsertNodeAtStartInsertOptions(t,r,o))}guessIndentationFromExistingMembers(t,r){let i,o=r;for(const s of eZ(r)){if(W3(o,s,t))return;const l=s.getStart(t),u=Oc.SmartIndenter.findFirstNonWhitespaceColumn(lm(l,t),l,t,this.formatContext.options);if(i===void 0)i=u;else if(u!==i)return;o=s}return i}computeIndentationForNewMember(t,r){const i=r.getStart(t);return Oc.SmartIndenter.findFirstNonWhitespaceColumn(lm(i,t),i,t,this.formatContext.options)+(this.formatContext.options.indentSize??4)}getInsertNodeAtStartInsertOptions(t,r,i){const s=eZ(r).length===0,l=Rm(this.classesWithNodesInsertedAtStart,as(r),{node:r,sourceFile:t}),u=Oa(r)&&(!Qf(t)||!s),p=Oa(r)&&Qf(t)&&s&&!l;return{indentation:i,prefix:(p?",":"")+this.newLineCharacter,suffix:u?",":hd(r)&&s?";":""}}insertNodeAfterComma(t,r,i){const o=this.insertNodeAfterWorker(t,this.nextCommaToken(t,r)||r,i);this.insertNodeAt(t,o,i,this.getInsertNodeAfterOptions(t,r))}insertNodeAfter(t,r,i){const o=this.insertNodeAfterWorker(t,r,i);this.insertNodeAt(t,o,i,this.getInsertNodeAfterOptions(t,r))}insertNodeAtEndOfList(t,r,i){this.insertNodeAt(t,r.end,i,{prefix:", "})}insertNodesAfter(t,r,i){const o=this.insertNodeAfterWorker(t,r,Ha(i));this.insertNodesAt(t,o,i,this.getInsertNodeAfterOptions(t,r))}insertNodeAfterWorker(t,r,i){return yat(r,i)&&t.text.charCodeAt(r.end-1)!==59&&this.replaceRange(t,xf(r.end),w.createToken(27)),JD(t,r,{})}getInsertNodeAfterOptions(t,r){const i=this.getInsertNodeAfterOptionsWorker(r);return{...i,prefix:r.end===t.end&&qi(r)?i.prefix?`
+${i.prefix}`:`
+`:i.prefix}}getInsertNodeAfterOptionsWorker(t){switch(t.kind){case 263:case 267:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 260:case 11:case 80:return{prefix:", "};case 303:return{suffix:","+this.newLineCharacter};case 95:return{prefix:" "};case 169:return{};default:return N.assert(qi(t)||D4(t)),{suffix:this.newLineCharacter}}}insertName(t,r,i){if(N.assert(!r.name),r.kind===219){const o=vs(r,39,t),s=vs(r,21,t);s?(this.insertNodesAt(t,s.getStart(t),[w.createToken(100),w.createIdentifier(i)],{joiner:" "}),Yg(this,t,o)):(this.insertText(t,Ha(r.parameters).getStart(t),`function ${i}(`),this.replaceRange(t,o,w.createToken(22))),r.body.kind!==241&&(this.insertNodesAt(t,r.body.getStart(t),[w.createToken(19),w.createToken(107)],{joiner:" ",suffix:" "}),this.insertNodesAt(t,r.body.end,[w.createToken(27),w.createToken(20)],{joiner:" "}))}else{const o=vs(r,r.kind===218?100:86,t).end;this.insertNodeAt(t,o,w.createIdentifier(i),{prefix:" "})}}insertExportModifier(t,r){this.insertText(t,r.getStart(t),"export ")}insertImportSpecifierAtIndex(t,r,i,o){const s=i.elements[o-1];s?this.insertNodeInListAfter(t,s,r):this.insertNodeBefore(t,i.elements[0],r,!Rf(i.elements[0].getStart(),i.parent.parent.getStart(),t))}insertNodeInListAfter(t,r,i,o=Oc.SmartIndenter.getContainingList(r,t)){if(!o){N.fail("node is not a list element");return}const s=sR(o,r);if(s<0)return;const l=r.getEnd();if(s!==o.length-1){const u=po(t,r.end);if(u&&ZQ(r,u)){const p=o[s+1],h=Uwe(t.text,p.getFullStart()),m=`${fa(u.kind)}${t.text.substring(u.end,h)}`;this.insertNodesAt(t,h,[i],{suffix:m})}}else{const u=r.getStart(t),p=lm(u,t);let h,m=!1;if(o.length===1)h=28;else{const b=xc(r.pos,t);h=ZQ(r,b)?b.kind:28,m=lm(o[s-1].getStart(t),t)!==p}if((uat(t.text,r.end)||!Rf(o.pos,o.end,t))&&(m=!0),m){this.replaceRange(t,xf(l),w.createToken(h));const b=Oc.SmartIndenter.findFirstNonWhitespaceColumn(p,u,t,this.formatContext.options);let A=ka(t.text,l,!0,!1);for(;A!==l&&Hu(t.text.charCodeAt(A-1));)A--;this.replaceRange(t,xf(A),i,{indentation:b,prefix:this.newLineCharacter})}else this.replaceRange(t,xf(l),i,{prefix:`${fa(h)} `})}}parenthesizeExpression(t,r){this.replaceRange(t,GU(r),w.createParenthesizedExpression(r))}finishClassesWithNodesInsertedAtStart(){this.classesWithNodesInsertedAtStart.forEach(({node:t,sourceFile:r})=>{const[i,o]=_at(t,r);if(i!==void 0&&o!==void 0){const s=eZ(t).length===0,l=Rf(i,o,r);s&&l&&i!==o-1&&this.deleteRange(r,xf(i,o-1)),l&&this.insertText(r,o-1,this.newLineCharacter)}})}finishDeleteDeclarations(){const t=new Set;for(const{sourceFile:r,node:i}of this.deletedNodes)this.deletedNodes.some(o=>o.sourceFile===r&&Due(o.node,i))||(To(i)?this.deleteRange(r,VU(r,i)):$_e.deleteDeclaration(this,t,r,i));t.forEach(r=>{const i=r.getSourceFile(),o=Oc.SmartIndenter.getContainingList(r,i);if(r!==Ya(o))return;const s=Bi(o,l=>!t.has(l),o.length-2);s!==-1&&this.deleteRange(i,{pos:o[s].end,end:J_e(i,o[s+1])})})}getChanges(t){this.finishDeleteDeclarations(),this.finishClassesWithNodesInsertedAtStart();const r=nZ.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,t);return this.newFileChanges&&this.newFileChanges.forEach((i,o)=>{r.push(nZ.newFileChanges(o,i,this.newLineCharacter,this.formatContext))}),r}createNewFile(t,r,i){this.insertStatementsInNewFile(r,i,t)}},(e=>{function t(u,p,h,m){return Hi(YN(u,b=>b.sourceFile.path),b=>{const A=b[0].sourceFile,I=Dv(b,(M,C)=>M.range.pos-C.range.pos||M.range.end-C.range.end);for(let M=0;M<I.length-1;M++)N.assert(I[M].range.end<=I[M+1].range.pos,"Changes overlap",()=>`${JSON.stringify(I[M].range)} and ${JSON.stringify(I[M+1].range)}`);const R=Hi(I,M=>{const C=sb(M.range),O=M.kind===1?jn(Pl(M.node))??M.sourceFile:M.kind===2?jn(Pl(M.nodes[0]))??M.sourceFile:M.sourceFile,U=o(M,O,A,p,h,m);if(!(C.length===U.length&&fde(O.text,U,C.start)))return fO(C,U)});return R.length>0?{fileName:A.fileName,textChanges:R}:void 0})}e.getTextChangesFromChanges=t;function r(u,p,h,m){const b=i(Z3(u),p,h,m);return{fileName:u,textChanges:[fO(vu(0,0),b)],isNewFile:!0}}e.newFileChanges=r;function i(u,p,h,m){const b=Pi(p,R=>R.statements.map(M=>M===4?"":l(M,R.oldFile,h).text)).join(h),A=dw("any file name",b,{languageVersion:99,jsDocParsingMode:1},!0,u),I=Oc.formatDocument(A,m);return K_e(b,I)+h}e.newFileChangesWorker=i;function o(u,p,h,m,b,A){var I;if(u.kind===0)return"";if(u.kind===3)return u.text;const{options:R={},range:{pos:M}}=u,C=K=>s(K,p,h,M,R,m,b,A),O=u.kind===2?u.nodes.map(K=>Bx(C(K),m)).join(((I=u.options)==null?void 0:I.joiner)||m):C(u.node),U=R.indentation!==void 0||lm(M,p)===M?O:O.replace(/^\s+/,"");return(R.prefix||"")+U+(!R.suffix||Al(U,R.suffix)?"":R.suffix)}function s(u,p,h,m,{indentation:b,prefix:A,delta:I},R,M,C){const{node:O,text:U}=l(u,p,R);C&&C(O,U);const K=w5(M,p),Z=b!==void 0?b:Oc.SmartIndenter.getIndentation(m,h,K,A===R||lm(m,p)===m);I===void 0&&(I=Oc.SmartIndenter.shouldIndentChildNode(K,u)&&K.indentSize||0);const V={text:U,getLineAndCharacterOfPosition(G){return bs(this,G)}},se=Oc.formatNodeGivenIndentation(O,V,p.languageVariant,Z,I,{...M,options:K});return K_e(U,se)}function l(u,p,h){const m=Hwe(h),b=xO(h);return k0({newLine:b,neverAsciiEscape:!0,preserveSourceNewlines:!0,terminateUnterminatedLiterals:!0},m).writeNode(4,u,p,m),{text:m.getText(),node:tZ(u)}}e.getNonformattedText=l})(nZ||(nZ={})),Kwe={...JP,factory:wk(JP.factory.flags|1,JP.factory.baseFactory)},(e=>{function t(s,l,u,p){switch(p.kind){case 169:{const I=p.parent;Gs(I)&&I.parameters.length===1&&!vs(I,21,u)?s.replaceNodeWithText(u,p,"()"):c8(s,l,u,p);break}case 272:case 271:const h=u.imports.length&&p===Ha(u.imports).parent||p===An(u.statements,TS);Yg(s,u,p,{leadingTriviaOption:h?0:Fp(p)?2:3});break;case 208:const m=p.parent;m.kind===207&&p!==Ya(m.elements)?Yg(s,u,p):c8(s,l,u,p);break;case 260:o(s,l,u,p);break;case 168:c8(s,l,u,p);break;case 276:const A=p.parent;A.elements.length===1?i(s,u,A):c8(s,l,u,p);break;case 274:i(s,u,p);break;case 27:Yg(s,u,p,{trailingTriviaOption:0});break;case 100:Yg(s,u,p,{leadingTriviaOption:0});break;case 263:case 262:Yg(s,u,p,{leadingTriviaOption:Fp(p)?2:3});break;default:p.parent?Sh(p.parent)&&p.parent.name===p?r(s,u,p.parent):la(p.parent)&&Nr(p.parent.arguments,p)?c8(s,l,u,p):Yg(s,u,p):Yg(s,u,p)}}e.deleteDeclaration=t;function r(s,l,u){if(!u.namedBindings)Yg(s,l,u.parent);else{const p=u.name.getStart(l),h=po(l,u.name.end);if(h&&h.kind===28){const m=ka(l.text,h.end,!1,!0);s.deleteRange(l,{pos:p,end:m})}else Yg(s,l,u.name)}}function i(s,l,u){if(u.parent.name){const p=N.checkDefined(po(l,u.pos-1));s.deleteRange(l,{pos:p.getStart(l),end:u.end})}else{const p=b0(u,272);Yg(s,l,p)}}function o(s,l,u,p){const{parent:h}=p;if(h.kind===299){s.deleteNodeRange(u,vs(h,21,u),vs(h,22,u));return}if(h.declarations.length!==1){c8(s,l,u,p);return}const m=h.parent;switch(m.kind){case 250:case 249:s.replaceNode(u,p,w.createObjectLiteralExpression());break;case 248:Yg(s,u,h);break;case 243:Yg(s,u,m,{leadingTriviaOption:Fp(m)?2:3});break;default:N.assertNever(m)}}})($_e||($_e={}))}}),_r={};X(_r,{ChangeTracker:()=>Jwe,LeadingTriviaOption:()=>X_e,TrailingTriviaOption:()=>Y_e,applyChanges:()=>K_e,assignPositionsToNode:()=>tZ,createWriter:()=>Hwe,deleteNode:()=>Yg,isThisTypeAnnotatable:()=>dat,isValidLocationToAddComment:()=>qwe});var Eat=T({"src/services/_namespaces/ts.textChanges.ts"(){bat()}}),Q_e,Z_e,Sat=T({"src/services/formatting/formattingContext.ts"(){si(),Q_e=(e=>(e[e.FormatDocument=0]="FormatDocument",e[e.FormatSelection=1]="FormatSelection",e[e.FormatOnEnter=2]="FormatOnEnter",e[e.FormatOnSemicolon=3]="FormatOnSemicolon",e[e.FormatOnOpeningCurlyBrace=4]="FormatOnOpeningCurlyBrace",e[e.FormatOnClosingCurlyBrace=5]="FormatOnClosingCurlyBrace",e))(Q_e||{}),Z_e=class{constructor(e,t,r){this.sourceFile=e,this.formattingRequestKind=t,this.options=r}updateContext(e,t,r,i,o){this.currentTokenSpan=N.checkDefined(e),this.currentTokenParent=N.checkDefined(t),this.nextTokenSpan=N.checkDefined(r),this.nextTokenParent=N.checkDefined(i),this.contextNode=N.checkDefined(o),this.contextNodeAllOnSameLine=void 0,this.nextNodeAllOnSameLine=void 0,this.tokensAreOnSameLine=void 0,this.contextNodeBlockIsOnOneLine=void 0,this.nextNodeBlockIsOnOneLine=void 0}ContextNodeAllOnSameLine(){return this.contextNodeAllOnSameLine===void 0&&(this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)),this.contextNodeAllOnSameLine}NextNodeAllOnSameLine(){return this.nextNodeAllOnSameLine===void 0&&(this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)),this.nextNodeAllOnSameLine}TokensAreOnSameLine(){if(this.tokensAreOnSameLine===void 0){const e=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line,t=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=e===t}return this.tokensAreOnSameLine}ContextNodeBlockIsOnOneLine(){return this.contextNodeBlockIsOnOneLine===void 0&&(this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)),this.contextNodeBlockIsOnOneLine}NextNodeBlockIsOnOneLine(){return this.nextNodeBlockIsOnOneLine===void 0&&(this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)),this.nextNodeBlockIsOnOneLine}NodeIsOnOneLine(e){const t=this.sourceFile.getLineAndCharacterOfPosition(e.getStart(this.sourceFile)).line,r=this.sourceFile.getLineAndCharacterOfPosition(e.getEnd()).line;return t===r}BlockIsOnOneLine(e){const t=vs(e,19,this.sourceFile),r=vs(e,20,this.sourceFile);if(t&&r){const i=this.sourceFile.getLineAndCharacterOfPosition(t.getEnd()).line,o=this.sourceFile.getLineAndCharacterOfPosition(r.getStart(this.sourceFile)).line;return i===o}return!1}}}});function ehe(e,t,r,i,o){const s=t===1?Ywe:Xwe;s.setText(e),s.resetTokenState(r);let l=!0,u,p,h,m,b;const A=o({advance:I,readTokenInfo:V,readEOFTokenRange:G,isOnToken:ne,isOnEOF:he,getCurrentLeadingTrivia:()=>u,lastTrailingTriviaWasNewLine:()=>l,skipToEndOf:$,skipToStartOf:Y,getTokenFullStart:()=>(b==null?void 0:b.token.pos)??s.getTokenStart(),getStartPos:()=>(b==null?void 0:b.token.pos)??s.getTokenStart()});return b=void 0,s.setText(void 0),A;function I(){b=void 0,s.getTokenFullStart()!==r?l=!!p&&Ya(p).kind===4:s.scan(),u=void 0,p=void 0;let fe=s.getTokenFullStart();for(;fe<i;){const Ne=s.getToken();if(!IR(Ne))break;s.scan();const pe={pos:fe,end:s.getTokenFullStart(),kind:Ne};fe=s.getTokenFullStart(),u=xn(u,pe)}h=s.getTokenFullStart()}function R(oe){switch(oe.kind){case 34:case 72:case 73:case 50:case 49:return!0}return!1}function M(oe){if(oe.parent)switch(oe.parent.kind){case 291:case 286:case 287:case 285:return Bd(oe.kind)||oe.kind===80}return!1}function C(oe){return nI(oe)||dg(oe)&&(b==null?void 0:b.token.kind)===12}function O(oe){return oe.kind===14}function U(oe){return oe.kind===17||oe.kind===18}function K(oe){return oe.parent&&F_(oe.parent)&&oe.parent.initializer===oe}function Z(oe){return oe===44||oe===69}function V(oe){N.assert(ne());const fe=R(oe)?1:O(oe)?2:U(oe)?3:M(oe)?4:C(oe)?5:K(oe)?6:0;if(b&&fe===m)return ye(b,oe);s.getTokenFullStart()!==h&&(N.assert(b!==void 0),s.resetTokenState(h),s.scan());let Ne=se(oe,fe);const pe=aZ(s.getTokenFullStart(),s.getTokenEnd(),Ne);for(p&&(p=void 0);s.getTokenFullStart()<i&&(Ne=s.scan(),!!IR(Ne));){const ie=aZ(s.getTokenFullStart(),s.getTokenEnd(),Ne);if(p||(p=[]),p.push(ie),Ne===4){s.scan();break}}return b={leadingTrivia:u,trailingTrivia:p,token:pe},ye(b,oe)}function se(oe,fe){const Ne=s.getToken();switch(m=0,fe){case 1:if(Ne===32){m=1;const pe=s.reScanGreaterToken();return N.assert(oe.kind===pe),pe}break;case 2:if(Z(Ne)){m=2;const pe=s.reScanSlashToken();return N.assert(oe.kind===pe),pe}break;case 3:if(Ne===20)return m=3,s.reScanTemplateToken(!1);break;case 4:return m=4,s.scanJsxIdentifier();case 5:return m=5,s.reScanJsxToken(!1);case 6:return m=6,s.reScanJsxAttributeValue();case 0:break;default:N.assertNever(fe)}return Ne}function G(){return N.assert(he()),aZ(s.getTokenFullStart(),s.getTokenEnd(),1)}function ne(){const oe=b?b.token.kind:s.getToken();return oe!==1&&!IR(oe)}function he(){return(b?b.token.kind:s.getToken())===1}function ye(oe,fe){return NA(fe)&&oe.token.kind!==fe.kind&&(oe.token.kind=fe.kind),oe}function $(oe){s.resetTokenState(oe.end),h=s.getTokenFullStart(),m=void 0,b=void 0,l=!1,u=void 0,p=void 0}function Y(oe){s.resetTokenState(oe.pos),h=s.getTokenFullStart(),m=void 0,b=void 0,l=!1,u=void 0,p=void 0}}var Xwe,Ywe,Tat=T({"src/services/formatting/formattingScanner.ts"(){si(),p8(),Xwe=wv(99,!1,0),Ywe=wv(99,!1,1)}}),Bz,the,nhe,Aat=T({"src/services/formatting/rule.ts"(){si(),Bz=et,the=(e=>(e[e.None=0]="None",e[e.StopProcessingSpaceActions=1]="StopProcessingSpaceActions",e[e.StopProcessingTokenActions=2]="StopProcessingTokenActions",e[e.InsertSpace=4]="InsertSpace",e[e.InsertNewLine=8]="InsertNewLine",e[e.DeleteSpace=16]="DeleteSpace",e[e.DeleteToken=32]="DeleteToken",e[e.InsertTrailingSemicolon=64]="InsertTrailingSemicolon",e[e.StopAction=3]="StopAction",e[e.ModifySpaceAction=28]="ModifySpaceAction",e[e.ModifyTokenAction=96]="ModifyTokenAction",e))(the||{}),nhe=(e=>(e[e.None=0]="None",e[e.CanDeleteNewLines=1]="CanDeleteNewLines",e))(nhe||{})}});function $we(){const e=[];for(let se=0;se<=165;se++)se!==1&&e.push(se);function t(...se){return{tokens:e.filter(G=>!se.some(ne=>ne===G)),isSpecific:!1}}const r={tokens:e,isSpecific:!1},i=x2([...e,3]),o=x2([...e,1]),s=Zwe(83,165),l=Zwe(30,79),u=[103,104,165,130,142,152],p=[46,47,55,54],h=[9,10,80,21,23,19,110,105],m=[80,21,110,105],b=[80,22,24,105],A=[80,21,110,105],I=[80,22,24,105],R=[2,3],M=[80,...W5],C=i,O=x2([80,32,3,86,95,102]),U=x2([22,3,92,113,98,93,85]),K=[Yr("IgnoreBeforeComment",r,R,Bz,1),Yr("IgnoreAfterLineComment",2,r,Bz,1),Yr("NotSpaceBeforeColon",r,59,[Ki,Gz,nOe],16),Yr("SpaceAfterColon",59,r,[Ki,Gz,Gat],4),Yr("NoSpaceBeforeQuestionMark",r,58,[Ki,Gz,nOe],16),Yr("SpaceAfterQuestionMarkInConditionalOperator",58,r,[Ki,Dat],4),Yr("NoSpaceAfterQuestionMark",58,r,[Ki,Rat],16),Yr("NoSpaceBeforeDot",r,[25,29],[Ki,est],16),Yr("NoSpaceAfterDot",[25,29],r,[Ki],16),Yr("NoSpaceBetweenImportParenInImportType",102,21,[Ki,zat],16),Yr("NoSpaceAfterUnaryPrefixOperator",p,h,[Ki,Gz],16),Yr("NoSpaceAfterUnaryPreincrementOperator",46,m,[Ki],16),Yr("NoSpaceAfterUnaryPredecrementOperator",47,A,[Ki],16),Yr("NoSpaceBeforeUnaryPostincrementOperator",b,46,[Ki,vOe],16),Yr("NoSpaceBeforeUnaryPostdecrementOperator",I,47,[Ki,vOe],16),Yr("SpaceAfterPostincrementWhenFollowedByAdd",46,40,[Ki,ub],4),Yr("SpaceAfterAddWhenFollowedByUnaryPlus",40,40,[Ki,ub],4),Yr("SpaceAfterAddWhenFollowedByPreincrement",40,46,[Ki,ub],4),Yr("SpaceAfterPostdecrementWhenFollowedBySubtract",47,41,[Ki,ub],4),Yr("SpaceAfterSubtractWhenFollowedByUnaryMinus",41,41,[Ki,ub],4),Yr("SpaceAfterSubtractWhenFollowedByPredecrement",41,47,[Ki,ub],4),Yr("NoSpaceAfterCloseBrace",20,[28,27],[Ki],16),Yr("NewLineBeforeCloseBraceInBlockContext",i,20,[iOe],8),Yr("SpaceAfterCloseBrace",20,t(22),[Ki,Pat],4),Yr("SpaceBetweenCloseBraceAndElse",20,93,[Ki],4),Yr("SpaceBetweenCloseBraceAndWhile",20,117,[Ki],4),Yr("NoSpaceBetweenEmptyBraceBrackets",19,20,[Ki,uOe],16),Yr("SpaceAfterConditionalClosingParen",22,23,[Vz],4),Yr("NoSpaceBetweenFunctionKeywordAndStar",100,42,[sOe],16),Yr("SpaceAfterStarInGeneratorDeclaration",42,80,[sOe],4),Yr("SpaceAfterFunctionInFuncDecl",100,r,[fT],4),Yr("NewLineAfterOpenBraceInBlockContext",19,r,[iOe],8),Yr("SpaceAfterGetSetInMember",[139,153],80,[fT],4),Yr("NoSpaceBetweenYieldKeywordAndStar",127,42,[Ki,gOe],16),Yr("SpaceBetweenYieldOrYieldStarAndOperand",[127,42],r,[Ki,gOe],4),Yr("NoSpaceBetweenReturnAndSemicolon",107,27,[Ki],16),Yr("SpaceAfterCertainKeywords",[115,111,105,91,107,114,135],r,[Ki],4),Yr("SpaceAfterLetConstInVariableDeclaration",[121,87],r,[Ki,Uat],4),Yr("NoSpaceBeforeOpenParenInFuncCall",r,21,[Ki,kat,wat],16),Yr("SpaceBeforeBinaryKeywordOperator",r,u,[Ki,ub],4),Yr("SpaceAfterBinaryKeywordOperator",u,r,[Ki,ub],4),Yr("SpaceAfterVoidOperator",116,r,[Ki,Xat],4),Yr("SpaceBetweenAsyncAndOpenParen",134,21,[Fat,Ki],4),Yr("SpaceBetweenAsyncAndFunctionKeyword",134,[100,80],[Ki],4),Yr("NoSpaceBetweenTagAndTemplateString",[80,22],[15,16],[Ki],16),Yr("SpaceBeforeJsxAttribute",r,80,[Bat,Ki],4),Yr("SpaceBeforeSlashInJsxOpeningElement",r,44,[mOe,Ki],4),Yr("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",44,32,[mOe,Ki],16),Yr("NoSpaceBeforeEqualInJsxAttribute",r,64,[pOe,Ki],16),Yr("NoSpaceAfterEqualInJsxAttribute",64,r,[pOe,Ki],16),Yr("NoSpaceBeforeJsxNamespaceColon",80,59,[fOe],16),Yr("NoSpaceAfterJsxNamespaceColon",59,80,[fOe],16),Yr("NoSpaceAfterModuleImport",[144,149],21,[Ki],16),Yr("SpaceAfterCertainTypeScriptKeywords",[128,129,86,138,90,94,95,96,139,119,102,120,144,145,123,125,124,148,153,126,156,161,143,140],r,[Ki],4),Yr("SpaceBeforeCertainTypeScriptKeywords",r,[96,119,161],[Ki],4),Yr("SpaceAfterModuleName",11,19,[Hat],4),Yr("SpaceBeforeArrow",r,39,[Ki],4),Yr("SpaceAfterArrow",39,r,[Ki],4),Yr("NoSpaceAfterEllipsis",26,80,[Ki],16),Yr("NoSpaceAfterOptionalParameters",58,[22,28],[Ki,Gz],16),Yr("NoSpaceBetweenEmptyInterfaceBraceBrackets",19,20,[Ki,qat],16),Yr("NoSpaceBeforeOpenAngularBracket",M,30,[Ki,jz],16),Yr("NoSpaceBetweenCloseParenAndAngularBracket",22,30,[Ki,jz],16),Yr("NoSpaceAfterOpenAngularBracket",30,r,[Ki,jz],16),Yr("NoSpaceBeforeCloseAngularBracket",r,32,[Ki,jz],16),Yr("NoSpaceAfterCloseAngularBracket",32,[21,23,32,28],[Ki,jz,Cat,Kat],16),Yr("SpaceBeforeAt",[22,80],60,[Ki],4),Yr("NoSpaceAfterAt",60,r,[Ki],16),Yr("SpaceAfterDecorator",r,[128,80,95,90,86,126,125,123,124,139,153,23,42],[jat],4),Yr("NoSpaceBeforeNonNullAssertionOperator",r,54,[Ki,Yat],16),Yr("NoSpaceAfterNewKeywordOnConstructorSignature",105,21,[Ki,Jat],16),Yr("SpaceLessThanAndNonJSXTypeAnnotation",30,30,[Ki],4)],Z=[Yr("SpaceAfterConstructor",137,21,[pf("insertSpaceAfterConstructor"),Ki],4),Yr("NoSpaceAfterConstructor",137,21,[V_("insertSpaceAfterConstructor"),Ki],16),Yr("SpaceAfterComma",28,r,[pf("insertSpaceAfterCommaDelimiter"),Ki,che,Oat,Wat],4),Yr("NoSpaceAfterComma",28,r,[V_("insertSpaceAfterCommaDelimiter"),Ki,che],16),Yr("SpaceAfterAnonymousFunctionKeyword",[100,42],21,[pf("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),fT],4),Yr("NoSpaceAfterAnonymousFunctionKeyword",[100,42],21,[V_("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),fT],16),Yr("SpaceAfterKeywordInControl",s,21,[pf("insertSpaceAfterKeywordsInControlFlowStatements"),Vz],4),Yr("NoSpaceAfterKeywordInControl",s,21,[V_("insertSpaceAfterKeywordsInControlFlowStatements"),Vz],16),Yr("SpaceAfterOpenParen",21,r,[pf("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Ki],4),Yr("SpaceBeforeCloseParen",r,22,[pf("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Ki],4),Yr("SpaceBetweenOpenParens",21,21,[pf("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Ki],4),Yr("NoSpaceBetweenParens",21,22,[Ki],16),Yr("NoSpaceAfterOpenParen",21,r,[V_("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Ki],16),Yr("NoSpaceBeforeCloseParen",r,22,[V_("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),Ki],16),Yr("SpaceAfterOpenBracket",23,r,[pf("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Ki],4),Yr("SpaceBeforeCloseBracket",r,24,[pf("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Ki],4),Yr("NoSpaceBetweenBrackets",23,24,[Ki],16),Yr("NoSpaceAfterOpenBracket",23,r,[V_("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Ki],16),Yr("NoSpaceBeforeCloseBracket",r,24,[V_("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),Ki],16),Yr("SpaceAfterOpenBrace",19,r,[tOe("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),rOe],4),Yr("SpaceBeforeCloseBrace",r,20,[tOe("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),rOe],4),Yr("NoSpaceBetweenEmptyBraceBrackets",19,20,[Ki,uOe],16),Yr("NoSpaceAfterOpenBrace",19,r,[rhe("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Ki],16),Yr("NoSpaceBeforeCloseBrace",r,20,[rhe("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),Ki],16),Yr("SpaceBetweenEmptyBraceBrackets",19,20,[pf("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces")],4),Yr("NoSpaceBetweenEmptyBraceBrackets",19,20,[rhe("insertSpaceAfterOpeningAndBeforeClosingEmptyBraces"),Ki],16),Yr("SpaceAfterTemplateHeadAndMiddle",[16,17],r,[pf("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),dOe],4,1),Yr("SpaceBeforeTemplateMiddleAndTail",r,[17,18],[pf("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Ki],4),Yr("NoSpaceAfterTemplateHeadAndMiddle",[16,17],r,[V_("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),dOe],16,1),Yr("NoSpaceBeforeTemplateMiddleAndTail",r,[17,18],[V_("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),Ki],16),Yr("SpaceAfterOpenBraceInJsxExpression",19,r,[pf("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Ki,iZ],4),Yr("SpaceBeforeCloseBraceInJsxExpression",r,20,[pf("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Ki,iZ],4),Yr("NoSpaceAfterOpenBraceInJsxExpression",19,r,[V_("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Ki,iZ],16),Yr("NoSpaceBeforeCloseBraceInJsxExpression",r,20,[V_("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),Ki,iZ],16),Yr("SpaceAfterSemicolonInFor",27,r,[pf("insertSpaceAfterSemicolonInForStatements"),Ki,ohe],4),Yr("NoSpaceAfterSemicolonInFor",27,r,[V_("insertSpaceAfterSemicolonInForStatements"),Ki,ohe],16),Yr("SpaceBeforeBinaryOperator",r,l,[pf("insertSpaceBeforeAndAfterBinaryOperators"),Ki,ub],4),Yr("SpaceAfterBinaryOperator",l,r,[pf("insertSpaceBeforeAndAfterBinaryOperators"),Ki,ub],4),Yr("NoSpaceBeforeBinaryOperator",r,l,[V_("insertSpaceBeforeAndAfterBinaryOperators"),Ki,ub],16),Yr("NoSpaceAfterBinaryOperator",l,r,[V_("insertSpaceBeforeAndAfterBinaryOperators"),Ki,ub],16),Yr("SpaceBeforeOpenParenInFuncDecl",r,21,[pf("insertSpaceBeforeFunctionParenthesis"),Ki,fT],4),Yr("NoSpaceBeforeOpenParenInFuncDecl",r,21,[V_("insertSpaceBeforeFunctionParenthesis"),Ki,fT],16),Yr("NewLineBeforeOpenBraceInControl",U,19,[pf("placeOpenBraceOnNewLineForControlBlocks"),Vz,lhe],8,1),Yr("NewLineBeforeOpenBraceInFunction",C,19,[pf("placeOpenBraceOnNewLineForFunctions"),fT,lhe],8,1),Yr("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",O,19,[pf("placeOpenBraceOnNewLineForFunctions"),lOe,lhe],8,1),Yr("SpaceAfterTypeAssertion",32,r,[pf("insertSpaceAfterTypeAssertion"),Ki,dhe],4),Yr("NoSpaceAfterTypeAssertion",32,r,[V_("insertSpaceAfterTypeAssertion"),Ki,dhe],16),Yr("SpaceBeforeTypeAnnotation",r,[58,59],[pf("insertSpaceBeforeTypeAnnotation"),Ki,ahe],4),Yr("NoSpaceBeforeTypeAnnotation",r,[58,59],[V_("insertSpaceBeforeTypeAnnotation"),Ki,ahe],16),Yr("NoOptionalSemicolon",27,o,[eOe("semicolons","remove"),Qat],32),Yr("OptionalSemicolon",r,o,[eOe("semicolons","insert"),Zat],64)],V=[Yr("NoSpaceBeforeSemicolon",r,27,[Ki],16),Yr("SpaceBeforeOpenBraceInControl",U,19,[ihe("placeOpenBraceOnNewLineForControlBlocks"),Vz,uhe,she],4,1),Yr("SpaceBeforeOpenBraceInFunction",C,19,[ihe("placeOpenBraceOnNewLineForFunctions"),fT,rZ,uhe,she],4,1),Yr("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",O,19,[ihe("placeOpenBraceOnNewLineForFunctions"),lOe,uhe,she],4,1),Yr("NoSpaceBeforeComma",r,28,[Ki],16),Yr("NoSpaceBeforeOpenBracket",t(134,84),23,[Ki],16),Yr("NoSpaceAfterCloseBracket",24,r,[Ki,Vat],16),Yr("SpaceAfterSemicolon",27,r,[Ki],4),Yr("SpaceBetweenForAndAwaitKeyword",99,135,[Ki],4),Yr("SpaceBetweenStatements",[22,92,93,84],r,[Ki,che,Iat],4),Yr("SpaceAfterTryCatchFinally",[113,85,98],19,[Ki],4)];return[...K,...Z,...V]}function Yr(e,t,r,i,o,s=0){return{leftTokenRange:Qwe(t),rightTokenRange:Qwe(r),rule:{debugName:e,context:i,action:o,flags:s}}}function x2(e){return{tokens:e,isSpecific:!0}}function Qwe(e){return typeof e=="number"?x2([e]):To(e)?x2(e):e}function Zwe(e,t,r=[]){const i=[];for(let o=e;o<=t;o++)Nr(r,o)||i.push(o);return x2(i)}function eOe(e,t){return r=>r.options&&r.options[e]===t}function pf(e){return t=>t.options&&xs(t.options,e)&&!!t.options[e]}function rhe(e){return t=>t.options&&xs(t.options,e)&&!t.options[e]}function V_(e){return t=>!t.options||!xs(t.options,e)||!t.options[e]}function ihe(e){return t=>!t.options||!xs(t.options,e)||!t.options[e]||t.TokensAreOnSameLine()}function tOe(e){return t=>!t.options||!xs(t.options,e)||!!t.options[e]}function ohe(e){return e.contextNode.kind===248}function Iat(e){return!ohe(e)}function ub(e){switch(e.contextNode.kind){case 226:return e.contextNode.operatorToken.kind!==28;case 227:case 194:case 234:case 281:case 276:case 182:case 192:case 193:case 238:return!0;case 208:case 265:case 271:case 277:case 260:case 169:case 306:case 172:case 171:return e.currentTokenSpan.kind===64||e.nextTokenSpan.kind===64;case 249:case 168:return e.currentTokenSpan.kind===103||e.nextTokenSpan.kind===103||e.currentTokenSpan.kind===64||e.nextTokenSpan.kind===64;case 250:return e.currentTokenSpan.kind===165||e.nextTokenSpan.kind===165}return!1}function Gz(e){return!ub(e)}function nOe(e){return!ahe(e)}function ahe(e){const t=e.contextNode.kind;return t===172||t===171||t===169||t===260||PA(t)}function xat(e){return Jo(e.contextNode)&&e.contextNode.questionToken}function Rat(e){return!xat(e)}function Dat(e){return e.contextNode.kind===227||e.contextNode.kind===194}function she(e){return e.TokensAreOnSameLine()||rZ(e)}function rOe(e){return e.contextNode.kind===206||e.contextNode.kind===200||Nat(e)}function lhe(e){return rZ(e)&&!(e.NextNodeAllOnSameLine()||e.NextNodeBlockIsOnOneLine())}function iOe(e){return oOe(e)&&!(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function Nat(e){return oOe(e)&&(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function oOe(e){return aOe(e.contextNode)}function rZ(e){return aOe(e.nextTokenParent)}function aOe(e){if(cOe(e))return!0;switch(e.kind){case 241:case 269:case 210:case 268:return!0}return!1}function fT(e){switch(e.contextNode.kind){case 262:case 174:case 173:case 177:case 178:case 179:case 218:case 176:case 219:case 264:return!0}return!1}function Cat(e){return!fT(e)}function sOe(e){return e.contextNode.kind===262||e.contextNode.kind===218}function lOe(e){return cOe(e.contextNode)}function cOe(e){switch(e.kind){case 263:case 231:case 264:case 266:case 187:case 267:case 278:case 279:case 272:case 275:return!0}return!1}function Pat(e){switch(e.currentTokenParent.kind){case 263:case 267:case 266:case 299:case 268:case 255:return!0;case 241:{const t=e.currentTokenParent.parent;if(!t||t.kind!==219&&t.kind!==218)return!0}}return!1}function Vz(e){switch(e.contextNode.kind){case 245:case 255:case 248:case 249:case 250:case 247:case 258:case 246:case 254:case 299:return!0;default:return!1}}function uOe(e){return e.contextNode.kind===210}function Mat(e){return e.contextNode.kind===213}function Lat(e){return e.contextNode.kind===214}function kat(e){return Mat(e)||Lat(e)}function wat(e){return e.currentTokenSpan.kind!==28}function Oat(e){return e.nextTokenSpan.kind!==24}function Wat(e){return e.nextTokenSpan.kind!==22}function Fat(e){return e.contextNode.kind===219}function zat(e){return e.contextNode.kind===205}function Ki(e){return e.TokensAreOnSameLine()&&e.contextNode.kind!==12}function dOe(e){return e.contextNode.kind!==12}function che(e){return e.contextNode.kind!==284&&e.contextNode.kind!==288}function iZ(e){return e.contextNode.kind===294||e.contextNode.kind===293}function Bat(e){return e.nextTokenParent.kind===291||e.nextTokenParent.kind===295&&e.nextTokenParent.parent.kind===291}function pOe(e){return e.contextNode.kind===291}function Gat(e){return e.nextTokenParent.kind!==295}function fOe(e){return e.nextTokenParent.kind===295}function mOe(e){return e.contextNode.kind===285}function Vat(e){return!fT(e)&&!rZ(e)}function jat(e){return e.TokensAreOnSameLine()&&If(e.contextNode)&&_Oe(e.currentTokenParent)&&!_Oe(e.nextTokenParent)}function _Oe(e){for(;e&&yt(e);)e=e.parent;return e&&e.kind===170}function Uat(e){return e.currentTokenParent.kind===261&&e.currentTokenParent.getStart(e.sourceFile)===e.currentTokenSpan.pos}function uhe(e){return e.formattingRequestKind!==2}function Hat(e){return e.contextNode.kind===267}function qat(e){return e.contextNode.kind===187}function Jat(e){return e.contextNode.kind===180}function hOe(e,t){if(e.kind!==30&&e.kind!==32)return!1;switch(t.kind){case 183:case 216:case 265:case 263:case 231:case 264:case 262:case 218:case 219:case 174:case 173:case 179:case 180:case 213:case 214:case 233:return!0;default:return!1}}function jz(e){return hOe(e.currentTokenSpan,e.currentTokenParent)||hOe(e.nextTokenSpan,e.nextTokenParent)}function dhe(e){return e.contextNode.kind===216}function Kat(e){return!dhe(e)}function Xat(e){return e.currentTokenSpan.kind===116&&e.currentTokenParent.kind===222}function gOe(e){return e.contextNode.kind===229&&e.contextNode.expression!==void 0}function Yat(e){return e.contextNode.kind===235}function vOe(e){return!$at(e)}function $at(e){switch(e.contextNode.kind){case 245:case 248:case 249:case 250:case 246:case 247:return!0;default:return!1}}function Qat(e){let t=e.nextTokenSpan.kind,r=e.nextTokenSpan.pos;if(IR(t)){const s=e.nextTokenParent===e.currentTokenParent?b1(e.currentTokenParent,Gn(e.currentTokenParent,l=>!l.parent),e.sourceFile):e.nextTokenParent.getFirstToken(e.sourceFile);if(!s)return!0;t=s.kind,r=s.getStart(e.sourceFile)}const i=e.sourceFile.getLineAndCharacterOfPosition(e.currentTokenSpan.pos).line,o=e.sourceFile.getLineAndCharacterOfPosition(r).line;return i===o?t===20||t===1:t===240||t===27?!1:e.contextNode.kind===264||e.contextNode.kind===265?!yp(e.currentTokenParent)||!!e.currentTokenParent.type||t!==21:Jo(e.currentTokenParent)?!e.currentTokenParent.initializer:e.currentTokenParent.kind!==248&&e.currentTokenParent.kind!==242&&e.currentTokenParent.kind!==240&&t!==23&&t!==21&&t!==40&&t!==41&&t!==44&&t!==14&&t!==28&&t!==228&&t!==16&&t!==15&&t!==25}function Zat(e){return x5(e.currentTokenSpan.end,e.currentTokenParent,e.sourceFile)}function est(e){return!Fr(e.contextNode)||!vp(e.contextNode.expression)||e.contextNode.expression.getText().includes(".")}var tst=T({"src/services/formatting/rules.ts"(){si(),p8()}});function nst(e,t){return{options:e,getRules:rst(),host:t}}function rst(){return phe===void 0&&(phe=ost($we())),phe}function ist(e){let t=0;return e&1&&(t|=28),e&2&&(t|=96),e&28&&(t|=28),e&96&&(t|=96),t}function ost(e){const t=ast(e);return r=>{const i=t[yOe(r.currentTokenSpan.kind,r.nextTokenSpan.kind)];if(i){const o=[];let s=0;for(const l of i){const u=~ist(s);l.action&u&&Zn(l.context,p=>p(r))&&(o.push(l),s|=l.action)}if(o.length)return o}}}function ast(e){const t=new Array(oZ*oZ),r=new Array(t.length);for(const i of e){const o=i.leftTokenRange.isSpecific&&i.rightTokenRange.isSpecific;for(const s of i.leftTokenRange.tokens)for(const l of i.rightTokenRange.tokens){const u=yOe(s,l);let p=t[u];p===void 0&&(p=t[u]=[]),sst(p,i.rule,o,r,u)}}return t}function yOe(e,t){return N.assert(e<=165&&t<=165,"Must compute formatting context from tokens"),e*oZ+t}function sst(e,t,r,i,o){const s=t.action&3?r?0:R2.StopRulesAny:t.context!==Bz?r?R2.ContextRulesSpecific:R2.ContextRulesAny:r?R2.NoContextRulesSpecific:R2.NoContextRulesAny,l=i[o]||0;e.splice(lst(l,s),0,t),i[o]=cst(l,s)}function lst(e,t){let r=0;for(let i=0;i<=t;i+=KD)r+=e&Uz,e>>=KD;return r}function cst(e,t){const r=(e>>t&Uz)+1;return N.assert((r&Uz)===r,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules."),e&~(Uz<<t)|r<<t}var phe,KD,Uz,oZ,R2,ust=T({"src/services/formatting/rulesMap.ts"(){si(),p8(),KD=5,Uz=31,oZ=166,R2=(e=>(e[e.StopRulesSpecific=0]="StopRulesSpecific",e[e.StopRulesAny=KD*1]="StopRulesAny",e[e.ContextRulesSpecific=KD*2]="ContextRulesSpecific",e[e.ContextRulesAny=KD*3]="ContextRulesAny",e[e.NoContextRulesSpecific=KD*4]="NoContextRulesSpecific",e[e.NoContextRulesAny=KD*5]="NoContextRulesAny",e))(R2||{})}});function aZ(e,t,r){const i={pos:e,end:t,kind:r};return N.isDebugging&&Object.defineProperty(i,"__debugKind",{get:()=>N.formatSyntaxKind(r)}),i}function dst(e,t,r){const i=t.getLineAndCharacterOfPosition(e).line;if(i===0)return[];let o=DL(i,t);for(;A_(t.text.charCodeAt(o));)o--;Hu(t.text.charCodeAt(o))&&o--;const s={pos:Gy(i-1,t),end:o+1};return Hz(s,t,r,2)}function pst(e,t,r){const i=fhe(e,27,t);return bOe(mhe(i),t,r,3)}function fst(e,t,r){const i=fhe(e,19,t);if(!i)return[];const o=i.parent,s=mhe(o),l={pos:lm(s.getStart(t),t),end:e};return Hz(l,t,r,4)}function mst(e,t,r){const i=fhe(e,20,t);return bOe(mhe(i),t,r,5)}function _st(e,t){const r={pos:0,end:e.text.length};return Hz(r,e,t,0)}function hst(e,t,r,i){const o={pos:lm(e,r),end:t};return Hz(o,r,i,1)}function fhe(e,t,r){const i=xc(e,r);return i&&i.kind===t&&e===i.getEnd()?i:void 0}function mhe(e){let t=e;for(;t&&t.parent&&t.parent.end===e.end&&!gst(t.parent,t);)t=t.parent;return t}function gst(e,t){switch(e.kind){case 263:case 264:return cf(e.members,t);case 267:const r=e.body;return!!r&&r.kind===268&&cf(r.statements,t);case 312:case 241:case 268:return cf(e.statements,t);case 299:return cf(e.block.statements,t)}return!1}function vst(e,t){return r(t);function r(i){const o=Ho(i,s=>nX(s.getStart(t),s.end,e)&&s);if(o){const s=r(o);if(s)return s}return i}}function yst(e,t){if(!e.length)return o;const r=e.filter(s=>i2(t,s.start,s.start+s.length)).sort((s,l)=>s.start-l.start);if(!r.length)return o;let i=0;return s=>{for(;;){if(i>=r.length)return!1;const l=r[i];if(s.end<=l.start)return!1;if(n5(s.pos,s.end,l.start,l.start+l.length))return!0;i++}};function o(){return!1}}function bst(e,t,r){const i=e.getStart(r);if(i===t.pos&&e.end===t.end)return i;const o=xc(t.pos,r);return!o||o.end>=t.pos?e.pos:o.end}function Est(e,t,r){let i=-1,o;for(;e;){const s=r.getLineAndCharacterOfPosition(e.getStart(r)).line;if(i!==-1&&s!==i)break;if(j_.shouldIndentChildNode(t,e,o,r))return t.indentSize;i=s,o=e,e=e.parent}return 0}function Sst(e,t,r,i,o,s){const l={pos:e.pos,end:e.end};return ehe(t.text,r,l.pos,l.end,u=>EOe(l,e,i,o,u,s,1,p=>!1,t))}function bOe(e,t,r,i){if(!e)return[];const o={pos:lm(e.getStart(t),t),end:e.end};return Hz(o,t,r,i)}function Hz(e,t,r,i){const o=vst(e,t);return ehe(t.text,t.languageVariant,bst(o,e,t),e.end,s=>EOe(e,o,j_.getIndentationForNode(o,e,t,r.options),Est(o,r.options,t),s,r,i,yst(t.parseDiagnostics,e),t))}function EOe(e,t,r,i,o,{options:s,getRules:l,host:u},p,h,m){var b;const A=new Z_e(m,p,s);let I,R,M,C,O,U=-1;const K=[];if(o.advance(),o.isOnToken()){const Se=m.getLineAndCharacterOfPosition(t.getStart(m)).line;let je=Se;If(t)&&(je=m.getLineAndCharacterOfPosition(Ej(t,m)).line),he(t,t,Se,je,r,i)}const Z=o.getCurrentLeadingTrivia();if(Z){const Se=j_.nodeWillIndentChild(s,t,void 0,m,!1)?r+s.indentSize:r;ye(Z,Se,!0,je=>{Y(je,m.getLineAndCharacterOfPosition(je.pos),t,t,void 0),fe(je.pos,Se,!1)}),s.trimTrailingWhitespace!==!1&&He(Z)}if(R&&o.getTokenFullStart()>=e.end){const Se=o.isOnEOF()?o.readEOFTokenRange():o.isOnToken()?o.readTokenInfo(t).token:void 0;if(Se&&Se.pos===I){const je=((b=xc(Se.end,m,t))==null?void 0:b.parent)||M;oe(Se,m.getLineAndCharacterOfPosition(Se.pos).line,je,R,C,M,je,void 0)}}return K;function V(Se,je,at,Gt,vt){if(i2(Gt,Se,je)||cO(Gt,Se,je)){if(vt!==-1)return vt}else{const $e=m.getLineAndCharacterOfPosition(Se).line,It=lm(Se,m),tn=j_.findFirstNonWhitespaceColumn(It,Se,m,s);if($e!==at||Se===tn){const rn=j_.getBaseIndentation(s);return rn>tn?rn:tn}}return-1}function se(Se,je,at,Gt,vt,$e){const It=j_.shouldIndentChildNode(s,Se)?s.indentSize:0;return $e===je?{indentation:je===O?U:vt.getIndentation(),delta:Math.min(s.indentSize,vt.getDelta(Se)+It)}:at===-1?Se.kind===21&&je===O?{indentation:U,delta:vt.getDelta(Se)}:j_.childStartsOnTheSameLineWithElseInIfStatement(Gt,Se,je,m)||j_.childIsUnindentedBranchOfConditionalExpression(Gt,Se,je,m)||j_.argumentStartsOnSameLineAsPreviousArgument(Gt,Se,je,m)?{indentation:vt.getIndentation(),delta:It}:{indentation:vt.getIndentation()+vt.getDelta(Se),delta:It}:{indentation:at,delta:It}}function G(Se){if(Cm(Se)){const je=An(Se.modifiers,xa,Gr(Se.modifiers,Eu));if(je)return je.kind}switch(Se.kind){case 263:return 86;case 264:return 120;case 262:return 100;case 266:return 266;case 177:return 139;case 178:return 153;case 174:if(Se.asteriskToken)return 42;case 172:case 169:const je=Mo(Se);if(je)return je.kind}}function ne(Se,je,at,Gt){return{getIndentationForComment:(It,tn,rn)=>{switch(It){case 20:case 24:case 22:return at+$e(rn)}return tn!==-1?tn:at},getIndentationForToken:(It,tn,rn,Pn)=>!Pn&&vt(It,tn,rn)?at+$e(rn):at,getIndentation:()=>at,getDelta:$e,recomputeIndentation:(It,tn)=>{j_.shouldIndentChildNode(s,tn,Se,m)&&(at+=It?s.indentSize:-s.indentSize,Gt=j_.shouldIndentChildNode(s,Se)?s.indentSize:0)}};function vt(It,tn,rn){switch(tn){case 19:case 20:case 22:case 93:case 117:case 60:return!1;case 44:case 32:switch(rn.kind){case 286:case 287:case 285:return!1}break;case 23:case 24:if(rn.kind!==200)return!1;break}return je!==It&&!(If(Se)&&tn===G(Se))}function $e(It){return j_.nodeWillIndentChild(s,Se,It,m,!0)?Gt:0}}function he(Se,je,at,Gt,vt,$e){if(!i2(e,Se.getStart(m),Se.getEnd()))return;const It=ne(Se,at,vt,$e);let tn=je;for(Ho(Se,hn=>{rn(hn,-1,Se,It,at,Gt,!1)},hn=>{Pn(hn,Se,at,It)});o.isOnToken()&&o.getTokenFullStart()<e.end;){const hn=o.readTokenInfo(Se);if(hn.token.end>Math.min(Se.end,e.end))break;Xn(hn,Se,It,Se)}function rn(hn,Qt,$t,_i,ao,Oi,No,Mn){if(N.assert(!$s(hn)),zl(hn)||die($t,hn))return Qt;const Di=hn.getStart(m),Ar=m.getLineAndCharacterOfPosition(Di).line;let sn=Ar;If(hn)&&(sn=m.getLineAndCharacterOfPosition(Ej(hn,m)).line);let tt=-1;if(No&&cf(e,$t)&&(tt=V(Di,hn.end,ao,e,Qt),tt!==-1&&(Qt=tt)),!i2(e,hn.pos,hn.end))return hn.end<e.pos&&o.skipToEndOf(hn),Qt;if(hn.getFullWidth()===0)return Qt;for(;o.isOnToken()&&o.getTokenFullStart()<e.end;){const li=o.readTokenInfo(Se);if(li.token.end>e.end)return Qt;if(li.token.end>Di){li.token.pos>Di&&o.skipToStartOf(hn);break}Xn(li,Se,_i,Se)}if(!o.isOnToken()||o.getTokenFullStart()>=e.end)return Qt;if(NA(hn)){const li=o.readTokenInfo(hn);if(hn.kind!==12)return N.assert(li.token.end===hn.end,"Token end is child end"),Xn(li,Se,_i,hn),Qt}const zt=hn.kind===170?Ar:Oi,Rn=se(hn,Ar,tt,Se,_i,zt);return he(hn,tn,Ar,sn,Rn.indentation,Rn.delta),tn=Se,Mn&&$t.kind===209&&Qt===-1&&(Qt=Rn.indentation),Qt}function Pn(hn,Qt,$t,_i){N.assert(LE(hn)),N.assert(!$s(hn));const ao=Tst(Qt,hn);let Oi=_i,No=$t;if(!i2(e,hn.pos,hn.end)){hn.end<e.pos&&o.skipToEndOf(hn);return}if(ao!==0)for(;o.isOnToken()&&o.getTokenFullStart()<e.end;){const Ar=o.readTokenInfo(Qt);if(Ar.token.end>hn.pos)break;if(Ar.token.kind===ao){No=m.getLineAndCharacterOfPosition(Ar.token.pos).line,Xn(Ar,Qt,_i,Qt);let sn;if(U!==-1)sn=U;else{const tt=lm(Ar.token.pos,m);sn=j_.findFirstNonWhitespaceColumn(tt,Ar.token.pos,m,s)}Oi=ne(Qt,$t,sn,s.indentSize)}else Xn(Ar,Qt,_i,Qt)}let Mn=-1;for(let Ar=0;Ar<hn.length;Ar++){const sn=hn[Ar];Mn=rn(sn,Mn,Se,Oi,No,No,!0,Ar===0)}const Di=Ast(ao);if(Di!==0&&o.isOnToken()&&o.getTokenFullStart()<e.end){let Ar=o.readTokenInfo(Qt);Ar.token.kind===28&&(Xn(Ar,Qt,Oi,Qt),Ar=o.isOnToken()?o.readTokenInfo(Qt):void 0),Ar&&Ar.token.kind===Di&&cf(Qt,Ar.token)&&Xn(Ar,Qt,Oi,Qt,!0)}}function Xn(hn,Qt,$t,_i,ao){N.assert(cf(Qt,hn.token));const Oi=o.lastTrailingTriviaWasNewLine();let No=!1;hn.leadingTrivia&&$(hn.leadingTrivia,Qt,tn,$t);let Mn=0;const Di=cf(e,hn.token),Ar=m.getLineAndCharacterOfPosition(hn.token.pos);if(Di){const sn=h(hn.token),tt=R;if(Mn=Y(hn.token,Ar,Qt,tn,$t),!sn)if(Mn===0){const zt=tt&&m.getLineAndCharacterOfPosition(tt.end).line;No=Oi&&Ar.line!==zt}else No=Mn===1}if(hn.trailingTrivia&&(I=Ya(hn.trailingTrivia).end,$(hn.trailingTrivia,Qt,tn,$t)),No){const sn=Di&&!h(hn.token)?$t.getIndentationForToken(Ar.line,hn.token.kind,_i,!!ao):-1;let tt=!0;if(hn.leadingTrivia){const zt=$t.getIndentationForComment(hn.token.kind,sn,_i);tt=ye(hn.leadingTrivia,zt,tt,Rn=>fe(Rn.pos,zt,!1))}sn!==-1&&tt&&(fe(hn.token.pos,sn,Mn===1),O=Ar.line,U=sn)}o.advance(),tn=Qt}}function ye(Se,je,at,Gt){for(const vt of Se){const $e=cf(e,vt);switch(vt.kind){case 3:$e&&ie(vt,je,!at),at=!1;break;case 2:at&&$e&&Gt(vt),at=!1;break;case 4:at=!0;break}}return at}function $(Se,je,at,Gt){for(const vt of Se)if(u5(vt.kind)&&cf(e,vt)){const $e=m.getLineAndCharacterOfPosition(vt.pos);Y(vt,$e,je,at,Gt)}}function Y(Se,je,at,Gt,vt){const $e=h(Se);let It=0;if(!$e)if(R)It=oe(Se,je.line,at,R,C,M,Gt,vt);else{const tn=m.getLineAndCharacterOfPosition(e.pos);ve(tn.line,je.line)}return R=Se,I=Se.end,M=at,C=je.line,It}function oe(Se,je,at,Gt,vt,$e,It,tn){A.updateContext(Gt,$e,Se,at,It);const rn=l(A);let Pn=A.options.trimTrailingWhitespace!==!1,Xn=0;return rn?Bt(rn,hn=>{if(Xn=At(hn,Gt,vt,Se,je),tn)switch(Xn){case 2:at.getStart(m)===Se.pos&&tn.recomputeIndentation(!1,It);break;case 1:at.getStart(m)===Se.pos&&tn.recomputeIndentation(!0,It);break;default:N.assert(Xn===0)}Pn=Pn&&!(hn.action&16)&&hn.flags!==1}):Pn=Pn&&Se.kind!==1,je!==vt&&Pn&&ve(vt,je,Gt),Xn}function fe(Se,je,at){const Gt=_he(je,s);if(at)Pe(Se,0,Gt);else{const vt=m.getLineAndCharacterOfPosition(Se),$e=Gy(vt.line,m);(je!==Ne($e,vt.character)||pe(Gt,$e))&&Pe($e,vt.character,Gt)}}function Ne(Se,je){let at=0;for(let Gt=0;Gt<je;Gt++)m.text.charCodeAt(Se+Gt)===9?at+=s.tabSize-at%s.tabSize:at++;return at}function pe(Se,je){return Se!==m.text.substr(je,Se.length)}function ie(Se,je,at,Gt=!0){let vt=m.getLineAndCharacterOfPosition(Se.pos).line;const $e=m.getLineAndCharacterOfPosition(Se.end).line;if(vt===$e){at||fe(Se.pos,je,!1);return}const It=[];let tn=Se.pos;for(let Qt=vt;Qt<$e;Qt++){const $t=DL(Qt,m);It.push({pos:tn,end:$t}),tn=Gy(Qt+1,m)}if(Gt&&It.push({pos:tn,end:Se.end}),It.length===0)return;const rn=Gy(vt,m),Pn=j_.findFirstNonWhitespaceCharacterAndColumn(rn,It[0].pos,m,s);let Xn=0;at&&(Xn=1,vt++);const hn=je-Pn.column;for(let Qt=Xn;Qt<It.length;Qt++,vt++){const $t=Gy(vt,m),_i=Qt===0?Pn:j_.findFirstNonWhitespaceCharacterAndColumn(It[Qt].pos,It[Qt].end,m,s),ao=_i.column+hn;if(ao>0){const Oi=_he(ao,s);Pe($t,_i.character,Oi)}else De($t,_i.character)}}function ve(Se,je,at){for(let Gt=Se;Gt<je;Gt++){const vt=Gy(Gt,m),$e=DL(Gt,m);if(at&&(u5(at.kind)||cX(at.kind))&&at.pos<=$e&&at.end>$e)continue;const It=Le(vt,$e);It!==-1&&(N.assert(It===vt||!A_(m.text.charCodeAt(It-1))),De(It,$e+1-It))}}function Le(Se,je){let at=je;for(;at>=Se&&A_(m.text.charCodeAt(at));)at--;return at!==je?at+1:-1}function He(Se){let je=R?R.end:e.pos;for(const at of Se)u5(at.kind)&&(je<at.pos&&Ee(je,at.pos-1,R),je=at.end+1);je<e.end&&Ee(je,e.end,R)}function Ee(Se,je,at){const Gt=m.getLineAndCharacterOfPosition(Se).line,vt=m.getLineAndCharacterOfPosition(je).line;ve(Gt,vt+1,at)}function De(Se,je){je&&K.push(p5(Se,je,""))}function Pe(Se,je,at){(je||at)&&K.push(p5(Se,je,at))}function We(Se,je){K.push(p5(Se,0,je))}function At(Se,je,at,Gt,vt){const $e=vt!==at;switch(Se.action){case 1:return 0;case 16:if(je.end!==Gt.pos)return De(je.end,Gt.pos-je.end),$e?2:0;break;case 32:De(je.pos,je.end-je.pos);break;case 8:if(Se.flags!==1&&at!==vt)return 0;if(vt-at!==1)return Pe(je.end,Gt.pos-je.end,ty(u,s)),$e?0:1;break;case 4:if(Se.flags!==1&&at!==vt)return 0;if(Gt.pos-je.end!==1||m.text.charCodeAt(je.end)!==32)return Pe(je.end,Gt.pos-je.end," "),$e?2:0;break;case 64:We(je.end,";")}return 0}}function SOe(e,t,r,i=po(e,t)){const o=Gn(i,n_);if(o&&(i=o.parent),i.getStart(e)<=t&&t<i.getEnd())return;r=r===null?void 0:r===void 0?xc(t,e):r;const l=r&&a0(e.text,r.end),u=kj(i,e),p=So(l,u);return p&&An(p,h=>lO(h,t)||t===h.end&&(h.kind===2||t===e.getFullWidth()))}function Tst(e,t){switch(e.kind){case 176:case 262:case 218:case 174:case 173:case 219:case 179:case 180:case 184:case 185:case 177:case 178:if(e.typeParameters===t)return 30;if(e.parameters===t)return 21;break;case 213:case 214:if(e.typeArguments===t)return 30;if(e.arguments===t)return 21;break;case 263:case 231:case 264:case 265:if(e.typeParameters===t)return 30;break;case 183:case 215:case 186:case 233:case 205:if(e.typeArguments===t)return 30;break;case 187:return 19}return 0}function Ast(e){switch(e){case 21:return 22;case 30:return 32;case 19:return 20}return 0}function _he(e,t){if((!sZ||sZ.tabSize!==t.tabSize||sZ.indentSize!==t.indentSize)&&(sZ={tabSize:t.tabSize,indentSize:t.indentSize},u8=d8=void 0),t.convertTabsToSpaces){let i;const o=Math.floor(e/t.indentSize),s=e%t.indentSize;return d8||(d8=[]),d8[o]===void 0?(i=_O(" ",t.indentSize*o),d8[o]=i):i=d8[o],s?i+_O(" ",s):i}else{const i=Math.floor(e/t.tabSize),o=e-i*t.tabSize;let s;return u8||(u8=[]),u8[i]===void 0?u8[i]=s=_O(" ",i):s=u8[i],o?s+_O(" ",o):s}}var sZ,u8,d8,Ist=T({"src/services/formatting/formatting.ts"(){si(),p8()}}),j_,xst=T({"src/services/formatting/smartIndenter.ts"(){si(),p8(),(e=>{let t;(ie=>{ie[ie.Unknown=-1]="Unknown"})(t||(t={}));function r(ie,ve,Le,He=!1){if(ie>ve.text.length)return u(Le);if(Le.indentStyle===0)return 0;const Ee=xc(ie,ve,void 0,!0),De=SOe(ve,ie,Ee||null);if(De&&De.kind===3)return i(ve,ie,Le,De);if(!Ee)return u(Le);if(cX(Ee.kind)&&Ee.getStart(ve)<=ie&&ie<Ee.end)return 0;const We=ve.getLineAndCharacterOfPosition(ie).line,At=po(ve,ie),Se=At.kind===19&&At.parent.kind===210;if(Le.indentStyle===1||Se)return o(ve,ie,Le);if(Ee.kind===28&&Ee.parent.kind!==226){const at=m(Ee,ve,Le);if(at!==-1)return at}const je=Z(ie,Ee.parent,ve);if(je&&!cf(je,Ee)){const Gt=[218,219].includes(At.parent.kind)?0:Le.indentSize;return G(je,ve,Le)+Gt}return s(ve,ie,Ee,We,He,Le)}e.getIndentation=r;function i(ie,ve,Le,He){const Ee=bs(ie,ve).line-1,De=bs(ie,He.pos).line;if(N.assert(De>=0),Ee<=De)return Y(Gy(De,ie),ve,ie,Le);const Pe=Gy(Ee,ie),{column:We,character:At}=$(Pe,ve,ie,Le);return We===0?We:ie.text.charCodeAt(Pe+At)===42?We-1:We}function o(ie,ve,Le){let He=ve;for(;He>0;){const De=ie.text.charCodeAt(He);if(!wg(De))break;He--}const Ee=lm(He,ie);return Y(Ee,He,ie,Le)}function s(ie,ve,Le,He,Ee,De){let Pe,We=Le;for(;We;){if(rX(We,ve,ie)&&Ne(De,We,Pe,ie,!0)){const Se=R(We,ie),je=I(Le,We,He,ie),at=je!==0?Ee&&je===2?De.indentSize:0:He!==Se.line?De.indentSize:0;return p(We,Se,void 0,at,ie,!0,De)}const At=ne(We,ie,De,!0);if(At!==-1)return At;Pe=We,We=We.parent}return u(De)}function l(ie,ve,Le,He){const Ee=Le.getLineAndCharacterOfPosition(ie.getStart(Le));return p(ie,Ee,ve,0,Le,!1,He)}e.getIndentationForNode=l;function u(ie){return ie.baseIndentSize||0}e.getBaseIndentation=u;function p(ie,ve,Le,He,Ee,De,Pe){var We;let At=ie.parent;for(;At;){let Se=!0;if(Le){const vt=ie.getStart(Ee);Se=vt<Le.pos||vt>Le.end}const je=h(At,ie,Ee),at=je.line===ve.line||C(At,ie,ve.line,Ee);if(Se){const vt=(We=K(ie,Ee))==null?void 0:We[0],$e=!!vt&&R(vt,Ee).line>je.line;let It=ne(ie,Ee,Pe,$e);if(It!==-1||(It=b(ie,At,ve,at,Ee,Pe),It!==-1))return It+He}Ne(Pe,At,ie,Ee,De)&&!at&&(He+=Pe.indentSize);const Gt=M(At,ie,ve.line,Ee);ie=At,At=ie.parent,ve=Gt?Ee.getLineAndCharacterOfPosition(ie.getStart(Ee)):je}return He+u(Pe)}function h(ie,ve,Le){const He=K(ve,Le),Ee=He?He.pos:ie.getStart(Le);return Le.getLineAndCharacterOfPosition(Ee)}function m(ie,ve,Le){const He=Nue(ie);return He&&He.listItemIndex>0?he(He.list.getChildren(),He.listItemIndex-1,ve,Le):-1}function b(ie,ve,Le,He,Ee,De){return(Ju(ie)||TL(ie))&&(ve.kind===312||!He)?ye(Le,Ee,De):-1}let A;(ie=>{ie[ie.Unknown=0]="Unknown",ie[ie.OpenBrace=1]="OpenBrace",ie[ie.CloseBrace=2]="CloseBrace"})(A||(A={}));function I(ie,ve,Le,He){const Ee=b1(ie,ve,He);if(!Ee)return 0;if(Ee.kind===19)return 1;if(Ee.kind===20){const De=R(Ee,He).line;return Le===De?2:0}return 0}function R(ie,ve){return ve.getLineAndCharacterOfPosition(ie.getStart(ve))}function M(ie,ve,Le,He){if(!(la(ie)&&Nr(ie.arguments,ve)))return!1;const Ee=ie.expression.getEnd();return bs(He,Ee).line===Le}e.isArgumentAndStartLineOverlapsExpressionBeingCalled=M;function C(ie,ve,Le,He){if(ie.kind===245&&ie.elseStatement===ve){const Ee=vs(ie,93,He);return N.assert(Ee!==void 0),R(Ee,He).line===Le}return!1}e.childStartsOnTheSameLineWithElseInIfStatement=C;function O(ie,ve,Le,He){if(XR(ie)&&(ve===ie.whenTrue||ve===ie.whenFalse)){const Ee=bs(He,ie.condition.end).line;if(ve===ie.whenTrue)return Le===Ee;{const De=R(ie.whenTrue,He).line,Pe=bs(He,ie.whenTrue.end).line;return Ee===De&&Pe===Le}}return!1}e.childIsUnindentedBranchOfConditionalExpression=O;function U(ie,ve,Le,He){if(I_(ie)){if(!ie.arguments)return!1;const Ee=An(ie.arguments,At=>At.pos===ve.pos);if(!Ee)return!1;const De=ie.arguments.indexOf(Ee);if(De===0)return!1;const Pe=ie.arguments[De-1],We=bs(He,Pe.getEnd()).line;if(Le===We)return!0}return!1}e.argumentStartsOnSameLineAsPreviousArgument=U;function K(ie,ve){return ie.parent&&V(ie.getStart(ve),ie.getEnd(),ie.parent,ve)}e.getContainingList=K;function Z(ie,ve,Le){return ve&&V(ie,ie,ve,Le)}function V(ie,ve,Le,He){switch(Le.kind){case 183:return Ee(Le.typeArguments);case 210:return Ee(Le.properties);case 209:return Ee(Le.elements);case 187:return Ee(Le.members);case 262:case 218:case 219:case 174:case 173:case 179:case 176:case 185:case 180:return Ee(Le.typeParameters)||Ee(Le.parameters);case 177:return Ee(Le.parameters);case 263:case 231:case 264:case 265:case 352:return Ee(Le.typeParameters);case 214:case 213:return Ee(Le.typeArguments)||Ee(Le.arguments);case 261:return Ee(Le.declarations);case 275:case 279:return Ee(Le.elements);case 206:case 207:return Ee(Le.elements)}function Ee(De){return De&&cO(se(Le,De,He),ie,ve)?De:void 0}}function se(ie,ve,Le){const He=ie.getChildren(Le);for(let Ee=1;Ee<He.length-1;Ee++)if(He[Ee].pos===ve.pos&&He[Ee].end===ve.end)return{pos:He[Ee-1].end,end:He[Ee+1].getStart(Le)};return ve}function G(ie,ve,Le){return ie?ye(ve.getLineAndCharacterOfPosition(ie.pos),ve,Le):-1}function ne(ie,ve,Le,He){if(ie.parent&&ie.parent.kind===261)return-1;const Ee=K(ie,ve);if(Ee){const De=Ee.indexOf(ie);if(De!==-1){const Pe=he(Ee,De,ve,Le);if(Pe!==-1)return Pe}return G(Ee,ve,Le)+(He?Le.indentSize:0)}return-1}function he(ie,ve,Le,He){N.assert(ve>=0&&ve<ie.length);const Ee=ie[ve];let De=R(Ee,Le);for(let Pe=ve-1;Pe>=0;Pe--){if(ie[Pe].kind===28)continue;if(Le.getLineAndCharacterOfPosition(ie[Pe].end).line!==De.line)return ye(De,Le,He);De=R(ie[Pe],Le)}return-1}function ye(ie,ve,Le){const He=ve.getPositionOfLineAndCharacter(ie.line,0);return Y(He,He+ie.character,ve,Le)}function $(ie,ve,Le,He){let Ee=0,De=0;for(let Pe=ie;Pe<ve;Pe++){const We=Le.text.charCodeAt(Pe);if(!A_(We))break;We===9?De+=He.tabSize+De%He.tabSize:De++,Ee++}return{column:De,character:Ee}}e.findFirstNonWhitespaceCharacterAndColumn=$;function Y(ie,ve,Le,He){return $(ie,ve,Le,He).column}e.findFirstNonWhitespaceColumn=Y;function oe(ie,ve,Le,He,Ee){const De=Le?Le.kind:0;switch(ve.kind){case 244:case 263:case 231:case 264:case 266:case 265:case 209:case 241:case 268:case 210:case 187:case 200:case 189:case 217:case 211:case 213:case 214:case 243:case 277:case 253:case 227:case 207:case 206:case 286:case 289:case 285:case 294:case 173:case 179:case 180:case 169:case 184:case 185:case 196:case 215:case 223:case 279:case 275:case 281:case 276:case 172:case 296:case 297:return!0;case 269:return ie.indentSwitchCase??!0;case 260:case 303:case 226:if(!ie.indentMultiLineObjectLiteralBeginningOnBlankLine&&He&&De===210)return pe(He,Le);if(ve.kind===226&&He&&Le&&De===284){const Pe=He.getLineAndCharacterOfPosition(ka(He.text,ve.pos)).line,We=He.getLineAndCharacterOfPosition(ka(He.text,Le.pos)).line;return Pe!==We}if(ve.kind!==226)return!0;break;case 246:case 247:case 249:case 250:case 248:case 245:case 262:case 218:case 174:case 176:case 177:case 178:return De!==241;case 219:return He&&De===217?pe(He,Le):De!==241;case 278:return De!==279;case 272:return De!==273||!!Le.namedBindings&&Le.namedBindings.kind!==275;case 284:return De!==287;case 288:return De!==290;case 193:case 192:if(De===187||De===189)return!1;break}return Ee}e.nodeWillIndentChild=oe;function fe(ie,ve){switch(ie){case 253:case 257:case 251:case 252:return ve.kind!==241;default:return!1}}function Ne(ie,ve,Le,He,Ee=!1){return oe(ie,ve,Le,He,!1)&&!(Ee&&Le&&fe(Le.kind,ve))}e.shouldIndentChildNode=Ne;function pe(ie,ve){const Le=ka(ie.text,ve.pos),He=ie.getLineAndCharacterOfPosition(Le).line,Ee=ie.getLineAndCharacterOfPosition(ve.end).line;return He===Ee}})(j_||(j_={}))}}),Oc={};X(Oc,{FormattingContext:()=>Z_e,FormattingRequestKind:()=>Q_e,RuleAction:()=>the,RuleFlags:()=>nhe,SmartIndenter:()=>j_,anyContext:()=>Bz,createTextRangeWithKind:()=>aZ,formatDocument:()=>_st,formatNodeGivenIndentation:()=>Sst,formatOnClosingCurly:()=>mst,formatOnEnter:()=>dst,formatOnOpeningCurly:()=>fst,formatOnSemicolon:()=>pst,formatSelection:()=>hst,getAllRules:()=>$we,getFormatContext:()=>nst,getFormattingScanner:()=>ehe,getIndentationString:()=>_he,getRangeOfEnclosingComment:()=>SOe});var p8=T({"src/services/_namespaces/ts.formatting.ts"(){Sat(),Tat(),Aat(),tst(),ust(),Ist(),xst()}}),si=T({"src/services/_namespaces/ts.ts"(){ra(),tO(),Lqe(),rJe(),sJe(),YDe(),yJe(),bJe(),RJe(),WJe(),FJe(),BJe(),KJe(),XJe(),h$e(),g$e(),b$e(),B$e(),V$e(),Ra(),f_e(),x_e(),vit(),Tit(),Bit(),bNe(),GNe(),sot(),_ot(),Dh(),Tot(),$ot(),oat(),cat(),Eat(),p8()}});function Rst(){return IOe??(IOe=new ym(Re))}function TOe(e,t,r,i,o){let s=t?"DeprecationError: ":"DeprecationWarning: ";return s+=`'${e}' `,s+=i?`has been deprecated since v${i}`:"is deprecated",s+=t?" and can no longer be used.":r?` and will no longer be usable after v${r}.`:".",s+=o?` ${lg(o,[e])}`:"",s}function Dst(e,t,r,i){const o=TOe(e,!0,t,r,i);return()=>{throw new TypeError(o)}}function Nst(e,t,r,i){let o=!1;return()=>{AOe&&!o&&(N.log.warn(TOe(e,!1,t,r,i)),o=!0)}}function Cst(e,t={}){const r=typeof t.typeScriptVersion=="string"?new ym(t.typeScriptVersion):t.typeScriptVersion??Rst(),i=typeof t.errorAfter=="string"?new ym(t.errorAfter):t.errorAfter,o=typeof t.warnAfter=="string"?new ym(t.warnAfter):t.warnAfter,s=typeof t.since=="string"?new ym(t.since):t.since??o,l=t.error||i&&r.compareTo(i)>=0,u=!o||r.compareTo(o)>=0;return l?Dst(e,i,s,t.message):u?Nst(e,i,s,t.message):$a}function Pst(e,t){return function(){return e(),t.apply(this,arguments)}}function hhe(e,t){const r=Cst((t==null?void 0:t.name)??N.getFunctionName(e),t);return Pst(r,e)}var AOe,IOe,xOe=T({"src/deprecatedCompat/deprecate.ts"(){cZ(),AOe=!0}});function lZ(e,t,r,i){if(Object.defineProperty(s,"name",{...Object.getOwnPropertyDescriptor(s,"name"),value:e}),i)for(const l of Object.keys(i)){const u=+l;!isNaN(u)&&xs(t,`${u}`)&&(t[u]=hhe(t[u],{...i[u],name:e}))}const o=Mst(t,r);return s;function s(...l){const u=o(l),p=u!==void 0?t[u]:void 0;if(typeof p=="function")return p(...l);throw new TypeError("Invalid arguments")}}function Mst(e,t){return r=>{for(let i=0;xs(e,`${i}`)&&xs(t,`${i}`);i++){const o=t[i];if(o(r))return i}}}function ROe(e){return{overload:t=>({bind:r=>({finish:()=>lZ(e,t,r),deprecate:i=>({finish:()=>lZ(e,t,r,i)})})})}}var Lst=T({"src/deprecatedCompat/deprecations.ts"(){cZ(),xOe()}}),kst=T({"src/deprecatedCompat/5.0/identifierProperties.ts"(){cZ(),xOe(),koe(e=>{const t=e.getIdentifierConstructor();xs(t.prototype,"originalKeywordKind")||Object.defineProperty(t.prototype,"originalKeywordKind",{get:hhe(function(){return u0(this)},{name:"originalKeywordKind",since:"5.0",warnAfter:"5.1",errorAfter:"5.2",message:"Use 'identifierToKeywordKind(identifier)' instead."})}),xs(t.prototype,"isInJSDocNamespace")||Object.defineProperty(t.prototype,"isInJSDocNamespace",{get:hhe(function(){return this.flags&4096?!0:void 0},{name:"isInJSDocNamespace",since:"5.0",warnAfter:"5.1",errorAfter:"5.2",message:"Use '.parent' or the surrounding context to determine this instead."})})})}}),cZ=T({"src/deprecatedCompat/_namespaces/ts.ts"(){ra(),Lst(),kst()}}),wst=T({"src/typingsInstallerCore/_namespaces/ts.ts"(){ra(),tO(),vhe()}});function DOe(e,t,r,i){try{const o=uD(t,Qr(e,"index.d.ts"),{moduleResolution:2},r);return o.resolvedModule&&o.resolvedModule.resolvedFileName}catch(o){i.isEnabled()&&i.writeLine(`Failed to resolve ${t} in folder '${e}': ${o.message}`);return}}function Ost(e,t,r,i){let o=!1;for(let s=r.length;s>0;){const l=NOe(e,t,r,s);s=l.remaining,o=i(l.command)||o}return o}function NOe(e,t,r,i){const o=r.length-i;let s,l=i;for(;s=`${e} install --ignore-scripts ${(l===r.length?r:r.slice(o,o+l)).join(" ")} --save-dev --user-agent="typesInstaller/${t}"`,!(s.length<8e3);)l=l-Math.floor(l/2);return{command:s,remaining:i-l}}function COe(e){return`@types/${e}@ts${ue}`}var POe,MOe,Wst=T({"src/typingsInstallerCore/typingsInstaller.ts"(){wst(),vhe(),POe={isEnabled:()=>!1,writeLine:$a},MOe=class{constructor(e,t,r,i,o,s=POe){this.installTypingHost=e,this.globalCachePath=t,this.safeListPath=r,this.typesMapLocation=i,this.throttleLimit=o,this.log=s,this.packageNameToTypingLocation=new Map,this.missingTypingsSet=new Set,this.knownCachesSet=new Set,this.projectWatchers=new Map,this.pendingRunRequests=[],this.installRunCount=1,this.inFlightRequestCount=0,this.latestDistTag="latest",this.log.isEnabled()&&this.log.writeLine(`Global cache location '${t}', safe file path '${r}', types map path ${i}`),this.processCacheLocation(this.globalCachePath)}handleRequest(e){switch(e.kind){case"discover":this.install(e);break;case"closeProject":this.closeProject(e);break;case"typesRegistry":{const t={};this.typesRegistry.forEach((i,o)=>{t[o]=i});const r={kind:H7,typesRegistry:t};this.sendResponse(r);break}case"installPackage":{this.installPackage(e);break}default:N.assertNever(e)}}closeProject(e){this.closeWatchers(e.projectName)}closeWatchers(e){if(this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${e}'`),!this.projectWatchers.get(e)){this.log.isEnabled()&&this.log.writeLine(`No watchers are registered for project '${e}'`);return}this.projectWatchers.delete(e),this.sendResponse({kind:n2,projectName:e,files:[]}),this.log.isEnabled()&&this.log.writeLine(`Closing file watchers for project '${e}' - done.`)}install(e){this.log.isEnabled()&&this.log.writeLine(`Got install request${O0(e)}`),e.cachePath&&(this.log.isEnabled()&&this.log.writeLine(`Request specifies cache path '${e.cachePath}', loading cached information...`),this.processCacheLocation(e.cachePath)),this.safeList===void 0&&this.initializeSafeList();const t=G_.discoverTypings(this.installTypingHost,this.log.isEnabled()?r=>this.log.writeLine(r):void 0,e.fileNames,e.projectRootPath,this.safeList,this.packageNameToTypingLocation,e.typeAcquisition,e.unresolvedImports,this.typesRegistry,e.compilerOptions);this.watchFiles(e.projectName,t.filesToWatch),t.newTypingNames.length?this.installTypings(e,e.cachePath||this.globalCachePath,t.cachedTypingPaths,t.newTypingNames):(this.sendResponse(this.createSetTypings(e,t.cachedTypingPaths)),this.log.isEnabled()&&this.log.writeLine("No new typings were requested as a result of typings discovery"))}installPackage(e){const{fileName:t,packageName:r,projectName:i,projectRootPath:o,id:s}=e,l=Sm(ai(t),u=>{if(this.installTypingHost.fileExists(Qr(u,"package.json")))return u})||o;if(l)this.installWorker(-1,[r],l,u=>{const p=u?`Package ${r} installed.`:`There was an error installing ${r}.`,h={kind:eO,projectName:i,id:s,success:u,message:p};this.sendResponse(h)});else{const u={kind:eO,projectName:i,id:s,success:!1,message:"Could not determine a project root path."};this.sendResponse(u)}}initializeSafeList(){if(this.typesMapLocation){const e=G_.loadTypesMap(this.installTypingHost,this.typesMapLocation);if(e){this.log.writeLine(`Loaded safelist from types map file '${this.typesMapLocation}'`),this.safeList=e;return}this.log.writeLine(`Failed to load safelist from types map file '${this.typesMapLocation}'`)}this.safeList=G_.loadSafeList(this.installTypingHost,this.safeListPath)}processCacheLocation(e){if(this.log.isEnabled()&&this.log.writeLine(`Processing cache location '${e}'`),this.knownCachesSet.has(e)){this.log.isEnabled()&&this.log.writeLine("Cache location was already processed...");return}const t=Qr(e,"package.json"),r=Qr(e,"package-lock.json");if(this.log.isEnabled()&&this.log.writeLine(`Trying to find '${t}'...`),this.installTypingHost.fileExists(t)&&this.installTypingHost.fileExists(r)){const i=JSON.parse(this.installTypingHost.readFile(t)),o=JSON.parse(this.installTypingHost.readFile(r));if(this.log.isEnabled()&&(this.log.writeLine(`Loaded content of '${t}':${O0(i)}`),this.log.writeLine(`Loaded content of '${r}':${O0(o)}`)),i.devDependencies&&o.dependencies)for(const s in i.devDependencies){if(!xs(o.dependencies,s))continue;const l=ic(s);if(!l)continue;const u=DOe(e,l,this.installTypingHost,this.log);if(!u){this.missingTypingsSet.add(l);continue}const p=this.packageNameToTypingLocation.get(l);if(p){if(p.typingLocation===u)continue;this.log.isEnabled()&&this.log.writeLine(`New typing for package ${l} from '${u}' conflicts with existing typing file '${p}'`)}this.log.isEnabled()&&this.log.writeLine(`Adding entry into typings cache: '${l}' => '${u}'`);const h=k6(o.dependencies,s),m=h&&h.version;if(!m)continue;const b={typingLocation:u,version:new ym(m)};this.packageNameToTypingLocation.set(l,b)}}this.log.isEnabled()&&this.log.writeLine(`Finished processing cache location '${e}'`),this.knownCachesSet.add(e)}filterTypings(e){return Hi(e,t=>{const r=pD(t);if(this.missingTypingsSet.has(r)){this.log.isEnabled()&&this.log.writeLine(`'${t}':: '${r}' is in missingTypingsSet - skipping...`);return}const i=G_.validatePackageName(t);if(i!==G_.NameValidationResult.Ok){this.missingTypingsSet.add(r),this.log.isEnabled()&&this.log.writeLine(G_.renderPackageNameValidationFailure(i,t));return}if(!this.typesRegistry.has(r)){this.log.isEnabled()&&this.log.writeLine(`'${t}':: Entry for package '${r}' does not exist in local types registry - skipping...`);return}if(this.packageNameToTypingLocation.get(r)&&G_.isTypingUpToDate(this.packageNameToTypingLocation.get(r),this.typesRegistry.get(r))){this.log.isEnabled()&&this.log.writeLine(`'${t}':: '${r}' already has an up-to-date typing - skipping...`);return}return r})}ensurePackageDirectoryExists(e){const t=Qr(e,"package.json");this.log.isEnabled()&&this.log.writeLine(`Npm config file: ${t}`),this.installTypingHost.fileExists(t)||(this.log.isEnabled()&&this.log.writeLine(`Npm config file: '${t}' is missing, creating new one...`),this.ensureDirectoryExists(e,this.installTypingHost),this.installTypingHost.writeFile(t,'{ "private": true }'))}installTypings(e,t,r,i){this.log.isEnabled()&&this.log.writeLine(`Installing typings ${JSON.stringify(i)}`);const o=this.filterTypings(i);if(o.length===0){this.log.isEnabled()&&this.log.writeLine("All typings are known to be missing or invalid - no need to install more typings"),this.sendResponse(this.createSetTypings(e,r));return}this.ensurePackageDirectoryExists(t);const s=this.installRunCount;this.installRunCount++,this.sendResponse({kind:q7,eventId:s,typingsInstallerVersion:Re,projectName:e.projectName});const l=o.map(COe);this.installTypingsAsync(s,l,t,u=>{try{if(!u){this.log.isEnabled()&&this.log.writeLine(`install request failed, marking packages as missing to prevent repeated requests: ${JSON.stringify(o)}`);for(const h of o)this.missingTypingsSet.add(h);return}this.log.isEnabled()&&this.log.writeLine(`Installed typings ${JSON.stringify(l)}`);const p=[];for(const h of o){const m=DOe(t,h,this.installTypingHost,this.log);if(!m){this.missingTypingsSet.add(h);continue}const b=this.typesRegistry.get(h),A=new ym(b[`ts${ue}`]||b[this.latestDistTag]),I={typingLocation:m,version:A};this.packageNameToTypingLocation.set(h,I),p.push(m)}this.log.isEnabled()&&this.log.writeLine(`Installed typing files ${JSON.stringify(p)}`),this.sendResponse(this.createSetTypings(e,r.concat(p)))}finally{const p={kind:J7,eventId:s,projectName:e.projectName,packagesToInstall:l,installSuccess:u,typingsInstallerVersion:Re};this.sendResponse(p)}})}ensureDirectoryExists(e,t){const r=ai(e);t.directoryExists(r)||this.ensureDirectoryExists(r,t),t.directoryExists(e)||t.createDirectory(e)}watchFiles(e,t){if(!t.length){this.closeWatchers(e);return}const r=this.projectWatchers.get(e),i=new Set(t);!r||_h(i,o=>!r.has(o))||_h(r,o=>!i.has(o))?(this.projectWatchers.set(e,i),this.sendResponse({kind:n2,projectName:e,files:t})):this.sendResponse({kind:n2,projectName:e,files:void 0})}createSetTypings(e,t){return{projectName:e.projectName,typeAcquisition:e.typeAcquisition,compilerOptions:e.compilerOptions,typings:t,unresolvedImports:e.unresolvedImports,kind:Qw}}installTypingsAsync(e,t,r,i){this.pendingRunRequests.unshift({requestId:e,packageNames:t,cwd:r,onRequestCompleted:i}),this.executeWithThrottling()}executeWithThrottling(){for(;this.inFlightRequestCount<this.throttleLimit&&this.pendingRunRequests.length;){this.inFlightRequestCount++;const e=this.pendingRunRequests.pop();this.installWorker(e.requestId,e.packageNames,e.cwd,t=>{this.inFlightRequestCount--,e.onRequestCompleted(t),this.executeWithThrottling()})}}}}}),ghe={};X(ghe,{TypingsInstaller:()=>MOe,getNpmCommandForInstallation:()=>NOe,installNpmPackages:()=>Ost,typingsName:()=>COe});var Fst=T({"src/typingsInstallerCore/_namespaces/ts.server.typingsInstaller.ts"(){Wst()}}),vhe=T({"src/typingsInstallerCore/_namespaces/ts.server.ts"(){K7(),Fst()}}),zst=T({"src/server/types.ts"(){}});function yhe(e,t,r,i){return{projectName:e.getProjectName(),fileNames:e.getFileNames(!0,!0).concat(e.getExcludedFiles()),compilerOptions:e.getCompilationSettings(),typeAcquisition:t,unresolvedImports:r,projectRootPath:e.getCurrentDirectory(),cachePath:i,kind:"discover"}}function ml(e){return ga(e)}function f8(e,t,r){const i=fp(e)?e:go(e,t);return r(i)}function LOe(e){return e}function kOe(){const e=new Map;return{get(t){return e.get(t)},set(t,r){e.set(t,r)},contains(t){return e.has(t)},remove(t){e.delete(t)}}}function bhe(e){return/dev\/null\/inferredProject\d+\*/.test(e)}function Ehe(e){return`/dev/null/inferredProject${e}*`}function She(e){return`/dev/null/autoImportProviderProject${e}*`}function The(e){return`/dev/null/auxiliaryProject${e}*`}function Ahe(){return[]}var uZ,gc,dZ,oy,Bst=T({"src/server/utilitiesPublic.ts"(){db(),uZ=(e=>(e[e.terse=0]="terse",e[e.normal=1]="normal",e[e.requestTime=2]="requestTime",e[e.verbose=3]="verbose",e))(uZ||{}),gc=Ahe(),dZ=(e=>(e.Err="Err",e.Info="Info",e.Perf="Perf",e))(dZ||{}),(e=>{function t(){throw new Error("No Project.")}e.ThrowNoProject=t;function r(){throw new Error("The project's language service is disabled.")}e.ThrowProjectLanguageServiceDisabled=r;function i(o,s){throw new Error(`Project '${s.getProjectName()}' does not contain document '${o}'`)}e.ThrowProjectDoesNotContainDocument=i})(oy||(oy={}))}});function pZ(e){const t=ic(e);return t==="tsconfig.json"||t==="jsconfig.json"?t:void 0}function wOe(e,t,r){if(!e||e.length===0)return;if(e[0]===t){e.splice(0,1);return}const i=Nv(e,t,nl,r);i>=0&&e.splice(i,1)}var fZ,mZ,Gst=T({"src/server/utilities.ts"(){db(),_T(),fZ=class D7e{constructor(t,r){this.host=t,this.pendingTimeouts=new Map,this.logger=r.hasLevel(3)?r:void 0}schedule(t,r,i){const o=this.pendingTimeouts.get(t);o&&this.host.clearTimeout(o),this.pendingTimeouts.set(t,this.host.setTimeout(D7e.run,r,t,this,i)),this.logger&&this.logger.info(`Scheduled: ${t}${o?", Cancelled earlier one":""}`)}cancel(t){const r=this.pendingTimeouts.get(t);return r?(this.host.clearTimeout(r),this.pendingTimeouts.delete(t)):!1}static run(t,r,i){var o,s;(o=ad)==null||o.logStartScheduledOperation(t),r.pendingTimeouts.delete(t),r.logger&&r.logger.info(`Running: ${t}`),i(),(s=ad)==null||s.logStopScheduledOperation()}},mZ=class N7e{constructor(t,r,i){this.host=t,this.delay=r,this.logger=i}scheduleCollect(){!this.host.gc||this.timerId!==void 0||(this.timerId=this.host.setTimeout(N7e.run,this.delay,this))}static run(t){var r,i;t.timerId=void 0,(r=ad)==null||r.logStartScheduledOperation("GC collect");const o=t.logger.hasLevel(2),s=o&&t.host.getMemoryUsage();if(t.host.gc(),o){const l=t.host.getMemoryUsage();t.logger.perftrc(`GC::before ${s}, after ${l}`)}(i=ad)==null||i.logStopScheduledOperation()}}}}),_Z,Ihe,xhe,Rhe,Dhe,Nhe,Che,Phe,Mhe,Lhe,khe,whe,Ohe,Whe,Fhe=T({"src/server/protocol.ts"(){_Z=(e=>(e.JsxClosingTag="jsxClosingTag",e.LinkedEditingRange="linkedEditingRange",e.Brace="brace",e.BraceFull="brace-full",e.BraceCompletion="braceCompletion",e.GetSpanOfEnclosingComment="getSpanOfEnclosingComment",e.Change="change",e.Close="close",e.Completions="completions",e.CompletionInfo="completionInfo",e.CompletionsFull="completions-full",e.CompletionDetails="completionEntryDetails",e.CompletionDetailsFull="completionEntryDetails-full",e.CompileOnSaveAffectedFileList="compileOnSaveAffectedFileList",e.CompileOnSaveEmitFile="compileOnSaveEmitFile",e.Configure="configure",e.Definition="definition",e.DefinitionFull="definition-full",e.DefinitionAndBoundSpan="definitionAndBoundSpan",e.DefinitionAndBoundSpanFull="definitionAndBoundSpan-full",e.Implementation="implementation",e.ImplementationFull="implementation-full",e.EmitOutput="emit-output",e.Exit="exit",e.FileReferences="fileReferences",e.FileReferencesFull="fileReferences-full",e.Format="format",e.Formatonkey="formatonkey",e.FormatFull="format-full",e.FormatonkeyFull="formatonkey-full",e.FormatRangeFull="formatRange-full",e.Geterr="geterr",e.GeterrForProject="geterrForProject",e.SemanticDiagnosticsSync="semanticDiagnosticsSync",e.SyntacticDiagnosticsSync="syntacticDiagnosticsSync",e.SuggestionDiagnosticsSync="suggestionDiagnosticsSync",e.NavBar="navbar",e.NavBarFull="navbar-full",e.Navto="navto",e.NavtoFull="navto-full",e.NavTree="navtree",e.NavTreeFull="navtree-full",e.DocumentHighlights="documentHighlights",e.DocumentHighlightsFull="documentHighlights-full",e.Open="open",e.Quickinfo="quickinfo",e.QuickinfoFull="quickinfo-full",e.References="references",e.ReferencesFull="references-full",e.Reload="reload",e.Rename="rename",e.RenameInfoFull="rename-full",e.RenameLocationsFull="renameLocations-full",e.Saveto="saveto",e.SignatureHelp="signatureHelp",e.SignatureHelpFull="signatureHelp-full",e.FindSourceDefinition="findSourceDefinition",e.Status="status",e.TypeDefinition="typeDefinition",e.ProjectInfo="projectInfo",e.ReloadProjects="reloadProjects",e.Unknown="unknown",e.OpenExternalProject="openExternalProject",e.OpenExternalProjects="openExternalProjects",e.CloseExternalProject="closeExternalProject",e.SynchronizeProjectList="synchronizeProjectList",e.ApplyChangedToOpenFiles="applyChangedToOpenFiles",e.UpdateOpen="updateOpen",e.EncodedSyntacticClassificationsFull="encodedSyntacticClassifications-full",e.EncodedSemanticClassificationsFull="encodedSemanticClassifications-full",e.Cleanup="cleanup",e.GetOutliningSpans="getOutliningSpans",e.GetOutliningSpansFull="outliningSpans",e.TodoComments="todoComments",e.Indentation="indentation",e.DocCommentTemplate="docCommentTemplate",e.CompilerOptionsDiagnosticsFull="compilerOptionsDiagnostics-full",e.NameOrDottedNameSpan="nameOrDottedNameSpan",e.BreakpointStatement="breakpointStatement",e.CompilerOptionsForInferredProjects="compilerOptionsForInferredProjects",e.GetCodeFixes="getCodeFixes",e.GetCodeFixesFull="getCodeFixes-full",e.GetCombinedCodeFix="getCombinedCodeFix",e.GetCombinedCodeFixFull="getCombinedCodeFix-full",e.ApplyCodeActionCommand="applyCodeActionCommand",e.GetSupportedCodeFixes="getSupportedCodeFixes",e.GetApplicableRefactors="getApplicableRefactors",e.GetEditsForRefactor="getEditsForRefactor",e.GetMoveToRefactoringFileSuggestions="getMoveToRefactoringFileSuggestions",e.GetEditsForRefactorFull="getEditsForRefactor-full",e.OrganizeImports="organizeImports",e.OrganizeImportsFull="organizeImports-full",e.GetEditsForFileRename="getEditsForFileRename",e.GetEditsForFileRenameFull="getEditsForFileRename-full",e.ConfigurePlugin="configurePlugin",e.SelectionRange="selectionRange",e.SelectionRangeFull="selectionRange-full",e.ToggleLineComment="toggleLineComment",e.ToggleLineCommentFull="toggleLineComment-full",e.ToggleMultilineComment="toggleMultilineComment",e.ToggleMultilineCommentFull="toggleMultilineComment-full",e.CommentSelection="commentSelection",e.CommentSelectionFull="commentSelection-full",e.UncommentSelection="uncommentSelection",e.UncommentSelectionFull="uncommentSelection-full",e.PrepareCallHierarchy="prepareCallHierarchy",e.ProvideCallHierarchyIncomingCalls="provideCallHierarchyIncomingCalls",e.ProvideCallHierarchyOutgoingCalls="provideCallHierarchyOutgoingCalls",e.ProvideInlayHints="provideInlayHints",e.WatchChange="watchChange",e))(_Z||{}),Ihe=(e=>(e.All="All",e.SortAndCombine="SortAndCombine",e.RemoveUnused="RemoveUnused",e))(Ihe||{}),xhe=(e=>(e.FixedPollingInterval="FixedPollingInterval",e.PriorityPollingInterval="PriorityPollingInterval",e.DynamicPriorityPolling="DynamicPriorityPolling",e.FixedChunkSizePolling="FixedChunkSizePolling",e.UseFsEvents="UseFsEvents",e.UseFsEventsOnParentDirectory="UseFsEventsOnParentDirectory",e))(xhe||{}),Rhe=(e=>(e.UseFsEvents="UseFsEvents",e.FixedPollingInterval="FixedPollingInterval",e.DynamicPriorityPolling="DynamicPriorityPolling",e.FixedChunkSizePolling="FixedChunkSizePolling",e))(Rhe||{}),Dhe=(e=>(e.FixedInterval="FixedInterval",e.PriorityInterval="PriorityInterval",e.DynamicPriority="DynamicPriority",e.FixedChunkSize="FixedChunkSize",e))(Dhe||{}),Nhe=(e=>(e[e.Invoked=1]="Invoked",e[e.TriggerCharacter=2]="TriggerCharacter",e[e.TriggerForIncompleteCompletions=3]="TriggerForIncompleteCompletions",e))(Nhe||{}),Che=(e=>(e.None="None",e.Block="Block",e.Smart="Smart",e))(Che||{}),Phe=(e=>(e.Ignore="ignore",e.Insert="insert",e.Remove="remove",e))(Phe||{}),Mhe=(e=>(e.None="None",e.Preserve="Preserve",e.ReactNative="ReactNative",e.React="React",e))(Mhe||{}),Lhe=(e=>(e.None="None",e.CommonJS="CommonJS",e.AMD="AMD",e.UMD="UMD",e.System="System",e.ES6="ES6",e.ES2015="ES2015",e.ESNext="ESNext",e.Node16="Node16",e.NodeNext="NodeNext",e.Preserve="Preserve",e))(Lhe||{}),khe=(e=>(e.Classic="Classic",e.Node="Node",e.Node10="Node10",e.Node16="Node16",e.NodeNext="NodeNext",e.Bundler="Bundler",e))(khe||{}),whe=(e=>(e.Crlf="Crlf",e.Lf="Lf",e))(whe||{}),Ohe=(e=>(e.ES3="ES3",e.ES5="ES5",e.ES6="ES6",e.ES2015="ES2015",e.ES2016="ES2016",e.ES2017="ES2017",e.ES2018="ES2018",e.ES2019="ES2019",e.ES2020="ES2020",e.ES2021="ES2021",e.ES2022="ES2022",e.ESNext="ESNext",e))(Ohe||{}),Whe=(e=>(e[e.comment=1]="comment",e[e.identifier=2]="identifier",e[e.keyword=3]="keyword",e[e.numericLiteral=4]="numericLiteral",e[e.operator=5]="operator",e[e.stringLiteral=6]="stringLiteral",e[e.regularExpressionLiteral=7]="regularExpressionLiteral",e[e.whiteSpace=8]="whiteSpace",e[e.text=9]="text",e[e.punctuation=10]="punctuation",e[e.className=11]="className",e[e.enumName=12]="enumName",e[e.interfaceName=13]="interfaceName",e[e.moduleName=14]="moduleName",e[e.typeParameterName=15]="typeParameterName",e[e.typeAliasName=16]="typeAliasName",e[e.parameterName=17]="parameterName",e[e.docCommentTagName=18]="docCommentTagName",e[e.jsxOpenTagName=19]="jsxOpenTagName",e[e.jsxCloseTagName=20]="jsxCloseTagName",e[e.jsxSelfClosingTagName=21]="jsxSelfClosingTagName",e[e.jsxAttribute=22]="jsxAttribute",e[e.jsxText=23]="jsxText",e[e.jsxAttributeStringLiteralValue=24]="jsxAttributeStringLiteralValue",e[e.bigintLiteral=25]="bigintLiteral",e))(Whe||{})}}),zhe={};X(zhe,{ClassificationType:()=>Whe,CommandTypes:()=>_Z,CompletionTriggerKind:()=>Nhe,IndentStyle:()=>Che,JsxEmit:()=>Mhe,ModuleKind:()=>Lhe,ModuleResolutionKind:()=>khe,NewLineKind:()=>whe,OrganizeImportsMode:()=>Ihe,PollingWatchKind:()=>Dhe,ScriptTarget:()=>Ohe,SemicolonPreference:()=>Phe,WatchDirectoryKind:()=>Rhe,WatchFileKind:()=>xhe});var Vst=T({"src/server/_namespaces/ts.server.protocol.ts"(){Fhe()}});function m8(e){return e[0]==="^"||(e.includes("walkThroughSnippet:/")||e.includes("untitled:/"))&&ic(e)[0]==="^"||e.includes(":^")&&!e.includes(al)}function OOe(e){return!e||h8(e)?oy.ThrowNoProject():e}function jst(e){N.assert(typeof e=="number",`Expected position ${e} to be a number.`),N.assert(e>=0,"Expected position to be non-negative.")}function Ust(e){N.assert(typeof e.line=="number",`Expected line ${e.line} to be a number.`),N.assert(typeof e.offset=="number",`Expected offset ${e.offset} to be a number.`),N.assert(e.line>0,`Expected line to be non-${e.line===0?"zero":"negative"}`),N.assert(e.offset>0,`Expected offset to be non-${e.offset===0?"zero":"negative"}`)}var hZ,gZ,Hst=T({"src/server/scriptInfo.ts"(){db(),_T(),hZ=class{constructor(e,t,r){this.host=e,this.info=t,this.isOpen=!1,this.ownFileText=!1,this.pendingReloadFromDisk=!1,this.version=r||0}getVersion(){return this.svc?`SVC-${this.version}-${this.svc.getSnapshotVersion()}`:`Text-${this.version}`}hasScriptVersionCache_TestOnly(){return this.svc!==void 0}resetSourceMapInfo(){this.info.sourceFileLike=void 0,this.info.closeSourceMapFileWatcher(),this.info.sourceMapFilePath=void 0,this.info.declarationInfoPath=void 0,this.info.sourceInfos=void 0,this.info.documentPositionMapper=void 0}useText(e){this.svc=void 0,this.text=e,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo(),this.version++}edit(e,t,r){this.switchToScriptVersionCache().edit(e,t-e,r),this.ownFileText=!1,this.text=void 0,this.textSnapshot=void 0,this.lineMap=void 0,this.fileSize=void 0,this.resetSourceMapInfo()}reload(e){return N.assert(e!==void 0),this.pendingReloadFromDisk=!1,!this.text&&this.svc&&(this.text=RD(this.svc.getSnapshot())),this.text!==e?(this.useText(e),this.ownFileText=!1,!0):!1}reloadWithFileText(e){const{text:t,fileSize:r}=e||!this.info.isDynamicOrHasMixedContent()?this.getFileTextAndSize(e):{text:"",fileSize:void 0},i=this.reload(t);return this.fileSize=r,this.ownFileText=!e||e===this.info.fileName,i}scheduleReloadIfNeeded(){return!this.pendingReloadFromDisk&&!this.ownFileText?this.pendingReloadFromDisk=!0:!1}delayReloadFromFileIntoText(){this.pendingReloadFromDisk=!0}getTelemetryFileSize(){return this.fileSize?this.fileSize:this.text?this.text.length:this.svc?this.svc.getSnapshot().getLength():this.getSnapshot().getLength()}getSnapshot(){var e;return((e=this.tryUseScriptVersionCache())==null?void 0:e.getSnapshot())||(this.textSnapshot??(this.textSnapshot=Y7.fromString(N.checkDefined(this.text))))}getAbsolutePositionAndLineText(e){const t=this.tryUseScriptVersionCache();if(t)return t.getAbsolutePositionAndLineText(e);const r=this.getLineMap();return e<=r.length?{absolutePosition:r[e-1],lineText:this.text.substring(r[e-1],r[e])}:{absolutePosition:this.text.length,lineText:void 0}}lineToTextSpan(e){const t=this.tryUseScriptVersionCache();if(t)return t.lineToTextSpan(e);const r=this.getLineMap(),i=r[e],o=e+1<r.length?r[e+1]:this.text.length;return pc(i,o)}lineOffsetToPosition(e,t,r){const i=this.tryUseScriptVersionCache();return i?i.lineOffsetToPosition(e,t):m4(this.getLineMap(),e-1,t-1,this.text,r)}positionToLineOffset(e){const t=this.tryUseScriptVersionCache();if(t)return t.positionToLineOffset(e);const{line:r,character:i}=Kx(this.getLineMap(),e);return{line:r+1,offset:i+1}}getFileTextAndSize(e){let t;const r=e||this.info.fileName,i=()=>t===void 0?t=this.host.readFile(r)||"":t;if(!XA(this.info.fileName)){const o=this.host.getFileSize?this.host.getFileSize(r):i().length;if(o>Yz)return N.assert(!!this.info.containingProjects.length),this.info.containingProjects[0].projectService.logger.info(`Skipped loading contents of large file ${r} for info ${this.info.fileName}: fileSize: ${o}`),this.info.containingProjects[0].projectService.sendLargeFileReferencedEvent(r,o),{text:"",fileSize:o}}return{text:i()}}switchToScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&(this.svc=c9.fromString(this.getOrLoadText()),this.textSnapshot=void 0,this.version++),this.svc}tryUseScriptVersionCache(){return(!this.svc||this.pendingReloadFromDisk)&&this.getOrLoadText(),this.isOpen?(!this.svc&&!this.textSnapshot&&(this.svc=c9.fromString(N.checkDefined(this.text)),this.textSnapshot=void 0),this.svc):this.svc}getOrLoadText(){return(this.text===void 0||this.pendingReloadFromDisk)&&(N.assert(!this.svc||this.pendingReloadFromDisk,"ScriptVersionCache should not be set when reloading from disk"),this.reloadWithFileText()),this.text}getLineMap(){return N.assert(!this.svc,"ScriptVersionCache should not be set"),this.lineMap||(this.lineMap=DA(N.checkDefined(this.text)))}getLineInfo(){const e=this.tryUseScriptVersionCache();if(e)return{getLineCount:()=>e.getLineCount(),getLineText:r=>e.getAbsolutePositionAndLineText(r+1).lineText};const t=this.getLineMap();return eJ(this.text,t)}},gZ=class{constructor(e,t,r,i,o,s){this.host=e,this.fileName=t,this.scriptKind=r,this.hasMixedContent=i,this.path=o,this.containingProjects=[],this.isDynamic=m8(t),this.textStorage=new hZ(e,this,s),(i||this.isDynamic)&&(this.realpath=this.path),this.scriptKind=r||Z3(t)}isDynamicOrHasMixedContent(){return this.hasMixedContent||this.isDynamic}isScriptOpen(){return this.textStorage.isOpen}open(e){this.textStorage.isOpen=!0,e!==void 0&&this.textStorage.reload(e)&&this.markContainingProjectsAsDirty()}close(e=!0){this.textStorage.isOpen=!1,e&&this.textStorage.scheduleReloadIfNeeded()&&this.markContainingProjectsAsDirty()}getSnapshot(){return this.textStorage.getSnapshot()}ensureRealPath(){if(this.realpath===void 0&&(this.realpath=this.path,this.host.realpath)){N.assert(!!this.containingProjects.length);const e=this.containingProjects[0],t=this.host.realpath(this.path);t&&(this.realpath=e.toPath(t),this.realpath!==this.path&&e.projectService.realpathToScriptInfos.add(this.realpath,this))}}getRealpathIfDifferent(){return this.realpath&&this.realpath!==this.path?this.realpath:void 0}isSymlink(){return this.realpath&&this.realpath!==this.path}getFormatCodeSettings(){return this.formatSettings}getPreferences(){return this.preferences}attachToProject(e){const t=!this.isAttached(e);return t&&(this.containingProjects.push(e),e.getCompilerOptions().preserveSymlinks||this.ensureRealPath(),e.onFileAddedOrRemoved(this.isSymlink())),t}isAttached(e){switch(this.containingProjects.length){case 0:return!1;case 1:return this.containingProjects[0]===e;case 2:return this.containingProjects[0]===e||this.containingProjects[1]===e;default:return Nr(this.containingProjects,e)}}detachFromProject(e){switch(this.containingProjects.length){case 0:return;case 1:this.containingProjects[0]===e&&(e.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;case 2:this.containingProjects[0]===e?(e.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects[0]=this.containingProjects.pop()):this.containingProjects[1]===e&&(e.onFileAddedOrRemoved(this.isSymlink()),this.containingProjects.pop());break;default:Gx(this.containingProjects,e)&&e.onFileAddedOrRemoved(this.isSymlink());break}}detachAllProjects(){for(const e of this.containingProjects){V0(e)&&e.getCachedDirectoryStructureHost().addOrDeleteFile(this.fileName,this.path,2);const t=e.getRootFilesMap().get(this.path);e.removeFile(this,!1,!1),e.onFileAddedOrRemoved(this.isSymlink()),t&&!XD(e)&&e.addMissingFileRoot(t.fileName)}Vo(this.containingProjects)}getDefaultProject(){switch(this.containingProjects.length){case 0:return oy.ThrowNoProject();case 1:return OOe(this.containingProjects[0]);default:let e,t,r,i,o;for(let s=0;s<this.containingProjects.length;s++){const l=this.containingProjects[s];if(V0(l)){if(!l.isSourceOfProjectReferenceRedirect(this.fileName)){if(o===void 0&&s!==this.containingProjects.length-1&&(o=l.projectService.findDefaultConfiguredProject(this)||!1),o===l)return l;i||(i=l)}t||(t=l)}else!e&&yZ(l)?e=l:!r&&XD(l)&&(r=l)}return OOe(o||i||t||e||r)}}registerFileUpdate(){for(const e of this.containingProjects)e.registerFileUpdate(this.path)}setOptions(e,t){e&&(this.formatSettings?this.formatSettings={...this.formatSettings,...e}:(this.formatSettings=X7(this.host.newLine),Fx(this.formatSettings,e))),t&&(this.preferences||(this.preferences=kf),this.preferences={...this.preferences,...t})}getLatestVersion(){return this.textStorage.getSnapshot(),this.textStorage.getVersion()}saveTo(e){this.host.writeFile(e,RD(this.textStorage.getSnapshot()))}delayReloadNonMixedContentFile(){N.assert(!this.isDynamicOrHasMixedContent()),this.textStorage.delayReloadFromFileIntoText(),this.markContainingProjectsAsDirty()}reloadFromFile(e){return this.textStorage.reloadWithFileText(e)?(this.markContainingProjectsAsDirty(),!0):!1}editContent(e,t,r){this.textStorage.edit(e,t,r),this.markContainingProjectsAsDirty()}markContainingProjectsAsDirty(){for(const e of this.containingProjects)e.markFileAsDirty(this.path)}isOrphan(){return!Ue(this.containingProjects,e=>!e.isOrphan())}isContainedByBackgroundProject(){return bt(this.containingProjects,h8)}lineToTextSpan(e){return this.textStorage.lineToTextSpan(e)}lineOffsetToPosition(e,t,r){return this.textStorage.lineOffsetToPosition(e,t,r)}positionToLineOffset(e){jst(e);const t=this.textStorage.positionToLineOffset(e);return Ust(t),t}isJavaScript(){return this.scriptKind===1||this.scriptKind===2}closeSourceMapFileWatcher(){this.sourceMapFilePath&&!Po(this.sourceMapFilePath)&&(Mf(this.sourceMapFilePath),this.sourceMapFilePath=void 0)}}}});function WOe(e,t){if(e===t||(e||gc).length===0&&(t||gc).length===0)return!0;const r=new Map;let i=0;for(const o of e)r.get(o)!==!0&&(r.set(o,!0),i++);for(const o of t){const s=r.get(o);if(s===void 0)return!1;s===!0&&(r.set(o,!1),i--)}return i===0}function qst(e,t){return e.enable!==t.enable||!WOe(e.include,t.include)||!WOe(e.exclude,t.exclude)}function Jst(e,t){return Xy(e)!==Xy(t)}function Kst(e,t){return e===t?!1:!Km(e,t)}var qz,vZ,Xst=T({"src/server/typingsCache.ts"(){db(),_T(),qz={isKnownTypesPackageName:Xm,installPackage:Ko,enqueueInstallTypingsRequest:$a,attach:$a,onProjectClosed:$a,globalTypingsCacheLocation:void 0},vZ=class{constructor(e){this.installer=e,this.perProjectCache=new Map}isKnownTypesPackageName(e){return this.installer.isKnownTypesPackageName(e)}installPackage(e){return this.installer.installPackage(e)}enqueueInstallTypingsForProject(e,t,r){const i=e.getTypeAcquisition();if(!i||!i.enable)return;const o=this.perProjectCache.get(e.getProjectName());(r||!o||qst(i,o.typeAcquisition)||Jst(e.getCompilationSettings(),o.compilerOptions)||Kst(t,o.unresolvedImports))&&(this.perProjectCache.set(e.getProjectName(),{compilerOptions:e.getCompilationSettings(),typeAcquisition:i,typings:o?o.typings:gc,unresolvedImports:t,poisoned:!0}),this.installer.enqueueInstallTypingsRequest(e,i,t))}updateTypingsForProject(e,t,r,i,o){const s=uS(o);return this.perProjectCache.set(e,{compilerOptions:t,typeAcquisition:r,typings:s,unresolvedImports:i,poisoned:!1}),!r||!r.enable?gc:s}onProjectClosed(e){this.perProjectCache.delete(e.getProjectName())&&this.installer.onProjectClosed(e)}}}});function _8(e,t=!1){const r={js:0,jsSize:0,jsx:0,jsxSize:0,ts:0,tsSize:0,tsx:0,tsxSize:0,dts:0,dtsSize:0,deferred:0,deferredSize:0};for(const i of e){const o=t?i.textStorage.getTelemetryFileSize():0;switch(i.scriptKind){case 1:r.js+=1,r.jsSize+=o;break;case 2:r.jsx+=1,r.jsxSize+=o;break;case 3:Su(i.fileName)?(r.dts+=1,r.dtsSize+=o):(r.ts+=1,r.tsSize+=o);break;case 4:r.tsx+=1,r.tsxSize+=o;break;case 7:r.deferred+=1,r.deferredSize+=o;break}}return r}function Yst(e){const t=_8(e.getScriptInfos());return t.js>0&&t.ts===0&&t.tsx===0}function Bhe(e){const t=_8(e.getRootScriptInfos());return t.ts===0&&t.tsx===0}function Ghe(e){const t=_8(e.getScriptInfos());return t.ts===0&&t.tsx===0}function Vhe(e){return!e.some(t=>Il(t,".ts")&&!Su(t)||Il(t,".tsx"))}function jhe(e){return e.generatedFilePath!==void 0}function $st(e,t){var r,i;const o=e.getSourceFiles();(r=sr)==null||r.push(sr.Phase.Session,"getUnresolvedImports",{count:o.length});const s=e.getTypeChecker().getAmbientModules().map(u=>tm(u.getName())),l=KN(Pi(o,u=>Qst(e,u,s,t)));return(i=sr)==null||i.pop(),l}function Qst(e,t,r,i){return n0(i,t.path,()=>{let o;return e.forEachResolvedModule(({resolvedModule:s},l)=>{(!s||!$C(s.extension))&&!Yc(l)&&!r.some(u=>u===l)&&(o=xn(o,Nw(l).packageName))},t),o||gc})}function XD(e){return e.projectKind===0}function V0(e){return e.projectKind===1}function yZ(e){return e.projectKind===2}function h8(e){return e.projectKind===3||e.projectKind===4}var D2,mT,bZ,EZ,SZ,TZ,AZ,Jz,Zst=T({"src/server/project.ts"(){db(),db(),_T(),D2=(e=>(e[e.Inferred=0]="Inferred",e[e.Configured=1]="Configured",e[e.External=2]="External",e[e.AutoImportProvider=3]="AutoImportProvider",e[e.Auxiliary=4]="Auxiliary",e))(D2||{}),mT=class C7e{constructor(t,r,i,o,s,l,u,p,h,m,b){switch(this.projectKind=r,this.projectService=i,this.documentRegistry=o,this.compilerOptions=u,this.compileOnSaveEnabled=p,this.watchOptions=h,this.rootFiles=[],this.rootFilesMap=new Map,this.plugins=[],this.cachedUnresolvedImportsPerFile=new Map,this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1,this.lastReportedVersion=0,this.projectProgramVersion=0,this.projectStateVersion=0,this.isInitialLoadPending=Xm,this.dirty=!1,this.typingFiles=gc,this.moduleSpecifierCache=tge(this),this.createHash=oa(this.projectService.host,this.projectService.host.createHash),this.globalCacheResolutionModuleName=G_.nonRelativeModuleNameForTypingCache,this.updateFromProjectInProgress=!1,this.projectName=t,this.directoryStructureHost=m,this.currentDirectory=this.projectService.getNormalizedAbsolutePath(b),this.getCanonicalFileName=this.projectService.toCanonicalFileName,this.jsDocParsingMode=this.projectService.jsDocParsingMode,this.cancellationToken=new QY(this.projectService.cancellationToken,this.projectService.throttleWaitMilliseconds),this.compilerOptions?(s||Xy(this.compilerOptions)||this.projectService.hasDeferredExtension())&&(this.compilerOptions.allowNonTsExtensions=!0):(this.compilerOptions=dz(),this.compilerOptions.allowNonTsExtensions=!0,this.compilerOptions.allowJs=!0),i.serverMode){case 0:this.languageServiceEnabled=!0;break;case 1:this.languageServiceEnabled=!0,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;case 2:this.languageServiceEnabled=!1,this.compilerOptions.noResolve=!0,this.compilerOptions.types=[];break;default:N.assertNever(i.serverMode)}this.setInternalCompilerOptionsForEmittingJsFiles();const A=this.projectService.host;this.projectService.logger.loggingEnabled()?this.trace=I=>this.writeLog(I):A.trace&&(this.trace=I=>A.trace(I)),this.realpath=oa(A,A.realpath),this.resolutionCache=sK(this,this.currentDirectory,!0),this.languageService=kpe(this,this.documentRegistry,this.projectService.serverMode),l&&this.disableLanguageService(l),this.markAsDirty(),h8(this)||(this.projectService.pendingEnsureProjectForOpenFiles=!0),this.projectService.onProjectCreation(this)}getResolvedProjectReferenceToRedirect(t){}isNonTsProject(){return jp(this),Ghe(this)}isJsOnlyProject(){return jp(this),Yst(this)}static resolveModule(t,r,i,o){return C7e.importServicePluginSync({name:t},[r],i,o).resolvedModule}static importServicePluginSync(t,r,i,o){N.assertIsDefined(i.require);let s,l;for(const u of r){const p=Lu(i.resolvePath(Qr(u,"node_modules")));o(`Loading ${t.name} from ${u} (resolved to ${p})`);const h=i.require(p,t.name);if(!h.error){l=h.module;break}const m=h.error.stack||h.error.message||JSON.stringify(h.error);(s??(s=[])).push(`Failed to load module '${t.name}' from ${p}: ${m}`)}return{pluginConfigEntry:t,resolvedModule:l,errorLogs:s}}static async importServicePluginAsync(t,r,i,o){N.assertIsDefined(i.importPlugin);let s,l;for(const u of r){const p=Qr(u,"node_modules");o(`Dynamically importing ${t.name} from ${u} (resolved to ${p})`);let h;try{h=await i.importPlugin(p,t.name)}catch(b){h={module:void 0,error:b}}if(!h.error){l=h.module;break}const m=h.error.stack||h.error.message||JSON.stringify(h.error);(s??(s=[])).push(`Failed to dynamically import module '${t.name}' from ${p}: ${m}`)}return{pluginConfigEntry:t,resolvedModule:l,errorLogs:s}}isKnownTypesPackageName(t){return this.typingsCache.isKnownTypesPackageName(t)}installPackage(t){return this.typingsCache.installPackage({...t,projectName:this.projectName,projectRootPath:this.toPath(this.currentDirectory)})}getGlobalTypingsCacheLocation(){return this.getGlobalCache()}get typingsCache(){return this.projectService.typingsCache}getSymlinkCache(){return this.symlinks||(this.symlinks=wU(this.getCurrentDirectory(),this.getCanonicalFileName)),this.program&&!this.symlinks.hasProcessedResolutions()&&this.symlinks.setSymlinksFromResolutions(this.program.forEachResolvedModule,this.program.forEachResolvedTypeReferenceDirective,this.program.getAutomaticTypeDirectiveResolutions()),this.symlinks}getCompilationSettings(){return this.compilerOptions}getCompilerOptions(){return this.getCompilationSettings()}getNewLine(){return this.projectService.host.newLine}getProjectVersion(){return this.projectStateVersion.toString()}getProjectReferences(){}getScriptFileNames(){if(!this.rootFiles)return et;let t;return this.rootFilesMap.forEach(r=>{(this.languageServiceEnabled||r.info&&r.info.isScriptOpen())&&(t||(t=[])).push(r.fileName)}),Jr(t,this.typingFiles)||et}getOrCreateScriptInfoAndAttachToProject(t){const r=this.projectService.getOrCreateScriptInfoNotOpenedByClient(t,this.currentDirectory,this.directoryStructureHost);if(r){const i=this.rootFilesMap.get(r.path);i&&i.info!==r&&(this.rootFiles.push(r),i.info=r),r.attachToProject(this)}return r}getScriptKind(t){const r=this.projectService.getScriptInfoForPath(this.toPath(t));return r&&r.scriptKind}getScriptVersion(t){const r=this.projectService.getOrCreateScriptInfoNotOpenedByClient(t,this.currentDirectory,this.directoryStructureHost);return r&&r.getLatestVersion()}getScriptSnapshot(t){const r=this.getOrCreateScriptInfoAndAttachToProject(t);if(r)return r.getSnapshot()}getCancellationToken(){return this.cancellationToken}getCurrentDirectory(){return this.currentDirectory}getDefaultLibFileName(){const t=ai(ga(this.projectService.getExecutingFilePath()));return Qr(t,aL(this.compilerOptions))}useCaseSensitiveFileNames(){return this.projectService.host.useCaseSensitiveFileNames}readDirectory(t,r,i,o,s){return this.directoryStructureHost.readDirectory(t,r,i,o,s)}readFile(t){return this.projectService.host.readFile(t)}writeFile(t,r){return this.projectService.host.writeFile(t,r)}fileExists(t){const r=this.toPath(t);return!this.isWatchedMissingFile(r)&&this.directoryStructureHost.fileExists(t)}resolveModuleNameLiterals(t,r,i,o,s,l){return this.resolutionCache.resolveModuleNameLiterals(t,r,i,o,s,l)}getModuleResolutionCache(){return this.resolutionCache.getModuleResolutionCache()}resolveTypeReferenceDirectiveReferences(t,r,i,o,s,l){return this.resolutionCache.resolveTypeReferenceDirectiveReferences(t,r,i,o,s,l)}resolveLibrary(t,r,i,o){return this.resolutionCache.resolveLibrary(t,r,i,o)}directoryExists(t){return this.directoryStructureHost.directoryExists(t)}getDirectories(t){return this.directoryStructureHost.getDirectories(t)}getCachedDirectoryStructureHost(){}toPath(t){return ol(t,this.currentDirectory,this.projectService.toCanonicalFileName)}watchDirectoryOfFailedLookupLocation(t,r,i){return this.projectService.watchFactory.watchDirectory(t,r,i,this.projectService.getWatchOptions(this),wc.FailedLookupLocations,this)}watchAffectingFileLocation(t,r){return this.projectService.watchFactory.watchFile(t,r,2e3,this.projectService.getWatchOptions(this),wc.AffectingFileLocation,this)}clearInvalidateResolutionOfFailedLookupTimer(){return this.projectService.throttledOperations.cancel(`${this.getProjectName()}FailedLookupInvalidation`)}scheduleInvalidateResolutionsOfFailedLookupLocations(){this.projectService.throttledOperations.schedule(`${this.getProjectName()}FailedLookupInvalidation`,1e3,()=>{this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)})}invalidateResolutionsOfFailedLookupLocations(){this.clearInvalidateResolutionOfFailedLookupTimer()&&this.resolutionCache.invalidateResolutionsOfFailedLookupLocations()&&(this.markAsDirty(),this.projectService.delayEnsureProjectForOpenFiles())}onInvalidatedResolution(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}watchTypeRootsDirectory(t,r,i){return this.projectService.watchFactory.watchDirectory(t,r,i,this.projectService.getWatchOptions(this),wc.TypeRoots,this)}hasChangedAutomaticTypeDirectiveNames(){return this.resolutionCache.hasChangedAutomaticTypeDirectiveNames()}onChangedAutomaticTypeDirectiveNames(){this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)}getGlobalCache(){return this.getTypeAcquisition().enable?this.projectService.typingsInstaller.globalTypingsCacheLocation:void 0}fileIsOpen(t){return this.projectService.openFiles.has(t)}writeLog(t){this.projectService.logger.info(t)}log(t){this.writeLog(t)}error(t){this.projectService.logger.msg(t,"Err")}setInternalCompilerOptionsForEmittingJsFiles(){(this.projectKind===0||this.projectKind===2)&&(this.compilerOptions.noEmitForJsFiles=!0)}getGlobalProjectErrors(){return nr(this.projectErrors,t=>!t.file)||gc}getAllProjectErrors(){return this.projectErrors||gc}setProjectErrors(t){this.projectErrors=t}getLanguageService(t=!0){return t&&jp(this),this.languageService}getSourceMapper(){return this.getLanguageService().getSourceMapper()}clearSourceMapperCache(){this.languageService.clearSourceMapperCache()}getDocumentPositionMapper(t,r){return this.projectService.getDocumentPositionMapper(this,t,r)}getSourceFileLike(t){return this.projectService.getSourceFileLike(t,this)}shouldEmitFile(t){return t&&!t.isDynamicOrHasMixedContent()&&!this.program.isSourceOfProjectReferenceRedirect(t.path)}getCompileOnSaveAffectedFileList(t){return this.languageServiceEnabled?(jp(this),this.builderState=Mm.create(this.program,this.builderState,!0),Hi(Mm.getFilesAffectedBy(this.builderState,this.program,t.path,this.cancellationToken,this.projectService.host),r=>this.shouldEmitFile(this.projectService.getScriptInfoForPath(r.path))?r.fileName:void 0)):[]}emitFile(t,r){if(!this.languageServiceEnabled||!this.shouldEmitFile(t))return{emitSkipped:!0,diagnostics:gc};const{emitSkipped:i,diagnostics:o,outputFiles:s}=this.getLanguageService().getEmitOutput(t.fileName);if(!i){for(const l of s){const u=go(l.name,this.currentDirectory);r(u,l.text,l.writeByteOrderMark)}if(this.builderState&&Nf(this.compilerOptions)){const l=s.filter(u=>Su(u.name));if(l.length===1){const u=this.program.getSourceFile(t.fileName),p=this.projectService.host.createHash?this.projectService.host.createHash(l[0].text):tC(l[0].text);Mm.updateSignatureOfFile(this.builderState,p,u.resolvedPath)}}}return{emitSkipped:i,diagnostics:o}}enableLanguageService(){this.languageServiceEnabled||this.projectService.serverMode===2||(this.languageServiceEnabled=!0,this.lastFileExceededProgramSize=void 0,this.projectService.onUpdateLanguageServiceStateForProject(this,!0))}cleanupProgram(){if(this.program){for(const t of this.program.getSourceFiles())this.detachScriptInfoIfNotRoot(t.fileName);this.program.forEachResolvedProjectReference(t=>this.detachScriptInfoFromProject(t.sourceFile.fileName)),this.program=void 0}}disableLanguageService(t){this.languageServiceEnabled&&(N.assert(this.projectService.serverMode!==2),this.languageService.cleanupSemanticCache(),this.languageServiceEnabled=!1,this.cleanupProgram(),this.lastFileExceededProgramSize=t,this.builderState=void 0,this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.resolutionCache.closeTypeRootsWatch(),this.clearGeneratedFileWatch(),this.projectService.verifyDocumentRegistry(),this.projectService.onUpdateLanguageServiceStateForProject(this,!1))}getProjectName(){return this.projectName}removeLocalTypingsFromTypeAcquisition(t){return!t||!t.include?t:{...t,include:this.removeExistingTypings(t.include)}}getExternalFiles(t){return uS(Pi(this.plugins,r=>{if(typeof r.module.getExternalFiles=="function")try{return r.module.getExternalFiles(this,t||0)}catch(i){this.projectService.logger.info(`A plugin threw an exception in getExternalFiles: ${i}`),i.stack&&this.projectService.logger.info(i.stack)}}))}getSourceFile(t){if(this.program)return this.program.getSourceFileByPath(t)}getSourceFileOrConfigFile(t){const r=this.program.getCompilerOptions();return t===r.configFilePath?r.configFile:this.getSourceFile(t)}close(){var t;this.projectService.typingsCache.onProjectClosed(this),this.closeWatchingTypingLocations(),this.cleanupProgram(),Ue(this.externalFiles,r=>this.detachScriptInfoIfNotRoot(r));for(const r of this.rootFiles)r.detachFromProject(this);this.projectService.pendingEnsureProjectForOpenFiles=!0,this.rootFiles=void 0,this.rootFilesMap=void 0,this.externalFiles=void 0,this.program=void 0,this.builderState=void 0,this.resolutionCache.clear(),this.resolutionCache=void 0,this.cachedUnresolvedImportsPerFile=void 0,(t=this.packageJsonWatches)==null||t.forEach(r=>{r.projects.delete(this),r.close()}),this.packageJsonWatches=void 0,this.moduleSpecifierCache.clear(),this.moduleSpecifierCache=void 0,this.directoryStructureHost=void 0,this.exportMapCache=void 0,this.projectErrors=void 0,this.plugins.length=0,this.missingFilesMap&&(tp(this.missingFilesMap,Qm),this.missingFilesMap=void 0),this.clearGeneratedFileWatch(),this.clearInvalidateResolutionOfFailedLookupTimer(),this.autoImportProviderHost&&this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0,this.noDtsResolutionProject&&this.noDtsResolutionProject.close(),this.noDtsResolutionProject=void 0,this.languageService.dispose(),this.languageService=void 0}detachScriptInfoIfNotRoot(t){const r=this.projectService.getScriptInfo(t);r&&!this.isRoot(r)&&r.detachFromProject(this)}isClosed(){return this.rootFiles===void 0}hasRoots(){return this.rootFiles&&this.rootFiles.length>0}isOrphan(){return!1}getRootFiles(){return this.rootFiles&&this.rootFiles.map(t=>t.fileName)}getRootFilesMap(){return this.rootFilesMap}getRootScriptInfos(){return this.rootFiles}getScriptInfos(){return this.languageServiceEnabled?wt(this.program.getSourceFiles(),t=>{const r=this.projectService.getScriptInfoForPath(t.resolvedPath);return N.assert(!!r,"getScriptInfo",()=>`scriptInfo for a file '${t.fileName}' Path: '${t.path}' / '${t.resolvedPath}' is missing.`),r}):this.rootFiles}getExcludedFiles(){return gc}getFileNames(t,r){if(!this.program)return[];if(!this.languageServiceEnabled){let o=this.getRootFiles();if(this.compilerOptions){const s=wpe(this.compilerOptions);s&&(o||(o=[])).push(s)}return o}const i=[];for(const o of this.program.getSourceFiles())t&&this.program.isSourceFileFromExternalLibrary(o)||i.push(o.fileName);if(!r){const o=this.program.getCompilerOptions().configFile;if(o&&(i.push(o.fileName),o.extendedSourceFiles))for(const s of o.extendedSourceFiles)i.push(s)}return i}getFileNamesWithRedirectInfo(t){return this.getFileNames().map(r=>({fileName:r,isSourceOfProjectReferenceRedirect:t&&this.isSourceOfProjectReferenceRedirect(r)}))}hasConfigFile(t){if(this.program&&this.languageServiceEnabled){const r=this.program.getCompilerOptions().configFile;if(r){if(t===r.fileName)return!0;if(r.extendedSourceFiles){for(const i of r.extendedSourceFiles)if(t===i)return!0}}}return!1}containsScriptInfo(t){if(this.isRoot(t))return!0;if(!this.program)return!1;const r=this.program.getSourceFileByPath(t.path);return!!r&&r.resolvedPath===t.path}containsFile(t,r){const i=this.projectService.getScriptInfoForNormalizedPath(t);return i&&(i.isScriptOpen()||!r)?this.containsScriptInfo(i):!1}isRoot(t){var r;return this.rootFilesMap&&((r=this.rootFilesMap.get(t.path))==null?void 0:r.info)===t}addRoot(t,r){N.assert(!this.isRoot(t)),this.rootFiles.push(t),this.rootFilesMap.set(t.path,{fileName:r||t.fileName,info:t}),t.attachToProject(this),this.markAsDirty()}addMissingFileRoot(t){const r=this.projectService.toPath(t);this.rootFilesMap.set(r,{fileName:t}),this.markAsDirty()}removeFile(t,r,i){this.isRoot(t)&&this.removeRoot(t),r?this.resolutionCache.removeResolutionsOfFile(t.path):this.resolutionCache.invalidateResolutionOfFile(t.path),this.cachedUnresolvedImportsPerFile.delete(t.path),i&&t.detachFromProject(this),this.markAsDirty()}registerFileUpdate(t){(this.updatedFileNames||(this.updatedFileNames=new Set)).add(t)}markFileAsDirty(t){this.markAsDirty(),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.changedFilesForExportMapCache||(this.changedFilesForExportMapCache=new Set)).add(t)}markAsDirty(){this.dirty||(this.projectStateVersion++,this.dirty=!0)}onAutoImportProviderSettingsChanged(){var t;this.autoImportProviderHost===!1?this.autoImportProviderHost=void 0:(t=this.autoImportProviderHost)==null||t.markAsDirty()}onPackageJsonChange(){this.moduleSpecifierCache.clear(),this.autoImportProviderHost&&this.autoImportProviderHost.markAsDirty()}onFileAddedOrRemoved(t){this.hasAddedorRemovedFiles=!0,t&&(this.hasAddedOrRemovedSymlinks=!0)}onDiscoveredSymlink(){this.hasAddedOrRemovedSymlinks=!0}updateFromProject(){jp(this)}updateGraph(){var t,r,i,o,s;(t=sr)==null||t.push(sr.Phase.Session,"updateGraph",{name:this.projectName,kind:D2[this.projectKind]}),(r=ad)==null||r.logStartUpdateGraph(),this.resolutionCache.startRecordingFilesWithChangedResolutions();const l=this.updateGraphWorker(),u=this.hasAddedorRemovedFiles;this.hasAddedorRemovedFiles=!1,this.hasAddedOrRemovedSymlinks=!1;const p=this.resolutionCache.finishRecordingFilesWithChangedResolutions()||gc;for(const m of p)this.cachedUnresolvedImportsPerFile.delete(m);this.languageServiceEnabled&&this.projectService.serverMode===0&&!this.isOrphan()?((l||p.length)&&(this.lastCachedUnresolvedImportsList=$st(this.program,this.cachedUnresolvedImportsPerFile)),this.projectService.typingsCache.enqueueInstallTypingsForProject(this,this.lastCachedUnresolvedImportsList,u)):this.lastCachedUnresolvedImportsList=void 0;const h=this.projectProgramVersion===0&&l;return l&&this.projectProgramVersion++,u&&(this.autoImportProviderHost||(this.autoImportProviderHost=void 0),(i=this.autoImportProviderHost)==null||i.markAsDirty()),h&&this.getPackageJsonAutoImportProvider(),(o=ad)==null||o.logStopUpdateGraph(),(s=sr)==null||s.pop(),!l}updateTypingFiles(t){V6(t,this.typingFiles,zx(!this.useCaseSensitiveFileNames()),$a,r=>this.detachScriptInfoFromProject(r))&&(this.typingFiles=t,this.resolutionCache.setFilesWithInvalidatedNonRelativeUnresolvedImports(this.cachedUnresolvedImportsPerFile),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))}closeWatchingTypingLocations(){this.typingWatchers&&tp(this.typingWatchers,Qm),this.typingWatchers=void 0}onTypingInstallerWatchInvoke(){this.typingWatchers.isInvoked=!0,this.projectService.updateTypingsForProject({projectName:this.getProjectName(),kind:Zw})}watchTypingLocations(t){if(!t){this.typingWatchers.isInvoked=!1;return}if(!t.length){this.closeWatchingTypingLocations();return}const r=new Map(this.typingWatchers);this.typingWatchers||(this.typingWatchers=new Map),this.typingWatchers.isInvoked=!1;const i=(o,s)=>{const l=this.toPath(o);r.delete(l),this.typingWatchers.has(l)||this.typingWatchers.set(l,s==="FileWatcher"?this.projectService.watchFactory.watchFile(o,()=>this.typingWatchers.isInvoked?this.writeLog("TypingWatchers already invoked"):this.onTypingInstallerWatchInvoke(),2e3,this.projectService.getWatchOptions(this),wc.TypingInstallerLocationFile,this):this.projectService.watchFactory.watchDirectory(o,u=>{if(this.typingWatchers.isInvoked)return this.writeLog("TypingWatchers already invoked");if(!Il(u,".json"))return this.writeLog("Ignoring files that are not *.json");if(Lg(u,Qr(this.projectService.typingsInstaller.globalTypingsCacheLocation,"package.json"),!this.useCaseSensitiveFileNames()))return this.writeLog("Ignoring package.json change at global typings location");this.onTypingInstallerWatchInvoke()},1,this.projectService.getWatchOptions(this),wc.TypingInstallerLocationDirectory,this))};for(const o of t){const s=ic(o);if(s==="package.json"||s==="bower.json"){i(o,"FileWatcher");continue}if(bm(this.currentDirectory,o,this.currentDirectory,!this.useCaseSensitiveFileNames())){const l=o.indexOf(al,this.currentDirectory.length+1);i(l!==-1?o.substr(0,l):o,"DirectoryWatcher");continue}if(bm(this.projectService.typingsInstaller.globalTypingsCacheLocation,o,this.currentDirectory,!this.useCaseSensitiveFileNames())){i(this.projectService.typingsInstaller.globalTypingsCacheLocation,"DirectoryWatcher");continue}i(o,"DirectoryWatcher")}r.forEach((o,s)=>{o.close(),this.typingWatchers.delete(s)})}getCurrentProgram(){return this.program}removeExistingTypings(t){const r=WF(this.getCompilerOptions(),this.directoryStructureHost);return t.filter(i=>!r.includes(i))}updateGraphWorker(){var t,r;const i=this.languageService.getCurrentProgram();N.assert(i===this.program),N.assert(!this.isClosed(),"Called update graph worker of closed project"),this.writeLog(`Starting updateGraphWorker: Project: ${this.getProjectName()}`);const o=Ys(),{hasInvalidatedResolutions:s,hasInvalidatedLibResolutions:l}=this.resolutionCache.createHasInvalidatedResolutions(Xm,Xm);this.hasInvalidatedResolutions=s,this.hasInvalidatedLibResolutions=l,this.resolutionCache.startCachingPerDirectoryResolution(),this.dirty=!1,this.updateFromProjectInProgress=!0,this.program=this.languageService.getProgram(),this.updateFromProjectInProgress=!1,(t=sr)==null||t.push(sr.Phase.Session,"finishCachingPerDirectoryResolution"),this.resolutionCache.finishCachingPerDirectoryResolution(this.program,i),(r=sr)==null||r.pop(),N.assert(i===void 0||this.program!==void 0);let u=!1;if(this.program&&(!i||this.program!==i&&this.program.structureIsReused!==2)){if(u=!0,i){for(const m of i.getSourceFiles()){const b=this.program.getSourceFileByPath(m.resolvedPath);(!b||m.resolvedPath===m.path&&b.resolvedPath!==m.path)&&this.detachScriptInfoFromProject(m.fileName,!!this.program.getSourceFileByPath(m.path),!0)}i.forEachResolvedProjectReference(m=>{this.program.getResolvedProjectReferenceByPath(m.sourceFile.path)||this.detachScriptInfoFromProject(m.sourceFile.fileName,void 0,!0)})}if(DJ(this.program,this.missingFilesMap||(this.missingFilesMap=new Map),(m,b)=>this.addMissingFileWatcher(m,b)),this.generatedFilesMap){const m=Ps(this.compilerOptions);jhe(this.generatedFilesMap)?(!m||!this.isValidGeneratedFileWatcher(Id(m)+".d.ts",this.generatedFilesMap))&&this.clearGeneratedFileWatch():m?this.clearGeneratedFileWatch():this.generatedFilesMap.forEach((b,A)=>{const I=this.program.getSourceFileByPath(A);(!I||I.resolvedPath!==A||!this.isValidGeneratedFileWatcher(A3(I.fileName,this.compilerOptions,this.currentDirectory,this.program.getCommonSourceDirectory(),this.getCanonicalFileName),b))&&(Mf(b),this.generatedFilesMap.delete(A))})}this.languageServiceEnabled&&this.projectService.serverMode===0&&this.resolutionCache.updateTypeRootsWatch()}this.projectService.verifyProgram(this),this.exportMapCache&&!this.exportMapCache.isEmpty()&&(this.exportMapCache.releaseSymbols(),this.hasAddedorRemovedFiles||i&&!this.program.structureIsReused?this.exportMapCache.clear():this.changedFilesForExportMapCache&&i&&this.program&&_h(this.changedFilesForExportMapCache,m=>{const b=i.getSourceFileByPath(m),A=this.program.getSourceFileByPath(m);return!b||!A?(this.exportMapCache.clear(),!0):this.exportMapCache.onFileChanged(b,A,!!this.getTypeAcquisition().enable)})),this.changedFilesForExportMapCache&&this.changedFilesForExportMapCache.clear(),(this.hasAddedOrRemovedSymlinks||this.program&&!this.program.structureIsReused&&this.getCompilerOptions().preserveSymlinks)&&(this.symlinks=void 0,this.moduleSpecifierCache.clear());const p=this.externalFiles||gc;this.externalFiles=this.getExternalFiles(),V6(this.externalFiles,p,zx(!this.useCaseSensitiveFileNames()),m=>{const b=this.projectService.getOrCreateScriptInfoNotOpenedByClient(m,this.currentDirectory,this.directoryStructureHost);b==null||b.attachToProject(this)},m=>this.detachScriptInfoFromProject(m));const h=Ys()-o;return this.sendPerformanceEvent("UpdateGraph",h),this.writeLog(`Finishing updateGraphWorker: Project: ${this.getProjectName()} projectStateVersion: ${this.projectStateVersion} projectProgramVersion: ${this.projectProgramVersion} structureChanged: ${u}${this.program?` structureIsReused:: ${Q6[this.program.structureIsReused]}`:""} Elapsed: ${h}ms`),this.projectService.logger.isTestLogger?this.program!==i?this.print(!0,this.hasAddedorRemovedFiles,!0):this.writeLog("Same program as before"):this.hasAddedorRemovedFiles?this.print(!0,!0,!1):this.program!==i&&this.writeLog("Different program with same set of files"),this.projectService.verifyDocumentRegistry(),u}sendPerformanceEvent(t,r){this.projectService.sendPerformanceEvent(t,r)}detachScriptInfoFromProject(t,r,i){const o=this.projectService.getScriptInfo(t);o&&(o.detachFromProject(this),r||this.resolutionCache.removeResolutionsOfFile(o.path,i))}addMissingFileWatcher(t,r){var i;if(V0(this)){const s=this.projectService.configFileExistenceInfoCache.get(t);if((i=s==null?void 0:s.config)!=null&&i.projects.has(this.canonicalConfigFilePath))return SD}const o=this.projectService.watchFactory.watchFile(go(r,this.currentDirectory),(s,l)=>{V0(this)&&this.getCachedDirectoryStructureHost().addOrDeleteFile(s,t,l),l===0&&this.missingFilesMap.has(t)&&(this.missingFilesMap.delete(t),o.close(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this))},500,this.projectService.getWatchOptions(this),wc.MissingFile,this);return o}isWatchedMissingFile(t){return!!this.missingFilesMap&&this.missingFilesMap.has(t)}addGeneratedFileWatch(t,r){if(Ps(this.compilerOptions))this.generatedFilesMap||(this.generatedFilesMap=this.createGeneratedFileWatcher(t));else{const i=this.toPath(r);if(this.generatedFilesMap){if(jhe(this.generatedFilesMap)){N.fail(`${this.projectName} Expected to not have --out watcher for generated file with options: ${JSON.stringify(this.compilerOptions)}`);return}if(this.generatedFilesMap.has(i))return}else this.generatedFilesMap=new Map;this.generatedFilesMap.set(i,this.createGeneratedFileWatcher(t))}}createGeneratedFileWatcher(t){return{generatedFilePath:this.toPath(t),watcher:this.projectService.watchFactory.watchFile(t,()=>{this.clearSourceMapperCache(),this.projectService.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(this)},2e3,this.projectService.getWatchOptions(this),wc.MissingGeneratedFile,this)}}isValidGeneratedFileWatcher(t,r){return this.toPath(t)===r.generatedFilePath}clearGeneratedFileWatch(){this.generatedFilesMap&&(jhe(this.generatedFilesMap)?Mf(this.generatedFilesMap):tp(this.generatedFilesMap,Mf),this.generatedFilesMap=void 0)}getScriptInfoForNormalizedPath(t){const r=this.projectService.getScriptInfoForPath(this.toPath(t));return r&&!r.isAttached(this)?oy.ThrowProjectDoesNotContainDocument(t,this):r}getScriptInfo(t){return this.projectService.getScriptInfo(t)}filesToString(t){return this.filesToStringWorker(t,!0,!1)}filesToStringWorker(t,r,i){if(this.isInitialLoadPending())return` Files (0) InitialLoadPending
+`;if(!this.program)return` Files (0) NoProgram
+`;const o=this.program.getSourceFiles();let s=` Files (${o.length})
+`;if(t){for(const l of o)s+=` ${l.fileName}${i?` ${l.version} ${JSON.stringify(l.text)}`:""}
+`;r&&(s+=`
+
+`,uK(this.program,l=>s+=` ${l}
+`))}return s}print(t,r,i){var o;this.writeLog(`Project '${this.projectName}' (${D2[this.projectKind]})`),this.writeLog(this.filesToStringWorker(t&&this.projectService.logger.hasLevel(3),r&&this.projectService.logger.hasLevel(3),i&&this.projectService.logger.hasLevel(3))),this.writeLog("-----------------------------------------------"),this.autoImportProviderHost&&this.autoImportProviderHost.print(!1,!1,!1),(o=this.noDtsResolutionProject)==null||o.print(!1,!1,!1)}setCompilerOptions(t){var r;if(t){t.allowNonTsExtensions=!0;const i=this.compilerOptions;this.compilerOptions=t,this.setInternalCompilerOptionsForEmittingJsFiles(),(r=this.noDtsResolutionProject)==null||r.setCompilerOptions(this.getCompilerOptionsForNoDtsResolutionProject()),W4(i,t)&&(this.cachedUnresolvedImportsPerFile.clear(),this.lastCachedUnresolvedImportsList=void 0,this.resolutionCache.onChangesAffectModuleResolution(),this.moduleSpecifierCache.clear()),this.markAsDirty()}}setWatchOptions(t){this.watchOptions=t}getWatchOptions(){return this.watchOptions}setTypeAcquisition(t){t&&(this.typeAcquisition=this.removeLocalTypingsFromTypeAcquisition(t))}getTypeAcquisition(){return this.typeAcquisition||{}}getChangesSinceVersion(t,r){var i,o;const s=r?p=>zo(p.entries(),([h,m])=>({fileName:h,isSourceOfProjectReferenceRedirect:m})):p=>zo(p.keys());this.isInitialLoadPending()||jp(this);const l={projectName:this.getProjectName(),version:this.projectProgramVersion,isInferred:XD(this),options:this.getCompilationSettings(),languageServiceDisabled:!this.languageServiceEnabled,lastFileExceededProgramSize:this.lastFileExceededProgramSize},u=this.updatedFileNames;if(this.updatedFileNames=void 0,this.lastReportedFileNames&&t===this.lastReportedVersion){if(this.projectProgramVersion===this.lastReportedVersion&&!u)return{info:l,projectErrors:this.getGlobalProjectErrors()};const p=this.lastReportedFileNames,h=((i=this.externalFiles)==null?void 0:i.map(M=>({fileName:ml(M),isSourceOfProjectReferenceRedirect:!1})))||gc,m=NE(this.getFileNamesWithRedirectInfo(!!r).concat(h),M=>M.fileName,M=>M.isSourceOfProjectReferenceRedirect),b=new Map,A=new Map,I=u?zo(u.keys()):[],R=[];return Gc(m,(M,C)=>{p.has(C)?r&&M!==p.get(C)&&R.push({fileName:C,isSourceOfProjectReferenceRedirect:M}):b.set(C,M)}),Gc(p,(M,C)=>{m.has(C)||A.set(C,M)}),this.lastReportedFileNames=m,this.lastReportedVersion=this.projectProgramVersion,{info:l,changes:{added:s(b),removed:s(A),updated:r?I.map(M=>({fileName:M,isSourceOfProjectReferenceRedirect:this.isSourceOfProjectReferenceRedirect(M)})):I,updatedRedirects:r?R:void 0},projectErrors:this.getGlobalProjectErrors()}}else{const p=this.getFileNamesWithRedirectInfo(!!r),h=((o=this.externalFiles)==null?void 0:o.map(b=>({fileName:ml(b),isSourceOfProjectReferenceRedirect:!1})))||gc,m=p.concat(h);return this.lastReportedFileNames=NE(m,b=>b.fileName,b=>b.isSourceOfProjectReferenceRedirect),this.lastReportedVersion=this.projectProgramVersion,{info:l,files:r?m:m.map(b=>b.fileName),projectErrors:this.getGlobalProjectErrors()}}}removeRoot(t){Gx(this.rootFiles,t),this.rootFilesMap.delete(t.path)}isSourceOfProjectReferenceRedirect(t){return!!this.program&&this.program.isSourceOfProjectReferenceRedirect(t)}getGlobalPluginSearchPaths(){return[...this.projectService.pluginProbeLocations,Qr(this.projectService.getExecutingFilePath(),"../../..")]}enableGlobalPlugins(t){if(!this.projectService.globalPlugins.length)return;const r=this.projectService.host;if(!r.require&&!r.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}const i=this.getGlobalPluginSearchPaths();for(const o of this.projectService.globalPlugins)o&&(t.plugins&&t.plugins.some(s=>s.name===o)||(this.projectService.logger.info(`Loading global plugin ${o}`),this.enablePlugin({name:o,global:!0},i)))}enablePlugin(t,r){this.projectService.requestEnablePlugin(this,t,r)}enableProxy(t,r){try{if(typeof t!="function"){this.projectService.logger.info(`Skipped loading plugin ${r.name} because it did not expose a proper factory function`);return}const i={config:r,project:this,languageService:this.languageService,languageServiceHost:this,serverHost:this.projectService.host,session:this.projectService.session},o=t({typescript:o8e}),s=o.create(i);for(const l of Object.keys(this.languageService))l in s||(this.projectService.logger.info(`Plugin activation warning: Missing proxied method ${l} in created LS. Patching.`),s[l]=this.languageService[l]);this.projectService.logger.info("Plugin validation succeeded"),this.languageService=s,this.plugins.push({name:r.name,module:o})}catch(i){this.projectService.logger.info(`Plugin activation failed: ${i}`)}}onPluginConfigurationChanged(t,r){this.plugins.filter(i=>i.name===t).forEach(i=>{i.module.onConfigurationChanged&&i.module.onConfigurationChanged(r)})}refreshDiagnostics(){this.projectService.sendProjectsUpdatedInBackgroundEvent()}getPackageJsonsVisibleToFile(t,r){return this.projectService.serverMode!==0?gc:this.projectService.getPackageJsonsVisibleToFile(t,this,r)}getNearestAncestorDirectoryWithPackageJson(t){return this.projectService.getNearestAncestorDirectoryWithPackageJson(t)}getPackageJsonsForAutoImport(t){return this.getPackageJsonsVisibleToFile(Qr(this.currentDirectory,yD),t)}getPackageJsonCache(){return this.projectService.packageJsonCache}getCachedExportInfoMap(){return this.exportMapCache||(this.exportMapCache=YX(this))}clearCachedExportInfoMap(){var t;(t=this.exportMapCache)==null||t.clear()}getModuleSpecifierCache(){return this.moduleSpecifierCache}includePackageJsonAutoImports(){return this.projectService.includePackageJsonAutoImports()===0||!this.languageServiceEnabled||IO(this.currentDirectory)||!this.isDefaultProjectForOpenFiles()?0:this.projectService.includePackageJsonAutoImports()}getHostForAutoImportProvider(){var t,r;return this.program?{fileExists:this.program.fileExists,directoryExists:this.program.directoryExists,realpath:this.program.realpath||((t=this.projectService.host.realpath)==null?void 0:t.bind(this.projectService.host)),getCurrentDirectory:this.getCurrentDirectory.bind(this),readFile:this.projectService.host.readFile.bind(this.projectService.host),getDirectories:this.projectService.host.getDirectories.bind(this.projectService.host),trace:(r=this.projectService.host.trace)==null?void 0:r.bind(this.projectService.host),useCaseSensitiveFileNames:this.program.useCaseSensitiveFileNames(),readDirectory:this.projectService.host.readDirectory.bind(this.projectService.host)}:this.projectService.host}getPackageJsonAutoImportProvider(){var t,r,i;if(this.autoImportProviderHost===!1)return;if(this.projectService.serverMode!==0){this.autoImportProviderHost=!1;return}if(this.autoImportProviderHost){if(jp(this.autoImportProviderHost),this.autoImportProviderHost.isEmpty()){this.autoImportProviderHost.close(),this.autoImportProviderHost=void 0;return}return this.autoImportProviderHost.getCurrentProgram()}const o=this.includePackageJsonAutoImports();if(o){(t=sr)==null||t.push(sr.Phase.Session,"getPackageJsonAutoImportProvider");const s=Ys();if(this.autoImportProviderHost=TZ.create(o,this,this.getHostForAutoImportProvider(),this.documentRegistry),this.autoImportProviderHost)return jp(this.autoImportProviderHost),this.sendPerformanceEvent("CreatePackageJsonAutoImportProvider",Ys()-s),(r=sr)==null||r.pop(),this.autoImportProviderHost.getCurrentProgram();(i=sr)==null||i.pop()}}isDefaultProjectForOpenFiles(){return!!Gc(this.projectService.openFiles,(t,r)=>this.projectService.tryGetDefaultProjectForFile(ml(r))===this)}watchNodeModulesForPackageJsonChanges(t){return this.projectService.watchPackageJsonsInNodeModules(t,this)}getIncompleteCompletionsCache(){return this.projectService.getIncompleteCompletionsCache()}getNoDtsResolutionProject(t){return N.assert(this.projectService.serverMode===0),this.noDtsResolutionProject||(this.noDtsResolutionProject=new EZ(this.projectService,this.documentRegistry,this.getCompilerOptionsForNoDtsResolutionProject(),this.currentDirectory)),this.noDtsResolutionProject.rootFile!==t&&(this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this.noDtsResolutionProject,[t]),this.noDtsResolutionProject.rootFile=t),this.noDtsResolutionProject}getCompilerOptionsForNoDtsResolutionProject(){return{...this.getCompilerOptions(),noDtsResolution:!0,allowJs:!0,maxNodeModuleJsDepth:3,diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:et,lib:et,noLib:!0}}},bZ=class extends mT{constructor(e,t,r,i,o,s,l){super(e.newInferredProjectName(),0,e,t,void 0,void 0,r,!1,i,e.host,s),this._isJsInferredProject=!1,this.typeAcquisition=l,this.projectRootPath=o&&e.toCanonicalFileName(o),!o&&!e.useSingleInferredProject&&(this.canonicalCurrentDirectory=e.toCanonicalFileName(this.currentDirectory)),this.enableGlobalPlugins(this.getCompilerOptions())}toggleJsInferredProject(e){e!==this._isJsInferredProject&&(this._isJsInferredProject=e,this.setCompilerOptions())}setCompilerOptions(e){if(!e&&!this.getCompilationSettings())return;const t=dX(e||this.getCompilationSettings());this._isJsInferredProject&&typeof t.maxNodeModuleJsDepth!="number"?t.maxNodeModuleJsDepth=2:this._isJsInferredProject||(t.maxNodeModuleJsDepth=void 0),t.allowJs=!0,super.setCompilerOptions(t)}addRoot(e){N.assert(e.isScriptOpen()),this.projectService.startWatchingConfigFilesForInferredProjectRoot(e),!this._isJsInferredProject&&e.isJavaScript()?this.toggleJsInferredProject(!0):this.isOrphan()&&this._isJsInferredProject&&!e.isJavaScript()&&this.toggleJsInferredProject(!1),super.addRoot(e)}removeRoot(e){this.projectService.stopWatchingConfigFilesForInferredProjectRoot(e),super.removeRoot(e),!this.isOrphan()&&this._isJsInferredProject&&e.isJavaScript()&&Zn(this.getRootScriptInfos(),t=>!t.isJavaScript())&&this.toggleJsInferredProject(!1)}isOrphan(){return!this.hasRoots()}isProjectWithSingleRoot(){return!this.projectRootPath&&!this.projectService.useSingleInferredProject||this.getRootScriptInfos().length===1}close(){Ue(this.getRootScriptInfos(),e=>this.projectService.stopWatchingConfigFilesForInferredProjectRoot(e)),super.close()}getTypeAcquisition(){return this.typeAcquisition||{enable:Bhe(this),include:et,exclude:et}}},EZ=class extends mT{constructor(e,t,r,i){super(e.newAuxiliaryProjectName(),4,e,t,!1,void 0,r,!1,void 0,e.host,i)}isOrphan(){return!0}scheduleInvalidateResolutionsOfFailedLookupLocations(){}},SZ=class Ube extends mT{constructor(t,r,i,o){super(t.projectService.newAutoImportProviderProjectName(),3,t.projectService,i,!1,void 0,o,!1,t.getWatchOptions(),t.projectService.host,t.currentDirectory),this.hostProject=t,this.rootFileNames=r,this.useSourceOfProjectReferenceRedirect=oa(this.hostProject,this.hostProject.useSourceOfProjectReferenceRedirect),this.getParsedCommandLine=oa(this.hostProject,this.hostProject.getParsedCommandLine)}static getRootFileNames(t,r,i,o){var s,l;if(!t)return et;const u=r.getCurrentProgram();if(!u)return et;const p=Ys();let h,m;const b=Qr(r.currentDirectory,yD),A=r.getPackageJsonsForAutoImport(Qr(r.currentDirectory,b));for(const C of A)(s=C.dependencies)==null||s.forEach((O,U)=>R(U)),(l=C.peerDependencies)==null||l.forEach((O,U)=>R(U));let I=0;if(h){const C=r.getSymlinkCache();for(const O of zo(h.keys())){if(t===2&&I>this.maxDependencies)return r.log(`AutoImportProviderProject: attempted to add more than ${this.maxDependencies} dependencies. Aborting.`),et;const U=Cq(O,r.currentDirectory,o,i,u.getModuleResolutionCache());if(U){const Z=M(U,u,C);if(Z){m=So(m,Z),I+=Z.length?1:0;continue}}if(!Ue([r.currentDirectory,r.getGlobalTypingsCacheLocation()],Z=>{if(Z){const V=Cq(`@types/${O}`,Z,o,i,u.getModuleResolutionCache());if(V){const se=M(V,u,C);return m=So(m,se),I+=se!=null&&se.length?1:0,!0}}})&&U&&o.allowJs&&o.maxNodeModuleJsDepth){const Z=M(U,u,C,!0);m=So(m,Z),I+=Z!=null&&Z.length?1:0}}}return m!=null&&m.length&&r.log(`AutoImportProviderProject: found ${m.length} root files in ${I} dependencies in ${Ys()-p} ms`),m||et;function R(C){uo(C,"@types/")||(h||(h=new Set)).add(C)}function M(C,O,U,K){var Z;const V=Wq(C,o,i,O.getModuleResolutionCache(),K);if(V){const se=(Z=i.realpath)==null?void 0:Z.call(i,C.packageDirectory),G=se?r.toPath(se):void 0,ne=G&&G!==r.toPath(C.packageDirectory);return ne&&U.setSymlinkedDirectory(C.packageDirectory,{real:Bc(se),realPath:Bc(G)}),Hi(V,he=>{const ye=ne?he.replace(C.packageDirectory,se):he;if(!O.getSourceFile(ye)&&!(ne&&O.getSourceFile(he)))return ye})}}}static create(t,r,i,o){if(t===0)return;const s={...r.getCompilerOptions(),...this.compilerOptionsOverrides},l=this.getRootFileNames(t,r,i,s);if(l.length)return new Ube(r,l,o,s)}isEmpty(){return!bt(this.rootFileNames)}isOrphan(){return!0}updateGraph(){let t=this.rootFileNames;t||(t=Ube.getRootFileNames(this.hostProject.includePackageJsonAutoImports(),this.hostProject,this.hostProject.getHostForAutoImportProvider(),this.getCompilationSettings())),this.projectService.setFileNamesOfAutpImportProviderOrAuxillaryProject(this,t),this.rootFileNames=t;const r=this.getCurrentProgram(),i=super.updateGraph();return r&&r!==this.getCurrentProgram()&&this.hostProject.clearCachedExportInfoMap(),i}scheduleInvalidateResolutionsOfFailedLookupLocations(){}hasRoots(){var t;return!!((t=this.rootFileNames)!=null&&t.length)}markAsDirty(){this.rootFileNames=void 0,super.markAsDirty()}getScriptFileNames(){return this.rootFileNames||et}getLanguageService(){throw new Error("AutoImportProviderProject language service should never be used. To get the program, use `project.getCurrentProgram()`.")}onAutoImportProviderSettingsChanged(){throw new Error("AutoImportProviderProject is an auto import provider; use `markAsDirty()` instead.")}onPackageJsonChange(){throw new Error("package.json changes should be notified on an AutoImportProvider's host project")}getHostForAutoImportProvider(){throw new Error("AutoImportProviderProject cannot provide its own host; use `hostProject.getModuleResolutionHostForAutomImportProvider()` instead.")}getProjectReferences(){return this.hostProject.getProjectReferences()}includePackageJsonAutoImports(){return 0}getSymlinkCache(){return this.hostProject.getSymlinkCache()}getModuleResolutionCache(){var t;return(t=this.hostProject.getCurrentProgram())==null?void 0:t.getModuleResolutionCache()}},SZ.maxDependencies=10,SZ.compilerOptionsOverrides={diagnostics:!1,skipLibCheck:!0,sourceMap:!1,types:et,lib:et,noLib:!0},TZ=SZ,AZ=class extends mT{constructor(e,t,r,i,o){super(e,1,r,i,!1,void 0,{},!1,void 0,o,ai(e)),this.canonicalConfigFilePath=t,this.openFileWatchTriggered=new Map,this.canConfigFileJsonReportNoInputFiles=!1,this.externalProjectRefCount=0,this.isInitialLoadPending=Pv,this.sendLoadingProjectFinish=!1}setCompilerHost(e){this.compilerHost=e}getCompilerHost(){return this.compilerHost}useSourceOfProjectReferenceRedirect(){return this.languageServiceEnabled}getParsedCommandLine(e){const t=ga(e),r=this.projectService.toCanonicalFileName(t);let i=this.projectService.configFileExistenceInfoCache.get(r);return i||this.projectService.configFileExistenceInfoCache.set(r,i={exists:this.projectService.host.fileExists(t)}),this.projectService.ensureParsedConfigUptoDate(t,r,i,this),this.languageServiceEnabled&&this.projectService.serverMode===0&&this.projectService.watchWildcards(t,i,this),i.exists?i.config.parsedCommandLine:void 0}onReleaseParsedCommandLine(e){this.releaseParsedConfig(this.projectService.toCanonicalFileName(ga(e)))}releaseParsedConfig(e){this.projectService.stopWatchingWildCards(e,this),this.projectService.releaseParsedConfig(e,this)}updateGraph(){const e=this.isInitialLoadPending();this.isInitialLoadPending=Xm;const t=this.pendingUpdateLevel;this.pendingUpdateLevel=0;let r;switch(t){case 1:this.openFileWatchTriggered.clear(),r=this.projectService.reloadFileNamesOfConfiguredProject(this);break;case 2:this.openFileWatchTriggered.clear();const i=N.checkDefined(this.pendingUpdateReason);this.pendingUpdateReason=void 0,this.projectService.reloadConfiguredProject(this,i,e,!1),r=!0;break;default:r=super.updateGraph()}return this.compilerHost=void 0,this.projectService.sendProjectLoadingFinishEvent(this),this.projectService.sendProjectTelemetry(this),r}getCachedDirectoryStructureHost(){return this.directoryStructureHost}getConfigFilePath(){return this.getProjectName()}getProjectReferences(){return this.projectReferences}updateReferences(e){this.projectReferences=e,this.potentialProjectReferences=void 0}setPotentialProjectReference(e){N.assert(this.isInitialLoadPending()),(this.potentialProjectReferences||(this.potentialProjectReferences=new Set)).add(e)}getResolvedProjectReferenceToRedirect(e){const t=this.getCurrentProgram();return t&&t.getResolvedProjectReferenceToRedirect(e)}forEachResolvedProjectReference(e){var t;return(t=this.getCurrentProgram())==null?void 0:t.forEachResolvedProjectReference(e)}enablePluginsWithOptions(e){var t;if(this.plugins.length=0,!((t=e.plugins)!=null&&t.length)&&!this.projectService.globalPlugins.length)return;const r=this.projectService.host;if(!r.require&&!r.importPlugin){this.projectService.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}const i=this.getGlobalPluginSearchPaths();if(this.projectService.allowLocalPluginLoads){const o=ai(this.canonicalConfigFilePath);this.projectService.logger.info(`Local plugin loading enabled; adding ${o} to search paths`),i.unshift(o)}if(e.plugins)for(const o of e.plugins)this.enablePlugin(o,i);return this.enableGlobalPlugins(e)}getGlobalProjectErrors(){return nr(this.projectErrors,e=>!e.file)||gc}getAllProjectErrors(){return this.projectErrors||gc}setProjectErrors(e){this.projectErrors=e}close(){this.projectService.configFileExistenceInfoCache.forEach((e,t)=>this.releaseParsedConfig(t)),this.projectErrors=void 0,this.openFileWatchTriggered.clear(),this.compilerHost=void 0,super.close()}addExternalProjectReference(){this.externalProjectRefCount++}deleteExternalProjectReference(){this.externalProjectRefCount--}isSolution(){return this.getRootFilesMap().size===0&&!this.canConfigFileJsonReportNoInputFiles}getDefaultChildProjectFromProjectWithReferences(e){return $D(this,e.path,t=>UI(t,e)?t:void 0,0)}hasOpenRef(){var e;if(this.externalProjectRefCount)return!0;if(this.isClosed())return!1;const t=this.projectService.configFileExistenceInfoCache.get(this.canonicalConfigFilePath);return this.projectService.hasPendingProjectUpdate(this)?!!((e=t.openFilesImpactedByConfigFile)!=null&&e.size):!!t.openFilesImpactedByConfigFile&&Gc(t.openFilesImpactedByConfigFile,(r,i)=>{const o=this.projectService.getScriptInfoForPath(i);return this.containsScriptInfo(o)||!!$D(this,o.path,s=>s.containsScriptInfo(o),0)})||!1}hasExternalProjectRef(){return!!this.externalProjectRefCount}getEffectiveTypeRoots(){return OP(this.getCompilationSettings(),this)||[]}updateErrorOnNoInputFiles(e){xF(e,this.getConfigFilePath(),this.getCompilerOptions().configFile.configFileSpecs,this.projectErrors,this.canConfigFileJsonReportNoInputFiles)}},Jz=class extends mT{constructor(e,t,r,i,o,s,l,u){super(e,2,t,r,!0,o,i,s,u,t.host,ai(l||Lu(e))),this.externalProjectName=e,this.compileOnSaveEnabled=s,this.excludedFiles=[],this.enableGlobalPlugins(this.getCompilerOptions())}updateGraph(){const e=super.updateGraph();return this.projectService.sendProjectTelemetry(this),e}getExcludedFiles(){return this.excludedFiles}}}});function FOe(e){const t=new Map;for(const r of e)if(typeof r.type=="object"){const i=r.type;i.forEach(o=>{N.assert(typeof o=="number")}),t.set(r.name,i)}return t}function YD(e){return Po(e.indentStyle)&&(e.indentStyle=qOe.get(e.indentStyle.toLowerCase()),N.assert(e.indentStyle!==void 0)),e}function Kz(e){return UOe.forEach((t,r)=>{const i=e[r];Po(i)&&(e[r]=t.get(i.toLowerCase()))}),e}function g8(e,t){let r,i;return sD.forEach(o=>{const s=e[o.name];if(s===void 0)return;const l=HOe.get(o.name);(r||(r={}))[o.name]=l?Po(s)?l.get(s.toLowerCase()):s:ZS(o,s,t||"",i||(i=[]))}),r&&{watchOptions:r,errors:i}}function Uhe(e){let t;return Sw.forEach(r=>{const i=e[r.name];i!==void 0&&((t||(t={}))[r.name]=i)}),t}function IZ(e){return Po(e)?xZ(e):e}function xZ(e){switch(e){case"JS":return 1;case"JSX":return 2;case"TS":return 3;case"TSX":return 4;default:return 0}}function Hhe(e){const{lazyConfiguredProjectsFromExternalProject:t,...r}=e;return r}function zOe(e,t){for(const r of t)if(r.getProjectName()===e)return r}function RZ(e){return!!e.containingProjects}function BOe(e){return!!e.configFileInfo}function $D(e,t,r,i,o){var s;const l=(s=e.getCurrentProgram())==null?void 0:s.getResolvedProjectReferences();if(!l)return;let u;const p=t?e.getResolvedProjectReferenceToRedirect(t):void 0;if(p){const m=ml(p.sourceFile.fileName),b=e.projectService.findConfiguredProjectByProjectName(m);if(b){const A=r(b);if(A)return A}else if(i!==0){u=new Map;const A=qhe(l,e.getCompilerOptions(),(I,R)=>p===I?h(I,R):void 0,i,e.projectService,u);if(A)return A;u.clear()}}return qhe(l,e.getCompilerOptions(),(m,b)=>p!==m?h(m,b):void 0,i,e.projectService,u);function h(m,b){const A=ml(m.sourceFile.fileName),I=e.projectService.findConfiguredProjectByProjectName(A)||(b===0?void 0:b===1?e.projectService.createConfiguredProject(A):b===2?e.projectService.createAndLoadConfiguredProject(A,o):N.assertNever(b));return I&&r(I)}}function qhe(e,t,r,i,o,s){const l=t.disableReferencedProjectLoad?0:i;return Ue(e,u=>{if(!u)return;const p=ml(u.sourceFile.fileName),h=o.toCanonicalFileName(p),m=s==null?void 0:s.get(h);if(m!==void 0&&m>=l)return;const b=r(u,l);return b||((s||(s=new Map)).set(h,l),u.references&&qhe(u.references,u.commandLine.options,r,l,o,s))})}function GOe(e,t){return e.potentialProjectReferences&&_h(e.potentialProjectReferences,t)}function elt(e,t,r,i){return e.getCurrentProgram()?e.forEachResolvedProjectReference(t):e.isInitialLoadPending()?GOe(e,i):Ue(e.getProjectReferences(),r)}function Jhe(e,t,r){const i=r&&e.projectService.configuredProjects.get(r);return i&&t(i)}function VOe(e,t){return elt(e,r=>Jhe(e,t,r.sourceFile.path),r=>Jhe(e,t,e.toPath(vD(r))),r=>Jhe(e,t,r))}function tlt(e,t){return`${Po(t)?`Config: ${t} `:t?`Project: ${t.getProjectName()} `:""}WatchType: ${e}`}function jOe(e){return!e.isScriptOpen()&&e.mTime!==void 0}function UI(e,t){return e.containsScriptInfo(t)&&!e.isSourceOfProjectReferenceRedirect(t.path)}function jp(e){return e.invalidateResolutionsOfFailedLookupLocations(),e.dirty&&e.updateGraph()}function Khe(e){V0(e)&&(e.projectOptions=!0)}function Xhe(e){let t=1;return()=>e(t++)}function Yhe(){return{idToCallbacks:new Map,pathToId:new Map}}function nlt(e,t){if(!t||!e.eventHandler||!e.session)return;const r=Yhe(),i=Yhe(),o=Yhe();let s=1;return e.session.addProtocolHandler("watchChange",I=>(h(I.arguments),{responseRequired:!1})),{watchFile:l,watchDirectory:u,getCurrentDirectory:()=>e.host.getCurrentDirectory(),useCaseSensitiveFileNames:e.host.useCaseSensitiveFileNames};function l(I,R){return p(r,I,R,M=>({eventName:r9,data:{id:M,path:I}}))}function u(I,R,M){return p(M?o:i,I,R,C=>({eventName:i9,data:{id:C,path:I,recursive:!!M,ignoreUpdate:I.endsWith("/node_modules")?void 0:!0}}))}function p({pathToId:I,idToCallbacks:R},M,C,O){const U=e.toPath(M);let K=I.get(U);K||I.set(U,K=s++);let Z=R.get(K);return Z||(R.set(K,Z=new Set),e.eventHandler(O(K))),Z.add(C),{close(){const V=R.get(K);V!=null&&V.delete(C)&&(V.size||(R.delete(K),I.delete(U),e.eventHandler({eventName:o9,data:{id:K}})))}}}function h(I){To(I)?I.forEach(m):m(I)}function m({id:I,created:R,deleted:M,updated:C}){b(I,R,0),b(I,M,2),b(I,C,1)}function b(I,R,M){R!=null&&R.length&&(A(r,I,R,(C,O)=>C(O,M)),A(i,I,R,(C,O)=>C(O)),A(o,I,R,(C,O)=>C(O)))}function A(I,R,M,C){var O;(O=I.idToCallbacks.get(R))==null||O.forEach(U=>{M.forEach(K=>C(U,Lu(K)))})}}function rlt(){let e;return{get(){return e},set(t){e=t},clear(){e=void 0}}}function $he(e){return e.kind!==void 0}function Qhe(e){e.print(!1,!1,!1)}var Xz,Yz,v8,$z,Qz,Zz,e9,t9,n9,DZ,r9,i9,o9,Zhe,UOe,HOe,qOe,NZ,a9,s9,CZ,PZ,ege,MZ,ilt=T({"src/server/editorServices.ts"(){db(),_T(),Fhe(),Xz=20*1024*1024,Yz=4*1024*1024,v8="projectsUpdatedInBackground",$z="projectLoadingStart",Qz="projectLoadingFinish",Zz="largeFileReferenced",e9="configFileDiag",t9="projectLanguageServiceState",n9="projectInfo",DZ="openFileInfo",r9="createFileWatcher",i9="createDirectoryWatcher",o9="closeFileWatcher",Zhe="*ensureProjectForOpenFiles*",UOe=FOe(pg),HOe=FOe(sD),qOe=new Map(Object.entries({none:0,block:1,smart:2})),NZ={jquery:{match:/jquery(-[\d.]+)?(\.intellisense)?(\.min)?\.js$/i,types:["jquery"]},WinJS:{match:/^(.*\/winjs-[.\d]+)\/js\/base\.js$/i,exclude:[["^",1,"/.*"]],types:["winjs"]},Kendo:{match:/^(.*\/kendo(-ui)?)\/kendo\.all(\.min)?\.js$/i,exclude:[["^",1,"/.*"]],types:["kendo-ui"]},"Office Nuget":{match:/^(.*\/office\/1)\/excel-\d+\.debug\.js$/i,exclude:[["^",1,"/.*"]],types:["office"]},References:{match:/^(.*\/_references\.js)$/i,exclude:[["^",1,"$"]]}},a9={getFileName:e=>e,getScriptKind:(e,t)=>{let r;if(t){const i=Jx(e);i&&bt(t,o=>o.extension===i?(r=o.scriptKind,!0):!1)}return r},hasMixedContent:(e,t)=>bt(t,r=>r.isMixedContent&&Il(e,r.extension))},s9={getFileName:e=>e.fileName,getScriptKind:e=>IZ(e.scriptKind),hasMixedContent:e=>!!e.hasMixedContent},CZ={close:$a},PZ=(e=>(e[e.Find=0]="Find",e[e.FindCreate=1]="FindCreate",e[e.FindCreateLoad=2]="FindCreateLoad",e))(PZ||{}),ege=class Hbe{constructor(t){this.filenameToScriptInfo=new Map,this.nodeModulesWatchers=new Map,this.filenameToScriptInfoVersion=new Map,this.allJsFilesForOpenFileTelemetry=new Map,this.externalProjectToConfiguredProjectMap=new Map,this.externalProjects=[],this.inferredProjects=[],this.configuredProjects=new Map,this.newInferredProjectName=Xhe(Ehe),this.newAutoImportProviderProjectName=Xhe(She),this.newAuxiliaryProjectName=Xhe(The),this.openFiles=new Map,this.configFileForOpenFiles=new Map,this.openFilesWithNonRootedDiskPath=new Map,this.compilerOptionsForInferredProjectsPerProjectRoot=new Map,this.watchOptionsForInferredProjectsPerProjectRoot=new Map,this.typeAcquisitionForInferredProjectsPerProjectRoot=new Map,this.projectToSizeMap=new Map,this.configFileExistenceInfoCache=new Map,this.safelist=NZ,this.legacySafelist=new Map,this.pendingProjectUpdates=new Map,this.pendingEnsureProjectForOpenFiles=!1,this.seenProjects=new Map,this.sharedExtendedConfigFileWatchers=new Map,this.extendedConfigCache=new Map,this.baseline=$a,this.verifyDocumentRegistry=$a,this.verifyProgram=$a,this.onProjectCreation=$a;var r;this.host=t.host,this.logger=t.logger,this.cancellationToken=t.cancellationToken,this.useSingleInferredProject=t.useSingleInferredProject,this.useInferredProjectPerProjectRoot=t.useInferredProjectPerProjectRoot,this.typingsInstaller=t.typingsInstaller||qz,this.throttleWaitMilliseconds=t.throttleWaitMilliseconds,this.eventHandler=t.eventHandler,this.suppressDiagnosticEvents=t.suppressDiagnosticEvents,this.globalPlugins=t.globalPlugins||gc,this.pluginProbeLocations=t.pluginProbeLocations||gc,this.allowLocalPluginLoads=!!t.allowLocalPluginLoads,this.typesMapLocation=t.typesMapLocation===void 0?Qr(ai(this.getExecutingFilePath()),"typesMap.json"):t.typesMapLocation,this.session=t.session,this.jsDocParsingMode=t.jsDocParsingMode,t.serverMode!==void 0?this.serverMode=t.serverMode:this.serverMode=0,this.host.realpath&&(this.realpathToScriptInfos=Zp()),this.currentDirectory=ml(this.host.getCurrentDirectory()),this.toCanonicalFileName=Mu(this.host.useCaseSensitiveFileNames),this.globalCacheLocationDirectoryPath=this.typingsInstaller.globalTypingsCacheLocation?Bc(this.toPath(this.typingsInstaller.globalTypingsCacheLocation)):void 0,this.throttledOperations=new fZ(this.host,this.logger),this.typesMapLocation?this.loadTypesMap():this.logger.info("No types map provided; using the default"),this.typingsInstaller.attach(this),this.typingsCache=new vZ(this.typingsInstaller),this.hostConfiguration={formatCodeOptions:X7(this.host.newLine),preferences:kf,hostInfo:"Unknown host",extraFileExtensions:[]},this.documentRegistry=rY(this.host.useCaseSensitiveFileNames,this.currentDirectory,this.jsDocParsingMode,this);const i=this.logger.hasLevel(3)?2:this.logger.loggingEnabled()?1:0,o=i!==0?s=>this.logger.info(s):$a;this.packageJsonCache=nge(this),this.watchFactory=this.serverMode!==0?{watchFile:TD,watchDirectory:TD}:NJ(nlt(this,t.canUseWatchEvents)||this.host,i,o,tlt),(r=t.incrementalVerifier)==null||r.call(t,this)}toPath(t){return ol(t,this.currentDirectory,this.toCanonicalFileName)}getExecutingFilePath(){return this.getNormalizedAbsolutePath(this.host.getExecutingFilePath())}getNormalizedAbsolutePath(t){return go(t,this.host.getCurrentDirectory())}setDocument(t,r,i){const o=N.checkDefined(this.getScriptInfoForPath(r));o.cacheSourceFile={key:t,sourceFile:i}}getDocument(t,r){const i=this.getScriptInfoForPath(r);return i&&i.cacheSourceFile&&i.cacheSourceFile.key===t?i.cacheSourceFile.sourceFile:void 0}ensureInferredProjectsUpToDate_TestOnly(){this.ensureProjectStructuresUptoDate()}getCompilerOptionsForInferredProjects(){return this.compilerOptionsForInferredProjects}onUpdateLanguageServiceStateForProject(t,r){if(!this.eventHandler)return;const i={eventName:t9,data:{project:t,languageServiceEnabled:r}};this.eventHandler(i)}loadTypesMap(){try{const t=this.host.readFile(this.typesMapLocation);if(t===void 0){this.logger.info(`Provided types map file "${this.typesMapLocation}" doesn't exist`);return}const r=JSON.parse(t);for(const i of Object.keys(r.typesMap))r.typesMap[i].match=new RegExp(r.typesMap[i].match,"i");this.safelist=r.typesMap;for(const i in r.simpleMap)xs(r.simpleMap,i)&&this.legacySafelist.set(i,r.simpleMap[i].toLowerCase())}catch(t){this.logger.info(`Error loading types map: ${t}`),this.safelist=NZ,this.legacySafelist.clear()}}updateTypingsForProject(t){const r=this.findProject(t.projectName);if(r)switch(t.kind){case Qw:r.updateTypingFiles(this.typingsCache.updateTypingsForProject(t.projectName,t.compilerOptions,t.typeAcquisition,t.unresolvedImports,t.typings));return;case Zw:this.typingsCache.enqueueInstallTypingsForProject(r,r.lastCachedUnresolvedImportsList,!0);return}}watchTypingLocations(t){var r;(r=this.findProject(t.projectName))==null||r.watchTypingLocations(t.files)}delayEnsureProjectForOpenFiles(){this.openFiles.size&&(this.pendingEnsureProjectForOpenFiles=!0,this.throttledOperations.schedule(Zhe,2500,()=>{this.pendingProjectUpdates.size!==0?this.delayEnsureProjectForOpenFiles():this.pendingEnsureProjectForOpenFiles&&(this.ensureProjectForOpenFiles(),this.sendProjectsUpdatedInBackgroundEvent())}))}delayUpdateProjectGraph(t){if(t.markAsDirty(),h8(t))return;const r=t.getProjectName();this.pendingProjectUpdates.set(r,t),this.throttledOperations.schedule(r,250,()=>{this.pendingProjectUpdates.delete(r)&&jp(t)})}hasPendingProjectUpdate(t){return this.pendingProjectUpdates.has(t.getProjectName())}sendProjectsUpdatedInBackgroundEvent(){if(!this.eventHandler)return;const t={eventName:v8,data:{openFiles:zo(this.openFiles.keys(),r=>this.getScriptInfoForPath(r).fileName)}};this.eventHandler(t)}sendLargeFileReferencedEvent(t,r){if(!this.eventHandler)return;const i={eventName:Zz,data:{file:t,fileSize:r,maxFileSize:Yz}};this.eventHandler(i)}sendProjectLoadingStartEvent(t,r){if(!this.eventHandler)return;t.sendLoadingProjectFinish=!0;const i={eventName:$z,data:{project:t,reason:r}};this.eventHandler(i)}sendProjectLoadingFinishEvent(t){if(!this.eventHandler||!t.sendLoadingProjectFinish)return;t.sendLoadingProjectFinish=!1;const r={eventName:Qz,data:{project:t}};this.eventHandler(r)}sendPerformanceEvent(t,r){this.performanceEventHandler&&this.performanceEventHandler({kind:t,durationMs:r})}delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(t){this.delayUpdateProjectGraph(t),this.delayEnsureProjectForOpenFiles()}delayUpdateProjectGraphs(t,r){if(t.length){for(const i of t)r&&i.clearSourceMapperCache(),this.delayUpdateProjectGraph(i);this.delayEnsureProjectForOpenFiles()}}setCompilerOptionsForInferredProjects(t,r){N.assert(r===void 0||this.useInferredProjectPerProjectRoot,"Setting compiler options per project root path is only supported when useInferredProjectPerProjectRoot is enabled");const i=Kz(t),o=g8(t,r),s=Uhe(t);i.allowNonTsExtensions=!0;const l=r&&this.toCanonicalFileName(r);l?(this.compilerOptionsForInferredProjectsPerProjectRoot.set(l,i),this.watchOptionsForInferredProjectsPerProjectRoot.set(l,o||!1),this.typeAcquisitionForInferredProjectsPerProjectRoot.set(l,s)):(this.compilerOptionsForInferredProjects=i,this.watchOptionsForInferredProjects=o,this.typeAcquisitionForInferredProjects=s);for(const u of this.inferredProjects)(l?u.projectRootPath===l:!u.projectRootPath||!this.compilerOptionsForInferredProjectsPerProjectRoot.has(u.projectRootPath))&&(u.setCompilerOptions(i),u.setTypeAcquisition(s),u.setWatchOptions(o==null?void 0:o.watchOptions),u.setProjectErrors(o==null?void 0:o.errors),u.compileOnSaveEnabled=i.compileOnSave,u.markAsDirty(),this.delayUpdateProjectGraph(u));this.delayEnsureProjectForOpenFiles()}findProject(t){if(t!==void 0)return bhe(t)?zOe(t,this.inferredProjects):this.findExternalProjectByProjectName(t)||this.findConfiguredProjectByProjectName(ml(t))}forEachProject(t){this.externalProjects.forEach(t),this.configuredProjects.forEach(t),this.inferredProjects.forEach(t)}forEachEnabledProject(t){this.forEachProject(r=>{!r.isOrphan()&&r.languageServiceEnabled&&t(r)})}getDefaultProjectForFile(t,r){return r?this.ensureDefaultProjectForFile(t):this.tryGetDefaultProjectForFile(t)}tryGetDefaultProjectForFile(t){const r=Po(t)?this.getScriptInfoForNormalizedPath(t):t;return r&&!r.isOrphan()?r.getDefaultProject():void 0}ensureDefaultProjectForFile(t){return this.tryGetDefaultProjectForFile(t)||this.doEnsureDefaultProjectForFile(t)}doEnsureDefaultProjectForFile(t){this.ensureProjectStructuresUptoDate();const r=Po(t)?this.getScriptInfoForNormalizedPath(t):t;return r?r.getDefaultProject():(this.logErrorForScriptInfoNotFound(Po(t)?t:t.fileName),oy.ThrowNoProject())}getScriptInfoEnsuringProjectsUptoDate(t){return this.ensureProjectStructuresUptoDate(),this.getScriptInfo(t)}ensureProjectStructuresUptoDate(){let t=this.pendingEnsureProjectForOpenFiles;this.pendingProjectUpdates.clear();const r=i=>{t=jp(i)||t};this.externalProjects.forEach(r),this.configuredProjects.forEach(r),this.inferredProjects.forEach(r),t&&this.ensureProjectForOpenFiles()}getFormatCodeOptions(t){const r=this.getScriptInfoForNormalizedPath(t);return r&&r.getFormatCodeSettings()||this.hostConfiguration.formatCodeOptions}getPreferences(t){const r=this.getScriptInfoForNormalizedPath(t);return{...this.hostConfiguration.preferences,...r&&r.getPreferences()}}getHostFormatCodeOptions(){return this.hostConfiguration.formatCodeOptions}getHostPreferences(){return this.hostConfiguration.preferences}onSourceFileChanged(t,r){r===2?this.handleDeletedFile(t):t.isScriptOpen()||(t.delayReloadNonMixedContentFile(),this.delayUpdateProjectGraphs(t.containingProjects,!1),this.handleSourceMapProjects(t))}handleSourceMapProjects(t){if(t.sourceMapFilePath)if(Po(t.sourceMapFilePath)){const r=this.getScriptInfoForPath(t.sourceMapFilePath);this.delayUpdateSourceInfoProjects(r&&r.sourceInfos)}else this.delayUpdateSourceInfoProjects(t.sourceMapFilePath.sourceInfos);this.delayUpdateSourceInfoProjects(t.sourceInfos),t.declarationInfoPath&&this.delayUpdateProjectsOfScriptInfoPath(t.declarationInfoPath)}delayUpdateSourceInfoProjects(t){t&&t.forEach((r,i)=>this.delayUpdateProjectsOfScriptInfoPath(i))}delayUpdateProjectsOfScriptInfoPath(t){const r=this.getScriptInfoForPath(t);r&&this.delayUpdateProjectGraphs(r.containingProjects,!0)}handleDeletedFile(t){if(this.stopWatchingScriptInfo(t),!t.isScriptOpen()){this.deleteScriptInfo(t);const r=t.containingProjects.slice();if(t.detachAllProjects(),this.delayUpdateProjectGraphs(r,!1),this.handleSourceMapProjects(t),t.closeSourceMapFileWatcher(),t.declarationInfoPath){const i=this.getScriptInfoForPath(t.declarationInfoPath);i&&(i.sourceMapFilePath=void 0)}}}watchWildcardDirectory(t,r,i,o){let s=this.watchFactory.watchDirectory(t,u=>{const p=this.toPath(u),h=o.cachedDirectoryStructureHost.addOrDeleteFileOrDirectory(u,p);if(ic(p)==="package.json"&&!IO(p)&&(h&&h.fileExists||!h&&this.host.fileExists(u))){const b=this.getNormalizedAbsolutePath(u);this.logger.info(`Config: ${i} Detected new package.json: ${b}`),this.packageJsonCache.addOrUpdate(b,p),this.watchPackageJsonFile(b,p,l)}const m=this.findConfiguredProjectByProjectName(i);Vw({watchedDirPath:this.toPath(t),fileOrDirectory:u,fileOrDirectoryPath:p,configFileName:i,extraFileExtensions:this.hostConfiguration.extraFileExtensions,currentDirectory:this.currentDirectory,options:o.parsedCommandLine.options,program:(m==null?void 0:m.getCurrentProgram())||o.parsedCommandLine.fileNames,useCaseSensitiveFileNames:this.host.useCaseSensitiveFileNames,writeLog:b=>this.logger.info(b),toPath:b=>this.toPath(b),getScriptKind:m?b=>m.getScriptKind(b):void 0})||(o.updateLevel!==2&&(o.updateLevel=1),o.projects.forEach((b,A)=>{if(!b)return;const I=this.getConfiguredProjectByCanonicalConfigFilePath(A);if(!I)return;const R=m===I?1:0;if(!(I.pendingUpdateLevel!==void 0&&I.pendingUpdateLevel>R))if(this.openFiles.has(p))if(N.checkDefined(this.getScriptInfoForPath(p)).isAttached(I)){const C=Math.max(R,I.openFileWatchTriggered.get(p)||0);I.openFileWatchTriggered.set(p,C)}else I.pendingUpdateLevel=R,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(I);else I.pendingUpdateLevel=R,this.delayUpdateProjectGraphAndEnsureProjectStructureForOpenFiles(I)}))},r,this.getWatchOptionsFromProjectWatchOptions(o.parsedCommandLine.watchOptions),wc.WildcardDirectory,i);const l={packageJsonWatches:void 0,close(){var u;s&&(s.close(),s=void 0,(u=l.packageJsonWatches)==null||u.forEach(p=>{p.projects.delete(l),p.close()}),l.packageJsonWatches=void 0)}};return l}delayUpdateProjectsFromParsedConfigOnConfigFileChange(t,r){const i=this.configFileExistenceInfoCache.get(t);if(!(i!=null&&i.config))return!1;let o=!1;return i.config.updateLevel=2,i.config.projects.forEach((s,l)=>{const u=this.getConfiguredProjectByCanonicalConfigFilePath(l);if(u)if(o=!0,l===t){if(u.isInitialLoadPending())return;u.pendingUpdateLevel=2,u.pendingUpdateReason=r,this.delayUpdateProjectGraph(u)}else u.resolutionCache.removeResolutionsFromProjectReferenceRedirects(this.toPath(t)),this.delayUpdateProjectGraph(u)}),o}onConfigFileChanged(t,r){var i;const o=this.configFileExistenceInfoCache.get(t);if(r===2){o.exists=!1;const s=(i=o.config)!=null&&i.projects.has(t)?this.getConfiguredProjectByCanonicalConfigFilePath(t):void 0;s&&this.removeProject(s)}else o.exists=!0;this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(t,"Change in config file detected"),this.reloadConfiguredProjectForFiles(o.openFilesImpactedByConfigFile,!1,!0,r!==2?nl:Pv,"Change in config file detected"),this.delayEnsureProjectForOpenFiles()}removeProject(t){switch(this.logger.info("`remove Project::"),t.print(!0,!0,!1),t.close(),N.shouldAssert(1)&&this.filenameToScriptInfo.forEach(r=>N.assert(!r.isAttached(t),"Found script Info still attached to project",()=>`${t.projectName}: ScriptInfos still attached: ${JSON.stringify(zo(Pg(this.filenameToScriptInfo.values(),i=>i.isAttached(t)?{fileName:i.fileName,projects:i.containingProjects.map(o=>o.projectName),hasMixedContent:i.hasMixedContent}:void 0)),void 0," ")}`)),this.pendingProjectUpdates.delete(t.getProjectName()),t.projectKind){case 2:TA(this.externalProjects,t),this.projectToSizeMap.delete(t.getProjectName());break;case 1:this.configuredProjects.delete(t.canonicalConfigFilePath),this.projectToSizeMap.delete(t.canonicalConfigFilePath);break;case 0:TA(this.inferredProjects,t);break}}assignOrphanScriptInfoToInferredProject(t,r){N.assert(t.isOrphan());const i=this.getOrCreateInferredProjectForProjectRootPathIfEnabled(t,r)||this.getOrCreateSingleInferredProjectIfEnabled()||this.getOrCreateSingleInferredWithoutProjectRoot(t.isDynamic?r||this.currentDirectory:ai(fp(t.fileName)?t.fileName:go(t.fileName,r?this.getNormalizedAbsolutePath(r):this.currentDirectory)));if(i.addRoot(t),t.containingProjects[0]!==i&&(Gx(t.containingProjects,i),t.containingProjects.unshift(i)),i.updateGraph(),!this.useSingleInferredProject&&!i.projectRootPath)for(const o of this.inferredProjects){if(o===i||o.isOrphan())continue;const s=o.getRootScriptInfos();N.assert(s.length===1||!!o.projectRootPath),s.length===1&&Ue(s[0].containingProjects,l=>l!==s[0].containingProjects[0]&&!l.isOrphan())&&o.removeFile(s[0],!0,!0)}return i}assignOrphanScriptInfosToInferredProject(){this.openFiles.forEach((t,r)=>{const i=this.getScriptInfoForPath(r);i.isOrphan()&&this.assignOrphanScriptInfoToInferredProject(i,t)})}closeOpenFile(t,r){const i=t.isDynamic?!1:this.host.fileExists(t.fileName);t.close(i),this.stopWatchingConfigFilesForClosedScriptInfo(t);const o=this.toCanonicalFileName(t.fileName);this.openFilesWithNonRootedDiskPath.get(o)===t&&this.openFilesWithNonRootedDiskPath.delete(o);let s=!1;for(const l of t.containingProjects){if(V0(l)){t.hasMixedContent&&t.registerFileUpdate();const u=l.openFileWatchTriggered.get(t.path);u!==void 0&&(l.openFileWatchTriggered.delete(t.path),l.pendingUpdateLevel!==void 0&&l.pendingUpdateLevel<u&&(l.pendingUpdateLevel=u,l.markFileAsDirty(t.path)))}else XD(l)&&l.isRoot(t)&&(l.isProjectWithSingleRoot()&&(s=!0),l.removeFile(t,i,!0));l.languageServiceEnabled||l.markAsDirty()}return this.openFiles.delete(t.path),this.configFileForOpenFiles.delete(t.path),!r&&s&&this.assignOrphanScriptInfosToInferredProject(),i?this.watchClosedScriptInfo(t):this.handleDeletedFile(t),s}deleteScriptInfo(t){this.filenameToScriptInfo.delete(t.path),this.filenameToScriptInfoVersion.set(t.path,t.textStorage.version);const r=t.getRealpathIfDifferent();r&&this.realpathToScriptInfos.remove(r,t)}configFileExists(t,r,i){var o;let s=this.configFileExistenceInfoCache.get(r);if(s)return RZ(i)&&!((o=s.openFilesImpactedByConfigFile)!=null&&o.has(i.path))&&(s.openFilesImpactedByConfigFile||(s.openFilesImpactedByConfigFile=new Map)).set(i.path,!1),s.exists;const l=this.host.fileExists(t);let u;return RZ(i)&&(u||(u=new Map)).set(i.path,!1),s={exists:l,openFilesImpactedByConfigFile:u},this.configFileExistenceInfoCache.set(r,s),l}createConfigFileWatcherForParsedConfig(t,r,i){var o,s;const l=this.configFileExistenceInfoCache.get(r);(!l.watcher||l.watcher===CZ)&&(l.watcher=this.watchFactory.watchFile(t,(p,h)=>this.onConfigFileChanged(r,h),2e3,this.getWatchOptionsFromProjectWatchOptions((s=(o=l==null?void 0:l.config)==null?void 0:o.parsedCommandLine)==null?void 0:s.watchOptions),wc.ConfigFile,i));const u=l.config.projects;u.set(i.canonicalConfigFilePath,u.get(i.canonicalConfigFilePath)||!1)}configFileExistenceImpactsRootOfInferredProject(t){return t.openFilesImpactedByConfigFile&&Gc(t.openFilesImpactedByConfigFile,nl)}releaseParsedConfig(t,r){var i,o,s;const l=this.configFileExistenceInfoCache.get(t);(i=l.config)!=null&&i.projects.delete(r.canonicalConfigFilePath)&&((o=l.config)!=null&&o.projects.size||(l.config=void 0,RJ(t,this.sharedExtendedConfigFileWatchers),N.checkDefined(l.watcher),(s=l.openFilesImpactedByConfigFile)!=null&&s.size?this.configFileExistenceImpactsRootOfInferredProject(l)?M7(zc(ai(t)))||(l.watcher.close(),l.watcher=CZ):(l.watcher.close(),l.watcher=void 0):(l.watcher.close(),this.configFileExistenceInfoCache.delete(t))))}closeConfigFileWatcherOnReleaseOfOpenFile(t){t.watcher&&!t.config&&!this.configFileExistenceImpactsRootOfInferredProject(t)&&(t.watcher.close(),t.watcher=void 0)}stopWatchingConfigFilesForClosedScriptInfo(t){N.assert(!t.isScriptOpen()),this.forEachConfigFileLocation(t,r=>{var i,o,s;const l=this.configFileExistenceInfoCache.get(r);if(l){const u=(i=l.openFilesImpactedByConfigFile)==null?void 0:i.get(t.path);(o=l.openFilesImpactedByConfigFile)==null||o.delete(t.path),u&&this.closeConfigFileWatcherOnReleaseOfOpenFile(l),!((s=l.openFilesImpactedByConfigFile)!=null&&s.size)&&!l.config&&(N.assert(!l.watcher),this.configFileExistenceInfoCache.delete(r))}})}startWatchingConfigFilesForInferredProjectRoot(t){N.assert(t.isScriptOpen()),this.forEachConfigFileLocation(t,(r,i)=>{let o=this.configFileExistenceInfoCache.get(r);o||(o={exists:this.host.fileExists(i)},this.configFileExistenceInfoCache.set(r,o)),(o.openFilesImpactedByConfigFile||(o.openFilesImpactedByConfigFile=new Map)).set(t.path,!0),o.watcher||(o.watcher=M7(zc(ai(r)))?this.watchFactory.watchFile(i,(s,l)=>this.onConfigFileChanged(r,l),2e3,this.hostConfiguration.watchOptions,wc.ConfigFileForInferredRoot):CZ)})}stopWatchingConfigFilesForInferredProjectRoot(t){this.forEachConfigFileLocation(t,r=>{var i;const o=this.configFileExistenceInfoCache.get(r);(i=o==null?void 0:o.openFilesImpactedByConfigFile)!=null&&i.has(t.path)&&(N.assert(t.isScriptOpen()),o.openFilesImpactedByConfigFile.set(t.path,!1),this.closeConfigFileWatcherOnReleaseOfOpenFile(o))})}forEachConfigFileLocation(t,r){if(this.serverMode!==0)return;N.assert(!RZ(t)||this.openFiles.has(t.path));const i=this.openFiles.get(t.path);if(N.checkDefined(this.getScriptInfo(t.path)).isDynamic)return;let s=ai(t.fileName);const l=()=>bm(i,s,this.currentDirectory,!this.host.useCaseSensitiveFileNames),u=!i||!l();let p=!BOe(t);do{if(p){const m=f8(s,this.currentDirectory,this.toCanonicalFileName),b=Qr(s,"tsconfig.json");let A=r(Qr(m,"tsconfig.json"),b);if(A)return b;const I=Qr(s,"jsconfig.json");if(A=r(Qr(m,"jsconfig.json"),I),A)return I;if(d4(m))break}const h=ai(s);if(h===s)break;s=h,p=!0}while(u||l())}findDefaultConfiguredProject(t){if(!t.isScriptOpen())return;const r=this.getConfigFileNameForFile(t),i=r&&this.findConfiguredProjectByProjectName(r);return i&&UI(i,t)?i:i==null?void 0:i.getDefaultChildProjectFromProjectWithReferences(t)}getConfigFileNameForFile(t){if(!BOe(t)){const i=this.configFileForOpenFiles.get(t.path);if(i!==void 0)return i||void 0}this.logger.info(`Search path: ${ai(t.fileName)}`);const r=this.forEachConfigFileLocation(t,(i,o)=>this.configFileExists(o,i,t));return r?this.logger.info(`For info: ${t.fileName} :: Config file name: ${r}`):this.logger.info(`For info: ${t.fileName} :: No config files found.`),RZ(t)&&this.configFileForOpenFiles.set(t.path,r||!1),r}printProjects(){this.logger.hasLevel(1)&&(this.logger.startGroup(),this.externalProjects.forEach(Qhe),this.configuredProjects.forEach(Qhe),this.inferredProjects.forEach(Qhe),this.logger.info("Open files: "),this.openFiles.forEach((t,r)=>{const i=this.getScriptInfoForPath(r);this.logger.info(` FileName: ${i.fileName} ProjectRootPath: ${t}`),this.logger.info(` Projects: ${i.containingProjects.map(o=>o.getProjectName())}`)}),this.logger.endGroup())}findConfiguredProjectByProjectName(t){const r=this.toCanonicalFileName(t);return this.getConfiguredProjectByCanonicalConfigFilePath(r)}getConfiguredProjectByCanonicalConfigFilePath(t){return this.configuredProjects.get(t)}findExternalProjectByProjectName(t){return zOe(t,this.externalProjects)}getFilenameForExceededTotalSizeLimitForNonTsFiles(t,r,i,o){if(r&&r.disableSizeLimit||!this.host.getFileSize)return;let s=Xz;this.projectToSizeMap.set(t,0),this.projectToSizeMap.forEach(u=>s-=u||0);let l=0;for(const u of i){const p=o.getFileName(u);if(!XA(p)&&(l+=this.host.getFileSize(p),l>Xz||l>s)){const h=i.map(m=>o.getFileName(m)).filter(m=>!XA(m)).map(m=>({name:m,size:this.host.getFileSize(m)})).sort((m,b)=>b.size-m.size).slice(0,5);return this.logger.info(`Non TS file size exceeded limit (${l}). Largest files: ${h.map(m=>`${m.name}:${m.size}`).join(", ")}`),p}}this.projectToSizeMap.set(t,l)}createExternalProject(t,r,i,o,s){const l=Kz(i),u=g8(i,ai(Lu(t))),p=new Jz(t,this,this.documentRegistry,l,this.getFilenameForExceededTotalSizeLimitForNonTsFiles(t,l,r,s9),i.compileOnSave===void 0?!0:i.compileOnSave,void 0,u==null?void 0:u.watchOptions);return p.setProjectErrors(u==null?void 0:u.errors),p.excludedFiles=s,this.addFilesToNonInferredProject(p,r,s9,o),this.externalProjects.push(p),p}sendProjectTelemetry(t){if(this.seenProjects.has(t.projectName)){Khe(t);return}if(this.seenProjects.set(t.projectName,!0),!this.eventHandler||!this.host.createSHA256Hash){Khe(t);return}const r=V0(t)?t.projectOptions:void 0;Khe(t);const i={projectId:this.host.createSHA256Hash(t.projectName),fileStats:_8(t.getScriptInfos(),!0),compilerOptions:kse(t.getCompilationSettings()),typeAcquisition:s(t.getTypeAcquisition()),extends:r&&r.configHasExtendsProperty,files:r&&r.configHasFilesProperty,include:r&&r.configHasIncludeProperty,exclude:r&&r.configHasExcludeProperty,compileOnSave:t.compileOnSaveEnabled,configFileName:o(),projectType:t instanceof Jz?"external":"configured",languageServiceEnabled:t.languageServiceEnabled,version:Re};this.eventHandler({eventName:n9,data:i});function o(){return V0(t)&&pZ(t.getConfigFilePath())||"other"}function s({enable:l,include:u,exclude:p}){return{enable:l,include:u!==void 0&&u.length!==0,exclude:p!==void 0&&p.length!==0}}}addFilesToNonInferredProject(t,r,i,o){this.updateNonInferredProjectFiles(t,r,i),t.setTypeAcquisition(o),t.markAsDirty()}createConfiguredProject(t){var r;(r=sr)==null||r.instant(sr.Phase.Session,"createConfiguredProject",{configFilePath:t}),this.logger.info(`Creating configuration project ${t}`);const i=this.toCanonicalFileName(t);let o=this.configFileExistenceInfoCache.get(i);o?o.exists=!0:this.configFileExistenceInfoCache.set(i,o={exists:!0}),o.config||(o.config={cachedDirectoryStructureHost:g7(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),projects:new Map,updateLevel:2});const s=new AZ(t,i,this,this.documentRegistry,o.config.cachedDirectoryStructureHost);return this.configuredProjects.set(i,s),this.createConfigFileWatcherForParsedConfig(t,i,s),s}createConfiguredProjectWithDelayLoad(t,r){const i=this.createConfiguredProject(t);return i.pendingUpdateLevel=2,i.pendingUpdateReason=r,i}createAndLoadConfiguredProject(t,r){const i=this.createConfiguredProject(t);return this.loadConfiguredProject(i,r),i}createLoadAndUpdateConfiguredProject(t,r){const i=this.createAndLoadConfiguredProject(t,r);return i.updateGraph(),i}loadConfiguredProject(t,r){var i,o;(i=sr)==null||i.push(sr.Phase.Session,"loadConfiguredProject",{configFilePath:t.canonicalConfigFilePath}),this.sendProjectLoadingStartEvent(t,r);const s=ga(t.getConfigFilePath()),l=this.ensureParsedConfigUptoDate(s,t.canonicalConfigFilePath,this.configFileExistenceInfoCache.get(t.canonicalConfigFilePath),t),u=l.config.parsedCommandLine;N.assert(!!u.fileNames);const p=u.options;t.projectOptions||(t.projectOptions={configHasExtendsProperty:u.raw.extends!==void 0,configHasFilesProperty:u.raw.files!==void 0,configHasIncludeProperty:u.raw.include!==void 0,configHasExcludeProperty:u.raw.exclude!==void 0}),t.canConfigFileJsonReportNoInputFiles=MP(u.raw),t.setProjectErrors(u.options.configFile.parseDiagnostics),t.updateReferences(u.projectReferences);const h=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(t.canonicalConfigFilePath,p,u.fileNames,a9);h?(t.disableLanguageService(h),this.configFileExistenceInfoCache.forEach((b,A)=>this.stopWatchingWildCards(A,t))):(t.setCompilerOptions(p),t.setWatchOptions(u.watchOptions),t.enableLanguageService(),this.watchWildcards(s,l,t)),t.enablePluginsWithOptions(p);const m=u.fileNames.concat(t.getExternalFiles(2));this.updateRootAndOptionsOfNonInferredProject(t,m,a9,p,u.typeAcquisition,u.compileOnSave,u.watchOptions),(o=sr)==null||o.pop()}ensureParsedConfigUptoDate(t,r,i,o){var s,l,u;if(i.config){if(!i.config.updateLevel)return i;if(i.config.updateLevel===1)return this.reloadFileNamesOfParsedConfig(t,i.config),i}const p=((s=i.config)==null?void 0:s.cachedDirectoryStructureHost)||g7(this.host,this.host.getCurrentDirectory(),this.host.useCaseSensitiveFileNames),h=PP(t,R=>this.host.readFile(R)),m=pw(t,Po(h)?h:""),b=m.parseDiagnostics;Po(h)||b.push(h);const A=hw(m,p,ai(t),{},t,[],this.hostConfiguration.extraFileExtensions,this.extendedConfigCache);A.errors.length&&b.push(...A.errors),this.logger.info(`Config: ${t} : ${JSON.stringify({rootNames:A.fileNames,options:A.options,watchOptions:A.watchOptions,projectReferences:A.projectReferences},void 0," ")}`);const I=(l=i.config)==null?void 0:l.parsedCommandLine;return i.config?(i.config.parsedCommandLine=A,i.config.watchedDirectoriesStale=!0,i.config.updateLevel=void 0):i.config={parsedCommandLine:A,cachedDirectoryStructureHost:p,projects:new Map},!I&&!nW(this.getWatchOptionsFromProjectWatchOptions(void 0),this.getWatchOptionsFromProjectWatchOptions(A.watchOptions))&&((u=i.watcher)==null||u.close(),i.watcher=void 0),this.createConfigFileWatcherForParsedConfig(t,r,o),v7(r,A.options,this.sharedExtendedConfigFileWatchers,(R,M)=>this.watchFactory.watchFile(R,()=>{var C;y7(this.extendedConfigCache,M,U=>this.toPath(U));let O=!1;(C=this.sharedExtendedConfigFileWatchers.get(M))==null||C.projects.forEach(U=>{O=this.delayUpdateProjectsFromParsedConfigOnConfigFileChange(U,`Change in extended config file ${R} detected`)||O}),O&&this.delayEnsureProjectForOpenFiles()},2e3,this.hostConfiguration.watchOptions,wc.ExtendedConfigFile,t),R=>this.toPath(R)),i}watchWildcards(t,{exists:r,config:i},o){if(i.projects.set(o.canonicalConfigFilePath,!0),r){if(i.watchedDirectories&&!i.watchedDirectoriesStale)return;i.watchedDirectoriesStale=!1,Gw(i.watchedDirectories||(i.watchedDirectories=new Map),i.parsedCommandLine.wildcardDirectories,(s,l)=>this.watchWildcardDirectory(s,l,t,i))}else{if(i.watchedDirectoriesStale=!1,!i.watchedDirectories)return;tp(i.watchedDirectories,Mf),i.watchedDirectories=void 0}}stopWatchingWildCards(t,r){const i=this.configFileExistenceInfoCache.get(t);!i.config||!i.config.projects.get(r.canonicalConfigFilePath)||(i.config.projects.set(r.canonicalConfigFilePath,!1),!Gc(i.config.projects,nl)&&(i.config.watchedDirectories&&(tp(i.config.watchedDirectories,Mf),i.config.watchedDirectories=void 0),i.config.watchedDirectoriesStale=void 0))}updateNonInferredProjectFiles(t,r,i){const o=t.getRootFilesMap(),s=new Map;for(const l of r){const u=i.getFileName(l),p=ml(u),h=m8(p);let m;if(!h&&!t.fileExists(u)){m=f8(p,this.currentDirectory,this.toCanonicalFileName);const b=o.get(m);b?(b.info&&(t.removeFile(b.info,!1,!0),b.info=void 0),b.fileName=p):o.set(m,{fileName:p})}else{const b=i.getScriptKind(l,this.hostConfiguration.extraFileExtensions),A=i.hasMixedContent(l,this.hostConfiguration.extraFileExtensions),I=N.checkDefined(this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(p,t.currentDirectory,b,A,t.directoryStructureHost));m=I.path;const R=o.get(m);!R||R.info!==I?(t.addRoot(I,p),I.isScriptOpen()&&this.removeRootOfInferredProjectIfNowPartOfOtherProject(I)):R.fileName=p}s.set(m,!0)}o.size>s.size&&o.forEach((l,u)=>{s.has(u)||(l.info?t.removeFile(l.info,t.fileExists(l.info.fileName),!0):o.delete(u))})}updateRootAndOptionsOfNonInferredProject(t,r,i,o,s,l,u){t.setCompilerOptions(o),t.setWatchOptions(u),l!==void 0&&(t.compileOnSaveEnabled=l),this.addFilesToNonInferredProject(t,r,i,s)}reloadFileNamesOfConfiguredProject(t){const r=this.reloadFileNamesOfParsedConfig(t.getConfigFilePath(),this.configFileExistenceInfoCache.get(t.canonicalConfigFilePath).config);return t.updateErrorOnNoInputFiles(r),this.updateNonInferredProjectFiles(t,r.concat(t.getExternalFiles(1)),a9),t.markAsDirty(),t.updateGraph()}reloadFileNamesOfParsedConfig(t,r){if(r.updateLevel===void 0)return r.parsedCommandLine.fileNames;N.assert(r.updateLevel===1);const i=r.parsedCommandLine.options.configFile.configFileSpecs,o=LP(i,ai(t),r.parsedCommandLine.options,r.cachedDirectoryStructureHost,this.hostConfiguration.extraFileExtensions);return r.parsedCommandLine={...r.parsedCommandLine,fileNames:o},o}setFileNamesOfAutpImportProviderOrAuxillaryProject(t,r){this.updateNonInferredProjectFiles(t,r,a9)}reloadConfiguredProject(t,r,i,o){const s=t.getCachedDirectoryStructureHost();o&&this.clearSemanticCache(t),s.clearCache();const l=t.getConfigFilePath();this.logger.info(`${i?"Loading":"Reloading"} configured project ${l}`),this.loadConfiguredProject(t,r),t.updateGraph(),this.sendConfigFileDiagEvent(t,l)}clearSemanticCache(t){t.resolutionCache.clear(),t.getLanguageService(!1).cleanupSemanticCache(),t.cleanupProgram(),t.markAsDirty()}sendConfigFileDiagEvent(t,r){if(!this.eventHandler||this.suppressDiagnosticEvents)return;const i=t.getLanguageService().getCompilerOptionsDiagnostics();i.push(...t.getAllProjectErrors()),this.eventHandler({eventName:e9,data:{configFileName:t.getConfigFilePath(),diagnostics:i,triggerFile:r}})}getOrCreateInferredProjectForProjectRootPathIfEnabled(t,r){if(!this.useInferredProjectPerProjectRoot||t.isDynamic&&r===void 0)return;if(r){const o=this.toCanonicalFileName(r);for(const s of this.inferredProjects)if(s.projectRootPath===o)return s;return this.createInferredProject(r,!1,r)}let i;for(const o of this.inferredProjects)o.projectRootPath&&bm(o.projectRootPath,t.path,this.host.getCurrentDirectory(),!this.host.useCaseSensitiveFileNames)&&(i&&i.projectRootPath.length>o.projectRootPath.length||(i=o));return i}getOrCreateSingleInferredProjectIfEnabled(){if(this.useSingleInferredProject)return this.inferredProjects.length>0&&this.inferredProjects[0].projectRootPath===void 0?this.inferredProjects[0]:this.createInferredProject("",!0)}getOrCreateSingleInferredWithoutProjectRoot(t){N.assert(!this.useSingleInferredProject);const r=this.toCanonicalFileName(this.getNormalizedAbsolutePath(t));for(const i of this.inferredProjects)if(!i.projectRootPath&&i.isOrphan()&&i.canonicalCurrentDirectory===r)return i;return this.createInferredProject(t)}createInferredProject(t,r,i){const o=i&&this.compilerOptionsForInferredProjectsPerProjectRoot.get(i)||this.compilerOptionsForInferredProjects;let s,l;i&&(s=this.watchOptionsForInferredProjectsPerProjectRoot.get(i),l=this.typeAcquisitionForInferredProjectsPerProjectRoot.get(i)),s===void 0&&(s=this.watchOptionsForInferredProjects),l===void 0&&(l=this.typeAcquisitionForInferredProjects),s=s||void 0;const u=new bZ(this,this.documentRegistry,o,s==null?void 0:s.watchOptions,i,t,l);return u.setProjectErrors(s==null?void 0:s.errors),r?this.inferredProjects.unshift(u):this.inferredProjects.push(u),u}getOrCreateScriptInfoNotOpenedByClient(t,r,i){return this.getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(ml(t),r,void 0,void 0,i)}getScriptInfo(t){return this.getScriptInfoForNormalizedPath(ml(t))}getScriptInfoOrConfig(t){const r=ml(t),i=this.getScriptInfoForNormalizedPath(r);if(i)return i;const o=this.configuredProjects.get(this.toPath(t));return o&&o.getCompilerOptions().configFile}logErrorForScriptInfoNotFound(t){const r=zo(this.filenameToScriptInfo.entries(),([i,o])=>({path:i,fileName:o.fileName}));this.logger.msg(`Could not find file ${JSON.stringify(t)}.
+All files are: ${JSON.stringify(r)}`,"Err")}getSymlinkedProjects(t){let r;if(this.realpathToScriptInfos){const o=t.getRealpathIfDifferent();o&&Ue(this.realpathToScriptInfos.get(o),i),Ue(this.realpathToScriptInfos.get(t.path),i)}return r;function i(o){if(o!==t)for(const s of o.containingProjects)s.languageServiceEnabled&&!s.isOrphan()&&!s.getCompilerOptions().preserveSymlinks&&!t.isAttached(s)&&(r?Gc(r,(l,u)=>u===o.path?!1:Nr(l,s))||r.add(o.path,s):(r=Zp(),r.add(o.path,s)))}}watchClosedScriptInfo(t){if(N.assert(!t.fileWatcher),!t.isDynamicOrHasMixedContent()&&(!this.globalCacheLocationDirectoryPath||!uo(t.path,this.globalCacheLocationDirectoryPath))){const r=t.fileName.indexOf("/node_modules/");!this.host.getModifiedTime||r===-1?t.fileWatcher=this.watchFactory.watchFile(t.fileName,(i,o)=>this.onSourceFileChanged(t,o),500,this.hostConfiguration.watchOptions,wc.ClosedScriptInfo):(t.mTime=this.getModifiedTime(t),t.fileWatcher=this.watchClosedScriptInfoInNodeModules(t.fileName.substring(0,r)))}}createNodeModulesWatcher(t,r){let i=this.watchFactory.watchDirectory(t,s=>{var l;const u=P7(this.toPath(s));if(!u)return;const p=ic(u);if((l=o.affectedModuleSpecifierCacheProjects)!=null&&l.size&&(p==="package.json"||p==="node_modules")&&o.affectedModuleSpecifierCacheProjects.forEach(h=>{var m;(m=h.getModuleSpecifierCache())==null||m.clear()}),o.refreshScriptInfoRefCount)if(r===u)this.refreshScriptInfosInDirectory(r);else{const h=this.getScriptInfoForPath(u);h?jOe(h)&&this.refreshScriptInfo(h):xA(u)||this.refreshScriptInfosInDirectory(u)}},1,this.hostConfiguration.watchOptions,wc.NodeModules);const o={refreshScriptInfoRefCount:0,affectedModuleSpecifierCacheProjects:void 0,close:()=>{var s;i&&!o.refreshScriptInfoRefCount&&!((s=o.affectedModuleSpecifierCacheProjects)!=null&&s.size)&&(i.close(),i=void 0,this.nodeModulesWatchers.delete(r))}};return this.nodeModulesWatchers.set(r,o),o}watchPackageJsonsInNodeModules(t,r){var i;const o=this.toPath(t),s=this.nodeModulesWatchers.get(o)||this.createNodeModulesWatcher(t,o);return N.assert(!((i=s.affectedModuleSpecifierCacheProjects)!=null&&i.has(r))),(s.affectedModuleSpecifierCacheProjects||(s.affectedModuleSpecifierCacheProjects=new Set)).add(r),{close:()=>{var l;(l=s.affectedModuleSpecifierCacheProjects)==null||l.delete(r),s.close()}}}watchClosedScriptInfoInNodeModules(t){const r=t+"/node_modules",i=this.toPath(r),o=this.nodeModulesWatchers.get(i)||this.createNodeModulesWatcher(r,i);return o.refreshScriptInfoRefCount++,{close:()=>{o.refreshScriptInfoRefCount--,o.close()}}}getModifiedTime(t){return(this.host.getModifiedTime(t.fileName)||Op).getTime()}refreshScriptInfo(t){const r=this.getModifiedTime(t);if(r!==t.mTime){const i=MV(t.mTime,r);t.mTime=r,this.onSourceFileChanged(t,i)}}refreshScriptInfosInDirectory(t){t=t+al,this.filenameToScriptInfo.forEach(r=>{jOe(r)&&uo(r.path,t)&&this.refreshScriptInfo(r)})}stopWatchingScriptInfo(t){t.fileWatcher&&(t.fileWatcher.close(),t.fileWatcher=void 0)}getOrCreateScriptInfoNotOpenedByClientForNormalizedPath(t,r,i,o,s){if(fp(t)||m8(t))return this.getOrCreateScriptInfoWorker(t,r,!1,void 0,i,o,s);const l=this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(t));if(l)return l}getOrCreateScriptInfoOpenedByClientForNormalizedPath(t,r,i,o,s){return this.getOrCreateScriptInfoWorker(t,r,!0,i,o,s)}getOrCreateScriptInfoForNormalizedPath(t,r,i,o,s,l){return this.getOrCreateScriptInfoWorker(t,this.currentDirectory,r,i,o,s,l)}getOrCreateScriptInfoWorker(t,r,i,o,s,l,u){N.assert(o===void 0||i,"ScriptInfo needs to be opened by client to be able to set its user defined content");const p=f8(t,r,this.toCanonicalFileName);let h=this.getScriptInfoForPath(p);if(!h){const m=m8(t);if(N.assert(fp(t)||m||i,"",()=>`${JSON.stringify({fileName:t,currentDirectory:r,hostCurrentDirectory:this.currentDirectory,openKeys:zo(this.openFilesWithNonRootedDiskPath.keys())})}
+Script info with non-dynamic relative file name can only be open script info or in context of host currentDirectory`),N.assert(!fp(t)||this.currentDirectory===r||!this.openFilesWithNonRootedDiskPath.has(this.toCanonicalFileName(t)),"",()=>`${JSON.stringify({fileName:t,currentDirectory:r,hostCurrentDirectory:this.currentDirectory,openKeys:zo(this.openFilesWithNonRootedDiskPath.keys())})}
+Open script files with non rooted disk path opened with current directory context cannot have same canonical names`),N.assert(!m||this.currentDirectory===r||this.useInferredProjectPerProjectRoot,"",()=>`${JSON.stringify({fileName:t,currentDirectory:r,hostCurrentDirectory:this.currentDirectory,openKeys:zo(this.openFilesWithNonRootedDiskPath.keys())})}
+Dynamic files must always be opened with service's current directory or service should support inferred project per projectRootPath.`),!i&&!m&&!(u||this.host).fileExists(t))return;h=new gZ(this.host,t,s,!!l,p,this.filenameToScriptInfoVersion.get(p)),this.filenameToScriptInfo.set(h.path,h),this.filenameToScriptInfoVersion.delete(h.path),i?!fp(t)&&(!m||this.currentDirectory!==r)&&this.openFilesWithNonRootedDiskPath.set(this.toCanonicalFileName(t),h):this.watchClosedScriptInfo(h)}return i&&(this.stopWatchingScriptInfo(h),h.open(o),l&&h.registerFileUpdate()),h}getScriptInfoForNormalizedPath(t){return!fp(t)&&this.openFilesWithNonRootedDiskPath.get(this.toCanonicalFileName(t))||this.getScriptInfoForPath(f8(t,this.currentDirectory,this.toCanonicalFileName))}getScriptInfoForPath(t){return this.filenameToScriptInfo.get(t)}getDocumentPositionMapper(t,r,i){const o=this.getOrCreateScriptInfoNotOpenedByClient(r,t.currentDirectory,this.host);if(!o){i&&t.addGeneratedFileWatch(r,i);return}if(o.getSnapshot(),Po(o.sourceMapFilePath)){const m=this.getScriptInfoForPath(o.sourceMapFilePath);if(m&&(m.getSnapshot(),m.documentPositionMapper!==void 0))return m.sourceInfos=this.addSourceInfoToSourceMap(i,t,m.sourceInfos),m.documentPositionMapper?m.documentPositionMapper:void 0;o.sourceMapFilePath=void 0}else if(o.sourceMapFilePath){o.sourceMapFilePath.sourceInfos=this.addSourceInfoToSourceMap(i,t,o.sourceMapFilePath.sourceInfos);return}else if(o.sourceMapFilePath!==void 0)return;let s,l,u=(m,b)=>{const A=this.getOrCreateScriptInfoNotOpenedByClient(m,t.currentDirectory,this.host);if(!A){l=b;return}s=A;const I=A.getSnapshot();return A.documentPositionMapper!==void 0?A.documentPositionMapper:RD(I)};const p=t.projectName,h=sY({getCanonicalFileName:this.toCanonicalFileName,log:m=>this.logger.info(m),getSourceFileLike:m=>this.getSourceFileLike(m,p,o)},o.fileName,o.textStorage.getLineInfo(),u);return u=void 0,s?(o.sourceMapFilePath=s.path,s.declarationInfoPath=o.path,s.documentPositionMapper=h||!1,s.sourceInfos=this.addSourceInfoToSourceMap(i,t,s.sourceInfos)):l?o.sourceMapFilePath={watcher:this.addMissingSourceMapFile(t.currentDirectory===this.currentDirectory?l:go(l,t.currentDirectory),o.path),sourceInfos:this.addSourceInfoToSourceMap(i,t)}:o.sourceMapFilePath=!1,h}addSourceInfoToSourceMap(t,r,i){if(t){const o=this.getOrCreateScriptInfoNotOpenedByClient(t,r.currentDirectory,r.directoryStructureHost);(i||(i=new Set)).add(o.path)}return i}addMissingSourceMapFile(t,r){return this.watchFactory.watchFile(t,()=>{const o=this.getScriptInfoForPath(r);o&&o.sourceMapFilePath&&!Po(o.sourceMapFilePath)&&(this.delayUpdateProjectGraphs(o.containingProjects,!0),this.delayUpdateSourceInfoProjects(o.sourceMapFilePath.sourceInfos),o.closeSourceMapFileWatcher())},2e3,this.hostConfiguration.watchOptions,wc.MissingSourceMapFile)}getSourceFileLike(t,r,i){const o=r.projectName?r:this.findProject(r);if(o){const l=o.toPath(t),u=o.getSourceFile(l);if(u&&u.resolvedPath===l)return u}const s=this.getOrCreateScriptInfoNotOpenedByClient(t,(o||this).currentDirectory,o?o.directoryStructureHost:this.host);if(s){if(i&&Po(i.sourceMapFilePath)&&s!==i){const l=this.getScriptInfoForPath(i.sourceMapFilePath);l&&(l.sourceInfos||(l.sourceInfos=new Set)).add(s.path)}return s.cacheSourceFile?s.cacheSourceFile.sourceFile:(s.sourceFileLike||(s.sourceFileLike={get text(){return N.fail("shouldnt need text"),""},getLineAndCharacterOfPosition:l=>{const u=s.positionToLineOffset(l);return{line:u.line-1,character:u.offset-1}},getPositionOfLineAndCharacter:(l,u,p)=>s.lineOffsetToPosition(l+1,u+1,p)}),s.sourceFileLike)}}setPerformanceEventHandler(t){this.performanceEventHandler=t}setHostConfiguration(t){var r;if(t.file){const i=this.getScriptInfoForNormalizedPath(ml(t.file));i&&(i.setOptions(YD(t.formatOptions),t.preferences),this.logger.info(`Host configuration update for file ${t.file}`))}else{if(t.hostInfo!==void 0&&(this.hostConfiguration.hostInfo=t.hostInfo,this.logger.info(`Host information ${t.hostInfo}`)),t.formatOptions&&(this.hostConfiguration.formatCodeOptions={...this.hostConfiguration.formatCodeOptions,...YD(t.formatOptions)},this.logger.info("Format host information updated")),t.preferences){const{lazyConfiguredProjectsFromExternalProject:i,includePackageJsonAutoImports:o}=this.hostConfiguration.preferences;this.hostConfiguration.preferences={...this.hostConfiguration.preferences,...t.preferences},i&&!this.hostConfiguration.preferences.lazyConfiguredProjectsFromExternalProject&&this.externalProjectToConfiguredProjectMap.forEach(s=>s.forEach(l=>{!l.isClosed()&&l.hasExternalProjectRef()&&l.pendingUpdateLevel===2&&!this.pendingProjectUpdates.has(l.getProjectName())&&l.updateGraph()})),o!==t.preferences.includePackageJsonAutoImports&&this.forEachProject(s=>{s.onAutoImportProviderSettingsChanged()})}t.extraFileExtensions&&(this.hostConfiguration.extraFileExtensions=t.extraFileExtensions,this.reloadProjects(),this.logger.info("Host file extension mappings updated")),t.watchOptions&&(this.hostConfiguration.watchOptions=(r=g8(t.watchOptions))==null?void 0:r.watchOptions,this.logger.info(`Host watch options changed to ${JSON.stringify(this.hostConfiguration.watchOptions)}, it will be take effect for next watches.`))}}getWatchOptions(t){return this.getWatchOptionsFromProjectWatchOptions(t.getWatchOptions())}getWatchOptionsFromProjectWatchOptions(t){return t&&this.hostConfiguration.watchOptions?{...this.hostConfiguration.watchOptions,...t}:t||this.hostConfiguration.watchOptions}closeLog(){this.logger.close()}reloadProjects(){this.logger.info("reload projects."),this.filenameToScriptInfo.forEach(t=>{this.openFiles.has(t.path)||t.fileWatcher&&this.onSourceFileChanged(t,this.host.fileExists(t.fileName)?1:2)}),this.pendingProjectUpdates.forEach((t,r)=>{this.throttledOperations.cancel(r),this.pendingProjectUpdates.delete(r)}),this.throttledOperations.cancel(Zhe),this.pendingEnsureProjectForOpenFiles=!1,this.configFileExistenceInfoCache.forEach(t=>{t.config&&(t.config.updateLevel=2)}),this.reloadConfiguredProjectForFiles(this.openFiles,!0,!1,Pv,"User requested reload projects"),this.externalProjects.forEach(t=>{this.clearSemanticCache(t),t.updateGraph()}),this.inferredProjects.forEach(t=>this.clearSemanticCache(t)),this.ensureProjectForOpenFiles(),this.logger.info("After reloading projects.."),this.printProjects()}reloadConfiguredProjectForFiles(t,r,i,o,s){const l=new Map,u=p=>{l.has(p.canonicalConfigFilePath)||(l.set(p.canonicalConfigFilePath,!0),this.reloadConfiguredProject(p,s,!1,r))};t==null||t.forEach((p,h)=>{if(this.configFileForOpenFiles.delete(h),!o(p))return;const m=this.getScriptInfoForPath(h);N.assert(m.isScriptOpen());const b=this.getConfigFileNameForFile(m);if(b){const A=this.findConfiguredProjectByProjectName(b)||this.createConfiguredProject(b);l.has(A.canonicalConfigFilePath)||(l.set(A.canonicalConfigFilePath,!0),i?(A.pendingUpdateLevel=2,A.pendingUpdateReason=s,r&&this.clearSemanticCache(A),this.delayUpdateProjectGraph(A)):(this.reloadConfiguredProject(A,s,!1,r),UI(A,m)||$D(A,m.path,R=>(u(R),UI(R,m)),1)&&$D(A,void 0,u,0)))}})}removeRootOfInferredProjectIfNowPartOfOtherProject(t){N.assert(t.containingProjects.length>0);const r=t.containingProjects[0];!r.isOrphan()&&XD(r)&&r.isRoot(t)&&Ue(t.containingProjects,i=>i!==r&&!i.isOrphan())&&r.removeFile(t,!0,!0)}ensureProjectForOpenFiles(){this.logger.info("Before ensureProjectForOpenFiles:"),this.printProjects(),this.openFiles.forEach((t,r)=>{const i=this.getScriptInfoForPath(r);i.isOrphan()?this.assignOrphanScriptInfoToInferredProject(i,t):this.removeRootOfInferredProjectIfNowPartOfOtherProject(i)}),this.pendingEnsureProjectForOpenFiles=!1,this.inferredProjects.forEach(jp),this.logger.info("After ensureProjectForOpenFiles:"),this.printProjects()}openClientFile(t,r,i,o){return this.openClientFileWithNormalizedPath(ml(t),r,i,!1,o?ml(o):void 0)}getOriginalLocationEnsuringConfiguredProject(t,r){const i=t.isSourceOfProjectReferenceRedirect(r.fileName),o=i?r:t.getSourceMapper().tryGetSourcePosition(r);if(!o)return;const{fileName:s}=o,l=this.getScriptInfo(s);if(!l&&!this.host.fileExists(s))return;const u={fileName:ml(s),path:this.toPath(s)},p=this.getConfigFileNameForFile(u);if(!p)return;let h=this.findConfiguredProjectByProjectName(p);if(!h){if(t.getCompilerOptions().disableReferencedProjectLoad)return i?r:l!=null&&l.containingProjects.length?o:r;h=this.createAndLoadConfiguredProject(p,`Creating project for original file: ${u.fileName}${r!==o?" for location: "+r.fileName:""}`)}jp(h);const m=I=>{const R=this.getScriptInfo(s);return R&&UI(I,R)};if(h.isSolution()||!m(h)){if(h=$D(h,s,I=>(jp(I),m(I)?I:void 0),2,`Creating project referenced in solution ${h.projectName} to find possible configured project for original file: ${u.fileName}${r!==o?" for location: "+r.fileName:""}`),!h)return;if(h===t)return o}A(h);const b=this.getScriptInfo(s);if(!b||!b.containingProjects.length)return;return b.containingProjects.forEach(I=>{V0(I)&&A(I)}),o;function A(I){t.originalConfiguredProjects||(t.originalConfiguredProjects=new Set),t.originalConfiguredProjects.add(I.canonicalConfigFilePath)}}fileExists(t){return!!this.getScriptInfoForNormalizedPath(t)||this.host.fileExists(t)}findExternalProjectContainingOpenScriptInfo(t){return An(this.externalProjects,r=>(jp(r),r.containsScriptInfo(t)))}getOrCreateOpenScriptInfo(t,r,i,o,s){const l=this.getOrCreateScriptInfoOpenedByClientForNormalizedPath(t,s?this.getNormalizedAbsolutePath(s):this.currentDirectory,r,i,o);return this.openFiles.set(l.path,s),l}assignProjectToOpenedScriptInfo(t){let r,i,o=this.findExternalProjectContainingOpenScriptInfo(t),s,l,u=!1;return!o&&this.serverMode===0&&(r=this.getConfigFileNameForFile(t),r&&(o=this.findConfiguredProjectByProjectName(r),o?jp(o):(o=this.createLoadAndUpdateConfiguredProject(r,`Creating possible configured project for ${t.fileName} to open`),u=!0),l=o.containsScriptInfo(t)?o:void 0,s=o,UI(o,t)||$D(o,t.path,p=>{if(jp(p),To(s)?s.push(p):s=[o,p],UI(p,t))return l=p,p;!l&&p.containsScriptInfo(t)&&(l=p)},2,`Creating project referenced in solution ${o.projectName} to find possible configured project for ${t.fileName} to open`),l?(r=l.getConfigFilePath(),(l!==o||u)&&(i=l.getAllProjectErrors(),this.sendConfigFileDiagEvent(l,t.fileName))):r=void 0,this.createAncestorProjects(t,o))),t.containingProjects.forEach(jp),t.isOrphan()&&(To(s)?s.forEach(p=>this.sendConfigFileDiagEvent(p,t.fileName)):s&&this.sendConfigFileDiagEvent(s,t.fileName),N.assert(this.openFiles.has(t.path)),this.assignOrphanScriptInfoToInferredProject(t,this.openFiles.get(t.path))),N.assert(!t.isOrphan()),{configFileName:r,configFileErrors:i,retainProjects:s}}createAncestorProjects(t,r){if(t.isAttached(r))for(;;){if(!r.isInitialLoadPending()&&(!r.getCompilerOptions().composite||r.getCompilerOptions().disableSolutionSearching))return;const i=this.getConfigFileNameForFile({fileName:r.getConfigFilePath(),path:t.path,configFileInfo:!0});if(!i)return;const o=this.findConfiguredProjectByProjectName(i)||this.createConfiguredProjectWithDelayLoad(i,`Creating project possibly referencing default composite project ${r.getProjectName()} of open file ${t.fileName}`);o.isInitialLoadPending()&&o.setPotentialProjectReference(r.canonicalConfigFilePath),r=o}}loadAncestorProjectTree(t){t=t||C6(this.configuredProjects,(i,o)=>o.isInitialLoadPending()?void 0:[i,!0]);const r=new Set;for(const i of zo(this.configuredProjects.values()))GOe(i,o=>t.has(o))&&jp(i),this.ensureProjectChildren(i,t,r)}ensureProjectChildren(t,r,i){var o;if(!Rv(i,t.canonicalConfigFilePath)||t.getCompilerOptions().disableReferencedProjectLoad)return;const s=(o=t.getCurrentProgram())==null?void 0:o.getResolvedProjectReferences();if(s)for(const l of s){if(!l)continue;const u=VJ(l.references,m=>r.has(m.sourceFile.path)?m:void 0);if(!u)continue;const p=ml(l.sourceFile.fileName),h=t.projectService.findConfiguredProjectByProjectName(p)||t.projectService.createAndLoadConfiguredProject(p,`Creating project referenced by : ${t.projectName} as it references project ${u.sourceFile.fileName}`);jp(h),this.ensureProjectChildren(h,r,i)}}cleanupAfterOpeningFile(t){this.removeOrphanConfiguredProjects(t);for(const r of this.inferredProjects.slice())r.isOrphan()&&this.removeProject(r);this.removeOrphanScriptInfos()}openClientFileWithNormalizedPath(t,r,i,o,s){const l=this.getOrCreateOpenScriptInfo(t,r,i,o,s),{retainProjects:u,...p}=this.assignProjectToOpenedScriptInfo(l);return this.cleanupAfterOpeningFile(u),this.telemetryOnOpenFile(l),this.printProjects(),p}removeOrphanConfiguredProjects(t){const r=new Map(this.configuredProjects),i=l=>{!l.isOrphan()&&l.originalConfiguredProjects&&l.originalConfiguredProjects.forEach((u,p)=>{const h=this.getConfiguredProjectByCanonicalConfigFilePath(p);return h&&s(h)})};t&&(To(t)?t.forEach(s):s(t)),this.inferredProjects.forEach(i),this.externalProjects.forEach(i),this.configuredProjects.forEach(l=>{l.hasOpenRef()?s(l):r.has(l.canonicalConfigFilePath)&&VOe(l,u=>o(u)&&s(l))}),r.forEach(l=>this.removeProject(l));function o(l){return l.hasOpenRef()||!r.has(l.canonicalConfigFilePath)}function s(l){r.delete(l.canonicalConfigFilePath)&&(i(l),VOe(l,s))}}removeOrphanScriptInfos(){const t=new Map(this.filenameToScriptInfo);this.filenameToScriptInfo.forEach(r=>{if(!r.isScriptOpen()&&r.isOrphan()&&!r.isContainedByBackgroundProject()){if(!r.sourceMapFilePath)return;let i;if(Po(r.sourceMapFilePath)){const o=this.getScriptInfoForPath(r.sourceMapFilePath);i=o&&o.sourceInfos}else i=r.sourceMapFilePath.sourceInfos;if(!i||!_h(i,o=>{const s=this.getScriptInfoForPath(o);return!!s&&(s.isScriptOpen()||!s.isOrphan())}))return}if(t.delete(r.path),r.sourceMapFilePath){let i;if(Po(r.sourceMapFilePath)){t.delete(r.sourceMapFilePath);const o=this.getScriptInfoForPath(r.sourceMapFilePath);i=o&&o.sourceInfos}else i=r.sourceMapFilePath.sourceInfos;i&&i.forEach((o,s)=>t.delete(s))}}),t.forEach(r=>{this.stopWatchingScriptInfo(r),this.deleteScriptInfo(r),r.closeSourceMapFileWatcher()})}telemetryOnOpenFile(t){if(this.serverMode!==0||!this.eventHandler||!t.isJavaScript()||!Rm(this.allJsFilesForOpenFileTelemetry,t.path))return;const r=this.ensureDefaultProjectForFile(t);if(!r.languageServiceEnabled)return;const i=r.getSourceFile(t.path),o=!!i&&!!i.checkJsDirective;this.eventHandler({eventName:DZ,data:{info:{checkJs:o}}})}closeClientFile(t,r){const i=this.getScriptInfoForNormalizedPath(ml(t)),o=i?this.closeOpenFile(i,r):!1;return r||this.printProjects(),o}collectChanges(t,r,i,o){for(const s of r){const l=An(t,u=>u.projectName===s.getProjectName());o.push(s.getChangesSinceVersion(l&&l.version,i))}}synchronizeProjectList(t,r){const i=[];return this.collectChanges(t,this.externalProjects,r,i),this.collectChanges(t,this.configuredProjects.values(),r,i),this.collectChanges(t,this.inferredProjects,r,i),i}applyChangesInOpenFiles(t,r,i){let o,s=!1;if(t)for(const u of t){const p=this.getOrCreateOpenScriptInfo(ml(u.fileName),u.content,IZ(u.scriptKind),u.hasMixedContent,u.projectRootPath?ml(u.projectRootPath):void 0);(o||(o=[])).push(p)}if(r)for(const u of r){const p=this.getScriptInfo(u.fileName);N.assert(!!p),this.applyChangesToFile(p,u.changes)}if(i)for(const u of i)s=this.closeClientFile(u,!0)||s;let l;o&&(l=Pi(o,u=>this.assignProjectToOpenedScriptInfo(u).retainProjects)),s&&this.assignOrphanScriptInfosToInferredProject(),o?(this.cleanupAfterOpeningFile(l),o.forEach(u=>this.telemetryOnOpenFile(u)),this.printProjects()):Me(i)&&this.printProjects()}applyChangesToFile(t,r){for(const i of r)t.editContent(i.span.start,i.span.start+i.span.length,i.newText)}closeConfiguredProjectReferencedFromExternalProject(t){t==null||t.forEach(r=>{r.isClosed()||(r.deleteExternalProjectReference(),r.hasOpenRef()||this.removeProject(r))})}closeExternalProject(t,r){const i=ml(t),o=this.externalProjectToConfiguredProjectMap.get(i);if(o)this.closeConfiguredProjectReferencedFromExternalProject(o),this.externalProjectToConfiguredProjectMap.delete(i);else{const s=this.findExternalProjectByProjectName(t);s&&this.removeProject(s)}r&&this.printProjects()}openExternalProjects(t){const r=NE(this.externalProjects,i=>i.getProjectName(),i=>!0);_h(this.externalProjectToConfiguredProjectMap,i=>{r.set(i,!0)});for(const i of t)this.openExternalProject(i,!1),r.delete(i.projectFileName);_h(r,i=>{this.closeExternalProject(i,!1)}),this.printProjects()}static escapeFilenameForRegex(t){return t.replace(this.filenameEscapeRegexp,"\\$&")}resetSafeList(){this.safelist=NZ}applySafeList(t){const r=t.typeAcquisition;N.assert(!!r,"proj.typeAcquisition should be set by now");const i=this.applySafeListWorker(t,t.rootFiles,r);return(i==null?void 0:i.excludedFiles)??[]}applySafeListWorker(t,r,i){if(i.enable===!1||i.disableFilenameBasedTypeAcquisition)return;const o=i.include||(i.include=[]),s=[],l=r.map(b=>Lu(b.fileName));for(const b of Object.keys(this.safelist)){const A=this.safelist[b];for(const I of l)if(A.match.test(I)){if(this.logger.info(`Excluding files based on rule ${b} matching file '${I}'`),A.types)for(const R of A.types)o.includes(R)||o.push(R);if(A.exclude)for(const R of A.exclude){const M=I.replace(A.match,(...C)=>R.map(O=>typeof O=="number"?Po(C[O])?Hbe.escapeFilenameForRegex(C[O]):(this.logger.info(`Incorrect RegExp specification in safelist rule ${b} - not enough groups`),"\\*"):O).join(""));s.includes(M)||s.push(M)}else{const R=Hbe.escapeFilenameForRegex(I);s.includes(R)||s.push(R)}}}const u=s.map(b=>new RegExp(b,"i"));let p,h;for(let b=0;b<r.length;b++)if(u.some(A=>A.test(l[b])))m(b);else{if(i.enable){const A=ic(ch(l[b]));if(Il(A,"js")){const I=Id(A),R=bG(I),M=this.legacySafelist.get(R);if(M!==void 0){this.logger.info(`Excluded '${l[b]}' because it matched ${R} from the legacy safelist`),m(b),o.includes(M)||o.push(M);continue}}}/^.+[.-]min\.js$/.test(l[b])?m(b):p==null||p.push(r[b])}return h?{rootFiles:p,excludedFiles:h}:void 0;function m(b){h||(N.assert(!p),p=r.slice(0,b),h=[]),h.push(l[b])}}openExternalProject(t,r){const i=this.findExternalProjectByProjectName(t.projectFileName),o=this.externalProjectToConfiguredProjectMap.get(t.projectFileName);let s,l=[];for(const u of t.rootFiles){const p=ml(u.fileName);if(pZ(p)){if(this.serverMode===0&&this.host.fileExists(p)){let h=this.findConfiguredProjectByProjectName(p);h||(h=this.getHostPreferences().lazyConfiguredProjectsFromExternalProject?this.createConfiguredProjectWithDelayLoad(p,`Creating configured project in external project: ${t.projectFileName}`):this.createLoadAndUpdateConfiguredProject(p,`Creating configured project in external project: ${t.projectFileName}`)),o!=null&&o.has(h)||h.addExternalProjectReference(),(s??(s=new Set)).add(h),o==null||o.delete(h)}}else l.push(u)}if(s)this.externalProjectToConfiguredProjectMap.set(t.projectFileName,s),i&&this.removeProject(i);else{this.externalProjectToConfiguredProjectMap.delete(t.projectFileName);const u=t.typeAcquisition||{};u.include=u.include||[],u.exclude=u.exclude||[],u.enable===void 0&&(u.enable=Vhe(l.map(m=>m.fileName)));const p=this.applySafeListWorker(t,l,u),h=(p==null?void 0:p.excludedFiles)??[];if(l=(p==null?void 0:p.rootFiles)??l,i){i.excludedFiles=h;const m=Kz(t.options),b=g8(t.options,i.getCurrentDirectory()),A=this.getFilenameForExceededTotalSizeLimitForNonTsFiles(t.projectFileName,m,l,s9);A?i.disableLanguageService(A):i.enableLanguageService(),i.setProjectErrors(b==null?void 0:b.errors),this.updateRootAndOptionsOfNonInferredProject(i,l,s9,m,u,t.options.compileOnSave,b==null?void 0:b.watchOptions),i.updateGraph()}else this.createExternalProject(t.projectFileName,l,t.options,u,h).updateGraph()}this.closeConfiguredProjectReferencedFromExternalProject(o),r&&this.printProjects()}hasDeferredExtension(){for(const t of this.hostConfiguration.extraFileExtensions)if(t.scriptKind===7)return!0;return!1}requestEnablePlugin(t,r,i){if(!this.host.importPlugin&&!this.host.require){this.logger.info("Plugins were requested but not running in environment that supports 'require'. Nothing will be loaded");return}if(this.logger.info(`Enabling plugin ${r.name} from candidate paths: ${i.join(",")}`),!r.name||Nw(r.name).rest){this.logger.info(`Skipped loading plugin ${r.name||JSON.stringify(r)} because only package name is allowed plugin name`);return}if(this.host.importPlugin){const o=mT.importServicePluginAsync(r,i,this.host,l=>this.logger.info(l));this.pendingPluginEnablements??(this.pendingPluginEnablements=new Map);let s=this.pendingPluginEnablements.get(t);s||this.pendingPluginEnablements.set(t,s=[]),s.push(o);return}this.endEnablePlugin(t,mT.importServicePluginSync(r,i,this.host,o=>this.logger.info(o)))}endEnablePlugin(t,{pluginConfigEntry:r,resolvedModule:i,errorLogs:o}){var s;if(i){const l=(s=this.currentPluginConfigOverrides)==null?void 0:s.get(r.name);if(l){const u=r.name;r=l,r.name=u}t.enableProxy(i,r)}else Ue(o,l=>this.logger.info(l)),this.logger.info(`Couldn't find ${r.name}`)}hasNewPluginEnablementRequests(){return!!this.pendingPluginEnablements}hasPendingPluginEnablements(){return!!this.currentPluginEnablementPromise}async waitForPendingPlugins(){for(;this.currentPluginEnablementPromise;)await this.currentPluginEnablementPromise}enableRequestedPlugins(){this.pendingPluginEnablements&&this.enableRequestedPluginsAsync()}async enableRequestedPluginsAsync(){if(this.currentPluginEnablementPromise&&await this.waitForPendingPlugins(),!this.pendingPluginEnablements)return;const t=zo(this.pendingPluginEnablements.entries());this.pendingPluginEnablements=void 0,this.currentPluginEnablementPromise=this.enableRequestedPluginsWorker(t),await this.currentPluginEnablementPromise}async enableRequestedPluginsWorker(t){N.assert(this.currentPluginEnablementPromise===void 0),await Promise.all(wt(t,([r,i])=>this.enableRequestedPluginsForProjectAsync(r,i))),this.currentPluginEnablementPromise=void 0,this.sendProjectsUpdatedInBackgroundEvent()}async enableRequestedPluginsForProjectAsync(t,r){const i=await Promise.all(r);if(!t.isClosed()){for(const o of i)this.endEnablePlugin(t,o);this.delayUpdateProjectGraph(t)}}configurePlugin(t){this.forEachEnabledProject(r=>r.onPluginConfigurationChanged(t.pluginName,t.configuration)),this.currentPluginConfigOverrides=this.currentPluginConfigOverrides||new Map,this.currentPluginConfigOverrides.set(t.pluginName,t.configuration)}getPackageJsonsVisibleToFile(t,r,i){const o=this.packageJsonCache,s=i&&this.toPath(i),l=[],u=p=>{switch(o.directoryHasPackageJson(p)){case 3:return o.searchDirectoryAndAncestors(p),u(p);case-1:const h=Qr(p,"package.json");this.watchPackageJsonFile(h,this.toPath(h),r);const m=o.getInDirectory(p);m&&l.push(m)}if(s&&s===p)return!0};return Sm(ai(t),u),l}getNearestAncestorDirectoryWithPackageJson(t){return Sm(t,r=>{switch(this.packageJsonCache.directoryHasPackageJson(r)){case-1:return r;case 0:return;case 3:return this.host.fileExists(Qr(r,"package.json"))?r:void 0}})}watchPackageJsonFile(t,r,i){N.assert(i!==void 0);let o=(this.packageJsonFilesMap??(this.packageJsonFilesMap=new Map)).get(r);if(!o){let s=this.watchFactory.watchFile(t,(l,u)=>{switch(u){case 0:return N.fail();case 1:this.packageJsonCache.addOrUpdate(l,r),this.onPackageJsonChange(o);break;case 2:this.packageJsonCache.delete(r),this.onPackageJsonChange(o),o.projects.clear(),o.close()}},250,this.hostConfiguration.watchOptions,wc.PackageJson);o={projects:new Set,close:()=>{var l;o.projects.size||!s||(s.close(),s=void 0,(l=this.packageJsonFilesMap)==null||l.delete(r),this.packageJsonCache.invalidate(r))}},this.packageJsonFilesMap.set(r,o)}o.projects.add(i),(i.packageJsonWatches??(i.packageJsonWatches=new Set)).add(o)}onPackageJsonChange(t){t.projects.forEach(r=>{var i;return(i=r.onPackageJsonChange)==null?void 0:i.call(r)})}includePackageJsonAutoImports(){switch(this.hostConfiguration.preferences.includePackageJsonAutoImports){case"on":return 1;case"off":return 0;default:return 2}}getIncompleteCompletionsCache(){return this.incompleteCompletionsCache||(this.incompleteCompletionsCache=rlt())}},ege.filenameEscapeRegexp=/[-/\\^$*+?.()|[\]{}]/g,MZ=ege}});function tge(e){let t,r,i;const o={get(p,h,m,b){if(!(!r||i!==l(p,m,b)))return r.get(h)},set(p,h,m,b,A,I){if(s(p,m,b).set(h,u(A,I,!1)),I){for(const R of A)if(R.isInNodeModules){const M=R.path.substring(0,R.path.indexOf(xh)+xh.length-1),C=e.toPath(M);t!=null&&t.has(C)||(t||(t=new Map)).set(C,e.watchNodeModulesForPackageJsonChanges(M))}}},setModulePaths(p,h,m,b,A){const I=s(p,m,b),R=I.get(h);R?R.modulePaths=A:I.set(h,u(A,void 0,void 0))},setBlockedByPackageJsonDependencies(p,h,m,b,A){const I=s(p,m,b),R=I.get(h);R?R.isBlockedByPackageJsonDependencies=A:I.set(h,u(void 0,void 0,A))},clear(){t==null||t.forEach(Qm),r==null||r.clear(),t==null||t.clear(),i=void 0},count(){return r?r.size:0}};return N.isDebugging&&Object.defineProperty(o,"__cache",{get:()=>r}),o;function s(p,h,m){const b=l(p,h,m);return r&&i!==b&&o.clear(),i=b,r||(r=new Map)}function l(p,h,m){return`${p},${h.importModuleSpecifierEnding},${h.importModuleSpecifierPreference},${m.overrideImportMode}`}function u(p,h,m){return{modulePaths:p,moduleSpecifiers:h,isBlockedByPackageJsonDependencies:m}}}var olt=T({"src/server/moduleSpecifierCache.ts"(){db()}});function nge(e){const t=new Map,r=new Map;return{addOrUpdate:i,invalidate:o,delete:l=>{t.delete(l),r.set(ai(l),!0)},getInDirectory:l=>t.get(e.toPath(Qr(l,"package.json")))||void 0,directoryHasPackageJson:l=>s(e.toPath(l)),searchDirectoryAndAncestors:l=>{Sm(l,u=>{const p=e.toPath(u);if(s(p)!==3)return!0;const h=Qr(u,"package.json");AO(e,h)?i(h,Qr(p,"package.json")):r.set(p,!0)})}};function i(l,u){const p=N.checkDefined(FX(l,e.host));t.set(u,p),r.delete(ai(u))}function o(l){t.delete(l),r.delete(ai(l))}function s(l){return t.has(Qr(l,"package.json"))?-1:r.has(l)?0:3}}var alt=T({"src/server/packageJsonCache.ts"(){db()}});function slt(e){const t=e[0],r=e[1];return(1e9*t+r)/1e6}function JOe(e,t){if((XD(e)||yZ(e))&&e.isJsOnlyProject()){const r=e.getScriptInfoForNormalizedPath(t);return r&&!r.isJavaScript()}return!1}function llt(e){return Nf(e)||!!e.emitDecoratorMetadata}function KOe(e,t,r){const i=t.getScriptInfoForNormalizedPath(e);return{start:i.positionToLineOffset(r.start),end:i.positionToLineOffset(r.start+r.length),text:z_(r.messageText,`
+`),code:r.code,category:mS(r),reportsUnnecessary:r.reportsUnnecessary,reportsDeprecated:r.reportsDeprecated,source:r.source,relatedInformation:wt(r.relatedInformation,LZ)}}function LZ(e){return e.file?{span:{start:y8(bs(e.file,e.start)),end:y8(bs(e.file,e.start+e.length)),file:e.file.fileName},message:z_(e.messageText,`
+`),category:mS(e),code:e.code}:{message:z_(e.messageText,`
+`),category:mS(e),code:e.code}}function y8(e){return{line:e.line+1,offset:e.character+1}}function b8(e,t){const r=e.file&&y8(bs(e.file,e.start)),i=e.file&&y8(bs(e.file,e.start+e.length)),o=z_(e.messageText,`
+`),{code:s,source:l}=e,u=mS(e),p={start:r,end:i,text:o,code:s,category:u,reportsUnnecessary:e.reportsUnnecessary,reportsDeprecated:e.reportsDeprecated,source:l,relatedInformation:wt(e.relatedInformation,LZ)};return t?{...p,fileName:e.file&&e.file.fileName}:p}function clt(e,t){return e.every(r=>Kl(r.span)<t)}function rge(e,t,r,i){const o=t.hasLevel(3),s=JSON.stringify(e);return o&&t.info(`${e.type}:${O0(e)}`),`Content-Length: ${1+r(s,"utf8")}\r
+\r
+${s}${i}`}function ige(e,t){return{seq:0,type:"event",event:e,body:t}}function ult(e,t,r,i){const o=rc(To(r)?r:r.projects,s=>i(s,e));return!To(r)&&r.symLinkedProjects&&r.symLinkedProjects.forEach((s,l)=>{const u=t(l);o.push(...Pi(s,p=>i(p,u)))}),DE(o,Mv)}function kZ(e){return vG(({textSpan:t})=>t.start+100003*t.length,TX(e))}function dlt(e,t,r,i,o,s,l){const u=XOe(e,t,r,!0,(m,b)=>m.getLanguageService().findRenameLocations(b.fileName,b.pos,i,o,s),(m,b)=>b(N2(m)));if(To(u))return u;const p=[],h=kZ(l);return u.forEach((m,b)=>{for(const A of m)!h.has(A)&&!wZ(N2(A),b)&&(p.push(A),h.add(A))}),p}function plt(e,t,r){const i=e.getLanguageService().getDefinitionAtPosition(t.fileName,t.pos,!1,r),o=i&&Xc(i);return o&&!o.isLocal?{fileName:o.fileName,pos:o.textSpan.start}:void 0}function flt(e,t,r,i,o){var s,l;const u=XOe(e,t,r,!1,(b,A)=>(o.info(`Finding references to ${A.fileName} position ${A.pos} in project ${b.getProjectName()}`),b.getLanguageService().findReferences(A.fileName,A.pos)),(b,A)=>{A(N2(b.definition));for(const I of b.references)A(N2(I))});if(To(u))return u;const p=u.get(t);if(((l=(s=p==null?void 0:p[0])==null?void 0:s.references[0])==null?void 0:l.isDefinition)===void 0)u.forEach(b=>{for(const A of b)for(const I of A.references)delete I.isDefinition});else{const b=kZ(i);for(const I of p)for(const R of I.references)if(R.isDefinition){b.add(R);break}const A=new Set;for(;;){let I=!1;if(u.forEach((R,M)=>{if(A.has(M))return;M.getLanguageService().updateIsDefinitionOfReferencedSymbols(R,b)&&(A.add(M),I=!0)}),!I)break}u.forEach((I,R)=>{if(!A.has(R))for(const M of I)for(const C of M.references)C.isDefinition=!1})}const h=[],m=kZ(i);return u.forEach((b,A)=>{for(const I of b){const R=wZ(N2(I.definition),A),M=R===void 0?I.definition:{...I.definition,textSpan:vu(R.pos,I.definition.textSpan.length),fileName:R.fileName,contextSpan:hlt(I.definition,A)};let C=An(h,O=>SX(O.definition,M,i));C||(C={definition:M,references:[]},h.push(C));for(const O of I.references)!m.has(O)&&!wZ(N2(O),A)&&(m.add(O),C.references.push(O))}}),h.filter(b=>b.references.length!==0)}function oge(e,t,r){for(const i of To(e)?e:e.projects)r(i,t);!To(e)&&e.symLinkedProjects&&e.symLinkedProjects.forEach((i,o)=>{for(const s of i)r(s,o)})}function XOe(e,t,r,i,o,s){const l=new Map,u=zM();u.enqueue({project:t,location:r}),oge(e,r.fileName,(M,C)=>{const O={fileName:C,pos:r.pos};u.enqueue({project:M,location:O})});const p=t.projectService,h=t.getCancellationToken(),m=plt(t,r,i),b=Td(()=>t.isSourceOfProjectReferenceRedirect(m.fileName)?m:t.getLanguageService().getSourceMapper().tryGetGeneratedPosition(m)),A=Td(()=>t.isSourceOfProjectReferenceRedirect(m.fileName)?m:t.getLanguageService().getSourceMapper().tryGetSourcePosition(m)),I=new Set;e:for(;!u.isEmpty();){for(;!u.isEmpty();){if(h.isCancellationRequested())break e;const{project:M,location:C}=u.dequeue();if(l.has(M)||YOe(M,C)||(jp(M),!M.containsFile(ml(C.fileName))))continue;const O=R(M,C);l.set(M,O??gc),I.add(_lt(M))}m&&(p.loadAncestorProjectTree(I),p.forEachEnabledProject(M=>{if(h.isCancellationRequested()||l.has(M))return;const C=mlt(m,M,b,A);C&&u.enqueue({project:M,location:C})}))}if(l.size===1)return fG(l.values());return l;function R(M,C){const O=o(M,C);if(O){for(const U of O)s(U,K=>{const Z=p.getOriginalLocationEnsuringConfiguredProject(M,K);if(!Z)return;const V=p.getScriptInfo(Z.fileName);for(const G of V.containingProjects)!G.isOrphan()&&!l.has(G)&&u.enqueue({project:G,location:Z});const se=p.getSymlinkedProjects(V);se&&se.forEach((G,ne)=>{for(const he of G)!he.isOrphan()&&!l.has(he)&&u.enqueue({project:he,location:{fileName:ne,pos:Z.pos}})})});return O}}}function mlt(e,t,r,i){if(t.containsFile(ml(e.fileName))&&!YOe(t,e))return e;const o=r();if(o&&t.containsFile(ml(o.fileName)))return o;const s=i();return s&&t.containsFile(ml(s.fileName))?s:void 0}function YOe(e,t){if(!t)return!1;const r=e.getLanguageService().getProgram();if(!r)return!1;const i=r.getSourceFile(t.fileName);return!!i&&i.resolvedPath!==i.path&&i.resolvedPath!==e.toPath(t.fileName)}function _lt(e){return V0(e)?e.canonicalConfigFilePath:e.getProjectName()}function N2({fileName:e,textSpan:t}){return{fileName:e,pos:t.start}}function wZ(e,t){return l2(e,t.getSourceMapper(),r=>t.projectService.fileExists(r))}function $Oe(e,t){return y5(e,t.getSourceMapper(),r=>t.projectService.fileExists(r))}function hlt(e,t){return IX(e,t.getSourceMapper(),r=>t.projectService.fileExists(r))}function Nh(e,t){return{start:t.positionToLineOffset(e.start),end:t.positionToLineOffset(Kl(e))}}function age(e,t,r){const i=Nh(e,r),o=t&&Nh(t,r);return o?{...i,contextStart:o.start,contextEnd:o.end}:i}function glt(e,t){return{start:QOe(t,e.span.start),end:QOe(t,Kl(e.span)),newText:e.newText}}function QOe(e,t){return $he(e)?ylt(e.getLineAndCharacterOfPosition(t)):e.positionToLineOffset(t)}function vlt(e,t){const r=e.ranges.map(i=>({start:t.positionToLineOffset(i.start),end:t.positionToLineOffset(i.start+i.length)}));return e.wordPattern?{ranges:r,wordPattern:e.wordPattern}:{ranges:r}}function ylt(e){return{line:e.line+1,offset:e.character+1}}function blt(e){N.assert(e.textChanges.length===1);const t=Ha(e.textChanges);return N.assert(t.span.start===0&&t.span.length===0),{fileName:e.fileName,textChanges:[{start:{line:0,offset:0},end:{line:0,offset:0},newText:t.newText}]}}function sge(e,t,r,i){const o=Elt(e,t,i),{line:s,character:l}=Kx(DA(o),r);return{line:s+1,offset:l+1}}function Elt(e,t,r){for(const{fileName:i,textChanges:o}of r)if(i===t)for(let s=o.length-1;s>=0;s--){const{newText:l,span:{start:u,length:p}}=o[s];e=e.slice(0,u)+l+e.slice(u+p)}return e}function ZOe(e,{fileName:t,textSpan:r,contextSpan:i,isWriteAccess:o,isDefinition:s},{disableLineTextInReferences:l}){const u=N.checkDefined(e.getScriptInfo(t)),p=age(r,i,u),h=l?void 0:Slt(u,p);return{file:t,...p,lineText:h,isWriteAccess:o,isDefinition:s}}function Slt(e,t){const r=e.lineToTextSpan(t.start.line-1);return e.getSnapshot().getText(r.start,Kl(r)).replace(/\r|\n/g,"")}function Tlt(e){return e===void 0||e&&typeof e=="object"&&typeof e.exportName=="string"&&(e.fileName===void 0||typeof e.fileName=="string")&&(e.ambientModuleName===void 0||typeof e.ambientModuleName=="string"&&(e.isPackageJsonImport===void 0||typeof e.isPackageJsonImport=="boolean"))}var lge,cge,e8e,uge,t8e,dge,Alt=T({"src/server/session.ts"(){db(),_T(),Fhe(),lge={isCancellationRequested:()=>!1,setRequest:()=>{},resetRequest:()=>{}},cge=_Z,e8e=class{constructor(e){this.operationHost=e}startNew(e){this.complete(),this.requestId=this.operationHost.getCurrentRequestId(),this.executeAction(e)}complete(){this.requestId!==void 0&&(this.operationHost.sendRequestCompletedEvent(this.requestId),this.requestId=void 0),this.setTimerHandle(void 0),this.setImmediateId(void 0)}immediate(e,t){const r=this.requestId;N.assert(r===this.operationHost.getCurrentRequestId(),"immediate: incorrect request id"),this.setImmediateId(this.operationHost.getServerHost().setImmediate(()=>{this.immediateId=void 0,this.operationHost.executeWithRequestId(r,()=>this.executeAction(t))},e))}delay(e,t,r){const i=this.requestId;N.assert(i===this.operationHost.getCurrentRequestId(),"delay: incorrect request id"),this.setTimerHandle(this.operationHost.getServerHost().setTimeout(()=>{this.timerHandle=void 0,this.operationHost.executeWithRequestId(i,()=>this.executeAction(r))},t,e))}executeAction(e){var t,r,i,o,s,l;let u=!1;try{this.operationHost.isCancellationRequested()?(u=!0,(t=sr)==null||t.instant(sr.Phase.Session,"stepCanceled",{seq:this.requestId,early:!0})):((r=sr)==null||r.push(sr.Phase.Session,"stepAction",{seq:this.requestId}),e(this),(i=sr)==null||i.pop())}catch(p){(o=sr)==null||o.popAll(),u=!0,p instanceof Hx?(s=sr)==null||s.instant(sr.Phase.Session,"stepCanceled",{seq:this.requestId}):((l=sr)==null||l.instant(sr.Phase.Session,"stepError",{seq:this.requestId,message:p.message}),this.operationHost.logError(p,`delayed processing of request ${this.requestId}`))}(u||!this.hasPendingWork())&&this.complete()}setTimerHandle(e){this.timerHandle!==void 0&&this.operationHost.getServerHost().clearTimeout(this.timerHandle),this.timerHandle=e}setImmediateId(e){this.immediateId!==void 0&&this.operationHost.getServerHost().clearImmediate(this.immediateId),this.immediateId=e}hasPendingWork(){return!!this.timerHandle||!!this.immediateId}},uge=["openExternalProject","openExternalProjects","closeExternalProject","synchronizeProjectList","emit-output","compileOnSaveAffectedFileList","compileOnSaveEmitFile","compilerOptionsDiagnostics-full","encodedSemanticClassifications-full","semanticDiagnosticsSync","suggestionDiagnosticsSync","geterrForProject","reload","reloadProjects","getCodeFixes","getCodeFixes-full","getCombinedCodeFix","getCombinedCodeFix-full","applyCodeActionCommand","getSupportedCodeFixes","getApplicableRefactors","getMoveToRefactoringFileSuggestions","getEditsForRefactor","getEditsForRefactor-full","organizeImports","organizeImports-full","getEditsForFileRename","getEditsForFileRename-full","prepareCallHierarchy","provideCallHierarchyIncomingCalls","provideCallHierarchyOutgoingCalls"],t8e=[...uge,"definition","definition-full","definitionAndBoundSpan","definitionAndBoundSpan-full","typeDefinition","implementation","implementation-full","references","references-full","rename","renameLocations-full","rename-full","quickinfo","quickinfo-full","completionInfo","completions","completions-full","completionEntryDetails","completionEntryDetails-full","signatureHelp","signatureHelp-full","navto","navto-full","documentHighlights","documentHighlights-full"],dge=class wte{constructor(t){this.changeSeq=0,this.handlers=new Map(Object.entries({status:()=>{const s={version:Re};return this.requiredResponse(s)},openExternalProject:s=>(this.projectService.openExternalProject(s.arguments,!0),this.requiredResponse(!0)),openExternalProjects:s=>(this.projectService.openExternalProjects(s.arguments.projects),this.requiredResponse(!0)),closeExternalProject:s=>(this.projectService.closeExternalProject(s.arguments.projectFileName,!0),this.requiredResponse(!0)),synchronizeProjectList:s=>{const l=this.projectService.synchronizeProjectList(s.arguments.knownProjects,s.arguments.includeProjectReferenceRedirectInfo);if(!l.some(p=>p.projectErrors&&p.projectErrors.length!==0))return this.requiredResponse(l);const u=wt(l,p=>!p.projectErrors||p.projectErrors.length===0?p:{info:p.info,changes:p.changes,files:p.files,projectErrors:this.convertToDiagnosticsWithLinePosition(p.projectErrors,void 0)});return this.requiredResponse(u)},updateOpen:s=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(s.arguments.openFiles&&Ia(s.arguments.openFiles,l=>({fileName:l.file,content:l.fileContent,scriptKind:l.scriptKindName,projectRootPath:l.projectRootPath})),s.arguments.changedFiles&&Ia(s.arguments.changedFiles,l=>({fileName:l.fileName,changes:Pg(dG(l.textChanges),u=>{const p=N.checkDefined(this.projectService.getScriptInfo(l.fileName)),h=p.lineOffsetToPosition(u.start.line,u.start.offset),m=p.lineOffsetToPosition(u.end.line,u.end.offset);return h>=0?{span:{start:h,length:m-h},newText:u.newText}:void 0})})),s.arguments.closedFiles),this.requiredResponse(!0)),applyChangedToOpenFiles:s=>(this.changeSeq++,this.projectService.applyChangesInOpenFiles(s.arguments.openFiles,s.arguments.changedFiles&&Ia(s.arguments.changedFiles,l=>({fileName:l.fileName,changes:dG(l.changes)})),s.arguments.closedFiles),this.requiredResponse(!0)),exit:()=>(this.exit(),this.notRequired()),definition:s=>this.requiredResponse(this.getDefinition(s.arguments,!0)),"definition-full":s=>this.requiredResponse(this.getDefinition(s.arguments,!1)),definitionAndBoundSpan:s=>this.requiredResponse(this.getDefinitionAndBoundSpan(s.arguments,!0)),"definitionAndBoundSpan-full":s=>this.requiredResponse(this.getDefinitionAndBoundSpan(s.arguments,!1)),findSourceDefinition:s=>this.requiredResponse(this.findSourceDefinition(s.arguments)),"emit-output":s=>this.requiredResponse(this.getEmitOutput(s.arguments)),typeDefinition:s=>this.requiredResponse(this.getTypeDefinition(s.arguments)),implementation:s=>this.requiredResponse(this.getImplementation(s.arguments,!0)),"implementation-full":s=>this.requiredResponse(this.getImplementation(s.arguments,!1)),references:s=>this.requiredResponse(this.getReferences(s.arguments,!0)),"references-full":s=>this.requiredResponse(this.getReferences(s.arguments,!1)),rename:s=>this.requiredResponse(this.getRenameLocations(s.arguments,!0)),"renameLocations-full":s=>this.requiredResponse(this.getRenameLocations(s.arguments,!1)),"rename-full":s=>this.requiredResponse(this.getRenameInfo(s.arguments)),open:s=>(this.openClientFile(ml(s.arguments.file),s.arguments.fileContent,xZ(s.arguments.scriptKindName),s.arguments.projectRootPath?ml(s.arguments.projectRootPath):void 0),this.notRequired()),quickinfo:s=>this.requiredResponse(this.getQuickInfoWorker(s.arguments,!0)),"quickinfo-full":s=>this.requiredResponse(this.getQuickInfoWorker(s.arguments,!1)),getOutliningSpans:s=>this.requiredResponse(this.getOutliningSpans(s.arguments,!0)),outliningSpans:s=>this.requiredResponse(this.getOutliningSpans(s.arguments,!1)),todoComments:s=>this.requiredResponse(this.getTodoComments(s.arguments)),indentation:s=>this.requiredResponse(this.getIndentation(s.arguments)),nameOrDottedNameSpan:s=>this.requiredResponse(this.getNameOrDottedNameSpan(s.arguments)),breakpointStatement:s=>this.requiredResponse(this.getBreakpointStatement(s.arguments)),braceCompletion:s=>this.requiredResponse(this.isValidBraceCompletion(s.arguments)),docCommentTemplate:s=>this.requiredResponse(this.getDocCommentTemplate(s.arguments)),getSpanOfEnclosingComment:s=>this.requiredResponse(this.getSpanOfEnclosingComment(s.arguments)),fileReferences:s=>this.requiredResponse(this.getFileReferences(s.arguments,!0)),"fileReferences-full":s=>this.requiredResponse(this.getFileReferences(s.arguments,!1)),format:s=>this.requiredResponse(this.getFormattingEditsForRange(s.arguments)),formatonkey:s=>this.requiredResponse(this.getFormattingEditsAfterKeystroke(s.arguments)),"format-full":s=>this.requiredResponse(this.getFormattingEditsForDocumentFull(s.arguments)),"formatonkey-full":s=>this.requiredResponse(this.getFormattingEditsAfterKeystrokeFull(s.arguments)),"formatRange-full":s=>this.requiredResponse(this.getFormattingEditsForRangeFull(s.arguments)),completionInfo:s=>this.requiredResponse(this.getCompletions(s.arguments,"completionInfo")),completions:s=>this.requiredResponse(this.getCompletions(s.arguments,"completions")),"completions-full":s=>this.requiredResponse(this.getCompletions(s.arguments,"completions-full")),completionEntryDetails:s=>this.requiredResponse(this.getCompletionEntryDetails(s.arguments,!1)),"completionEntryDetails-full":s=>this.requiredResponse(this.getCompletionEntryDetails(s.arguments,!0)),compileOnSaveAffectedFileList:s=>this.requiredResponse(this.getCompileOnSaveAffectedFileList(s.arguments)),compileOnSaveEmitFile:s=>this.requiredResponse(this.emitFile(s.arguments)),signatureHelp:s=>this.requiredResponse(this.getSignatureHelpItems(s.arguments,!0)),"signatureHelp-full":s=>this.requiredResponse(this.getSignatureHelpItems(s.arguments,!1)),"compilerOptionsDiagnostics-full":s=>this.requiredResponse(this.getCompilerOptionsDiagnostics(s.arguments)),"encodedSyntacticClassifications-full":s=>this.requiredResponse(this.getEncodedSyntacticClassifications(s.arguments)),"encodedSemanticClassifications-full":s=>this.requiredResponse(this.getEncodedSemanticClassifications(s.arguments)),cleanup:()=>(this.cleanup(),this.requiredResponse(!0)),semanticDiagnosticsSync:s=>this.requiredResponse(this.getSemanticDiagnosticsSync(s.arguments)),syntacticDiagnosticsSync:s=>this.requiredResponse(this.getSyntacticDiagnosticsSync(s.arguments)),suggestionDiagnosticsSync:s=>this.requiredResponse(this.getSuggestionDiagnosticsSync(s.arguments)),geterr:s=>(this.errorCheck.startNew(l=>this.getDiagnostics(l,s.arguments.delay,s.arguments.files)),this.notRequired()),geterrForProject:s=>(this.errorCheck.startNew(l=>this.getDiagnosticsForProject(l,s.arguments.delay,s.arguments.file)),this.notRequired()),change:s=>(this.change(s.arguments),this.notRequired()),configure:s=>(this.projectService.setHostConfiguration(s.arguments),this.doOutput(void 0,"configure",s.seq,!0),this.notRequired()),reload:s=>(this.reload(s.arguments,s.seq),this.requiredResponse({reloadFinished:!0})),saveto:s=>{const l=s.arguments;return this.saveToTmp(l.file,l.tmpfile),this.notRequired()},close:s=>{const l=s.arguments;return this.closeClientFile(l.file),this.notRequired()},navto:s=>this.requiredResponse(this.getNavigateToItems(s.arguments,!0)),"navto-full":s=>this.requiredResponse(this.getNavigateToItems(s.arguments,!1)),brace:s=>this.requiredResponse(this.getBraceMatching(s.arguments,!0)),"brace-full":s=>this.requiredResponse(this.getBraceMatching(s.arguments,!1)),navbar:s=>this.requiredResponse(this.getNavigationBarItems(s.arguments,!0)),"navbar-full":s=>this.requiredResponse(this.getNavigationBarItems(s.arguments,!1)),navtree:s=>this.requiredResponse(this.getNavigationTree(s.arguments,!0)),"navtree-full":s=>this.requiredResponse(this.getNavigationTree(s.arguments,!1)),documentHighlights:s=>this.requiredResponse(this.getDocumentHighlights(s.arguments,!0)),"documentHighlights-full":s=>this.requiredResponse(this.getDocumentHighlights(s.arguments,!1)),compilerOptionsForInferredProjects:s=>(this.setCompilerOptionsForInferredProjects(s.arguments),this.requiredResponse(!0)),projectInfo:s=>this.requiredResponse(this.getProjectInfo(s.arguments)),reloadProjects:()=>(this.projectService.reloadProjects(),this.notRequired()),jsxClosingTag:s=>this.requiredResponse(this.getJsxClosingTag(s.arguments)),linkedEditingRange:s=>this.requiredResponse(this.getLinkedEditingRange(s.arguments)),getCodeFixes:s=>this.requiredResponse(this.getCodeFixes(s.arguments,!0)),"getCodeFixes-full":s=>this.requiredResponse(this.getCodeFixes(s.arguments,!1)),getCombinedCodeFix:s=>this.requiredResponse(this.getCombinedCodeFix(s.arguments,!0)),"getCombinedCodeFix-full":s=>this.requiredResponse(this.getCombinedCodeFix(s.arguments,!1)),applyCodeActionCommand:s=>this.requiredResponse(this.applyCodeActionCommand(s.arguments)),getSupportedCodeFixes:s=>this.requiredResponse(this.getSupportedCodeFixes(s.arguments)),getApplicableRefactors:s=>this.requiredResponse(this.getApplicableRefactors(s.arguments)),getEditsForRefactor:s=>this.requiredResponse(this.getEditsForRefactor(s.arguments,!0)),getMoveToRefactoringFileSuggestions:s=>this.requiredResponse(this.getMoveToRefactoringFileSuggestions(s.arguments)),"getEditsForRefactor-full":s=>this.requiredResponse(this.getEditsForRefactor(s.arguments,!1)),organizeImports:s=>this.requiredResponse(this.organizeImports(s.arguments,!0)),"organizeImports-full":s=>this.requiredResponse(this.organizeImports(s.arguments,!1)),getEditsForFileRename:s=>this.requiredResponse(this.getEditsForFileRename(s.arguments,!0)),"getEditsForFileRename-full":s=>this.requiredResponse(this.getEditsForFileRename(s.arguments,!1)),configurePlugin:s=>(this.configurePlugin(s.arguments),this.doOutput(void 0,"configurePlugin",s.seq,!0),this.notRequired()),selectionRange:s=>this.requiredResponse(this.getSmartSelectionRange(s.arguments,!0)),"selectionRange-full":s=>this.requiredResponse(this.getSmartSelectionRange(s.arguments,!1)),prepareCallHierarchy:s=>this.requiredResponse(this.prepareCallHierarchy(s.arguments)),provideCallHierarchyIncomingCalls:s=>this.requiredResponse(this.provideCallHierarchyIncomingCalls(s.arguments)),provideCallHierarchyOutgoingCalls:s=>this.requiredResponse(this.provideCallHierarchyOutgoingCalls(s.arguments)),toggleLineComment:s=>this.requiredResponse(this.toggleLineComment(s.arguments,!0)),"toggleLineComment-full":s=>this.requiredResponse(this.toggleLineComment(s.arguments,!1)),toggleMultilineComment:s=>this.requiredResponse(this.toggleMultilineComment(s.arguments,!0)),"toggleMultilineComment-full":s=>this.requiredResponse(this.toggleMultilineComment(s.arguments,!1)),commentSelection:s=>this.requiredResponse(this.commentSelection(s.arguments,!0)),"commentSelection-full":s=>this.requiredResponse(this.commentSelection(s.arguments,!1)),uncommentSelection:s=>this.requiredResponse(this.uncommentSelection(s.arguments,!0)),"uncommentSelection-full":s=>this.requiredResponse(this.uncommentSelection(s.arguments,!1)),provideInlayHints:s=>this.requiredResponse(this.provideInlayHints(s.arguments))})),this.host=t.host,this.cancellationToken=t.cancellationToken,this.typingsInstaller=t.typingsInstaller||qz,this.byteLength=t.byteLength,this.hrtime=t.hrtime,this.logger=t.logger,this.canUseEvents=t.canUseEvents,this.suppressDiagnosticEvents=t.suppressDiagnosticEvents,this.noGetErrOnBackgroundUpdate=t.noGetErrOnBackgroundUpdate;const{throttleWaitMilliseconds:r}=t;this.eventHandler=this.canUseEvents?t.eventHandler||(s=>this.defaultEventHandler(s)):void 0;const i={executeWithRequestId:(s,l)=>this.executeWithRequestId(s,l),getCurrentRequestId:()=>this.currentRequestId,getServerHost:()=>this.host,logError:(s,l)=>this.logError(s,l),sendRequestCompletedEvent:s=>this.sendRequestCompletedEvent(s),isCancellationRequested:()=>this.cancellationToken.isCancellationRequested()};this.errorCheck=new e8e(i);const o={host:this.host,logger:this.logger,cancellationToken:this.cancellationToken,useSingleInferredProject:t.useSingleInferredProject,useInferredProjectPerProjectRoot:t.useInferredProjectPerProjectRoot,typingsInstaller:this.typingsInstaller,throttleWaitMilliseconds:r,eventHandler:this.eventHandler,suppressDiagnosticEvents:this.suppressDiagnosticEvents,globalPlugins:t.globalPlugins,pluginProbeLocations:t.pluginProbeLocations,allowLocalPluginLoads:t.allowLocalPluginLoads,typesMapLocation:t.typesMapLocation,serverMode:t.serverMode,session:this,canUseWatchEvents:t.canUseWatchEvents,incrementalVerifier:t.incrementalVerifier};switch(this.projectService=new MZ(o),this.projectService.setPerformanceEventHandler(this.performanceEventHandler.bind(this)),this.gcTimer=new mZ(this.host,7e3,this.logger),this.projectService.serverMode){case 0:break;case 1:uge.forEach(s=>this.handlers.set(s,l=>{throw new Error(`Request: ${l.command} not allowed in LanguageServiceMode.PartialSemantic`)}));break;case 2:t8e.forEach(s=>this.handlers.set(s,l=>{throw new Error(`Request: ${l.command} not allowed in LanguageServiceMode.Syntactic`)}));break;default:N.assertNever(this.projectService.serverMode)}}sendRequestCompletedEvent(t){this.event({request_seq:t},"requestCompleted")}addPerformanceData(t,r){this.performanceData||(this.performanceData={}),this.performanceData[t]=(this.performanceData[t]??0)+r}performanceEventHandler(t){switch(t.kind){case"UpdateGraph":this.addPerformanceData("updateGraphDurationMs",t.durationMs);break;case"CreatePackageJsonAutoImportProvider":this.addPerformanceData("createAutoImportProviderProgramDurationMs",t.durationMs);break}}defaultEventHandler(t){switch(t.eventName){case v8:this.projectsUpdatedInBackgroundEvent(t.data.openFiles);break;case $z:this.event({projectName:t.data.project.getProjectName(),reason:t.data.reason},t.eventName);break;case Qz:this.event({projectName:t.data.project.getProjectName()},t.eventName);break;case Zz:case r9:case i9:case o9:this.event(t.data,t.eventName);break;case e9:this.event({triggerFile:t.data.triggerFile,configFile:t.data.configFileName,diagnostics:wt(t.data.diagnostics,r=>b8(r,!0))},t.eventName);break;case t9:{this.event({projectName:t.data.project.getProjectName(),languageServiceEnabled:t.data.languageServiceEnabled},t.eventName);break}case n9:{this.event({telemetryEventName:t.eventName,payload:t.data},"telemetry");break}}}projectsUpdatedInBackgroundEvent(t){this.projectService.logger.info(`got projects updated in background ${t}`),t.length&&(!this.suppressDiagnosticEvents&&!this.noGetErrOnBackgroundUpdate&&(this.projectService.logger.info(`Queueing diagnostics update for ${t}`),this.errorCheck.startNew(r=>this.updateErrorCheck(r,t,100,!0))),this.event({openFiles:t},v8))}logError(t,r){this.logErrorWorker(t,r)}logErrorWorker(t,r,i){let o="Exception on executing command "+r;if(t.message&&(o+=`:
+`+t2(t.message),t.stack&&(o+=`
+`+t2(t.stack))),this.logger.hasLevel(3)){if(i)try{const{file:s,project:l}=this.getFileAndProject(i),u=l.getScriptInfoForNormalizedPath(s);if(u){const p=RD(u.getSnapshot());o+=`
+
+File text of ${i.file}:${t2(p)}
+`}}catch{}if(t.ProgramFiles){o+=`
+
+Program files: ${JSON.stringify(t.ProgramFiles)}
+`,o+=`
+
+Projects::
+`;let s=0;const l=u=>{o+=`
+Project '${u.projectName}' (${D2[u.projectKind]}) ${s}
+`,o+=u.filesToString(!0),o+=`
+-----------------------------------------------
+`,s++};this.projectService.externalProjects.forEach(l),this.projectService.configuredProjects.forEach(l),this.projectService.inferredProjects.forEach(l)}}this.logger.msg(o,"Err")}send(t){if(t.type==="event"&&!this.canUseEvents){this.logger.hasLevel(3)&&this.logger.info(`Session does not support events: ignored event: ${O0(t)}`);return}this.writeMessage(t)}writeMessage(t){var r;const i=rge(t,this.logger,this.byteLength,this.host.newLine);(r=ad)==null||r.logEvent(`Response message size: ${i.length}`),this.host.write(i)}event(t,r){this.send(ige(r,t))}doOutput(t,r,i,o,s){const l={seq:0,type:"response",command:r,request_seq:i,success:o,performanceData:this.performanceData};if(o){let u;if(To(t))l.body=t,u=t.metadata,delete t.metadata;else if(typeof t=="object")if(t.metadata){const{metadata:p,...h}=t;l.body=h,u=p}else l.body=t;else l.body=t;u&&(l.metadata=u)}else N.assert(t===void 0);s&&(l.message=s),this.send(l)}semanticCheck(t,r){var i,o;(i=sr)==null||i.push(sr.Phase.Session,"semanticCheck",{file:t,configFilePath:r.canonicalConfigFilePath});const s=JOe(r,t)?gc:r.getLanguageService().getSemanticDiagnostics(t).filter(l=>!!l.file);this.sendDiagnosticsEvent(t,r,s,"semanticDiag"),(o=sr)==null||o.pop()}syntacticCheck(t,r){var i,o;(i=sr)==null||i.push(sr.Phase.Session,"syntacticCheck",{file:t,configFilePath:r.canonicalConfigFilePath}),this.sendDiagnosticsEvent(t,r,r.getLanguageService().getSyntacticDiagnostics(t),"syntaxDiag"),(o=sr)==null||o.pop()}suggestionCheck(t,r){var i,o;(i=sr)==null||i.push(sr.Phase.Session,"suggestionCheck",{file:t,configFilePath:r.canonicalConfigFilePath}),this.sendDiagnosticsEvent(t,r,r.getLanguageService().getSuggestionDiagnostics(t),"suggestionDiag"),(o=sr)==null||o.pop()}sendDiagnosticsEvent(t,r,i,o){try{this.event({file:t,diagnostics:i.map(s=>KOe(t,r,s))},o)}catch(s){this.logError(s,o)}}updateErrorCheck(t,r,i,o=!0){N.assert(!this.suppressDiagnosticEvents);const s=this.changeSeq,l=Math.min(i,200);let u=0;const p=()=>{u++,r.length>u&&t.delay("checkOne",l,h)},h=()=>{if(this.changeSeq!==s)return;let m=r[u];if(Po(m)&&(m=this.toPendingErrorCheck(m),!m)){p();return}const{fileName:b,project:A}=m;if(jp(A),!!A.containsFile(b,o)&&(this.syntacticCheck(b,A),this.changeSeq===s)){if(A.projectService.serverMode!==0){p();return}t.immediate("semanticCheck",()=>{if(this.semanticCheck(b,A),this.changeSeq===s){if(this.getPreferences(b).disableSuggestions){p();return}t.immediate("suggestionCheck",()=>{this.suggestionCheck(b,A),p()})}})}};r.length>u&&this.changeSeq===s&&t.delay("checkOne",i,h)}cleanProjects(t,r){if(r){this.logger.info(`cleaning ${t}`);for(const i of r)i.getLanguageService(!1).cleanupSemanticCache(),i.cleanupProgram()}}cleanup(){this.cleanProjects("inferred projects",this.projectService.inferredProjects),this.cleanProjects("configured projects",zo(this.projectService.configuredProjects.values())),this.cleanProjects("external projects",this.projectService.externalProjects),this.host.gc&&(this.logger.info("host.gc()"),this.host.gc())}getEncodedSyntacticClassifications(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t);return i.getEncodedSyntacticClassifications(r,t)}getEncodedSemanticClassifications(t){const{file:r,project:i}=this.getFileAndProject(t),o=t.format==="2020"?"2020":"original";return i.getLanguageService().getEncodedSemanticClassifications(r,t,o)}getProject(t){return t===void 0?void 0:this.projectService.findProject(t)}getConfigFileAndProject(t){const r=this.getProject(t.projectFileName),i=ml(t.file);return{configFile:r&&r.hasConfigFile(i)?i:void 0,project:r}}getConfigFileDiagnostics(t,r,i){const o=r.getAllProjectErrors(),s=r.getLanguageService().getCompilerOptionsDiagnostics(),l=nr(So(o,s),u=>!!u.file&&u.file.fileName===t);return i?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(l):wt(l,u=>b8(u,!1))}convertToDiagnosticsWithLinePositionFromDiagnosticFile(t){return t.map(r=>({message:z_(r.messageText,this.host.newLine),start:r.start,length:r.length,category:mS(r),code:r.code,source:r.source,startLocation:r.file&&y8(bs(r.file,r.start)),endLocation:r.file&&y8(bs(r.file,r.start+r.length)),reportsUnnecessary:r.reportsUnnecessary,reportsDeprecated:r.reportsDeprecated,relatedInformation:wt(r.relatedInformation,LZ)}))}getCompilerOptionsDiagnostics(t){const r=this.getProject(t.projectFileName);return this.convertToDiagnosticsWithLinePosition(nr(r.getLanguageService().getCompilerOptionsDiagnostics(),i=>!i.file),void 0)}convertToDiagnosticsWithLinePosition(t,r){return t.map(i=>({message:z_(i.messageText,this.host.newLine),start:i.start,length:i.length,category:mS(i),code:i.code,source:i.source,startLocation:r&&r.positionToLineOffset(i.start),endLocation:r&&r.positionToLineOffset(i.start+i.length),reportsUnnecessary:i.reportsUnnecessary,reportsDeprecated:i.reportsDeprecated,relatedInformation:wt(i.relatedInformation,LZ)}))}getDiagnosticsWorker(t,r,i,o){const{project:s,file:l}=this.getFileAndProject(t);if(r&&JOe(s,l))return gc;const u=s.getScriptInfoForNormalizedPath(l),p=i(s,l);return o?this.convertToDiagnosticsWithLinePosition(p,u):p.map(h=>KOe(l,s,h))}getDefinition(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.getPositionInFile(t,i),l=this.mapDefinitionInfoLocations(o.getLanguageService().getDefinitionAtPosition(i,s)||gc,o);return r?this.mapDefinitionInfo(l,o):l.map(wte.mapToOriginalLocation)}mapDefinitionInfoLocations(t,r){return t.map(i=>{const o=$Oe(i,r);return o?{...o,containerKind:i.containerKind,containerName:i.containerName,kind:i.kind,name:i.name,failedAliasResolution:i.failedAliasResolution,...i.unverified&&{unverified:i.unverified}}:i})}getDefinitionAndBoundSpan(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.getPositionInFile(t,i),l=N.checkDefined(o.getScriptInfo(i)),u=o.getLanguageService().getDefinitionAndBoundSpan(i,s);if(!u||!u.definitions)return{definitions:gc,textSpan:void 0};const p=this.mapDefinitionInfoLocations(u.definitions,o),{textSpan:h}=u;return r?{definitions:this.mapDefinitionInfo(p,o),textSpan:Nh(h,l)}:{definitions:p.map(wte.mapToOriginalLocation),textSpan:h}}findSourceDefinition(t){var r;const{file:i,project:o}=this.getFileAndProject(t),s=this.getPositionInFile(t,i),l=o.getLanguageService().getDefinitionAtPosition(i,s);let u=this.mapDefinitionInfoLocations(l||gc,o).slice();if(this.projectService.serverMode===0&&(!bt(u,I=>ml(I.fileName)!==i&&!I.isAmbient)||bt(u,I=>!!I.failedAliasResolution))){const I=vG(O=>O.textSpan.start,TX(this.host.useCaseSensitiveFileNames));u==null||u.forEach(O=>I.add(O));const R=o.getNoDtsResolutionProject(i),M=R.getLanguageService(),C=(r=M.getDefinitionAtPosition(i,s,!0,!1))==null?void 0:r.filter(O=>ml(O.fileName)!==i);if(bt(C))for(const O of C){if(O.unverified){const U=b(O,o.getLanguageService().getProgram(),M.getProgram());if(bt(U)){for(const K of U)I.add(K);continue}}I.add(O)}else{const O=u.filter(U=>ml(U.fileName)!==i&&U.isAmbient);for(const U of bt(O)?O:m()){const K=h(U.fileName,i,R);if(!K)continue;const Z=this.projectService.getOrCreateScriptInfoNotOpenedByClient(K,R.currentDirectory,R.directoryStructureHost);if(!Z)continue;R.containsScriptInfo(Z)||(R.addRoot(Z),R.updateGraph());const V=M.getProgram(),se=N.checkDefined(V.getSourceFile(K));for(const G of A(U.name,se,V))I.add(G)}}u=zo(I.values())}return u=u.filter(I=>!I.isAmbient&&!I.failedAliasResolution),this.mapDefinitionInfo(u,o);function h(I,R,M){var C,O,U;const K=aW(I);if(K&&I.lastIndexOf(xh)===K.topLevelNodeModulesIndex){const Z=I.substring(0,K.packageRootIndex),V=(C=o.getModuleResolutionCache())==null?void 0:C.getPackageJsonInfoCache(),se=o.getCompilationSettings(),G=Dw(go(Z+"/package.json",o.getCurrentDirectory()),Rw(V,o,se));if(!G)return;const ne=Wq(G,{moduleResolution:2},o,o.getModuleResolutionCache()),he=I.substring(K.topLevelPackageNameIndex+1,K.packageRootIndex),ye=FP(Pw(he)),$=o.toPath(I);if(ne&&bt(ne,Y=>o.toPath(Y)===$))return(O=M.resolutionCache.resolveSingleModuleNameWithoutWatching(ye,R).resolvedModule)==null?void 0:O.resolvedFileName;{const Y=I.substring(K.packageRootIndex+1),oe=`${ye}/${Id(Y)}`;return(U=M.resolutionCache.resolveSingleModuleNameWithoutWatching(oe,R).resolvedModule)==null?void 0:U.resolvedFileName}}}function m(){const I=o.getLanguageService(),R=I.getProgram(),M=Vd(R.getSourceFile(i),s);return(ls(M)||Ve(M))&&ws(M.parent)&&Moe(M,C=>{var O;if(C===M)return;const U=(O=I.getDefinitionAtPosition(i,C.getStart(),!0,!1))==null?void 0:O.filter(K=>ml(K.fileName)!==i&&K.isAmbient).map(K=>({fileName:K.fileName,name:em(M)}));if(bt(U))return U})||gc}function b(I,R,M){var C;const O=M.getSourceFile(I.fileName);if(!O)return;const U=Vd(R.getSourceFile(i),s),K=R.getTypeChecker().getSymbolAtLocation(U),Z=K&&fl(K,276);if(!Z)return;const V=((C=Z.propertyName)==null?void 0:C.text)||Z.name.text;return A(V,O,M)}function A(I,R,M){const C=Ws.Core.getTopMostDeclarationNamesInFile(I,R);return Hi(C,O=>{const U=M.getTypeChecker().getSymbolAtLocation(O),K=NC(O);if(U&&K)return UD.createDefinitionInfo(K,M.getTypeChecker(),U,K,!0)})}}getEmitOutput(t){const{file:r,project:i}=this.getFileAndProject(t);if(!i.shouldEmitFile(i.getScriptInfo(r)))return{emitSkipped:!0,outputFiles:[],diagnostics:[]};const o=i.getLanguageService().getEmitOutput(r);return t.richResponse?{...o,diagnostics:t.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(o.diagnostics):o.diagnostics.map(s=>b8(s,!0))}:o}mapJSDocTagInfo(t,r,i){return t?t.map(o=>{var s;return{...o,text:i?this.mapDisplayParts(o.text,r):(s=o.text)==null?void 0:s.map(l=>l.text).join("")}}):[]}mapDisplayParts(t,r){return t?t.map(i=>i.kind!=="linkName"?i:{...i,target:this.toFileSpan(i.target.fileName,i.target.textSpan,r)}):[]}mapSignatureHelpItems(t,r,i){return t.map(o=>({...o,documentation:this.mapDisplayParts(o.documentation,r),parameters:o.parameters.map(s=>({...s,documentation:this.mapDisplayParts(s.documentation,r)})),tags:this.mapJSDocTagInfo(o.tags,r,i)}))}mapDefinitionInfo(t,r){return t.map(i=>({...this.toFileSpanWithContext(i.fileName,i.textSpan,i.contextSpan,r),...i.unverified&&{unverified:i.unverified}}))}static mapToOriginalLocation(t){return t.originalFileName?(N.assert(t.originalTextSpan!==void 0,"originalTextSpan should be present if originalFileName is"),{...t,fileName:t.originalFileName,textSpan:t.originalTextSpan,targetFileName:t.fileName,targetTextSpan:t.textSpan,contextSpan:t.originalContextSpan,targetContextSpan:t.contextSpan}):t}toFileSpan(t,r,i){const o=i.getLanguageService(),s=o.toLineColumnOffset(t,r.start),l=o.toLineColumnOffset(t,Kl(r));return{file:t,start:{line:s.line+1,offset:s.character+1},end:{line:l.line+1,offset:l.character+1}}}toFileSpanWithContext(t,r,i,o){const s=this.toFileSpan(t,r,o),l=i&&this.toFileSpan(t,i,o);return l?{...s,contextStart:l.start,contextEnd:l.end}:s}getTypeDefinition(t){const{file:r,project:i}=this.getFileAndProject(t),o=this.getPositionInFile(t,r),s=this.mapDefinitionInfoLocations(i.getLanguageService().getTypeDefinitionAtPosition(r,o)||gc,i);return this.mapDefinitionInfo(s,i)}mapImplementationLocations(t,r){return t.map(i=>{const o=$Oe(i,r);return o?{...o,kind:i.kind,displayParts:i.displayParts}:i})}getImplementation(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.getPositionInFile(t,i),l=this.mapImplementationLocations(o.getLanguageService().getImplementationAtPosition(i,s)||gc,o);return r?l.map(({fileName:u,textSpan:p,contextSpan:h})=>this.toFileSpanWithContext(u,p,h,o)):l.map(wte.mapToOriginalLocation)}getSyntacticDiagnosticsSync(t){const{configFile:r}=this.getConfigFileAndProject(t);return r?gc:this.getDiagnosticsWorker(t,!1,(i,o)=>i.getLanguageService().getSyntacticDiagnostics(o),!!t.includeLinePosition)}getSemanticDiagnosticsSync(t){const{configFile:r,project:i}=this.getConfigFileAndProject(t);return r?this.getConfigFileDiagnostics(r,i,!!t.includeLinePosition):this.getDiagnosticsWorker(t,!0,(o,s)=>o.getLanguageService().getSemanticDiagnostics(s).filter(l=>!!l.file),!!t.includeLinePosition)}getSuggestionDiagnosticsSync(t){const{configFile:r}=this.getConfigFileAndProject(t);return r?gc:this.getDiagnosticsWorker(t,!0,(i,o)=>i.getLanguageService().getSuggestionDiagnostics(o),!!t.includeLinePosition)}getJsxClosingTag(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.getPositionInFile(t,r),s=i.getJsxClosingTagAtPosition(r,o);return s===void 0?void 0:{newText:s.newText,caretOffset:0}}getLinkedEditingRange(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.getPositionInFile(t,r),s=i.getLinkedEditingRangeAtPosition(r,o),l=this.projectService.getScriptInfoForNormalizedPath(r);if(!(l===void 0||s===void 0))return vlt(s,l)}getDocumentHighlights(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.getPositionInFile(t,i),l=o.getLanguageService().getDocumentHighlights(i,s,t.filesToSearch);return l?r?l.map(({fileName:u,highlightSpans:p})=>{const h=o.getScriptInfo(u);return{file:u,highlightSpans:p.map(({textSpan:m,kind:b,contextSpan:A})=>({...age(m,A,h),kind:b}))}}):l:gc}provideInlayHints(t){const{file:r,project:i}=this.getFileAndProject(t),o=this.projectService.getScriptInfoForNormalizedPath(r);return i.getLanguageService().provideInlayHints(r,t,this.getPreferences(r)).map(l=>{const{position:u,displayParts:p}=l;return{...l,position:o.positionToLineOffset(u),displayParts:p==null?void 0:p.map(({text:h,span:m,file:b})=>{if(m){N.assertIsDefined(b,"Target file should be defined together with its span.");const A=this.projectService.getScriptInfo(b);return{text:h,span:{start:A.positionToLineOffset(m.start),end:A.positionToLineOffset(m.start+m.length),file:b}}}else return{text:h}})}})}setCompilerOptionsForInferredProjects(t){this.projectService.setCompilerOptionsForInferredProjects(t.options,t.projectRootPath)}getProjectInfo(t){return this.getProjectInfoWorker(t.file,t.projectFileName,t.needFileNameList,!1)}getProjectInfoWorker(t,r,i,o){const{project:s}=this.getFileAndProjectWorker(t,r);return jp(s),{configFileName:s.getProjectName(),languageServiceDisabled:!s.languageServiceEnabled,fileNames:i?s.getFileNames(!1,o):void 0}}getRenameInfo(t){const{file:r,project:i}=this.getFileAndProject(t),o=this.getPositionInFile(t,r),s=this.getPreferences(r);return i.getLanguageService().getRenameInfo(r,o,s)}getProjects(t,r,i){let o,s;if(t.projectFileName){const l=this.getProject(t.projectFileName);l&&(o=[l])}else{const l=r?this.projectService.getScriptInfoEnsuringProjectsUptoDate(t.file):this.projectService.getScriptInfo(t.file);if(l)r||this.projectService.ensureDefaultProjectForFile(l);else return i?gc:(this.projectService.logErrorForScriptInfoNotFound(t.file),oy.ThrowNoProject());o=l.containingProjects,s=this.projectService.getSymlinkedProjects(l)}return o=nr(o,l=>l.languageServiceEnabled&&!l.isOrphan()),!i&&(!o||!o.length)&&!s?(this.projectService.logErrorForScriptInfoNotFound(t.file??t.projectFileName),oy.ThrowNoProject()):s?{projects:o,symLinkedProjects:s}:o}getDefaultProject(t){if(t.projectFileName){const i=this.getProject(t.projectFileName);if(i)return i;if(!t.file)return oy.ThrowNoProject()}return this.projectService.getScriptInfo(t.file).getDefaultProject()}getRenameLocations(t,r){const i=ml(t.file),o=this.getPositionInFile(t,i),s=this.getProjects(t),l=this.getDefaultProject(t),u=this.getPreferences(i),p=this.mapRenameInfo(l.getLanguageService().getRenameInfo(i,o,u),N.checkDefined(this.projectService.getScriptInfo(i)));if(!p.canRename)return r?{info:p,locs:[]}:[];const h=dlt(s,l,{fileName:t.file,pos:o},!!t.findInStrings,!!t.findInComments,u,this.host.useCaseSensitiveFileNames);return r?{info:p,locs:this.toSpanGroups(h)}:h}mapRenameInfo(t,r){if(t.canRename){const{canRename:i,fileToRename:o,displayName:s,fullDisplayName:l,kind:u,kindModifiers:p,triggerSpan:h}=t;return{canRename:i,fileToRename:o,displayName:s,fullDisplayName:l,kind:u,kindModifiers:p,triggerSpan:Nh(h,r)}}else return t}toSpanGroups(t){const r=new Map;for(const{fileName:i,textSpan:o,contextSpan:s,originalContextSpan:l,originalTextSpan:u,originalFileName:p,...h}of t){let m=r.get(i);m||r.set(i,m={file:i,locs:[]});const b=N.checkDefined(this.projectService.getScriptInfo(i));m.locs.push({...age(o,s,b),...h})}return zo(r.values())}getReferences(t,r){const i=ml(t.file),o=this.getProjects(t),s=this.getPositionInFile(t,i),l=flt(o,this.getDefaultProject(t),{fileName:t.file,pos:s},this.host.useCaseSensitiveFileNames,this.logger);if(!r)return l;const u=this.getPreferences(i),p=this.getDefaultProject(t),h=p.getScriptInfoForNormalizedPath(i),m=p.getLanguageService().getQuickInfoAtPosition(i,s),b=m?jO(m.displayParts):"",A=m&&m.textSpan,I=A?h.positionToLineOffset(A.start).offset:0,R=A?h.getSnapshot().getText(A.start,Kl(A)):"";return{refs:Pi(l,C=>C.references.map(O=>ZOe(this.projectService,O,u))),symbolName:R,symbolStartOffset:I,symbolDisplayString:b}}getFileReferences(t,r){const i=this.getProjects(t),o=t.file,s=this.getPreferences(ml(o)),l=[],u=kZ(this.host.useCaseSensitiveFileNames);return oge(i,void 0,h=>{if(h.getCancellationToken().isCancellationRequested())return;const m=h.getLanguageService().getFileReferences(o);if(m)for(const b of m)u.has(b)||(l.push(b),u.add(b))}),r?{refs:l.map(h=>ZOe(this.projectService,h,s)),symbolName:`"${t.file}"`}:l}openClientFile(t,r,i,o){this.projectService.openClientFileWithNormalizedPath(t,r,i,!1,o)}getPosition(t,r){return t.position!==void 0?t.position:r.lineOffsetToPosition(t.line,t.offset)}getPositionInFile(t,r){const i=this.projectService.getScriptInfoForNormalizedPath(r);return this.getPosition(t,i)}getFileAndProject(t){return this.getFileAndProjectWorker(t.file,t.projectFileName)}getFileAndLanguageServiceForSyntacticOperation(t){const{file:r,project:i}=this.getFileAndProject(t);return{file:r,languageService:i.getLanguageService(!1)}}getFileAndProjectWorker(t,r){const i=ml(t),o=this.getProject(r)||this.projectService.ensureDefaultProjectForFile(i);return{file:i,project:o}}getOutliningSpans(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=o.getOutliningSpans(i);if(r){const l=this.projectService.getScriptInfoForNormalizedPath(i);return s.map(u=>({textSpan:Nh(u.textSpan,l),hintSpan:Nh(u.hintSpan,l),bannerText:u.bannerText,autoCollapse:u.autoCollapse,kind:u.kind}))}else return s}getTodoComments(t){const{file:r,project:i}=this.getFileAndProject(t);return i.getLanguageService().getTodoComments(r,t.descriptors)}getDocCommentTemplate(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.getPositionInFile(t,r);return i.getDocCommentTemplateAtPosition(r,o,this.getPreferences(r),this.getFormatOptions(r))}getSpanOfEnclosingComment(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=t.onlyMultiLine,s=this.getPositionInFile(t,r);return i.getSpanOfEnclosingComment(r,s,o)}getIndentation(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.getPositionInFile(t,r),s=t.options?YD(t.options):this.getFormatOptions(r),l=i.getIndentationAtPosition(r,o,s);return{position:o,indentation:l}}getBreakpointStatement(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.getPositionInFile(t,r);return i.getBreakpointStatementAtPosition(r,o)}getNameOrDottedNameSpan(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.getPositionInFile(t,r);return i.getNameOrDottedNameSpan(r,o,o)}isValidBraceCompletion(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.getPositionInFile(t,r);return i.isValidBraceCompletionAtPosition(r,o,t.openingBrace.charCodeAt(0))}getQuickInfoWorker(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=o.getLanguageService().getQuickInfoAtPosition(i,this.getPosition(t,s));if(!l)return;const u=!!this.getPreferences(i).displayPartsForJSDoc;if(r){const p=jO(l.displayParts);return{kind:l.kind,kindModifiers:l.kindModifiers,start:s.positionToLineOffset(l.textSpan.start),end:s.positionToLineOffset(Kl(l.textSpan)),displayString:p,documentation:u?this.mapDisplayParts(l.documentation,o):jO(l.documentation),tags:this.mapJSDocTagInfo(l.tags,o,u)}}else return u?l:{...l,tags:this.mapJSDocTagInfo(l.tags,o,!1)}}getFormattingEditsForRange(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.projectService.getScriptInfoForNormalizedPath(r),s=o.lineOffsetToPosition(t.line,t.offset),l=o.lineOffsetToPosition(t.endLine,t.endOffset),u=i.getFormattingEditsForRange(r,s,l,this.getFormatOptions(r));if(u)return u.map(p=>this.convertTextChangeToCodeEdit(p,o))}getFormattingEditsForRangeFull(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=t.options?YD(t.options):this.getFormatOptions(r);return i.getFormattingEditsForRange(r,t.position,t.endPosition,o)}getFormattingEditsForDocumentFull(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=t.options?YD(t.options):this.getFormatOptions(r);return i.getFormattingEditsForDocument(r,o)}getFormattingEditsAfterKeystrokeFull(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=t.options?YD(t.options):this.getFormatOptions(r);return i.getFormattingEditsAfterKeystroke(r,t.position,t.key,o)}getFormattingEditsAfterKeystroke(t){const{file:r,languageService:i}=this.getFileAndLanguageServiceForSyntacticOperation(t),o=this.projectService.getScriptInfoForNormalizedPath(r),s=o.lineOffsetToPosition(t.line,t.offset),l=this.getFormatOptions(r),u=i.getFormattingEditsAfterKeystroke(r,s,t.key,l);if(t.key===`
+`&&(!u||u.length===0||clt(u,s))){const{lineText:p,absolutePosition:h}=o.textStorage.getAbsolutePositionAndLineText(t.line);if(p&&p.search("\\S")<0){const m=i.getIndentationAtPosition(r,s,l);let b=0,A,I;for(A=0,I=p.length;A<I;A++)if(p.charAt(A)===" ")b++;else if(p.charAt(A)===" ")b+=l.tabSize;else break;if(m!==b){const R=h+A;u.push({span:pc(h,R),newText:Oc.getIndentationString(m,l)})}}}if(u)return u.map(p=>({start:o.positionToLineOffset(p.span.start),end:o.positionToLineOffset(Kl(p.span)),newText:p.newText?p.newText:""}))}getCompletions(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=this.getPosition(t,s),u=o.getLanguageService().getCompletionsAtPosition(i,l,{...Hhe(this.getPreferences(i)),triggerCharacter:t.triggerCharacter,triggerKind:t.triggerKind,includeExternalModuleExports:t.includeExternalModuleExports,includeInsertTextCompletions:t.includeInsertTextCompletions},o.projectService.getFormatCodeOptions(i));if(u===void 0)return;if(r==="completions-full")return u;const p=t.prefix||"",h=Hi(u.entries,b=>{if(u.isMemberCompletion||uo(b.name.toLowerCase(),p.toLowerCase())){const{name:A,kind:I,kindModifiers:R,sortText:M,insertText:C,filterText:O,replacementSpan:U,hasAction:K,source:Z,sourceDisplay:V,labelDetails:se,isSnippet:G,isRecommended:ne,isPackageJsonImport:he,isImportStatementCompletion:ye,data:$}=b,Y=U?Nh(U,s):void 0;return{name:A,kind:I,kindModifiers:R,sortText:M,insertText:C,filterText:O,replacementSpan:Y,isSnippet:G,hasAction:K||void 0,source:Z,sourceDisplay:V,labelDetails:se,isRecommended:ne,isPackageJsonImport:he,isImportStatementCompletion:ye,data:$}}});return r==="completions"?(u.metadata&&(h.metadata=u.metadata),h):{...u,optionalReplacementSpan:u.optionalReplacementSpan&&Nh(u.optionalReplacementSpan,s),entries:h}}getCompletionEntryDetails(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=this.getPosition(t,s),u=o.projectService.getFormatCodeOptions(i),p=!!this.getPreferences(i).displayPartsForJSDoc,h=Hi(t.entryNames,m=>{const{name:b,source:A,data:I}=typeof m=="string"?{name:m,source:void 0,data:void 0}:m;return o.getLanguageService().getCompletionEntryDetails(i,l,b,u,A,this.getPreferences(i),I?aa(I,Tlt):void 0)});return r?p?h:h.map(m=>({...m,tags:this.mapJSDocTagInfo(m.tags,o,!1)})):h.map(m=>({...m,codeActions:wt(m.codeActions,b=>this.mapCodeAction(b)),documentation:this.mapDisplayParts(m.documentation,o),tags:this.mapJSDocTagInfo(m.tags,o,p)}))}getCompileOnSaveAffectedFileList(t){const r=this.getProjects(t,!0,!0),i=this.projectService.getScriptInfo(t.file);return i?ult(i,o=>this.projectService.getScriptInfoForPath(o),r,(o,s)=>{if(!o.compileOnSaveEnabled||!o.languageServiceEnabled||o.isOrphan())return;const l=o.getCompilationSettings();if(!(l.noEmit||Su(s.fileName)&&!llt(l)))return{projectFileName:o.getProjectName(),fileNames:o.getCompileOnSaveAffectedFileList(s),projectUsesOutFile:!!Ps(l)}}):gc}emitFile(t){const{file:r,project:i}=this.getFileAndProject(t);if(i||oy.ThrowNoProject(),!i.languageServiceEnabled)return t.richResponse?{emitSkipped:!0,diagnostics:[]}:!1;const o=i.getScriptInfo(r),{emitSkipped:s,diagnostics:l}=i.emitFile(o,(u,p,h)=>this.host.writeFile(u,p,h));return t.richResponse?{emitSkipped:s,diagnostics:t.includeLinePosition?this.convertToDiagnosticsWithLinePositionFromDiagnosticFile(l):l.map(u=>b8(u,!0))}:!s}getSignatureHelpItems(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=this.getPosition(t,s),u=o.getLanguageService().getSignatureHelpItems(i,l,t),p=!!this.getPreferences(i).displayPartsForJSDoc;if(u&&r){const h=u.applicableSpan;return{...u,applicableSpan:{start:s.positionToLineOffset(h.start),end:s.positionToLineOffset(h.start+h.length)},items:this.mapSignatureHelpItems(u.items,o,p)}}else return p||!u?u:{...u,items:u.items.map(h=>({...h,tags:this.mapJSDocTagInfo(h.tags,o,!1)}))}}toPendingErrorCheck(t){const r=ml(t),i=this.projectService.tryGetDefaultProjectForFile(r);return i&&{fileName:r,project:i}}getDiagnostics(t,r,i){this.suppressDiagnosticEvents||i.length>0&&this.updateErrorCheck(t,i,r)}change(t){const r=this.projectService.getScriptInfo(t.file);N.assert(!!r),r.textStorage.switchToScriptVersionCache();const i=r.lineOffsetToPosition(t.line,t.offset),o=r.lineOffsetToPosition(t.endLine,t.endOffset);i>=0&&(this.changeSeq++,this.projectService.applyChangesToFile(r,P6({span:{start:i,length:o-i},newText:t.insertString})))}reload(t,r){const i=ml(t.file),o=t.tmpfile===void 0?void 0:ml(t.tmpfile),s=this.projectService.getScriptInfoForNormalizedPath(i);s&&(this.changeSeq++,s.reloadFromFile(o)&&this.doOutput(void 0,"reload",r,!0))}saveToTmp(t,r){const i=this.projectService.getScriptInfo(t);i&&i.saveTo(r)}closeClientFile(t){if(!t)return;const r=ga(t);this.projectService.closeClientFile(r)}mapLocationNavigationBarItems(t,r){return wt(t,i=>({text:i.text,kind:i.kind,kindModifiers:i.kindModifiers,spans:i.spans.map(o=>Nh(o,r)),childItems:this.mapLocationNavigationBarItems(i.childItems,r),indent:i.indent}))}getNavigationBarItems(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=o.getNavigationBarItems(i);return s?r?this.mapLocationNavigationBarItems(s,this.projectService.getScriptInfoForNormalizedPath(i)):s:void 0}toLocationNavigationTree(t,r){return{text:t.text,kind:t.kind,kindModifiers:t.kindModifiers,spans:t.spans.map(i=>Nh(i,r)),nameSpan:t.nameSpan&&Nh(t.nameSpan,r),childItems:wt(t.childItems,i=>this.toLocationNavigationTree(i,r))}}getNavigationTree(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=o.getNavigationTree(i);return s?r?this.toLocationNavigationTree(s,this.projectService.getScriptInfoForNormalizedPath(i)):s:void 0}getNavigateToItems(t,r){const i=this.getFullNavigateToItems(t);return r?Pi(i,({project:o,navigateToItems:s})=>s.map(l=>{const u=o.getScriptInfo(l.fileName),p={name:l.name,kind:l.kind,kindModifiers:l.kindModifiers,isCaseSensitive:l.isCaseSensitive,matchKind:l.matchKind,file:l.fileName,start:u.positionToLineOffset(l.textSpan.start),end:u.positionToLineOffset(Kl(l.textSpan))};return l.kindModifiers&&l.kindModifiers!==""&&(p.kindModifiers=l.kindModifiers),l.containerName&&l.containerName.length>0&&(p.containerName=l.containerName),l.containerKind&&l.containerKind.length>0&&(p.containerKind=l.containerKind),p})):Pi(i,({navigateToItems:o})=>o)}getFullNavigateToItems(t){const{currentFileOnly:r,searchValue:i,maxResultCount:o,projectFileName:s}=t;if(r){N.assertIsDefined(t.file);const{file:A,project:I}=this.getFileAndProject(t);return[{project:I,navigateToItems:I.getLanguageService().getNavigateToItems(i,o,A)}]}const l=this.getHostPreferences(),u=[],p=new Map;if(!t.file&&!s)this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(A=>h(A));else{const A=this.getProjects(t);oge(A,void 0,I=>h(I))}return u;function h(A){const I=A.getLanguageService().getNavigateToItems(i,o,void 0,A.isNonTsProject(),l.excludeLibrarySymbolsInNavTo),R=nr(I,M=>m(M)&&!wZ(N2(M),A));R.length&&u.push({project:A,navigateToItems:R})}function m(A){const I=A.name;if(!p.has(I))return p.set(I,[A]),!0;const R=p.get(I);for(const M of R)if(b(M,A))return!1;return R.push(A),!0}function b(A,I){return A===I?!0:!A||!I?!1:A.containerKind===I.containerKind&&A.containerName===I.containerName&&A.fileName===I.fileName&&A.isCaseSensitive===I.isCaseSensitive&&A.kind===I.kind&&A.kindModifiers===I.kindModifiers&&A.matchKind===I.matchKind&&A.name===I.name&&A.textSpan.start===I.textSpan.start&&A.textSpan.length===I.textSpan.length}}getSupportedCodeFixes(t){if(!t)return HY();if(t.file){const{file:i,project:o}=this.getFileAndProject(t);return o.getLanguageService().getSupportedCodeFixes(i)}const r=this.getProject(t.projectFileName);return r||oy.ThrowNoProject(),r.getLanguageService().getSupportedCodeFixes()}isLocation(t){return t.line!==void 0}extractPositionOrRange(t,r){let i,o;return this.isLocation(t)?i=s(t):o=this.getRange(t,r),N.checkDefined(i===void 0?o:i);function s(l){return l.position!==void 0?l.position:r.lineOffsetToPosition(l.line,l.offset)}}getRange(t,r){const{startPosition:i,endPosition:o}=this.getStartAndEndPosition(t,r);return{pos:i,end:o}}getApplicableRefactors(t){const{file:r,project:i}=this.getFileAndProject(t),o=i.getScriptInfoForNormalizedPath(r);return i.getLanguageService().getApplicableRefactors(r,this.extractPositionOrRange(t,o),this.getPreferences(r),t.triggerReason,t.kind,t.includeInteractiveActions)}getEditsForRefactor(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=o.getScriptInfoForNormalizedPath(i),l=o.getLanguageService().getEditsForRefactor(i,this.getFormatOptions(i),this.extractPositionOrRange(t,s),t.refactor,t.action,this.getPreferences(i),t.interactiveRefactorArguments);if(l===void 0)return{edits:[]};if(r){const{renameFilename:u,renameLocation:p,edits:h}=l;let m;if(u!==void 0&&p!==void 0){const b=o.getScriptInfoForNormalizedPath(ml(u));m=sge(RD(b.getSnapshot()),u,p,h)}return{renameLocation:m,renameFilename:u,edits:this.mapTextChangesToCodeEdits(h),notApplicableReason:l.notApplicableReason}}return l}getMoveToRefactoringFileSuggestions(t){const{file:r,project:i}=this.getFileAndProject(t),o=i.getScriptInfoForNormalizedPath(r);return i.getLanguageService().getMoveToRefactoringFileSuggestions(r,this.extractPositionOrRange(t,o),this.getPreferences(r))}organizeImports(t,r){N.assert(t.scope.type==="file");const{file:i,project:o}=this.getFileAndProject(t.scope.args),s=o.getLanguageService().organizeImports({fileName:i,mode:t.mode??(t.skipDestructiveCodeActions?"SortAndCombine":void 0),type:"file"},this.getFormatOptions(i),this.getPreferences(i));return r?this.mapTextChangesToCodeEdits(s):s}getEditsForFileRename(t,r){const i=ml(t.oldFilePath),o=ml(t.newFilePath),s=this.getHostFormatOptions(),l=this.getHostPreferences(),u=new Set,p=[];return this.projectService.loadAncestorProjectTree(),this.projectService.forEachEnabledProject(h=>{const m=h.getLanguageService().getEditsForFileRename(i,o,s,l),b=[];for(const A of m)u.has(A.fileName)||(p.push(A),b.push(A.fileName));for(const A of b)u.add(A)}),r?p.map(h=>this.mapTextChangeToCodeEdit(h)):p}getCodeFixes(t,r){const{file:i,project:o}=this.getFileAndProject(t),s=o.getScriptInfoForNormalizedPath(i),{startPosition:l,endPosition:u}=this.getStartAndEndPosition(t,s);let p;try{p=o.getLanguageService().getCodeFixesAtPosition(i,l,u,t.errorCodes,this.getFormatOptions(i),this.getPreferences(i))}catch(h){const m=o.getLanguageService(),b=[...m.getSyntacticDiagnostics(i),...m.getSemanticDiagnostics(i),...m.getSuggestionDiagnostics(i)].map(I=>lL(l,u-l,I.start,I.length)&&I.code),A=t.errorCodes.find(I=>!b.includes(I));throw A!==void 0&&(h.message=`BADCLIENT: Bad error code, ${A} not found in range ${l}..${u} (found: ${b.join(", ")}); could have caused this error:
+${h.message}`),h}return r?p.map(h=>this.mapCodeFixAction(h)):p}getCombinedCodeFix({scope:t,fixId:r},i){N.assert(t.type==="file");const{file:o,project:s}=this.getFileAndProject(t.args),l=s.getLanguageService().getCombinedCodeFix({type:"file",fileName:o},r,this.getFormatOptions(o),this.getPreferences(o));return i?{changes:this.mapTextChangesToCodeEdits(l.changes),commands:l.commands}:l}applyCodeActionCommand(t){const r=t.command;for(const i of SA(r)){const{file:o,project:s}=this.getFileAndProject(i);s.getLanguageService().applyCodeActionCommand(i,this.getFormatOptions(o)).then(l=>{},l=>{})}return{}}getStartAndEndPosition(t,r){let i,o;return t.startPosition!==void 0?i=t.startPosition:(i=r.lineOffsetToPosition(t.startLine,t.startOffset),t.startPosition=i),t.endPosition!==void 0?o=t.endPosition:(o=r.lineOffsetToPosition(t.endLine,t.endOffset),t.endPosition=o),{startPosition:i,endPosition:o}}mapCodeAction({description:t,changes:r,commands:i}){return{description:t,changes:this.mapTextChangesToCodeEdits(r),commands:i}}mapCodeFixAction({fixName:t,description:r,changes:i,commands:o,fixId:s,fixAllDescription:l}){return{fixName:t,description:r,changes:this.mapTextChangesToCodeEdits(i),commands:o,fixId:s,fixAllDescription:l}}mapTextChangesToCodeEdits(t){return t.map(r=>this.mapTextChangeToCodeEdit(r))}mapTextChangeToCodeEdit(t){const r=this.projectService.getScriptInfoOrConfig(t.fileName);return!!t.isNewFile==!!r&&(r||this.projectService.logErrorForScriptInfoNotFound(t.fileName),N.fail("Expected isNewFile for (only) new files. "+JSON.stringify({isNewFile:!!t.isNewFile,hasScriptInfo:!!r}))),r?{fileName:t.fileName,textChanges:t.textChanges.map(i=>glt(i,r))}:blt(t)}convertTextChangeToCodeEdit(t,r){return{start:r.positionToLineOffset(t.span.start),end:r.positionToLineOffset(t.span.start+t.span.length),newText:t.newText?t.newText:""}}getBraceMatching(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=this.getPosition(t,s),u=o.getBraceMatchingAtPosition(i,l);return u?r?u.map(p=>Nh(p,s)):u:void 0}getDiagnosticsForProject(t,r,i){if(this.suppressDiagnosticEvents)return;const{fileNames:o,languageServiceDisabled:s}=this.getProjectInfoWorker(i,void 0,!0,!0);if(s)return;const l=o.filter(M=>!M.includes("lib.d.ts"));if(l.length===0)return;const u=[],p=[],h=[],m=[],b=ml(i),A=this.projectService.ensureDefaultProjectForFile(b);for(const M of l)this.getCanonicalFileName(M)===this.getCanonicalFileName(i)?u.push(M):this.projectService.getScriptInfo(M).isScriptOpen()?p.push(M):Su(M)?m.push(M):h.push(M);const R=[...u,...p,...h,...m].map(M=>({fileName:M,project:A}));this.updateErrorCheck(t,R,r,!1)}configurePlugin(t){this.projectService.configurePlugin(t)}getSmartSelectionRange(t,r){const{locations:i}=t,{file:o,languageService:s}=this.getFileAndLanguageServiceForSyntacticOperation(t),l=N.checkDefined(this.projectService.getScriptInfo(o));return wt(i,u=>{const p=this.getPosition(u,l),h=s.getSmartSelectionRange(o,p);return r?this.mapSelectionRange(h,l):h})}toggleLineComment(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=this.projectService.getScriptInfo(i),l=this.getRange(t,s),u=o.toggleLineComment(i,l);if(r){const p=this.projectService.getScriptInfoForNormalizedPath(i);return u.map(h=>this.convertTextChangeToCodeEdit(h,p))}return u}toggleMultilineComment(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=this.getRange(t,s),u=o.toggleMultilineComment(i,l);if(r){const p=this.projectService.getScriptInfoForNormalizedPath(i);return u.map(h=>this.convertTextChangeToCodeEdit(h,p))}return u}commentSelection(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=this.getRange(t,s),u=o.commentSelection(i,l);if(r){const p=this.projectService.getScriptInfoForNormalizedPath(i);return u.map(h=>this.convertTextChangeToCodeEdit(h,p))}return u}uncommentSelection(t,r){const{file:i,languageService:o}=this.getFileAndLanguageServiceForSyntacticOperation(t),s=this.projectService.getScriptInfoForNormalizedPath(i),l=this.getRange(t,s),u=o.uncommentSelection(i,l);if(r){const p=this.projectService.getScriptInfoForNormalizedPath(i);return u.map(h=>this.convertTextChangeToCodeEdit(h,p))}return u}mapSelectionRange(t,r){const i={textSpan:Nh(t.textSpan,r)};return t.parent&&(i.parent=this.mapSelectionRange(t.parent,r)),i}getScriptInfoFromProjectService(t){const r=ml(t),i=this.projectService.getScriptInfoForNormalizedPath(r);return i||(this.projectService.logErrorForScriptInfoNotFound(r),oy.ThrowNoProject())}toProtocolCallHierarchyItem(t){const r=this.getScriptInfoFromProjectService(t.file);return{name:t.name,kind:t.kind,kindModifiers:t.kindModifiers,file:t.file,containerName:t.containerName,span:Nh(t.span,r),selectionSpan:Nh(t.selectionSpan,r)}}toProtocolCallHierarchyIncomingCall(t){const r=this.getScriptInfoFromProjectService(t.from.file);return{from:this.toProtocolCallHierarchyItem(t.from),fromSpans:t.fromSpans.map(i=>Nh(i,r))}}toProtocolCallHierarchyOutgoingCall(t,r){return{to:this.toProtocolCallHierarchyItem(t.to),fromSpans:t.fromSpans.map(i=>Nh(i,r))}}prepareCallHierarchy(t){const{file:r,project:i}=this.getFileAndProject(t),o=this.projectService.getScriptInfoForNormalizedPath(r);if(o){const s=this.getPosition(t,o),l=i.getLanguageService().prepareCallHierarchy(r,s);return l&&GX(l,u=>this.toProtocolCallHierarchyItem(u))}}provideCallHierarchyIncomingCalls(t){const{file:r,project:i}=this.getFileAndProject(t),o=this.getScriptInfoFromProjectService(r);return i.getLanguageService().provideCallHierarchyIncomingCalls(r,this.getPosition(t,o)).map(l=>this.toProtocolCallHierarchyIncomingCall(l))}provideCallHierarchyOutgoingCalls(t){const{file:r,project:i}=this.getFileAndProject(t),o=this.getScriptInfoFromProjectService(r);return i.getLanguageService().provideCallHierarchyOutgoingCalls(r,this.getPosition(t,o)).map(l=>this.toProtocolCallHierarchyOutgoingCall(l,o))}getCanonicalFileName(t){const r=this.host.useCaseSensitiveFileNames?t:ch(t);return ga(r)}exit(){}notRequired(){return{responseRequired:!1}}requiredResponse(t){return{response:t,responseRequired:!0}}addProtocolHandler(t,r){if(this.handlers.has(t))throw new Error(`Protocol handler already exists for command "${t}"`);this.handlers.set(t,r)}setCurrentRequest(t){N.assert(this.currentRequestId===void 0),this.currentRequestId=t,this.cancellationToken.setRequest(t)}resetCurrentRequest(t){N.assert(this.currentRequestId===t),this.currentRequestId=void 0,this.cancellationToken.resetRequest(t)}executeWithRequestId(t,r){try{return this.setCurrentRequest(t),r()}finally{this.resetCurrentRequest(t)}}executeCommand(t){const r=this.handlers.get(t.command);if(r){const i=this.executeWithRequestId(t.seq,()=>r(t));return this.projectService.enableRequestedPlugins(),i}else return this.logger.msg(`Unrecognized JSON command:${O0(t)}`,"Err"),this.doOutput(void 0,"unknown",t.seq,!1,`Unrecognized JSON command: ${t.command}`),{responseRequired:!1}}onMessage(t){var r,i,o,s,l,u,p,h,m,b,A;this.gcTimer.scheduleCollect(),this.performanceData=void 0;let I;this.logger.hasLevel(2)&&(I=this.hrtime(),this.logger.hasLevel(3)&&this.logger.info(`request:${t2(this.toStringMessage(t))}`));let R,M;try{R=this.parseMessage(t),M=R.arguments&&R.arguments.file?R.arguments:void 0,(r=sr)==null||r.instant(sr.Phase.Session,"request",{seq:R.seq,command:R.command}),(i=ad)==null||i.logStartCommand(""+R.command,this.toStringMessage(t).substring(0,100)),(o=sr)==null||o.push(sr.Phase.Session,"executeCommand",{seq:R.seq,command:R.command},!0);const{response:C,responseRequired:O}=this.executeCommand(R);if((s=sr)==null||s.pop(),this.logger.hasLevel(2)){const U=slt(this.hrtime(I)).toFixed(4);O?this.logger.perftrc(`${R.seq}::${R.command}: elapsed time (in milliseconds) ${U}`):this.logger.perftrc(`${R.seq}::${R.command}: async elapsed time (in milliseconds) ${U}`)}(l=ad)==null||l.logStopCommand(""+R.command,"Success"),(u=sr)==null||u.instant(sr.Phase.Session,"response",{seq:R.seq,command:R.command,success:!!C}),C?this.doOutput(C,R.command,R.seq,!0):O&&this.doOutput(void 0,R.command,R.seq,!1,"No content available.")}catch(C){if((p=sr)==null||p.popAll(),C instanceof Hx){(h=ad)==null||h.logStopCommand(""+(R&&R.command),"Canceled: "+C),(m=sr)==null||m.instant(sr.Phase.Session,"commandCanceled",{seq:R==null?void 0:R.seq,command:R==null?void 0:R.command}),this.doOutput({canceled:!0},R.command,R.seq,!0);return}this.logErrorWorker(C,this.toStringMessage(t),M),(b=ad)==null||b.logStopCommand(""+(R&&R.command),"Error: "+C),(A=sr)==null||A.instant(sr.Phase.Session,"commandError",{seq:R==null?void 0:R.seq,command:R==null?void 0:R.command,message:C.message}),this.doOutput(void 0,R?R.command:"unknown",R?R.seq:0,!1,"Error processing request. "+C.message+`
+`+C.stack)}}parseMessage(t){return JSON.parse(t)}toStringMessage(t){return t}getFormatOptions(t){return this.projectService.getFormatCodeOptions(t)}getPreferences(t){return this.projectService.getPreferences(t)}getHostFormatOptions(){return this.projectService.getHostFormatCodeOptions()}getHostPreferences(){return this.projectService.getHostPreferences()}}}}),HI,OZ,n8e,r8e,l9,c9,pge,C2,qI,E8,Ilt=T({"src/server/scriptVersionCache.ts"(){db(),_T(),HI=4,OZ=(e=>(e[e.PreStart=0]="PreStart",e[e.Start=1]="Start",e[e.Entire=2]="Entire",e[e.Mid=3]="Mid",e[e.End=4]="End",e[e.PostEnd=5]="PostEnd",e))(OZ||{}),n8e=class{constructor(){this.goSubtree=!0,this.lineIndex=new C2,this.endBranch=[],this.state=2,this.initialText="",this.trailingText="",this.lineIndex.root=new qI,this.startPath=[this.lineIndex.root],this.stack=[this.lineIndex.root]}get done(){return!1}insertLines(e,t){t&&(this.trailingText=""),e?e=this.initialText+e+this.trailingText:e=this.initialText+this.trailingText;const i=C2.linesFromText(e).lines;i.length>1&&i[i.length-1]===""&&i.pop();let o,s;for(let u=this.endBranch.length-1;u>=0;u--)this.endBranch[u].updateCounts(),this.endBranch[u].charCount()===0&&(s=this.endBranch[u],u>0?o=this.endBranch[u-1]:o=this.branchNode);s&&o.remove(s);const l=this.startPath[this.startPath.length-1];if(i.length>0)if(l.text=i[0],i.length>1){let u=new Array(i.length-1),p=l;for(let b=1;b<i.length;b++)u[b-1]=new E8(i[b]);let h=this.startPath.length-2;for(;h>=0;){const b=this.startPath[h];u=b.insertAt(p,u),h--,p=b}let m=u.length;for(;m>0;){const b=new qI;b.add(this.lineIndex.root),u=b.insertAt(this.lineIndex.root,u),m=u.length,this.lineIndex.root=b}this.lineIndex.root.updateCounts()}else for(let u=this.startPath.length-2;u>=0;u--)this.startPath[u].updateCounts();else{this.startPath[this.startPath.length-2].remove(l);for(let p=this.startPath.length-2;p>=0;p--)this.startPath[p].updateCounts()}return this.lineIndex}post(e,t,r){r===this.lineCollectionAtBranch&&(this.state=4),this.stack.pop()}pre(e,t,r,i,o){const s=this.stack[this.stack.length-1];this.state===2&&o===1&&(this.state=1,this.branchNode=s,this.lineCollectionAtBranch=r);let l;function u(p){return p.isLeaf()?new E8(""):new qI}switch(o){case 0:this.goSubtree=!1,this.state!==4&&s.add(r);break;case 1:this.state===4?this.goSubtree=!1:(l=u(r),s.add(l),this.startPath.push(l));break;case 2:this.state!==4?(l=u(r),s.add(l),this.startPath.push(l)):r.isLeaf()||(l=u(r),s.add(l),this.endBranch.push(l));break;case 3:this.goSubtree=!1;break;case 4:this.state!==4?this.goSubtree=!1:r.isLeaf()||(l=u(r),s.add(l),this.endBranch.push(l));break;case 5:this.goSubtree=!1,this.state!==1&&s.add(r);break}this.goSubtree&&this.stack.push(l)}leaf(e,t,r){this.state===1?this.initialText=r.text.substring(0,e):this.state===2?(this.initialText=r.text.substring(0,e),this.trailingText=r.text.substring(e+t)):this.trailingText=r.text.substring(e+t)}},r8e=class{constructor(e,t,r){this.pos=e,this.deleteLen=t,this.insertedText=r}getTextChangeRange(){return cL(vu(this.pos,this.deleteLen),this.insertedText?this.insertedText.length:0)}},l9=class mA{constructor(){this.changes=[],this.versions=new Array(mA.maxVersions),this.minVersion=0,this.currentVersion=0}versionToIndex(t){if(!(t<this.minVersion||t>this.currentVersion))return t%mA.maxVersions}currentVersionToIndex(){return this.currentVersion%mA.maxVersions}edit(t,r,i){this.changes.push(new r8e(t,r,i)),(this.changes.length>mA.changeNumberThreshold||r>mA.changeLengthThreshold||i&&i.length>mA.changeLengthThreshold)&&this.getSnapshot()}getSnapshot(){return this._getSnapshot()}_getSnapshot(){let t=this.versions[this.currentVersionToIndex()];if(this.changes.length>0){let r=t.index;for(const i of this.changes)r=r.edit(i.pos,i.deleteLen,i.insertedText);t=new pge(this.currentVersion+1,this,r,this.changes),this.currentVersion=t.version,this.versions[this.currentVersionToIndex()]=t,this.changes=[],this.currentVersion-this.minVersion>=mA.maxVersions&&(this.minVersion=this.currentVersion-mA.maxVersions+1)}return t}getSnapshotVersion(){return this._getSnapshot().version}getAbsolutePositionAndLineText(t){return this._getSnapshot().index.lineNumberToInfo(t)}lineOffsetToPosition(t,r){return this._getSnapshot().index.absolutePositionOfStartOfLine(t)+(r-1)}positionToLineOffset(t){return this._getSnapshot().index.positionToLineOffset(t)}lineToTextSpan(t){const r=this._getSnapshot().index,{lineText:i,absolutePosition:o}=r.lineNumberToInfo(t+1),s=i!==void 0?i.length:r.absolutePositionOfStartOfLine(t+2)-o;return vu(o,s)}getTextChangesBetweenVersions(t,r){if(t<r)if(t>=this.minVersion){const i=[];for(let o=t+1;o<=r;o++){const s=this.versions[this.versionToIndex(o)];for(const l of s.changesSincePreviousVersion)i.push(l.getTextChangeRange())}return vre(i)}else return;else return IL}getLineCount(){return this._getSnapshot().index.getLineCount()}static fromString(t){const r=new mA,i=new pge(0,r,new C2);r.versions[r.currentVersion]=i;const o=C2.linesFromText(t);return i.index.load(o.lines),r}},l9.changeNumberThreshold=8,l9.changeLengthThreshold=256,l9.maxVersions=8,c9=l9,pge=class P7e{constructor(t,r,i,o=gc){this.version=t,this.cache=r,this.index=i,this.changesSincePreviousVersion=o}getText(t,r){return this.index.getText(t,r-t)}getLength(){return this.index.getLength()}getChangeRange(t){if(t instanceof P7e&&this.cache===t.cache)return this.version<=t.version?IL:this.cache.getTextChangesBetweenVersions(t.version,this.version)}},C2=class qbe{constructor(){this.checkEdits=!1}absolutePositionOfStartOfLine(t){return this.lineNumberToInfo(t).absolutePosition}positionToLineOffset(t){const{oneBasedLine:r,zeroBasedColumn:i}=this.root.charOffsetToLineInfo(1,t);return{line:r,offset:i+1}}positionToColumnAndLineText(t){return this.root.charOffsetToLineInfo(1,t)}getLineCount(){return this.root.lineCount()}lineNumberToInfo(t){const r=this.getLineCount();if(t<=r){const{position:i,leaf:o}=this.root.lineNumberToInfo(t,0);return{absolutePosition:i,lineText:o&&o.text}}else return{absolutePosition:this.root.charCount(),lineText:void 0}}load(t){if(t.length>0){const r=[];for(let i=0;i<t.length;i++)r[i]=new E8(t[i]);this.root=qbe.buildTreeFromBottom(r)}else this.root=new qI}walk(t,r,i){this.root.walk(t,r,i)}getText(t,r){let i="";return r>0&&t<this.root.charCount()&&this.walk(t,r,{goSubtree:!0,done:!1,leaf:(o,s,l)=>{i=i.concat(l.text.substring(o,o+s))}}),i}getLength(){return this.root.charCount()}every(t,r,i){i||(i=this.root.charCount());const o={goSubtree:!0,done:!1,leaf(s,l,u){t(u,s,l)||(this.done=!0)}};return this.walk(r,i-r,o),!o.done}edit(t,r,i){if(this.root.charCount()===0)return N.assert(r===0),i!==void 0?(this.load(qbe.linesFromText(i).lines),this):void 0;{let o;if(this.checkEdits){const u=this.getText(0,this.root.charCount());o=u.slice(0,t)+i+u.slice(t+r)}const s=new n8e;let l=!1;if(t>=this.root.charCount()){t=this.root.charCount()-1;const u=this.getText(t,1);i?i=u+i:i=u,r=0,l=!0}else if(r>0){const u=t+r,{zeroBasedColumn:p,lineText:h}=this.positionToColumnAndLineText(u);p===0&&(r+=h.length,i=i?i+h:h)}if(this.root.walk(t,r,s),s.insertLines(i,l),this.checkEdits){const u=s.lineIndex.getText(0,s.lineIndex.getLength());N.assert(o===u,"buffer edit mismatch")}return s.lineIndex}}static buildTreeFromBottom(t){if(t.length<HI)return new qI(t);const r=new Array(Math.ceil(t.length/HI));let i=0;for(let o=0;o<r.length;o++){const s=Math.min(i+HI,t.length);r[o]=new qI(t.slice(i,s)),i=s}return this.buildTreeFromBottom(r)}static linesFromText(t){const r=DA(t);if(r.length===0)return{lines:[],lineMap:r};const i=new Array(r.length),o=r.length-1;for(let l=0;l<o;l++)i[l]=t.substring(r[l],r[l+1]);const s=t.substring(r[o]);return s.length>0?i[o]=s:i.pop(),{lines:i,lineMap:r}}},qI=class Jbe{constructor(t=[]){this.children=t,this.totalChars=0,this.totalLines=0,t.length&&this.updateCounts()}isLeaf(){return!1}updateCounts(){this.totalChars=0,this.totalLines=0;for(const t of this.children)this.totalChars+=t.charCount(),this.totalLines+=t.lineCount()}execWalk(t,r,i,o,s){return i.pre&&i.pre(t,r,this.children[o],this,s),i.goSubtree?(this.children[o].walk(t,r,i),i.post&&i.post(t,r,this.children[o],this,s)):i.goSubtree=!0,i.done}skipChild(t,r,i,o,s){o.pre&&!o.done&&(o.pre(t,r,this.children[i],this,s),o.goSubtree=!0)}walk(t,r,i){let o=0,s=this.children[o].charCount(),l=t;for(;l>=s;)this.skipChild(l,r,o,i,0),l-=s,o++,s=this.children[o].charCount();if(l+r<=s){if(this.execWalk(l,r,i,o,2))return}else{if(this.execWalk(l,s-l,i,o,1))return;let u=r-(s-l);for(o++,s=this.children[o].charCount();u>s;){if(this.execWalk(0,s,i,o,3))return;u-=s,o++,s=this.children[o].charCount()}if(u>0&&this.execWalk(0,u,i,o,4))return}if(i.pre){const u=this.children.length;if(o<u-1)for(let p=o+1;p<u;p++)this.skipChild(0,0,p,i,5)}}charOffsetToLineInfo(t,r){if(this.children.length===0)return{oneBasedLine:t,zeroBasedColumn:r,lineText:void 0};for(const s of this.children){if(s.charCount()>r)return s.isLeaf()?{oneBasedLine:t,zeroBasedColumn:r,lineText:s.text}:s.charOffsetToLineInfo(t,r);r-=s.charCount(),t+=s.lineCount()}const i=this.lineCount();if(i===0)return{oneBasedLine:1,zeroBasedColumn:0,lineText:void 0};const o=N.checkDefined(this.lineNumberToInfo(i,0).leaf);return{oneBasedLine:i,zeroBasedColumn:o.charCount(),lineText:void 0}}lineNumberToInfo(t,r){for(const i of this.children){const o=i.lineCount();if(o>=t)return i.isLeaf()?{position:r,leaf:i}:i.lineNumberToInfo(t,r);t-=o,r+=i.charCount()}return{position:r,leaf:void 0}}splitAfter(t){let r;const i=this.children.length;t++;const o=t;if(t<i){for(r=new Jbe;t<i;)r.add(this.children[t]),t++;r.updateCounts()}return this.children.length=o,r}remove(t){const r=this.findChildIndex(t),i=this.children.length;if(r<i-1)for(let o=r;o<i-1;o++)this.children[o]=this.children[o+1];this.children.pop()}findChildIndex(t){const r=this.children.indexOf(t);return N.assert(r!==-1),r}insertAt(t,r){let i=this.findChildIndex(t);const o=this.children.length,s=r.length;if(o<HI&&i===o-1&&s===1)return this.add(r[0]),this.updateCounts(),[];{const l=this.splitAfter(i);let u=0;for(i++;i<HI&&u<s;)this.children[i]=r[u],i++,u++;let p=[],h=0;if(u<s){h=Math.ceil((s-u)/HI),p=new Array(h);let m=0;for(let A=0;A<h;A++)p[A]=new Jbe;let b=p[0];for(;u<s;)b.add(r[u]),u++,b.children.length===HI&&(m++,b=p[m]);for(let A=p.length-1;A>=0;A--)p[A].children.length===0&&p.pop()}l&&p.push(l),this.updateCounts();for(let m=0;m<h;m++)p[m].updateCounts();return p}}add(t){this.children.push(t),N.assert(this.children.length<=HI)}charCount(){return this.totalChars}lineCount(){return this.totalLines}},E8=class{constructor(e){this.text=e}isLeaf(){return!0}walk(e,t,r){r.leaf(e,t,this)}charCount(){return this.text.length}lineCount(){return 1}}}}),fge,mge,xlt=T({"src/server/typingInstallerAdapter.ts"(){db(),_T(),fge=class M7e{constructor(t,r,i,o,s,l){this.telemetryEnabled=t,this.logger=r,this.host=i,this.globalTypingsCacheLocation=o,this.event=s,this.maxActiveRequestCount=l,this.activeRequestCount=0,this.requestQueue=zM(),this.requestMap=new Map,this.requestedRegistry=!1,this.packageInstallId=0}isKnownTypesPackageName(t){var r;return G_.validatePackageName(t)!==G_.NameValidationResult.Ok?!1:(this.requestedRegistry||(this.requestedRegistry=!0,this.installer.send({kind:"typesRegistry"})),!!((r=this.typesRegistryCache)!=null&&r.has(t)))}installPackage(t){this.packageInstallId++;const r={kind:"installPackage",...t,id:this.packageInstallId},i=new Promise((o,s)=>{(this.packageInstalledPromise??(this.packageInstalledPromise=new Map)).set(this.packageInstallId,{resolve:o,reject:s})});return this.installer.send(r),i}attach(t){this.projectService=t,this.installer=this.createInstallerProcess()}onProjectClosed(t){this.installer.send({projectName:t.getProjectName(),kind:"closeProject"})}enqueueInstallTypingsRequest(t,r,i){const o=yhe(t,r,i);this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling throttled operation:${O0(o)}`),this.activeRequestCount<this.maxActiveRequestCount?this.scheduleRequest(o):(this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Deferring request for: ${o.projectName}`),this.requestQueue.enqueue(o),this.requestMap.set(o.projectName,o))}handleMessage(t){var r,i;switch(this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Received response:${O0(t)}`),t.kind){case H7:this.typesRegistryCache=new Map(Object.entries(t.typesRegistry));break;case eO:{const o=(r=this.packageInstalledPromise)==null?void 0:r.get(t.id);N.assertIsDefined(o,"Should find the promise for package install"),(i=this.packageInstalledPromise)==null||i.delete(t.id),t.success?o.resolve({successMessage:t.message}):o.reject(t.message),this.projectService.updateTypingsForProject(t),this.event(t,"setTypings");break}case xK:{const o={message:t.message};this.event(o,"typesInstallerInitializationFailed");break}case q7:{const o={eventId:t.eventId,packages:t.packagesToInstall};this.event(o,"beginInstallTypes");break}case J7:{if(this.telemetryEnabled){const l={telemetryEventName:"typingsInstalled",payload:{installedPackages:t.packagesToInstall.join(","),installSuccess:t.installSuccess,typingsInstallerVersion:t.typingsInstallerVersion}};this.event(l,"telemetry")}const o={eventId:t.eventId,packages:t.packagesToInstall,success:t.installSuccess};this.event(o,"endInstallTypes");break}case Zw:{this.projectService.updateTypingsForProject(t);break}case Qw:{for(this.activeRequestCount>0?this.activeRequestCount--:N.fail("TIAdapter:: Received too many responses");!this.requestQueue.isEmpty();){const o=this.requestQueue.dequeue();if(this.requestMap.get(o.projectName)===o){this.requestMap.delete(o.projectName),this.scheduleRequest(o);break}this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Skipping defunct request for: ${o.projectName}`)}this.projectService.updateTypingsForProject(t),this.event(t,"setTypings");break}case n2:this.projectService.watchTypingLocations(t);break}}scheduleRequest(t){this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Scheduling request for: ${t.projectName}`),this.activeRequestCount++,this.host.setTimeout(()=>{this.logger.hasLevel(3)&&this.logger.info(`TIAdapter:: Sending request:${O0(t)}`),this.installer.send(t)},M7e.requestDelayMillis,`${t.projectName}::${t.kind}`)}},fge.requestDelayMillis=100,mge=fge}}),i8e={};X(i8e,{ActionInvalidate:()=>Zw,ActionPackageInstalled:()=>eO,ActionSet:()=>Qw,ActionWatchTypingLocations:()=>n2,Arguments:()=>RK,AutoImportProviderProject:()=>TZ,AuxiliaryProject:()=>EZ,CharRangeSection:()=>OZ,CloseFileWatcherEvent:()=>o9,CommandNames:()=>cge,ConfigFileDiagEvent:()=>e9,ConfiguredProject:()=>AZ,CreateDirectoryWatcherEvent:()=>i9,CreateFileWatcherEvent:()=>r9,Errors:()=>oy,EventBeginInstallTypes:()=>q7,EventEndInstallTypes:()=>J7,EventInitializationFailed:()=>xK,EventTypesRegistry:()=>H7,ExternalProject:()=>Jz,GcTimer:()=>mZ,InferredProject:()=>bZ,LargeFileReferencedEvent:()=>Zz,LineIndex:()=>C2,LineLeaf:()=>E8,LineNode:()=>qI,LogLevel:()=>uZ,Msg:()=>dZ,OpenFileInfoTelemetryEvent:()=>DZ,Project:()=>mT,ProjectInfoTelemetryEvent:()=>n9,ProjectKind:()=>D2,ProjectLanguageServiceStateEvent:()=>t9,ProjectLoadingFinishEvent:()=>Qz,ProjectLoadingStartEvent:()=>$z,ProjectReferenceProjectLoadKind:()=>PZ,ProjectService:()=>MZ,ProjectsUpdatedInBackgroundEvent:()=>v8,ScriptInfo:()=>gZ,ScriptVersionCache:()=>c9,Session:()=>dge,TextStorage:()=>hZ,ThrottledOperations:()=>fZ,TypingsCache:()=>vZ,TypingsInstallerAdapter:()=>mge,allFilesAreJsOrDts:()=>Ghe,allRootFilesAreJsOrDts:()=>Bhe,asNormalizedPath:()=>LOe,convertCompilerOptions:()=>Kz,convertFormatOptions:()=>YD,convertScriptKindName:()=>xZ,convertTypeAcquisition:()=>Uhe,convertUserPreferences:()=>Hhe,convertWatchOptions:()=>g8,countEachFileTypes:()=>_8,createInstallTypingsRequest:()=>yhe,createModuleSpecifierCache:()=>tge,createNormalizedPathMap:()=>kOe,createPackageJsonCache:()=>nge,createSortedArray:()=>Ahe,emptyArray:()=>gc,findArgument:()=>EDe,forEachResolvedProjectReferenceProject:()=>$D,formatDiagnosticToProtocol:()=>b8,formatMessage:()=>rge,getBaseConfigFileName:()=>pZ,getLocationInNewDocument:()=>sge,hasArgument:()=>bDe,hasNoTypeScriptSource:()=>Vhe,indent:()=>t2,isBackgroundProject:()=>h8,isConfigFile:()=>$he,isConfiguredProject:()=>V0,isDynamicFileName:()=>m8,isExternalProject:()=>yZ,isInferredProject:()=>XD,isInferredProjectName:()=>bhe,makeAutoImportProviderProjectName:()=>She,makeAuxiliaryProjectName:()=>The,makeInferredProjectName:()=>Ehe,maxFileSize:()=>Yz,maxProgramSizeForNonTsFiles:()=>Xz,normalizedPathToPath:()=>f8,nowString:()=>SDe,nullCancellationToken:()=>lge,nullTypingsInstaller:()=>qz,projectContainsInfoDirectly:()=>UI,protocol:()=>zhe,removeSorted:()=>wOe,stringifyIndented:()=>O0,toEvent:()=>ige,toNormalizedPath:()=>ml,tryConvertScriptKindName:()=>IZ,typingsInstaller:()=>ghe,updateProjectIfDirty:()=>jp});var _T=T({"src/server/_namespaces/ts.server.ts"(){K7(),vhe(),zst(),Bst(),Gst(),Vst(),Hst(),Xst(),Zst(),ilt(),olt(),alt(),Alt(),Ilt(),xlt()}}),o8e={};X(o8e,{ANONYMOUS:()=>F5,AccessFlags:()=>tV,AssertionLevel:()=>xG,AssignmentDeclarationKind:()=>uV,AssignmentKind:()=>QU,Associativity:()=>eH,BreakpointResolver:()=>ZY,BuilderFileEmit:()=>rK,BuilderProgramKind:()=>iK,BuilderState:()=>Mm,BundleFileSectionKind:()=>DV,CallHierarchy:()=>OI,CharacterCodes:()=>EV,CheckFlags:()=>YG,CheckMode:()=>YF,ClassificationType:()=>qK,ClassificationTypeNames:()=>HK,CommentDirectiveType:()=>wG,Comparison:()=>Be,CompletionInfoFlags:()=>FK,CompletionTriggerKind:()=>LK,Completions:()=>GI,ContainerFlags:()=>qq,ContextFlags:()=>GG,Debug:()=>N,DiagnosticCategory:()=>HM,Diagnostics:()=>f,DocumentHighlights:()=>G5,ElementFlags:()=>eV,EmitFlags:()=>a4,EmitHint:()=>IV,EmitOnly:()=>WG,EndOfLineState:()=>GK,EnumKind:()=>XG,ExitStatus:()=>FG,ExportKind:()=>eY,Extension:()=>SV,ExternalEmitHelpers:()=>AV,FileIncludeKind:()=>$6,FilePreprocessingDiagnosticsKind:()=>OG,FileSystemEntryKind:()=>kV,FileWatcherEventKind:()=>LV,FindAllReferences:()=>Ws,FlattenLevel:()=>uJ,FlowFlags:()=>UM,ForegroundColorEscapeSequences:()=>XJ,FunctionFlags:()=>ZU,GeneratedIdentifierFlags:()=>Y6,GetLiteralTextFlags:()=>XU,GoToDefinition:()=>UD,HighlightSpanKind:()=>wK,IdentifierNameMap:()=>II,IdentifierNameMultiMap:()=>cJ,ImportKind:()=>ZX,ImportsNotUsedAsValues:()=>hV,IndentStyle:()=>OK,IndexFlags:()=>nV,IndexKind:()=>oV,InferenceFlags:()=>lV,InferencePriority:()=>sV,InlayHintKind:()=>kK,InlayHints:()=>HQ,InternalEmitFlags:()=>TV,InternalSymbolName:()=>$G,InvalidatedProjectKind:()=>IK,JSDocParsingMode:()=>PV,JsDoc:()=>G0,JsTyping:()=>G_,JsxEmit:()=>_V,JsxFlags:()=>LG,JsxReferenceKind:()=>rV,LanguageServiceMode:()=>CK,LanguageVariant:()=>yV,LexicalEnvironmentFlags:()=>RV,ListFormat:()=>NV,LogLevel:()=>DG,MemberOverrideStatus:()=>zG,ModifierFlags:()=>K6,ModuleDetectionKind:()=>dV,ModuleInstanceState:()=>Hq,ModuleKind:()=>eC,ModuleResolutionKind:()=>qx,ModuleSpecifierEnding:()=>cH,NavigateTo:()=>wde,NavigationBar:()=>Hde,NewLineKind:()=>gV,NodeBuilderFlags:()=>VG,NodeCheckFlags:()=>QG,NodeFactoryFlags:()=>gH,NodeFlags:()=>J6,NodeResolutionFeatures:()=>Vq,ObjectFlags:()=>t4,OperationCanceledException:()=>Hx,OperatorPrecedence:()=>tH,OrganizeImports:()=>Lm,OrganizeImportsMode:()=>MK,OuterExpressionKinds:()=>xV,OutliningElementsCollector:()=>XQ,OutliningSpanKind:()=>zK,OutputFileType:()=>BK,PackageJsonAutoImportPreference:()=>NK,PackageJsonDependencyGroup:()=>DK,PatternMatchKind:()=>V5,PollingInterval:()=>s4,PollingWatchKind:()=>mV,PragmaKindFlags:()=>CV,PrivateIdentifierKind:()=>AH,ProcessLevel:()=>mJ,ProgramUpdateLevel:()=>CJ,QuotePreference:()=>JX,RelationComparisonResult:()=>X6,Rename:()=>zz,ScriptElementKind:()=>jK,ScriptElementKindModifier:()=>UK,ScriptKind:()=>r4,ScriptSnapshot:()=>Y7,ScriptTarget:()=>vV,SemanticClassificationFormat:()=>PK,SemanticMeaning:()=>qX,SemicolonPreference:()=>WK,SignatureCheckMode:()=>$F,SignatureFlags:()=>n4,SignatureHelp:()=>o8,SignatureKind:()=>iV,SmartSelectionRange:()=>QQ,SnippetKind:()=>o4,SortKind:()=>IG,StructureIsReused:()=>Q6,SymbolAccessibility:()=>HG,SymbolDisplay:()=>iy,SymbolDisplayPartKind:()=>nO,SymbolFlags:()=>Z6,SymbolFormatFlags:()=>UG,SyntaxKind:()=>q6,SyntheticSymbolKind:()=>qG,Ternary:()=>cV,ThrottledCancellationToken:()=>QY,TokenClass:()=>VK,TokenFlags:()=>kG,TransformFlags:()=>i4,TypeFacts:()=>XF,TypeFlags:()=>e4,TypeFormatFlags:()=>jG,TypeMapKind:()=>aV,TypePredicateKind:()=>JG,TypeReferenceSerializationKind:()=>KG,UnionReduction:()=>BG,UpToDateStatusType:()=>EK,VarianceFlags:()=>ZG,Version:()=>ym,VersionRange:()=>GM,WatchDirectoryFlags:()=>bV,WatchDirectoryKind:()=>fV,WatchFileKind:()=>pV,WatchLogLevel:()=>PJ,WatchType:()=>wc,accessPrivateIdentifier:()=>Mle,addDisposableResourceHelper:()=>KW,addEmitFlags:()=>k_,addEmitHelper:()=>eI,addEmitHelpers:()=>Ug,addInternalEmitFlags:()=>QA,addNodeFactoryPatcher:()=>jTe,addObjectAllocatorPatcher:()=>koe,addRange:()=>Jr,addRelatedInfo:()=>wa,addSyntheticLeadingComment:()=>fP,addSyntheticTrailingComment:()=>EW,addToSeen:()=>Rm,advancedAsyncSuperHelper:()=>Uk,affectsDeclarationPathOptionDeclarations:()=>Aq,affectsEmitOptionDeclarations:()=>Tq,allKeysStartWithDot:()=>VF,altDirectorySeparator:()=>ZM,and:()=>B6,append:()=>xn,appendIfUnique:()=>Mg,arrayFrom:()=>zo,arrayIsEqualTo:()=>Km,arrayIsHomogeneous:()=>eae,arrayIsSorted:()=>M6,arrayOf:()=>Rne,arrayReverseIterator:()=>dG,arrayToMap:()=>NE,arrayToMultiMap:()=>FM,arrayToNumericMap:()=>Nne,arraysEqual:()=>Ca,assertType:()=>T1e,assign:()=>Fx,assignHelper:()=>DW,asyncDelegator:()=>CW,asyncGeneratorHelper:()=>NW,asyncSuperHelper:()=>jk,asyncValues:()=>PW,attachFileToDiagnostics:()=>JA,awaitHelper:()=>tI,awaiterHelper:()=>LW,base64decode:()=>Toe,base64encode:()=>Soe,binarySearch:()=>Nv,binarySearchKey:()=>bA,bindSourceFile:()=>sle,breakIntoCharacterSpans:()=>Dde,breakIntoWordSpans:()=>Nde,buildLinkParts:()=>Que,buildOpts:()=>PF,buildOverload:()=>ROe,bundlerModuleNameResolver:()=>$se,canBeConvertedToAsync:()=>dY,canHaveDecorators:()=>QS,canHaveExportModifier:()=>Ik,canHaveFlowNode:()=>ZL,canHaveIllegalDecorators:()=>ZH,canHaveIllegalModifiers:()=>dse,canHaveIllegalType:()=>vAe,canHaveIllegalTypeParameters:()=>use,canHaveJSDoc:()=>ek,canHaveLocals:()=>fh,canHaveModifiers:()=>Cm,canHaveSymbol:()=>x_,canJsonReportNoInputFiles:()=>MP,canProduceDiagnostics:()=>d7,canUsePropertyAccess:()=>HU,canWatchAffectingLocation:()=>zce,canWatchAtTypes:()=>Fce,canWatchDirectoryOrFile:()=>M7,cartesianProduct:()=>zne,cast:()=>aa,chainBundle:()=>Pm,chainDiagnosticMessages:()=>jo,changeAnyExtension:()=>$M,changeCompilerHostLikeToUseCache:()=>Uw,changeExtension:()=>S0,changeFullExtension:()=>ire,changesAffectModuleResolution:()=>W4,changesAffectingProgramStructure:()=>aie,childIsDecorated:()=>IC,classElementOrClassElementParameterIsDecorated:()=>Fj,classHasClassThisAssignment:()=>dJ,classHasDeclaredOrExplicitlyAssignedName:()=>pJ,classHasExplicitlyAssignedName:()=>l7,classOrConstructorParameterIsDecorated:()=>zv,classPrivateFieldGetHelper:()=>HW,classPrivateFieldInHelper:()=>JW,classPrivateFieldSetHelper:()=>qW,classicNameResolver:()=>rle,classifier:()=>Bpe,cleanExtendedConfigCache:()=>y7,clear:()=>Vo,clearMap:()=>tp,clearSharedExtendedConfigFileWatcher:()=>RJ,climbPastPropertyAccess:()=>Q7,climbPastPropertyOrElementAccess:()=>Iue,clone:()=>hG,cloneCompilerOptions:()=>dX,closeFileWatcher:()=>Qm,closeFileWatcherOf:()=>Mf,codefix:()=>Fu,collapseTextChangeRangesAcrossMultipleVersions:()=>vre,collectExternalModuleInfo:()=>oJ,combine:()=>Wx,combinePaths:()=>Qr,commentPragmas:()=>qM,commonOptionsWithBuild:()=>bw,commonPackageFolders:()=>iH,compact:()=>WM,compareBooleans:()=>Ry,compareDataObjects:()=>DU,compareDiagnostics:()=>KC,compareDiagnosticsSkipRelatedInformation:()=>V3,compareEmitHelpers:()=>Cae,compareNumberOfDirectorySeparators:()=>Sk,comparePaths:()=>Lg,comparePathsCaseInsensitive:()=>Y1e,comparePathsCaseSensitive:()=>X1e,comparePatternKeys:()=>Bq,compareProperties:()=>wne,compareStringsCaseInsensitive:()=>F6,compareStringsCaseInsensitiveEslintCompatible:()=>Mne,compareStringsCaseSensitive:()=>Uu,compareStringsCaseSensitiveUI:()=>BM,compareTextSpans:()=>W6,compareValues:()=>rl,compileOnSaveCommandLineOption:()=>vw,compilerOptionsAffectDeclarationPath:()=>Uoe,compilerOptionsAffectEmit:()=>joe,compilerOptionsAffectSemanticDiagnostics:()=>Voe,compilerOptionsDidYouMeanDiagnostics:()=>Tw,compilerOptionsIndicateEsModules:()=>gX,compose:()=>E1e,computeCommonSourceDirectoryOfFilenames:()=>gce,computeLineAndCharacterOfPosition:()=>Kx,computeLineOfPosition:()=>iC,computeLineStarts:()=>DA,computePositionOfLineAndCharacter:()=>m4,computeSignature:()=>iT,computeSignatureWithDiagnostics:()=>ZJ,computeSuggestionDiagnostics:()=>lY,computedOptions:()=>_c,concatenate:()=>So,concatenateDiagnosticMessageChains:()=>Foe,consumesNodeCoreModules:()=>P5,contains:()=>Nr,containsIgnoredPath:()=>rP,containsObjectRestOrSpread:()=>cw,containsParseError:()=>aR,containsPath:()=>bm,convertCompilerOptionsForTelemetry:()=>kse,convertCompilerOptionsFromJson:()=>EIe,convertJsonOption:()=>ZS,convertToBase64:()=>Eoe,convertToJson:()=>_w,convertToObject:()=>Nse,convertToOptionsWithAbsolutePaths:()=>gq,convertToRelativePath:()=>rC,convertToTSConfig:()=>sIe,convertTypeAcquisitionFromJson:()=>SIe,copyComments:()=>lT,copyEntries:()=>F4,copyLeadingComments:()=>PD,copyProperties:()=>gG,copyTrailingAsLeadingComments:()=>SO,copyTrailingComments:()=>d2,couldStartTrivia:()=>lre,countWhere:()=>au,createAbstractBuilder:()=>DRe,createAccessorPropertyBackingField:()=>tq,createAccessorPropertyGetRedirector:()=>yse,createAccessorPropertySetRedirector:()=>bse,createBaseNodeFactory:()=>mae,createBinaryExpressionTrampoline:()=>yF,createBindingHelper:()=>UR,createBuildInfo:()=>zw,createBuilderProgram:()=>eK,createBuilderProgramUsingProgramBuildInfo:()=>Oce,createBuilderStatusReporter:()=>Zce,createCacheWithRedirects:()=>Mq,createCacheableExportInfoMap:()=>YX,createCachedDirectoryStructureHost:()=>g7,createClassNamedEvaluationHelperBlock:()=>Fle,createClassThisAssignmentBlock:()=>Ole,createClassifier:()=>HDe,createCommentDirectivesMap:()=>pie,createCompilerDiagnostic:()=>Hl,createCompilerDiagnosticForInvalidCustomType:()=>Ase,createCompilerDiagnosticFromMessageChain:()=>G3,createCompilerHost:()=>vce,createCompilerHostFromProgramHost:()=>gK,createCompilerHostWorker:()=>kJ,createDetachedDiagnostic:()=>OR,createDiagnosticCollection:()=>RR,createDiagnosticForFileFromMessageChain:()=>Lj,createDiagnosticForNode:()=>wr,createDiagnosticForNodeArray:()=>cR,createDiagnosticForNodeArrayFromMessageChain:()=>ML,createDiagnosticForNodeFromMessageChain:()=>Fg,createDiagnosticForNodeInSourceFile:()=>$f,createDiagnosticForRange:()=>Aie,createDiagnosticMessageChainFromDiagnostic:()=>Tie,createDiagnosticReporter:()=>Xw,createDocumentPositionMapper:()=>xle,createDocumentRegistry:()=>gde,createDocumentRegistryInternal:()=>rY,createEmitAndSemanticDiagnosticsBuilderProgram:()=>oK,createEmitHelperFactory:()=>Nae,createEmptyExports:()=>tw,createExpressionForJsxElement:()=>rse,createExpressionForJsxFragment:()=>ise,createExpressionForObjectLiteralElementLike:()=>ose,createExpressionForPropertyName:()=>JH,createExpressionFromEntityName:()=>nw,createExternalHelpersImportDeclarationIfNeeded:()=>YH,createFileDiagnostic:()=>Qc,createFileDiagnosticFromMessageChain:()=>J4,createForOfBindingStatement:()=>qH,createGetCanonicalFileName:()=>Mu,createGetSourceFile:()=>MJ,createGetSymbolAccessibilityDiagnosticForNode:()=>Yv,createGetSymbolAccessibilityDiagnosticForNodeName:()=>lce,createGetSymbolWalker:()=>lle,createIncrementalCompilerHost:()=>yK,createIncrementalProgram:()=>$ce,createInputFiles:()=>HTe,createInputFilesWithFilePaths:()=>_H,createInputFilesWithFileTexts:()=>hH,createJsxFactoryExpression:()=>HH,createLanguageService:()=>kpe,createLanguageServiceSourceFile:()=>pz,createMemberAccessForPropertyName:()=>$S,createModeAwareCache:()=>TI,createModeAwareCacheKey:()=>WP,createModuleNotFoundChain:()=>z4,createModuleResolutionCache:()=>cD,createModuleResolutionLoader:()=>BJ,createModuleResolutionLoaderUsingGlobalCache:()=>jce,createModuleSpecifierResolutionHost:()=>sT,createMultiMap:()=>Zp,createNodeConverters:()=>hae,createNodeFactory:()=>wk,createOptionNameMap:()=>SF,createOverload:()=>lZ,createPackageJsonImportFilter:()=>m2,createPackageJsonInfo:()=>FX,createParenthesizerRules:()=>_ae,createPatternMatcher:()=>Sde,createPrependNodes:()=>JJ,createPrinter:()=>k0,createPrinterWithDefaults:()=>IJ,createPrinterWithRemoveComments:()=>g1,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>xJ,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Bw,createProgram:()=>A7,createProgramHost:()=>vK,createPropertyNameNodeForIdentifierOrLiteral:()=>oW,createQueue:()=>zM,createRange:()=>xf,createRedirectedBuilderProgram:()=>nK,createResolutionCache:()=>sK,createRuntimeTypeSerializer:()=>jle,createScanner:()=>wv,createSemanticDiagnosticsBuilderProgram:()=>RRe,createSet:()=>vG,createSolutionBuilder:()=>URe,createSolutionBuilderHost:()=>VRe,createSolutionBuilderWithWatch:()=>HRe,createSolutionBuilderWithWatchHost:()=>jRe,createSortedArray:()=>uG,createSourceFile:()=>dw,createSourceMapGenerator:()=>Sle,createSourceMapSource:()=>qTe,createSuperAccessVariableStatement:()=>u7,createSymbolTable:()=>ua,createSymlinkCache:()=>wU,createSystemWatchFunctions:()=>ere,createTextChange:()=>fO,createTextChangeFromStartLength:()=>p5,createTextChangeRange:()=>cL,createTextRangeFromNode:()=>mX,createTextRangeFromSpan:()=>d5,createTextSpan:()=>vu,createTextSpanFromBounds:()=>pc,createTextSpanFromNode:()=>Nd,createTextSpanFromRange:()=>sb,createTextSpanFromStringLiteralLikeContent:()=>fX,createTextWriter:()=>pk,createTokenRange:()=>IU,createTypeChecker:()=>hle,createTypeReferenceDirectiveResolutionCache:()=>zF,createTypeReferenceResolutionLoader:()=>E7,createUnparsedSourceFile:()=>mH,createWatchCompilerHost:()=>zRe,createWatchCompilerHostOfConfigFile:()=>Kce,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Xce,createWatchFactory:()=>hK,createWatchHost:()=>_K,createWatchProgram:()=>BRe,createWatchStatusReporter:()=>Uce,createWriteFileMeasuringIO:()=>LJ,declarationNameToString:()=>Rs,decodeMappings:()=>nJ,decodedTextSpanIntersectsWith:()=>lL,decorateHelper:()=>TW,deduplicate:()=>DE,defaultIncludeSpec:()=>kF,defaultInitCompilerOptions:()=>MF,defaultMaximumTruncationLength:()=>Nk,detectSortCaseSensitivity:()=>XN,diagnosticCategoryName:()=>mS,diagnosticToString:()=>uT,directoryProbablyExists:()=>$m,directorySeparator:()=>al,displayPart:()=>ip,displayPartsToString:()=>jO,disposeEmitNodes:()=>vH,disposeResourcesHelper:()=>XW,documentSpansEqual:()=>SX,dumpTracingLegend:()=>$ne,elementAt:()=>Lv,elideNodes:()=>vse,emitComments:()=>uoe,emitDetachedComments:()=>doe,emitFiles:()=>m7,emitFilesAndReportErrors:()=>O7,emitFilesAndReportErrorsAndGetExitStatus:()=>Jce,emitModuleKindIsNonNodeESM:()=>j3,emitNewLineBeforeLeadingCommentOfPosition:()=>coe,emitNewLineBeforeLeadingComments:()=>soe,emitNewLineBeforeLeadingCommentsOfPosition:()=>loe,emitSkippedWithNoDiagnostics:()=>N7,emitUsingBuildInfo:()=>fce,emptyArray:()=>et,emptyFileSystemEntries:()=>gW,emptyMap:()=>U6,emptyOptions:()=>kf,emptySet:()=>Gne,endsWith:()=>Al,ensurePathIsNonModuleName:()=>CE,ensureScriptKind:()=>Q3,ensureTrailingDirectorySeparator:()=>Bc,entityNameToString:()=>_p,enumerateInsertsAndDeletes:()=>V6,equalOwnProperties:()=>Dne,equateStringsCaseInsensitive:()=>i0,equateStringsCaseSensitive:()=>dS,equateValues:()=>Mv,esDecorateHelper:()=>xW,escapeJsxAttributeString:()=>dU,escapeLeadingUnderscores:()=>hl,escapeNonAsciiString:()=>dk,escapeSnippetText:()=>ZE,escapeString:()=>og,escapeTemplateSubstitution:()=>cU,every:()=>Zn,expandPreOrPostfixIncrementOrDecrementExpression:()=>fF,explainFiles:()=>uK,explainIfFileIsRedirectAndImpliedFormat:()=>dK,exportAssignmentIsAlias:()=>TR,exportStarHelper:()=>UW,expressionResultIsUnused:()=>nae,extend:()=>O6,extendsHelper:()=>kW,extensionFromPath:()=>QC,extensionIsTS:()=>tW,extensionsNotSupportingExtensionlessResolution:()=>kk,externalHelpersModuleNameText:()=>Ky,factory:()=>w,fileExtensionIs:()=>Il,fileExtensionIsOneOf:()=>Tc,fileIncludeReasonToDiagnostics:()=>mK,fileShouldUseJavaScriptRequire:()=>HX,filter:()=>nr,filterMutate:()=>Xs,filterSemanticDiagnostics:()=>I7,find:()=>An,findAncestor:()=>Gn,findBestPatternMatch:()=>SG,findChildOfKind:()=>vs,findComputedPropertyNameCacheAssignment:()=>bF,findConfigFile:()=>hce,findContainingList:()=>r5,findDiagnosticForNode:()=>cde,findFirstNonJsxWhitespaceToken:()=>Cue,findIndex:()=>Gr,findLast:()=>Oo,findLastIndex:()=>Bi,findListItemInfo:()=>Nue,findMap:()=>Uo,findModifier:()=>DD,findNextToken:()=>b1,findPackageJson:()=>sde,findPackageJsons:()=>WX,findPrecedingMatchingToken:()=>c5,findPrecedingToken:()=>xc,findSuperStatementIndexPath:()=>o7,findTokenOnLeftOfPosition:()=>a5,findUseStrictPrologue:()=>XH,first:()=>Ha,firstDefined:()=>Ut,firstDefinedIterator:()=>dn,firstIterator:()=>fG,firstOrOnly:()=>VX,firstOrUndefined:()=>Xc,firstOrUndefinedIterator:()=>L6,fixupCompilerOptions:()=>fY,flatMap:()=>Pi,flatMapIterator:()=>Qp,flatMapToMutable:()=>rc,flatten:()=>ia,flattenCommaList:()=>Ese,flattenDestructuringAssignment:()=>tT,flattenDestructuringBinding:()=>h1,flattenDiagnosticMessageText:()=>z_,forEach:()=>Ue,forEachAncestor:()=>sie,forEachAncestorDirectory:()=>Sm,forEachChild:()=>Ho,forEachChildRecursively:()=>CP,forEachEmittedFile:()=>EJ,forEachEnclosingBlockScopeContainer:()=>bie,forEachEntry:()=>Gc,forEachExternalModuleToImportFrom:()=>QX,forEachImportClauseDeclaration:()=>h3,forEachKey:()=>_h,forEachLeadingCommentRange:()=>rL,forEachNameInAccessChainWalkingLeft:()=>Moe,forEachPropertyAssignment:()=>fR,forEachResolvedProjectReference:()=>VJ,forEachReturnStatement:()=>zE,forEachRight:()=>Bt,forEachTrailingCommentRange:()=>iL,forEachTsConfigPropArray:()=>OL,forEachUnique:()=>AX,forEachYieldExpression:()=>xie,forSomeAncestorDirectory:()=>mTe,formatColorAndReset:()=>v1,formatDiagnostic:()=>wJ,formatDiagnostics:()=>lRe,formatDiagnosticsWithColorAndContext:()=>yce,formatGeneratedName:()=>N0,formatGeneratedNamePart:()=>iD,formatLocation:()=>OJ,formatMessage:()=>MU,formatStringFromArgs:()=>lg,formatting:()=>Oc,fullTripleSlashAMDReferencePathRegEx:()=>$U,fullTripleSlashReferencePathRegEx:()=>YU,generateDjb2Hash:()=>tC,generateTSConfig:()=>pIe,generatorHelper:()=>GW,getAdjustedReferenceLocation:()=>oX,getAdjustedRenameLocation:()=>o5,getAliasDeclarationFromName:()=>Qj,getAllAccessorDeclarations:()=>wS,getAllDecoratorsOfClass:()=>sJ,getAllDecoratorsOfClassElement:()=>s7,getAllJSDocTags:()=>S4,getAllJSDocTagsOfKind:()=>ISe,getAllKeys:()=>y1e,getAllProjectOutputs:()=>f7,getAllSuperTypeNodes:()=>CC,getAllUnscopedEmitHelpers:()=>TH,getAllowJSCompilerOption:()=>Xy,getAllowSyntheticDefaultImports:()=>FS,getAncestor:()=>b0,getAnyExtensionFromPath:()=>Jx,getAreDeclarationMapsEnabled:()=>Pk,getAssignedExpandoInitializer:()=>OA,getAssignedName:()=>b4,getAssignedNameOfIdentifier:()=>UP,getAssignmentDeclarationKind:()=>Bl,getAssignmentDeclarationPropertyAccessKind:()=>KL,getAssignmentTargetKind:()=>BA,getAutomaticTypeDirectiveNames:()=>WF,getBaseFileName:()=>ic,getBinaryOperatorPrecedence:()=>uk,getBuildInfo:()=>_7,getBuildInfoFileVersionMap:()=>tK,getBuildInfoText:()=>pce,getBuildOrderFromAnyBuildOrder:()=>G7,getBuilderCreationParameters:()=>C7,getBuilderFileEmit:()=>ab,getCheckFlags:()=>xl,getClassExtendsHeritageElement:()=>UE,getClassLikeDeclarationOfSymbol:()=>Vg,getCombinedLocalAndExportSymbolFlags:()=>LR,getCombinedModifierFlags:()=>c0,getCombinedNodeFlags:()=>Ov,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>qV,getCommentRange:()=>w_,getCommonSourceDirectory:()=>$P,getCommonSourceDirectoryOfConfig:()=>_D,getCompilerOptionValue:()=>H3,getCompilerOptionsDiffValue:()=>uIe,getConditions:()=>ib,getConfigFileParsingDiagnostics:()=>rT,getConstantValue:()=>Sae,getContainerFlags:()=>Uq,getContainerNode:()=>aT,getContainingClass:()=>su,getContainingClassExcludingClassDecorators:()=>n3,getContainingClassStaticBlock:()=>wie,getContainingFunction:()=>Gp,getContainingFunctionDeclaration:()=>kie,getContainingFunctionOrClassStaticBlock:()=>t3,getContainingNodeArray:()=>rae,getContainingObjectLiteralElement:()=>UO,getContextualTypeFromParent:()=>T5,getContextualTypeFromParentOrAncestorTypeNode:()=>i5,getCurrentTime:()=>$w,getDeclarationDiagnostics:()=>cce,getDeclarationEmitExtensionForPath:()=>I3,getDeclarationEmitOutputFilePath:()=>noe,getDeclarationEmitOutputFilePathWorker:()=>A3,getDeclarationFileExtension:()=>oq,getDeclarationFromName:()=>NC,getDeclarationModifierFlagsFromSymbol:()=>Df,getDeclarationOfKind:()=>fl,getDeclarationsOfKind:()=>iie,getDeclaredExpandoInitializer:()=>UL,getDecorators:()=>Ly,getDefaultCompilerOptions:()=>dz,getDefaultExportInfoWorker:()=>B5,getDefaultFormatCodeSettings:()=>X7,getDefaultLibFileName:()=>aL,getDefaultLibFilePath:()=>wpe,getDefaultLikeExportInfo:()=>z5,getDiagnosticText:()=>eIe,getDiagnosticsWithinSpan:()=>ude,getDirectoryPath:()=>ai,getDirectoryToWatchFailedLookupLocation:()=>aK,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>Gce,getDocumentPositionMapper:()=>sY,getDocumentSpansEqualityComparer:()=>TX,getESModuleInterop:()=>yh,getEditsForFileRename:()=>yde,getEffectiveBaseTypeNode:()=>D_,getEffectiveConstraintOfTypeParameter:()=>Zx,getEffectiveContainerForJSDocTemplateTag:()=>g3,getEffectiveImplementsTypeNodes:()=>AR,getEffectiveInitializer:()=>jL,getEffectiveJSDocHost:()=>y0,getEffectiveModifierFlags:()=>pd,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>_oe,getEffectiveModifierFlagsNoCache:()=>hoe,getEffectiveReturnTypeNode:()=>nm,getEffectiveSetAccessorTypeAnnotationNode:()=>aoe,getEffectiveTypeAnnotationNode:()=>yu,getEffectiveTypeParameterDeclarations:()=>ky,getEffectiveTypeRoots:()=>OP,getElementOrPropertyAccessArgumentExpressionOrName:()=>_3,getElementOrPropertyAccessName:()=>zg,getElementsOfBindingOrAssignmentPattern:()=>rD,getEmitDeclarations:()=>Nf,getEmitFlags:()=>ja,getEmitHelpers:()=>SW,getEmitModuleDetectionKind:()=>nH,getEmitModuleKind:()=>wu,getEmitModuleResolutionKind:()=>md,getEmitScriptTarget:()=>os,getEmitStandardClassFields:()=>Goe,getEnclosingBlockScopeContainer:()=>hh,getEnclosingContainer:()=>Mj,getEncodedSemanticClassifications:()=>tY,getEncodedSyntacticClassifications:()=>nY,getEndLinePosition:()=>DL,getEntityNameFromTypeNode:()=>zL,getEntrypointsFromPackageJsonInfo:()=>Wq,getErrorCountForSummary:()=>k7,getErrorSpanForNode:()=>AS,getErrorSummaryText:()=>Hce,getEscapedTextOfIdentifierOrLiteral:()=>LC,getEscapedTextOfJsxAttributeName:()=>sP,getEscapedTextOfJsxNamespacedName:()=>YA,getExpandoInitializer:()=>g0,getExportAssignmentExpression:()=>Zj,getExportInfoMap:()=>RO,getExportNeedsImportStarHelper:()=>Rle,getExpressionAssociativity:()=>aU,getExpressionPrecedence:()=>wC,getExternalHelpersModuleName:()=>iw,getExternalModuleImportEqualsDeclarationExpression:()=>xC,getExternalModuleName:()=>yR,getExternalModuleNameFromDeclaration:()=>eoe,getExternalModuleNameFromPath:()=>fU,getExternalModuleNameLiteral:()=>yI,getExternalModuleRequireArgument:()=>Bj,getFallbackOptions:()=>jw,getFileEmitOutput:()=>xce,getFileMatcherPatterns:()=>$3,getFileNamesFromConfigSpecs:()=>LP,getFileWatcherEventKind:()=>MV,getFilesInErrorForSummary:()=>w7,getFirstConstructorWithBody:()=>ag,getFirstIdentifier:()=>Vp,getFirstNonSpaceCharacterPosition:()=>tde,getFirstProjectOutput:()=>AJ,getFixableErrorSpanExpression:()=>BX,getFormatCodeSettingsForWriting:()=>w5,getFullWidth:()=>xL,getFunctionFlags:()=>Vc,getHeritageClause:()=>ak,getHostSignatureFromJSDoc:()=>v0,getIdentifierAutoGenerate:()=>$Te,getIdentifierGeneratedImportReference:()=>Dae,getIdentifierTypeArguments:()=>zS,getImmediatelyInvokedFunctionExpression:()=>xS,getImpliedNodeFormatForFile:()=>Jw,getImpliedNodeFormatForFileWorker:()=>HJ,getImportNeedsImportDefaultHelper:()=>iJ,getImportNeedsImportStarHelper:()=>r7,getIndentSize:()=>NR,getIndentString:()=>S3,getInferredLibraryNameResolveFrom:()=>T7,getInitializedVariables:()=>HC,getInitializerOfBinaryExpression:()=>Hj,getInitializerOfBindingOrAssignmentElement:()=>aw,getInterfaceBaseTypeNodes:()=>PC,getInternalEmitFlags:()=>Am,getInvokedExpression:()=>o3,getIsolatedModules:()=>om,getJSDocAugmentsTag:()=>Rre,getJSDocClassTag:()=>KV,getJSDocCommentRanges:()=>wj,getJSDocCommentsAndTags:()=>Jj,getJSDocDeprecatedTag:()=>XV,getJSDocDeprecatedTagNoCache:()=>kre,getJSDocEnumTag:()=>YV,getJSDocHost:()=>CS,getJSDocImplementsTags:()=>Dre,getJSDocOverloadTags:()=>Xj,getJSDocOverrideTagNoCache:()=>Lre,getJSDocParameterTags:()=>Qx,getJSDocParameterTagsNoCache:()=>Tre,getJSDocPrivateTag:()=>bSe,getJSDocPrivateTagNoCache:()=>Cre,getJSDocProtectedTag:()=>ESe,getJSDocProtectedTagNoCache:()=>Pre,getJSDocPublicTag:()=>ySe,getJSDocPublicTagNoCache:()=>Nre,getJSDocReadonlyTag:()=>SSe,getJSDocReadonlyTagNoCache:()=>Mre,getJSDocReturnTag:()=>wre,getJSDocReturnType:()=>dL,getJSDocRoot:()=>SR,getJSDocSatisfiesExpressionType:()=>JU,getJSDocSatisfiesTag:()=>$V,getJSDocTags:()=>f0,getJSDocTagsNoCache:()=>ASe,getJSDocTemplateTag:()=>TSe,getJSDocThisTag:()=>E4,getJSDocType:()=>p0,getJSDocTypeAliasName:()=>QH,getJSDocTypeAssertionType:()=>_F,getJSDocTypeParameterDeclarations:()=>N3,getJSDocTypeParameterTags:()=>Are,getJSDocTypeParameterTagsNoCache:()=>Ire,getJSDocTypeTag:()=>d0,getJSXImplicitImportBase:()=>J3,getJSXRuntimeImport:()=>K3,getJSXTransformEnabled:()=>q3,getKeyForCompilerOptions:()=>Pq,getLanguageVariant:()=>yk,getLastChild:()=>NU,getLeadingCommentRanges:()=>Yh,getLeadingCommentRangesOfNode:()=>kj,getLeftmostAccessExpression:()=>kR,getLeftmostExpression:()=>wR,getLibraryNameFromLibFileName:()=>jJ,getLineAndCharacterOfPosition:()=>bs,getLineInfo:()=>eJ,getLineOfLocalPosition:()=>WC,getLineOfLocalPositionFromLineMap:()=>LS,getLineStartPositionForPosition:()=>lm,getLineStarts:()=>kg,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>Doe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>Roe,getLinesBetweenPositions:()=>oC,getLinesBetweenRangeEndAndRangeStart:()=>xU,getLinesBetweenRangeEndPositions:()=>pTe,getLiteralText:()=>fie,getLocalNameForExternalImport:()=>nD,getLocalSymbolForExportDefault:()=>MR,getLocaleSpecificMessage:()=>Wo,getLocaleTimeString:()=>Yw,getMappedContextSpan:()=>IX,getMappedDocumentSpan:()=>y5,getMappedLocation:()=>l2,getMatchedFileSpec:()=>pK,getMatchedIncludeSpec:()=>fK,getMeaningFromDeclaration:()=>rO,getMeaningFromLocation:()=>oT,getMembersOfDeclaration:()=>Rie,getModeForFileReference:()=>Hw,getModeForResolutionAtIndex:()=>bce,getModeForUsageLocation:()=>FJ,getModifiedTime:()=>IA,getModifiers:()=>ME,getModuleInstanceState:()=>Kg,getModuleNameStringLiteralAt:()=>Kw,getModuleSpecifierEndingPreference:()=>Koe,getModuleSpecifierResolverHost:()=>vX,getNameForExportedSymbol:()=>M5,getNameFromImportAttribute:()=>cW,getNameFromIndexInfo:()=>Eie,getNameFromPropertyName:()=>hO,getNameOfAccessExpression:()=>PU,getNameOfCompilerOptionValue:()=>hq,getNameOfDeclaration:()=>Mo,getNameOfExpando:()=>jj,getNameOfJSDocTypedef:()=>Sre,getNameOrArgument:()=>JL,getNameTable:()=>JY,getNamesForExportedSymbol:()=>dde,getNamespaceDeclarationNode:()=>bR,getNewLineCharacter:()=>Uv,getNewLineKind:()=>xO,getNewLineOrDefaultFromHost:()=>ty,getNewTargetContainer:()=>Wie,getNextJSDocCommentLocation:()=>Kj,getNodeForGeneratedName:()=>lw,getNodeId:()=>as,getNodeKind:()=>y1,getNodeModifiers:()=>o2,getNodeModulePathParts:()=>aW,getNonAssignedNameOfDeclaration:()=>y4,getNonAssignmentOperatorForCompoundAssignment:()=>GP,getNonAugmentationDeclaration:()=>xj,getNonDecoratorTokenPosOfNode:()=>Ej,getNormalizedAbsolutePath:()=>go,getNormalizedAbsolutePathWithoutRoot:()=>FV,getNormalizedPathComponents:()=>YM,getObjectFlags:()=>Wr,getOperator:()=>lU,getOperatorAssociativity:()=>sU,getOperatorPrecedence:()=>ck,getOptionFromName:()=>pq,getOptionsForLibraryResolution:()=>Lq,getOptionsNameMap:()=>aD,getOrCreateEmitNode:()=>Ou,getOrCreateExternalHelpersModuleNameIfNeeded:()=>cse,getOrUpdate:()=>n0,getOriginalNode:()=>Pl,getOriginalNodeId:()=>Wu,getOriginalSourceFile:()=>nTe,getOutputDeclarationFileName:()=>YP,getOutputDeclarationFileNameWorker:()=>SJ,getOutputExtension:()=>p7,getOutputFileNames:()=>aRe,getOutputJSFileNameWorker:()=>TJ,getOutputPathsFor:()=>XP,getOutputPathsForBundle:()=>KP,getOwnEmitOutputFilePath:()=>toe,getOwnKeys:()=>Xh,getOwnValues:()=>EA,getPackageJsonInfo:()=>p1,getPackageJsonTypesVersionsPaths:()=>OF,getPackageJsonsVisibleToFile:()=>lde,getPackageNameFromTypesPackageName:()=>FP,getPackageScopeForPath:()=>Dw,getParameterSymbolFromJSDoc:()=>tk,getParameterTypeNode:()=>TTe,getParentNodeInSpan:()=>vO,getParseTreeNode:()=>Do,getParsedCommandLineOfConfigFile:()=>fw,getPathComponents:()=>zc,getPathComponentsRelativeTo:()=>BV,getPathFromPathComponents:()=>Cy,getPathUpdater:()=>oY,getPathsBasePath:()=>x3,getPatternFromSpec:()=>Hoe,getPendingEmitKind:()=>bD,getPositionOfLineAndCharacter:()=>tL,getPossibleGenericSignatures:()=>sX,getPossibleOriginalInputExtensionForExtension:()=>roe,getPossibleTypeArgumentsInfo:()=>lX,getPreEmitDiagnostics:()=>sRe,getPrecedingNonSpaceCharacterPosition:()=>E5,getPrivateIdentifier:()=>lJ,getProperties:()=>aJ,getProperty:()=>k6,getPropertyArrayElementValue:()=>Lie,getPropertyAssignmentAliasLikeExpression:()=>Yie,getPropertyNameForPropertyNameNode:()=>PS,getPropertyNameForUniqueESSymbol:()=>eTe,getPropertyNameFromType:()=>im,getPropertyNameOfBindingOrAssignmentElement:()=>$H,getPropertySymbolFromBindingElement:()=>v5,getPropertySymbolsFromContextualType:()=>fz,getQuoteFromPreference:()=>bX,getQuotePreference:()=>uf,getRangesWhere:()=>cG,getRefactorContextSpan:()=>LI,getReferencedFileLocation:()=>QP,getRegexFromPattern:()=>qy,getRegularExpressionForWildcard:()=>XC,getRegularExpressionsForWildcards:()=>X3,getRelativePathFromDirectory:()=>Em,getRelativePathFromFile:()=>QM,getRelativePathToDirectoryOrUrl:()=>RA,getRenameLocation:()=>EO,getReplacementSpanForContextToken:()=>pX,getResolutionDiagnostic:()=>KJ,getResolutionModeOverride:()=>hD,getResolveJsonModule:()=>A0,getResolvePackageJsonExports:()=>mW,getResolvePackageJsonImports:()=>_W,getResolvedExternalModuleName:()=>T3,getRestIndicatorOfBindingOrAssignmentElement:()=>gF,getRestParameterElementType:()=>Oj,getRightMostAssignedExpression:()=>HL,getRootDeclaration:()=>C_,getRootDirectoryOfResolutionCache:()=>Vce,getRootLength:()=>ph,getRootPathSplitLength:()=>MRe,getScriptKind:()=>CX,getScriptKindFromFileName:()=>Z3,getScriptTargetFeatures:()=>pW,getSelectedEffectiveModifierFlags:()=>jA,getSelectedSyntacticModifierFlags:()=>foe,getSemanticClassifications:()=>_de,getSemanticJsxChildren:()=>xR,getSetAccessorTypeAnnotationNode:()=>ioe,getSetAccessorValueParameter:()=>FC,getSetExternalModuleIndicator:()=>bk,getShebang:()=>h4,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>qj,getSingleVariableOfVariableStatement:()=>zA,getSnapshotText:()=>RD,getSnippetElement:()=>yH,getSourceFileOfModule:()=>G4,getSourceFileOfNode:()=>jn,getSourceFilePathInNewDir:()=>R3,getSourceFilePathInNewDirWorker:()=>D3,getSourceFileVersionAsHashFromText:()=>W7,getSourceFilesToEmit:()=>mU,getSourceMapRange:()=>qv,getSourceMapper:()=>Pde,getSourceTextOfNodeFromSourceFile:()=>OE,getSpanOfTokenAtPosition:()=>gh,getSpellingSuggestion:()=>$N,getStartPositionOfLine:()=>Gy,getStartPositionOfRange:()=>UC,getStartsOnNewLine:()=>pP,getStaticPropertiesAndClassStaticBlock:()=>a7,getStrictOptionValue:()=>fd,getStringComparer:()=>zx,getSubPatternFromSpec:()=>Y3,getSuperCallFromStatement:()=>i7,getSuperContainer:()=>WL,getSupportedCodeFixes:()=>HY,getSupportedExtensions:()=>YC,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Ek,getSwitchedType:()=>wX,getSymbolId:()=>Ta,getSymbolNameForPrivateIdentifier:()=>sk,getSymbolTarget:()=>PX,getSyntacticClassifications:()=>hde,getSyntacticModifierFlags:()=>Uy,getSyntacticModifierFlagsNoCache:()=>vU,getSynthesizedDeepClone:()=>cl,getSynthesizedDeepCloneWithReplacements:()=>bO,getSynthesizedDeepClones:()=>E1,getSynthesizedDeepClonesWithReplacements:()=>MX,getSyntheticLeadingComments:()=>jR,getSyntheticTrailingComments:()=>Bk,getTargetLabel:()=>Z7,getTargetOfBindingOrAssignmentElement:()=>rb,getTemporaryModuleResolutionState:()=>Rw,getTextOfConstantValue:()=>mie,getTextOfIdentifierOrLiteral:()=>em,getTextOfJSDocComment:()=>fL,getTextOfJsxAttributeName:()=>Dk,getTextOfJsxNamespacedName:()=>lP,getTextOfNode:()=>fc,getTextOfNodeFromSourceText:()=>bC,getTextOfPropertyName:()=>lR,getThisContainer:()=>Fd,getThisParameter:()=>qE,getTokenAtPosition:()=>po,getTokenPosOfNode:()=>_0,getTokenSourceMapRange:()=>XTe,getTouchingPropertyName:()=>Vd,getTouchingToken:()=>xD,getTrailingCommentRanges:()=>a0,getTrailingSemicolonDeferringWriter:()=>pU,getTransformFlagsSubtreeExclusions:()=>gae,getTransformers:()=>yJ,getTsBuildInfoEmitOutputFilePath:()=>$v,getTsConfigObjectLiteralExpression:()=>AC,getTsConfigPropArrayElementValue:()=>e3,getTypeAnnotationNode:()=>ooe,getTypeArgumentOrTypeParameterList:()=>Fue,getTypeKeywordOfTypeOnlyImport:()=>EX,getTypeNode:()=>xae,getTypeNodeIfAccessible:()=>f2,getTypeParameterFromJsDoc:()=>Uie,getTypeParameterOwner:()=>mSe,getTypesPackageName:()=>jF,getUILocale:()=>Lne,getUniqueName:()=>cT,getUniqueSymbolId:()=>ede,getUseDefineForClassFields:()=>dP,getWatchErrorSummaryDiagnosticMessage:()=>lK,getWatchFactory:()=>NJ,group:()=>YN,groupBy:()=>w6,guessIndentation:()=>nie,handleNoEmitOptions:()=>qJ,hasAbstractModifier:()=>XE,hasAccessorModifier:()=>P_,hasAmbientModifier:()=>gU,hasChangesInResolutions:()=>vj,hasChildOfKind:()=>uO,hasContextSensitiveParameters:()=>iW,hasDecorators:()=>If,hasDocComment:()=>Oue,hasDynamicName:()=>jy,hasEffectiveModifier:()=>gp,hasEffectiveModifiers:()=>C3,hasEffectiveReadonlyModifier:()=>zC,hasExtension:()=>xA,hasIndexSignature:()=>kX,hasInitializer:()=>zy,hasInvalidEscape:()=>uU,hasJSDocNodes:()=>Fp,hasJSDocParameterTags:()=>xre,hasJSFileExtension:()=>YE,hasJsonModuleEmitEnabled:()=>U3,hasOnlyExpressionInitializer:()=>ES,hasOverrideModifier:()=>P3,hasPossibleExternalModuleReference:()=>yie,hasProperty:()=>xs,hasPropertyAccessExpressionWithName:()=>oO,hasQuestionToken:()=>FA,hasRecordedExternalHelpers:()=>lse,hasResolutionModeOverride:()=>lae,hasRestParameter:()=>mj,hasScopeMarker:()=>Kre,hasStaticModifier:()=>mc,hasSyntacticModifier:()=>Zr,hasSyntacticModifiers:()=>poe,hasTSFileExtension:()=>XA,hasTabstop:()=>oae,hasTrailingDirectorySeparator:()=>kv,hasType:()=>w4,hasTypeArguments:()=>XSe,hasZeroOrOneAsteriskCharacter:()=>kU,helperString:()=>SH,hostGetCanonicalFileName:()=>Gv,hostUsesCaseSensitiveFileNames:()=>CR,idText:()=>Sr,identifierIsThisKeyword:()=>hU,identifierToKeywordKind:()=>u0,identity:()=>nl,identitySourceMapConsumer:()=>n7,ignoreSourceNewlines:()=>EH,ignoredPaths:()=>XM,importDefaultHelper:()=>jW,importFromModuleSpecifier:()=>DC,importNameElisionDisabled:()=>LU,importStarHelper:()=>Vk,indexOfAnyCharCode:()=>Sc,indexOfNode:()=>sR,indicesOf:()=>OM,inferredTypesContainingFile:()=>yD,injectClassNamedEvaluationHelperBlockIfMissing:()=>c7,injectClassThisAssignmentIfMissing:()=>Wle,insertImports:()=>s2,insertLeadingStatement:()=>mAe,insertSorted:()=>xy,insertStatementAfterCustomPrologue:()=>SS,insertStatementAfterStandardPrologue:()=>zSe,insertStatementsAfterCustomPrologue:()=>yj,insertStatementsAfterStandardPrologue:()=>eg,intersperse:()=>co,intrinsicTagNameToString:()=>KU,introducesArgumentsExoticObject:()=>Pie,inverseJsxOptionMap:()=>kP,isAbstractConstructorSymbol:()=>Noe,isAbstractModifier:()=>Oae,isAccessExpression:()=>ws,isAccessibilityModifier:()=>uX,isAccessor:()=>Oy,isAccessorModifier:()=>Fae,isAliasSymbolDeclaration:()=>$Se,isAliasableExpression:()=>ok,isAmbientModule:()=>ku,isAmbientPropertyDeclaration:()=>Dj,isAnonymousFunctionDefinition:()=>kC,isAnyDirectorySeparator:()=>wV,isAnyImportOrBareOrAccessedRequire:()=>vie,isAnyImportOrReExport:()=>CL,isAnyImportSyntax:()=>TS,isAnySupportedFileExtension:()=>STe,isApplicableVersionedTypesKey:()=>Cw,isArgumentExpressionOfElementAccess:()=>ZK,isArray:()=>To,isArrayBindingElement:()=>N4,isArrayBindingOrAssignmentElement:()=>bL,isArrayBindingOrAssignmentPattern:()=>lj,isArrayBindingPattern:()=>n1,isArrayLiteralExpression:()=>_d,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>Zv,isArrayTypeNode:()=>Xk,isArrowFunction:()=>Gs,isAsExpression:()=>$k,isAssertClause:()=>Hae,isAssertEntry:()=>aAe,isAssertionExpression:()=>bS,isAssertsKeyword:()=>kae,isAssignmentDeclaration:()=>RC,isAssignmentExpression:()=>Lc,isAssignmentOperator:()=>Vv,isAssignmentPattern:()=>gC,isAssignmentTarget:()=>ig,isAsteriskToken:()=>Hk,isAsyncFunction:()=>MC,isAsyncModifier:()=>_P,isAutoAccessorPropertyDeclaration:()=>Wd,isAwaitExpression:()=>eb,isAwaitKeyword:()=>NH,isBigIntLiteral:()=>YW,isBinaryExpression:()=>mr,isBinaryOperatorToken:()=>gse,isBindableObjectDefinePropertyCall:()=>DS,isBindableStaticAccessExpression:()=>VE,isBindableStaticElementAccessExpression:()=>m3,isBindableStaticNameExpression:()=>NS,isBindingElement:()=>Qa,isBindingElementOfBareOrAccessedRequire:()=>Bie,isBindingName:()=>vS,isBindingOrAssignmentElement:()=>Vre,isBindingOrAssignmentPattern:()=>vL,isBindingPattern:()=>ta,isBlock:()=>Xo,isBlockOrCatchScoped:()=>Sj,isBlockScope:()=>Nj,isBlockScopedContainerTopLevel:()=>gie,isBooleanLiteral:()=>hC,isBreakOrContinueStatement:()=>pC,isBreakStatement:()=>rAe,isBuildInfoFile:()=>dce,isBuilderProgram:()=>qce,isBundle:()=>OH,isBundleFileTextLike:()=>Poe,isCallChain:()=>hS,isCallExpression:()=>la,isCallExpressionTarget:()=>JK,isCallLikeExpression:()=>wE,isCallLikeOrFunctionLikeExpression:()=>cj,isCallOrNewExpression:()=>I_,isCallOrNewExpressionTarget:()=>KK,isCallSignatureDeclaration:()=>sI,isCallToHelper:()=>mP,isCaseBlock:()=>SP,isCaseClause:()=>YR,isCaseKeyword:()=>zae,isCaseOrDefaultClause:()=>L4,isCatchClause:()=>c1,isCatchClauseVariableDeclaration:()=>iae,isCatchClauseVariableDeclarationOrBindingElement:()=>Tj,isCheckJsEnabledForFile:()=>Ak,isChildOfNodeWithKind:()=>GSe,isCircularBuildOrder:()=>DI,isClassDeclaration:()=>Ic,isClassElement:()=>$c,isClassExpression:()=>Zc,isClassInstanceProperty:()=>Bre,isClassLike:()=>ui,isClassMemberModifier:()=>oj,isClassNamedEvaluationHelperBlock:()=>RI,isClassOrTypeElement:()=>D4,isClassStaticBlockDeclaration:()=>Rl,isClassThisAssignmentBlock:()=>jP,isCollapsedRange:()=>dTe,isColonToken:()=>Mae,isCommaExpression:()=>rw,isCommaListExpression:()=>yP,isCommaSequence:()=>RP,isCommaToken:()=>Pae,isComment:()=>u5,isCommonJsExportPropertyAssignment:()=>Q4,isCommonJsExportedExpression:()=>Nie,isCompoundAssignment:()=>BP,isComputedNonLiteralName:()=>PL,isComputedPropertyName:()=>Za,isConciseBody:()=>P4,isConditionalExpression:()=>XR,isConditionalTypeNode:()=>dI,isConstTypeReference:()=>Og,isConstructSignatureDeclaration:()=>Jk,isConstructorDeclaration:()=>Ml,isConstructorTypeNode:()=>HR,isContextualKeyword:()=>y3,isContinueStatement:()=>nAe,isCustomPrologue:()=>wL,isDebuggerStatement:()=>iAe,isDeclaration:()=>Ju,isDeclarationBindingElement:()=>gL,isDeclarationFileName:()=>Su,isDeclarationName:()=>Bg,isDeclarationNameOfEnumOrNamespace:()=>RU,isDeclarationReadonly:()=>K4,isDeclarationStatement:()=>Qre,isDeclarationWithTypeParameterChildren:()=>Pj,isDeclarationWithTypeParameters:()=>Cj,isDecorator:()=>Eu,isDecoratorTarget:()=>Tue,isDefaultClause:()=>AP,isDefaultImport:()=>WA,isDefaultModifier:()=>eF,isDefaultedExpandoInitializer:()=>Gie,isDeleteExpression:()=>Vae,isDeleteTarget:()=>$j,isDeprecatedDeclaration:()=>L5,isDestructuringAssignment:()=>jv,isDiagnosticWithLocation:()=>zX,isDiskPathRoot:()=>OV,isDoStatement:()=>eAe,isDocumentRegistryEntry:()=>DO,isDotDotDotToken:()=>QW,isDottedName:()=>GC,isDynamicName:()=>E3,isESSymbolIdentifier:()=>tTe,isEffectiveExternalModule:()=>wA,isEffectiveModuleDeclaration:()=>hie,isEffectiveStrictModeSourceFile:()=>Rj,isElementAccessChain:()=>QV,isElementAccessExpression:()=>Qs,isEmittedFileOfProgram:()=>_ce,isEmptyArrayLiteral:()=>boe,isEmptyBindingElement:()=>bre,isEmptyBindingPattern:()=>yre,isEmptyObjectLiteral:()=>TU,isEmptyStatement:()=>LH,isEmptyStringLiteral:()=>zj,isEntityName:()=>Zd,isEntityNameExpression:()=>Gl,isEnumConst:()=>FE,isEnumDeclaration:()=>x0,isEnumMember:()=>u1,isEqualityOperatorKind:()=>A5,isEqualsGreaterThanToken:()=>Lae,isExclamationToken:()=>qk,isExcludedFile:()=>Pse,isExclusivelyTypeOnlyImportOrExport:()=>WJ,isExpandoPropertyDeclaration:()=>lW,isExportAssignment:()=>kl,isExportDeclaration:()=>Yl,isExportModifier:()=>oI,isExportName:()=>mF,isExportNamespaceAsDefaultDeclaration:()=>U4,isExportOrDefaultModifier:()=>sw,isExportSpecifier:()=>Ku,isExportsIdentifier:()=>RS,isExportsOrModuleExportsOrAlias:()=>f1,isExpression:()=>yt,isExpressionNode:()=>ng,isExpressionOfExternalModuleImportEqualsDeclaration:()=>Rue,isExpressionOfOptionalChainRoot:()=>I4,isExpressionStatement:()=>eu,isExpressionWithTypeArguments:()=>Kv,isExpressionWithTypeArgumentsInClassExtendsClause:()=>M3,isExternalModule:()=>sc,isExternalModuleAugmentation:()=>WE,isExternalModuleImportEqualsDeclaration:()=>h0,isExternalModuleIndicator:()=>EL,isExternalModuleNameRelative:()=>Yc,isExternalModuleReference:()=>Ah,isExternalModuleSymbol:()=>mO,isExternalOrCommonJsModule:()=>zp,isFileLevelReservedGeneratedIdentifier:()=>hL,isFileLevelUniqueName:()=>V4,isFileProbablyExternalModule:()=>uw,isFirstDeclarationOfSymbolParameter:()=>xX,isFixablePromiseHandler:()=>uY,isForInOrOfStatement:()=>nR,isForInStatement:()=>aF,isForInitializer:()=>Af,isForOfStatement:()=>Qk,isForStatement:()=>HS,isFunctionBlock:()=>BE,isFunctionBody:()=>dj,isFunctionDeclaration:()=>Ac,isFunctionExpression:()=>Os,isFunctionExpressionOrArrowFunction:()=>QE,isFunctionLike:()=>ea,isFunctionLikeDeclaration:()=>Bs,isFunctionLikeKind:()=>PA,isFunctionLikeOrClassStaticBlockDeclaration:()=>tR,isFunctionOrConstructorTypeNode:()=>Gre,isFunctionOrModuleBlock:()=>aj,isFunctionSymbol:()=>jie,isFunctionTypeNode:()=>Eh,isFutureReservedKeyword:()=>QSe,isGeneratedIdentifier:()=>sl,isGeneratedPrivateIdentifier:()=>gS,isGetAccessor:()=>Fy,isGetAccessorDeclaration:()=>rf,isGetOrSetAccessorDeclaration:()=>T4,isGlobalDeclaration:()=>BDe,isGlobalScopeAugmentation:()=>R_,isGrammarError:()=>die,isHeritageClause:()=>of,isHoistedFunction:()=>Y4,isHoistedVariableStatement:()=>$4,isIdentifier:()=>Ve,isIdentifierANonContextualKeyword:()=>nU,isIdentifierName:()=>Xie,isIdentifierOrThisTypeNode:()=>fse,isIdentifierPart:()=>s0,isIdentifierStart:()=>$h,isIdentifierText:()=>tf,isIdentifierTypePredicate:()=>Mie,isIdentifierTypeReference:()=>Zoe,isIfStatement:()=>US,isIgnoredFileFromWildCardWatching:()=>Vw,isImplicitGlob:()=>WU,isImportAttribute:()=>qae,isImportAttributeName:()=>zre,isImportAttributes:()=>mI,isImportCall:()=>Bp,isImportClause:()=>Sh,isImportDeclaration:()=>kc,isImportEqualsDeclaration:()=>tu,isImportKeyword:()=>gP,isImportMeta:()=>dR,isImportOrExportSpecifier:()=>CA,isImportOrExportSpecifierName:()=>Zue,isImportSpecifier:()=>np,isImportTypeAssertionContainer:()=>oAe,isImportTypeNode:()=>ug,isImportableFile:()=>$X,isInComment:()=>Qv,isInCompoundLikeAssignment:()=>Yj,isInExpressionContext:()=>s3,isInJSDoc:()=>GL,isInJSFile:()=>lr,isInJSXText:()=>kue,isInJsonFile:()=>c3,isInNonReferenceComment:()=>Gue,isInReferenceComment:()=>Bue,isInRightSideOfInternalImportEqualsDeclaration:()=>$7,isInString:()=>CI,isInTemplateString:()=>aX,isInTopLevelContext:()=>r3,isInTypeQuery:()=>kS,isIncrementalCompilation:()=>uP,isIndexSignatureDeclaration:()=>t1,isIndexedAccessTypeNode:()=>jS,isInferTypeNode:()=>BS,isInfinityOrNaNString:()=>iP,isInitializedProperty:()=>ww,isInitializedVariable:()=>vk,isInsideJsxElement:()=>l5,isInsideJsxElementOrAttribute:()=>Lue,isInsideNodeModules:()=>IO,isInsideTemplateLiteral:()=>pO,isInstanceOfExpression:()=>L3,isInstantiatedModule:()=>Kq,isInterfaceDeclaration:()=>hd,isInternalDeclaration:()=>_j,isInternalModuleImportEqualsDeclaration:()=>hR,isInternalName:()=>KH,isIntersectionTypeNode:()=>uI,isIntrinsicJsxName:()=>DR,isIterationStatement:()=>Wy,isJSDoc:()=>n_,isJSDocAllType:()=>$ae,isJSDocAugmentsTag:()=>vI,isJSDocAuthorTag:()=>uAe,isJSDocCallbackTag:()=>FH,isJSDocClassTag:()=>Zae,isJSDocCommentContainingNode:()=>k4,isJSDocConstructSignature:()=>ER,isJSDocDeprecatedTag:()=>jH,isJSDocEnumTag:()=>ew,isJSDocFunctionType:()=>QR,isJSDocImplementsTag:()=>dF,isJSDocIndexSignature:()=>u3,isJSDocLikeText:()=>rq,isJSDocLink:()=>Xae,isJSDocLinkCode:()=>Yae,isJSDocLinkLike:()=>kA,isJSDocLinkPlain:()=>lAe,isJSDocMemberName:()=>R0,isJSDocNameReference:()=>IP,isJSDocNamepathType:()=>cAe,isJSDocNamespaceBody:()=>LSe,isJSDocNode:()=>rR,isJSDocNonNullableType:()=>sF,isJSDocNullableType:()=>$R,isJSDocOptionalParameter:()=>Rk,isJSDocOptionalType:()=>WH,isJSDocOverloadTag:()=>ZR,isJSDocOverrideTag:()=>cF,isJSDocParameterTag:()=>r_,isJSDocPrivateTag:()=>BH,isJSDocPropertyLikeTag:()=>fC,isJSDocPropertyTag:()=>ese,isJSDocProtectedTag:()=>GH,isJSDocPublicTag:()=>zH,isJSDocReadonlyTag:()=>VH,isJSDocReturnTag:()=>uF,isJSDocSatisfiesExpression:()=>qU,isJSDocSatisfiesTag:()=>pF,isJSDocSeeTag:()=>dAe,isJSDocSignature:()=>D0,isJSDocTag:()=>iR,isJSDocTemplateTag:()=>sm,isJSDocThisTag:()=>UH,isJSDocThrowsTag:()=>fAe,isJSDocTypeAlias:()=>Zf,isJSDocTypeAssertion:()=>tD,isJSDocTypeExpression:()=>d1,isJSDocTypeLiteral:()=>XS,isJSDocTypeTag:()=>xP,isJSDocTypedefTag:()=>YS,isJSDocUnknownTag:()=>pAe,isJSDocUnknownType:()=>Qae,isJSDocVariadicType:()=>lF,isJSXTagName:()=>_R,isJsonEqual:()=>nW,isJsonSourceFile:()=>Qf,isJsxAttribute:()=>F_,isJsxAttributeLike:()=>M4,isJsxAttributeName:()=>sae,isJsxAttributes:()=>l1,isJsxChild:()=>AL,isJsxClosingElement:()=>a1,isJsxClosingFragment:()=>Jae,isJsxElement:()=>dg,isJsxExpression:()=>TP,isJsxFragment:()=>s1,isJsxNamespacedName:()=>t_,isJsxOpeningElement:()=>W_,isJsxOpeningFragment:()=>hI,isJsxOpeningLikeElement:()=>ud,isJsxOpeningLikeElementTagName:()=>Aue,isJsxSelfClosingElement:()=>JS,isJsxSpreadAttribute:()=>gI,isJsxTagNameExpression:()=>vC,isJsxText:()=>nI,isJumpStatementTarget:()=>aO,isKeyword:()=>Bd,isKeywordOrPunctuation:()=>v3,isKnownSymbol:()=>lk,isLabelName:()=>$K,isLabelOfLabeledStatement:()=>YK,isLabeledStatement:()=>o1,isLateVisibilityPaintedStatement:()=>q4,isLeftHandSideExpression:()=>ep,isLeftHandSideOfAssignment:()=>uTe,isLet:()=>X4,isLineBreak:()=>Hu,isLiteralComputedPropertyDeclarationName:()=>ik,isLiteralExpression:()=>kE,isLiteralExpressionOfObject:()=>rj,isLiteralImportTypeNode:()=>Vy,isLiteralKind:()=>mC,isLiteralLikeAccess:()=>f3,isLiteralLikeElementAccess:()=>qL,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>e5,isLiteralTypeLikeExpression:()=>yAe,isLiteralTypeLiteral:()=>qre,isLiteralTypeNode:()=>Zy,isLocalName:()=>qg,isLogicalOperator:()=>goe,isLogicalOrCoalescingAssignmentExpression:()=>yU,isLogicalOrCoalescingAssignmentOperator:()=>BC,isLogicalOrCoalescingBinaryExpression:()=>mk,isLogicalOrCoalescingBinaryOperator:()=>fk,isMappedTypeNode:()=>JR,isMemberName:()=>Qh,isMetaProperty:()=>vP,isMethodDeclaration:()=>ql,isMethodOrAccessor:()=>MA,isMethodSignature:()=>bh,isMinusToken:()=>DH,isMissingDeclaration:()=>sAe,isMissingPackageJsonInfo:()=>Kse,isModifier:()=>xa,isModifierKind:()=>Wv,isModifierLike:()=>ll,isModuleAugmentationExternal:()=>Ij,isModuleBlock:()=>O_,isModuleBody:()=>Xre,isModuleDeclaration:()=>Xl,isModuleExportsAccessExpression:()=>rg,isModuleIdentifier:()=>Uj,isModuleName:()=>hse,isModuleOrEnumDeclaration:()=>SL,isModuleReference:()=>eie,isModuleSpecifierLike:()=>g5,isModuleWithStringLiteralName:()=>H4,isNameOfFunctionDeclaration:()=>tX,isNameOfModuleDeclaration:()=>eX,isNamedClassElement:()=>DSe,isNamedDeclaration:()=>ld,isNamedEvaluation:()=>hp,isNamedEvaluationSource:()=>rU,isNamedExportBindings:()=>ej,isNamedExports:()=>Pf,isNamedImportBindings:()=>pj,isNamedImports:()=>Hg,isNamedImportsOrExports:()=>B3,isNamedTupleMember:()=>qR,isNamespaceBody:()=>MSe,isNamespaceExport:()=>Th,isNamespaceExportDeclaration:()=>Zk,isNamespaceImport:()=>nb,isNamespaceReexportDeclaration:()=>zie,isNewExpression:()=>r1,isNewExpressionTarget:()=>r2,isNoSubstitutionTemplateLiteral:()=>rI,isNode:()=>xSe,isNodeArray:()=>LE,isNodeArrayMultiLine:()=>xoe,isNodeDescendantOf:()=>jE,isNodeKind:()=>mL,isNodeLikeSystem:()=>AG,isNodeModulesDirectory:()=>d4,isNodeWithPossibleHoistedDeclaration:()=>qie,isNonContextualKeyword:()=>tU,isNonExportDefaultModifier:()=>EAe,isNonGlobalAmbientModule:()=>Aj,isNonGlobalDeclaration:()=>mde,isNonNullAccess:()=>aae,isNonNullChain:()=>x4,isNonNullExpression:()=>fI,isNonStaticMethodOrAccessorWithPrivateName:()=>Dle,isNotEmittedOrPartiallyEmittedNode:()=>PSe,isNotEmittedStatement:()=>wH,isNullishCoalesce:()=>ZV,isNumber:()=>Cv,isNumericLiteral:()=>vp,isNumericLiteralName:()=>cg,isObjectBindingElementWithoutPropertyName:()=>gO,isObjectBindingOrAssignmentElement:()=>yL,isObjectBindingOrAssignmentPattern:()=>sj,isObjectBindingPattern:()=>am,isObjectLiteralElement:()=>fj,isObjectLiteralElementLike:()=>Wg,isObjectLiteralExpression:()=>Oa,isObjectLiteralMethod:()=>xm,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Z4,isObjectTypeDeclaration:()=>qA,isOctalDigit:()=>_4,isOmittedExpression:()=>jc,isOptionalChain:()=>qu,isOptionalChainRoot:()=>uC,isOptionalDeclaration:()=>aP,isOptionalJSDocPropertyLikeTag:()=>xk,isOptionalTypeNode:()=>tF,isOuterExpression:()=>hF,isOutermostOptionalChain:()=>dC,isOverrideModifier:()=>Wae,isPackageJsonInfo:()=>FF,isPackedArrayLiteral:()=>UU,isParameter:()=>Ao,isParameterDeclaration:()=>HE,isParameterPropertyDeclaration:()=>mp,isParameterPropertyModifier:()=>_C,isParenthesizedExpression:()=>Gd,isParenthesizedTypeNode:()=>GS,isParseTreeNode:()=>cC,isPartOfTypeNode:()=>tg,isPartOfTypeQuery:()=>l3,isPartiallyEmittedExpression:()=>oF,isPatternMatch:()=>z6,isPinnedComment:()=>j4,isPlainJsFile:()=>RL,isPlusToken:()=>RH,isPossiblyTypeArgumentPosition:()=>dO,isPostfixUnaryExpression:()=>PH,isPrefixUnaryExpression:()=>tb,isPrivateIdentifier:()=>Ji,isPrivateIdentifierClassElementDeclaration:()=>cd,isPrivateIdentifierPropertyAccessExpression:()=>eR,isPrivateIdentifierSymbol:()=>$ie,isProgramBundleEmitBuildInfo:()=>Pce,isProgramUptoDate:()=>UJ,isPrologueDirective:()=>Im,isPropertyAccessChain:()=>A4,isPropertyAccessEntityNameExpression:()=>_k,isPropertyAccessExpression:()=>Fr,isPropertyAccessOrQualifiedName:()=>Ure,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>jre,isPropertyAssignment:()=>hc,isPropertyDeclaration:()=>Jo,isPropertyName:()=>oc,isPropertyNameLiteral:()=>N_,isPropertySignature:()=>yp,isProtoSetter:()=>Qie,isPrototypeAccess:()=>Hy,isPrototypePropertyAssignment:()=>XL,isPunctuation:()=>eU,isPushOrUnshiftIdentifier:()=>iU,isQualifiedName:()=>xd,isQuestionDotToken:()=>ZW,isQuestionOrExclamationToken:()=>pse,isQuestionOrPlusOrMinusToken:()=>_se,isQuestionToken:()=>$y,isRawSourceMap:()=>Ale,isReadonlyKeyword:()=>wae,isReadonlyKeywordOrPlusOrMinusToken:()=>mse,isRecognizedTripleSlashComment:()=>bj,isReferenceFileLocation:()=>gD,isReferencedFile:()=>w0,isRegularExpressionLiteral:()=>IH,isRequireCall:()=>Ad,isRequireVariableStatement:()=>Vj,isRestParameter:()=>Zh,isRestTypeNode:()=>nF,isReturnStatement:()=>Dm,isReturnStatementWithFixablePromiseHandler:()=>j5,isRightSideOfAccessExpression:()=>SU,isRightSideOfInstanceofExpression:()=>yoe,isRightSideOfPropertyAccess:()=>AD,isRightSideOfQualifiedName:()=>xue,isRightSideOfQualifiedNameOrPropertyAccess:()=>VC,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>voe,isRootedDiskPath:()=>fp,isSameEntityName:()=>gR,isSatisfiesExpression:()=>MH,isScopeMarker:()=>Jre,isSemicolonClassElement:()=>jae,isSetAccessor:()=>Fv,isSetAccessorDeclaration:()=>bp,isShebangTrivia:()=>GV,isShiftOperatorOrHigher:()=>eq,isShorthandAmbientModuleSymbol:()=>EC,isShorthandPropertyAssignment:()=>rp,isSignedNumericLiteral:()=>b3,isSimpleCopiableExpression:()=>_1,isSimpleInlineableExpression:()=>Rh,isSimpleParameter:()=>Lle,isSimpleParameterList:()=>Ow,isSingleOrDoubleQuote:()=>VL,isSourceFile:()=>$i,isSourceFileFromLibrary:()=>MD,isSourceFileJS:()=>dd,isSourceFileNotJS:()=>USe,isSourceFileNotJson:()=>Gj,isSourceMapping:()=>Ile,isSpecialPropertyDeclaration:()=>Vie,isSpreadAssignment:()=>Xv,isSpreadElement:()=>e_,isStatement:()=>qi,isStatementButNotDeclaration:()=>TL,isStatementOrBlock:()=>Zre,isStatementWithLocals:()=>uie,isStatic:()=>sa,isStaticModifier:()=>aI,isString:()=>Po,isStringAKeyword:()=>ZSe,isStringANonContextualKeyword:()=>GA,isStringAndEmptyAnonymousObjectIntersection:()=>zue,isStringDoubleQuoted:()=>p3,isStringLiteral:()=>Ma,isStringLiteralLike:()=>ls,isStringLiteralOrJsxExpression:()=>tie,isStringLiteralOrTemplate:()=>ode,isStringOrNumericLiteralLike:()=>nf,isStringOrRegularExpressionOrTemplateLiteral:()=>cX,isStringTextContainingNode:()=>ij,isSuperCall:()=>IS,isSuperKeyword:()=>hP,isSuperOrSuperProperty:()=>jSe,isSuperProperty:()=>zd,isSupportedSourceFileName:()=>Xoe,isSwitchStatement:()=>EP,isSyntaxList:()=>eD,isSyntheticExpression:()=>ZTe,isSyntheticReference:()=>_I,isTagName:()=>QK,isTaggedTemplateExpression:()=>i1,isTaggedTemplateTag:()=>Sue,isTemplateExpression:()=>rF,isTemplateHead:()=>iI,isTemplateLiteral:()=>LA,isTemplateLiteralKind:()=>wy,isTemplateLiteralToken:()=>Wre,isTemplateLiteralTypeNode:()=>Bae,isTemplateLiteralTypeSpan:()=>CH,isTemplateMiddle:()=>xH,isTemplateMiddleOrTemplateTail:()=>R4,isTemplateSpan:()=>bP,isTemplateTail:()=>$W,isTextWhiteSpaceLike:()=>Hue,isThis:()=>ID,isThisContainerOrFunctionBlock:()=>Oie,isThisIdentifier:()=>KE,isThisInTypeQuery:()=>VA,isThisInitializedDeclaration:()=>i3,isThisInitializedObjectBindingExpression:()=>Fie,isThisProperty:()=>FL,isThisTypeNode:()=>Yk,isThisTypeParameter:()=>oP,isThisTypePredicate:()=>VSe,isThrowStatement:()=>kH,isToken:()=>NA,isTokenKind:()=>nj,isTraceEnabled:()=>Jg,isTransientSymbol:()=>mh,isTrivia:()=>IR,isTryStatement:()=>qS,isTupleTypeNode:()=>cI,isTypeAlias:()=>QL,isTypeAliasDeclaration:()=>Nm,isTypeAssertionExpression:()=>Gae,isTypeDeclaration:()=>BR,isTypeElement:()=>yS,isTypeKeyword:()=>a2,isTypeKeywordToken:()=>_X,isTypeKeywordTokenOrIdentifier:()=>f5,isTypeLiteralNode:()=>Ep,isTypeNode:()=>ji,isTypeNodeKind:()=>CU,isTypeOfExpression:()=>KR,isTypeOnlyExportDeclaration:()=>Fre,isTypeOnlyImportDeclaration:()=>_L,isTypeOnlyImportOrExportDeclaration:()=>m0,isTypeOperatorNode:()=>VS,isTypeParameterDeclaration:()=>gl,isTypePredicateNode:()=>Kk,isTypeQueryNode:()=>lI,isTypeReferenceNode:()=>Cf,isTypeReferenceType:()=>O4,isTypeUsableAsPropertyName:()=>rm,isUMDExportSymbol:()=>z3,isUnaryExpression:()=>uj,isUnaryExpressionWithWrite:()=>Hre,isUnicodeIdentifierStart:()=>f4,isUnionTypeNode:()=>Qy,isUnparsedNode:()=>tj,isUnparsedPrepend:()=>Kae,isUnparsedSource:()=>KS,isUnparsedTextLike:()=>Ore,isUrl:()=>rre,isValidBigIntString:()=>rW,isValidESSymbolDeclaration:()=>Cie,isValidTypeOnlyAliasUseSite:()=>T0,isValueSignatureDeclaration:()=>Jie,isVarAwaitUsing:()=>LL,isVarConst:()=>uR,isVarUsing:()=>kL,isVariableDeclaration:()=>wi,isVariableDeclarationInVariableStatement:()=>TC,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>GE,isVariableDeclarationInitializedToRequire:()=>d3,isVariableDeclarationList:()=>Uc,isVariableLike:()=>pR,isVariableLikeOrAccessor:()=>Die,isVariableStatement:()=>Ll,isVoidExpression:()=>pI,isWatchSet:()=>fTe,isWhileStatement:()=>tAe,isWhiteSpaceLike:()=>wg,isWhiteSpaceSingleLine:()=>A_,isWithStatement:()=>Uae,isWriteAccess:()=>HA,isWriteOnlyAccess:()=>F3,isYieldExpression:()=>iF,jsxModeNeedsExplicitImport:()=>UX,keywordPart:()=>Tp,last:()=>Ya,lastOrUndefined:()=>tl,length:()=>Me,libMap:()=>DF,libs:()=>yw,lineBreakPart:()=>CD,linkNamePart:()=>$ue,linkPart:()=>DX,linkTextPart:()=>b5,listFiles:()=>cK,loadModuleFromGlobalCache:()=>ile,loadWithModeAwareCache:()=>qw,makeIdentifierFromModuleName:()=>_ie,makeImport:()=>ey,makeImportIfNecessary:()=>Uue,makeStringLiteral:()=>MI,mangleScopedPackageName:()=>pD,map:()=>wt,mapAllOrFail:()=>RE,mapDefined:()=>Hi,mapDefinedEntries:()=>C6,mapDefinedIterator:()=>Pg,mapEntries:()=>Ane,mapIterator:()=>Ia,mapOneOrMany:()=>GX,mapToDisplayParts:()=>lb,matchFiles:()=>FU,matchPatternOrExact:()=>zU,matchedText:()=>Fne,matchesExclude:()=>RF,maybeBind:()=>oa,maybeSetLocalizedDiagnosticMessages:()=>Woe,memoize:()=>Td,memoizeCached:()=>Pne,memoizeOne:()=>uh,memoizeWeak:()=>b1e,metadataHelper:()=>AW,min:()=>yG,minAndMax:()=>$oe,missingFileModifiedTime:()=>Op,modifierToFlag:()=>UA,modifiersToFlags:()=>M_,moduleOptionDeclaration:()=>bq,moduleResolutionIsEqualTo:()=>lie,moduleResolutionNameAndModeGetter:()=>R7,moduleResolutionOptionDeclarations:()=>NF,moduleResolutionSupportsPackageJsonExportsAndImports:()=>KA,moduleResolutionUsesNodeModules:()=>m5,moduleSpecifiers:()=>m1,moveEmitHelpers:()=>Aae,moveRangeEnd:()=>O3,moveRangePastDecorators:()=>Gg,moveRangePastModifiers:()=>L_,moveRangePos:()=>E0,moveSyntheticComments:()=>Eae,mutateMap:()=>JC,mutateMapSkippingNewValues:()=>sg,needsParentheses:()=>S5,needsScopeMarker:()=>C4,newCaseClauseTracker:()=>O5,newPrivateEnvironment:()=>Ple,noEmitNotification:()=>Ww,noEmitSubstitution:()=>qP,noTransformers:()=>bJ,noTruncationMaximumTruncationLength:()=>dW,nodeCanBeDecorated:()=>a3,nodeHasName:()=>uL,nodeIsDecorated:()=>mR,nodeIsMissing:()=>zl,nodeIsPresent:()=>Yf,nodeIsSynthesized:()=>$s,nodeModuleNameResolver:()=>Qse,nodeModulesPathPart:()=>xh,nodeNextJsonConfigResolver:()=>Zse,nodeOrChildIsDecorated:()=>BL,nodeOverlapsWithStartEnd:()=>t5,nodePosToString:()=>wSe,nodeSeenTracker:()=>PI,nodeStartsNewLexicalEnvironment:()=>oU,nodeToDisplayParts:()=>kDe,noop:()=>$a,noopFileWatcher:()=>SD,normalizePath:()=>ga,normalizeSlashes:()=>Lu,not:()=>G6,notImplemented:()=>Ko,notImplementedResolver:()=>h7,nullNodeConverters:()=>pH,nullParenthesizerRules:()=>dH,nullTransformationContext:()=>JP,objectAllocator:()=>lu,operatorPart:()=>c2,optionDeclarations:()=>pg,optionMapToObject:()=>AF,optionsAffectingProgramStructure:()=>Iq,optionsForBuild:()=>Rq,optionsForWatch:()=>sD,optionsHaveChanges:()=>oR,optionsHaveModuleResolutionChanges:()=>oie,or:()=>Ym,orderedRemoveItem:()=>Gx,orderedRemoveItemAt:()=>Dy,outFile:()=>Ps,packageIdToPackageName:()=>B4,packageIdToString:()=>By,paramHelper:()=>IW,parameterIsThisKeyword:()=>JE,parameterNamePart:()=>Jue,parseBaseNodeFactory:()=>lq,parseBigInt:()=>Qoe,parseBuildCommand:()=>ZAe,parseCommandLine:()=>$Ae,parseCommandLineWorker:()=>dq,parseConfigFileTextToJson:()=>fq,parseConfigFileWithSystem:()=>kRe,parseConfigHostFromCompilerHostLike:()=>x7,parseCustomTypeOption:()=>TF,parseIsolatedEntityName:()=>bI,parseIsolatedJSDocComment:()=>Tse,parseJSDocTypeExpressionForTests:()=>FAe,parseJsonConfigFileContent:()=>fIe,parseJsonSourceFileConfigFileContent:()=>hw,parseJsonText:()=>pw,parseListTypeOption:()=>Ise,parseNodeFactory:()=>Ih,parseNodeModuleFromPath:()=>xw,parsePackageName:()=>Nw,parsePseudoBigInt:()=>eP,parseValidBigInt:()=>jU,patchWriteFileEnsuringDirectory:()=>tre,pathContainsNodeModules:()=>L0,pathIsAbsolute:()=>nC,pathIsBareSpecifier:()=>WV,pathIsRelative:()=>Wp,patternText:()=>Wne,perfLogger:()=>ad,performIncrementalCompilation:()=>FRe,performance:()=>Xne,plainJSErrors:()=>D7,positionBelongsToNode:()=>rX,positionIsASICandidate:()=>x5,positionIsSynthesized:()=>Zm,positionsAreOnSameLine:()=>Rf,preProcessFile:()=>sNe,probablyUsesSemicolons:()=>TO,processCommentPragmas:()=>aq,processPragmasIntoFields:()=>sq,processTaggedTemplateExpression:()=>fJ,programContainsEsModules:()=>jue,programContainsModules:()=>Vue,projectReferenceIsEqualTo:()=>gj,propKeyHelper:()=>FW,propertyNamePart:()=>Kue,pseudoBigIntToString:()=>$E,punctuationPart:()=>$u,pushIfUnique:()=>Tf,quote:()=>p2,quotePreferenceFromString:()=>yX,rangeContainsPosition:()=>sO,rangeContainsPositionExclusive:()=>lO,rangeContainsRange:()=>cf,rangeContainsRangeExclusive:()=>Due,rangeContainsStartEnd:()=>cO,rangeEndIsOnSameLineAsRangeStart:()=>gk,rangeEndPositionsAreOnSameLine:()=>Aoe,rangeEquals:()=>pG,rangeIsOnSingleLine:()=>OS,rangeOfNode:()=>GU,rangeOfTypeParameters:()=>VU,rangeOverlapsWithStartEnd:()=>i2,rangeStartIsOnSameLineAsRangeEnd:()=>Ioe,rangeStartPositionsAreOnSameLine:()=>W3,readBuilderProgram:()=>B7,readConfigFile:()=>mw,readHelper:()=>OW,readJson:()=>jC,readJsonConfigFile:()=>Dse,readJsonOrUndefined:()=>AU,reduceEachLeadingCommentRange:()=>cre,reduceEachTrailingCommentRange:()=>ure,reduceLeft:()=>od,reduceLeftIterator:()=>Pr,reducePathComponents:()=>_S,refactor:()=>wI,regExpEscape:()=>bTe,relativeComplement:()=>Ine,removeAllComments:()=>Fk,removeEmitHelper:()=>YTe,removeExtension:()=>Tk,removeFileExtension:()=>Id,removeIgnoredPath:()=>P7,removeMinAndVersionNumbers:()=>bG,removeOptionality:()=>wue,removePrefix:()=>QN,removeSuffix:()=>Bx,removeTrailingDirectorySeparator:()=>o0,repeatString:()=>_O,replaceElement:()=>_G,replaceFirstStar:()=>$A,resolutionExtensionIsTSOrJson:()=>$C,resolveConfigFileProjectName:()=>bK,resolveJSModule:()=>Yse,resolveLibrary:()=>BF,resolveModuleName:()=>uD,resolveModuleNameFromCache:()=>YIe,resolvePackageNameToPackageJson:()=>Cq,resolvePath:()=>Py,resolveProjectReferencePath:()=>vD,resolveTripleslashReference:()=>b7,resolveTypeReferenceDirective:()=>qse,resolvingEmptyArray:()=>uW,restHelper:()=>MW,returnFalse:()=>Xm,returnNoopFileWatcher:()=>TD,returnTrue:()=>Pv,returnUndefined:()=>r0,returnsPromise:()=>cY,runInitializersHelper:()=>RW,sameFlatMap:()=>vm,sameMap:()=>eo,sameMapping:()=>Wxe,scanShebangTrivia:()=>VV,scanTokenAtPosition:()=>Iie,scanner:()=>Qu,screenStartingMessageCodes:()=>z7,semanticDiagnosticsOptionDeclarations:()=>Sq,serializeCompilerOptions:()=>IF,server:()=>i8e,servicesVersion:()=>Ope,setCommentRange:()=>ac,setConfigFileInOptions:()=>vq,setConstantValue:()=>Tae,setEachParent:()=>zR,setEmitFlags:()=>pr,setFunctionNameHelper:()=>zW,setGetSourceFileAsHashVersioned:()=>F7,setIdentifierAutoGenerate:()=>Gk,setIdentifierGeneratedImportReference:()=>Rae,setIdentifierTypeArguments:()=>Jv,setInternalEmitFlags:()=>zk,setLocalizedDiagnosticMessages:()=>Ooe,setModuleDefaultHelper:()=>VW,setNodeFlags:()=>tae,setObjectAllocator:()=>woe,setOriginalNode:()=>Cr,setParent:()=>qa,setParentRecursive:()=>Jy,setPrivateIdentifier:()=>eT,setSnippetElement:()=>bH,setSourceMapRange:()=>Pa,setStackTraceLimit:()=>G1e,setStartsOnNewLine:()=>bW,setSyntheticLeadingComments:()=>I0,setSyntheticTrailingComments:()=>ZA,setSys:()=>q1e,setSysLog:()=>Zne,setTextRange:()=>dt,setTextRangeEnd:()=>FR,setTextRangePos:()=>tP,setTextRangePosEnd:()=>vh,setTextRangePosWidth:()=>nP,setTokenSourceMapRange:()=>bae,setTypeNode:()=>Iae,setUILocale:()=>kne,setValueDeclaration:()=>YL,shouldAllowImportingTsExtension:()=>fD,shouldPreserveConstEnums:()=>e1,shouldUseUriStyleNodeCoreModules:()=>k5,showModuleSpecifier:()=>Coe,signatureHasLiteralTypes:()=>Xq,signatureHasRestParameter:()=>Yu,signatureToDisplayParts:()=>NX,single:()=>mG,singleElementArray:()=>AA,singleIterator:()=>P6,singleOrMany:()=>lh,singleOrUndefined:()=>sh,skipAlias:()=>bu,skipAssertions:()=>hAe,skipConstraint:()=>hX,skipOuterExpressions:()=>$l,skipParentheses:()=>hs,skipPartiallyEmittedExpressions:()=>Tm,skipTrivia:()=>ka,skipTypeChecking:()=>ZC,skipTypeParentheses:()=>rk,skipWhile:()=>Bne,sliceAfter:()=>BU,some:()=>bt,sort:()=>uS,sortAndDeduplicate:()=>KN,sortAndDeduplicateDiagnostics:()=>Yx,sourceFileAffectingCompilerOptions:()=>CF,sourceFileMayBeEmitted:()=>MS,sourceMapCommentRegExp:()=>e7,sourceMapCommentRegExpDontCareLineStart:()=>rJ,spacePart:()=>wl,spanMap:()=>lG,spreadArrayHelper:()=>WW,stableSort:()=>Dv,startEndContainsRange:()=>nX,startEndOverlapsWithStartEnd:()=>n5,startOnNewLine:()=>Xu,startTracing:()=>Yne,startsWith:()=>uo,startsWithDirectory:()=>zV,startsWithUnderscore:()=>jX,startsWithUseStrict:()=>ase,stringContainsAt:()=>fde,stringToToken:()=>PE,stripQuotes:()=>tm,supportedDeclarationExtensions:()=>Mk,supportedJSExtensions:()=>lH,supportedJSExtensionsFlat:()=>VR,supportedLocaleDirectories:()=>hj,supportedTSExtensions:()=>GR,supportedTSExtensionsFlat:()=>sH,supportedTSImplementationExtensions:()=>Lk,suppressLeadingAndTrailingTrivia:()=>Ap,suppressLeadingTrivia:()=>LX,suppressTrailingTrivia:()=>nde,symbolEscapedNameNoDefault:()=>h5,symbolName:()=>Sl,symbolNameNoDefault:()=>_5,symbolPart:()=>que,symbolToDisplayParts:()=>u2,syntaxMayBeASICandidate:()=>XX,syntaxRequiresTrailingSemicolonOrASI:()=>I5,sys:()=>gu,sysLog:()=>JM,tagNamesAreEquivalent:()=>C0,takeWhile:()=>j6,targetOptionDeclaration:()=>Ew,templateObjectHelper:()=>wW,testFormatSettings:()=>Eue,textChangeRangeIsUnchanged:()=>gre,textChangeRangeNewSpan:()=>lC,textChanges:()=>_r,textOrKeywordPart:()=>RX,textPart:()=>df,textRangeContainsPositionInclusive:()=>sL,textSpanContainsPosition:()=>HV,textSpanContainsTextSpan:()=>fre,textSpanEnd:()=>Kl,textSpanIntersection:()=>hre,textSpanIntersectsWith:()=>v4,textSpanIntersectsWithPosition:()=>_re,textSpanIntersectsWithTextSpan:()=>fSe,textSpanIsEmpty:()=>pre,textSpanOverlap:()=>mre,textSpanOverlapsWith:()=>pSe,textSpansEqual:()=>ND,textToKeywordObj:()=>oL,timestamp:()=>Ys,toArray:()=>SA,toBuilderFileEmit:()=>kce,toBuilderStateFileInfoForMultiEmit:()=>Lce,toEditorSettings:()=>VO,toFileNameLowerCase:()=>ch,toLowerCase:()=>Cne,toPath:()=>ol,toProgramEmitPending:()=>wce,tokenIsIdentifierOrKeyword:()=>sd,tokenIsIdentifierOrKeywordOrGreaterThan:()=>sre,tokenToString:()=>fa,trace:()=>bo,tracing:()=>sr,tracingEnabled:()=>jM,transform:()=>oPe,transformClassFields:()=>Vle,transformDeclarations:()=>vJ,transformECMAScriptModule:()=>gJ,transformES2015:()=>rce,transformES2016:()=>nce,transformES2017:()=>qle,transformES2018:()=>Jle,transformES2019:()=>Kle,transformES2020:()=>Xle,transformES2021:()=>Yle,transformES5:()=>ice,transformESDecorators:()=>Hle,transformESNext:()=>$le,transformGenerators:()=>oce,transformJsx:()=>tce,transformLegacyDecorators:()=>Ule,transformModule:()=>hJ,transformNamedEvaluation:()=>Sp,transformNodeModule:()=>sce,transformNodes:()=>Fw,transformSystemModule:()=>ace,transformTypeScript:()=>Gle,transpile:()=>_Ne,transpileModule:()=>Mde,transpileOptionValueCompilerOptions:()=>xq,tryAddToSet:()=>Rv,tryAndIgnoreErrors:()=>N5,tryCast:()=>ii,tryDirectoryExists:()=>D5,tryExtractTSExtension:()=>k3,tryFileExists:()=>AO,tryGetClassExtendingExpressionWithTypeArguments:()=>bU,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>EU,tryGetDirectories:()=>R5,tryGetExtensionFromPath:()=>jg,tryGetImportFromModuleSpecifier:()=>$L,tryGetJSDocSatisfiesTypeNode:()=>sW,tryGetModuleNameFromFile:()=>ow,tryGetModuleSpecifierFromDeclaration:()=>vR,tryGetNativePerformanceHooks:()=>qne,tryGetPropertyAccessOrIdentifierToString:()=>hk,tryGetPropertyNameOfBindingOrAssignmentElement:()=>vF,tryGetSourceMappingURL:()=>Tle,tryGetTextOfPropertyName:()=>SC,tryIOAndConsumeErrors:()=>C5,tryParseJson:()=>w3,tryParsePattern:()=>WR,tryParsePatterns:()=>eW,tryParseRawSourceMap:()=>tJ,tryReadDirectory:()=>OX,tryReadFile:()=>PP,tryRemoveDirectoryPrefix:()=>OU,tryRemoveExtension:()=>Yoe,tryRemovePrefix:()=>TG,tryRemoveSuffix:()=>One,typeAcquisitionDeclarations:()=>Sw,typeAliasNamePart:()=>Xue,typeDirectiveIsEqualTo:()=>cie,typeKeywords:()=>W5,typeParameterNamePart:()=>Yue,typeToDisplayParts:()=>yO,unchangedPollThresholds:()=>KM,unchangedTextChangeRange:()=>IL,unescapeLeadingUnderscores:()=>Vi,unmangleScopedPackageName:()=>Pw,unorderedRemoveItem:()=>TA,unorderedRemoveItemAt:()=>EG,unreachableCodeIsError:()=>zoe,unusedLabelIsError:()=>Boe,unwrapInnermostStatementOfLabel:()=>Wj,updateErrorForNoInputFiles:()=>xF,updateLanguageServiceSourceFile:()=>qY,updateMissingFilePathsWatch:()=>DJ,updateResolutionField:()=>lD,updateSharedExtendedConfigFileWatcher:()=>v7,updateSourceFile:()=>iq,updateWatchingWildcardDirectories:()=>Gw,usesExtensionsOnImports:()=>Joe,usingSingleLineStringWriter:()=>yC,utf16EncodeAsString:()=>Xx,validateLocaleAndSetLanguage:()=>_Se,valuesHelper:()=>BW,version:()=>Re,versionMajorMinor:()=>ue,visitArray:()=>kw,visitCommaListElements:()=>ZF,visitEachChild:()=>In,visitFunctionBody:()=>lf,visitIterationBody:()=>Rd,visitLexicalEnvironment:()=>Zq,visitNode:()=>nt,visitNodes:()=>Vn,visitParameterList:()=>Dl,walkUpBindingElementsAndPatterns:()=>$x,walkUpLexicalEnvironments:()=>Cle,walkUpOuterExpressions:()=>sse,walkUpParenthesizedExpressions:()=>Bv,walkUpParenthesizedTypes:()=>nk,walkUpParenthesizedTypesAndGetParentAndChild:()=>Kie,whitespaceOrMapCommentRegExp:()=>t7,writeCommentRange:()=>PR,writeFile:()=>OC,writeFileEnsuringDirectories:()=>_U,zipWith:()=>yi});var db=T({"src/server/_namespaces/ts.ts"(){ra(),tO(),si(),cZ(),_T()}}),a8e={};X(a8e,{ActionInvalidate:()=>Zw,ActionPackageInstalled:()=>eO,ActionSet:()=>Qw,ActionWatchTypingLocations:()=>n2,Arguments:()=>RK,AutoImportProviderProject:()=>TZ,AuxiliaryProject:()=>EZ,CharRangeSection:()=>OZ,CloseFileWatcherEvent:()=>o9,CommandNames:()=>cge,ConfigFileDiagEvent:()=>e9,ConfiguredProject:()=>AZ,CreateDirectoryWatcherEvent:()=>i9,CreateFileWatcherEvent:()=>r9,Errors:()=>oy,EventBeginInstallTypes:()=>q7,EventEndInstallTypes:()=>J7,EventInitializationFailed:()=>xK,EventTypesRegistry:()=>H7,ExternalProject:()=>Jz,GcTimer:()=>mZ,InferredProject:()=>bZ,LargeFileReferencedEvent:()=>Zz,LineIndex:()=>C2,LineLeaf:()=>E8,LineNode:()=>qI,LogLevel:()=>uZ,Msg:()=>dZ,OpenFileInfoTelemetryEvent:()=>DZ,Project:()=>mT,ProjectInfoTelemetryEvent:()=>n9,ProjectKind:()=>D2,ProjectLanguageServiceStateEvent:()=>t9,ProjectLoadingFinishEvent:()=>Qz,ProjectLoadingStartEvent:()=>$z,ProjectReferenceProjectLoadKind:()=>PZ,ProjectService:()=>MZ,ProjectsUpdatedInBackgroundEvent:()=>v8,ScriptInfo:()=>gZ,ScriptVersionCache:()=>c9,Session:()=>dge,TextStorage:()=>hZ,ThrottledOperations:()=>fZ,TypingsCache:()=>vZ,TypingsInstallerAdapter:()=>mge,allFilesAreJsOrDts:()=>Ghe,allRootFilesAreJsOrDts:()=>Bhe,asNormalizedPath:()=>LOe,convertCompilerOptions:()=>Kz,convertFormatOptions:()=>YD,convertScriptKindName:()=>xZ,convertTypeAcquisition:()=>Uhe,convertUserPreferences:()=>Hhe,convertWatchOptions:()=>g8,countEachFileTypes:()=>_8,createInstallTypingsRequest:()=>yhe,createModuleSpecifierCache:()=>tge,createNormalizedPathMap:()=>kOe,createPackageJsonCache:()=>nge,createSortedArray:()=>Ahe,emptyArray:()=>gc,findArgument:()=>EDe,forEachResolvedProjectReferenceProject:()=>$D,formatDiagnosticToProtocol:()=>b8,formatMessage:()=>rge,getBaseConfigFileName:()=>pZ,getLocationInNewDocument:()=>sge,hasArgument:()=>bDe,hasNoTypeScriptSource:()=>Vhe,indent:()=>t2,isBackgroundProject:()=>h8,isConfigFile:()=>$he,isConfiguredProject:()=>V0,isDynamicFileName:()=>m8,isExternalProject:()=>yZ,isInferredProject:()=>XD,isInferredProjectName:()=>bhe,makeAutoImportProviderProjectName:()=>She,makeAuxiliaryProjectName:()=>The,makeInferredProjectName:()=>Ehe,maxFileSize:()=>Yz,maxProgramSizeForNonTsFiles:()=>Xz,normalizedPathToPath:()=>f8,nowString:()=>SDe,nullCancellationToken:()=>lge,nullTypingsInstaller:()=>qz,projectContainsInfoDirectly:()=>UI,protocol:()=>zhe,removeSorted:()=>wOe,stringifyIndented:()=>O0,toEvent:()=>ige,toNormalizedPath:()=>ml,tryConvertScriptKindName:()=>IZ,typingsInstaller:()=>ghe,updateProjectIfDirty:()=>jp});var Rlt=T({"src/typescript/_namespaces/ts.server.ts"(){K7(),_T()}}),s8e={};X(s8e,{ANONYMOUS:()=>F5,AccessFlags:()=>tV,AssertionLevel:()=>xG,AssignmentDeclarationKind:()=>uV,AssignmentKind:()=>QU,Associativity:()=>eH,BreakpointResolver:()=>ZY,BuilderFileEmit:()=>rK,BuilderProgramKind:()=>iK,BuilderState:()=>Mm,BundleFileSectionKind:()=>DV,CallHierarchy:()=>OI,CharacterCodes:()=>EV,CheckFlags:()=>YG,CheckMode:()=>YF,ClassificationType:()=>qK,ClassificationTypeNames:()=>HK,CommentDirectiveType:()=>wG,Comparison:()=>Be,CompletionInfoFlags:()=>FK,CompletionTriggerKind:()=>LK,Completions:()=>GI,ContainerFlags:()=>qq,ContextFlags:()=>GG,Debug:()=>N,DiagnosticCategory:()=>HM,Diagnostics:()=>f,DocumentHighlights:()=>G5,ElementFlags:()=>eV,EmitFlags:()=>a4,EmitHint:()=>IV,EmitOnly:()=>WG,EndOfLineState:()=>GK,EnumKind:()=>XG,ExitStatus:()=>FG,ExportKind:()=>eY,Extension:()=>SV,ExternalEmitHelpers:()=>AV,FileIncludeKind:()=>$6,FilePreprocessingDiagnosticsKind:()=>OG,FileSystemEntryKind:()=>kV,FileWatcherEventKind:()=>LV,FindAllReferences:()=>Ws,FlattenLevel:()=>uJ,FlowFlags:()=>UM,ForegroundColorEscapeSequences:()=>XJ,FunctionFlags:()=>ZU,GeneratedIdentifierFlags:()=>Y6,GetLiteralTextFlags:()=>XU,GoToDefinition:()=>UD,HighlightSpanKind:()=>wK,IdentifierNameMap:()=>II,IdentifierNameMultiMap:()=>cJ,ImportKind:()=>ZX,ImportsNotUsedAsValues:()=>hV,IndentStyle:()=>OK,IndexFlags:()=>nV,IndexKind:()=>oV,InferenceFlags:()=>lV,InferencePriority:()=>sV,InlayHintKind:()=>kK,InlayHints:()=>HQ,InternalEmitFlags:()=>TV,InternalSymbolName:()=>$G,InvalidatedProjectKind:()=>IK,JSDocParsingMode:()=>PV,JsDoc:()=>G0,JsTyping:()=>G_,JsxEmit:()=>_V,JsxFlags:()=>LG,JsxReferenceKind:()=>rV,LanguageServiceMode:()=>CK,LanguageVariant:()=>yV,LexicalEnvironmentFlags:()=>RV,ListFormat:()=>NV,LogLevel:()=>DG,MemberOverrideStatus:()=>zG,ModifierFlags:()=>K6,ModuleDetectionKind:()=>dV,ModuleInstanceState:()=>Hq,ModuleKind:()=>eC,ModuleResolutionKind:()=>qx,ModuleSpecifierEnding:()=>cH,NavigateTo:()=>wde,NavigationBar:()=>Hde,NewLineKind:()=>gV,NodeBuilderFlags:()=>VG,NodeCheckFlags:()=>QG,NodeFactoryFlags:()=>gH,NodeFlags:()=>J6,NodeResolutionFeatures:()=>Vq,ObjectFlags:()=>t4,OperationCanceledException:()=>Hx,OperatorPrecedence:()=>tH,OrganizeImports:()=>Lm,OrganizeImportsMode:()=>MK,OuterExpressionKinds:()=>xV,OutliningElementsCollector:()=>XQ,OutliningSpanKind:()=>zK,OutputFileType:()=>BK,PackageJsonAutoImportPreference:()=>NK,PackageJsonDependencyGroup:()=>DK,PatternMatchKind:()=>V5,PollingInterval:()=>s4,PollingWatchKind:()=>mV,PragmaKindFlags:()=>CV,PrivateIdentifierKind:()=>AH,ProcessLevel:()=>mJ,ProgramUpdateLevel:()=>CJ,QuotePreference:()=>JX,RelationComparisonResult:()=>X6,Rename:()=>zz,ScriptElementKind:()=>jK,ScriptElementKindModifier:()=>UK,ScriptKind:()=>r4,ScriptSnapshot:()=>Y7,ScriptTarget:()=>vV,SemanticClassificationFormat:()=>PK,SemanticMeaning:()=>qX,SemicolonPreference:()=>WK,SignatureCheckMode:()=>$F,SignatureFlags:()=>n4,SignatureHelp:()=>o8,SignatureKind:()=>iV,SmartSelectionRange:()=>QQ,SnippetKind:()=>o4,SortKind:()=>IG,StructureIsReused:()=>Q6,SymbolAccessibility:()=>HG,SymbolDisplay:()=>iy,SymbolDisplayPartKind:()=>nO,SymbolFlags:()=>Z6,SymbolFormatFlags:()=>UG,SyntaxKind:()=>q6,SyntheticSymbolKind:()=>qG,Ternary:()=>cV,ThrottledCancellationToken:()=>QY,TokenClass:()=>VK,TokenFlags:()=>kG,TransformFlags:()=>i4,TypeFacts:()=>XF,TypeFlags:()=>e4,TypeFormatFlags:()=>jG,TypeMapKind:()=>aV,TypePredicateKind:()=>JG,TypeReferenceSerializationKind:()=>KG,UnionReduction:()=>BG,UpToDateStatusType:()=>EK,VarianceFlags:()=>ZG,Version:()=>ym,VersionRange:()=>GM,WatchDirectoryFlags:()=>bV,WatchDirectoryKind:()=>fV,WatchFileKind:()=>pV,WatchLogLevel:()=>PJ,WatchType:()=>wc,accessPrivateIdentifier:()=>Mle,addDisposableResourceHelper:()=>KW,addEmitFlags:()=>k_,addEmitHelper:()=>eI,addEmitHelpers:()=>Ug,addInternalEmitFlags:()=>QA,addNodeFactoryPatcher:()=>jTe,addObjectAllocatorPatcher:()=>koe,addRange:()=>Jr,addRelatedInfo:()=>wa,addSyntheticLeadingComment:()=>fP,addSyntheticTrailingComment:()=>EW,addToSeen:()=>Rm,advancedAsyncSuperHelper:()=>Uk,affectsDeclarationPathOptionDeclarations:()=>Aq,affectsEmitOptionDeclarations:()=>Tq,allKeysStartWithDot:()=>VF,altDirectorySeparator:()=>ZM,and:()=>B6,append:()=>xn,appendIfUnique:()=>Mg,arrayFrom:()=>zo,arrayIsEqualTo:()=>Km,arrayIsHomogeneous:()=>eae,arrayIsSorted:()=>M6,arrayOf:()=>Rne,arrayReverseIterator:()=>dG,arrayToMap:()=>NE,arrayToMultiMap:()=>FM,arrayToNumericMap:()=>Nne,arraysEqual:()=>Ca,assertType:()=>T1e,assign:()=>Fx,assignHelper:()=>DW,asyncDelegator:()=>CW,asyncGeneratorHelper:()=>NW,asyncSuperHelper:()=>jk,asyncValues:()=>PW,attachFileToDiagnostics:()=>JA,awaitHelper:()=>tI,awaiterHelper:()=>LW,base64decode:()=>Toe,base64encode:()=>Soe,binarySearch:()=>Nv,binarySearchKey:()=>bA,bindSourceFile:()=>sle,breakIntoCharacterSpans:()=>Dde,breakIntoWordSpans:()=>Nde,buildLinkParts:()=>Que,buildOpts:()=>PF,buildOverload:()=>ROe,bundlerModuleNameResolver:()=>$se,canBeConvertedToAsync:()=>dY,canHaveDecorators:()=>QS,canHaveExportModifier:()=>Ik,canHaveFlowNode:()=>ZL,canHaveIllegalDecorators:()=>ZH,canHaveIllegalModifiers:()=>dse,canHaveIllegalType:()=>vAe,canHaveIllegalTypeParameters:()=>use,canHaveJSDoc:()=>ek,canHaveLocals:()=>fh,canHaveModifiers:()=>Cm,canHaveSymbol:()=>x_,canJsonReportNoInputFiles:()=>MP,canProduceDiagnostics:()=>d7,canUsePropertyAccess:()=>HU,canWatchAffectingLocation:()=>zce,canWatchAtTypes:()=>Fce,canWatchDirectoryOrFile:()=>M7,cartesianProduct:()=>zne,cast:()=>aa,chainBundle:()=>Pm,chainDiagnosticMessages:()=>jo,changeAnyExtension:()=>$M,changeCompilerHostLikeToUseCache:()=>Uw,changeExtension:()=>S0,changeFullExtension:()=>ire,changesAffectModuleResolution:()=>W4,changesAffectingProgramStructure:()=>aie,childIsDecorated:()=>IC,classElementOrClassElementParameterIsDecorated:()=>Fj,classHasClassThisAssignment:()=>dJ,classHasDeclaredOrExplicitlyAssignedName:()=>pJ,classHasExplicitlyAssignedName:()=>l7,classOrConstructorParameterIsDecorated:()=>zv,classPrivateFieldGetHelper:()=>HW,classPrivateFieldInHelper:()=>JW,classPrivateFieldSetHelper:()=>qW,classicNameResolver:()=>rle,classifier:()=>Bpe,cleanExtendedConfigCache:()=>y7,clear:()=>Vo,clearMap:()=>tp,clearSharedExtendedConfigFileWatcher:()=>RJ,climbPastPropertyAccess:()=>Q7,climbPastPropertyOrElementAccess:()=>Iue,clone:()=>hG,cloneCompilerOptions:()=>dX,closeFileWatcher:()=>Qm,closeFileWatcherOf:()=>Mf,codefix:()=>Fu,collapseTextChangeRangesAcrossMultipleVersions:()=>vre,collectExternalModuleInfo:()=>oJ,combine:()=>Wx,combinePaths:()=>Qr,commentPragmas:()=>qM,commonOptionsWithBuild:()=>bw,commonPackageFolders:()=>iH,compact:()=>WM,compareBooleans:()=>Ry,compareDataObjects:()=>DU,compareDiagnostics:()=>KC,compareDiagnosticsSkipRelatedInformation:()=>V3,compareEmitHelpers:()=>Cae,compareNumberOfDirectorySeparators:()=>Sk,comparePaths:()=>Lg,comparePathsCaseInsensitive:()=>Y1e,comparePathsCaseSensitive:()=>X1e,comparePatternKeys:()=>Bq,compareProperties:()=>wne,compareStringsCaseInsensitive:()=>F6,compareStringsCaseInsensitiveEslintCompatible:()=>Mne,compareStringsCaseSensitive:()=>Uu,compareStringsCaseSensitiveUI:()=>BM,compareTextSpans:()=>W6,compareValues:()=>rl,compileOnSaveCommandLineOption:()=>vw,compilerOptionsAffectDeclarationPath:()=>Uoe,compilerOptionsAffectEmit:()=>joe,compilerOptionsAffectSemanticDiagnostics:()=>Voe,compilerOptionsDidYouMeanDiagnostics:()=>Tw,compilerOptionsIndicateEsModules:()=>gX,compose:()=>E1e,computeCommonSourceDirectoryOfFilenames:()=>gce,computeLineAndCharacterOfPosition:()=>Kx,computeLineOfPosition:()=>iC,computeLineStarts:()=>DA,computePositionOfLineAndCharacter:()=>m4,computeSignature:()=>iT,computeSignatureWithDiagnostics:()=>ZJ,computeSuggestionDiagnostics:()=>lY,computedOptions:()=>_c,concatenate:()=>So,concatenateDiagnosticMessageChains:()=>Foe,consumesNodeCoreModules:()=>P5,contains:()=>Nr,containsIgnoredPath:()=>rP,containsObjectRestOrSpread:()=>cw,containsParseError:()=>aR,containsPath:()=>bm,convertCompilerOptionsForTelemetry:()=>kse,convertCompilerOptionsFromJson:()=>EIe,convertJsonOption:()=>ZS,convertToBase64:()=>Eoe,convertToJson:()=>_w,convertToObject:()=>Nse,convertToOptionsWithAbsolutePaths:()=>gq,convertToRelativePath:()=>rC,convertToTSConfig:()=>sIe,convertTypeAcquisitionFromJson:()=>SIe,copyComments:()=>lT,copyEntries:()=>F4,copyLeadingComments:()=>PD,copyProperties:()=>gG,copyTrailingAsLeadingComments:()=>SO,copyTrailingComments:()=>d2,couldStartTrivia:()=>lre,countWhere:()=>au,createAbstractBuilder:()=>DRe,createAccessorPropertyBackingField:()=>tq,createAccessorPropertyGetRedirector:()=>yse,createAccessorPropertySetRedirector:()=>bse,createBaseNodeFactory:()=>mae,createBinaryExpressionTrampoline:()=>yF,createBindingHelper:()=>UR,createBuildInfo:()=>zw,createBuilderProgram:()=>eK,createBuilderProgramUsingProgramBuildInfo:()=>Oce,createBuilderStatusReporter:()=>Zce,createCacheWithRedirects:()=>Mq,createCacheableExportInfoMap:()=>YX,createCachedDirectoryStructureHost:()=>g7,createClassNamedEvaluationHelperBlock:()=>Fle,createClassThisAssignmentBlock:()=>Ole,createClassifier:()=>HDe,createCommentDirectivesMap:()=>pie,createCompilerDiagnostic:()=>Hl,createCompilerDiagnosticForInvalidCustomType:()=>Ase,createCompilerDiagnosticFromMessageChain:()=>G3,createCompilerHost:()=>vce,createCompilerHostFromProgramHost:()=>gK,createCompilerHostWorker:()=>kJ,createDetachedDiagnostic:()=>OR,createDiagnosticCollection:()=>RR,createDiagnosticForFileFromMessageChain:()=>Lj,createDiagnosticForNode:()=>wr,createDiagnosticForNodeArray:()=>cR,createDiagnosticForNodeArrayFromMessageChain:()=>ML,createDiagnosticForNodeFromMessageChain:()=>Fg,createDiagnosticForNodeInSourceFile:()=>$f,createDiagnosticForRange:()=>Aie,createDiagnosticMessageChainFromDiagnostic:()=>Tie,createDiagnosticReporter:()=>Xw,createDocumentPositionMapper:()=>xle,createDocumentRegistry:()=>gde,createDocumentRegistryInternal:()=>rY,createEmitAndSemanticDiagnosticsBuilderProgram:()=>oK,createEmitHelperFactory:()=>Nae,createEmptyExports:()=>tw,createExpressionForJsxElement:()=>rse,createExpressionForJsxFragment:()=>ise,createExpressionForObjectLiteralElementLike:()=>ose,createExpressionForPropertyName:()=>JH,createExpressionFromEntityName:()=>nw,createExternalHelpersImportDeclarationIfNeeded:()=>YH,createFileDiagnostic:()=>Qc,createFileDiagnosticFromMessageChain:()=>J4,createForOfBindingStatement:()=>qH,createGetCanonicalFileName:()=>Mu,createGetSourceFile:()=>MJ,createGetSymbolAccessibilityDiagnosticForNode:()=>Yv,createGetSymbolAccessibilityDiagnosticForNodeName:()=>lce,createGetSymbolWalker:()=>lle,createIncrementalCompilerHost:()=>yK,createIncrementalProgram:()=>$ce,createInputFiles:()=>HTe,createInputFilesWithFilePaths:()=>_H,createInputFilesWithFileTexts:()=>hH,createJsxFactoryExpression:()=>HH,createLanguageService:()=>kpe,createLanguageServiceSourceFile:()=>pz,createMemberAccessForPropertyName:()=>$S,createModeAwareCache:()=>TI,createModeAwareCacheKey:()=>WP,createModuleNotFoundChain:()=>z4,createModuleResolutionCache:()=>cD,createModuleResolutionLoader:()=>BJ,createModuleResolutionLoaderUsingGlobalCache:()=>jce,createModuleSpecifierResolutionHost:()=>sT,createMultiMap:()=>Zp,createNodeConverters:()=>hae,createNodeFactory:()=>wk,createOptionNameMap:()=>SF,createOverload:()=>lZ,createPackageJsonImportFilter:()=>m2,createPackageJsonInfo:()=>FX,createParenthesizerRules:()=>_ae,createPatternMatcher:()=>Sde,createPrependNodes:()=>JJ,createPrinter:()=>k0,createPrinterWithDefaults:()=>IJ,createPrinterWithRemoveComments:()=>g1,createPrinterWithRemoveCommentsNeverAsciiEscape:()=>xJ,createPrinterWithRemoveCommentsOmitTrailingSemicolon:()=>Bw,createProgram:()=>A7,createProgramHost:()=>vK,createPropertyNameNodeForIdentifierOrLiteral:()=>oW,createQueue:()=>zM,createRange:()=>xf,createRedirectedBuilderProgram:()=>nK,createResolutionCache:()=>sK,createRuntimeTypeSerializer:()=>jle,createScanner:()=>wv,createSemanticDiagnosticsBuilderProgram:()=>RRe,createSet:()=>vG,createSolutionBuilder:()=>URe,createSolutionBuilderHost:()=>VRe,createSolutionBuilderWithWatch:()=>HRe,createSolutionBuilderWithWatchHost:()=>jRe,createSortedArray:()=>uG,createSourceFile:()=>dw,createSourceMapGenerator:()=>Sle,createSourceMapSource:()=>qTe,createSuperAccessVariableStatement:()=>u7,createSymbolTable:()=>ua,createSymlinkCache:()=>wU,createSystemWatchFunctions:()=>ere,createTextChange:()=>fO,createTextChangeFromStartLength:()=>p5,createTextChangeRange:()=>cL,createTextRangeFromNode:()=>mX,createTextRangeFromSpan:()=>d5,createTextSpan:()=>vu,createTextSpanFromBounds:()=>pc,createTextSpanFromNode:()=>Nd,createTextSpanFromRange:()=>sb,createTextSpanFromStringLiteralLikeContent:()=>fX,createTextWriter:()=>pk,createTokenRange:()=>IU,createTypeChecker:()=>hle,createTypeReferenceDirectiveResolutionCache:()=>zF,createTypeReferenceResolutionLoader:()=>E7,createUnparsedSourceFile:()=>mH,createWatchCompilerHost:()=>zRe,createWatchCompilerHostOfConfigFile:()=>Kce,createWatchCompilerHostOfFilesAndCompilerOptions:()=>Xce,createWatchFactory:()=>hK,createWatchHost:()=>_K,createWatchProgram:()=>BRe,createWatchStatusReporter:()=>Uce,createWriteFileMeasuringIO:()=>LJ,declarationNameToString:()=>Rs,decodeMappings:()=>nJ,decodedTextSpanIntersectsWith:()=>lL,decorateHelper:()=>TW,deduplicate:()=>DE,defaultIncludeSpec:()=>kF,defaultInitCompilerOptions:()=>MF,defaultMaximumTruncationLength:()=>Nk,detectSortCaseSensitivity:()=>XN,diagnosticCategoryName:()=>mS,diagnosticToString:()=>uT,directoryProbablyExists:()=>$m,directorySeparator:()=>al,displayPart:()=>ip,displayPartsToString:()=>jO,disposeEmitNodes:()=>vH,disposeResourcesHelper:()=>XW,documentSpansEqual:()=>SX,dumpTracingLegend:()=>$ne,elementAt:()=>Lv,elideNodes:()=>vse,emitComments:()=>uoe,emitDetachedComments:()=>doe,emitFiles:()=>m7,emitFilesAndReportErrors:()=>O7,emitFilesAndReportErrorsAndGetExitStatus:()=>Jce,emitModuleKindIsNonNodeESM:()=>j3,emitNewLineBeforeLeadingCommentOfPosition:()=>coe,emitNewLineBeforeLeadingComments:()=>soe,emitNewLineBeforeLeadingCommentsOfPosition:()=>loe,emitSkippedWithNoDiagnostics:()=>N7,emitUsingBuildInfo:()=>fce,emptyArray:()=>et,emptyFileSystemEntries:()=>gW,emptyMap:()=>U6,emptyOptions:()=>kf,emptySet:()=>Gne,endsWith:()=>Al,ensurePathIsNonModuleName:()=>CE,ensureScriptKind:()=>Q3,ensureTrailingDirectorySeparator:()=>Bc,entityNameToString:()=>_p,enumerateInsertsAndDeletes:()=>V6,equalOwnProperties:()=>Dne,equateStringsCaseInsensitive:()=>i0,equateStringsCaseSensitive:()=>dS,equateValues:()=>Mv,esDecorateHelper:()=>xW,escapeJsxAttributeString:()=>dU,escapeLeadingUnderscores:()=>hl,escapeNonAsciiString:()=>dk,escapeSnippetText:()=>ZE,escapeString:()=>og,escapeTemplateSubstitution:()=>cU,every:()=>Zn,expandPreOrPostfixIncrementOrDecrementExpression:()=>fF,explainFiles:()=>uK,explainIfFileIsRedirectAndImpliedFormat:()=>dK,exportAssignmentIsAlias:()=>TR,exportStarHelper:()=>UW,expressionResultIsUnused:()=>nae,extend:()=>O6,extendsHelper:()=>kW,extensionFromPath:()=>QC,extensionIsTS:()=>tW,extensionsNotSupportingExtensionlessResolution:()=>kk,externalHelpersModuleNameText:()=>Ky,factory:()=>w,fileExtensionIs:()=>Il,fileExtensionIsOneOf:()=>Tc,fileIncludeReasonToDiagnostics:()=>mK,fileShouldUseJavaScriptRequire:()=>HX,filter:()=>nr,filterMutate:()=>Xs,filterSemanticDiagnostics:()=>I7,find:()=>An,findAncestor:()=>Gn,findBestPatternMatch:()=>SG,findChildOfKind:()=>vs,findComputedPropertyNameCacheAssignment:()=>bF,findConfigFile:()=>hce,findContainingList:()=>r5,findDiagnosticForNode:()=>cde,findFirstNonJsxWhitespaceToken:()=>Cue,findIndex:()=>Gr,findLast:()=>Oo,findLastIndex:()=>Bi,findListItemInfo:()=>Nue,findMap:()=>Uo,findModifier:()=>DD,findNextToken:()=>b1,findPackageJson:()=>sde,findPackageJsons:()=>WX,findPrecedingMatchingToken:()=>c5,findPrecedingToken:()=>xc,findSuperStatementIndexPath:()=>o7,findTokenOnLeftOfPosition:()=>a5,findUseStrictPrologue:()=>XH,first:()=>Ha,firstDefined:()=>Ut,firstDefinedIterator:()=>dn,firstIterator:()=>fG,firstOrOnly:()=>VX,firstOrUndefined:()=>Xc,firstOrUndefinedIterator:()=>L6,fixupCompilerOptions:()=>fY,flatMap:()=>Pi,flatMapIterator:()=>Qp,flatMapToMutable:()=>rc,flatten:()=>ia,flattenCommaList:()=>Ese,flattenDestructuringAssignment:()=>tT,flattenDestructuringBinding:()=>h1,flattenDiagnosticMessageText:()=>z_,forEach:()=>Ue,forEachAncestor:()=>sie,forEachAncestorDirectory:()=>Sm,forEachChild:()=>Ho,forEachChildRecursively:()=>CP,forEachEmittedFile:()=>EJ,forEachEnclosingBlockScopeContainer:()=>bie,forEachEntry:()=>Gc,forEachExternalModuleToImportFrom:()=>QX,forEachImportClauseDeclaration:()=>h3,forEachKey:()=>_h,forEachLeadingCommentRange:()=>rL,forEachNameInAccessChainWalkingLeft:()=>Moe,forEachPropertyAssignment:()=>fR,forEachResolvedProjectReference:()=>VJ,forEachReturnStatement:()=>zE,forEachRight:()=>Bt,forEachTrailingCommentRange:()=>iL,forEachTsConfigPropArray:()=>OL,forEachUnique:()=>AX,forEachYieldExpression:()=>xie,forSomeAncestorDirectory:()=>mTe,formatColorAndReset:()=>v1,formatDiagnostic:()=>wJ,formatDiagnostics:()=>lRe,formatDiagnosticsWithColorAndContext:()=>yce,formatGeneratedName:()=>N0,formatGeneratedNamePart:()=>iD,formatLocation:()=>OJ,formatMessage:()=>MU,formatStringFromArgs:()=>lg,formatting:()=>Oc,fullTripleSlashAMDReferencePathRegEx:()=>$U,fullTripleSlashReferencePathRegEx:()=>YU,generateDjb2Hash:()=>tC,generateTSConfig:()=>pIe,generatorHelper:()=>GW,getAdjustedReferenceLocation:()=>oX,getAdjustedRenameLocation:()=>o5,getAliasDeclarationFromName:()=>Qj,getAllAccessorDeclarations:()=>wS,getAllDecoratorsOfClass:()=>sJ,getAllDecoratorsOfClassElement:()=>s7,getAllJSDocTags:()=>S4,getAllJSDocTagsOfKind:()=>ISe,getAllKeys:()=>y1e,getAllProjectOutputs:()=>f7,getAllSuperTypeNodes:()=>CC,getAllUnscopedEmitHelpers:()=>TH,getAllowJSCompilerOption:()=>Xy,getAllowSyntheticDefaultImports:()=>FS,getAncestor:()=>b0,getAnyExtensionFromPath:()=>Jx,getAreDeclarationMapsEnabled:()=>Pk,getAssignedExpandoInitializer:()=>OA,getAssignedName:()=>b4,getAssignedNameOfIdentifier:()=>UP,getAssignmentDeclarationKind:()=>Bl,getAssignmentDeclarationPropertyAccessKind:()=>KL,getAssignmentTargetKind:()=>BA,getAutomaticTypeDirectiveNames:()=>WF,getBaseFileName:()=>ic,getBinaryOperatorPrecedence:()=>uk,getBuildInfo:()=>_7,getBuildInfoFileVersionMap:()=>tK,getBuildInfoText:()=>pce,getBuildOrderFromAnyBuildOrder:()=>G7,getBuilderCreationParameters:()=>C7,getBuilderFileEmit:()=>ab,getCheckFlags:()=>xl,getClassExtendsHeritageElement:()=>UE,getClassLikeDeclarationOfSymbol:()=>Vg,getCombinedLocalAndExportSymbolFlags:()=>LR,getCombinedModifierFlags:()=>c0,getCombinedNodeFlags:()=>Ov,getCombinedNodeFlagsAlwaysIncludeJSDoc:()=>qV,getCommentRange:()=>w_,getCommonSourceDirectory:()=>$P,getCommonSourceDirectoryOfConfig:()=>_D,getCompilerOptionValue:()=>H3,getCompilerOptionsDiffValue:()=>uIe,getConditions:()=>ib,getConfigFileParsingDiagnostics:()=>rT,getConstantValue:()=>Sae,getContainerFlags:()=>Uq,getContainerNode:()=>aT,getContainingClass:()=>su,getContainingClassExcludingClassDecorators:()=>n3,getContainingClassStaticBlock:()=>wie,getContainingFunction:()=>Gp,getContainingFunctionDeclaration:()=>kie,getContainingFunctionOrClassStaticBlock:()=>t3,getContainingNodeArray:()=>rae,getContainingObjectLiteralElement:()=>UO,getContextualTypeFromParent:()=>T5,getContextualTypeFromParentOrAncestorTypeNode:()=>i5,getCurrentTime:()=>$w,getDeclarationDiagnostics:()=>cce,getDeclarationEmitExtensionForPath:()=>I3,getDeclarationEmitOutputFilePath:()=>noe,getDeclarationEmitOutputFilePathWorker:()=>A3,getDeclarationFileExtension:()=>oq,getDeclarationFromName:()=>NC,getDeclarationModifierFlagsFromSymbol:()=>Df,getDeclarationOfKind:()=>fl,getDeclarationsOfKind:()=>iie,getDeclaredExpandoInitializer:()=>UL,getDecorators:()=>Ly,getDefaultCompilerOptions:()=>dz,getDefaultExportInfoWorker:()=>B5,getDefaultFormatCodeSettings:()=>X7,getDefaultLibFileName:()=>aL,getDefaultLibFilePath:()=>wpe,getDefaultLikeExportInfo:()=>z5,getDiagnosticText:()=>eIe,getDiagnosticsWithinSpan:()=>ude,getDirectoryPath:()=>ai,getDirectoryToWatchFailedLookupLocation:()=>aK,getDirectoryToWatchFailedLookupLocationFromTypeRoot:()=>Gce,getDocumentPositionMapper:()=>sY,getDocumentSpansEqualityComparer:()=>TX,getESModuleInterop:()=>yh,getEditsForFileRename:()=>yde,getEffectiveBaseTypeNode:()=>D_,getEffectiveConstraintOfTypeParameter:()=>Zx,getEffectiveContainerForJSDocTemplateTag:()=>g3,getEffectiveImplementsTypeNodes:()=>AR,getEffectiveInitializer:()=>jL,getEffectiveJSDocHost:()=>y0,getEffectiveModifierFlags:()=>pd,getEffectiveModifierFlagsAlwaysIncludeJSDoc:()=>_oe,getEffectiveModifierFlagsNoCache:()=>hoe,getEffectiveReturnTypeNode:()=>nm,getEffectiveSetAccessorTypeAnnotationNode:()=>aoe,getEffectiveTypeAnnotationNode:()=>yu,getEffectiveTypeParameterDeclarations:()=>ky,getEffectiveTypeRoots:()=>OP,getElementOrPropertyAccessArgumentExpressionOrName:()=>_3,getElementOrPropertyAccessName:()=>zg,getElementsOfBindingOrAssignmentPattern:()=>rD,getEmitDeclarations:()=>Nf,getEmitFlags:()=>ja,getEmitHelpers:()=>SW,getEmitModuleDetectionKind:()=>nH,getEmitModuleKind:()=>wu,getEmitModuleResolutionKind:()=>md,getEmitScriptTarget:()=>os,getEmitStandardClassFields:()=>Goe,getEnclosingBlockScopeContainer:()=>hh,getEnclosingContainer:()=>Mj,getEncodedSemanticClassifications:()=>tY,getEncodedSyntacticClassifications:()=>nY,getEndLinePosition:()=>DL,getEntityNameFromTypeNode:()=>zL,getEntrypointsFromPackageJsonInfo:()=>Wq,getErrorCountForSummary:()=>k7,getErrorSpanForNode:()=>AS,getErrorSummaryText:()=>Hce,getEscapedTextOfIdentifierOrLiteral:()=>LC,getEscapedTextOfJsxAttributeName:()=>sP,getEscapedTextOfJsxNamespacedName:()=>YA,getExpandoInitializer:()=>g0,getExportAssignmentExpression:()=>Zj,getExportInfoMap:()=>RO,getExportNeedsImportStarHelper:()=>Rle,getExpressionAssociativity:()=>aU,getExpressionPrecedence:()=>wC,getExternalHelpersModuleName:()=>iw,getExternalModuleImportEqualsDeclarationExpression:()=>xC,getExternalModuleName:()=>yR,getExternalModuleNameFromDeclaration:()=>eoe,getExternalModuleNameFromPath:()=>fU,getExternalModuleNameLiteral:()=>yI,getExternalModuleRequireArgument:()=>Bj,getFallbackOptions:()=>jw,getFileEmitOutput:()=>xce,getFileMatcherPatterns:()=>$3,getFileNamesFromConfigSpecs:()=>LP,getFileWatcherEventKind:()=>MV,getFilesInErrorForSummary:()=>w7,getFirstConstructorWithBody:()=>ag,getFirstIdentifier:()=>Vp,getFirstNonSpaceCharacterPosition:()=>tde,getFirstProjectOutput:()=>AJ,getFixableErrorSpanExpression:()=>BX,getFormatCodeSettingsForWriting:()=>w5,getFullWidth:()=>xL,getFunctionFlags:()=>Vc,getHeritageClause:()=>ak,getHostSignatureFromJSDoc:()=>v0,getIdentifierAutoGenerate:()=>$Te,getIdentifierGeneratedImportReference:()=>Dae,getIdentifierTypeArguments:()=>zS,getImmediatelyInvokedFunctionExpression:()=>xS,getImpliedNodeFormatForFile:()=>Jw,getImpliedNodeFormatForFileWorker:()=>HJ,getImportNeedsImportDefaultHelper:()=>iJ,getImportNeedsImportStarHelper:()=>r7,getIndentSize:()=>NR,getIndentString:()=>S3,getInferredLibraryNameResolveFrom:()=>T7,getInitializedVariables:()=>HC,getInitializerOfBinaryExpression:()=>Hj,getInitializerOfBindingOrAssignmentElement:()=>aw,getInterfaceBaseTypeNodes:()=>PC,getInternalEmitFlags:()=>Am,getInvokedExpression:()=>o3,getIsolatedModules:()=>om,getJSDocAugmentsTag:()=>Rre,getJSDocClassTag:()=>KV,getJSDocCommentRanges:()=>wj,getJSDocCommentsAndTags:()=>Jj,getJSDocDeprecatedTag:()=>XV,getJSDocDeprecatedTagNoCache:()=>kre,getJSDocEnumTag:()=>YV,getJSDocHost:()=>CS,getJSDocImplementsTags:()=>Dre,getJSDocOverloadTags:()=>Xj,getJSDocOverrideTagNoCache:()=>Lre,getJSDocParameterTags:()=>Qx,getJSDocParameterTagsNoCache:()=>Tre,getJSDocPrivateTag:()=>bSe,getJSDocPrivateTagNoCache:()=>Cre,getJSDocProtectedTag:()=>ESe,getJSDocProtectedTagNoCache:()=>Pre,getJSDocPublicTag:()=>ySe,getJSDocPublicTagNoCache:()=>Nre,getJSDocReadonlyTag:()=>SSe,getJSDocReadonlyTagNoCache:()=>Mre,getJSDocReturnTag:()=>wre,getJSDocReturnType:()=>dL,getJSDocRoot:()=>SR,getJSDocSatisfiesExpressionType:()=>JU,getJSDocSatisfiesTag:()=>$V,getJSDocTags:()=>f0,getJSDocTagsNoCache:()=>ASe,getJSDocTemplateTag:()=>TSe,getJSDocThisTag:()=>E4,getJSDocType:()=>p0,getJSDocTypeAliasName:()=>QH,getJSDocTypeAssertionType:()=>_F,getJSDocTypeParameterDeclarations:()=>N3,getJSDocTypeParameterTags:()=>Are,getJSDocTypeParameterTagsNoCache:()=>Ire,getJSDocTypeTag:()=>d0,getJSXImplicitImportBase:()=>J3,getJSXRuntimeImport:()=>K3,getJSXTransformEnabled:()=>q3,getKeyForCompilerOptions:()=>Pq,getLanguageVariant:()=>yk,getLastChild:()=>NU,getLeadingCommentRanges:()=>Yh,getLeadingCommentRangesOfNode:()=>kj,getLeftmostAccessExpression:()=>kR,getLeftmostExpression:()=>wR,getLibraryNameFromLibFileName:()=>jJ,getLineAndCharacterOfPosition:()=>bs,getLineInfo:()=>eJ,getLineOfLocalPosition:()=>WC,getLineOfLocalPositionFromLineMap:()=>LS,getLineStartPositionForPosition:()=>lm,getLineStarts:()=>kg,getLinesBetweenPositionAndNextNonWhitespaceCharacter:()=>Doe,getLinesBetweenPositionAndPrecedingNonWhitespaceCharacter:()=>Roe,getLinesBetweenPositions:()=>oC,getLinesBetweenRangeEndAndRangeStart:()=>xU,getLinesBetweenRangeEndPositions:()=>pTe,getLiteralText:()=>fie,getLocalNameForExternalImport:()=>nD,getLocalSymbolForExportDefault:()=>MR,getLocaleSpecificMessage:()=>Wo,getLocaleTimeString:()=>Yw,getMappedContextSpan:()=>IX,getMappedDocumentSpan:()=>y5,getMappedLocation:()=>l2,getMatchedFileSpec:()=>pK,getMatchedIncludeSpec:()=>fK,getMeaningFromDeclaration:()=>rO,getMeaningFromLocation:()=>oT,getMembersOfDeclaration:()=>Rie,getModeForFileReference:()=>Hw,getModeForResolutionAtIndex:()=>bce,getModeForUsageLocation:()=>FJ,getModifiedTime:()=>IA,getModifiers:()=>ME,getModuleInstanceState:()=>Kg,getModuleNameStringLiteralAt:()=>Kw,getModuleSpecifierEndingPreference:()=>Koe,getModuleSpecifierResolverHost:()=>vX,getNameForExportedSymbol:()=>M5,getNameFromImportAttribute:()=>cW,getNameFromIndexInfo:()=>Eie,getNameFromPropertyName:()=>hO,getNameOfAccessExpression:()=>PU,getNameOfCompilerOptionValue:()=>hq,getNameOfDeclaration:()=>Mo,getNameOfExpando:()=>jj,getNameOfJSDocTypedef:()=>Sre,getNameOrArgument:()=>JL,getNameTable:()=>JY,getNamesForExportedSymbol:()=>dde,getNamespaceDeclarationNode:()=>bR,getNewLineCharacter:()=>Uv,getNewLineKind:()=>xO,getNewLineOrDefaultFromHost:()=>ty,getNewTargetContainer:()=>Wie,getNextJSDocCommentLocation:()=>Kj,getNodeForGeneratedName:()=>lw,getNodeId:()=>as,getNodeKind:()=>y1,getNodeModifiers:()=>o2,getNodeModulePathParts:()=>aW,getNonAssignedNameOfDeclaration:()=>y4,getNonAssignmentOperatorForCompoundAssignment:()=>GP,getNonAugmentationDeclaration:()=>xj,getNonDecoratorTokenPosOfNode:()=>Ej,getNormalizedAbsolutePath:()=>go,getNormalizedAbsolutePathWithoutRoot:()=>FV,getNormalizedPathComponents:()=>YM,getObjectFlags:()=>Wr,getOperator:()=>lU,getOperatorAssociativity:()=>sU,getOperatorPrecedence:()=>ck,getOptionFromName:()=>pq,getOptionsForLibraryResolution:()=>Lq,getOptionsNameMap:()=>aD,getOrCreateEmitNode:()=>Ou,getOrCreateExternalHelpersModuleNameIfNeeded:()=>cse,getOrUpdate:()=>n0,getOriginalNode:()=>Pl,getOriginalNodeId:()=>Wu,getOriginalSourceFile:()=>nTe,getOutputDeclarationFileName:()=>YP,getOutputDeclarationFileNameWorker:()=>SJ,getOutputExtension:()=>p7,getOutputFileNames:()=>aRe,getOutputJSFileNameWorker:()=>TJ,getOutputPathsFor:()=>XP,getOutputPathsForBundle:()=>KP,getOwnEmitOutputFilePath:()=>toe,getOwnKeys:()=>Xh,getOwnValues:()=>EA,getPackageJsonInfo:()=>p1,getPackageJsonTypesVersionsPaths:()=>OF,getPackageJsonsVisibleToFile:()=>lde,getPackageNameFromTypesPackageName:()=>FP,getPackageScopeForPath:()=>Dw,getParameterSymbolFromJSDoc:()=>tk,getParameterTypeNode:()=>TTe,getParentNodeInSpan:()=>vO,getParseTreeNode:()=>Do,getParsedCommandLineOfConfigFile:()=>fw,getPathComponents:()=>zc,getPathComponentsRelativeTo:()=>BV,getPathFromPathComponents:()=>Cy,getPathUpdater:()=>oY,getPathsBasePath:()=>x3,getPatternFromSpec:()=>Hoe,getPendingEmitKind:()=>bD,getPositionOfLineAndCharacter:()=>tL,getPossibleGenericSignatures:()=>sX,getPossibleOriginalInputExtensionForExtension:()=>roe,getPossibleTypeArgumentsInfo:()=>lX,getPreEmitDiagnostics:()=>sRe,getPrecedingNonSpaceCharacterPosition:()=>E5,getPrivateIdentifier:()=>lJ,getProperties:()=>aJ,getProperty:()=>k6,getPropertyArrayElementValue:()=>Lie,getPropertyAssignmentAliasLikeExpression:()=>Yie,getPropertyNameForPropertyNameNode:()=>PS,getPropertyNameForUniqueESSymbol:()=>eTe,getPropertyNameFromType:()=>im,getPropertyNameOfBindingOrAssignmentElement:()=>$H,getPropertySymbolFromBindingElement:()=>v5,getPropertySymbolsFromContextualType:()=>fz,getQuoteFromPreference:()=>bX,getQuotePreference:()=>uf,getRangesWhere:()=>cG,getRefactorContextSpan:()=>LI,getReferencedFileLocation:()=>QP,getRegexFromPattern:()=>qy,getRegularExpressionForWildcard:()=>XC,getRegularExpressionsForWildcards:()=>X3,getRelativePathFromDirectory:()=>Em,getRelativePathFromFile:()=>QM,getRelativePathToDirectoryOrUrl:()=>RA,getRenameLocation:()=>EO,getReplacementSpanForContextToken:()=>pX,getResolutionDiagnostic:()=>KJ,getResolutionModeOverride:()=>hD,getResolveJsonModule:()=>A0,getResolvePackageJsonExports:()=>mW,getResolvePackageJsonImports:()=>_W,getResolvedExternalModuleName:()=>T3,getRestIndicatorOfBindingOrAssignmentElement:()=>gF,getRestParameterElementType:()=>Oj,getRightMostAssignedExpression:()=>HL,getRootDeclaration:()=>C_,getRootDirectoryOfResolutionCache:()=>Vce,getRootLength:()=>ph,getRootPathSplitLength:()=>MRe,getScriptKind:()=>CX,getScriptKindFromFileName:()=>Z3,getScriptTargetFeatures:()=>pW,getSelectedEffectiveModifierFlags:()=>jA,getSelectedSyntacticModifierFlags:()=>foe,getSemanticClassifications:()=>_de,getSemanticJsxChildren:()=>xR,getSetAccessorTypeAnnotationNode:()=>ioe,getSetAccessorValueParameter:()=>FC,getSetExternalModuleIndicator:()=>bk,getShebang:()=>h4,getSingleInitializerOfVariableStatementOrPropertyDeclaration:()=>qj,getSingleVariableOfVariableStatement:()=>zA,getSnapshotText:()=>RD,getSnippetElement:()=>yH,getSourceFileOfModule:()=>G4,getSourceFileOfNode:()=>jn,getSourceFilePathInNewDir:()=>R3,getSourceFilePathInNewDirWorker:()=>D3,getSourceFileVersionAsHashFromText:()=>W7,getSourceFilesToEmit:()=>mU,getSourceMapRange:()=>qv,getSourceMapper:()=>Pde,getSourceTextOfNodeFromSourceFile:()=>OE,getSpanOfTokenAtPosition:()=>gh,getSpellingSuggestion:()=>$N,getStartPositionOfLine:()=>Gy,getStartPositionOfRange:()=>UC,getStartsOnNewLine:()=>pP,getStaticPropertiesAndClassStaticBlock:()=>a7,getStrictOptionValue:()=>fd,getStringComparer:()=>zx,getSubPatternFromSpec:()=>Y3,getSuperCallFromStatement:()=>i7,getSuperContainer:()=>WL,getSupportedCodeFixes:()=>HY,getSupportedExtensions:()=>YC,getSupportedExtensionsWithJsonIfResolveJsonModule:()=>Ek,getSwitchedType:()=>wX,getSymbolId:()=>Ta,getSymbolNameForPrivateIdentifier:()=>sk,getSymbolTarget:()=>PX,getSyntacticClassifications:()=>hde,getSyntacticModifierFlags:()=>Uy,getSyntacticModifierFlagsNoCache:()=>vU,getSynthesizedDeepClone:()=>cl,getSynthesizedDeepCloneWithReplacements:()=>bO,getSynthesizedDeepClones:()=>E1,getSynthesizedDeepClonesWithReplacements:()=>MX,getSyntheticLeadingComments:()=>jR,getSyntheticTrailingComments:()=>Bk,getTargetLabel:()=>Z7,getTargetOfBindingOrAssignmentElement:()=>rb,getTemporaryModuleResolutionState:()=>Rw,getTextOfConstantValue:()=>mie,getTextOfIdentifierOrLiteral:()=>em,getTextOfJSDocComment:()=>fL,getTextOfJsxAttributeName:()=>Dk,getTextOfJsxNamespacedName:()=>lP,getTextOfNode:()=>fc,getTextOfNodeFromSourceText:()=>bC,getTextOfPropertyName:()=>lR,getThisContainer:()=>Fd,getThisParameter:()=>qE,getTokenAtPosition:()=>po,getTokenPosOfNode:()=>_0,getTokenSourceMapRange:()=>XTe,getTouchingPropertyName:()=>Vd,getTouchingToken:()=>xD,getTrailingCommentRanges:()=>a0,getTrailingSemicolonDeferringWriter:()=>pU,getTransformFlagsSubtreeExclusions:()=>gae,getTransformers:()=>yJ,getTsBuildInfoEmitOutputFilePath:()=>$v,getTsConfigObjectLiteralExpression:()=>AC,getTsConfigPropArrayElementValue:()=>e3,getTypeAnnotationNode:()=>ooe,getTypeArgumentOrTypeParameterList:()=>Fue,getTypeKeywordOfTypeOnlyImport:()=>EX,getTypeNode:()=>xae,getTypeNodeIfAccessible:()=>f2,getTypeParameterFromJsDoc:()=>Uie,getTypeParameterOwner:()=>mSe,getTypesPackageName:()=>jF,getUILocale:()=>Lne,getUniqueName:()=>cT,getUniqueSymbolId:()=>ede,getUseDefineForClassFields:()=>dP,getWatchErrorSummaryDiagnosticMessage:()=>lK,getWatchFactory:()=>NJ,group:()=>YN,groupBy:()=>w6,guessIndentation:()=>nie,handleNoEmitOptions:()=>qJ,hasAbstractModifier:()=>XE,hasAccessorModifier:()=>P_,hasAmbientModifier:()=>gU,hasChangesInResolutions:()=>vj,hasChildOfKind:()=>uO,hasContextSensitiveParameters:()=>iW,hasDecorators:()=>If,hasDocComment:()=>Oue,hasDynamicName:()=>jy,hasEffectiveModifier:()=>gp,hasEffectiveModifiers:()=>C3,hasEffectiveReadonlyModifier:()=>zC,hasExtension:()=>xA,hasIndexSignature:()=>kX,hasInitializer:()=>zy,hasInvalidEscape:()=>uU,hasJSDocNodes:()=>Fp,hasJSDocParameterTags:()=>xre,hasJSFileExtension:()=>YE,hasJsonModuleEmitEnabled:()=>U3,hasOnlyExpressionInitializer:()=>ES,hasOverrideModifier:()=>P3,hasPossibleExternalModuleReference:()=>yie,hasProperty:()=>xs,hasPropertyAccessExpressionWithName:()=>oO,hasQuestionToken:()=>FA,hasRecordedExternalHelpers:()=>lse,hasResolutionModeOverride:()=>lae,hasRestParameter:()=>mj,hasScopeMarker:()=>Kre,hasStaticModifier:()=>mc,hasSyntacticModifier:()=>Zr,hasSyntacticModifiers:()=>poe,hasTSFileExtension:()=>XA,hasTabstop:()=>oae,hasTrailingDirectorySeparator:()=>kv,hasType:()=>w4,hasTypeArguments:()=>XSe,hasZeroOrOneAsteriskCharacter:()=>kU,helperString:()=>SH,hostGetCanonicalFileName:()=>Gv,hostUsesCaseSensitiveFileNames:()=>CR,idText:()=>Sr,identifierIsThisKeyword:()=>hU,identifierToKeywordKind:()=>u0,identity:()=>nl,identitySourceMapConsumer:()=>n7,ignoreSourceNewlines:()=>EH,ignoredPaths:()=>XM,importDefaultHelper:()=>jW,importFromModuleSpecifier:()=>DC,importNameElisionDisabled:()=>LU,importStarHelper:()=>Vk,indexOfAnyCharCode:()=>Sc,indexOfNode:()=>sR,indicesOf:()=>OM,inferredTypesContainingFile:()=>yD,injectClassNamedEvaluationHelperBlockIfMissing:()=>c7,injectClassThisAssignmentIfMissing:()=>Wle,insertImports:()=>s2,insertLeadingStatement:()=>mAe,insertSorted:()=>xy,insertStatementAfterCustomPrologue:()=>SS,insertStatementAfterStandardPrologue:()=>zSe,insertStatementsAfterCustomPrologue:()=>yj,insertStatementsAfterStandardPrologue:()=>eg,intersperse:()=>co,intrinsicTagNameToString:()=>KU,introducesArgumentsExoticObject:()=>Pie,inverseJsxOptionMap:()=>kP,isAbstractConstructorSymbol:()=>Noe,isAbstractModifier:()=>Oae,isAccessExpression:()=>ws,isAccessibilityModifier:()=>uX,isAccessor:()=>Oy,isAccessorModifier:()=>Fae,isAliasSymbolDeclaration:()=>$Se,isAliasableExpression:()=>ok,isAmbientModule:()=>ku,isAmbientPropertyDeclaration:()=>Dj,isAnonymousFunctionDefinition:()=>kC,isAnyDirectorySeparator:()=>wV,isAnyImportOrBareOrAccessedRequire:()=>vie,isAnyImportOrReExport:()=>CL,isAnyImportSyntax:()=>TS,isAnySupportedFileExtension:()=>STe,isApplicableVersionedTypesKey:()=>Cw,isArgumentExpressionOfElementAccess:()=>ZK,isArray:()=>To,isArrayBindingElement:()=>N4,isArrayBindingOrAssignmentElement:()=>bL,isArrayBindingOrAssignmentPattern:()=>lj,isArrayBindingPattern:()=>n1,isArrayLiteralExpression:()=>_d,isArrayLiteralOrObjectLiteralDestructuringPattern:()=>Zv,isArrayTypeNode:()=>Xk,isArrowFunction:()=>Gs,isAsExpression:()=>$k,isAssertClause:()=>Hae,isAssertEntry:()=>aAe,isAssertionExpression:()=>bS,isAssertsKeyword:()=>kae,isAssignmentDeclaration:()=>RC,isAssignmentExpression:()=>Lc,isAssignmentOperator:()=>Vv,isAssignmentPattern:()=>gC,isAssignmentTarget:()=>ig,isAsteriskToken:()=>Hk,isAsyncFunction:()=>MC,isAsyncModifier:()=>_P,isAutoAccessorPropertyDeclaration:()=>Wd,isAwaitExpression:()=>eb,isAwaitKeyword:()=>NH,isBigIntLiteral:()=>YW,isBinaryExpression:()=>mr,isBinaryOperatorToken:()=>gse,isBindableObjectDefinePropertyCall:()=>DS,isBindableStaticAccessExpression:()=>VE,isBindableStaticElementAccessExpression:()=>m3,isBindableStaticNameExpression:()=>NS,isBindingElement:()=>Qa,isBindingElementOfBareOrAccessedRequire:()=>Bie,isBindingName:()=>vS,isBindingOrAssignmentElement:()=>Vre,isBindingOrAssignmentPattern:()=>vL,isBindingPattern:()=>ta,isBlock:()=>Xo,isBlockOrCatchScoped:()=>Sj,isBlockScope:()=>Nj,isBlockScopedContainerTopLevel:()=>gie,isBooleanLiteral:()=>hC,isBreakOrContinueStatement:()=>pC,isBreakStatement:()=>rAe,isBuildInfoFile:()=>dce,isBuilderProgram:()=>qce,isBundle:()=>OH,isBundleFileTextLike:()=>Poe,isCallChain:()=>hS,isCallExpression:()=>la,isCallExpressionTarget:()=>JK,isCallLikeExpression:()=>wE,isCallLikeOrFunctionLikeExpression:()=>cj,isCallOrNewExpression:()=>I_,isCallOrNewExpressionTarget:()=>KK,isCallSignatureDeclaration:()=>sI,isCallToHelper:()=>mP,isCaseBlock:()=>SP,isCaseClause:()=>YR,isCaseKeyword:()=>zae,isCaseOrDefaultClause:()=>L4,isCatchClause:()=>c1,isCatchClauseVariableDeclaration:()=>iae,isCatchClauseVariableDeclarationOrBindingElement:()=>Tj,isCheckJsEnabledForFile:()=>Ak,isChildOfNodeWithKind:()=>GSe,isCircularBuildOrder:()=>DI,isClassDeclaration:()=>Ic,isClassElement:()=>$c,isClassExpression:()=>Zc,isClassInstanceProperty:()=>Bre,isClassLike:()=>ui,isClassMemberModifier:()=>oj,isClassNamedEvaluationHelperBlock:()=>RI,isClassOrTypeElement:()=>D4,isClassStaticBlockDeclaration:()=>Rl,isClassThisAssignmentBlock:()=>jP,isCollapsedRange:()=>dTe,isColonToken:()=>Mae,isCommaExpression:()=>rw,isCommaListExpression:()=>yP,isCommaSequence:()=>RP,isCommaToken:()=>Pae,isComment:()=>u5,isCommonJsExportPropertyAssignment:()=>Q4,isCommonJsExportedExpression:()=>Nie,isCompoundAssignment:()=>BP,isComputedNonLiteralName:()=>PL,isComputedPropertyName:()=>Za,isConciseBody:()=>P4,isConditionalExpression:()=>XR,isConditionalTypeNode:()=>dI,isConstTypeReference:()=>Og,isConstructSignatureDeclaration:()=>Jk,isConstructorDeclaration:()=>Ml,isConstructorTypeNode:()=>HR,isContextualKeyword:()=>y3,isContinueStatement:()=>nAe,isCustomPrologue:()=>wL,isDebuggerStatement:()=>iAe,isDeclaration:()=>Ju,isDeclarationBindingElement:()=>gL,isDeclarationFileName:()=>Su,isDeclarationName:()=>Bg,isDeclarationNameOfEnumOrNamespace:()=>RU,isDeclarationReadonly:()=>K4,isDeclarationStatement:()=>Qre,isDeclarationWithTypeParameterChildren:()=>Pj,isDeclarationWithTypeParameters:()=>Cj,isDecorator:()=>Eu,isDecoratorTarget:()=>Tue,isDefaultClause:()=>AP,isDefaultImport:()=>WA,isDefaultModifier:()=>eF,isDefaultedExpandoInitializer:()=>Gie,isDeleteExpression:()=>Vae,isDeleteTarget:()=>$j,isDeprecatedDeclaration:()=>L5,isDestructuringAssignment:()=>jv,isDiagnosticWithLocation:()=>zX,isDiskPathRoot:()=>OV,isDoStatement:()=>eAe,isDocumentRegistryEntry:()=>DO,isDotDotDotToken:()=>QW,isDottedName:()=>GC,isDynamicName:()=>E3,isESSymbolIdentifier:()=>tTe,isEffectiveExternalModule:()=>wA,isEffectiveModuleDeclaration:()=>hie,isEffectiveStrictModeSourceFile:()=>Rj,isElementAccessChain:()=>QV,isElementAccessExpression:()=>Qs,isEmittedFileOfProgram:()=>_ce,isEmptyArrayLiteral:()=>boe,isEmptyBindingElement:()=>bre,isEmptyBindingPattern:()=>yre,isEmptyObjectLiteral:()=>TU,isEmptyStatement:()=>LH,isEmptyStringLiteral:()=>zj,isEntityName:()=>Zd,isEntityNameExpression:()=>Gl,isEnumConst:()=>FE,isEnumDeclaration:()=>x0,isEnumMember:()=>u1,isEqualityOperatorKind:()=>A5,isEqualsGreaterThanToken:()=>Lae,isExclamationToken:()=>qk,isExcludedFile:()=>Pse,isExclusivelyTypeOnlyImportOrExport:()=>WJ,isExpandoPropertyDeclaration:()=>lW,isExportAssignment:()=>kl,isExportDeclaration:()=>Yl,isExportModifier:()=>oI,isExportName:()=>mF,isExportNamespaceAsDefaultDeclaration:()=>U4,isExportOrDefaultModifier:()=>sw,isExportSpecifier:()=>Ku,isExportsIdentifier:()=>RS,isExportsOrModuleExportsOrAlias:()=>f1,isExpression:()=>yt,isExpressionNode:()=>ng,isExpressionOfExternalModuleImportEqualsDeclaration:()=>Rue,isExpressionOfOptionalChainRoot:()=>I4,isExpressionStatement:()=>eu,isExpressionWithTypeArguments:()=>Kv,isExpressionWithTypeArgumentsInClassExtendsClause:()=>M3,isExternalModule:()=>sc,isExternalModuleAugmentation:()=>WE,isExternalModuleImportEqualsDeclaration:()=>h0,isExternalModuleIndicator:()=>EL,isExternalModuleNameRelative:()=>Yc,isExternalModuleReference:()=>Ah,isExternalModuleSymbol:()=>mO,isExternalOrCommonJsModule:()=>zp,isFileLevelReservedGeneratedIdentifier:()=>hL,isFileLevelUniqueName:()=>V4,isFileProbablyExternalModule:()=>uw,isFirstDeclarationOfSymbolParameter:()=>xX,isFixablePromiseHandler:()=>uY,isForInOrOfStatement:()=>nR,isForInStatement:()=>aF,isForInitializer:()=>Af,isForOfStatement:()=>Qk,isForStatement:()=>HS,isFunctionBlock:()=>BE,isFunctionBody:()=>dj,isFunctionDeclaration:()=>Ac,isFunctionExpression:()=>Os,isFunctionExpressionOrArrowFunction:()=>QE,isFunctionLike:()=>ea,isFunctionLikeDeclaration:()=>Bs,isFunctionLikeKind:()=>PA,isFunctionLikeOrClassStaticBlockDeclaration:()=>tR,isFunctionOrConstructorTypeNode:()=>Gre,isFunctionOrModuleBlock:()=>aj,isFunctionSymbol:()=>jie,isFunctionTypeNode:()=>Eh,isFutureReservedKeyword:()=>QSe,isGeneratedIdentifier:()=>sl,isGeneratedPrivateIdentifier:()=>gS,isGetAccessor:()=>Fy,isGetAccessorDeclaration:()=>rf,isGetOrSetAccessorDeclaration:()=>T4,isGlobalDeclaration:()=>BDe,isGlobalScopeAugmentation:()=>R_,isGrammarError:()=>die,isHeritageClause:()=>of,isHoistedFunction:()=>Y4,isHoistedVariableStatement:()=>$4,isIdentifier:()=>Ve,isIdentifierANonContextualKeyword:()=>nU,isIdentifierName:()=>Xie,isIdentifierOrThisTypeNode:()=>fse,isIdentifierPart:()=>s0,isIdentifierStart:()=>$h,isIdentifierText:()=>tf,isIdentifierTypePredicate:()=>Mie,isIdentifierTypeReference:()=>Zoe,isIfStatement:()=>US,isIgnoredFileFromWildCardWatching:()=>Vw,isImplicitGlob:()=>WU,isImportAttribute:()=>qae,isImportAttributeName:()=>zre,isImportAttributes:()=>mI,isImportCall:()=>Bp,isImportClause:()=>Sh,isImportDeclaration:()=>kc,isImportEqualsDeclaration:()=>tu,isImportKeyword:()=>gP,isImportMeta:()=>dR,isImportOrExportSpecifier:()=>CA,isImportOrExportSpecifierName:()=>Zue,isImportSpecifier:()=>np,isImportTypeAssertionContainer:()=>oAe,isImportTypeNode:()=>ug,isImportableFile:()=>$X,isInComment:()=>Qv,isInCompoundLikeAssignment:()=>Yj,isInExpressionContext:()=>s3,isInJSDoc:()=>GL,isInJSFile:()=>lr,isInJSXText:()=>kue,isInJsonFile:()=>c3,isInNonReferenceComment:()=>Gue,isInReferenceComment:()=>Bue,isInRightSideOfInternalImportEqualsDeclaration:()=>$7,isInString:()=>CI,isInTemplateString:()=>aX,isInTopLevelContext:()=>r3,isInTypeQuery:()=>kS,isIncrementalCompilation:()=>uP,isIndexSignatureDeclaration:()=>t1,isIndexedAccessTypeNode:()=>jS,isInferTypeNode:()=>BS,isInfinityOrNaNString:()=>iP,isInitializedProperty:()=>ww,isInitializedVariable:()=>vk,isInsideJsxElement:()=>l5,isInsideJsxElementOrAttribute:()=>Lue,isInsideNodeModules:()=>IO,isInsideTemplateLiteral:()=>pO,isInstanceOfExpression:()=>L3,isInstantiatedModule:()=>Kq,isInterfaceDeclaration:()=>hd,isInternalDeclaration:()=>_j,isInternalModuleImportEqualsDeclaration:()=>hR,isInternalName:()=>KH,isIntersectionTypeNode:()=>uI,isIntrinsicJsxName:()=>DR,isIterationStatement:()=>Wy,isJSDoc:()=>n_,isJSDocAllType:()=>$ae,isJSDocAugmentsTag:()=>vI,isJSDocAuthorTag:()=>uAe,isJSDocCallbackTag:()=>FH,isJSDocClassTag:()=>Zae,isJSDocCommentContainingNode:()=>k4,isJSDocConstructSignature:()=>ER,isJSDocDeprecatedTag:()=>jH,isJSDocEnumTag:()=>ew,isJSDocFunctionType:()=>QR,isJSDocImplementsTag:()=>dF,isJSDocIndexSignature:()=>u3,isJSDocLikeText:()=>rq,isJSDocLink:()=>Xae,isJSDocLinkCode:()=>Yae,isJSDocLinkLike:()=>kA,isJSDocLinkPlain:()=>lAe,isJSDocMemberName:()=>R0,isJSDocNameReference:()=>IP,isJSDocNamepathType:()=>cAe,isJSDocNamespaceBody:()=>LSe,isJSDocNode:()=>rR,isJSDocNonNullableType:()=>sF,isJSDocNullableType:()=>$R,isJSDocOptionalParameter:()=>Rk,isJSDocOptionalType:()=>WH,isJSDocOverloadTag:()=>ZR,isJSDocOverrideTag:()=>cF,isJSDocParameterTag:()=>r_,isJSDocPrivateTag:()=>BH,isJSDocPropertyLikeTag:()=>fC,isJSDocPropertyTag:()=>ese,isJSDocProtectedTag:()=>GH,isJSDocPublicTag:()=>zH,isJSDocReadonlyTag:()=>VH,isJSDocReturnTag:()=>uF,isJSDocSatisfiesExpression:()=>qU,isJSDocSatisfiesTag:()=>pF,isJSDocSeeTag:()=>dAe,isJSDocSignature:()=>D0,isJSDocTag:()=>iR,isJSDocTemplateTag:()=>sm,isJSDocThisTag:()=>UH,isJSDocThrowsTag:()=>fAe,isJSDocTypeAlias:()=>Zf,isJSDocTypeAssertion:()=>tD,isJSDocTypeExpression:()=>d1,isJSDocTypeLiteral:()=>XS,isJSDocTypeTag:()=>xP,isJSDocTypedefTag:()=>YS,isJSDocUnknownTag:()=>pAe,isJSDocUnknownType:()=>Qae,isJSDocVariadicType:()=>lF,isJSXTagName:()=>_R,isJsonEqual:()=>nW,isJsonSourceFile:()=>Qf,isJsxAttribute:()=>F_,isJsxAttributeLike:()=>M4,isJsxAttributeName:()=>sae,isJsxAttributes:()=>l1,isJsxChild:()=>AL,isJsxClosingElement:()=>a1,isJsxClosingFragment:()=>Jae,isJsxElement:()=>dg,isJsxExpression:()=>TP,isJsxFragment:()=>s1,isJsxNamespacedName:()=>t_,isJsxOpeningElement:()=>W_,isJsxOpeningFragment:()=>hI,isJsxOpeningLikeElement:()=>ud,isJsxOpeningLikeElementTagName:()=>Aue,isJsxSelfClosingElement:()=>JS,isJsxSpreadAttribute:()=>gI,isJsxTagNameExpression:()=>vC,isJsxText:()=>nI,isJumpStatementTarget:()=>aO,isKeyword:()=>Bd,isKeywordOrPunctuation:()=>v3,isKnownSymbol:()=>lk,isLabelName:()=>$K,isLabelOfLabeledStatement:()=>YK,isLabeledStatement:()=>o1,isLateVisibilityPaintedStatement:()=>q4,isLeftHandSideExpression:()=>ep,isLeftHandSideOfAssignment:()=>uTe,isLet:()=>X4,isLineBreak:()=>Hu,isLiteralComputedPropertyDeclarationName:()=>ik,isLiteralExpression:()=>kE,isLiteralExpressionOfObject:()=>rj,isLiteralImportTypeNode:()=>Vy,isLiteralKind:()=>mC,isLiteralLikeAccess:()=>f3,isLiteralLikeElementAccess:()=>qL,isLiteralNameOfPropertyDeclarationOrIndexAccess:()=>e5,isLiteralTypeLikeExpression:()=>yAe,isLiteralTypeLiteral:()=>qre,isLiteralTypeNode:()=>Zy,isLocalName:()=>qg,isLogicalOperator:()=>goe,isLogicalOrCoalescingAssignmentExpression:()=>yU,isLogicalOrCoalescingAssignmentOperator:()=>BC,isLogicalOrCoalescingBinaryExpression:()=>mk,isLogicalOrCoalescingBinaryOperator:()=>fk,isMappedTypeNode:()=>JR,isMemberName:()=>Qh,isMetaProperty:()=>vP,isMethodDeclaration:()=>ql,isMethodOrAccessor:()=>MA,isMethodSignature:()=>bh,isMinusToken:()=>DH,isMissingDeclaration:()=>sAe,isMissingPackageJsonInfo:()=>Kse,isModifier:()=>xa,isModifierKind:()=>Wv,isModifierLike:()=>ll,isModuleAugmentationExternal:()=>Ij,isModuleBlock:()=>O_,isModuleBody:()=>Xre,isModuleDeclaration:()=>Xl,isModuleExportsAccessExpression:()=>rg,isModuleIdentifier:()=>Uj,isModuleName:()=>hse,isModuleOrEnumDeclaration:()=>SL,isModuleReference:()=>eie,isModuleSpecifierLike:()=>g5,isModuleWithStringLiteralName:()=>H4,isNameOfFunctionDeclaration:()=>tX,isNameOfModuleDeclaration:()=>eX,isNamedClassElement:()=>DSe,isNamedDeclaration:()=>ld,isNamedEvaluation:()=>hp,isNamedEvaluationSource:()=>rU,isNamedExportBindings:()=>ej,isNamedExports:()=>Pf,isNamedImportBindings:()=>pj,isNamedImports:()=>Hg,isNamedImportsOrExports:()=>B3,isNamedTupleMember:()=>qR,isNamespaceBody:()=>MSe,isNamespaceExport:()=>Th,isNamespaceExportDeclaration:()=>Zk,isNamespaceImport:()=>nb,isNamespaceReexportDeclaration:()=>zie,isNewExpression:()=>r1,isNewExpressionTarget:()=>r2,isNoSubstitutionTemplateLiteral:()=>rI,isNode:()=>xSe,isNodeArray:()=>LE,isNodeArrayMultiLine:()=>xoe,isNodeDescendantOf:()=>jE,isNodeKind:()=>mL,isNodeLikeSystem:()=>AG,isNodeModulesDirectory:()=>d4,isNodeWithPossibleHoistedDeclaration:()=>qie,isNonContextualKeyword:()=>tU,isNonExportDefaultModifier:()=>EAe,isNonGlobalAmbientModule:()=>Aj,isNonGlobalDeclaration:()=>mde,isNonNullAccess:()=>aae,isNonNullChain:()=>x4,isNonNullExpression:()=>fI,isNonStaticMethodOrAccessorWithPrivateName:()=>Dle,isNotEmittedOrPartiallyEmittedNode:()=>PSe,isNotEmittedStatement:()=>wH,isNullishCoalesce:()=>ZV,isNumber:()=>Cv,isNumericLiteral:()=>vp,isNumericLiteralName:()=>cg,isObjectBindingElementWithoutPropertyName:()=>gO,isObjectBindingOrAssignmentElement:()=>yL,isObjectBindingOrAssignmentPattern:()=>sj,isObjectBindingPattern:()=>am,isObjectLiteralElement:()=>fj,isObjectLiteralElementLike:()=>Wg,isObjectLiteralExpression:()=>Oa,isObjectLiteralMethod:()=>xm,isObjectLiteralOrClassExpressionMethodOrAccessor:()=>Z4,isObjectTypeDeclaration:()=>qA,isOctalDigit:()=>_4,isOmittedExpression:()=>jc,isOptionalChain:()=>qu,isOptionalChainRoot:()=>uC,isOptionalDeclaration:()=>aP,isOptionalJSDocPropertyLikeTag:()=>xk,isOptionalTypeNode:()=>tF,isOuterExpression:()=>hF,isOutermostOptionalChain:()=>dC,isOverrideModifier:()=>Wae,isPackageJsonInfo:()=>FF,isPackedArrayLiteral:()=>UU,isParameter:()=>Ao,isParameterDeclaration:()=>HE,isParameterPropertyDeclaration:()=>mp,isParameterPropertyModifier:()=>_C,isParenthesizedExpression:()=>Gd,isParenthesizedTypeNode:()=>GS,isParseTreeNode:()=>cC,isPartOfTypeNode:()=>tg,isPartOfTypeQuery:()=>l3,isPartiallyEmittedExpression:()=>oF,isPatternMatch:()=>z6,isPinnedComment:()=>j4,isPlainJsFile:()=>RL,isPlusToken:()=>RH,isPossiblyTypeArgumentPosition:()=>dO,isPostfixUnaryExpression:()=>PH,isPrefixUnaryExpression:()=>tb,isPrivateIdentifier:()=>Ji,isPrivateIdentifierClassElementDeclaration:()=>cd,isPrivateIdentifierPropertyAccessExpression:()=>eR,isPrivateIdentifierSymbol:()=>$ie,isProgramBundleEmitBuildInfo:()=>Pce,isProgramUptoDate:()=>UJ,isPrologueDirective:()=>Im,isPropertyAccessChain:()=>A4,isPropertyAccessEntityNameExpression:()=>_k,isPropertyAccessExpression:()=>Fr,isPropertyAccessOrQualifiedName:()=>Ure,isPropertyAccessOrQualifiedNameOrImportTypeNode:()=>jre,isPropertyAssignment:()=>hc,isPropertyDeclaration:()=>Jo,isPropertyName:()=>oc,isPropertyNameLiteral:()=>N_,isPropertySignature:()=>yp,isProtoSetter:()=>Qie,isPrototypeAccess:()=>Hy,isPrototypePropertyAssignment:()=>XL,isPunctuation:()=>eU,isPushOrUnshiftIdentifier:()=>iU,isQualifiedName:()=>xd,isQuestionDotToken:()=>ZW,isQuestionOrExclamationToken:()=>pse,isQuestionOrPlusOrMinusToken:()=>_se,isQuestionToken:()=>$y,isRawSourceMap:()=>Ale,isReadonlyKeyword:()=>wae,isReadonlyKeywordOrPlusOrMinusToken:()=>mse,isRecognizedTripleSlashComment:()=>bj,isReferenceFileLocation:()=>gD,isReferencedFile:()=>w0,isRegularExpressionLiteral:()=>IH,isRequireCall:()=>Ad,isRequireVariableStatement:()=>Vj,isRestParameter:()=>Zh,isRestTypeNode:()=>nF,isReturnStatement:()=>Dm,isReturnStatementWithFixablePromiseHandler:()=>j5,isRightSideOfAccessExpression:()=>SU,isRightSideOfInstanceofExpression:()=>yoe,isRightSideOfPropertyAccess:()=>AD,isRightSideOfQualifiedName:()=>xue,isRightSideOfQualifiedNameOrPropertyAccess:()=>VC,isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName:()=>voe,isRootedDiskPath:()=>fp,isSameEntityName:()=>gR,isSatisfiesExpression:()=>MH,isScopeMarker:()=>Jre,isSemicolonClassElement:()=>jae,isSetAccessor:()=>Fv,isSetAccessorDeclaration:()=>bp,isShebangTrivia:()=>GV,isShiftOperatorOrHigher:()=>eq,isShorthandAmbientModuleSymbol:()=>EC,isShorthandPropertyAssignment:()=>rp,isSignedNumericLiteral:()=>b3,isSimpleCopiableExpression:()=>_1,isSimpleInlineableExpression:()=>Rh,isSimpleParameter:()=>Lle,isSimpleParameterList:()=>Ow,isSingleOrDoubleQuote:()=>VL,isSourceFile:()=>$i,isSourceFileFromLibrary:()=>MD,isSourceFileJS:()=>dd,isSourceFileNotJS:()=>USe,isSourceFileNotJson:()=>Gj,isSourceMapping:()=>Ile,isSpecialPropertyDeclaration:()=>Vie,isSpreadAssignment:()=>Xv,isSpreadElement:()=>e_,isStatement:()=>qi,isStatementButNotDeclaration:()=>TL,isStatementOrBlock:()=>Zre,isStatementWithLocals:()=>uie,isStatic:()=>sa,isStaticModifier:()=>aI,isString:()=>Po,isStringAKeyword:()=>ZSe,isStringANonContextualKeyword:()=>GA,isStringAndEmptyAnonymousObjectIntersection:()=>zue,isStringDoubleQuoted:()=>p3,isStringLiteral:()=>Ma,isStringLiteralLike:()=>ls,isStringLiteralOrJsxExpression:()=>tie,isStringLiteralOrTemplate:()=>ode,isStringOrNumericLiteralLike:()=>nf,isStringOrRegularExpressionOrTemplateLiteral:()=>cX,isStringTextContainingNode:()=>ij,isSuperCall:()=>IS,isSuperKeyword:()=>hP,isSuperOrSuperProperty:()=>jSe,isSuperProperty:()=>zd,isSupportedSourceFileName:()=>Xoe,isSwitchStatement:()=>EP,isSyntaxList:()=>eD,isSyntheticExpression:()=>ZTe,isSyntheticReference:()=>_I,isTagName:()=>QK,isTaggedTemplateExpression:()=>i1,isTaggedTemplateTag:()=>Sue,isTemplateExpression:()=>rF,isTemplateHead:()=>iI,isTemplateLiteral:()=>LA,isTemplateLiteralKind:()=>wy,isTemplateLiteralToken:()=>Wre,isTemplateLiteralTypeNode:()=>Bae,isTemplateLiteralTypeSpan:()=>CH,isTemplateMiddle:()=>xH,isTemplateMiddleOrTemplateTail:()=>R4,isTemplateSpan:()=>bP,isTemplateTail:()=>$W,isTextWhiteSpaceLike:()=>Hue,isThis:()=>ID,isThisContainerOrFunctionBlock:()=>Oie,isThisIdentifier:()=>KE,isThisInTypeQuery:()=>VA,isThisInitializedDeclaration:()=>i3,isThisInitializedObjectBindingExpression:()=>Fie,isThisProperty:()=>FL,isThisTypeNode:()=>Yk,isThisTypeParameter:()=>oP,isThisTypePredicate:()=>VSe,isThrowStatement:()=>kH,isToken:()=>NA,isTokenKind:()=>nj,isTraceEnabled:()=>Jg,isTransientSymbol:()=>mh,isTrivia:()=>IR,isTryStatement:()=>qS,isTupleTypeNode:()=>cI,isTypeAlias:()=>QL,isTypeAliasDeclaration:()=>Nm,isTypeAssertionExpression:()=>Gae,isTypeDeclaration:()=>BR,isTypeElement:()=>yS,isTypeKeyword:()=>a2,isTypeKeywordToken:()=>_X,isTypeKeywordTokenOrIdentifier:()=>f5,isTypeLiteralNode:()=>Ep,isTypeNode:()=>ji,isTypeNodeKind:()=>CU,isTypeOfExpression:()=>KR,isTypeOnlyExportDeclaration:()=>Fre,isTypeOnlyImportDeclaration:()=>_L,isTypeOnlyImportOrExportDeclaration:()=>m0,isTypeOperatorNode:()=>VS,isTypeParameterDeclaration:()=>gl,isTypePredicateNode:()=>Kk,isTypeQueryNode:()=>lI,isTypeReferenceNode:()=>Cf,isTypeReferenceType:()=>O4,isTypeUsableAsPropertyName:()=>rm,isUMDExportSymbol:()=>z3,isUnaryExpression:()=>uj,isUnaryExpressionWithWrite:()=>Hre,isUnicodeIdentifierStart:()=>f4,isUnionTypeNode:()=>Qy,isUnparsedNode:()=>tj,isUnparsedPrepend:()=>Kae,isUnparsedSource:()=>KS,isUnparsedTextLike:()=>Ore,isUrl:()=>rre,isValidBigIntString:()=>rW,isValidESSymbolDeclaration:()=>Cie,isValidTypeOnlyAliasUseSite:()=>T0,isValueSignatureDeclaration:()=>Jie,isVarAwaitUsing:()=>LL,isVarConst:()=>uR,isVarUsing:()=>kL,isVariableDeclaration:()=>wi,isVariableDeclarationInVariableStatement:()=>TC,isVariableDeclarationInitializedToBareOrAccessedRequire:()=>GE,isVariableDeclarationInitializedToRequire:()=>d3,isVariableDeclarationList:()=>Uc,isVariableLike:()=>pR,isVariableLikeOrAccessor:()=>Die,isVariableStatement:()=>Ll,isVoidExpression:()=>pI,isWatchSet:()=>fTe,isWhileStatement:()=>tAe,isWhiteSpaceLike:()=>wg,isWhiteSpaceSingleLine:()=>A_,isWithStatement:()=>Uae,isWriteAccess:()=>HA,isWriteOnlyAccess:()=>F3,isYieldExpression:()=>iF,jsxModeNeedsExplicitImport:()=>UX,keywordPart:()=>Tp,last:()=>Ya,lastOrUndefined:()=>tl,length:()=>Me,libMap:()=>DF,libs:()=>yw,lineBreakPart:()=>CD,linkNamePart:()=>$ue,linkPart:()=>DX,linkTextPart:()=>b5,listFiles:()=>cK,loadModuleFromGlobalCache:()=>ile,loadWithModeAwareCache:()=>qw,makeIdentifierFromModuleName:()=>_ie,makeImport:()=>ey,makeImportIfNecessary:()=>Uue,makeStringLiteral:()=>MI,mangleScopedPackageName:()=>pD,map:()=>wt,mapAllOrFail:()=>RE,mapDefined:()=>Hi,mapDefinedEntries:()=>C6,mapDefinedIterator:()=>Pg,mapEntries:()=>Ane,mapIterator:()=>Ia,mapOneOrMany:()=>GX,mapToDisplayParts:()=>lb,matchFiles:()=>FU,matchPatternOrExact:()=>zU,matchedText:()=>Fne,matchesExclude:()=>RF,maybeBind:()=>oa,maybeSetLocalizedDiagnosticMessages:()=>Woe,memoize:()=>Td,memoizeCached:()=>Pne,memoizeOne:()=>uh,memoizeWeak:()=>b1e,metadataHelper:()=>AW,min:()=>yG,minAndMax:()=>$oe,missingFileModifiedTime:()=>Op,modifierToFlag:()=>UA,modifiersToFlags:()=>M_,moduleOptionDeclaration:()=>bq,moduleResolutionIsEqualTo:()=>lie,moduleResolutionNameAndModeGetter:()=>R7,moduleResolutionOptionDeclarations:()=>NF,moduleResolutionSupportsPackageJsonExportsAndImports:()=>KA,moduleResolutionUsesNodeModules:()=>m5,moduleSpecifiers:()=>m1,moveEmitHelpers:()=>Aae,moveRangeEnd:()=>O3,moveRangePastDecorators:()=>Gg,moveRangePastModifiers:()=>L_,moveRangePos:()=>E0,moveSyntheticComments:()=>Eae,mutateMap:()=>JC,mutateMapSkippingNewValues:()=>sg,needsParentheses:()=>S5,needsScopeMarker:()=>C4,newCaseClauseTracker:()=>O5,newPrivateEnvironment:()=>Ple,noEmitNotification:()=>Ww,noEmitSubstitution:()=>qP,noTransformers:()=>bJ,noTruncationMaximumTruncationLength:()=>dW,nodeCanBeDecorated:()=>a3,nodeHasName:()=>uL,nodeIsDecorated:()=>mR,nodeIsMissing:()=>zl,nodeIsPresent:()=>Yf,nodeIsSynthesized:()=>$s,nodeModuleNameResolver:()=>Qse,nodeModulesPathPart:()=>xh,nodeNextJsonConfigResolver:()=>Zse,nodeOrChildIsDecorated:()=>BL,nodeOverlapsWithStartEnd:()=>t5,nodePosToString:()=>wSe,nodeSeenTracker:()=>PI,nodeStartsNewLexicalEnvironment:()=>oU,nodeToDisplayParts:()=>kDe,noop:()=>$a,noopFileWatcher:()=>SD,normalizePath:()=>ga,normalizeSlashes:()=>Lu,not:()=>G6,notImplemented:()=>Ko,notImplementedResolver:()=>h7,nullNodeConverters:()=>pH,nullParenthesizerRules:()=>dH,nullTransformationContext:()=>JP,objectAllocator:()=>lu,operatorPart:()=>c2,optionDeclarations:()=>pg,optionMapToObject:()=>AF,optionsAffectingProgramStructure:()=>Iq,optionsForBuild:()=>Rq,optionsForWatch:()=>sD,optionsHaveChanges:()=>oR,optionsHaveModuleResolutionChanges:()=>oie,or:()=>Ym,orderedRemoveItem:()=>Gx,orderedRemoveItemAt:()=>Dy,outFile:()=>Ps,packageIdToPackageName:()=>B4,packageIdToString:()=>By,paramHelper:()=>IW,parameterIsThisKeyword:()=>JE,parameterNamePart:()=>Jue,parseBaseNodeFactory:()=>lq,parseBigInt:()=>Qoe,parseBuildCommand:()=>ZAe,parseCommandLine:()=>$Ae,parseCommandLineWorker:()=>dq,parseConfigFileTextToJson:()=>fq,parseConfigFileWithSystem:()=>kRe,parseConfigHostFromCompilerHostLike:()=>x7,parseCustomTypeOption:()=>TF,parseIsolatedEntityName:()=>bI,parseIsolatedJSDocComment:()=>Tse,parseJSDocTypeExpressionForTests:()=>FAe,parseJsonConfigFileContent:()=>fIe,parseJsonSourceFileConfigFileContent:()=>hw,parseJsonText:()=>pw,parseListTypeOption:()=>Ise,parseNodeFactory:()=>Ih,parseNodeModuleFromPath:()=>xw,parsePackageName:()=>Nw,parsePseudoBigInt:()=>eP,parseValidBigInt:()=>jU,patchWriteFileEnsuringDirectory:()=>tre,pathContainsNodeModules:()=>L0,pathIsAbsolute:()=>nC,pathIsBareSpecifier:()=>WV,pathIsRelative:()=>Wp,patternText:()=>Wne,perfLogger:()=>ad,performIncrementalCompilation:()=>FRe,performance:()=>Xne,plainJSErrors:()=>D7,positionBelongsToNode:()=>rX,positionIsASICandidate:()=>x5,positionIsSynthesized:()=>Zm,positionsAreOnSameLine:()=>Rf,preProcessFile:()=>sNe,probablyUsesSemicolons:()=>TO,processCommentPragmas:()=>aq,processPragmasIntoFields:()=>sq,processTaggedTemplateExpression:()=>fJ,programContainsEsModules:()=>jue,programContainsModules:()=>Vue,projectReferenceIsEqualTo:()=>gj,propKeyHelper:()=>FW,propertyNamePart:()=>Kue,pseudoBigIntToString:()=>$E,punctuationPart:()=>$u,pushIfUnique:()=>Tf,quote:()=>p2,quotePreferenceFromString:()=>yX,rangeContainsPosition:()=>sO,rangeContainsPositionExclusive:()=>lO,rangeContainsRange:()=>cf,rangeContainsRangeExclusive:()=>Due,rangeContainsStartEnd:()=>cO,rangeEndIsOnSameLineAsRangeStart:()=>gk,rangeEndPositionsAreOnSameLine:()=>Aoe,rangeEquals:()=>pG,rangeIsOnSingleLine:()=>OS,rangeOfNode:()=>GU,rangeOfTypeParameters:()=>VU,rangeOverlapsWithStartEnd:()=>i2,rangeStartIsOnSameLineAsRangeEnd:()=>Ioe,rangeStartPositionsAreOnSameLine:()=>W3,readBuilderProgram:()=>B7,readConfigFile:()=>mw,readHelper:()=>OW,readJson:()=>jC,readJsonConfigFile:()=>Dse,readJsonOrUndefined:()=>AU,reduceEachLeadingCommentRange:()=>cre,reduceEachTrailingCommentRange:()=>ure,reduceLeft:()=>od,reduceLeftIterator:()=>Pr,reducePathComponents:()=>_S,refactor:()=>wI,regExpEscape:()=>bTe,relativeComplement:()=>Ine,removeAllComments:()=>Fk,removeEmitHelper:()=>YTe,removeExtension:()=>Tk,removeFileExtension:()=>Id,removeIgnoredPath:()=>P7,removeMinAndVersionNumbers:()=>bG,removeOptionality:()=>wue,removePrefix:()=>QN,removeSuffix:()=>Bx,removeTrailingDirectorySeparator:()=>o0,repeatString:()=>_O,replaceElement:()=>_G,replaceFirstStar:()=>$A,resolutionExtensionIsTSOrJson:()=>$C,resolveConfigFileProjectName:()=>bK,resolveJSModule:()=>Yse,resolveLibrary:()=>BF,resolveModuleName:()=>uD,resolveModuleNameFromCache:()=>YIe,resolvePackageNameToPackageJson:()=>Cq,resolvePath:()=>Py,resolveProjectReferencePath:()=>vD,resolveTripleslashReference:()=>b7,resolveTypeReferenceDirective:()=>qse,resolvingEmptyArray:()=>uW,restHelper:()=>MW,returnFalse:()=>Xm,returnNoopFileWatcher:()=>TD,returnTrue:()=>Pv,returnUndefined:()=>r0,returnsPromise:()=>cY,runInitializersHelper:()=>RW,sameFlatMap:()=>vm,sameMap:()=>eo,sameMapping:()=>Wxe,scanShebangTrivia:()=>VV,scanTokenAtPosition:()=>Iie,scanner:()=>Qu,screenStartingMessageCodes:()=>z7,semanticDiagnosticsOptionDeclarations:()=>Sq,serializeCompilerOptions:()=>IF,server:()=>a8e,servicesVersion:()=>Ope,setCommentRange:()=>ac,setConfigFileInOptions:()=>vq,setConstantValue:()=>Tae,setEachParent:()=>zR,setEmitFlags:()=>pr,setFunctionNameHelper:()=>zW,setGetSourceFileAsHashVersioned:()=>F7,setIdentifierAutoGenerate:()=>Gk,setIdentifierGeneratedImportReference:()=>Rae,setIdentifierTypeArguments:()=>Jv,setInternalEmitFlags:()=>zk,setLocalizedDiagnosticMessages:()=>Ooe,setModuleDefaultHelper:()=>VW,setNodeFlags:()=>tae,setObjectAllocator:()=>woe,setOriginalNode:()=>Cr,setParent:()=>qa,setParentRecursive:()=>Jy,setPrivateIdentifier:()=>eT,setSnippetElement:()=>bH,setSourceMapRange:()=>Pa,setStackTraceLimit:()=>G1e,setStartsOnNewLine:()=>bW,setSyntheticLeadingComments:()=>I0,setSyntheticTrailingComments:()=>ZA,setSys:()=>q1e,setSysLog:()=>Zne,setTextRange:()=>dt,setTextRangeEnd:()=>FR,setTextRangePos:()=>tP,setTextRangePosEnd:()=>vh,setTextRangePosWidth:()=>nP,setTokenSourceMapRange:()=>bae,setTypeNode:()=>Iae,setUILocale:()=>kne,setValueDeclaration:()=>YL,shouldAllowImportingTsExtension:()=>fD,shouldPreserveConstEnums:()=>e1,shouldUseUriStyleNodeCoreModules:()=>k5,showModuleSpecifier:()=>Coe,signatureHasLiteralTypes:()=>Xq,signatureHasRestParameter:()=>Yu,signatureToDisplayParts:()=>NX,single:()=>mG,singleElementArray:()=>AA,singleIterator:()=>P6,singleOrMany:()=>lh,singleOrUndefined:()=>sh,skipAlias:()=>bu,skipAssertions:()=>hAe,skipConstraint:()=>hX,skipOuterExpressions:()=>$l,skipParentheses:()=>hs,skipPartiallyEmittedExpressions:()=>Tm,skipTrivia:()=>ka,skipTypeChecking:()=>ZC,skipTypeParentheses:()=>rk,skipWhile:()=>Bne,sliceAfter:()=>BU,some:()=>bt,sort:()=>uS,sortAndDeduplicate:()=>KN,sortAndDeduplicateDiagnostics:()=>Yx,sourceFileAffectingCompilerOptions:()=>CF,sourceFileMayBeEmitted:()=>MS,sourceMapCommentRegExp:()=>e7,sourceMapCommentRegExpDontCareLineStart:()=>rJ,spacePart:()=>wl,spanMap:()=>lG,spreadArrayHelper:()=>WW,stableSort:()=>Dv,startEndContainsRange:()=>nX,startEndOverlapsWithStartEnd:()=>n5,startOnNewLine:()=>Xu,startTracing:()=>Yne,startsWith:()=>uo,startsWithDirectory:()=>zV,startsWithUnderscore:()=>jX,startsWithUseStrict:()=>ase,stringContainsAt:()=>fde,stringToToken:()=>PE,stripQuotes:()=>tm,supportedDeclarationExtensions:()=>Mk,supportedJSExtensions:()=>lH,supportedJSExtensionsFlat:()=>VR,supportedLocaleDirectories:()=>hj,supportedTSExtensions:()=>GR,supportedTSExtensionsFlat:()=>sH,supportedTSImplementationExtensions:()=>Lk,suppressLeadingAndTrailingTrivia:()=>Ap,suppressLeadingTrivia:()=>LX,suppressTrailingTrivia:()=>nde,symbolEscapedNameNoDefault:()=>h5,symbolName:()=>Sl,symbolNameNoDefault:()=>_5,symbolPart:()=>que,symbolToDisplayParts:()=>u2,syntaxMayBeASICandidate:()=>XX,syntaxRequiresTrailingSemicolonOrASI:()=>I5,sys:()=>gu,sysLog:()=>JM,tagNamesAreEquivalent:()=>C0,takeWhile:()=>j6,targetOptionDeclaration:()=>Ew,templateObjectHelper:()=>wW,testFormatSettings:()=>Eue,textChangeRangeIsUnchanged:()=>gre,textChangeRangeNewSpan:()=>lC,textChanges:()=>_r,textOrKeywordPart:()=>RX,textPart:()=>df,textRangeContainsPositionInclusive:()=>sL,textSpanContainsPosition:()=>HV,textSpanContainsTextSpan:()=>fre,textSpanEnd:()=>Kl,textSpanIntersection:()=>hre,textSpanIntersectsWith:()=>v4,textSpanIntersectsWithPosition:()=>_re,textSpanIntersectsWithTextSpan:()=>fSe,textSpanIsEmpty:()=>pre,textSpanOverlap:()=>mre,textSpanOverlapsWith:()=>pSe,textSpansEqual:()=>ND,textToKeywordObj:()=>oL,timestamp:()=>Ys,toArray:()=>SA,toBuilderFileEmit:()=>kce,toBuilderStateFileInfoForMultiEmit:()=>Lce,toEditorSettings:()=>VO,toFileNameLowerCase:()=>ch,toLowerCase:()=>Cne,toPath:()=>ol,toProgramEmitPending:()=>wce,tokenIsIdentifierOrKeyword:()=>sd,tokenIsIdentifierOrKeywordOrGreaterThan:()=>sre,tokenToString:()=>fa,trace:()=>bo,tracing:()=>sr,tracingEnabled:()=>jM,transform:()=>oPe,transformClassFields:()=>Vle,transformDeclarations:()=>vJ,transformECMAScriptModule:()=>gJ,transformES2015:()=>rce,transformES2016:()=>nce,transformES2017:()=>qle,transformES2018:()=>Jle,transformES2019:()=>Kle,transformES2020:()=>Xle,transformES2021:()=>Yle,transformES5:()=>ice,transformESDecorators:()=>Hle,transformESNext:()=>$le,transformGenerators:()=>oce,transformJsx:()=>tce,transformLegacyDecorators:()=>Ule,transformModule:()=>hJ,transformNamedEvaluation:()=>Sp,transformNodeModule:()=>sce,transformNodes:()=>Fw,transformSystemModule:()=>ace,transformTypeScript:()=>Gle,transpile:()=>_Ne,transpileModule:()=>Mde,transpileOptionValueCompilerOptions:()=>xq,tryAddToSet:()=>Rv,tryAndIgnoreErrors:()=>N5,tryCast:()=>ii,tryDirectoryExists:()=>D5,tryExtractTSExtension:()=>k3,tryFileExists:()=>AO,tryGetClassExtendingExpressionWithTypeArguments:()=>bU,tryGetClassImplementingOrExtendingExpressionWithTypeArguments:()=>EU,tryGetDirectories:()=>R5,tryGetExtensionFromPath:()=>jg,tryGetImportFromModuleSpecifier:()=>$L,tryGetJSDocSatisfiesTypeNode:()=>sW,tryGetModuleNameFromFile:()=>ow,tryGetModuleSpecifierFromDeclaration:()=>vR,tryGetNativePerformanceHooks:()=>qne,tryGetPropertyAccessOrIdentifierToString:()=>hk,tryGetPropertyNameOfBindingOrAssignmentElement:()=>vF,tryGetSourceMappingURL:()=>Tle,tryGetTextOfPropertyName:()=>SC,tryIOAndConsumeErrors:()=>C5,tryParseJson:()=>w3,tryParsePattern:()=>WR,tryParsePatterns:()=>eW,tryParseRawSourceMap:()=>tJ,tryReadDirectory:()=>OX,tryReadFile:()=>PP,tryRemoveDirectoryPrefix:()=>OU,tryRemoveExtension:()=>Yoe,tryRemovePrefix:()=>TG,tryRemoveSuffix:()=>One,typeAcquisitionDeclarations:()=>Sw,typeAliasNamePart:()=>Xue,typeDirectiveIsEqualTo:()=>cie,typeKeywords:()=>W5,typeParameterNamePart:()=>Yue,typeToDisplayParts:()=>yO,unchangedPollThresholds:()=>KM,unchangedTextChangeRange:()=>IL,unescapeLeadingUnderscores:()=>Vi,unmangleScopedPackageName:()=>Pw,unorderedRemoveItem:()=>TA,unorderedRemoveItemAt:()=>EG,unreachableCodeIsError:()=>zoe,unusedLabelIsError:()=>Boe,unwrapInnermostStatementOfLabel:()=>Wj,updateErrorForNoInputFiles:()=>xF,updateLanguageServiceSourceFile:()=>qY,updateMissingFilePathsWatch:()=>DJ,updateResolutionField:()=>lD,updateSharedExtendedConfigFileWatcher:()=>v7,updateSourceFile:()=>iq,updateWatchingWildcardDirectories:()=>Gw,usesExtensionsOnImports:()=>Joe,usingSingleLineStringWriter:()=>yC,utf16EncodeAsString:()=>Xx,validateLocaleAndSetLanguage:()=>_Se,valuesHelper:()=>BW,version:()=>Re,versionMajorMinor:()=>ue,visitArray:()=>kw,visitCommaListElements:()=>ZF,visitEachChild:()=>In,visitFunctionBody:()=>lf,visitIterationBody:()=>Rd,visitLexicalEnvironment:()=>Zq,visitNode:()=>nt,visitNodes:()=>Vn,visitParameterList:()=>Dl,walkUpBindingElementsAndPatterns:()=>$x,walkUpLexicalEnvironments:()=>Cle,walkUpOuterExpressions:()=>sse,walkUpParenthesizedExpressions:()=>Bv,walkUpParenthesizedTypes:()=>nk,walkUpParenthesizedTypesAndGetParentAndChild:()=>Kie,whitespaceOrMapCommentRegExp:()=>t7,writeCommentRange:()=>PR,writeFile:()=>OC,writeFileEnsuringDirectories:()=>_U,zipWith:()=>yi});var l8e=T({"src/typescript/_namespaces/ts.ts"(){ra(),tO(),si(),db(),Rlt()}}),Dlt=W({"src/typescript/typescript.ts"(e,t){l8e(),l8e(),typeof console<"u"&&(N.loggingHost={log(r,i){switch(r){case 1:return console.error(i);case 2:return console.warn(i);case 3:return console.log(i);case 4:return console.log(i)}}}),t.exports=s8e}});return Dlt()})();typeof eG<"u"&&eG.exports&&(eG.exports=xE);var v9e=xE.createClassifier,d1e=xE.createLanguageService,y9e=xE.displayPartsToString,b9e=xE.EndOfLineState,E9e=xE.flattenDiagnosticMessageText,S9e=xE.IndentStyle,qN=xE.ScriptKind,T9e=xE.ScriptTarget,A9e=xE.TokenClass,p1e=xE,lo={};lo["lib.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es5" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+`,lo["lib.decorators.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/**
+ * The decorator context types provided to class element decorators.
+ */
+type ClassMemberDecoratorContext =
+ | ClassMethodDecoratorContext
+ | ClassGetterDecoratorContext
+ | ClassSetterDecoratorContext
+ | ClassFieldDecoratorContext
+ | ClassAccessorDecoratorContext;
+
+/**
+ * The decorator context types provided to any decorator.
+ */
+type DecoratorContext =
+ | ClassDecoratorContext
+ | ClassMemberDecoratorContext;
+
+type DecoratorMetadataObject = Record<PropertyKey, unknown> & object;
+
+type DecoratorMetadata = typeof globalThis extends { Symbol: { readonly metadata: symbol; }; } ? DecoratorMetadataObject : DecoratorMetadataObject | undefined;
+
+/**
+ * Context provided to a class decorator.
+ * @template Class The type of the decorated class associated with this context.
+ */
+interface ClassDecoratorContext<
+ Class extends abstract new (...args: any) => any = abstract new (...args: any) => any,
+> {
+ /** The kind of element that was decorated. */
+ readonly kind: "class";
+
+ /** The name of the decorated class. */
+ readonly name: string | undefined;
+
+ /**
+ * Adds a callback to be invoked after the class definition has been finalized.
+ *
+ * @example
+ * \`\`\`ts
+ * function customElement(name: string): ClassDecoratorFunction {
+ * return (target, context) => {
+ * context.addInitializer(function () {
+ * customElements.define(name, this);
+ * });
+ * }
+ * }
+ *
+ * @customElement("my-element")
+ * class MyElement {}
+ * \`\`\`
+ */
+ addInitializer(initializer: (this: Class) => void): void;
+
+ readonly metadata: DecoratorMetadata;
+}
+
+/**
+ * Context provided to a class method decorator.
+ * @template This The type on which the class element will be defined. For a static class element, this will be
+ * the type of the constructor. For a non-static class element, this will be the type of the instance.
+ * @template Value The type of the decorated class method.
+ */
+interface ClassMethodDecoratorContext<
+ This = unknown,
+ Value extends (this: This, ...args: any) => any = (this: This, ...args: any) => any,
+> {
+ /** The kind of class element that was decorated. */
+ readonly kind: "method";
+
+ /** The name of the decorated class element. */
+ readonly name: string | symbol;
+
+ /** A value indicating whether the class element is a static (\`true\`) or instance (\`false\`) element. */
+ readonly static: boolean;
+
+ /** A value indicating whether the class element has a private name. */
+ readonly private: boolean;
+
+ /** An object that can be used to access the current value of the class element at runtime. */
+ readonly access: {
+ /**
+ * Determines whether an object has a property with the same name as the decorated element.
+ */
+ has(object: This): boolean;
+ /**
+ * Gets the current value of the method from the provided object.
+ *
+ * @example
+ * let fn = context.access.get(instance);
+ */
+ get(object: This): Value;
+ };
+
+ /**
+ * Adds a callback to be invoked either before static initializers are run (when
+ * decorating a \`static\` element), or before instance initializers are run (when
+ * decorating a non-\`static\` element).
+ *
+ * @example
+ * \`\`\`ts
+ * const bound: ClassMethodDecoratorFunction = (value, context) {
+ * if (context.private) throw new TypeError("Not supported on private methods.");
+ * context.addInitializer(function () {
+ * this[context.name] = this[context.name].bind(this);
+ * });
+ * }
+ *
+ * class C {
+ * message = "Hello";
+ *
+ * @bound
+ * m() {
+ * console.log(this.message);
+ * }
+ * }
+ * \`\`\`
+ */
+ addInitializer(initializer: (this: This) => void): void;
+
+ readonly metadata: DecoratorMetadata;
+}
+
+/**
+ * Context provided to a class getter decorator.
+ * @template This The type on which the class element will be defined. For a static class element, this will be
+ * the type of the constructor. For a non-static class element, this will be the type of the instance.
+ * @template Value The property type of the decorated class getter.
+ */
+interface ClassGetterDecoratorContext<
+ This = unknown,
+ Value = unknown,
+> {
+ /** The kind of class element that was decorated. */
+ readonly kind: "getter";
+
+ /** The name of the decorated class element. */
+ readonly name: string | symbol;
+
+ /** A value indicating whether the class element is a static (\`true\`) or instance (\`false\`) element. */
+ readonly static: boolean;
+
+ /** A value indicating whether the class element has a private name. */
+ readonly private: boolean;
+
+ /** An object that can be used to access the current value of the class element at runtime. */
+ readonly access: {
+ /**
+ * Determines whether an object has a property with the same name as the decorated element.
+ */
+ has(object: This): boolean;
+ /**
+ * Invokes the getter on the provided object.
+ *
+ * @example
+ * let value = context.access.get(instance);
+ */
+ get(object: This): Value;
+ };
+
+ /**
+ * Adds a callback to be invoked either before static initializers are run (when
+ * decorating a \`static\` element), or before instance initializers are run (when
+ * decorating a non-\`static\` element).
+ */
+ addInitializer(initializer: (this: This) => void): void;
+
+ readonly metadata: DecoratorMetadata;
+}
+
+/**
+ * Context provided to a class setter decorator.
+ * @template This The type on which the class element will be defined. For a static class element, this will be
+ * the type of the constructor. For a non-static class element, this will be the type of the instance.
+ * @template Value The type of the decorated class setter.
+ */
+interface ClassSetterDecoratorContext<
+ This = unknown,
+ Value = unknown,
+> {
+ /** The kind of class element that was decorated. */
+ readonly kind: "setter";
+
+ /** The name of the decorated class element. */
+ readonly name: string | symbol;
+
+ /** A value indicating whether the class element is a static (\`true\`) or instance (\`false\`) element. */
+ readonly static: boolean;
+
+ /** A value indicating whether the class element has a private name. */
+ readonly private: boolean;
+
+ /** An object that can be used to access the current value of the class element at runtime. */
+ readonly access: {
+ /**
+ * Determines whether an object has a property with the same name as the decorated element.
+ */
+ has(object: This): boolean;
+ /**
+ * Invokes the setter on the provided object.
+ *
+ * @example
+ * context.access.set(instance, value);
+ */
+ set(object: This, value: Value): void;
+ };
+
+ /**
+ * Adds a callback to be invoked either before static initializers are run (when
+ * decorating a \`static\` element), or before instance initializers are run (when
+ * decorating a non-\`static\` element).
+ */
+ addInitializer(initializer: (this: This) => void): void;
+
+ readonly metadata: DecoratorMetadata;
+}
+
+/**
+ * Context provided to a class \`accessor\` field decorator.
+ * @template This The type on which the class element will be defined. For a static class element, this will be
+ * the type of the constructor. For a non-static class element, this will be the type of the instance.
+ * @template Value The type of decorated class field.
+ */
+interface ClassAccessorDecoratorContext<
+ This = unknown,
+ Value = unknown,
+> {
+ /** The kind of class element that was decorated. */
+ readonly kind: "accessor";
+
+ /** The name of the decorated class element. */
+ readonly name: string | symbol;
+
+ /** A value indicating whether the class element is a static (\`true\`) or instance (\`false\`) element. */
+ readonly static: boolean;
+
+ /** A value indicating whether the class element has a private name. */
+ readonly private: boolean;
+
+ /** An object that can be used to access the current value of the class element at runtime. */
+ readonly access: {
+ /**
+ * Determines whether an object has a property with the same name as the decorated element.
+ */
+ has(object: This): boolean;
+
+ /**
+ * Invokes the getter on the provided object.
+ *
+ * @example
+ * let value = context.access.get(instance);
+ */
+ get(object: This): Value;
+
+ /**
+ * Invokes the setter on the provided object.
+ *
+ * @example
+ * context.access.set(instance, value);
+ */
+ set(object: This, value: Value): void;
+ };
+
+ /**
+ * Adds a callback to be invoked either before static initializers are run (when
+ * decorating a \`static\` element), or before instance initializers are run (when
+ * decorating a non-\`static\` element).
+ */
+ addInitializer(initializer: (this: This) => void): void;
+
+ readonly metadata: DecoratorMetadata;
+}
+
+/**
+ * Describes the target provided to class \`accessor\` field decorators.
+ * @template This The \`this\` type to which the target applies.
+ * @template Value The property type for the class \`accessor\` field.
+ */
+interface ClassAccessorDecoratorTarget<This, Value> {
+ /**
+ * Invokes the getter that was defined prior to decorator application.
+ *
+ * @example
+ * let value = target.get.call(instance);
+ */
+ get(this: This): Value;
+
+ /**
+ * Invokes the setter that was defined prior to decorator application.
+ *
+ * @example
+ * target.set.call(instance, value);
+ */
+ set(this: This, value: Value): void;
+}
+
+/**
+ * Describes the allowed return value from a class \`accessor\` field decorator.
+ * @template This The \`this\` type to which the target applies.
+ * @template Value The property type for the class \`accessor\` field.
+ */
+interface ClassAccessorDecoratorResult<This, Value> {
+ /**
+ * An optional replacement getter function. If not provided, the existing getter function is used instead.
+ */
+ get?(this: This): Value;
+
+ /**
+ * An optional replacement setter function. If not provided, the existing setter function is used instead.
+ */
+ set?(this: This, value: Value): void;
+
+ /**
+ * An optional initializer mutator that is invoked when the underlying field initializer is evaluated.
+ * @param value The incoming initializer value.
+ * @returns The replacement initializer value.
+ */
+ init?(this: This, value: Value): Value;
+}
+
+/**
+ * Context provided to a class field decorator.
+ * @template This The type on which the class element will be defined. For a static class element, this will be
+ * the type of the constructor. For a non-static class element, this will be the type of the instance.
+ * @template Value The type of the decorated class field.
+ */
+interface ClassFieldDecoratorContext<
+ This = unknown,
+ Value = unknown,
+> {
+ /** The kind of class element that was decorated. */
+ readonly kind: "field";
+
+ /** The name of the decorated class element. */
+ readonly name: string | symbol;
+
+ /** A value indicating whether the class element is a static (\`true\`) or instance (\`false\`) element. */
+ readonly static: boolean;
+
+ /** A value indicating whether the class element has a private name. */
+ readonly private: boolean;
+
+ /** An object that can be used to access the current value of the class element at runtime. */
+ readonly access: {
+ /**
+ * Determines whether an object has a property with the same name as the decorated element.
+ */
+ has(object: This): boolean;
+
+ /**
+ * Gets the value of the field on the provided object.
+ */
+ get(object: This): Value;
+
+ /**
+ * Sets the value of the field on the provided object.
+ */
+ set(object: This, value: Value): void;
+ };
+
+ /**
+ * Adds a callback to be invoked either before static initializers are run (when
+ * decorating a \`static\` element), or before instance initializers are run (when
+ * decorating a non-\`static\` element).
+ */
+ addInitializer(initializer: (this: This) => void): void;
+
+ readonly metadata: DecoratorMetadata;
+}
+`,lo["lib.decorators.legacy.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare type ClassDecorator = <TFunction extends Function>(target: TFunction) => TFunction | void;
+declare type PropertyDecorator = (target: Object, propertyKey: string | symbol) => void;
+declare type MethodDecorator = <T>(target: Object, propertyKey: string | symbol, descriptor: TypedPropertyDescriptor<T>) => TypedPropertyDescriptor<T> | void;
+declare type ParameterDecorator = (target: Object, propertyKey: string | symbol | undefined, parameterIndex: number) => void;
+`,lo["lib.dom.asynciterable.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// Window Async Iterable APIs
+/////////////////////////////
+
+interface FileSystemDirectoryHandle {
+ [Symbol.asyncIterator](): AsyncIterableIterator<[string, FileSystemHandle]>;
+ entries(): AsyncIterableIterator<[string, FileSystemHandle]>;
+ keys(): AsyncIterableIterator<string>;
+ values(): AsyncIterableIterator<FileSystemHandle>;
+}
+`,lo["lib.dom.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// Window APIs
+/////////////////////////////
+
+interface AddEventListenerOptions extends EventListenerOptions {
+ once?: boolean;
+ passive?: boolean;
+ signal?: AbortSignal;
+}
+
+interface AesCbcParams extends Algorithm {
+ iv: BufferSource;
+}
+
+interface AesCtrParams extends Algorithm {
+ counter: BufferSource;
+ length: number;
+}
+
+interface AesDerivedKeyParams extends Algorithm {
+ length: number;
+}
+
+interface AesGcmParams extends Algorithm {
+ additionalData?: BufferSource;
+ iv: BufferSource;
+ tagLength?: number;
+}
+
+interface AesKeyAlgorithm extends KeyAlgorithm {
+ length: number;
+}
+
+interface AesKeyGenParams extends Algorithm {
+ length: number;
+}
+
+interface Algorithm {
+ name: string;
+}
+
+interface AnalyserOptions extends AudioNodeOptions {
+ fftSize?: number;
+ maxDecibels?: number;
+ minDecibels?: number;
+ smoothingTimeConstant?: number;
+}
+
+interface AnimationEventInit extends EventInit {
+ animationName?: string;
+ elapsedTime?: number;
+ pseudoElement?: string;
+}
+
+interface AnimationPlaybackEventInit extends EventInit {
+ currentTime?: CSSNumberish | null;
+ timelineTime?: CSSNumberish | null;
+}
+
+interface AssignedNodesOptions {
+ flatten?: boolean;
+}
+
+interface AudioBufferOptions {
+ length: number;
+ numberOfChannels?: number;
+ sampleRate: number;
+}
+
+interface AudioBufferSourceOptions {
+ buffer?: AudioBuffer | null;
+ detune?: number;
+ loop?: boolean;
+ loopEnd?: number;
+ loopStart?: number;
+ playbackRate?: number;
+}
+
+interface AudioConfiguration {
+ bitrate?: number;
+ channels?: string;
+ contentType: string;
+ samplerate?: number;
+ spatialRendering?: boolean;
+}
+
+interface AudioContextOptions {
+ latencyHint?: AudioContextLatencyCategory | number;
+ sampleRate?: number;
+}
+
+interface AudioNodeOptions {
+ channelCount?: number;
+ channelCountMode?: ChannelCountMode;
+ channelInterpretation?: ChannelInterpretation;
+}
+
+interface AudioProcessingEventInit extends EventInit {
+ inputBuffer: AudioBuffer;
+ outputBuffer: AudioBuffer;
+ playbackTime: number;
+}
+
+interface AudioTimestamp {
+ contextTime?: number;
+ performanceTime?: DOMHighResTimeStamp;
+}
+
+interface AudioWorkletNodeOptions extends AudioNodeOptions {
+ numberOfInputs?: number;
+ numberOfOutputs?: number;
+ outputChannelCount?: number[];
+ parameterData?: Record<string, number>;
+ processorOptions?: any;
+}
+
+interface AuthenticationExtensionsClientInputs {
+ appid?: string;
+ credProps?: boolean;
+ hmacCreateSecret?: boolean;
+ minPinLength?: boolean;
+}
+
+interface AuthenticationExtensionsClientOutputs {
+ appid?: boolean;
+ credProps?: CredentialPropertiesOutput;
+ hmacCreateSecret?: boolean;
+}
+
+interface AuthenticatorSelectionCriteria {
+ authenticatorAttachment?: AuthenticatorAttachment;
+ requireResidentKey?: boolean;
+ residentKey?: ResidentKeyRequirement;
+ userVerification?: UserVerificationRequirement;
+}
+
+interface AvcEncoderConfig {
+ format?: AvcBitstreamFormat;
+}
+
+interface BiquadFilterOptions extends AudioNodeOptions {
+ Q?: number;
+ detune?: number;
+ frequency?: number;
+ gain?: number;
+ type?: BiquadFilterType;
+}
+
+interface BlobEventInit {
+ data: Blob;
+ timecode?: DOMHighResTimeStamp;
+}
+
+interface BlobPropertyBag {
+ endings?: EndingType;
+ type?: string;
+}
+
+interface CSSMatrixComponentOptions {
+ is2D?: boolean;
+}
+
+interface CSSNumericType {
+ angle?: number;
+ flex?: number;
+ frequency?: number;
+ length?: number;
+ percent?: number;
+ percentHint?: CSSNumericBaseType;
+ resolution?: number;
+ time?: number;
+}
+
+interface CSSStyleSheetInit {
+ baseURL?: string;
+ disabled?: boolean;
+ media?: MediaList | string;
+}
+
+interface CacheQueryOptions {
+ ignoreMethod?: boolean;
+ ignoreSearch?: boolean;
+ ignoreVary?: boolean;
+}
+
+interface CanvasRenderingContext2DSettings {
+ alpha?: boolean;
+ colorSpace?: PredefinedColorSpace;
+ desynchronized?: boolean;
+ willReadFrequently?: boolean;
+}
+
+interface ChannelMergerOptions extends AudioNodeOptions {
+ numberOfInputs?: number;
+}
+
+interface ChannelSplitterOptions extends AudioNodeOptions {
+ numberOfOutputs?: number;
+}
+
+interface CheckVisibilityOptions {
+ checkOpacity?: boolean;
+ checkVisibilityCSS?: boolean;
+}
+
+interface ClientQueryOptions {
+ includeUncontrolled?: boolean;
+ type?: ClientTypes;
+}
+
+interface ClipboardEventInit extends EventInit {
+ clipboardData?: DataTransfer | null;
+}
+
+interface ClipboardItemOptions {
+ presentationStyle?: PresentationStyle;
+}
+
+interface CloseEventInit extends EventInit {
+ code?: number;
+ reason?: string;
+ wasClean?: boolean;
+}
+
+interface CompositionEventInit extends UIEventInit {
+ data?: string;
+}
+
+interface ComputedEffectTiming extends EffectTiming {
+ activeDuration?: CSSNumberish;
+ currentIteration?: number | null;
+ endTime?: CSSNumberish;
+ localTime?: CSSNumberish | null;
+ progress?: number | null;
+ startTime?: CSSNumberish;
+}
+
+interface ComputedKeyframe {
+ composite: CompositeOperationOrAuto;
+ computedOffset: number;
+ easing: string;
+ offset: number | null;
+ [property: string]: string | number | null | undefined;
+}
+
+interface ConstantSourceOptions {
+ offset?: number;
+}
+
+interface ConstrainBooleanParameters {
+ exact?: boolean;
+ ideal?: boolean;
+}
+
+interface ConstrainDOMStringParameters {
+ exact?: string | string[];
+ ideal?: string | string[];
+}
+
+interface ConstrainDoubleRange extends DoubleRange {
+ exact?: number;
+ ideal?: number;
+}
+
+interface ConstrainULongRange extends ULongRange {
+ exact?: number;
+ ideal?: number;
+}
+
+interface ConvolverOptions extends AudioNodeOptions {
+ buffer?: AudioBuffer | null;
+ disableNormalization?: boolean;
+}
+
+interface CredentialCreationOptions {
+ publicKey?: PublicKeyCredentialCreationOptions;
+ signal?: AbortSignal;
+}
+
+interface CredentialPropertiesOutput {
+ rk?: boolean;
+}
+
+interface CredentialRequestOptions {
+ mediation?: CredentialMediationRequirement;
+ publicKey?: PublicKeyCredentialRequestOptions;
+ signal?: AbortSignal;
+}
+
+interface CryptoKeyPair {
+ privateKey: CryptoKey;
+ publicKey: CryptoKey;
+}
+
+interface CustomEventInit<T = any> extends EventInit {
+ detail?: T;
+}
+
+interface DOMMatrix2DInit {
+ a?: number;
+ b?: number;
+ c?: number;
+ d?: number;
+ e?: number;
+ f?: number;
+ m11?: number;
+ m12?: number;
+ m21?: number;
+ m22?: number;
+ m41?: number;
+ m42?: number;
+}
+
+interface DOMMatrixInit extends DOMMatrix2DInit {
+ is2D?: boolean;
+ m13?: number;
+ m14?: number;
+ m23?: number;
+ m24?: number;
+ m31?: number;
+ m32?: number;
+ m33?: number;
+ m34?: number;
+ m43?: number;
+ m44?: number;
+}
+
+interface DOMPointInit {
+ w?: number;
+ x?: number;
+ y?: number;
+ z?: number;
+}
+
+interface DOMQuadInit {
+ p1?: DOMPointInit;
+ p2?: DOMPointInit;
+ p3?: DOMPointInit;
+ p4?: DOMPointInit;
+}
+
+interface DOMRectInit {
+ height?: number;
+ width?: number;
+ x?: number;
+ y?: number;
+}
+
+interface DelayOptions extends AudioNodeOptions {
+ delayTime?: number;
+ maxDelayTime?: number;
+}
+
+interface DeviceMotionEventAccelerationInit {
+ x?: number | null;
+ y?: number | null;
+ z?: number | null;
+}
+
+interface DeviceMotionEventInit extends EventInit {
+ acceleration?: DeviceMotionEventAccelerationInit;
+ accelerationIncludingGravity?: DeviceMotionEventAccelerationInit;
+ interval?: number;
+ rotationRate?: DeviceMotionEventRotationRateInit;
+}
+
+interface DeviceMotionEventRotationRateInit {
+ alpha?: number | null;
+ beta?: number | null;
+ gamma?: number | null;
+}
+
+interface DeviceOrientationEventInit extends EventInit {
+ absolute?: boolean;
+ alpha?: number | null;
+ beta?: number | null;
+ gamma?: number | null;
+}
+
+interface DisplayMediaStreamOptions {
+ audio?: boolean | MediaTrackConstraints;
+ video?: boolean | MediaTrackConstraints;
+}
+
+interface DocumentTimelineOptions {
+ originTime?: DOMHighResTimeStamp;
+}
+
+interface DoubleRange {
+ max?: number;
+ min?: number;
+}
+
+interface DragEventInit extends MouseEventInit {
+ dataTransfer?: DataTransfer | null;
+}
+
+interface DynamicsCompressorOptions extends AudioNodeOptions {
+ attack?: number;
+ knee?: number;
+ ratio?: number;
+ release?: number;
+ threshold?: number;
+}
+
+interface EcKeyAlgorithm extends KeyAlgorithm {
+ namedCurve: NamedCurve;
+}
+
+interface EcKeyGenParams extends Algorithm {
+ namedCurve: NamedCurve;
+}
+
+interface EcKeyImportParams extends Algorithm {
+ namedCurve: NamedCurve;
+}
+
+interface EcdhKeyDeriveParams extends Algorithm {
+ public: CryptoKey;
+}
+
+interface EcdsaParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+}
+
+interface EffectTiming {
+ delay?: number;
+ direction?: PlaybackDirection;
+ duration?: number | CSSNumericValue | string;
+ easing?: string;
+ endDelay?: number;
+ fill?: FillMode;
+ iterationStart?: number;
+ iterations?: number;
+ playbackRate?: number;
+}
+
+interface ElementCreationOptions {
+ is?: string;
+}
+
+interface ElementDefinitionOptions {
+ extends?: string;
+}
+
+interface EncodedVideoChunkInit {
+ data: AllowSharedBufferSource;
+ duration?: number;
+ timestamp: number;
+ type: EncodedVideoChunkType;
+}
+
+interface EncodedVideoChunkMetadata {
+ decoderConfig?: VideoDecoderConfig;
+}
+
+interface ErrorEventInit extends EventInit {
+ colno?: number;
+ error?: any;
+ filename?: string;
+ lineno?: number;
+ message?: string;
+}
+
+interface EventInit {
+ bubbles?: boolean;
+ cancelable?: boolean;
+ composed?: boolean;
+}
+
+interface EventListenerOptions {
+ capture?: boolean;
+}
+
+interface EventModifierInit extends UIEventInit {
+ altKey?: boolean;
+ ctrlKey?: boolean;
+ metaKey?: boolean;
+ modifierAltGraph?: boolean;
+ modifierCapsLock?: boolean;
+ modifierFn?: boolean;
+ modifierFnLock?: boolean;
+ modifierHyper?: boolean;
+ modifierNumLock?: boolean;
+ modifierScrollLock?: boolean;
+ modifierSuper?: boolean;
+ modifierSymbol?: boolean;
+ modifierSymbolLock?: boolean;
+ shiftKey?: boolean;
+}
+
+interface EventSourceInit {
+ withCredentials?: boolean;
+}
+
+interface FilePropertyBag extends BlobPropertyBag {
+ lastModified?: number;
+}
+
+interface FileSystemCreateWritableOptions {
+ keepExistingData?: boolean;
+}
+
+interface FileSystemFlags {
+ create?: boolean;
+ exclusive?: boolean;
+}
+
+interface FileSystemGetDirectoryOptions {
+ create?: boolean;
+}
+
+interface FileSystemGetFileOptions {
+ create?: boolean;
+}
+
+interface FileSystemRemoveOptions {
+ recursive?: boolean;
+}
+
+interface FocusEventInit extends UIEventInit {
+ relatedTarget?: EventTarget | null;
+}
+
+interface FocusOptions {
+ preventScroll?: boolean;
+}
+
+interface FontFaceDescriptors {
+ ascentOverride?: string;
+ descentOverride?: string;
+ display?: FontDisplay;
+ featureSettings?: string;
+ lineGapOverride?: string;
+ stretch?: string;
+ style?: string;
+ unicodeRange?: string;
+ weight?: string;
+}
+
+interface FontFaceSetLoadEventInit extends EventInit {
+ fontfaces?: FontFace[];
+}
+
+interface FormDataEventInit extends EventInit {
+ formData: FormData;
+}
+
+interface FullscreenOptions {
+ navigationUI?: FullscreenNavigationUI;
+}
+
+interface GainOptions extends AudioNodeOptions {
+ gain?: number;
+}
+
+interface GamepadEffectParameters {
+ duration?: number;
+ startDelay?: number;
+ strongMagnitude?: number;
+ weakMagnitude?: number;
+}
+
+interface GamepadEventInit extends EventInit {
+ gamepad: Gamepad;
+}
+
+interface GetAnimationsOptions {
+ subtree?: boolean;
+}
+
+interface GetNotificationOptions {
+ tag?: string;
+}
+
+interface GetRootNodeOptions {
+ composed?: boolean;
+}
+
+interface HashChangeEventInit extends EventInit {
+ newURL?: string;
+ oldURL?: string;
+}
+
+interface HkdfParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ info: BufferSource;
+ salt: BufferSource;
+}
+
+interface HmacImportParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ length?: number;
+}
+
+interface HmacKeyAlgorithm extends KeyAlgorithm {
+ hash: KeyAlgorithm;
+ length: number;
+}
+
+interface HmacKeyGenParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ length?: number;
+}
+
+interface IDBDatabaseInfo {
+ name?: string;
+ version?: number;
+}
+
+interface IDBIndexParameters {
+ multiEntry?: boolean;
+ unique?: boolean;
+}
+
+interface IDBObjectStoreParameters {
+ autoIncrement?: boolean;
+ keyPath?: string | string[] | null;
+}
+
+interface IDBTransactionOptions {
+ durability?: IDBTransactionDurability;
+}
+
+interface IDBVersionChangeEventInit extends EventInit {
+ newVersion?: number | null;
+ oldVersion?: number;
+}
+
+interface IIRFilterOptions extends AudioNodeOptions {
+ feedback: number[];
+ feedforward: number[];
+}
+
+interface IdleRequestOptions {
+ timeout?: number;
+}
+
+interface ImageBitmapOptions {
+ colorSpaceConversion?: ColorSpaceConversion;
+ imageOrientation?: ImageOrientation;
+ premultiplyAlpha?: PremultiplyAlpha;
+ resizeHeight?: number;
+ resizeQuality?: ResizeQuality;
+ resizeWidth?: number;
+}
+
+interface ImageBitmapRenderingContextSettings {
+ alpha?: boolean;
+}
+
+interface ImageDataSettings {
+ colorSpace?: PredefinedColorSpace;
+}
+
+interface ImageEncodeOptions {
+ quality?: number;
+ type?: string;
+}
+
+interface ImportMeta {
+ url: string;
+}
+
+interface InputEventInit extends UIEventInit {
+ data?: string | null;
+ dataTransfer?: DataTransfer | null;
+ inputType?: string;
+ isComposing?: boolean;
+ targetRanges?: StaticRange[];
+}
+
+interface IntersectionObserverEntryInit {
+ boundingClientRect: DOMRectInit;
+ intersectionRatio: number;
+ intersectionRect: DOMRectInit;
+ isIntersecting: boolean;
+ rootBounds: DOMRectInit | null;
+ target: Element;
+ time: DOMHighResTimeStamp;
+}
+
+interface IntersectionObserverInit {
+ root?: Element | Document | null;
+ rootMargin?: string;
+ threshold?: number | number[];
+}
+
+interface JsonWebKey {
+ alg?: string;
+ crv?: string;
+ d?: string;
+ dp?: string;
+ dq?: string;
+ e?: string;
+ ext?: boolean;
+ k?: string;
+ key_ops?: string[];
+ kty?: string;
+ n?: string;
+ oth?: RsaOtherPrimesInfo[];
+ p?: string;
+ q?: string;
+ qi?: string;
+ use?: string;
+ x?: string;
+ y?: string;
+}
+
+interface KeyAlgorithm {
+ name: string;
+}
+
+interface KeyboardEventInit extends EventModifierInit {
+ /** @deprecated */
+ charCode?: number;
+ code?: string;
+ isComposing?: boolean;
+ key?: string;
+ /** @deprecated */
+ keyCode?: number;
+ location?: number;
+ repeat?: boolean;
+}
+
+interface Keyframe {
+ composite?: CompositeOperationOrAuto;
+ easing?: string;
+ offset?: number | null;
+ [property: string]: string | number | null | undefined;
+}
+
+interface KeyframeAnimationOptions extends KeyframeEffectOptions {
+ id?: string;
+ timeline?: AnimationTimeline | null;
+}
+
+interface KeyframeEffectOptions extends EffectTiming {
+ composite?: CompositeOperation;
+ iterationComposite?: IterationCompositeOperation;
+ pseudoElement?: string | null;
+}
+
+interface LockInfo {
+ clientId?: string;
+ mode?: LockMode;
+ name?: string;
+}
+
+interface LockManagerSnapshot {
+ held?: LockInfo[];
+ pending?: LockInfo[];
+}
+
+interface LockOptions {
+ ifAvailable?: boolean;
+ mode?: LockMode;
+ signal?: AbortSignal;
+ steal?: boolean;
+}
+
+interface MIDIConnectionEventInit extends EventInit {
+ port?: MIDIPort;
+}
+
+interface MIDIMessageEventInit extends EventInit {
+ data?: Uint8Array;
+}
+
+interface MIDIOptions {
+ software?: boolean;
+ sysex?: boolean;
+}
+
+interface MediaCapabilitiesDecodingInfo extends MediaCapabilitiesInfo {
+ configuration?: MediaDecodingConfiguration;
+}
+
+interface MediaCapabilitiesEncodingInfo extends MediaCapabilitiesInfo {
+ configuration?: MediaEncodingConfiguration;
+}
+
+interface MediaCapabilitiesInfo {
+ powerEfficient: boolean;
+ smooth: boolean;
+ supported: boolean;
+}
+
+interface MediaConfiguration {
+ audio?: AudioConfiguration;
+ video?: VideoConfiguration;
+}
+
+interface MediaDecodingConfiguration extends MediaConfiguration {
+ type: MediaDecodingType;
+}
+
+interface MediaElementAudioSourceOptions {
+ mediaElement: HTMLMediaElement;
+}
+
+interface MediaEncodingConfiguration extends MediaConfiguration {
+ type: MediaEncodingType;
+}
+
+interface MediaEncryptedEventInit extends EventInit {
+ initData?: ArrayBuffer | null;
+ initDataType?: string;
+}
+
+interface MediaImage {
+ sizes?: string;
+ src: string;
+ type?: string;
+}
+
+interface MediaKeyMessageEventInit extends EventInit {
+ message: ArrayBuffer;
+ messageType: MediaKeyMessageType;
+}
+
+interface MediaKeySystemConfiguration {
+ audioCapabilities?: MediaKeySystemMediaCapability[];
+ distinctiveIdentifier?: MediaKeysRequirement;
+ initDataTypes?: string[];
+ label?: string;
+ persistentState?: MediaKeysRequirement;
+ sessionTypes?: string[];
+ videoCapabilities?: MediaKeySystemMediaCapability[];
+}
+
+interface MediaKeySystemMediaCapability {
+ contentType?: string;
+ encryptionScheme?: string | null;
+ robustness?: string;
+}
+
+interface MediaMetadataInit {
+ album?: string;
+ artist?: string;
+ artwork?: MediaImage[];
+ title?: string;
+}
+
+interface MediaPositionState {
+ duration?: number;
+ playbackRate?: number;
+ position?: number;
+}
+
+interface MediaQueryListEventInit extends EventInit {
+ matches?: boolean;
+ media?: string;
+}
+
+interface MediaRecorderOptions {
+ audioBitsPerSecond?: number;
+ bitsPerSecond?: number;
+ mimeType?: string;
+ videoBitsPerSecond?: number;
+}
+
+interface MediaSessionActionDetails {
+ action: MediaSessionAction;
+ fastSeek?: boolean;
+ seekOffset?: number;
+ seekTime?: number;
+}
+
+interface MediaStreamAudioSourceOptions {
+ mediaStream: MediaStream;
+}
+
+interface MediaStreamConstraints {
+ audio?: boolean | MediaTrackConstraints;
+ peerIdentity?: string;
+ preferCurrentTab?: boolean;
+ video?: boolean | MediaTrackConstraints;
+}
+
+interface MediaStreamTrackEventInit extends EventInit {
+ track: MediaStreamTrack;
+}
+
+interface MediaTrackCapabilities {
+ aspectRatio?: DoubleRange;
+ autoGainControl?: boolean[];
+ channelCount?: ULongRange;
+ deviceId?: string;
+ displaySurface?: string;
+ echoCancellation?: boolean[];
+ facingMode?: string[];
+ frameRate?: DoubleRange;
+ groupId?: string;
+ height?: ULongRange;
+ noiseSuppression?: boolean[];
+ sampleRate?: ULongRange;
+ sampleSize?: ULongRange;
+ width?: ULongRange;
+}
+
+interface MediaTrackConstraintSet {
+ aspectRatio?: ConstrainDouble;
+ autoGainControl?: ConstrainBoolean;
+ channelCount?: ConstrainULong;
+ deviceId?: ConstrainDOMString;
+ displaySurface?: ConstrainDOMString;
+ echoCancellation?: ConstrainBoolean;
+ facingMode?: ConstrainDOMString;
+ frameRate?: ConstrainDouble;
+ groupId?: ConstrainDOMString;
+ height?: ConstrainULong;
+ noiseSuppression?: ConstrainBoolean;
+ sampleRate?: ConstrainULong;
+ sampleSize?: ConstrainULong;
+ width?: ConstrainULong;
+}
+
+interface MediaTrackConstraints extends MediaTrackConstraintSet {
+ advanced?: MediaTrackConstraintSet[];
+}
+
+interface MediaTrackSettings {
+ aspectRatio?: number;
+ autoGainControl?: boolean;
+ channelCount?: number;
+ deviceId?: string;
+ displaySurface?: string;
+ echoCancellation?: boolean;
+ facingMode?: string;
+ frameRate?: number;
+ groupId?: string;
+ height?: number;
+ noiseSuppression?: boolean;
+ sampleRate?: number;
+ sampleSize?: number;
+ width?: number;
+}
+
+interface MediaTrackSupportedConstraints {
+ aspectRatio?: boolean;
+ autoGainControl?: boolean;
+ channelCount?: boolean;
+ deviceId?: boolean;
+ displaySurface?: boolean;
+ echoCancellation?: boolean;
+ facingMode?: boolean;
+ frameRate?: boolean;
+ groupId?: boolean;
+ height?: boolean;
+ noiseSuppression?: boolean;
+ sampleRate?: boolean;
+ sampleSize?: boolean;
+ width?: boolean;
+}
+
+interface MessageEventInit<T = any> extends EventInit {
+ data?: T;
+ lastEventId?: string;
+ origin?: string;
+ ports?: MessagePort[];
+ source?: MessageEventSource | null;
+}
+
+interface MouseEventInit extends EventModifierInit {
+ button?: number;
+ buttons?: number;
+ clientX?: number;
+ clientY?: number;
+ movementX?: number;
+ movementY?: number;
+ relatedTarget?: EventTarget | null;
+ screenX?: number;
+ screenY?: number;
+}
+
+interface MultiCacheQueryOptions extends CacheQueryOptions {
+ cacheName?: string;
+}
+
+interface MutationObserverInit {
+ /** Set to a list of attribute local names (without namespace) if not all attribute mutations need to be observed and attributes is true or omitted. */
+ attributeFilter?: string[];
+ /** Set to true if attributes is true or omitted and target's attribute value before the mutation needs to be recorded. */
+ attributeOldValue?: boolean;
+ /** Set to true if mutations to target's attributes are to be observed. Can be omitted if attributeOldValue or attributeFilter is specified. */
+ attributes?: boolean;
+ /** Set to true if mutations to target's data are to be observed. Can be omitted if characterDataOldValue is specified. */
+ characterData?: boolean;
+ /** Set to true if characterData is set to true or omitted and target's data before the mutation needs to be recorded. */
+ characterDataOldValue?: boolean;
+ /** Set to true if mutations to target's children are to be observed. */
+ childList?: boolean;
+ /** Set to true if mutations to not just target, but also target's descendants are to be observed. */
+ subtree?: boolean;
+}
+
+interface NavigationPreloadState {
+ enabled?: boolean;
+ headerValue?: string;
+}
+
+interface NotificationOptions {
+ badge?: string;
+ body?: string;
+ data?: any;
+ dir?: NotificationDirection;
+ icon?: string;
+ lang?: string;
+ requireInteraction?: boolean;
+ silent?: boolean | null;
+ tag?: string;
+}
+
+interface OfflineAudioCompletionEventInit extends EventInit {
+ renderedBuffer: AudioBuffer;
+}
+
+interface OfflineAudioContextOptions {
+ length: number;
+ numberOfChannels?: number;
+ sampleRate: number;
+}
+
+interface OptionalEffectTiming {
+ delay?: number;
+ direction?: PlaybackDirection;
+ duration?: number | string;
+ easing?: string;
+ endDelay?: number;
+ fill?: FillMode;
+ iterationStart?: number;
+ iterations?: number;
+ playbackRate?: number;
+}
+
+interface OscillatorOptions extends AudioNodeOptions {
+ detune?: number;
+ frequency?: number;
+ periodicWave?: PeriodicWave;
+ type?: OscillatorType;
+}
+
+interface PageTransitionEventInit extends EventInit {
+ persisted?: boolean;
+}
+
+interface PannerOptions extends AudioNodeOptions {
+ coneInnerAngle?: number;
+ coneOuterAngle?: number;
+ coneOuterGain?: number;
+ distanceModel?: DistanceModelType;
+ maxDistance?: number;
+ orientationX?: number;
+ orientationY?: number;
+ orientationZ?: number;
+ panningModel?: PanningModelType;
+ positionX?: number;
+ positionY?: number;
+ positionZ?: number;
+ refDistance?: number;
+ rolloffFactor?: number;
+}
+
+interface PaymentCurrencyAmount {
+ currency: string;
+ value: string;
+}
+
+interface PaymentDetailsBase {
+ displayItems?: PaymentItem[];
+ modifiers?: PaymentDetailsModifier[];
+}
+
+interface PaymentDetailsInit extends PaymentDetailsBase {
+ id?: string;
+ total: PaymentItem;
+}
+
+interface PaymentDetailsModifier {
+ additionalDisplayItems?: PaymentItem[];
+ data?: any;
+ supportedMethods: string;
+ total?: PaymentItem;
+}
+
+interface PaymentDetailsUpdate extends PaymentDetailsBase {
+ paymentMethodErrors?: any;
+ total?: PaymentItem;
+}
+
+interface PaymentItem {
+ amount: PaymentCurrencyAmount;
+ label: string;
+ pending?: boolean;
+}
+
+interface PaymentMethodChangeEventInit extends PaymentRequestUpdateEventInit {
+ methodDetails?: any;
+ methodName?: string;
+}
+
+interface PaymentMethodData {
+ data?: any;
+ supportedMethods: string;
+}
+
+interface PaymentRequestUpdateEventInit extends EventInit {
+}
+
+interface PaymentValidationErrors {
+ error?: string;
+ paymentMethod?: any;
+}
+
+interface Pbkdf2Params extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ iterations: number;
+ salt: BufferSource;
+}
+
+interface PerformanceMarkOptions {
+ detail?: any;
+ startTime?: DOMHighResTimeStamp;
+}
+
+interface PerformanceMeasureOptions {
+ detail?: any;
+ duration?: DOMHighResTimeStamp;
+ end?: string | DOMHighResTimeStamp;
+ start?: string | DOMHighResTimeStamp;
+}
+
+interface PerformanceObserverInit {
+ buffered?: boolean;
+ entryTypes?: string[];
+ type?: string;
+}
+
+interface PeriodicWaveConstraints {
+ disableNormalization?: boolean;
+}
+
+interface PeriodicWaveOptions extends PeriodicWaveConstraints {
+ imag?: number[] | Float32Array;
+ real?: number[] | Float32Array;
+}
+
+interface PermissionDescriptor {
+ name: PermissionName;
+}
+
+interface PictureInPictureEventInit extends EventInit {
+ pictureInPictureWindow: PictureInPictureWindow;
+}
+
+interface PlaneLayout {
+ offset: number;
+ stride: number;
+}
+
+interface PointerEventInit extends MouseEventInit {
+ coalescedEvents?: PointerEvent[];
+ height?: number;
+ isPrimary?: boolean;
+ pointerId?: number;
+ pointerType?: string;
+ predictedEvents?: PointerEvent[];
+ pressure?: number;
+ tangentialPressure?: number;
+ tiltX?: number;
+ tiltY?: number;
+ twist?: number;
+ width?: number;
+}
+
+interface PopStateEventInit extends EventInit {
+ state?: any;
+}
+
+interface PositionOptions {
+ enableHighAccuracy?: boolean;
+ maximumAge?: number;
+ timeout?: number;
+}
+
+interface ProgressEventInit extends EventInit {
+ lengthComputable?: boolean;
+ loaded?: number;
+ total?: number;
+}
+
+interface PromiseRejectionEventInit extends EventInit {
+ promise: Promise<any>;
+ reason?: any;
+}
+
+interface PropertyDefinition {
+ inherits: boolean;
+ initialValue?: string;
+ name: string;
+ syntax?: string;
+}
+
+interface PropertyIndexedKeyframes {
+ composite?: CompositeOperationOrAuto | CompositeOperationOrAuto[];
+ easing?: string | string[];
+ offset?: number | (number | null)[];
+ [property: string]: string | string[] | number | null | (number | null)[] | undefined;
+}
+
+interface PublicKeyCredentialCreationOptions {
+ attestation?: AttestationConveyancePreference;
+ authenticatorSelection?: AuthenticatorSelectionCriteria;
+ challenge: BufferSource;
+ excludeCredentials?: PublicKeyCredentialDescriptor[];
+ extensions?: AuthenticationExtensionsClientInputs;
+ pubKeyCredParams: PublicKeyCredentialParameters[];
+ rp: PublicKeyCredentialRpEntity;
+ timeout?: number;
+ user: PublicKeyCredentialUserEntity;
+}
+
+interface PublicKeyCredentialDescriptor {
+ id: BufferSource;
+ transports?: AuthenticatorTransport[];
+ type: PublicKeyCredentialType;
+}
+
+interface PublicKeyCredentialEntity {
+ name: string;
+}
+
+interface PublicKeyCredentialParameters {
+ alg: COSEAlgorithmIdentifier;
+ type: PublicKeyCredentialType;
+}
+
+interface PublicKeyCredentialRequestOptions {
+ allowCredentials?: PublicKeyCredentialDescriptor[];
+ challenge: BufferSource;
+ extensions?: AuthenticationExtensionsClientInputs;
+ rpId?: string;
+ timeout?: number;
+ userVerification?: UserVerificationRequirement;
+}
+
+interface PublicKeyCredentialRpEntity extends PublicKeyCredentialEntity {
+ id?: string;
+}
+
+interface PublicKeyCredentialUserEntity extends PublicKeyCredentialEntity {
+ displayName: string;
+ id: BufferSource;
+}
+
+interface PushSubscriptionJSON {
+ endpoint?: string;
+ expirationTime?: EpochTimeStamp | null;
+ keys?: Record<string, string>;
+}
+
+interface PushSubscriptionOptionsInit {
+ applicationServerKey?: BufferSource | string | null;
+ userVisibleOnly?: boolean;
+}
+
+interface QueuingStrategy<T = any> {
+ highWaterMark?: number;
+ size?: QueuingStrategySize<T>;
+}
+
+interface QueuingStrategyInit {
+ /**
+ * Creates a new ByteLengthQueuingStrategy with the provided high water mark.
+ *
+ * Note that the provided high water mark will not be validated ahead of time. Instead, if it is negative, NaN, or not a number, the resulting ByteLengthQueuingStrategy will cause the corresponding stream constructor to throw.
+ */
+ highWaterMark: number;
+}
+
+interface RTCAnswerOptions extends RTCOfferAnswerOptions {
+}
+
+interface RTCCertificateExpiration {
+ expires?: number;
+}
+
+interface RTCConfiguration {
+ bundlePolicy?: RTCBundlePolicy;
+ certificates?: RTCCertificate[];
+ iceCandidatePoolSize?: number;
+ iceServers?: RTCIceServer[];
+ iceTransportPolicy?: RTCIceTransportPolicy;
+ rtcpMuxPolicy?: RTCRtcpMuxPolicy;
+}
+
+interface RTCDTMFToneChangeEventInit extends EventInit {
+ tone?: string;
+}
+
+interface RTCDataChannelEventInit extends EventInit {
+ channel: RTCDataChannel;
+}
+
+interface RTCDataChannelInit {
+ id?: number;
+ maxPacketLifeTime?: number;
+ maxRetransmits?: number;
+ negotiated?: boolean;
+ ordered?: boolean;
+ protocol?: string;
+}
+
+interface RTCDtlsFingerprint {
+ algorithm?: string;
+ value?: string;
+}
+
+interface RTCEncodedAudioFrameMetadata {
+ contributingSources?: number[];
+ payloadType?: number;
+ sequenceNumber?: number;
+ synchronizationSource?: number;
+}
+
+interface RTCEncodedVideoFrameMetadata {
+ contributingSources?: number[];
+ dependencies?: number[];
+ frameId?: number;
+ height?: number;
+ payloadType?: number;
+ spatialIndex?: number;
+ synchronizationSource?: number;
+ temporalIndex?: number;
+ timestamp?: number;
+ width?: number;
+}
+
+interface RTCErrorEventInit extends EventInit {
+ error: RTCError;
+}
+
+interface RTCErrorInit {
+ errorDetail: RTCErrorDetailType;
+ httpRequestStatusCode?: number;
+ receivedAlert?: number;
+ sctpCauseCode?: number;
+ sdpLineNumber?: number;
+ sentAlert?: number;
+}
+
+interface RTCIceCandidateInit {
+ candidate?: string;
+ sdpMLineIndex?: number | null;
+ sdpMid?: string | null;
+ usernameFragment?: string | null;
+}
+
+interface RTCIceCandidatePair {
+ local?: RTCIceCandidate;
+ remote?: RTCIceCandidate;
+}
+
+interface RTCIceCandidatePairStats extends RTCStats {
+ availableIncomingBitrate?: number;
+ availableOutgoingBitrate?: number;
+ bytesReceived?: number;
+ bytesSent?: number;
+ currentRoundTripTime?: number;
+ lastPacketReceivedTimestamp?: DOMHighResTimeStamp;
+ lastPacketSentTimestamp?: DOMHighResTimeStamp;
+ localCandidateId: string;
+ nominated?: boolean;
+ remoteCandidateId: string;
+ requestsReceived?: number;
+ requestsSent?: number;
+ responsesReceived?: number;
+ responsesSent?: number;
+ state: RTCStatsIceCandidatePairState;
+ totalRoundTripTime?: number;
+ transportId: string;
+}
+
+interface RTCIceServer {
+ credential?: string;
+ urls: string | string[];
+ username?: string;
+}
+
+interface RTCInboundRtpStreamStats extends RTCReceivedRtpStreamStats {
+ audioLevel?: number;
+ bytesReceived?: number;
+ concealedSamples?: number;
+ concealmentEvents?: number;
+ decoderImplementation?: string;
+ estimatedPlayoutTimestamp?: DOMHighResTimeStamp;
+ fecPacketsDiscarded?: number;
+ fecPacketsReceived?: number;
+ firCount?: number;
+ frameHeight?: number;
+ frameWidth?: number;
+ framesDecoded?: number;
+ framesDropped?: number;
+ framesPerSecond?: number;
+ framesReceived?: number;
+ headerBytesReceived?: number;
+ insertedSamplesForDeceleration?: number;
+ jitterBufferDelay?: number;
+ jitterBufferEmittedCount?: number;
+ keyFramesDecoded?: number;
+ lastPacketReceivedTimestamp?: DOMHighResTimeStamp;
+ mid?: string;
+ nackCount?: number;
+ packetsDiscarded?: number;
+ pliCount?: number;
+ qpSum?: number;
+ remoteId?: string;
+ removedSamplesForAcceleration?: number;
+ silentConcealedSamples?: number;
+ totalAudioEnergy?: number;
+ totalDecodeTime?: number;
+ totalInterFrameDelay?: number;
+ totalProcessingDelay?: number;
+ totalSamplesDuration?: number;
+ totalSamplesReceived?: number;
+ totalSquaredInterFrameDelay?: number;
+ trackIdentifier: string;
+}
+
+interface RTCLocalSessionDescriptionInit {
+ sdp?: string;
+ type?: RTCSdpType;
+}
+
+interface RTCOfferAnswerOptions {
+}
+
+interface RTCOfferOptions extends RTCOfferAnswerOptions {
+ iceRestart?: boolean;
+ offerToReceiveAudio?: boolean;
+ offerToReceiveVideo?: boolean;
+}
+
+interface RTCOutboundRtpStreamStats extends RTCSentRtpStreamStats {
+ firCount?: number;
+ frameHeight?: number;
+ frameWidth?: number;
+ framesEncoded?: number;
+ framesPerSecond?: number;
+ framesSent?: number;
+ headerBytesSent?: number;
+ hugeFramesSent?: number;
+ keyFramesEncoded?: number;
+ mediaSourceId?: string;
+ nackCount?: number;
+ pliCount?: number;
+ qpSum?: number;
+ qualityLimitationResolutionChanges?: number;
+ remoteId?: string;
+ retransmittedBytesSent?: number;
+ retransmittedPacketsSent?: number;
+ rid?: string;
+ rtxSsrc?: number;
+ targetBitrate?: number;
+ totalEncodeTime?: number;
+ totalEncodedBytesTarget?: number;
+ totalPacketSendDelay?: number;
+}
+
+interface RTCPeerConnectionIceErrorEventInit extends EventInit {
+ address?: string | null;
+ errorCode: number;
+ errorText?: string;
+ port?: number | null;
+ url?: string;
+}
+
+interface RTCPeerConnectionIceEventInit extends EventInit {
+ candidate?: RTCIceCandidate | null;
+ url?: string | null;
+}
+
+interface RTCReceivedRtpStreamStats extends RTCRtpStreamStats {
+ jitter?: number;
+ packetsLost?: number;
+ packetsReceived?: number;
+}
+
+interface RTCRtcpParameters {
+ cname?: string;
+ reducedSize?: boolean;
+}
+
+interface RTCRtpCapabilities {
+ codecs: RTCRtpCodecCapability[];
+ headerExtensions: RTCRtpHeaderExtensionCapability[];
+}
+
+interface RTCRtpCodec {
+ channels?: number;
+ clockRate: number;
+ mimeType: string;
+ sdpFmtpLine?: string;
+}
+
+interface RTCRtpCodecCapability extends RTCRtpCodec {
+}
+
+interface RTCRtpCodecParameters extends RTCRtpCodec {
+ payloadType: number;
+}
+
+interface RTCRtpCodingParameters {
+ rid?: string;
+}
+
+interface RTCRtpContributingSource {
+ audioLevel?: number;
+ rtpTimestamp: number;
+ source: number;
+ timestamp: DOMHighResTimeStamp;
+}
+
+interface RTCRtpEncodingParameters extends RTCRtpCodingParameters {
+ active?: boolean;
+ maxBitrate?: number;
+ maxFramerate?: number;
+ networkPriority?: RTCPriorityType;
+ priority?: RTCPriorityType;
+ scaleResolutionDownBy?: number;
+}
+
+interface RTCRtpHeaderExtensionCapability {
+ uri: string;
+}
+
+interface RTCRtpHeaderExtensionParameters {
+ encrypted?: boolean;
+ id: number;
+ uri: string;
+}
+
+interface RTCRtpParameters {
+ codecs: RTCRtpCodecParameters[];
+ headerExtensions: RTCRtpHeaderExtensionParameters[];
+ rtcp: RTCRtcpParameters;
+}
+
+interface RTCRtpReceiveParameters extends RTCRtpParameters {
+}
+
+interface RTCRtpSendParameters extends RTCRtpParameters {
+ degradationPreference?: RTCDegradationPreference;
+ encodings: RTCRtpEncodingParameters[];
+ transactionId: string;
+}
+
+interface RTCRtpStreamStats extends RTCStats {
+ codecId?: string;
+ kind: string;
+ ssrc: number;
+ transportId?: string;
+}
+
+interface RTCRtpSynchronizationSource extends RTCRtpContributingSource {
+}
+
+interface RTCRtpTransceiverInit {
+ direction?: RTCRtpTransceiverDirection;
+ sendEncodings?: RTCRtpEncodingParameters[];
+ streams?: MediaStream[];
+}
+
+interface RTCSentRtpStreamStats extends RTCRtpStreamStats {
+ bytesSent?: number;
+ packetsSent?: number;
+}
+
+interface RTCSessionDescriptionInit {
+ sdp?: string;
+ type: RTCSdpType;
+}
+
+interface RTCSetParameterOptions {
+}
+
+interface RTCStats {
+ id: string;
+ timestamp: DOMHighResTimeStamp;
+ type: RTCStatsType;
+}
+
+interface RTCTrackEventInit extends EventInit {
+ receiver: RTCRtpReceiver;
+ streams?: MediaStream[];
+ track: MediaStreamTrack;
+ transceiver: RTCRtpTransceiver;
+}
+
+interface RTCTransportStats extends RTCStats {
+ bytesReceived?: number;
+ bytesSent?: number;
+ dtlsCipher?: string;
+ dtlsState: RTCDtlsTransportState;
+ localCertificateId?: string;
+ remoteCertificateId?: string;
+ selectedCandidatePairId?: string;
+ srtpCipher?: string;
+ tlsVersion?: string;
+}
+
+interface ReadableStreamGetReaderOptions {
+ /**
+ * Creates a ReadableStreamBYOBReader and locks the stream to the new reader.
+ *
+ * This call behaves the same way as the no-argument variant, except that it only works on readable byte streams, i.e. streams which were constructed specifically with the ability to handle "bring your own buffer" reading. The returned BYOB reader provides the ability to directly read individual chunks from the stream via its read() method, into developer-supplied buffers, allowing more precise control over allocation.
+ */
+ mode?: ReadableStreamReaderMode;
+}
+
+interface ReadableStreamReadDoneResult<T> {
+ done: true;
+ value?: T;
+}
+
+interface ReadableStreamReadValueResult<T> {
+ done: false;
+ value: T;
+}
+
+interface ReadableWritablePair<R = any, W = any> {
+ readable: ReadableStream<R>;
+ /**
+ * Provides a convenient, chainable way of piping this readable stream through a transform stream (or any other { writable, readable } pair). It simply pipes the stream into the writable side of the supplied pair, and returns the readable side for further use.
+ *
+ * Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
+ */
+ writable: WritableStream<W>;
+}
+
+interface RegistrationOptions {
+ scope?: string;
+ type?: WorkerType;
+ updateViaCache?: ServiceWorkerUpdateViaCache;
+}
+
+interface ReportingObserverOptions {
+ buffered?: boolean;
+ types?: string[];
+}
+
+interface RequestInit {
+ /** A BodyInit object or null to set request's body. */
+ body?: BodyInit | null;
+ /** A string indicating how the request will interact with the browser's cache to set request's cache. */
+ cache?: RequestCache;
+ /** A string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. Sets request's credentials. */
+ credentials?: RequestCredentials;
+ /** A Headers object, an object literal, or an array of two-item arrays to set request's headers. */
+ headers?: HeadersInit;
+ /** A cryptographic hash of the resource to be fetched by request. Sets request's integrity. */
+ integrity?: string;
+ /** A boolean to set request's keepalive. */
+ keepalive?: boolean;
+ /** A string to set request's method. */
+ method?: string;
+ /** A string to indicate whether the request will use CORS, or will be restricted to same-origin URLs. Sets request's mode. */
+ mode?: RequestMode;
+ priority?: RequestPriority;
+ /** A string indicating whether request follows redirects, results in an error upon encountering a redirect, or returns the redirect (in an opaque fashion). Sets request's redirect. */
+ redirect?: RequestRedirect;
+ /** A string whose value is a same-origin URL, "about:client", or the empty string, to set request's referrer. */
+ referrer?: string;
+ /** A referrer policy to set request's referrerPolicy. */
+ referrerPolicy?: ReferrerPolicy;
+ /** An AbortSignal to set request's signal. */
+ signal?: AbortSignal | null;
+ /** Can only be null. Used to disassociate request from any Window. */
+ window?: null;
+}
+
+interface ResizeObserverOptions {
+ box?: ResizeObserverBoxOptions;
+}
+
+interface ResponseInit {
+ headers?: HeadersInit;
+ status?: number;
+ statusText?: string;
+}
+
+interface RsaHashedImportParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+}
+
+interface RsaHashedKeyAlgorithm extends RsaKeyAlgorithm {
+ hash: KeyAlgorithm;
+}
+
+interface RsaHashedKeyGenParams extends RsaKeyGenParams {
+ hash: HashAlgorithmIdentifier;
+}
+
+interface RsaKeyAlgorithm extends KeyAlgorithm {
+ modulusLength: number;
+ publicExponent: BigInteger;
+}
+
+interface RsaKeyGenParams extends Algorithm {
+ modulusLength: number;
+ publicExponent: BigInteger;
+}
+
+interface RsaOaepParams extends Algorithm {
+ label?: BufferSource;
+}
+
+interface RsaOtherPrimesInfo {
+ d?: string;
+ r?: string;
+ t?: string;
+}
+
+interface RsaPssParams extends Algorithm {
+ saltLength: number;
+}
+
+interface SVGBoundingBoxOptions {
+ clipped?: boolean;
+ fill?: boolean;
+ markers?: boolean;
+ stroke?: boolean;
+}
+
+interface ScrollIntoViewOptions extends ScrollOptions {
+ block?: ScrollLogicalPosition;
+ inline?: ScrollLogicalPosition;
+}
+
+interface ScrollOptions {
+ behavior?: ScrollBehavior;
+}
+
+interface ScrollToOptions extends ScrollOptions {
+ left?: number;
+ top?: number;
+}
+
+interface SecurityPolicyViolationEventInit extends EventInit {
+ blockedURI?: string;
+ columnNumber?: number;
+ disposition: SecurityPolicyViolationEventDisposition;
+ documentURI: string;
+ effectiveDirective: string;
+ lineNumber?: number;
+ originalPolicy: string;
+ referrer?: string;
+ sample?: string;
+ sourceFile?: string;
+ statusCode: number;
+ violatedDirective: string;
+}
+
+interface ShadowRootInit {
+ delegatesFocus?: boolean;
+ mode: ShadowRootMode;
+ slotAssignment?: SlotAssignmentMode;
+}
+
+interface ShareData {
+ files?: File[];
+ text?: string;
+ title?: string;
+ url?: string;
+}
+
+interface SpeechSynthesisErrorEventInit extends SpeechSynthesisEventInit {
+ error: SpeechSynthesisErrorCode;
+}
+
+interface SpeechSynthesisEventInit extends EventInit {
+ charIndex?: number;
+ charLength?: number;
+ elapsedTime?: number;
+ name?: string;
+ utterance: SpeechSynthesisUtterance;
+}
+
+interface StaticRangeInit {
+ endContainer: Node;
+ endOffset: number;
+ startContainer: Node;
+ startOffset: number;
+}
+
+interface StereoPannerOptions extends AudioNodeOptions {
+ pan?: number;
+}
+
+interface StorageEstimate {
+ quota?: number;
+ usage?: number;
+}
+
+interface StorageEventInit extends EventInit {
+ key?: string | null;
+ newValue?: string | null;
+ oldValue?: string | null;
+ storageArea?: Storage | null;
+ url?: string;
+}
+
+interface StreamPipeOptions {
+ preventAbort?: boolean;
+ preventCancel?: boolean;
+ /**
+ * Pipes this readable stream to a given writable stream destination. The way in which the piping process behaves under various error conditions can be customized with a number of passed options. It returns a promise that fulfills when the piping process completes successfully, or rejects if any errors were encountered.
+ *
+ * Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
+ *
+ * Errors and closures of the source and destination streams propagate as follows:
+ *
+ * An error in this source readable stream will abort destination, unless preventAbort is truthy. The returned promise will be rejected with the source's error, or with any error that occurs during aborting the destination.
+ *
+ * An error in destination will cancel this source readable stream, unless preventCancel is truthy. The returned promise will be rejected with the destination's error, or with any error that occurs during canceling the source.
+ *
+ * When this source readable stream closes, destination will be closed, unless preventClose is truthy. The returned promise will be fulfilled once this process completes, unless an error is encountered while closing the destination, in which case it will be rejected with that error.
+ *
+ * If destination starts out closed or closing, this source readable stream will be canceled, unless preventCancel is true. The returned promise will be rejected with an error indicating piping to a closed stream failed, or with any error that occurs during canceling the source.
+ *
+ * The signal option can be set to an AbortSignal to allow aborting an ongoing pipe operation via the corresponding AbortController. In this case, this source readable stream will be canceled, and destination aborted, unless the respective options preventCancel or preventAbort are set.
+ */
+ preventClose?: boolean;
+ signal?: AbortSignal;
+}
+
+interface StructuredSerializeOptions {
+ transfer?: Transferable[];
+}
+
+interface SubmitEventInit extends EventInit {
+ submitter?: HTMLElement | null;
+}
+
+interface TextDecodeOptions {
+ stream?: boolean;
+}
+
+interface TextDecoderOptions {
+ fatal?: boolean;
+ ignoreBOM?: boolean;
+}
+
+interface TextEncoderEncodeIntoResult {
+ read: number;
+ written: number;
+}
+
+interface ToggleEventInit extends EventInit {
+ newState?: string;
+ oldState?: string;
+}
+
+interface TouchEventInit extends EventModifierInit {
+ changedTouches?: Touch[];
+ targetTouches?: Touch[];
+ touches?: Touch[];
+}
+
+interface TouchInit {
+ altitudeAngle?: number;
+ azimuthAngle?: number;
+ clientX?: number;
+ clientY?: number;
+ force?: number;
+ identifier: number;
+ pageX?: number;
+ pageY?: number;
+ radiusX?: number;
+ radiusY?: number;
+ rotationAngle?: number;
+ screenX?: number;
+ screenY?: number;
+ target: EventTarget;
+ touchType?: TouchType;
+}
+
+interface TrackEventInit extends EventInit {
+ track?: TextTrack | null;
+}
+
+interface Transformer<I = any, O = any> {
+ flush?: TransformerFlushCallback<O>;
+ readableType?: undefined;
+ start?: TransformerStartCallback<O>;
+ transform?: TransformerTransformCallback<I, O>;
+ writableType?: undefined;
+}
+
+interface TransitionEventInit extends EventInit {
+ elapsedTime?: number;
+ propertyName?: string;
+ pseudoElement?: string;
+}
+
+interface UIEventInit extends EventInit {
+ detail?: number;
+ view?: Window | null;
+ /** @deprecated */
+ which?: number;
+}
+
+interface ULongRange {
+ max?: number;
+ min?: number;
+}
+
+interface UnderlyingByteSource {
+ autoAllocateChunkSize?: number;
+ cancel?: UnderlyingSourceCancelCallback;
+ pull?: (controller: ReadableByteStreamController) => void | PromiseLike<void>;
+ start?: (controller: ReadableByteStreamController) => any;
+ type: "bytes";
+}
+
+interface UnderlyingDefaultSource<R = any> {
+ cancel?: UnderlyingSourceCancelCallback;
+ pull?: (controller: ReadableStreamDefaultController<R>) => void | PromiseLike<void>;
+ start?: (controller: ReadableStreamDefaultController<R>) => any;
+ type?: undefined;
+}
+
+interface UnderlyingSink<W = any> {
+ abort?: UnderlyingSinkAbortCallback;
+ close?: UnderlyingSinkCloseCallback;
+ start?: UnderlyingSinkStartCallback;
+ type?: undefined;
+ write?: UnderlyingSinkWriteCallback<W>;
+}
+
+interface UnderlyingSource<R = any> {
+ autoAllocateChunkSize?: number;
+ cancel?: UnderlyingSourceCancelCallback;
+ pull?: UnderlyingSourcePullCallback<R>;
+ start?: UnderlyingSourceStartCallback<R>;
+ type?: ReadableStreamType;
+}
+
+interface ValidityStateFlags {
+ badInput?: boolean;
+ customError?: boolean;
+ patternMismatch?: boolean;
+ rangeOverflow?: boolean;
+ rangeUnderflow?: boolean;
+ stepMismatch?: boolean;
+ tooLong?: boolean;
+ tooShort?: boolean;
+ typeMismatch?: boolean;
+ valueMissing?: boolean;
+}
+
+interface VideoColorSpaceInit {
+ fullRange?: boolean | null;
+ matrix?: VideoMatrixCoefficients | null;
+ primaries?: VideoColorPrimaries | null;
+ transfer?: VideoTransferCharacteristics | null;
+}
+
+interface VideoConfiguration {
+ bitrate: number;
+ colorGamut?: ColorGamut;
+ contentType: string;
+ framerate: number;
+ hdrMetadataType?: HdrMetadataType;
+ height: number;
+ scalabilityMode?: string;
+ transferFunction?: TransferFunction;
+ width: number;
+}
+
+interface VideoDecoderConfig {
+ codec: string;
+ codedHeight?: number;
+ codedWidth?: number;
+ colorSpace?: VideoColorSpaceInit;
+ description?: AllowSharedBufferSource;
+ displayAspectHeight?: number;
+ displayAspectWidth?: number;
+ hardwareAcceleration?: HardwareAcceleration;
+ optimizeForLatency?: boolean;
+}
+
+interface VideoDecoderInit {
+ error: WebCodecsErrorCallback;
+ output: VideoFrameOutputCallback;
+}
+
+interface VideoDecoderSupport {
+ config?: VideoDecoderConfig;
+ supported?: boolean;
+}
+
+interface VideoEncoderConfig {
+ alpha?: AlphaOption;
+ avc?: AvcEncoderConfig;
+ bitrate?: number;
+ bitrateMode?: VideoEncoderBitrateMode;
+ codec: string;
+ displayHeight?: number;
+ displayWidth?: number;
+ framerate?: number;
+ hardwareAcceleration?: HardwareAcceleration;
+ height: number;
+ latencyMode?: LatencyMode;
+ scalabilityMode?: string;
+ width: number;
+}
+
+interface VideoEncoderEncodeOptions {
+ keyFrame?: boolean;
+}
+
+interface VideoEncoderInit {
+ error: WebCodecsErrorCallback;
+ output: EncodedVideoChunkOutputCallback;
+}
+
+interface VideoEncoderSupport {
+ config?: VideoEncoderConfig;
+ supported?: boolean;
+}
+
+interface VideoFrameBufferInit {
+ codedHeight: number;
+ codedWidth: number;
+ colorSpace?: VideoColorSpaceInit;
+ displayHeight?: number;
+ displayWidth?: number;
+ duration?: number;
+ format: VideoPixelFormat;
+ layout?: PlaneLayout[];
+ timestamp: number;
+ visibleRect?: DOMRectInit;
+}
+
+interface VideoFrameCallbackMetadata {
+ captureTime?: DOMHighResTimeStamp;
+ expectedDisplayTime: DOMHighResTimeStamp;
+ height: number;
+ mediaTime: number;
+ presentationTime: DOMHighResTimeStamp;
+ presentedFrames: number;
+ processingDuration?: number;
+ receiveTime?: DOMHighResTimeStamp;
+ rtpTimestamp?: number;
+ width: number;
+}
+
+interface VideoFrameCopyToOptions {
+ layout?: PlaneLayout[];
+ rect?: DOMRectInit;
+}
+
+interface VideoFrameInit {
+ alpha?: AlphaOption;
+ displayHeight?: number;
+ displayWidth?: number;
+ duration?: number;
+ timestamp?: number;
+ visibleRect?: DOMRectInit;
+}
+
+interface WaveShaperOptions extends AudioNodeOptions {
+ curve?: number[] | Float32Array;
+ oversample?: OverSampleType;
+}
+
+interface WebGLContextAttributes {
+ alpha?: boolean;
+ antialias?: boolean;
+ depth?: boolean;
+ desynchronized?: boolean;
+ failIfMajorPerformanceCaveat?: boolean;
+ powerPreference?: WebGLPowerPreference;
+ premultipliedAlpha?: boolean;
+ preserveDrawingBuffer?: boolean;
+ stencil?: boolean;
+}
+
+interface WebGLContextEventInit extends EventInit {
+ statusMessage?: string;
+}
+
+interface WebTransportCloseInfo {
+ closeCode?: number;
+ reason?: string;
+}
+
+interface WebTransportErrorOptions {
+ source?: WebTransportErrorSource;
+ streamErrorCode?: number | null;
+}
+
+interface WebTransportHash {
+ algorithm?: string;
+ value?: BufferSource;
+}
+
+interface WebTransportOptions {
+ allowPooling?: boolean;
+ congestionControl?: WebTransportCongestionControl;
+ requireUnreliable?: boolean;
+ serverCertificateHashes?: WebTransportHash[];
+}
+
+interface WebTransportSendStreamOptions {
+ sendOrder?: number;
+}
+
+interface WheelEventInit extends MouseEventInit {
+ deltaMode?: number;
+ deltaX?: number;
+ deltaY?: number;
+ deltaZ?: number;
+}
+
+interface WindowPostMessageOptions extends StructuredSerializeOptions {
+ targetOrigin?: string;
+}
+
+interface WorkerOptions {
+ credentials?: RequestCredentials;
+ name?: string;
+ type?: WorkerType;
+}
+
+interface WorkletOptions {
+ credentials?: RequestCredentials;
+}
+
+interface WriteParams {
+ data?: BufferSource | Blob | string | null;
+ position?: number | null;
+ size?: number | null;
+ type: WriteCommandType;
+}
+
+type NodeFilter = ((node: Node) => number) | { acceptNode(node: Node): number; };
+
+declare var NodeFilter: {
+ readonly FILTER_ACCEPT: 1;
+ readonly FILTER_REJECT: 2;
+ readonly FILTER_SKIP: 3;
+ readonly SHOW_ALL: 0xFFFFFFFF;
+ readonly SHOW_ELEMENT: 0x1;
+ readonly SHOW_ATTRIBUTE: 0x2;
+ readonly SHOW_TEXT: 0x4;
+ readonly SHOW_CDATA_SECTION: 0x8;
+ readonly SHOW_ENTITY_REFERENCE: 0x10;
+ readonly SHOW_ENTITY: 0x20;
+ readonly SHOW_PROCESSING_INSTRUCTION: 0x40;
+ readonly SHOW_COMMENT: 0x80;
+ readonly SHOW_DOCUMENT: 0x100;
+ readonly SHOW_DOCUMENT_TYPE: 0x200;
+ readonly SHOW_DOCUMENT_FRAGMENT: 0x400;
+ readonly SHOW_NOTATION: 0x800;
+};
+
+type XPathNSResolver = ((prefix: string | null) => string | null) | { lookupNamespaceURI(prefix: string | null): string | null; };
+
+/**
+ * The ANGLE_instanced_arrays extension is part of the WebGL API and allows to draw the same object, or groups of similar objects multiple times, if they share the same vertex data, primitive count and type.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays)
+ */
+interface ANGLE_instanced_arrays {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/drawArraysInstancedANGLE) */
+ drawArraysInstancedANGLE(mode: GLenum, first: GLint, count: GLsizei, primcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/drawElementsInstancedANGLE) */
+ drawElementsInstancedANGLE(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr, primcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/vertexAttribDivisorANGLE) */
+ vertexAttribDivisorANGLE(index: GLuint, divisor: GLuint): void;
+ readonly VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: 0x88FE;
+}
+
+interface ARIAMixin {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaAtomic) */
+ ariaAtomic: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaAutoComplete) */
+ ariaAutoComplete: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaBusy) */
+ ariaBusy: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaChecked) */
+ ariaChecked: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaColCount) */
+ ariaColCount: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaColIndex) */
+ ariaColIndex: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaColSpan) */
+ ariaColSpan: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaCurrent) */
+ ariaCurrent: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaDescription) */
+ ariaDescription: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaDisabled) */
+ ariaDisabled: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaExpanded) */
+ ariaExpanded: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaHasPopup) */
+ ariaHasPopup: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaHidden) */
+ ariaHidden: string | null;
+ ariaInvalid: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaKeyShortcuts) */
+ ariaKeyShortcuts: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaLabel) */
+ ariaLabel: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaLevel) */
+ ariaLevel: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaLive) */
+ ariaLive: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaModal) */
+ ariaModal: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaMultiLine) */
+ ariaMultiLine: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaMultiSelectable) */
+ ariaMultiSelectable: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaOrientation) */
+ ariaOrientation: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaPlaceholder) */
+ ariaPlaceholder: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaPosInSet) */
+ ariaPosInSet: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaPressed) */
+ ariaPressed: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaReadOnly) */
+ ariaReadOnly: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaRequired) */
+ ariaRequired: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaRoleDescription) */
+ ariaRoleDescription: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaRowCount) */
+ ariaRowCount: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaRowIndex) */
+ ariaRowIndex: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaRowSpan) */
+ ariaRowSpan: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaSelected) */
+ ariaSelected: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaSetSize) */
+ ariaSetSize: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaSort) */
+ ariaSort: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaValueMax) */
+ ariaValueMax: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaValueMin) */
+ ariaValueMin: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaValueNow) */
+ ariaValueNow: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/ariaValueText) */
+ ariaValueText: string | null;
+ role: string | null;
+}
+
+/**
+ * A controller object that allows you to abort one or more DOM requests as and when desired.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController)
+ */
+interface AbortController {
+ /**
+ * Returns the AbortSignal object associated with this object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/signal)
+ */
+ readonly signal: AbortSignal;
+ /**
+ * Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/abort)
+ */
+ abort(reason?: any): void;
+}
+
+declare var AbortController: {
+ prototype: AbortController;
+ new(): AbortController;
+};
+
+interface AbortSignalEventMap {
+ "abort": Event;
+}
+
+/**
+ * A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal)
+ */
+interface AbortSignal extends EventTarget {
+ /**
+ * Returns true if this AbortSignal's AbortController has signaled to abort, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/aborted)
+ */
+ readonly aborted: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_event) */
+ onabort: ((this: AbortSignal, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/reason) */
+ readonly reason: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/throwIfAborted) */
+ throwIfAborted(): void;
+ addEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var AbortSignal: {
+ prototype: AbortSignal;
+ new(): AbortSignal;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_static) */
+ abort(reason?: any): AbortSignal;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/timeout_static) */
+ timeout(milliseconds: number): AbortSignal;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange) */
+interface AbstractRange {
+ /**
+ * Returns true if range is collapsed, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/collapsed)
+ */
+ readonly collapsed: boolean;
+ /**
+ * Returns range's end node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/endContainer)
+ */
+ readonly endContainer: Node;
+ /**
+ * Returns range's end offset.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/endOffset)
+ */
+ readonly endOffset: number;
+ /**
+ * Returns range's start node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/startContainer)
+ */
+ readonly startContainer: Node;
+ /**
+ * Returns range's start offset.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbstractRange/startOffset)
+ */
+ readonly startOffset: number;
+}
+
+declare var AbstractRange: {
+ prototype: AbstractRange;
+ new(): AbstractRange;
+};
+
+interface AbstractWorkerEventMap {
+ "error": ErrorEvent;
+}
+
+interface AbstractWorker {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/error_event) */
+ onerror: ((this: AbstractWorker, ev: ErrorEvent) => any) | null;
+ addEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/**
+ * A node able to provide real-time frequency and time-domain analysis information. It is an AudioNode that passes the audio stream unchanged from the input to the output, but allows you to take the generated data, process it, and create audio visualizations.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode)
+ */
+interface AnalyserNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/fftSize) */
+ fftSize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/frequencyBinCount) */
+ readonly frequencyBinCount: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/maxDecibels) */
+ maxDecibels: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/minDecibels) */
+ minDecibels: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/smoothingTimeConstant) */
+ smoothingTimeConstant: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteFrequencyData) */
+ getByteFrequencyData(array: Uint8Array): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getByteTimeDomainData) */
+ getByteTimeDomainData(array: Uint8Array): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatFrequencyData) */
+ getFloatFrequencyData(array: Float32Array): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnalyserNode/getFloatTimeDomainData) */
+ getFloatTimeDomainData(array: Float32Array): void;
+}
+
+declare var AnalyserNode: {
+ prototype: AnalyserNode;
+ new(context: BaseAudioContext, options?: AnalyserOptions): AnalyserNode;
+};
+
+interface Animatable {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animate) */
+ animate(keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeAnimationOptions): Animation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAnimations) */
+ getAnimations(options?: GetAnimationsOptions): Animation[];
+}
+
+interface AnimationEventMap {
+ "cancel": AnimationPlaybackEvent;
+ "finish": AnimationPlaybackEvent;
+ "remove": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation) */
+interface Animation extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/currentTime) */
+ currentTime: CSSNumberish | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/effect) */
+ effect: AnimationEffect | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/finished) */
+ readonly finished: Promise<Animation>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/id) */
+ id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/cancel_event) */
+ oncancel: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/finish_event) */
+ onfinish: ((this: Animation, ev: AnimationPlaybackEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/remove_event) */
+ onremove: ((this: Animation, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/pending) */
+ readonly pending: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/playState) */
+ readonly playState: AnimationPlayState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/playbackRate) */
+ playbackRate: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/ready) */
+ readonly ready: Promise<Animation>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/replaceState) */
+ readonly replaceState: AnimationReplaceState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/startTime) */
+ startTime: CSSNumberish | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/timeline) */
+ timeline: AnimationTimeline | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/cancel) */
+ cancel(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/commitStyles) */
+ commitStyles(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/finish) */
+ finish(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/pause) */
+ pause(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/persist) */
+ persist(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/play) */
+ play(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/reverse) */
+ reverse(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Animation/updatePlaybackRate) */
+ updatePlaybackRate(playbackRate: number): void;
+ addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: Animation, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Animation: {
+ prototype: Animation;
+ new(effect?: AnimationEffect | null, timeline?: AnimationTimeline | null): Animation;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect) */
+interface AnimationEffect {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getComputedTiming) */
+ getComputedTiming(): ComputedEffectTiming;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect/getTiming) */
+ getTiming(): EffectTiming;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEffect/updateTiming) */
+ updateTiming(timing?: OptionalEffectTiming): void;
+}
+
+declare var AnimationEffect: {
+ prototype: AnimationEffect;
+ new(): AnimationEffect;
+};
+
+/**
+ * Events providing information related to animations.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent)
+ */
+interface AnimationEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent/animationName) */
+ readonly animationName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent/elapsedTime) */
+ readonly elapsedTime: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationEvent/pseudoElement) */
+ readonly pseudoElement: string;
+}
+
+declare var AnimationEvent: {
+ prototype: AnimationEvent;
+ new(type: string, animationEventInitDict?: AnimationEventInit): AnimationEvent;
+};
+
+interface AnimationFrameProvider {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/cancelAnimationFrame) */
+ cancelAnimationFrame(handle: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/requestAnimationFrame) */
+ requestAnimationFrame(callback: FrameRequestCallback): number;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationPlaybackEvent) */
+interface AnimationPlaybackEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationPlaybackEvent/currentTime) */
+ readonly currentTime: CSSNumberish | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationPlaybackEvent/timelineTime) */
+ readonly timelineTime: CSSNumberish | null;
+}
+
+declare var AnimationPlaybackEvent: {
+ prototype: AnimationPlaybackEvent;
+ new(type: string, eventInitDict?: AnimationPlaybackEventInit): AnimationPlaybackEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationTimeline) */
+interface AnimationTimeline {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AnimationTimeline/currentTime) */
+ readonly currentTime: CSSNumberish | null;
+}
+
+declare var AnimationTimeline: {
+ prototype: AnimationTimeline;
+ new(): AnimationTimeline;
+};
+
+/**
+ * A DOM element's attribute as an object. In most DOM methods, you will probably directly retrieve the attribute as a string (e.g., Element.getAttribute(), but certain functions (e.g., Element.getAttributeNode()) or means of iterating give Attr types.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr)
+ */
+interface Attr extends Node {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/localName) */
+ readonly localName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/namespaceURI) */
+ readonly namespaceURI: string | null;
+ readonly ownerDocument: Document;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/ownerElement) */
+ readonly ownerElement: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/prefix) */
+ readonly prefix: string | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/specified)
+ */
+ readonly specified: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Attr/value) */
+ value: string;
+}
+
+declare var Attr: {
+ prototype: Attr;
+ new(): Attr;
+};
+
+/**
+ * A short audio asset residing in memory, created from an audio file using the AudioContext.decodeAudioData() method, or from raw data using AudioContext.createBuffer(). Once put into an AudioBuffer, the audio can then be played by being passed into an AudioBufferSourceNode.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer)
+ */
+interface AudioBuffer {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/duration) */
+ readonly duration: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/numberOfChannels) */
+ readonly numberOfChannels: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/sampleRate) */
+ readonly sampleRate: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/copyFromChannel) */
+ copyFromChannel(destination: Float32Array, channelNumber: number, bufferOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/copyToChannel) */
+ copyToChannel(source: Float32Array, channelNumber: number, bufferOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBuffer/getChannelData) */
+ getChannelData(channel: number): Float32Array;
+}
+
+declare var AudioBuffer: {
+ prototype: AudioBuffer;
+ new(options: AudioBufferOptions): AudioBuffer;
+};
+
+/**
+ * An AudioScheduledSourceNode which represents an audio source consisting of in-memory audio data, stored in an AudioBuffer. It's especially useful for playing back audio which has particularly stringent timing accuracy requirements, such as for sounds that must match a specific rhythm and can be kept in memory rather than being played from disk or the network.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode)
+ */
+interface AudioBufferSourceNode extends AudioScheduledSourceNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/buffer) */
+ buffer: AudioBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/detune) */
+ readonly detune: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/loop) */
+ loop: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/loopEnd) */
+ loopEnd: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/loopStart) */
+ loopStart: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/playbackRate) */
+ readonly playbackRate: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioBufferSourceNode/start) */
+ start(when?: number, offset?: number, duration?: number): void;
+ addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioBufferSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioBufferSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var AudioBufferSourceNode: {
+ prototype: AudioBufferSourceNode;
+ new(context: BaseAudioContext, options?: AudioBufferSourceOptions): AudioBufferSourceNode;
+};
+
+/**
+ * An audio-processing graph built from audio modules linked together, each represented by an AudioNode.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext)
+ */
+interface AudioContext extends BaseAudioContext {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/baseLatency) */
+ readonly baseLatency: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/outputLatency) */
+ readonly outputLatency: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/close) */
+ close(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaElementSource) */
+ createMediaElementSource(mediaElement: HTMLMediaElement): MediaElementAudioSourceNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaStreamDestination) */
+ createMediaStreamDestination(): MediaStreamAudioDestinationNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/createMediaStreamSource) */
+ createMediaStreamSource(mediaStream: MediaStream): MediaStreamAudioSourceNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/getOutputTimestamp) */
+ getOutputTimestamp(): AudioTimestamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/resume) */
+ resume(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioContext/suspend) */
+ suspend(): Promise<void>;
+ addEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: AudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: AudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var AudioContext: {
+ prototype: AudioContext;
+ new(contextOptions?: AudioContextOptions): AudioContext;
+};
+
+/**
+ * AudioDestinationNode has no output (as it is the output, no more AudioNode can be linked after it in the audio graph) and one input. The number of channels in the input must be between 0 and the maxChannelCount value or an exception is raised.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioDestinationNode)
+ */
+interface AudioDestinationNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioDestinationNode/maxChannelCount) */
+ readonly maxChannelCount: number;
+}
+
+declare var AudioDestinationNode: {
+ prototype: AudioDestinationNode;
+ new(): AudioDestinationNode;
+};
+
+/**
+ * The position and orientation of the unique person listening to the audio scene, and is used in audio spatialization. All PannerNodes spatialize in relation to the AudioListener stored in the BaseAudioContext.listener attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener)
+ */
+interface AudioListener {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/forwardX) */
+ readonly forwardX: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/forwardY) */
+ readonly forwardY: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/forwardZ) */
+ readonly forwardZ: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/positionX) */
+ readonly positionX: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/positionY) */
+ readonly positionY: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/positionZ) */
+ readonly positionZ: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/upX) */
+ readonly upX: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/upY) */
+ readonly upY: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/upZ) */
+ readonly upZ: AudioParam;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/setOrientation)
+ */
+ setOrientation(x: number, y: number, z: number, xUp: number, yUp: number, zUp: number): void;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioListener/setPosition)
+ */
+ setPosition(x: number, y: number, z: number): void;
+}
+
+declare var AudioListener: {
+ prototype: AudioListener;
+ new(): AudioListener;
+};
+
+/**
+ * A generic interface for representing an audio processing module. Examples include:
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode)
+ */
+interface AudioNode extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/channelCount) */
+ channelCount: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/channelCountMode) */
+ channelCountMode: ChannelCountMode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/channelInterpretation) */
+ channelInterpretation: ChannelInterpretation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/context) */
+ readonly context: BaseAudioContext;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/numberOfInputs) */
+ readonly numberOfInputs: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/numberOfOutputs) */
+ readonly numberOfOutputs: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/connect) */
+ connect(destinationNode: AudioNode, output?: number, input?: number): AudioNode;
+ connect(destinationParam: AudioParam, output?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioNode/disconnect) */
+ disconnect(): void;
+ disconnect(output: number): void;
+ disconnect(destinationNode: AudioNode): void;
+ disconnect(destinationNode: AudioNode, output: number): void;
+ disconnect(destinationNode: AudioNode, output: number, input: number): void;
+ disconnect(destinationParam: AudioParam): void;
+ disconnect(destinationParam: AudioParam, output: number): void;
+}
+
+declare var AudioNode: {
+ prototype: AudioNode;
+ new(): AudioNode;
+};
+
+/**
+ * The Web Audio API's AudioParam interface represents an audio-related parameter, usually a parameter of an AudioNode (such as GainNode.gain).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam)
+ */
+interface AudioParam {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/automationRate) */
+ automationRate: AutomationRate;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/defaultValue) */
+ readonly defaultValue: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/maxValue) */
+ readonly maxValue: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/minValue) */
+ readonly minValue: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/value) */
+ value: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/cancelAndHoldAtTime) */
+ cancelAndHoldAtTime(cancelTime: number): AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/cancelScheduledValues) */
+ cancelScheduledValues(cancelTime: number): AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/exponentialRampToValueAtTime) */
+ exponentialRampToValueAtTime(value: number, endTime: number): AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/linearRampToValueAtTime) */
+ linearRampToValueAtTime(value: number, endTime: number): AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setTargetAtTime) */
+ setTargetAtTime(target: number, startTime: number, timeConstant: number): AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueAtTime) */
+ setValueAtTime(value: number, startTime: number): AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueCurveAtTime) */
+ setValueCurveAtTime(values: number[] | Float32Array, startTime: number, duration: number): AudioParam;
+}
+
+declare var AudioParam: {
+ prototype: AudioParam;
+ new(): AudioParam;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParamMap) */
+interface AudioParamMap {
+ forEach(callbackfn: (value: AudioParam, key: string, parent: AudioParamMap) => void, thisArg?: any): void;
+}
+
+declare var AudioParamMap: {
+ prototype: AudioParamMap;
+ new(): AudioParamMap;
+};
+
+/**
+ * The Web Audio API events that occur when a ScriptProcessorNode input buffer is ready to be processed.
+ * @deprecated As of the August 29 2014 Web Audio API spec publication, this feature has been marked as deprecated, and is soon to be replaced by AudioWorklet.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent)
+ */
+interface AudioProcessingEvent extends Event {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent/inputBuffer)
+ */
+ readonly inputBuffer: AudioBuffer;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent/outputBuffer)
+ */
+ readonly outputBuffer: AudioBuffer;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioProcessingEvent/playbackTime)
+ */
+ readonly playbackTime: number;
+}
+
+/** @deprecated */
+declare var AudioProcessingEvent: {
+ prototype: AudioProcessingEvent;
+ new(type: string, eventInitDict: AudioProcessingEventInit): AudioProcessingEvent;
+};
+
+interface AudioScheduledSourceNodeEventMap {
+ "ended": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode) */
+interface AudioScheduledSourceNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode/ended_event) */
+ onended: ((this: AudioScheduledSourceNode, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode/start) */
+ start(when?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioScheduledSourceNode/stop) */
+ stop(when?: number): void;
+ addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioScheduledSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: AudioScheduledSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var AudioScheduledSourceNode: {
+ prototype: AudioScheduledSourceNode;
+ new(): AudioScheduledSourceNode;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorklet)
+ */
+interface AudioWorklet extends Worklet {
+}
+
+declare var AudioWorklet: {
+ prototype: AudioWorklet;
+ new(): AudioWorklet;
+};
+
+interface AudioWorkletNodeEventMap {
+ "processorerror": Event;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode)
+ */
+interface AudioWorkletNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode/processorerror_event) */
+ onprocessorerror: ((this: AudioWorkletNode, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode/parameters) */
+ readonly parameters: AudioParamMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioWorkletNode/port) */
+ readonly port: MessagePort;
+ addEventListener<K extends keyof AudioWorkletNodeEventMap>(type: K, listener: (this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AudioWorkletNodeEventMap>(type: K, listener: (this: AudioWorkletNode, ev: AudioWorkletNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var AudioWorkletNode: {
+ prototype: AudioWorkletNode;
+ new(context: BaseAudioContext, name: string, options?: AudioWorkletNodeOptions): AudioWorkletNode;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse)
+ */
+interface AuthenticatorAssertionResponse extends AuthenticatorResponse {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse/authenticatorData) */
+ readonly authenticatorData: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse/signature) */
+ readonly signature: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAssertionResponse/userHandle) */
+ readonly userHandle: ArrayBuffer | null;
+}
+
+declare var AuthenticatorAssertionResponse: {
+ prototype: AuthenticatorAssertionResponse;
+ new(): AuthenticatorAssertionResponse;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse)
+ */
+interface AuthenticatorAttestationResponse extends AuthenticatorResponse {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/attestationObject) */
+ readonly attestationObject: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getAuthenticatorData) */
+ getAuthenticatorData(): ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getPublicKey) */
+ getPublicKey(): ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getPublicKeyAlgorithm) */
+ getPublicKeyAlgorithm(): COSEAlgorithmIdentifier;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorAttestationResponse/getTransports) */
+ getTransports(): string[];
+}
+
+declare var AuthenticatorAttestationResponse: {
+ prototype: AuthenticatorAttestationResponse;
+ new(): AuthenticatorAttestationResponse;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorResponse)
+ */
+interface AuthenticatorResponse {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AuthenticatorResponse/clientDataJSON) */
+ readonly clientDataJSON: ArrayBuffer;
+}
+
+declare var AuthenticatorResponse: {
+ prototype: AuthenticatorResponse;
+ new(): AuthenticatorResponse;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BarProp) */
+interface BarProp {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BarProp/visible) */
+ readonly visible: boolean;
+}
+
+declare var BarProp: {
+ prototype: BarProp;
+ new(): BarProp;
+};
+
+interface BaseAudioContextEventMap {
+ "statechange": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext) */
+interface BaseAudioContext extends EventTarget {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/audioWorklet)
+ */
+ readonly audioWorklet: AudioWorklet;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/currentTime) */
+ readonly currentTime: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/destination) */
+ readonly destination: AudioDestinationNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/listener) */
+ readonly listener: AudioListener;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/statechange_event) */
+ onstatechange: ((this: BaseAudioContext, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/sampleRate) */
+ readonly sampleRate: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/state) */
+ readonly state: AudioContextState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createAnalyser) */
+ createAnalyser(): AnalyserNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBiquadFilter) */
+ createBiquadFilter(): BiquadFilterNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBuffer) */
+ createBuffer(numberOfChannels: number, length: number, sampleRate: number): AudioBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createBufferSource) */
+ createBufferSource(): AudioBufferSourceNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createChannelMerger) */
+ createChannelMerger(numberOfInputs?: number): ChannelMergerNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createChannelSplitter) */
+ createChannelSplitter(numberOfOutputs?: number): ChannelSplitterNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createConstantSource) */
+ createConstantSource(): ConstantSourceNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createConvolver) */
+ createConvolver(): ConvolverNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createDelay) */
+ createDelay(maxDelayTime?: number): DelayNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createDynamicsCompressor) */
+ createDynamicsCompressor(): DynamicsCompressorNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createGain) */
+ createGain(): GainNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createIIRFilter) */
+ createIIRFilter(feedforward: number[], feedback: number[]): IIRFilterNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createOscillator) */
+ createOscillator(): OscillatorNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPanner) */
+ createPanner(): PannerNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPeriodicWave) */
+ createPeriodicWave(real: number[] | Float32Array, imag: number[] | Float32Array, constraints?: PeriodicWaveConstraints): PeriodicWave;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createScriptProcessor)
+ */
+ createScriptProcessor(bufferSize?: number, numberOfInputChannels?: number, numberOfOutputChannels?: number): ScriptProcessorNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createStereoPanner) */
+ createStereoPanner(): StereoPannerNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createWaveShaper) */
+ createWaveShaper(): WaveShaperNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/decodeAudioData) */
+ decodeAudioData(audioData: ArrayBuffer, successCallback?: DecodeSuccessCallback | null, errorCallback?: DecodeErrorCallback | null): Promise<AudioBuffer>;
+ addEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: BaseAudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof BaseAudioContextEventMap>(type: K, listener: (this: BaseAudioContext, ev: BaseAudioContextEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var BaseAudioContext: {
+ prototype: BaseAudioContext;
+ new(): BaseAudioContext;
+};
+
+/**
+ * The beforeunload event is fired when the window, the document and its resources are about to be unloaded.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BeforeUnloadEvent)
+ */
+interface BeforeUnloadEvent extends Event {
+ /** @deprecated */
+ returnValue: any;
+}
+
+declare var BeforeUnloadEvent: {
+ prototype: BeforeUnloadEvent;
+ new(): BeforeUnloadEvent;
+};
+
+/**
+ * A simple low-order filter, and is created using the AudioContext.createBiquadFilter() method. It is an AudioNode that can represent different kinds of filters, tone control devices, and graphic equalizers.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode)
+ */
+interface BiquadFilterNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/Q) */
+ readonly Q: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/detune) */
+ readonly detune: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/frequency) */
+ readonly frequency: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/gain) */
+ readonly gain: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/type) */
+ type: BiquadFilterType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BiquadFilterNode/getFrequencyResponse) */
+ getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array): void;
+}
+
+declare var BiquadFilterNode: {
+ prototype: BiquadFilterNode;
+ new(context: BaseAudioContext, options?: BiquadFilterOptions): BiquadFilterNode;
+};
+
+/**
+ * A file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The File interface is based on Blob, inheriting blob functionality and expanding it to support files on the user's system.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob)
+ */
+interface Blob {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/size) */
+ readonly size: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/type) */
+ readonly type: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/arrayBuffer) */
+ arrayBuffer(): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/slice) */
+ slice(start?: number, end?: number, contentType?: string): Blob;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/stream) */
+ stream(): ReadableStream<Uint8Array>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/text) */
+ text(): Promise<string>;
+}
+
+declare var Blob: {
+ prototype: Blob;
+ new(blobParts?: BlobPart[], options?: BlobPropertyBag): Blob;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BlobEvent) */
+interface BlobEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BlobEvent/data) */
+ readonly data: Blob;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BlobEvent/timecode) */
+ readonly timecode: DOMHighResTimeStamp;
+}
+
+declare var BlobEvent: {
+ prototype: BlobEvent;
+ new(type: string, eventInitDict: BlobEventInit): BlobEvent;
+};
+
+interface Body {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/body) */
+ readonly body: ReadableStream<Uint8Array> | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed) */
+ readonly bodyUsed: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer) */
+ arrayBuffer(): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/blob) */
+ blob(): Promise<Blob>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/formData) */
+ formData(): Promise<FormData>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/json) */
+ json(): Promise<any>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/text) */
+ text(): Promise<string>;
+}
+
+interface BroadcastChannelEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel) */
+interface BroadcastChannel extends EventTarget {
+ /**
+ * Returns the channel name (as passed to the constructor).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/name)
+ */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/message_event) */
+ onmessage: ((this: BroadcastChannel, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/messageerror_event) */
+ onmessageerror: ((this: BroadcastChannel, ev: MessageEvent) => any) | null;
+ /**
+ * Closes the BroadcastChannel object, opening it up to garbage collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/close)
+ */
+ close(): void;
+ /**
+ * Sends the given message to other BroadcastChannel objects set up for this channel. Messages can be structured objects, e.g. nested objects and arrays.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/postMessage)
+ */
+ postMessage(message: any): void;
+ addEventListener<K extends keyof BroadcastChannelEventMap>(type: K, listener: (this: BroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof BroadcastChannelEventMap>(type: K, listener: (this: BroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var BroadcastChannel: {
+ prototype: BroadcastChannel;
+ new(name: string): BroadcastChannel;
+};
+
+/**
+ * This Streams API interface provides a built-in byte length queuing strategy that can be used when constructing streams.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy)
+ */
+interface ByteLengthQueuingStrategy extends QueuingStrategy<ArrayBufferView> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/highWaterMark) */
+ readonly highWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/size) */
+ readonly size: QueuingStrategySize<ArrayBufferView>;
+}
+
+declare var ByteLengthQueuingStrategy: {
+ prototype: ByteLengthQueuingStrategy;
+ new(init: QueuingStrategyInit): ByteLengthQueuingStrategy;
+};
+
+/**
+ * A CDATA section that can be used within XML to include extended portions of unescaped text. The symbols < and & don’t need escaping as they normally do when inside a CDATA section.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CDATASection)
+ */
+interface CDATASection extends Text {
+}
+
+declare var CDATASection: {
+ prototype: CDATASection;
+ new(): CDATASection;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSAnimation) */
+interface CSSAnimation extends Animation {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSAnimation/animationName) */
+ readonly animationName: string;
+ addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSAnimation, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSAnimation, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var CSSAnimation: {
+ prototype: CSSAnimation;
+ new(): CSSAnimation;
+};
+
+/**
+ * A single condition CSS at-rule, which consists of a condition and a statement block. It is a child of CSSGroupingRule.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSConditionRule)
+ */
+interface CSSConditionRule extends CSSGroupingRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSConditionRule/conditionText) */
+ readonly conditionText: string;
+}
+
+declare var CSSConditionRule: {
+ prototype: CSSConditionRule;
+ new(): CSSConditionRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSContainerRule) */
+interface CSSContainerRule extends CSSConditionRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSContainerRule/containerName) */
+ readonly containerName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSContainerRule/containerQuery) */
+ readonly containerQuery: string;
+}
+
+declare var CSSContainerRule: {
+ prototype: CSSContainerRule;
+ new(): CSSContainerRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule) */
+interface CSSCounterStyleRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/additiveSymbols) */
+ additiveSymbols: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/fallback) */
+ fallback: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/name) */
+ name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/negative) */
+ negative: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/pad) */
+ pad: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/prefix) */
+ prefix: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/range) */
+ range: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/speakAs) */
+ speakAs: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/suffix) */
+ suffix: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/symbols) */
+ symbols: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSCounterStyleRule/system) */
+ system: string;
+}
+
+declare var CSSCounterStyleRule: {
+ prototype: CSSCounterStyleRule;
+ new(): CSSCounterStyleRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFaceRule) */
+interface CSSFontFaceRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFaceRule/style) */
+ readonly style: CSSStyleDeclaration;
+}
+
+declare var CSSFontFaceRule: {
+ prototype: CSSFontFaceRule;
+ new(): CSSFontFaceRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFeatureValuesRule) */
+interface CSSFontFeatureValuesRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontFeatureValuesRule/fontFamily) */
+ fontFamily: string;
+}
+
+declare var CSSFontFeatureValuesRule: {
+ prototype: CSSFontFeatureValuesRule;
+ new(): CSSFontFeatureValuesRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule) */
+interface CSSFontPaletteValuesRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/basePalette) */
+ readonly basePalette: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/fontFamily) */
+ readonly fontFamily: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSFontPaletteValuesRule/overrideColors) */
+ readonly overrideColors: string;
+}
+
+declare var CSSFontPaletteValuesRule: {
+ prototype: CSSFontPaletteValuesRule;
+ new(): CSSFontPaletteValuesRule;
+};
+
+/**
+ * Any CSS at-rule that contains other rules nested within it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule)
+ */
+interface CSSGroupingRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule/cssRules) */
+ readonly cssRules: CSSRuleList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule/deleteRule) */
+ deleteRule(index: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSGroupingRule/insertRule) */
+ insertRule(rule: string, index?: number): number;
+}
+
+declare var CSSGroupingRule: {
+ prototype: CSSGroupingRule;
+ new(): CSSGroupingRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImageValue) */
+interface CSSImageValue extends CSSStyleValue {
+}
+
+declare var CSSImageValue: {
+ prototype: CSSImageValue;
+ new(): CSSImageValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule) */
+interface CSSImportRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/href) */
+ readonly href: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/layerName) */
+ readonly layerName: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/media) */
+ readonly media: MediaList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/styleSheet) */
+ readonly styleSheet: CSSStyleSheet | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImportRule/supportsText) */
+ readonly supportsText: string | null;
+}
+
+declare var CSSImportRule: {
+ prototype: CSSImportRule;
+ new(): CSSImportRule;
+};
+
+/**
+ * An object representing a set of style for a given keyframe. It corresponds to the contains of a single keyframe of a @keyframes at-rule. It implements the CSSRule interface with a type value of 8 (CSSRule.KEYFRAME_RULE).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframeRule)
+ */
+interface CSSKeyframeRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframeRule/keyText) */
+ keyText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframeRule/style) */
+ readonly style: CSSStyleDeclaration;
+}
+
+declare var CSSKeyframeRule: {
+ prototype: CSSKeyframeRule;
+ new(): CSSKeyframeRule;
+};
+
+/**
+ * An object representing a complete set of keyframes for a CSS animation. It corresponds to the contains of a whole @keyframes at-rule. It implements the CSSRule interface with a type value of 7 (CSSRule.KEYFRAMES_RULE).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule)
+ */
+interface CSSKeyframesRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/cssRules) */
+ readonly cssRules: CSSRuleList;
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/name) */
+ name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/appendRule) */
+ appendRule(rule: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/deleteRule) */
+ deleteRule(select: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeyframesRule/findRule) */
+ findRule(select: string): CSSKeyframeRule | null;
+ [index: number]: CSSKeyframeRule;
+}
+
+declare var CSSKeyframesRule: {
+ prototype: CSSKeyframesRule;
+ new(): CSSKeyframesRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeywordValue) */
+interface CSSKeywordValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeywordValue/value) */
+ value: string;
+}
+
+declare var CSSKeywordValue: {
+ prototype: CSSKeywordValue;
+ new(value: string): CSSKeywordValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerBlockRule) */
+interface CSSLayerBlockRule extends CSSGroupingRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerBlockRule/name) */
+ readonly name: string;
+}
+
+declare var CSSLayerBlockRule: {
+ prototype: CSSLayerBlockRule;
+ new(): CSSLayerBlockRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerStatementRule) */
+interface CSSLayerStatementRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSLayerStatementRule/nameList) */
+ readonly nameList: ReadonlyArray<string>;
+}
+
+declare var CSSLayerStatementRule: {
+ prototype: CSSLayerStatementRule;
+ new(): CSSLayerStatementRule;
+};
+
+interface CSSMathClamp extends CSSMathValue {
+ readonly lower: CSSNumericValue;
+ readonly upper: CSSNumericValue;
+ readonly value: CSSNumericValue;
+}
+
+declare var CSSMathClamp: {
+ prototype: CSSMathClamp;
+ new(lower: CSSNumberish, value: CSSNumberish, upper: CSSNumberish): CSSMathClamp;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathInvert) */
+interface CSSMathInvert extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathInvert/value) */
+ readonly value: CSSNumericValue;
+}
+
+declare var CSSMathInvert: {
+ prototype: CSSMathInvert;
+ new(arg: CSSNumberish): CSSMathInvert;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMax) */
+interface CSSMathMax extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMax/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathMax: {
+ prototype: CSSMathMax;
+ new(...args: CSSNumberish[]): CSSMathMax;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMin) */
+interface CSSMathMin extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMin/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathMin: {
+ prototype: CSSMathMin;
+ new(...args: CSSNumberish[]): CSSMathMin;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathNegate) */
+interface CSSMathNegate extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathNegate/value) */
+ readonly value: CSSNumericValue;
+}
+
+declare var CSSMathNegate: {
+ prototype: CSSMathNegate;
+ new(arg: CSSNumberish): CSSMathNegate;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathProduct) */
+interface CSSMathProduct extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathProduct/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathProduct: {
+ prototype: CSSMathProduct;
+ new(...args: CSSNumberish[]): CSSMathProduct;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathSum) */
+interface CSSMathSum extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathSum/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathSum: {
+ prototype: CSSMathSum;
+ new(...args: CSSNumberish[]): CSSMathSum;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathValue) */
+interface CSSMathValue extends CSSNumericValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathValue/operator) */
+ readonly operator: CSSMathOperator;
+}
+
+declare var CSSMathValue: {
+ prototype: CSSMathValue;
+ new(): CSSMathValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMatrixComponent) */
+interface CSSMatrixComponent extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMatrixComponent/matrix) */
+ matrix: DOMMatrix;
+}
+
+declare var CSSMatrixComponent: {
+ prototype: CSSMatrixComponent;
+ new(matrix: DOMMatrixReadOnly, options?: CSSMatrixComponentOptions): CSSMatrixComponent;
+};
+
+/**
+ * A single CSS @media rule. It implements the CSSConditionRule interface, and therefore the CSSGroupingRule and the CSSRule interface with a type value of 4 (CSSRule.MEDIA_RULE).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMediaRule)
+ */
+interface CSSMediaRule extends CSSConditionRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMediaRule/media) */
+ readonly media: MediaList;
+}
+
+declare var CSSMediaRule: {
+ prototype: CSSMediaRule;
+ new(): CSSMediaRule;
+};
+
+/**
+ * An object representing a single CSS @namespace at-rule. It implements the CSSRule interface, with a type value of 10 (CSSRule.NAMESPACE_RULE).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNamespaceRule)
+ */
+interface CSSNamespaceRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNamespaceRule/namespaceURI) */
+ readonly namespaceURI: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNamespaceRule/prefix) */
+ readonly prefix: string;
+}
+
+declare var CSSNamespaceRule: {
+ prototype: CSSNamespaceRule;
+ new(): CSSNamespaceRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericArray) */
+interface CSSNumericArray {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericArray/length) */
+ readonly length: number;
+ forEach(callbackfn: (value: CSSNumericValue, key: number, parent: CSSNumericArray) => void, thisArg?: any): void;
+ [index: number]: CSSNumericValue;
+}
+
+declare var CSSNumericArray: {
+ prototype: CSSNumericArray;
+ new(): CSSNumericArray;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue) */
+interface CSSNumericValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/add) */
+ add(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/div) */
+ div(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/equals) */
+ equals(...value: CSSNumberish[]): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/max) */
+ max(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/min) */
+ min(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/mul) */
+ mul(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/sub) */
+ sub(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/to) */
+ to(unit: string): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/toSum) */
+ toSum(...units: string[]): CSSMathSum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/type) */
+ type(): CSSNumericType;
+}
+
+declare var CSSNumericValue: {
+ prototype: CSSNumericValue;
+ new(): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/parse_static) */
+ parse(cssText: string): CSSNumericValue;
+};
+
+/**
+ * CSSPageRule is an interface representing a single CSS @page rule. It implements the CSSRule interface with a type value of 6 (CSSRule.PAGE_RULE).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPageRule)
+ */
+interface CSSPageRule extends CSSGroupingRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPageRule/selectorText) */
+ selectorText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPageRule/style) */
+ readonly style: CSSStyleDeclaration;
+}
+
+declare var CSSPageRule: {
+ prototype: CSSPageRule;
+ new(): CSSPageRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPerspective) */
+interface CSSPerspective extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPerspective/length) */
+ length: CSSPerspectiveValue;
+}
+
+declare var CSSPerspective: {
+ prototype: CSSPerspective;
+ new(length: CSSPerspectiveValue): CSSPerspective;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule) */
+interface CSSPropertyRule extends CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/inherits) */
+ readonly inherits: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/initialValue) */
+ readonly initialValue: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPropertyRule/syntax) */
+ readonly syntax: string;
+}
+
+declare var CSSPropertyRule: {
+ prototype: CSSPropertyRule;
+ new(): CSSPropertyRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate) */
+interface CSSRotate extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/angle) */
+ angle: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/x) */
+ x: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/y) */
+ y: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/z) */
+ z: CSSNumberish;
+}
+
+declare var CSSRotate: {
+ prototype: CSSRotate;
+ new(angle: CSSNumericValue): CSSRotate;
+ new(x: CSSNumberish, y: CSSNumberish, z: CSSNumberish, angle: CSSNumericValue): CSSRotate;
+};
+
+/**
+ * A single CSS rule. There are several types of rules, listed in the Type constants section below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule)
+ */
+interface CSSRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/cssText) */
+ cssText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/parentRule) */
+ readonly parentRule: CSSRule | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/parentStyleSheet) */
+ readonly parentStyleSheet: CSSStyleSheet | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRule/type)
+ */
+ readonly type: number;
+ readonly STYLE_RULE: 1;
+ readonly CHARSET_RULE: 2;
+ readonly IMPORT_RULE: 3;
+ readonly MEDIA_RULE: 4;
+ readonly FONT_FACE_RULE: 5;
+ readonly PAGE_RULE: 6;
+ readonly NAMESPACE_RULE: 10;
+ readonly KEYFRAMES_RULE: 7;
+ readonly KEYFRAME_RULE: 8;
+ readonly SUPPORTS_RULE: 12;
+ readonly COUNTER_STYLE_RULE: 11;
+ readonly FONT_FEATURE_VALUES_RULE: 14;
+}
+
+declare var CSSRule: {
+ prototype: CSSRule;
+ new(): CSSRule;
+ readonly STYLE_RULE: 1;
+ readonly CHARSET_RULE: 2;
+ readonly IMPORT_RULE: 3;
+ readonly MEDIA_RULE: 4;
+ readonly FONT_FACE_RULE: 5;
+ readonly PAGE_RULE: 6;
+ readonly NAMESPACE_RULE: 10;
+ readonly KEYFRAMES_RULE: 7;
+ readonly KEYFRAME_RULE: 8;
+ readonly SUPPORTS_RULE: 12;
+ readonly COUNTER_STYLE_RULE: 11;
+ readonly FONT_FEATURE_VALUES_RULE: 14;
+};
+
+/**
+ * A CSSRuleList is an (indirect-modify only) array-like object containing an ordered collection of CSSRule objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRuleList)
+ */
+interface CSSRuleList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRuleList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRuleList/item) */
+ item(index: number): CSSRule | null;
+ [index: number]: CSSRule;
+}
+
+declare var CSSRuleList: {
+ prototype: CSSRuleList;
+ new(): CSSRuleList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale) */
+interface CSSScale extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale/x) */
+ x: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale/y) */
+ y: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale/z) */
+ z: CSSNumberish;
+}
+
+declare var CSSScale: {
+ prototype: CSSScale;
+ new(x: CSSNumberish, y: CSSNumberish, z?: CSSNumberish): CSSScale;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkew) */
+interface CSSSkew extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkew/ax) */
+ ax: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkew/ay) */
+ ay: CSSNumericValue;
+}
+
+declare var CSSSkew: {
+ prototype: CSSSkew;
+ new(ax: CSSNumericValue, ay: CSSNumericValue): CSSSkew;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewX) */
+interface CSSSkewX extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewX/ax) */
+ ax: CSSNumericValue;
+}
+
+declare var CSSSkewX: {
+ prototype: CSSSkewX;
+ new(ax: CSSNumericValue): CSSSkewX;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewY) */
+interface CSSSkewY extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewY/ay) */
+ ay: CSSNumericValue;
+}
+
+declare var CSSSkewY: {
+ prototype: CSSSkewY;
+ new(ay: CSSNumericValue): CSSSkewY;
+};
+
+/**
+ * An object that is a CSS declaration block, and exposes style information and various style-related methods and properties.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration)
+ */
+interface CSSStyleDeclaration {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/accent-color) */
+ accentColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-content) */
+ alignContent: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-items) */
+ alignItems: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-self) */
+ alignSelf: string;
+ alignmentBaseline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/all) */
+ all: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation) */
+ animation: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-composition) */
+ animationComposition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-delay) */
+ animationDelay: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-direction) */
+ animationDirection: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-duration) */
+ animationDuration: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-fill-mode) */
+ animationFillMode: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-iteration-count) */
+ animationIterationCount: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-name) */
+ animationName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-play-state) */
+ animationPlayState: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-timing-function) */
+ animationTimingFunction: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/appearance) */
+ appearance: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/aspect-ratio) */
+ aspectRatio: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/backdrop-filter) */
+ backdropFilter: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/backface-visibility) */
+ backfaceVisibility: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background) */
+ background: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-attachment) */
+ backgroundAttachment: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-blend-mode) */
+ backgroundBlendMode: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-clip) */
+ backgroundClip: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-color) */
+ backgroundColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-image) */
+ backgroundImage: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-origin) */
+ backgroundOrigin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-position) */
+ backgroundPosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-position-x) */
+ backgroundPositionX: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-position-y) */
+ backgroundPositionY: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-repeat) */
+ backgroundRepeat: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-size) */
+ backgroundSize: string;
+ baselineShift: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/baseline-source) */
+ baselineSource: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/block-size) */
+ blockSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border) */
+ border: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block) */
+ borderBlock: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-color) */
+ borderBlockColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end) */
+ borderBlockEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end-color) */
+ borderBlockEndColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end-style) */
+ borderBlockEndStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-end-width) */
+ borderBlockEndWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start) */
+ borderBlockStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start-color) */
+ borderBlockStartColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start-style) */
+ borderBlockStartStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-start-width) */
+ borderBlockStartWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-style) */
+ borderBlockStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-block-width) */
+ borderBlockWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom) */
+ borderBottom: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-color) */
+ borderBottomColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-left-radius) */
+ borderBottomLeftRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-right-radius) */
+ borderBottomRightRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-style) */
+ borderBottomStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-width) */
+ borderBottomWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-collapse) */
+ borderCollapse: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-color) */
+ borderColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-end-end-radius) */
+ borderEndEndRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-end-start-radius) */
+ borderEndStartRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image) */
+ borderImage: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-outset) */
+ borderImageOutset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-repeat) */
+ borderImageRepeat: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-slice) */
+ borderImageSlice: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-source) */
+ borderImageSource: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-image-width) */
+ borderImageWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline) */
+ borderInline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-color) */
+ borderInlineColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end) */
+ borderInlineEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end-color) */
+ borderInlineEndColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end-style) */
+ borderInlineEndStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-end-width) */
+ borderInlineEndWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start) */
+ borderInlineStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start-color) */
+ borderInlineStartColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start-style) */
+ borderInlineStartStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-start-width) */
+ borderInlineStartWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-style) */
+ borderInlineStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-inline-width) */
+ borderInlineWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left) */
+ borderLeft: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left-color) */
+ borderLeftColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left-style) */
+ borderLeftStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-left-width) */
+ borderLeftWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-radius) */
+ borderRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right) */
+ borderRight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right-color) */
+ borderRightColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right-style) */
+ borderRightStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-right-width) */
+ borderRightWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-spacing) */
+ borderSpacing: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-start-end-radius) */
+ borderStartEndRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-start-start-radius) */
+ borderStartStartRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-style) */
+ borderStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top) */
+ borderTop: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-color) */
+ borderTopColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-left-radius) */
+ borderTopLeftRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-right-radius) */
+ borderTopRightRadius: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-style) */
+ borderTopStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-width) */
+ borderTopWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-width) */
+ borderWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/bottom) */
+ bottom: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-shadow) */
+ boxShadow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-sizing) */
+ boxSizing: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/break-after) */
+ breakAfter: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/break-before) */
+ breakBefore: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/break-inside) */
+ breakInside: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/caption-side) */
+ captionSide: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/caret-color) */
+ caretColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/clear) */
+ clear: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/clip)
+ */
+ clip: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/clip-path) */
+ clipPath: string;
+ clipRule: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/color) */
+ color: string;
+ colorInterpolation: string;
+ colorInterpolationFilters: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/color-scheme) */
+ colorScheme: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-count) */
+ columnCount: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-fill) */
+ columnFill: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-gap) */
+ columnGap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule) */
+ columnRule: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule-color) */
+ columnRuleColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule-style) */
+ columnRuleStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-rule-width) */
+ columnRuleWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-span) */
+ columnSpan: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/column-width) */
+ columnWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/columns) */
+ columns: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain) */
+ contain: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-contain-intrinsic-block-size) */
+ containIntrinsicBlockSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-height) */
+ containIntrinsicHeight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-contain-intrinsic-inline-size) */
+ containIntrinsicInlineSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-size) */
+ containIntrinsicSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/contain-intrinsic-width) */
+ containIntrinsicWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/container) */
+ container: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/container-name) */
+ containerName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/container-type) */
+ containerType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/content) */
+ content: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/counter-increment) */
+ counterIncrement: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/counter-reset) */
+ counterReset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/counter-set) */
+ counterSet: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/cssFloat) */
+ cssFloat: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/cssText) */
+ cssText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/cursor) */
+ cursor: string;
+ cx: string;
+ cy: string;
+ d: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/direction) */
+ direction: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/display) */
+ display: string;
+ dominantBaseline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/empty-cells) */
+ emptyCells: string;
+ fill: string;
+ fillOpacity: string;
+ fillRule: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/filter) */
+ filter: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex) */
+ flex: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-basis) */
+ flexBasis: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-direction) */
+ flexDirection: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-flow) */
+ flexFlow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-grow) */
+ flexGrow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-shrink) */
+ flexShrink: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-wrap) */
+ flexWrap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/float) */
+ float: string;
+ floodColor: string;
+ floodOpacity: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font) */
+ font: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-family) */
+ fontFamily: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-feature-settings) */
+ fontFeatureSettings: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-kerning) */
+ fontKerning: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-optical-sizing) */
+ fontOpticalSizing: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-palette) */
+ fontPalette: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-size) */
+ fontSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-size-adjust) */
+ fontSizeAdjust: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-stretch) */
+ fontStretch: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-style) */
+ fontStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis) */
+ fontSynthesis: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis-small-caps) */
+ fontSynthesisSmallCaps: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis-style) */
+ fontSynthesisStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-synthesis-weight) */
+ fontSynthesisWeight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant) */
+ fontVariant: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-alternates) */
+ fontVariantAlternates: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-caps) */
+ fontVariantCaps: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-east-asian) */
+ fontVariantEastAsian: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-ligatures) */
+ fontVariantLigatures: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-numeric) */
+ fontVariantNumeric: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variant-position) */
+ fontVariantPosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-variation-settings) */
+ fontVariationSettings: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/font-weight) */
+ fontWeight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/forced-color-adjust) */
+ forcedColorAdjust: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/gap) */
+ gap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid) */
+ grid: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-area) */
+ gridArea: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-auto-columns) */
+ gridAutoColumns: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-auto-flow) */
+ gridAutoFlow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-auto-rows) */
+ gridAutoRows: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-column) */
+ gridColumn: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-column-end) */
+ gridColumnEnd: string;
+ /** @deprecated This is a legacy alias of \`columnGap\`. */
+ gridColumnGap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-column-start) */
+ gridColumnStart: string;
+ /** @deprecated This is a legacy alias of \`gap\`. */
+ gridGap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-row) */
+ gridRow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-row-end) */
+ gridRowEnd: string;
+ /** @deprecated This is a legacy alias of \`rowGap\`. */
+ gridRowGap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-row-start) */
+ gridRowStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template) */
+ gridTemplate: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template-areas) */
+ gridTemplateAreas: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template-columns) */
+ gridTemplateColumns: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/grid-template-rows) */
+ gridTemplateRows: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/height) */
+ height: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/hyphenate-character) */
+ hyphenateCharacter: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/hyphens) */
+ hyphens: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/image-orientation)
+ */
+ imageOrientation: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/image-rendering) */
+ imageRendering: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inline-size) */
+ inlineSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset) */
+ inset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-block) */
+ insetBlock: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-block-end) */
+ insetBlockEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-block-start) */
+ insetBlockStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-inline) */
+ insetInline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-inline-end) */
+ insetInlineEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/inset-inline-start) */
+ insetInlineStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/isolation) */
+ isolation: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-content) */
+ justifyContent: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-items) */
+ justifyItems: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-self) */
+ justifySelf: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/left) */
+ left: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/letter-spacing) */
+ letterSpacing: string;
+ lightingColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/line-break) */
+ lineBreak: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/line-height) */
+ lineHeight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style) */
+ listStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style-image) */
+ listStyleImage: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style-position) */
+ listStylePosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/list-style-type) */
+ listStyleType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin) */
+ margin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-block) */
+ marginBlock: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-block-end) */
+ marginBlockEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-block-start) */
+ marginBlockStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-bottom) */
+ marginBottom: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-inline) */
+ marginInline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-inline-end) */
+ marginInlineEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-inline-start) */
+ marginInlineStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-left) */
+ marginLeft: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-right) */
+ marginRight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/margin-top) */
+ marginTop: string;
+ marker: string;
+ markerEnd: string;
+ markerMid: string;
+ markerStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask) */
+ mask: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-clip) */
+ maskClip: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-composite) */
+ maskComposite: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-image) */
+ maskImage: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-mode) */
+ maskMode: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-origin) */
+ maskOrigin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-position) */
+ maskPosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-repeat) */
+ maskRepeat: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-size) */
+ maskSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-type) */
+ maskType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/math-depth) */
+ mathDepth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/math-style) */
+ mathStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-block-size) */
+ maxBlockSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-height) */
+ maxHeight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-inline-size) */
+ maxInlineSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/max-width) */
+ maxWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-block-size) */
+ minBlockSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-height) */
+ minHeight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-inline-size) */
+ minInlineSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/min-width) */
+ minWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mix-blend-mode) */
+ mixBlendMode: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/object-fit) */
+ objectFit: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/object-position) */
+ objectPosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset) */
+ offset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-anchor) */
+ offsetAnchor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-distance) */
+ offsetDistance: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-path) */
+ offsetPath: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-position) */
+ offsetPosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/offset-rotate) */
+ offsetRotate: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/opacity) */
+ opacity: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/order) */
+ order: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/orphans) */
+ orphans: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline) */
+ outline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-color) */
+ outlineColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-offset) */
+ outlineOffset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-style) */
+ outlineStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/outline-width) */
+ outlineWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow) */
+ overflow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-anchor) */
+ overflowAnchor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-clip-margin) */
+ overflowClipMargin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-wrap) */
+ overflowWrap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-x) */
+ overflowX: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overflow-y) */
+ overflowY: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior) */
+ overscrollBehavior: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-block) */
+ overscrollBehaviorBlock: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-inline) */
+ overscrollBehaviorInline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-x) */
+ overscrollBehaviorX: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/overscroll-behavior-y) */
+ overscrollBehaviorY: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding) */
+ padding: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-block) */
+ paddingBlock: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-block-end) */
+ paddingBlockEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-block-start) */
+ paddingBlockStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-bottom) */
+ paddingBottom: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-inline) */
+ paddingInline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-inline-end) */
+ paddingInlineEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-inline-start) */
+ paddingInlineStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-left) */
+ paddingLeft: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-right) */
+ paddingRight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/padding-top) */
+ paddingTop: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page) */
+ page: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page-break-after) */
+ pageBreakAfter: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page-break-before) */
+ pageBreakBefore: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/page-break-inside) */
+ pageBreakInside: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/paint-order) */
+ paintOrder: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/parentRule) */
+ readonly parentRule: CSSRule | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective) */
+ perspective: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective-origin) */
+ perspectiveOrigin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/place-content) */
+ placeContent: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/place-items) */
+ placeItems: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/place-self) */
+ placeSelf: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/pointer-events) */
+ pointerEvents: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/position) */
+ position: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/print-color-adjust) */
+ printColorAdjust: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/quotes) */
+ quotes: string;
+ r: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/resize) */
+ resize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/right) */
+ right: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/rotate) */
+ rotate: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/row-gap) */
+ rowGap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/ruby-position) */
+ rubyPosition: string;
+ rx: string;
+ ry: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scale) */
+ scale: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-behavior) */
+ scrollBehavior: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin) */
+ scrollMargin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block) */
+ scrollMarginBlock: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-end) */
+ scrollMarginBlockEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-block-start) */
+ scrollMarginBlockStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-bottom) */
+ scrollMarginBottom: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline) */
+ scrollMarginInline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-end) */
+ scrollMarginInlineEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-inline-start) */
+ scrollMarginInlineStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-left) */
+ scrollMarginLeft: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-right) */
+ scrollMarginRight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-margin-top) */
+ scrollMarginTop: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding) */
+ scrollPadding: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block) */
+ scrollPaddingBlock: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-end) */
+ scrollPaddingBlockEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-block-start) */
+ scrollPaddingBlockStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-bottom) */
+ scrollPaddingBottom: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline) */
+ scrollPaddingInline: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-end) */
+ scrollPaddingInlineEnd: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-inline-start) */
+ scrollPaddingInlineStart: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-left) */
+ scrollPaddingLeft: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-right) */
+ scrollPaddingRight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-padding-top) */
+ scrollPaddingTop: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-snap-align) */
+ scrollSnapAlign: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-snap-stop) */
+ scrollSnapStop: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scroll-snap-type) */
+ scrollSnapType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scrollbar-color) */
+ scrollbarColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scrollbar-gutter) */
+ scrollbarGutter: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/scrollbar-width) */
+ scrollbarWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/shape-image-threshold) */
+ shapeImageThreshold: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/shape-margin) */
+ shapeMargin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/shape-outside) */
+ shapeOutside: string;
+ shapeRendering: string;
+ stopColor: string;
+ stopOpacity: string;
+ stroke: string;
+ strokeDasharray: string;
+ strokeDashoffset: string;
+ strokeLinecap: string;
+ strokeLinejoin: string;
+ strokeMiterlimit: string;
+ strokeOpacity: string;
+ strokeWidth: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/tab-size) */
+ tabSize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/table-layout) */
+ tableLayout: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-align) */
+ textAlign: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-align-last) */
+ textAlignLast: string;
+ textAnchor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-combine-upright) */
+ textCombineUpright: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration) */
+ textDecoration: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-color) */
+ textDecorationColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-line) */
+ textDecorationLine: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-skip-ink) */
+ textDecorationSkipInk: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-style) */
+ textDecorationStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-decoration-thickness) */
+ textDecorationThickness: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis) */
+ textEmphasis: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis-color) */
+ textEmphasisColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis-position) */
+ textEmphasisPosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-emphasis-style) */
+ textEmphasisStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-indent) */
+ textIndent: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-orientation) */
+ textOrientation: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-overflow) */
+ textOverflow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-rendering) */
+ textRendering: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-shadow) */
+ textShadow: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-transform) */
+ textTransform: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-underline-offset) */
+ textUnderlineOffset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-underline-position) */
+ textUnderlinePosition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-wrap) */
+ textWrap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/top) */
+ top: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/touch-action) */
+ touchAction: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform) */
+ transform: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-box) */
+ transformBox: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-origin) */
+ transformOrigin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-style) */
+ transformStyle: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition) */
+ transition: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-delay) */
+ transitionDelay: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-duration) */
+ transitionDuration: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-property) */
+ transitionProperty: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-timing-function) */
+ transitionTimingFunction: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/translate) */
+ translate: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/unicode-bidi) */
+ unicodeBidi: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/user-select) */
+ userSelect: string;
+ vectorEffect: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/vertical-align) */
+ verticalAlign: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/visibility) */
+ visibility: string;
+ /**
+ * @deprecated This is a legacy alias of \`alignContent\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-content)
+ */
+ webkitAlignContent: string;
+ /**
+ * @deprecated This is a legacy alias of \`alignItems\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-items)
+ */
+ webkitAlignItems: string;
+ /**
+ * @deprecated This is a legacy alias of \`alignSelf\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/align-self)
+ */
+ webkitAlignSelf: string;
+ /**
+ * @deprecated This is a legacy alias of \`animation\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation)
+ */
+ webkitAnimation: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationDelay\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-delay)
+ */
+ webkitAnimationDelay: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationDirection\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-direction)
+ */
+ webkitAnimationDirection: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationDuration\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-duration)
+ */
+ webkitAnimationDuration: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationFillMode\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-fill-mode)
+ */
+ webkitAnimationFillMode: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationIterationCount\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-iteration-count)
+ */
+ webkitAnimationIterationCount: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationName\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-name)
+ */
+ webkitAnimationName: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationPlayState\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-play-state)
+ */
+ webkitAnimationPlayState: string;
+ /**
+ * @deprecated This is a legacy alias of \`animationTimingFunction\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/animation-timing-function)
+ */
+ webkitAnimationTimingFunction: string;
+ /**
+ * @deprecated This is a legacy alias of \`appearance\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/appearance)
+ */
+ webkitAppearance: string;
+ /**
+ * @deprecated This is a legacy alias of \`backfaceVisibility\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/backface-visibility)
+ */
+ webkitBackfaceVisibility: string;
+ /**
+ * @deprecated This is a legacy alias of \`backgroundClip\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-clip)
+ */
+ webkitBackgroundClip: string;
+ /**
+ * @deprecated This is a legacy alias of \`backgroundOrigin\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-origin)
+ */
+ webkitBackgroundOrigin: string;
+ /**
+ * @deprecated This is a legacy alias of \`backgroundSize\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/background-size)
+ */
+ webkitBackgroundSize: string;
+ /**
+ * @deprecated This is a legacy alias of \`borderBottomLeftRadius\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-left-radius)
+ */
+ webkitBorderBottomLeftRadius: string;
+ /**
+ * @deprecated This is a legacy alias of \`borderBottomRightRadius\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-bottom-right-radius)
+ */
+ webkitBorderBottomRightRadius: string;
+ /**
+ * @deprecated This is a legacy alias of \`borderRadius\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-radius)
+ */
+ webkitBorderRadius: string;
+ /**
+ * @deprecated This is a legacy alias of \`borderTopLeftRadius\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-left-radius)
+ */
+ webkitBorderTopLeftRadius: string;
+ /**
+ * @deprecated This is a legacy alias of \`borderTopRightRadius\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/border-top-right-radius)
+ */
+ webkitBorderTopRightRadius: string;
+ /**
+ * @deprecated This is a legacy alias of \`boxAlign\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-align)
+ */
+ webkitBoxAlign: string;
+ /**
+ * @deprecated This is a legacy alias of \`boxFlex\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-flex)
+ */
+ webkitBoxFlex: string;
+ /**
+ * @deprecated This is a legacy alias of \`boxOrdinalGroup\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-ordinal-group)
+ */
+ webkitBoxOrdinalGroup: string;
+ /**
+ * @deprecated This is a legacy alias of \`boxOrient\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-orient)
+ */
+ webkitBoxOrient: string;
+ /**
+ * @deprecated This is a legacy alias of \`boxPack\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-pack)
+ */
+ webkitBoxPack: string;
+ /**
+ * @deprecated This is a legacy alias of \`boxShadow\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-shadow)
+ */
+ webkitBoxShadow: string;
+ /**
+ * @deprecated This is a legacy alias of \`boxSizing\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/box-sizing)
+ */
+ webkitBoxSizing: string;
+ /**
+ * @deprecated This is a legacy alias of \`filter\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/filter)
+ */
+ webkitFilter: string;
+ /**
+ * @deprecated This is a legacy alias of \`flex\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex)
+ */
+ webkitFlex: string;
+ /**
+ * @deprecated This is a legacy alias of \`flexBasis\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-basis)
+ */
+ webkitFlexBasis: string;
+ /**
+ * @deprecated This is a legacy alias of \`flexDirection\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-direction)
+ */
+ webkitFlexDirection: string;
+ /**
+ * @deprecated This is a legacy alias of \`flexFlow\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-flow)
+ */
+ webkitFlexFlow: string;
+ /**
+ * @deprecated This is a legacy alias of \`flexGrow\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-grow)
+ */
+ webkitFlexGrow: string;
+ /**
+ * @deprecated This is a legacy alias of \`flexShrink\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-shrink)
+ */
+ webkitFlexShrink: string;
+ /**
+ * @deprecated This is a legacy alias of \`flexWrap\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/flex-wrap)
+ */
+ webkitFlexWrap: string;
+ /**
+ * @deprecated This is a legacy alias of \`justifyContent\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/justify-content)
+ */
+ webkitJustifyContent: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-line-clamp) */
+ webkitLineClamp: string;
+ /**
+ * @deprecated This is a legacy alias of \`mask\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask)
+ */
+ webkitMask: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskBorder\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border)
+ */
+ webkitMaskBoxImage: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskBorderOutset\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-outset)
+ */
+ webkitMaskBoxImageOutset: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskBorderRepeat\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-repeat)
+ */
+ webkitMaskBoxImageRepeat: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskBorderSlice\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-slice)
+ */
+ webkitMaskBoxImageSlice: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskBorderSource\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-source)
+ */
+ webkitMaskBoxImageSource: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskBorderWidth\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-border-width)
+ */
+ webkitMaskBoxImageWidth: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskClip\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-clip)
+ */
+ webkitMaskClip: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskComposite\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-composite)
+ */
+ webkitMaskComposite: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskImage\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-image)
+ */
+ webkitMaskImage: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskOrigin\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-origin)
+ */
+ webkitMaskOrigin: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskPosition\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-position)
+ */
+ webkitMaskPosition: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskRepeat\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-repeat)
+ */
+ webkitMaskRepeat: string;
+ /**
+ * @deprecated This is a legacy alias of \`maskSize\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/mask-size)
+ */
+ webkitMaskSize: string;
+ /**
+ * @deprecated This is a legacy alias of \`order\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/order)
+ */
+ webkitOrder: string;
+ /**
+ * @deprecated This is a legacy alias of \`perspective\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective)
+ */
+ webkitPerspective: string;
+ /**
+ * @deprecated This is a legacy alias of \`perspectiveOrigin\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/perspective-origin)
+ */
+ webkitPerspectiveOrigin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-fill-color) */
+ webkitTextFillColor: string;
+ /**
+ * @deprecated This is a legacy alias of \`textSizeAdjust\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/text-size-adjust)
+ */
+ webkitTextSizeAdjust: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke) */
+ webkitTextStroke: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-color) */
+ webkitTextStrokeColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/-webkit-text-stroke-width) */
+ webkitTextStrokeWidth: string;
+ /**
+ * @deprecated This is a legacy alias of \`transform\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform)
+ */
+ webkitTransform: string;
+ /**
+ * @deprecated This is a legacy alias of \`transformOrigin\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-origin)
+ */
+ webkitTransformOrigin: string;
+ /**
+ * @deprecated This is a legacy alias of \`transformStyle\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transform-style)
+ */
+ webkitTransformStyle: string;
+ /**
+ * @deprecated This is a legacy alias of \`transition\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition)
+ */
+ webkitTransition: string;
+ /**
+ * @deprecated This is a legacy alias of \`transitionDelay\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-delay)
+ */
+ webkitTransitionDelay: string;
+ /**
+ * @deprecated This is a legacy alias of \`transitionDuration\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-duration)
+ */
+ webkitTransitionDuration: string;
+ /**
+ * @deprecated This is a legacy alias of \`transitionProperty\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-property)
+ */
+ webkitTransitionProperty: string;
+ /**
+ * @deprecated This is a legacy alias of \`transitionTimingFunction\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/transition-timing-function)
+ */
+ webkitTransitionTimingFunction: string;
+ /**
+ * @deprecated This is a legacy alias of \`userSelect\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/user-select)
+ */
+ webkitUserSelect: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/white-space) */
+ whiteSpace: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/widows) */
+ widows: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/width) */
+ width: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/will-change) */
+ willChange: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/word-break) */
+ wordBreak: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/word-spacing) */
+ wordSpacing: string;
+ /** @deprecated */
+ wordWrap: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/writing-mode) */
+ writingMode: string;
+ x: string;
+ y: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/CSS/z-index) */
+ zIndex: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/getPropertyPriority) */
+ getPropertyPriority(property: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/getPropertyValue) */
+ getPropertyValue(property: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/item) */
+ item(index: number): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/removeProperty) */
+ removeProperty(property: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleDeclaration/setProperty) */
+ setProperty(property: string, value: string | null, priority?: string): void;
+ [index: number]: string;
+}
+
+declare var CSSStyleDeclaration: {
+ prototype: CSSStyleDeclaration;
+ new(): CSSStyleDeclaration;
+};
+
+/**
+ * CSSStyleRule represents a single CSS style rule. It implements the CSSRule interface with a type value of 1 (CSSRule.STYLE_RULE).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule)
+ */
+interface CSSStyleRule extends CSSGroupingRule {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/selectorText) */
+ selectorText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/style) */
+ readonly style: CSSStyleDeclaration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleRule/styleMap) */
+ readonly styleMap: StylePropertyMap;
+}
+
+declare var CSSStyleRule: {
+ prototype: CSSStyleRule;
+ new(): CSSStyleRule;
+};
+
+/**
+ * A single CSS style sheet. It inherits properties and methods from its parent, StyleSheet.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet)
+ */
+interface CSSStyleSheet extends StyleSheet {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/cssRules) */
+ readonly cssRules: CSSRuleList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/ownerRule) */
+ readonly ownerRule: CSSRule | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/rules)
+ */
+ readonly rules: CSSRuleList;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/addRule)
+ */
+ addRule(selector?: string, style?: string, index?: number): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/deleteRule) */
+ deleteRule(index: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/insertRule) */
+ insertRule(rule: string, index?: number): number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/removeRule)
+ */
+ removeRule(index?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replace) */
+ replace(text: string): Promise<CSSStyleSheet>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleSheet/replaceSync) */
+ replaceSync(text: string): void;
+}
+
+declare var CSSStyleSheet: {
+ prototype: CSSStyleSheet;
+ new(options?: CSSStyleSheetInit): CSSStyleSheet;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue) */
+interface CSSStyleValue {
+ toString(): string;
+}
+
+declare var CSSStyleValue: {
+ prototype: CSSStyleValue;
+ new(): CSSStyleValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue/parse_static) */
+ parse(property: string, cssText: string): CSSStyleValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue/parseAll_static) */
+ parseAll(property: string, cssText: string): CSSStyleValue[];
+};
+
+/**
+ * An object representing a single CSS @supports at-rule. It implements the CSSConditionRule interface, and therefore the CSSRule and CSSGroupingRule interfaces with a type value of 12 (CSSRule.SUPPORTS_RULE).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSupportsRule)
+ */
+interface CSSSupportsRule extends CSSConditionRule {
+}
+
+declare var CSSSupportsRule: {
+ prototype: CSSSupportsRule;
+ new(): CSSSupportsRule;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformComponent) */
+interface CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformComponent/is2D) */
+ is2D: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformComponent/toMatrix) */
+ toMatrix(): DOMMatrix;
+ toString(): string;
+}
+
+declare var CSSTransformComponent: {
+ prototype: CSSTransformComponent;
+ new(): CSSTransformComponent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue) */
+interface CSSTransformValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue/is2D) */
+ readonly is2D: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue/toMatrix) */
+ toMatrix(): DOMMatrix;
+ forEach(callbackfn: (value: CSSTransformComponent, key: number, parent: CSSTransformValue) => void, thisArg?: any): void;
+ [index: number]: CSSTransformComponent;
+}
+
+declare var CSSTransformValue: {
+ prototype: CSSTransformValue;
+ new(transforms: CSSTransformComponent[]): CSSTransformValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransition) */
+interface CSSTransition extends Animation {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransition/transitionProperty) */
+ readonly transitionProperty: string;
+ addEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSTransition, ev: AnimationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AnimationEventMap>(type: K, listener: (this: CSSTransition, ev: AnimationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var CSSTransition: {
+ prototype: CSSTransition;
+ new(): CSSTransition;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate) */
+interface CSSTranslate extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate/x) */
+ x: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate/y) */
+ y: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate/z) */
+ z: CSSNumericValue;
+}
+
+declare var CSSTranslate: {
+ prototype: CSSTranslate;
+ new(x: CSSNumericValue, y: CSSNumericValue, z?: CSSNumericValue): CSSTranslate;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnitValue) */
+interface CSSUnitValue extends CSSNumericValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnitValue/unit) */
+ readonly unit: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnitValue/value) */
+ value: number;
+}
+
+declare var CSSUnitValue: {
+ prototype: CSSUnitValue;
+ new(value: number, unit: string): CSSUnitValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnparsedValue) */
+interface CSSUnparsedValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnparsedValue/length) */
+ readonly length: number;
+ forEach(callbackfn: (value: CSSUnparsedSegment, key: number, parent: CSSUnparsedValue) => void, thisArg?: any): void;
+ [index: number]: CSSUnparsedSegment;
+}
+
+declare var CSSUnparsedValue: {
+ prototype: CSSUnparsedValue;
+ new(members: CSSUnparsedSegment[]): CSSUnparsedValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSVariableReferenceValue) */
+interface CSSVariableReferenceValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSVariableReferenceValue/fallback) */
+ readonly fallback: CSSUnparsedValue | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSVariableReferenceValue/variable) */
+ variable: string;
+}
+
+declare var CSSVariableReferenceValue: {
+ prototype: CSSVariableReferenceValue;
+ new(variable: string, fallback?: CSSUnparsedValue | null): CSSVariableReferenceValue;
+};
+
+/**
+ * Provides a storage mechanism for Request / Response object pairs that are cached, for example as part of the ServiceWorker life cycle. Note that the Cache interface is exposed to windowed scopes as well as workers. You don't have to use it in conjunction with service workers, even though it is defined in the service worker spec.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache)
+ */
+interface Cache {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/add) */
+ add(request: RequestInfo | URL): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/addAll) */
+ addAll(requests: RequestInfo[]): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/delete) */
+ delete(request: RequestInfo | URL, options?: CacheQueryOptions): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/keys) */
+ keys(request?: RequestInfo | URL, options?: CacheQueryOptions): Promise<ReadonlyArray<Request>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/match) */
+ match(request: RequestInfo | URL, options?: CacheQueryOptions): Promise<Response | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/matchAll) */
+ matchAll(request?: RequestInfo | URL, options?: CacheQueryOptions): Promise<ReadonlyArray<Response>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/put) */
+ put(request: RequestInfo | URL, response: Response): Promise<void>;
+}
+
+declare var Cache: {
+ prototype: Cache;
+ new(): Cache;
+};
+
+/**
+ * The storage for Cache objects.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage)
+ */
+interface CacheStorage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/delete) */
+ delete(cacheName: string): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/has) */
+ has(cacheName: string): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/keys) */
+ keys(): Promise<string[]>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/match) */
+ match(request: RequestInfo | URL, options?: MultiCacheQueryOptions): Promise<Response | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/open) */
+ open(cacheName: string): Promise<Cache>;
+}
+
+declare var CacheStorage: {
+ prototype: CacheStorage;
+ new(): CacheStorage;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasCaptureMediaStreamTrack) */
+interface CanvasCaptureMediaStreamTrack extends MediaStreamTrack {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasCaptureMediaStreamTrack/canvas) */
+ readonly canvas: HTMLCanvasElement;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasCaptureMediaStreamTrack/requestFrame) */
+ requestFrame(): void;
+ addEventListener<K extends keyof MediaStreamTrackEventMap>(type: K, listener: (this: CanvasCaptureMediaStreamTrack, ev: MediaStreamTrackEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaStreamTrackEventMap>(type: K, listener: (this: CanvasCaptureMediaStreamTrack, ev: MediaStreamTrackEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var CanvasCaptureMediaStreamTrack: {
+ prototype: CanvasCaptureMediaStreamTrack;
+ new(): CanvasCaptureMediaStreamTrack;
+};
+
+interface CanvasCompositing {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/globalAlpha) */
+ globalAlpha: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation) */
+ globalCompositeOperation: GlobalCompositeOperation;
+}
+
+interface CanvasDrawImage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/drawImage) */
+ drawImage(image: CanvasImageSource, dx: number, dy: number): void;
+ drawImage(image: CanvasImageSource, dx: number, dy: number, dw: number, dh: number): void;
+ drawImage(image: CanvasImageSource, sx: number, sy: number, sw: number, sh: number, dx: number, dy: number, dw: number, dh: number): void;
+}
+
+interface CanvasDrawPath {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/beginPath) */
+ beginPath(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/clip) */
+ clip(fillRule?: CanvasFillRule): void;
+ clip(path: Path2D, fillRule?: CanvasFillRule): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fill) */
+ fill(fillRule?: CanvasFillRule): void;
+ fill(path: Path2D, fillRule?: CanvasFillRule): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/isPointInPath) */
+ isPointInPath(x: number, y: number, fillRule?: CanvasFillRule): boolean;
+ isPointInPath(path: Path2D, x: number, y: number, fillRule?: CanvasFillRule): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/isPointInStroke) */
+ isPointInStroke(x: number, y: number): boolean;
+ isPointInStroke(path: Path2D, x: number, y: number): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/stroke) */
+ stroke(): void;
+ stroke(path: Path2D): void;
+}
+
+interface CanvasFillStrokeStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillStyle) */
+ fillStyle: string | CanvasGradient | CanvasPattern;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeStyle) */
+ strokeStyle: string | CanvasGradient | CanvasPattern;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createConicGradient) */
+ createConicGradient(startAngle: number, x: number, y: number): CanvasGradient;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createLinearGradient) */
+ createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createPattern) */
+ createPattern(image: CanvasImageSource, repetition: string | null): CanvasPattern | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createRadialGradient) */
+ createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
+}
+
+interface CanvasFilters {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/filter) */
+ filter: string;
+}
+
+/**
+ * An opaque object describing a gradient. It is returned by the methods CanvasRenderingContext2D.createLinearGradient() or CanvasRenderingContext2D.createRadialGradient().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasGradient)
+ */
+interface CanvasGradient {
+ /**
+ * Adds a color stop with the given color to the gradient at the given offset. 0.0 is the offset at one end of the gradient, 1.0 is the offset at the other end.
+ *
+ * Throws an "IndexSizeError" DOMException if the offset is out of range. Throws a "SyntaxError" DOMException if the color cannot be parsed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasGradient/addColorStop)
+ */
+ addColorStop(offset: number, color: string): void;
+}
+
+declare var CanvasGradient: {
+ prototype: CanvasGradient;
+ new(): CanvasGradient;
+};
+
+interface CanvasImageData {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createImageData) */
+ createImageData(sw: number, sh: number, settings?: ImageDataSettings): ImageData;
+ createImageData(imagedata: ImageData): ImageData;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getImageData) */
+ getImageData(sx: number, sy: number, sw: number, sh: number, settings?: ImageDataSettings): ImageData;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/putImageData) */
+ putImageData(imagedata: ImageData, dx: number, dy: number): void;
+ putImageData(imagedata: ImageData, dx: number, dy: number, dirtyX: number, dirtyY: number, dirtyWidth: number, dirtyHeight: number): void;
+}
+
+interface CanvasImageSmoothing {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/imageSmoothingEnabled) */
+ imageSmoothingEnabled: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality) */
+ imageSmoothingQuality: ImageSmoothingQuality;
+}
+
+interface CanvasPath {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/arc) */
+ arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/arcTo) */
+ arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/bezierCurveTo) */
+ bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/closePath) */
+ closePath(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/ellipse) */
+ ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineTo) */
+ lineTo(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/moveTo) */
+ moveTo(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/quadraticCurveTo) */
+ quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/rect) */
+ rect(x: number, y: number, w: number, h: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/roundRect) */
+ roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | (number | DOMPointInit)[]): void;
+}
+
+interface CanvasPathDrawingStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineCap) */
+ lineCap: CanvasLineCap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineDashOffset) */
+ lineDashOffset: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineJoin) */
+ lineJoin: CanvasLineJoin;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineWidth) */
+ lineWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/miterLimit) */
+ miterLimit: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getLineDash) */
+ getLineDash(): number[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setLineDash) */
+ setLineDash(segments: number[]): void;
+}
+
+/**
+ * An opaque object describing a pattern, based on an image, a canvas, or a video, created by the CanvasRenderingContext2D.createPattern() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasPattern)
+ */
+interface CanvasPattern {
+ /**
+ * Sets the transformation matrix that will be used when rendering the pattern during a fill or stroke painting operation.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasPattern/setTransform)
+ */
+ setTransform(transform?: DOMMatrix2DInit): void;
+}
+
+declare var CanvasPattern: {
+ prototype: CanvasPattern;
+ new(): CanvasPattern;
+};
+
+interface CanvasRect {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/clearRect) */
+ clearRect(x: number, y: number, w: number, h: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillRect) */
+ fillRect(x: number, y: number, w: number, h: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeRect) */
+ strokeRect(x: number, y: number, w: number, h: number): void;
+}
+
+/**
+ * The CanvasRenderingContext2D interface, part of the Canvas API, provides the 2D rendering context for the drawing surface of a <canvas> element. It is used for drawing shapes, text, images, and other objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D)
+ */
+interface CanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPath, CanvasPathDrawingStyles, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform, CanvasUserInterface {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/canvas) */
+ readonly canvas: HTMLCanvasElement;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getContextAttributes) */
+ getContextAttributes(): CanvasRenderingContext2DSettings;
+}
+
+declare var CanvasRenderingContext2D: {
+ prototype: CanvasRenderingContext2D;
+ new(): CanvasRenderingContext2D;
+};
+
+interface CanvasShadowStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowBlur) */
+ shadowBlur: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowColor) */
+ shadowColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowOffsetX) */
+ shadowOffsetX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowOffsetY) */
+ shadowOffsetY: number;
+}
+
+interface CanvasState {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/reset) */
+ reset(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/restore) */
+ restore(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/save) */
+ save(): void;
+}
+
+interface CanvasText {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillText) */
+ fillText(text: string, x: number, y: number, maxWidth?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/measureText) */
+ measureText(text: string): TextMetrics;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeText) */
+ strokeText(text: string, x: number, y: number, maxWidth?: number): void;
+}
+
+interface CanvasTextDrawingStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/direction) */
+ direction: CanvasDirection;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/font) */
+ font: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontKerning) */
+ fontKerning: CanvasFontKerning;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontStretch) */
+ fontStretch: CanvasFontStretch;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontVariantCaps) */
+ fontVariantCaps: CanvasFontVariantCaps;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/letterSpacing) */
+ letterSpacing: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textAlign) */
+ textAlign: CanvasTextAlign;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textBaseline) */
+ textBaseline: CanvasTextBaseline;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textRendering) */
+ textRendering: CanvasTextRendering;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/wordSpacing) */
+ wordSpacing: string;
+}
+
+interface CanvasTransform {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getTransform) */
+ getTransform(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/resetTransform) */
+ resetTransform(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/rotate) */
+ rotate(angle: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/scale) */
+ scale(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setTransform) */
+ setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
+ setTransform(transform?: DOMMatrix2DInit): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/transform) */
+ transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/translate) */
+ translate(x: number, y: number): void;
+}
+
+interface CanvasUserInterface {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/drawFocusIfNeeded) */
+ drawFocusIfNeeded(element: Element): void;
+ drawFocusIfNeeded(path: Path2D, element: Element): void;
+}
+
+/**
+ * The ChannelMergerNode interface, often used in conjunction with its opposite, ChannelSplitterNode, reunites different mono inputs into a single output. Each input is used to fill a channel of the output. This is useful for accessing each channels separately, e.g. for performing channel mixing where gain must be separately controlled on each channel.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ChannelMergerNode)
+ */
+interface ChannelMergerNode extends AudioNode {
+}
+
+declare var ChannelMergerNode: {
+ prototype: ChannelMergerNode;
+ new(context: BaseAudioContext, options?: ChannelMergerOptions): ChannelMergerNode;
+};
+
+/**
+ * The ChannelSplitterNode interface, often used in conjunction with its opposite, ChannelMergerNode, separates the different channels of an audio source into a set of mono outputs. This is useful for accessing each channel separately, e.g. for performing channel mixing where gain must be separately controlled on each channel.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ChannelSplitterNode)
+ */
+interface ChannelSplitterNode extends AudioNode {
+}
+
+declare var ChannelSplitterNode: {
+ prototype: ChannelSplitterNode;
+ new(context: BaseAudioContext, options?: ChannelSplitterOptions): ChannelSplitterNode;
+};
+
+/**
+ * The CharacterData abstract interface represents a Node object that contains characters. This is an abstract interface, meaning there aren't any object of type CharacterData: it is implemented by other interfaces, like Text, Comment, or ProcessingInstruction which aren't abstract.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData)
+ */
+interface CharacterData extends Node, ChildNode, NonDocumentTypeChildNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/data) */
+ data: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/length) */
+ readonly length: number;
+ readonly ownerDocument: Document;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/appendData) */
+ appendData(data: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/deleteData) */
+ deleteData(offset: number, count: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/insertData) */
+ insertData(offset: number, data: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/replaceData) */
+ replaceData(offset: number, count: number, data: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/substringData) */
+ substringData(offset: number, count: number): string;
+}
+
+declare var CharacterData: {
+ prototype: CharacterData;
+ new(): CharacterData;
+};
+
+interface ChildNode extends Node {
+ /**
+ * Inserts nodes just after node, while replacing strings in nodes with equivalent Text nodes.
+ *
+ * Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/after)
+ */
+ after(...nodes: (Node | string)[]): void;
+ /**
+ * Inserts nodes just before node, while replacing strings in nodes with equivalent Text nodes.
+ *
+ * Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/before)
+ */
+ before(...nodes: (Node | string)[]): void;
+ /**
+ * Removes node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/remove)
+ */
+ remove(): void;
+ /**
+ * Replaces node with nodes, while replacing strings in nodes with equivalent Text nodes.
+ *
+ * Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/replaceWith)
+ */
+ replaceWith(...nodes: (Node | string)[]): void;
+}
+
+/** @deprecated */
+interface ClientRect extends DOMRect {
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard)
+ */
+interface Clipboard extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/read) */
+ read(): Promise<ClipboardItems>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/readText) */
+ readText(): Promise<string>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/write) */
+ write(data: ClipboardItems): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clipboard/writeText) */
+ writeText(data: string): Promise<void>;
+}
+
+declare var Clipboard: {
+ prototype: Clipboard;
+ new(): Clipboard;
+};
+
+/**
+ * Events providing information related to modification of the clipboard, that is cut, copy, and paste events.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardEvent)
+ */
+interface ClipboardEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardEvent/clipboardData) */
+ readonly clipboardData: DataTransfer | null;
+}
+
+declare var ClipboardEvent: {
+ prototype: ClipboardEvent;
+ new(type: string, eventInitDict?: ClipboardEventInit): ClipboardEvent;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardItem)
+ */
+interface ClipboardItem {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardItem/types) */
+ readonly types: ReadonlyArray<string>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ClipboardItem/getType) */
+ getType(type: string): Promise<Blob>;
+}
+
+declare var ClipboardItem: {
+ prototype: ClipboardItem;
+ new(items: Record<string, string | Blob | PromiseLike<string | Blob>>, options?: ClipboardItemOptions): ClipboardItem;
+};
+
+/**
+ * A CloseEvent is sent to clients using WebSockets when the connection is closed. This is delivered to the listener indicated by the WebSocket object's onclose attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent)
+ */
+interface CloseEvent extends Event {
+ /**
+ * Returns the WebSocket connection close code provided by the server.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/code)
+ */
+ readonly code: number;
+ /**
+ * Returns the WebSocket connection close reason provided by the server.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/reason)
+ */
+ readonly reason: string;
+ /**
+ * Returns true if the connection closed cleanly; false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/wasClean)
+ */
+ readonly wasClean: boolean;
+}
+
+declare var CloseEvent: {
+ prototype: CloseEvent;
+ new(type: string, eventInitDict?: CloseEventInit): CloseEvent;
+};
+
+/**
+ * Textual notations within markup; although it is generally not visually shown, such comments are available to be read in the source view.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Comment)
+ */
+interface Comment extends CharacterData {
+}
+
+declare var Comment: {
+ prototype: Comment;
+ new(data?: string): Comment;
+};
+
+/**
+ * The DOM CompositionEvent represents events that occur due to the user indirectly entering text.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompositionEvent)
+ */
+interface CompositionEvent extends UIEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompositionEvent/data) */
+ readonly data: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompositionEvent/initCompositionEvent)
+ */
+ initCompositionEvent(typeArg: string, bubblesArg?: boolean, cancelableArg?: boolean, viewArg?: WindowProxy | null, dataArg?: string): void;
+}
+
+declare var CompositionEvent: {
+ prototype: CompositionEvent;
+ new(type: string, eventInitDict?: CompositionEventInit): CompositionEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream) */
+interface CompressionStream extends GenericTransformStream {
+}
+
+declare var CompressionStream: {
+ prototype: CompressionStream;
+ new(format: CompressionFormat): CompressionStream;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConstantSourceNode) */
+interface ConstantSourceNode extends AudioScheduledSourceNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConstantSourceNode/offset) */
+ readonly offset: AudioParam;
+ addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: ConstantSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: ConstantSourceNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ConstantSourceNode: {
+ prototype: ConstantSourceNode;
+ new(context: BaseAudioContext, options?: ConstantSourceOptions): ConstantSourceNode;
+};
+
+/**
+ * An AudioNode that performs a Linear Convolution on a given AudioBuffer, often used to achieve a reverb effect. A ConvolverNode always has exactly one input and one output.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConvolverNode)
+ */
+interface ConvolverNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConvolverNode/buffer) */
+ buffer: AudioBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ConvolverNode/normalize) */
+ normalize: boolean;
+}
+
+declare var ConvolverNode: {
+ prototype: ConvolverNode;
+ new(context: BaseAudioContext, options?: ConvolverOptions): ConvolverNode;
+};
+
+/**
+ * This Streams API interface provides a built-in byte length queuing strategy that can be used when constructing streams.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy)
+ */
+interface CountQueuingStrategy extends QueuingStrategy {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/highWaterMark) */
+ readonly highWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/size) */
+ readonly size: QueuingStrategySize;
+}
+
+declare var CountQueuingStrategy: {
+ prototype: CountQueuingStrategy;
+ new(init: QueuingStrategyInit): CountQueuingStrategy;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Credential)
+ */
+interface Credential {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Credential/id) */
+ readonly id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Credential/type) */
+ readonly type: string;
+}
+
+declare var Credential: {
+ prototype: Credential;
+ new(): Credential;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer)
+ */
+interface CredentialsContainer {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/create) */
+ create(options?: CredentialCreationOptions): Promise<Credential | null>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/get) */
+ get(options?: CredentialRequestOptions): Promise<Credential | null>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/preventSilentAccess) */
+ preventSilentAccess(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CredentialsContainer/store) */
+ store(credential: Credential): Promise<void>;
+}
+
+declare var CredentialsContainer: {
+ prototype: CredentialsContainer;
+ new(): CredentialsContainer;
+};
+
+/**
+ * Basic cryptography features available in the current context. It allows access to a cryptographically strong random number generator and to cryptographic primitives.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto)
+ */
+interface Crypto {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/subtle)
+ */
+ readonly subtle: SubtleCrypto;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/getRandomValues) */
+ getRandomValues<T extends ArrayBufferView | null>(array: T): T;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/randomUUID)
+ */
+ randomUUID(): \`\${string}-\${string}-\${string}-\${string}-\${string}\`;
+}
+
+declare var Crypto: {
+ prototype: Crypto;
+ new(): Crypto;
+};
+
+/**
+ * The CryptoKey dictionary of the Web Crypto API represents a cryptographic key.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey)
+ */
+interface CryptoKey {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/algorithm) */
+ readonly algorithm: KeyAlgorithm;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/extractable) */
+ readonly extractable: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/type) */
+ readonly type: KeyType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/usages) */
+ readonly usages: KeyUsage[];
+}
+
+declare var CryptoKey: {
+ prototype: CryptoKey;
+ new(): CryptoKey;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry) */
+interface CustomElementRegistry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/define) */
+ define(name: string, constructor: CustomElementConstructor, options?: ElementDefinitionOptions): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/get) */
+ get(name: string): CustomElementConstructor | undefined;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/getName) */
+ getName(constructor: CustomElementConstructor): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/upgrade) */
+ upgrade(root: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomElementRegistry/whenDefined) */
+ whenDefined(name: string): Promise<CustomElementConstructor>;
+}
+
+declare var CustomElementRegistry: {
+ prototype: CustomElementRegistry;
+ new(): CustomElementRegistry;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent) */
+interface CustomEvent<T = any> extends Event {
+ /**
+ * Returns any custom data event was created with. Typically used for synthetic events.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/detail)
+ */
+ readonly detail: T;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/initCustomEvent)
+ */
+ initCustomEvent(type: string, bubbles?: boolean, cancelable?: boolean, detail?: T): void;
+}
+
+declare var CustomEvent: {
+ prototype: CustomEvent;
+ new<T>(type: string, eventInitDict?: CustomEventInit<T>): CustomEvent<T>;
+};
+
+/**
+ * An abnormal event (called an exception) which occurs as a result of calling a method or accessing a property of a web API.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException)
+ */
+interface DOMException extends Error {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/code)
+ */
+ readonly code: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/message) */
+ readonly message: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/name) */
+ readonly name: string;
+ readonly INDEX_SIZE_ERR: 1;
+ readonly DOMSTRING_SIZE_ERR: 2;
+ readonly HIERARCHY_REQUEST_ERR: 3;
+ readonly WRONG_DOCUMENT_ERR: 4;
+ readonly INVALID_CHARACTER_ERR: 5;
+ readonly NO_DATA_ALLOWED_ERR: 6;
+ readonly NO_MODIFICATION_ALLOWED_ERR: 7;
+ readonly NOT_FOUND_ERR: 8;
+ readonly NOT_SUPPORTED_ERR: 9;
+ readonly INUSE_ATTRIBUTE_ERR: 10;
+ readonly INVALID_STATE_ERR: 11;
+ readonly SYNTAX_ERR: 12;
+ readonly INVALID_MODIFICATION_ERR: 13;
+ readonly NAMESPACE_ERR: 14;
+ readonly INVALID_ACCESS_ERR: 15;
+ readonly VALIDATION_ERR: 16;
+ readonly TYPE_MISMATCH_ERR: 17;
+ readonly SECURITY_ERR: 18;
+ readonly NETWORK_ERR: 19;
+ readonly ABORT_ERR: 20;
+ readonly URL_MISMATCH_ERR: 21;
+ readonly QUOTA_EXCEEDED_ERR: 22;
+ readonly TIMEOUT_ERR: 23;
+ readonly INVALID_NODE_TYPE_ERR: 24;
+ readonly DATA_CLONE_ERR: 25;
+}
+
+declare var DOMException: {
+ prototype: DOMException;
+ new(message?: string, name?: string): DOMException;
+ readonly INDEX_SIZE_ERR: 1;
+ readonly DOMSTRING_SIZE_ERR: 2;
+ readonly HIERARCHY_REQUEST_ERR: 3;
+ readonly WRONG_DOCUMENT_ERR: 4;
+ readonly INVALID_CHARACTER_ERR: 5;
+ readonly NO_DATA_ALLOWED_ERR: 6;
+ readonly NO_MODIFICATION_ALLOWED_ERR: 7;
+ readonly NOT_FOUND_ERR: 8;
+ readonly NOT_SUPPORTED_ERR: 9;
+ readonly INUSE_ATTRIBUTE_ERR: 10;
+ readonly INVALID_STATE_ERR: 11;
+ readonly SYNTAX_ERR: 12;
+ readonly INVALID_MODIFICATION_ERR: 13;
+ readonly NAMESPACE_ERR: 14;
+ readonly INVALID_ACCESS_ERR: 15;
+ readonly VALIDATION_ERR: 16;
+ readonly TYPE_MISMATCH_ERR: 17;
+ readonly SECURITY_ERR: 18;
+ readonly NETWORK_ERR: 19;
+ readonly ABORT_ERR: 20;
+ readonly URL_MISMATCH_ERR: 21;
+ readonly QUOTA_EXCEEDED_ERR: 22;
+ readonly TIMEOUT_ERR: 23;
+ readonly INVALID_NODE_TYPE_ERR: 24;
+ readonly DATA_CLONE_ERR: 25;
+};
+
+/**
+ * An object providing methods which are not dependent on any particular document. Such an object is returned by the Document.implementation property.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation)
+ */
+interface DOMImplementation {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createDocument) */
+ createDocument(namespace: string | null, qualifiedName: string | null, doctype?: DocumentType | null): XMLDocument;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createDocumentType) */
+ createDocumentType(qualifiedName: string, publicId: string, systemId: string): DocumentType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/createHTMLDocument) */
+ createHTMLDocument(title?: string): Document;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMImplementation/hasFeature)
+ */
+ hasFeature(...args: any[]): true;
+}
+
+declare var DOMImplementation: {
+ prototype: DOMImplementation;
+ new(): DOMImplementation;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix) */
+interface DOMMatrix extends DOMMatrixReadOnly {
+ a: number;
+ b: number;
+ c: number;
+ d: number;
+ e: number;
+ f: number;
+ m11: number;
+ m12: number;
+ m13: number;
+ m14: number;
+ m21: number;
+ m22: number;
+ m23: number;
+ m24: number;
+ m31: number;
+ m32: number;
+ m33: number;
+ m34: number;
+ m41: number;
+ m42: number;
+ m43: number;
+ m44: number;
+ invertSelf(): DOMMatrix;
+ multiplySelf(other?: DOMMatrixInit): DOMMatrix;
+ preMultiplySelf(other?: DOMMatrixInit): DOMMatrix;
+ rotateAxisAngleSelf(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;
+ rotateFromVectorSelf(x?: number, y?: number): DOMMatrix;
+ rotateSelf(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix/scale3dSelf) */
+ scale3dSelf(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix/scaleSelf) */
+ scaleSelf(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ setMatrixValue(transformList: string): DOMMatrix;
+ skewXSelf(sx?: number): DOMMatrix;
+ skewYSelf(sy?: number): DOMMatrix;
+ translateSelf(tx?: number, ty?: number, tz?: number): DOMMatrix;
+}
+
+declare var DOMMatrix: {
+ prototype: DOMMatrix;
+ new(init?: string | number[]): DOMMatrix;
+ fromFloat32Array(array32: Float32Array): DOMMatrix;
+ fromFloat64Array(array64: Float64Array): DOMMatrix;
+ fromMatrix(other?: DOMMatrixInit): DOMMatrix;
+};
+
+type SVGMatrix = DOMMatrix;
+declare var SVGMatrix: typeof DOMMatrix;
+
+type WebKitCSSMatrix = DOMMatrix;
+declare var WebKitCSSMatrix: typeof DOMMatrix;
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly) */
+interface DOMMatrixReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/a) */
+ readonly a: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/b) */
+ readonly b: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/c) */
+ readonly c: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/d) */
+ readonly d: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/e) */
+ readonly e: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/f) */
+ readonly f: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/is2D) */
+ readonly is2D: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/isIdentity) */
+ readonly isIdentity: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m11) */
+ readonly m11: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m12) */
+ readonly m12: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m13) */
+ readonly m13: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m14) */
+ readonly m14: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m21) */
+ readonly m21: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m22) */
+ readonly m22: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m23) */
+ readonly m23: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m24) */
+ readonly m24: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m31) */
+ readonly m31: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m32) */
+ readonly m32: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m33) */
+ readonly m33: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m34) */
+ readonly m34: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m41) */
+ readonly m41: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m42) */
+ readonly m42: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m43) */
+ readonly m43: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m44) */
+ readonly m44: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/flipX) */
+ flipX(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/flipY) */
+ flipY(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/inverse) */
+ inverse(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/multiply) */
+ multiply(other?: DOMMatrixInit): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotate) */
+ rotate(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotateAxisAngle) */
+ rotateAxisAngle(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotateFromVector) */
+ rotateFromVector(x?: number, y?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scale) */
+ scale(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scale3d) */
+ scale3d(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scaleNonUniform)
+ */
+ scaleNonUniform(scaleX?: number, scaleY?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/skewX) */
+ skewX(sx?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/skewY) */
+ skewY(sy?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/toFloat32Array) */
+ toFloat32Array(): Float32Array;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/toFloat64Array) */
+ toFloat64Array(): Float64Array;
+ toJSON(): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/transformPoint) */
+ transformPoint(point?: DOMPointInit): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/translate) */
+ translate(tx?: number, ty?: number, tz?: number): DOMMatrix;
+ toString(): string;
+}
+
+declare var DOMMatrixReadOnly: {
+ prototype: DOMMatrixReadOnly;
+ new(init?: string | number[]): DOMMatrixReadOnly;
+ fromFloat32Array(array32: Float32Array): DOMMatrixReadOnly;
+ fromFloat64Array(array64: Float64Array): DOMMatrixReadOnly;
+ fromMatrix(other?: DOMMatrixInit): DOMMatrixReadOnly;
+};
+
+/**
+ * Provides the ability to parse XML or HTML source code from a string into a DOM Document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMParser)
+ */
+interface DOMParser {
+ /**
+ * Parses string using either the HTML or XML parser, according to type, and returns the resulting Document. type can be "text/html" (which will invoke the HTML parser), or any of "text/xml", "application/xml", "application/xhtml+xml", or "image/svg+xml" (which will invoke the XML parser).
+ *
+ * For the XML parser, if string cannot be parsed, then the returned Document will contain elements describing the resulting error.
+ *
+ * Note that script elements are not evaluated during parsing, and the resulting document's encoding will always be UTF-8.
+ *
+ * Values other than the above for type will cause a TypeError exception to be thrown.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMParser/parseFromString)
+ */
+ parseFromString(string: string, type: DOMParserSupportedType): Document;
+}
+
+declare var DOMParser: {
+ prototype: DOMParser;
+ new(): DOMParser;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint) */
+interface DOMPoint extends DOMPointReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/w) */
+ w: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/x) */
+ x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/y) */
+ y: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/z) */
+ z: number;
+}
+
+declare var DOMPoint: {
+ prototype: DOMPoint;
+ new(x?: number, y?: number, z?: number, w?: number): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */
+ fromPoint(other?: DOMPointInit): DOMPoint;
+};
+
+type SVGPoint = DOMPoint;
+declare var SVGPoint: typeof DOMPoint;
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly) */
+interface DOMPointReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/w) */
+ readonly w: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/x) */
+ readonly x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/y) */
+ readonly y: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/z) */
+ readonly z: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/matrixTransform) */
+ matrixTransform(matrix?: DOMMatrixInit): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/toJSON) */
+ toJSON(): any;
+}
+
+declare var DOMPointReadOnly: {
+ prototype: DOMPointReadOnly;
+ new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */
+ fromPoint(other?: DOMPointInit): DOMPointReadOnly;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad) */
+interface DOMQuad {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p1) */
+ readonly p1: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p2) */
+ readonly p2: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p3) */
+ readonly p3: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p4) */
+ readonly p4: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/getBounds) */
+ getBounds(): DOMRect;
+ toJSON(): any;
+}
+
+declare var DOMQuad: {
+ prototype: DOMQuad;
+ new(p1?: DOMPointInit, p2?: DOMPointInit, p3?: DOMPointInit, p4?: DOMPointInit): DOMQuad;
+ fromQuad(other?: DOMQuadInit): DOMQuad;
+ fromRect(other?: DOMRectInit): DOMQuad;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRect) */
+interface DOMRect extends DOMRectReadOnly {
+ height: number;
+ width: number;
+ x: number;
+ y: number;
+}
+
+declare var DOMRect: {
+ prototype: DOMRect;
+ new(x?: number, y?: number, width?: number, height?: number): DOMRect;
+ fromRect(other?: DOMRectInit): DOMRect;
+};
+
+type SVGRect = DOMRect;
+declare var SVGRect: typeof DOMRect;
+
+interface DOMRectList {
+ readonly length: number;
+ item(index: number): DOMRect | null;
+ [index: number]: DOMRect;
+}
+
+declare var DOMRectList: {
+ prototype: DOMRectList;
+ new(): DOMRectList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly) */
+interface DOMRectReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/bottom) */
+ readonly bottom: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/height) */
+ readonly height: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/left) */
+ readonly left: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/right) */
+ readonly right: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/top) */
+ readonly top: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/width) */
+ readonly width: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/x) */
+ readonly x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/y) */
+ readonly y: number;
+ toJSON(): any;
+}
+
+declare var DOMRectReadOnly: {
+ prototype: DOMRectReadOnly;
+ new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */
+ fromRect(other?: DOMRectInit): DOMRectReadOnly;
+};
+
+/**
+ * A type returned by some APIs which contains a list of DOMString (strings).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList)
+ */
+interface DOMStringList {
+ /**
+ * Returns the number of strings in strings.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/length)
+ */
+ readonly length: number;
+ /**
+ * Returns true if strings contains string, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/contains)
+ */
+ contains(string: string): boolean;
+ /**
+ * Returns the string with index index from strings.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/item)
+ */
+ item(index: number): string | null;
+ [index: number]: string;
+}
+
+declare var DOMStringList: {
+ prototype: DOMStringList;
+ new(): DOMStringList;
+};
+
+/**
+ * Used by the dataset HTML attribute to represent data for custom attributes added to elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringMap)
+ */
+interface DOMStringMap {
+ [name: string]: string | undefined;
+}
+
+declare var DOMStringMap: {
+ prototype: DOMStringMap;
+ new(): DOMStringMap;
+};
+
+/**
+ * A set of space-separated tokens. Such a set is returned by Element.classList, HTMLLinkElement.relList, HTMLAnchorElement.relList, HTMLAreaElement.relList, HTMLIframeElement.sandbox, or HTMLOutputElement.htmlFor. It is indexed beginning with 0 as with JavaScript Array objects. DOMTokenList is always case-sensitive.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList)
+ */
+interface DOMTokenList {
+ /**
+ * Returns the number of tokens.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/length)
+ */
+ readonly length: number;
+ /**
+ * Returns the associated set as string.
+ *
+ * Can be set, to change the associated attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/value)
+ */
+ value: string;
+ toString(): string;
+ /**
+ * Adds all arguments passed, except those already present.
+ *
+ * Throws a "SyntaxError" DOMException if one of the arguments is the empty string.
+ *
+ * Throws an "InvalidCharacterError" DOMException if one of the arguments contains any ASCII whitespace.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/add)
+ */
+ add(...tokens: string[]): void;
+ /**
+ * Returns true if token is present, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/contains)
+ */
+ contains(token: string): boolean;
+ /**
+ * Returns the token with index index.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/item)
+ */
+ item(index: number): string | null;
+ /**
+ * Removes arguments passed, if they are present.
+ *
+ * Throws a "SyntaxError" DOMException if one of the arguments is the empty string.
+ *
+ * Throws an "InvalidCharacterError" DOMException if one of the arguments contains any ASCII whitespace.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/remove)
+ */
+ remove(...tokens: string[]): void;
+ /**
+ * Replaces token with newToken.
+ *
+ * Returns true if token was replaced with newToken, and false otherwise.
+ *
+ * Throws a "SyntaxError" DOMException if one of the arguments is the empty string.
+ *
+ * Throws an "InvalidCharacterError" DOMException if one of the arguments contains any ASCII whitespace.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/replace)
+ */
+ replace(token: string, newToken: string): boolean;
+ /**
+ * Returns true if token is in the associated attribute's supported tokens. Returns false otherwise.
+ *
+ * Throws a TypeError if the associated attribute has no supported tokens defined.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/supports)
+ */
+ supports(token: string): boolean;
+ /**
+ * If force is not given, "toggles" token, removing it if it's present and adding it if it's not present. If force is true, adds token (same as add()). If force is false, removes token (same as remove()).
+ *
+ * Returns true if token is now present, and false otherwise.
+ *
+ * Throws a "SyntaxError" DOMException if token is empty.
+ *
+ * Throws an "InvalidCharacterError" DOMException if token contains any spaces.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMTokenList/toggle)
+ */
+ toggle(token: string, force?: boolean): boolean;
+ forEach(callbackfn: (value: string, key: number, parent: DOMTokenList) => void, thisArg?: any): void;
+ [index: number]: string;
+}
+
+declare var DOMTokenList: {
+ prototype: DOMTokenList;
+ new(): DOMTokenList;
+};
+
+/**
+ * Used to hold the data that is being dragged during a drag and drop operation. It may hold one or more data items, each of one or more data types. For more information about drag and drop, see HTML Drag and Drop API.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer)
+ */
+interface DataTransfer {
+ /**
+ * Returns the kind of operation that is currently selected. If the kind of operation isn't one of those that is allowed by the effectAllowed attribute, then the operation will fail.
+ *
+ * Can be set, to change the selected operation.
+ *
+ * The possible values are "none", "copy", "link", and "move".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/dropEffect)
+ */
+ dropEffect: "none" | "copy" | "link" | "move";
+ /**
+ * Returns the kinds of operations that are to be allowed.
+ *
+ * Can be set (during the dragstart event), to change the allowed operations.
+ *
+ * The possible values are "none", "copy", "copyLink", "copyMove", "link", "linkMove", "move", "all", and "uninitialized",
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/effectAllowed)
+ */
+ effectAllowed: "none" | "copy" | "copyLink" | "copyMove" | "link" | "linkMove" | "move" | "all" | "uninitialized";
+ /**
+ * Returns a FileList of the files being dragged, if any.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/files)
+ */
+ readonly files: FileList;
+ /**
+ * Returns a DataTransferItemList object, with the drag data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/items)
+ */
+ readonly items: DataTransferItemList;
+ /**
+ * Returns a frozen array listing the formats that were set in the dragstart event. In addition, if any files are being dragged, then one of the types will be the string "Files".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/types)
+ */
+ readonly types: ReadonlyArray<string>;
+ /**
+ * Removes the data of the specified formats. Removes all data if the argument is omitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/clearData)
+ */
+ clearData(format?: string): void;
+ /**
+ * Returns the specified data. If there is no such data, returns the empty string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/getData)
+ */
+ getData(format: string): string;
+ /**
+ * Adds the specified data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/setData)
+ */
+ setData(format: string, data: string): void;
+ /**
+ * Uses the given element to update the drag feedback, replacing any previously specified feedback.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransfer/setDragImage)
+ */
+ setDragImage(image: Element, x: number, y: number): void;
+}
+
+declare var DataTransfer: {
+ prototype: DataTransfer;
+ new(): DataTransfer;
+};
+
+/**
+ * One drag data item. During a drag operation, each drag event has a dataTransfer property which contains a list of drag data items. Each item in the list is a DataTransferItem object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem)
+ */
+interface DataTransferItem {
+ /**
+ * Returns the drag data item kind, one of: "string", "file".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/kind)
+ */
+ readonly kind: string;
+ /**
+ * Returns the drag data item type string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/type)
+ */
+ readonly type: string;
+ /**
+ * Returns a File object, if the drag data item kind is File.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/getAsFile)
+ */
+ getAsFile(): File | null;
+ /**
+ * Invokes the callback with the string data as the argument, if the drag data item kind is text.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/getAsString)
+ */
+ getAsString(callback: FunctionStringCallback | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItem/webkitGetAsEntry) */
+ webkitGetAsEntry(): FileSystemEntry | null;
+}
+
+declare var DataTransferItem: {
+ prototype: DataTransferItem;
+ new(): DataTransferItem;
+};
+
+/**
+ * A list of DataTransferItem objects representing items being dragged. During a drag operation, each DragEvent has a dataTransfer property and that property is a DataTransferItemList.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList)
+ */
+interface DataTransferItemList {
+ /**
+ * Returns the number of items in the drag data store.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/length)
+ */
+ readonly length: number;
+ /**
+ * Adds a new entry for the given data to the drag data store. If the data is plain text then a type string has to be provided also.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/add)
+ */
+ add(data: string, type: string): DataTransferItem | null;
+ add(data: File): DataTransferItem | null;
+ /**
+ * Removes all the entries in the drag data store.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/clear)
+ */
+ clear(): void;
+ /**
+ * Removes the indexth entry in the drag data store.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DataTransferItemList/remove)
+ */
+ remove(index: number): void;
+ [index: number]: DataTransferItem;
+}
+
+declare var DataTransferItemList: {
+ prototype: DataTransferItemList;
+ new(): DataTransferItemList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DecompressionStream) */
+interface DecompressionStream extends GenericTransformStream {
+}
+
+declare var DecompressionStream: {
+ prototype: DecompressionStream;
+ new(format: CompressionFormat): DecompressionStream;
+};
+
+/**
+ * A delay-line; an AudioNode audio-processing module that causes a delay between the arrival of an input data and its propagation to the output.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DelayNode)
+ */
+interface DelayNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DelayNode/delayTime) */
+ readonly delayTime: AudioParam;
+}
+
+declare var DelayNode: {
+ prototype: DelayNode;
+ new(context: BaseAudioContext, options?: DelayOptions): DelayNode;
+};
+
+/**
+ * The DeviceMotionEvent provides web developers with information about the speed of changes for the device's position and orientation.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent)
+ */
+interface DeviceMotionEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/acceleration) */
+ readonly acceleration: DeviceMotionEventAcceleration | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/accelerationIncludingGravity) */
+ readonly accelerationIncludingGravity: DeviceMotionEventAcceleration | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/interval) */
+ readonly interval: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEvent/rotationRate) */
+ readonly rotationRate: DeviceMotionEventRotationRate | null;
+}
+
+declare var DeviceMotionEvent: {
+ prototype: DeviceMotionEvent;
+ new(type: string, eventInitDict?: DeviceMotionEventInit): DeviceMotionEvent;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration)
+ */
+interface DeviceMotionEventAcceleration {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration/x) */
+ readonly x: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration/y) */
+ readonly y: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventAcceleration/z) */
+ readonly z: number | null;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate)
+ */
+interface DeviceMotionEventRotationRate {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate/alpha) */
+ readonly alpha: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate/beta) */
+ readonly beta: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceMotionEventRotationRate/gamma) */
+ readonly gamma: number | null;
+}
+
+/**
+ * The DeviceOrientationEvent provides web developers with information from the physical orientation of the device running the web page.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent)
+ */
+interface DeviceOrientationEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/absolute) */
+ readonly absolute: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/alpha) */
+ readonly alpha: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/beta) */
+ readonly beta: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DeviceOrientationEvent/gamma) */
+ readonly gamma: number | null;
+}
+
+declare var DeviceOrientationEvent: {
+ prototype: DeviceOrientationEvent;
+ new(type: string, eventInitDict?: DeviceOrientationEventInit): DeviceOrientationEvent;
+};
+
+interface DocumentEventMap extends GlobalEventHandlersEventMap {
+ "DOMContentLoaded": Event;
+ "fullscreenchange": Event;
+ "fullscreenerror": Event;
+ "pointerlockchange": Event;
+ "pointerlockerror": Event;
+ "readystatechange": Event;
+ "visibilitychange": Event;
+}
+
+/**
+ * Any web page loaded in the browser and serves as an entry point into the web page's content, which is the DOM tree.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document)
+ */
+interface Document extends Node, DocumentOrShadowRoot, FontFaceSource, GlobalEventHandlers, NonElementParentNode, ParentNode, XPathEvaluatorBase {
+ /**
+ * Sets or gets the URL for the current document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/URL)
+ */
+ readonly URL: string;
+ /**
+ * Sets or gets the color of all active links in the document.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/alinkColor)
+ */
+ alinkColor: string;
+ /**
+ * Returns a reference to the collection of elements contained by the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/all)
+ */
+ readonly all: HTMLAllCollection;
+ /**
+ * Retrieves a collection of all a objects that have a name and/or id property. Objects in this collection are in HTML source order.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/anchors)
+ */
+ readonly anchors: HTMLCollectionOf<HTMLAnchorElement>;
+ /**
+ * Retrieves a collection of all applet objects in the document.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/applets)
+ */
+ readonly applets: HTMLCollection;
+ /**
+ * Deprecated. Sets or retrieves a value that indicates the background color behind the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/bgColor)
+ */
+ bgColor: string;
+ /**
+ * Specifies the beginning and end of the document body.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/body)
+ */
+ body: HTMLElement;
+ /**
+ * Returns document's encoding.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)
+ */
+ readonly characterSet: string;
+ /**
+ * Gets or sets the character set used to encode the object.
+ * @deprecated This is a legacy alias of \`characterSet\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)
+ */
+ readonly charset: string;
+ /**
+ * Gets a value that indicates whether standards-compliant mode is switched on for the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/compatMode)
+ */
+ readonly compatMode: string;
+ /**
+ * Returns document's content type.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/contentType)
+ */
+ readonly contentType: string;
+ /**
+ * Returns the HTTP cookies that apply to the Document. If there are no cookies or cookies can't be applied to this resource, the empty string will be returned.
+ *
+ * Can be set, to add a new cookie to the element's set of HTTP cookies.
+ *
+ * If the contents are sandboxed into a unique origin (e.g. in an iframe with the sandbox attribute), a "SecurityError" DOMException will be thrown on getting and setting.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/cookie)
+ */
+ cookie: string;
+ /**
+ * Returns the script element, or the SVG script element, that is currently executing, as long as the element represents a classic script. In the case of reentrant script execution, returns the one that most recently started executing amongst those that have not yet finished executing.
+ *
+ * Returns null if the Document is not currently executing a script or SVG script element (e.g., because the running script is an event handler, or a timeout), or if the currently executing script or SVG script element represents a module script.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/currentScript)
+ */
+ readonly currentScript: HTMLOrSVGScriptElement | null;
+ /**
+ * Returns the Window object of the active document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/defaultView)
+ */
+ readonly defaultView: (WindowProxy & typeof globalThis) | null;
+ /**
+ * Sets or gets a value that indicates whether the document can be edited.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/designMode)
+ */
+ designMode: string;
+ /**
+ * Sets or retrieves a value that indicates the reading order of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/dir)
+ */
+ dir: string;
+ /**
+ * Gets an object representing the document type declaration associated with the current document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/doctype)
+ */
+ readonly doctype: DocumentType | null;
+ /**
+ * Gets a reference to the root node of the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/documentElement)
+ */
+ readonly documentElement: HTMLElement;
+ /**
+ * Returns document's URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/documentURI)
+ */
+ readonly documentURI: string;
+ /**
+ * Sets or gets the security domain of the document.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/domain)
+ */
+ domain: string;
+ /**
+ * Retrieves a collection of all embed objects in the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/embeds)
+ */
+ readonly embeds: HTMLCollectionOf<HTMLEmbedElement>;
+ /**
+ * Sets or gets the foreground (text) color of the document.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fgColor)
+ */
+ fgColor: string;
+ /**
+ * Retrieves a collection, in source order, of all form objects in the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/forms)
+ */
+ readonly forms: HTMLCollectionOf<HTMLFormElement>;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreen)
+ */
+ readonly fullscreen: boolean;
+ /**
+ * Returns true if document has the ability to display elements fullscreen and fullscreen is supported, or false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenEnabled)
+ */
+ readonly fullscreenEnabled: boolean;
+ /**
+ * Returns the head element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/head)
+ */
+ readonly head: HTMLHeadElement;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hidden) */
+ readonly hidden: boolean;
+ /**
+ * Retrieves a collection, in source order, of img objects in the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/images)
+ */
+ readonly images: HTMLCollectionOf<HTMLImageElement>;
+ /**
+ * Gets the implementation object of the current document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/implementation)
+ */
+ readonly implementation: DOMImplementation;
+ /**
+ * Returns the character encoding used to create the webpage that is loaded into the document object.
+ * @deprecated This is a legacy alias of \`characterSet\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/characterSet)
+ */
+ readonly inputEncoding: string;
+ /**
+ * Gets the date that the page was last modified, if the page supplies one.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/lastModified)
+ */
+ readonly lastModified: string;
+ /**
+ * Sets or gets the color of the document links.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/linkColor)
+ */
+ linkColor: string;
+ /**
+ * Retrieves a collection of all a objects that specify the href property and all area objects in the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/links)
+ */
+ readonly links: HTMLCollectionOf<HTMLAnchorElement | HTMLAreaElement>;
+ /**
+ * Contains information about the current URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/location)
+ */
+ get location(): Location;
+ set location(href: string | Location);
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenchange_event) */
+ onfullscreenchange: ((this: Document, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenerror_event) */
+ onfullscreenerror: ((this: Document, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerlockchange_event) */
+ onpointerlockchange: ((this: Document, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerlockerror_event) */
+ onpointerlockerror: ((this: Document, ev: Event) => any) | null;
+ /**
+ * Fires when the state of the object has changed.
+ * @param ev The event
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/readystatechange_event)
+ */
+ onreadystatechange: ((this: Document, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/visibilitychange_event) */
+ onvisibilitychange: ((this: Document, ev: Event) => any) | null;
+ readonly ownerDocument: null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pictureInPictureEnabled) */
+ readonly pictureInPictureEnabled: boolean;
+ /**
+ * Return an HTMLCollection of the embed elements in the Document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/plugins)
+ */
+ readonly plugins: HTMLCollectionOf<HTMLEmbedElement>;
+ /**
+ * Retrieves a value that indicates the current state of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/readyState)
+ */
+ readonly readyState: DocumentReadyState;
+ /**
+ * Gets the URL of the location that referred the user to the current page.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/referrer)
+ */
+ readonly referrer: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/rootElement)
+ */
+ readonly rootElement: SVGSVGElement | null;
+ /**
+ * Retrieves a collection of all script objects in the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scripts)
+ */
+ readonly scripts: HTMLCollectionOf<HTMLScriptElement>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollingElement) */
+ readonly scrollingElement: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/timeline) */
+ readonly timeline: DocumentTimeline;
+ /**
+ * Contains the title of the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/title)
+ */
+ title: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/visibilityState) */
+ readonly visibilityState: DocumentVisibilityState;
+ /**
+ * Sets or gets the color of the links that the user has visited.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/vlinkColor)
+ */
+ vlinkColor: string;
+ /**
+ * Moves node from another document and returns it.
+ *
+ * If node is a document, throws a "NotSupportedError" DOMException or, if node is a shadow root, throws a "HierarchyRequestError" DOMException.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/adoptNode)
+ */
+ adoptNode<T extends Node>(node: T): T;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/captureEvents)
+ */
+ captureEvents(): void;
+ /** @deprecated */
+ caretRangeFromPoint(x: number, y: number): Range | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/clear)
+ */
+ clear(): void;
+ /**
+ * Closes an output stream and forces the sent data to display.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/close)
+ */
+ close(): void;
+ /**
+ * Creates an attribute object with a specified name.
+ * @param name String that sets the attribute object's name.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createAttribute)
+ */
+ createAttribute(localName: string): Attr;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createAttributeNS) */
+ createAttributeNS(namespace: string | null, qualifiedName: string): Attr;
+ /**
+ * Returns a CDATASection node whose data is data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createCDATASection)
+ */
+ createCDATASection(data: string): CDATASection;
+ /**
+ * Creates a comment object with the specified data.
+ * @param data Sets the comment object's data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createComment)
+ */
+ createComment(data: string): Comment;
+ /**
+ * Creates a new document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createDocumentFragment)
+ */
+ createDocumentFragment(): DocumentFragment;
+ /**
+ * Creates an instance of the element for the specified tag.
+ * @param tagName The name of an element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createElement)
+ */
+ createElement<K extends keyof HTMLElementTagNameMap>(tagName: K, options?: ElementCreationOptions): HTMLElementTagNameMap[K];
+ /** @deprecated */
+ createElement<K extends keyof HTMLElementDeprecatedTagNameMap>(tagName: K, options?: ElementCreationOptions): HTMLElementDeprecatedTagNameMap[K];
+ createElement(tagName: string, options?: ElementCreationOptions): HTMLElement;
+ /**
+ * Returns an element with namespace namespace. Its namespace prefix will be everything before ":" (U+003E) in qualifiedName or null. Its local name will be everything after ":" (U+003E) in qualifiedName or qualifiedName.
+ *
+ * If localName does not match the Name production an "InvalidCharacterError" DOMException will be thrown.
+ *
+ * If one of the following conditions is true a "NamespaceError" DOMException will be thrown:
+ *
+ * localName does not match the QName production.
+ * Namespace prefix is not null and namespace is the empty string.
+ * Namespace prefix is "xml" and namespace is not the XML namespace.
+ * qualifiedName or namespace prefix is "xmlns" and namespace is not the XMLNS namespace.
+ * namespace is the XMLNS namespace and neither qualifiedName nor namespace prefix is "xmlns".
+ *
+ * When supplied, options's is can be used to create a customized built-in element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createElementNS)
+ */
+ createElementNS(namespaceURI: "http://www.w3.org/1999/xhtml", qualifiedName: string): HTMLElement;
+ createElementNS<K extends keyof SVGElementTagNameMap>(namespaceURI: "http://www.w3.org/2000/svg", qualifiedName: K): SVGElementTagNameMap[K];
+ createElementNS(namespaceURI: "http://www.w3.org/2000/svg", qualifiedName: string): SVGElement;
+ createElementNS<K extends keyof MathMLElementTagNameMap>(namespaceURI: "http://www.w3.org/1998/Math/MathML", qualifiedName: K): MathMLElementTagNameMap[K];
+ createElementNS(namespaceURI: "http://www.w3.org/1998/Math/MathML", qualifiedName: string): MathMLElement;
+ createElementNS(namespaceURI: string | null, qualifiedName: string, options?: ElementCreationOptions): Element;
+ createElementNS(namespace: string | null, qualifiedName: string, options?: string | ElementCreationOptions): Element;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createEvent) */
+ createEvent(eventInterface: "AnimationEvent"): AnimationEvent;
+ createEvent(eventInterface: "AnimationPlaybackEvent"): AnimationPlaybackEvent;
+ createEvent(eventInterface: "AudioProcessingEvent"): AudioProcessingEvent;
+ createEvent(eventInterface: "BeforeUnloadEvent"): BeforeUnloadEvent;
+ createEvent(eventInterface: "BlobEvent"): BlobEvent;
+ createEvent(eventInterface: "ClipboardEvent"): ClipboardEvent;
+ createEvent(eventInterface: "CloseEvent"): CloseEvent;
+ createEvent(eventInterface: "CompositionEvent"): CompositionEvent;
+ createEvent(eventInterface: "CustomEvent"): CustomEvent;
+ createEvent(eventInterface: "DeviceMotionEvent"): DeviceMotionEvent;
+ createEvent(eventInterface: "DeviceOrientationEvent"): DeviceOrientationEvent;
+ createEvent(eventInterface: "DragEvent"): DragEvent;
+ createEvent(eventInterface: "ErrorEvent"): ErrorEvent;
+ createEvent(eventInterface: "Event"): Event;
+ createEvent(eventInterface: "Events"): Event;
+ createEvent(eventInterface: "FocusEvent"): FocusEvent;
+ createEvent(eventInterface: "FontFaceSetLoadEvent"): FontFaceSetLoadEvent;
+ createEvent(eventInterface: "FormDataEvent"): FormDataEvent;
+ createEvent(eventInterface: "GamepadEvent"): GamepadEvent;
+ createEvent(eventInterface: "HashChangeEvent"): HashChangeEvent;
+ createEvent(eventInterface: "IDBVersionChangeEvent"): IDBVersionChangeEvent;
+ createEvent(eventInterface: "InputEvent"): InputEvent;
+ createEvent(eventInterface: "KeyboardEvent"): KeyboardEvent;
+ createEvent(eventInterface: "MIDIConnectionEvent"): MIDIConnectionEvent;
+ createEvent(eventInterface: "MIDIMessageEvent"): MIDIMessageEvent;
+ createEvent(eventInterface: "MediaEncryptedEvent"): MediaEncryptedEvent;
+ createEvent(eventInterface: "MediaKeyMessageEvent"): MediaKeyMessageEvent;
+ createEvent(eventInterface: "MediaQueryListEvent"): MediaQueryListEvent;
+ createEvent(eventInterface: "MediaStreamTrackEvent"): MediaStreamTrackEvent;
+ createEvent(eventInterface: "MessageEvent"): MessageEvent;
+ createEvent(eventInterface: "MouseEvent"): MouseEvent;
+ createEvent(eventInterface: "MouseEvents"): MouseEvent;
+ createEvent(eventInterface: "MutationEvent"): MutationEvent;
+ createEvent(eventInterface: "MutationEvents"): MutationEvent;
+ createEvent(eventInterface: "OfflineAudioCompletionEvent"): OfflineAudioCompletionEvent;
+ createEvent(eventInterface: "PageTransitionEvent"): PageTransitionEvent;
+ createEvent(eventInterface: "PaymentMethodChangeEvent"): PaymentMethodChangeEvent;
+ createEvent(eventInterface: "PaymentRequestUpdateEvent"): PaymentRequestUpdateEvent;
+ createEvent(eventInterface: "PictureInPictureEvent"): PictureInPictureEvent;
+ createEvent(eventInterface: "PointerEvent"): PointerEvent;
+ createEvent(eventInterface: "PopStateEvent"): PopStateEvent;
+ createEvent(eventInterface: "ProgressEvent"): ProgressEvent;
+ createEvent(eventInterface: "PromiseRejectionEvent"): PromiseRejectionEvent;
+ createEvent(eventInterface: "RTCDTMFToneChangeEvent"): RTCDTMFToneChangeEvent;
+ createEvent(eventInterface: "RTCDataChannelEvent"): RTCDataChannelEvent;
+ createEvent(eventInterface: "RTCErrorEvent"): RTCErrorEvent;
+ createEvent(eventInterface: "RTCPeerConnectionIceErrorEvent"): RTCPeerConnectionIceErrorEvent;
+ createEvent(eventInterface: "RTCPeerConnectionIceEvent"): RTCPeerConnectionIceEvent;
+ createEvent(eventInterface: "RTCTrackEvent"): RTCTrackEvent;
+ createEvent(eventInterface: "SecurityPolicyViolationEvent"): SecurityPolicyViolationEvent;
+ createEvent(eventInterface: "SpeechSynthesisErrorEvent"): SpeechSynthesisErrorEvent;
+ createEvent(eventInterface: "SpeechSynthesisEvent"): SpeechSynthesisEvent;
+ createEvent(eventInterface: "StorageEvent"): StorageEvent;
+ createEvent(eventInterface: "SubmitEvent"): SubmitEvent;
+ createEvent(eventInterface: "ToggleEvent"): ToggleEvent;
+ createEvent(eventInterface: "TouchEvent"): TouchEvent;
+ createEvent(eventInterface: "TrackEvent"): TrackEvent;
+ createEvent(eventInterface: "TransitionEvent"): TransitionEvent;
+ createEvent(eventInterface: "UIEvent"): UIEvent;
+ createEvent(eventInterface: "UIEvents"): UIEvent;
+ createEvent(eventInterface: "WebGLContextEvent"): WebGLContextEvent;
+ createEvent(eventInterface: "WheelEvent"): WheelEvent;
+ createEvent(eventInterface: string): Event;
+ /**
+ * Creates a NodeIterator object that you can use to traverse filtered lists of nodes or elements in a document.
+ * @param root The root element or node to start traversing on.
+ * @param whatToShow The type of nodes or elements to appear in the node list
+ * @param filter A custom NodeFilter function to use. For more information, see filter. Use null for no filter.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createNodeIterator)
+ */
+ createNodeIterator(root: Node, whatToShow?: number, filter?: NodeFilter | null): NodeIterator;
+ /**
+ * Returns a ProcessingInstruction node whose target is target and data is data. If target does not match the Name production an "InvalidCharacterError" DOMException will be thrown. If data contains "?>" an "InvalidCharacterError" DOMException will be thrown.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createProcessingInstruction)
+ */
+ createProcessingInstruction(target: string, data: string): ProcessingInstruction;
+ /**
+ * Returns an empty range object that has both of its boundary points positioned at the beginning of the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createRange)
+ */
+ createRange(): Range;
+ /**
+ * Creates a text string from the specified value.
+ * @param data String that specifies the nodeValue property of the text node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTextNode)
+ */
+ createTextNode(data: string): Text;
+ /**
+ * Creates a TreeWalker object that you can use to traverse filtered lists of nodes or elements in a document.
+ * @param root The root element or node to start traversing on.
+ * @param whatToShow The type of nodes or elements to appear in the node list. For more information, see whatToShow.
+ * @param filter A custom NodeFilter function to use.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createTreeWalker)
+ */
+ createTreeWalker(root: Node, whatToShow?: number, filter?: NodeFilter | null): TreeWalker;
+ /**
+ * Executes a command on the current document, current selection, or the given range.
+ * @param commandId String that specifies the command to execute. This command can be any of the command identifiers that can be executed in script.
+ * @param showUI Display the user interface, defaults to false.
+ * @param value Value to assign.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/execCommand)
+ */
+ execCommand(commandId: string, showUI?: boolean, value?: string): boolean;
+ /**
+ * Stops document's fullscreen element from being displayed fullscreen and resolves promise when done.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitFullscreen)
+ */
+ exitFullscreen(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitPictureInPicture) */
+ exitPictureInPicture(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/exitPointerLock) */
+ exitPointerLock(): void;
+ /**
+ * Returns a reference to the first object with the specified value of the ID attribute.
+ * @param elementId String that specifies the ID value.
+ */
+ getElementById(elementId: string): HTMLElement | null;
+ /**
+ * Returns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByClassName)
+ */
+ getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;
+ /**
+ * Gets a collection of objects based on the value of the NAME or ID attribute.
+ * @param elementName Gets a collection of objects based on the value of the NAME or ID attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByName)
+ */
+ getElementsByName(elementName: string): NodeListOf<HTMLElement>;
+ /**
+ * Retrieves a collection of objects based on the specified element name.
+ * @param name Specifies the name of an element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByTagName)
+ */
+ getElementsByTagName<K extends keyof HTMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;
+ getElementsByTagName<K extends keyof SVGElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;
+ getElementsByTagName<K extends keyof MathMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;
+ /** @deprecated */
+ getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;
+ getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;
+ /**
+ * If namespace and localName are "*" returns a HTMLCollection of all descendant elements.
+ *
+ * If only namespace is "*" returns a HTMLCollection of all descendant elements whose local name is localName.
+ *
+ * If only localName is "*" returns a HTMLCollection of all descendant elements whose namespace is namespace.
+ *
+ * Otherwise, returns a HTMLCollection of all descendant elements whose namespace is namespace and local name is localName.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementsByTagNameNS)
+ */
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1998/Math/MathML", localName: string): HTMLCollectionOf<MathMLElement>;
+ getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollectionOf<Element>;
+ /**
+ * Returns an object representing the current selection of the document that is loaded into the object displaying a webpage.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getSelection)
+ */
+ getSelection(): Selection | null;
+ /**
+ * Gets a value indicating whether the object currently has focus.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hasFocus)
+ */
+ hasFocus(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/hasStorageAccess) */
+ hasStorageAccess(): Promise<boolean>;
+ /**
+ * Returns a copy of node. If deep is true, the copy also includes the node's descendants.
+ *
+ * If node is a document or a shadow root, throws a "NotSupportedError" DOMException.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/importNode)
+ */
+ importNode<T extends Node>(node: T, deep?: boolean): T;
+ /**
+ * Opens a new window and loads a document specified by a given URL. Also, opens a new window that uses the url parameter and the name parameter to collect the output of the write method and the writeln method.
+ * @param url Specifies a MIME type for the document.
+ * @param name Specifies the name of the window. This name is used as the value for the TARGET attribute on a form or an anchor element.
+ * @param features Contains a list of items separated by commas. Each item consists of an option and a value, separated by an equals sign (for example, "fullscreen=yes, toolbar=yes"). The following values are supported.
+ * @param replace Specifies whether the existing entry for the document is replaced in the history list.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/open)
+ */
+ open(unused1?: string, unused2?: string): Document;
+ open(url: string | URL, name: string, features: string): WindowProxy | null;
+ /**
+ * Returns a Boolean value that indicates whether a specified command can be successfully executed using execCommand, given the current state of the document.
+ * @param commandId Specifies a command identifier.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandEnabled)
+ */
+ queryCommandEnabled(commandId: string): boolean;
+ /**
+ * Returns a Boolean value that indicates whether the specified command is in the indeterminate state.
+ * @param commandId String that specifies a command identifier.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandIndeterm)
+ */
+ queryCommandIndeterm(commandId: string): boolean;
+ /**
+ * Returns a Boolean value that indicates the current state of the command.
+ * @param commandId String that specifies a command identifier.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandState)
+ */
+ queryCommandState(commandId: string): boolean;
+ /**
+ * Returns a Boolean value that indicates whether the current command is supported on the current range.
+ * @param commandId Specifies a command identifier.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandSupported)
+ */
+ queryCommandSupported(commandId: string): boolean;
+ /**
+ * Returns the current value of the document, range, or current selection for the given command.
+ * @param commandId String that specifies a command identifier.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/queryCommandValue)
+ */
+ queryCommandValue(commandId: string): string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/releaseEvents)
+ */
+ releaseEvents(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/requestStorageAccess) */
+ requestStorageAccess(): Promise<void>;
+ /**
+ * Writes one or more HTML expressions to a document in the specified window.
+ * @param content Specifies the text and HTML tags to write.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/write)
+ */
+ write(...text: string[]): void;
+ /**
+ * Writes one or more HTML expressions, followed by a carriage return, to a document in the specified window.
+ * @param content The text and HTML tags to write.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/writeln)
+ */
+ writeln(...text: string[]): void;
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Document: {
+ prototype: Document;
+ new(): Document;
+};
+
+/**
+ * A minimal document object that has no parent. It is used as a lightweight version of Document that stores a segment of a document structure comprised of nodes just like a standard document. The key difference is that because the document fragment isn't part of the active document tree structure, changes made to the fragment don't affect the document, cause reflow, or incur any performance impact that can occur when changes are made.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentFragment)
+ */
+interface DocumentFragment extends Node, NonElementParentNode, ParentNode {
+ readonly ownerDocument: Document;
+ getElementById(elementId: string): HTMLElement | null;
+}
+
+declare var DocumentFragment: {
+ prototype: DocumentFragment;
+ new(): DocumentFragment;
+};
+
+interface DocumentOrShadowRoot {
+ /**
+ * Returns the deepest element in the document through which or to which key events are being routed. This is, roughly speaking, the focused element in the document.
+ *
+ * For the purposes of this API, when a child browsing context is focused, its container is focused in the parent browsing context. For example, if the user moves the focus to a text control in an iframe, the iframe is the element returned by the activeElement API in the iframe's node document.
+ *
+ * Similarly, when the focused element is in a different node tree than documentOrShadowRoot, the element returned will be the host that's located in the same node tree as documentOrShadowRoot if documentOrShadowRoot is a shadow-including inclusive ancestor of the focused element, and null if not.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/activeElement)
+ */
+ readonly activeElement: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/adoptedStyleSheets) */
+ adoptedStyleSheets: CSSStyleSheet[];
+ /**
+ * Returns document's fullscreen element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fullscreenElement)
+ */
+ readonly fullscreenElement: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pictureInPictureElement) */
+ readonly pictureInPictureElement: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/pointerLockElement) */
+ readonly pointerLockElement: Element | null;
+ /**
+ * Retrieves a collection of styleSheet objects representing the style sheets that correspond to each instance of a link or style object in the document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/styleSheets)
+ */
+ readonly styleSheets: StyleSheetList;
+ /**
+ * Returns the element for the specified x coordinate and the specified y coordinate.
+ * @param x The x-offset
+ * @param y The y-offset
+ */
+ elementFromPoint(x: number, y: number): Element | null;
+ elementsFromPoint(x: number, y: number): Element[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getAnimations) */
+ getAnimations(): Animation[];
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentTimeline) */
+interface DocumentTimeline extends AnimationTimeline {
+}
+
+declare var DocumentTimeline: {
+ prototype: DocumentTimeline;
+ new(options?: DocumentTimelineOptions): DocumentTimeline;
+};
+
+/**
+ * A Node containing a doctype.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType)
+ */
+interface DocumentType extends Node, ChildNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/name) */
+ readonly name: string;
+ readonly ownerDocument: Document;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/publicId) */
+ readonly publicId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DocumentType/systemId) */
+ readonly systemId: string;
+}
+
+declare var DocumentType: {
+ prototype: DocumentType;
+ new(): DocumentType;
+};
+
+/**
+ * A DOM event that represents a drag and drop interaction. The user initiates a drag by placing a pointer device (such as a mouse) on the touch surface and then dragging the pointer to a new location (such as another DOM element). Applications are free to interpret a drag and drop interaction in an application-specific way.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DragEvent)
+ */
+interface DragEvent extends MouseEvent {
+ /**
+ * Returns the DataTransfer object for the event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DragEvent/dataTransfer)
+ */
+ readonly dataTransfer: DataTransfer | null;
+}
+
+declare var DragEvent: {
+ prototype: DragEvent;
+ new(type: string, eventInitDict?: DragEventInit): DragEvent;
+};
+
+/**
+ * Inherits properties from its parent, AudioNode.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode)
+ */
+interface DynamicsCompressorNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/attack) */
+ readonly attack: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/knee) */
+ readonly knee: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/ratio) */
+ readonly ratio: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/reduction) */
+ readonly reduction: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/release) */
+ readonly release: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DynamicsCompressorNode/threshold) */
+ readonly threshold: AudioParam;
+}
+
+declare var DynamicsCompressorNode: {
+ prototype: DynamicsCompressorNode;
+ new(context: BaseAudioContext, options?: DynamicsCompressorOptions): DynamicsCompressorNode;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_blend_minmax) */
+interface EXT_blend_minmax {
+ readonly MIN_EXT: 0x8007;
+ readonly MAX_EXT: 0x8008;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_float) */
+interface EXT_color_buffer_float {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_half_float) */
+interface EXT_color_buffer_half_float {
+ readonly RGBA16F_EXT: 0x881A;
+ readonly RGB16F_EXT: 0x881B;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT: 0x8211;
+ readonly UNSIGNED_NORMALIZED_EXT: 0x8C17;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_float_blend) */
+interface EXT_float_blend {
+}
+
+/**
+ * The EXT_frag_depth extension is part of the WebGL API and enables to set a depth value of a fragment from within the fragment shader.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_frag_depth)
+ */
+interface EXT_frag_depth {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_sRGB) */
+interface EXT_sRGB {
+ readonly SRGB_EXT: 0x8C40;
+ readonly SRGB_ALPHA_EXT: 0x8C42;
+ readonly SRGB8_ALPHA8_EXT: 0x8C43;
+ readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT: 0x8210;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_shader_texture_lod) */
+interface EXT_shader_texture_lod {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_bptc) */
+interface EXT_texture_compression_bptc {
+ readonly COMPRESSED_RGBA_BPTC_UNORM_EXT: 0x8E8C;
+ readonly COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT: 0x8E8D;
+ readonly COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT: 0x8E8E;
+ readonly COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT: 0x8E8F;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_rgtc) */
+interface EXT_texture_compression_rgtc {
+ readonly COMPRESSED_RED_RGTC1_EXT: 0x8DBB;
+ readonly COMPRESSED_SIGNED_RED_RGTC1_EXT: 0x8DBC;
+ readonly COMPRESSED_RED_GREEN_RGTC2_EXT: 0x8DBD;
+ readonly COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 0x8DBE;
+}
+
+/**
+ * The EXT_texture_filter_anisotropic extension is part of the WebGL API and exposes two constants for anisotropic filtering (AF).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_filter_anisotropic)
+ */
+interface EXT_texture_filter_anisotropic {
+ readonly TEXTURE_MAX_ANISOTROPY_EXT: 0x84FE;
+ readonly MAX_TEXTURE_MAX_ANISOTROPY_EXT: 0x84FF;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_norm16) */
+interface EXT_texture_norm16 {
+ readonly R16_EXT: 0x822A;
+ readonly RG16_EXT: 0x822C;
+ readonly RGB16_EXT: 0x8054;
+ readonly RGBA16_EXT: 0x805B;
+ readonly R16_SNORM_EXT: 0x8F98;
+ readonly RG16_SNORM_EXT: 0x8F99;
+ readonly RGB16_SNORM_EXT: 0x8F9A;
+ readonly RGBA16_SNORM_EXT: 0x8F9B;
+}
+
+interface ElementEventMap {
+ "fullscreenchange": Event;
+ "fullscreenerror": Event;
+}
+
+/**
+ * Element is the most general base class from which all objects in a Document inherit. It only has methods and properties common to all kinds of elements. More specific classes inherit from Element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element)
+ */
+interface Element extends Node, ARIAMixin, Animatable, ChildNode, InnerHTML, NonDocumentTypeChildNode, ParentNode, Slottable {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/attributes) */
+ readonly attributes: NamedNodeMap;
+ /**
+ * Allows for manipulation of element's class content attribute as a set of whitespace-separated tokens through a DOMTokenList object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/classList)
+ */
+ readonly classList: DOMTokenList;
+ /**
+ * Returns the value of element's class content attribute. Can be set to change it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/className)
+ */
+ className: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientHeight) */
+ readonly clientHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientLeft) */
+ readonly clientLeft: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientTop) */
+ readonly clientTop: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/clientWidth) */
+ readonly clientWidth: number;
+ /**
+ * Returns the value of element's id content attribute. Can be set to change it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/id)
+ */
+ id: string;
+ /**
+ * Returns the local name.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/localName)
+ */
+ readonly localName: string;
+ /**
+ * Returns the namespace.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/namespaceURI)
+ */
+ readonly namespaceURI: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenchange_event) */
+ onfullscreenchange: ((this: Element, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/fullscreenerror_event) */
+ onfullscreenerror: ((this: Element, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/outerHTML) */
+ outerHTML: string;
+ readonly ownerDocument: Document;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/part) */
+ readonly part: DOMTokenList;
+ /**
+ * Returns the namespace prefix.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/prefix)
+ */
+ readonly prefix: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollHeight) */
+ readonly scrollHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollLeft) */
+ scrollLeft: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollTop) */
+ scrollTop: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollWidth) */
+ readonly scrollWidth: number;
+ /**
+ * Returns element's shadow root, if any, and if shadow root's mode is "open", and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/shadowRoot)
+ */
+ readonly shadowRoot: ShadowRoot | null;
+ /**
+ * Returns the value of element's slot content attribute. Can be set to change it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/slot)
+ */
+ slot: string;
+ /**
+ * Returns the HTML-uppercased qualified name.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/tagName)
+ */
+ readonly tagName: string;
+ /**
+ * Creates a shadow root for element and returns it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/attachShadow)
+ */
+ attachShadow(init: ShadowRootInit): ShadowRoot;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/checkVisibility) */
+ checkVisibility(options?: CheckVisibilityOptions): boolean;
+ /**
+ * Returns the first (starting at element) inclusive ancestor that matches selectors, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/closest)
+ */
+ closest<K extends keyof HTMLElementTagNameMap>(selector: K): HTMLElementTagNameMap[K] | null;
+ closest<K extends keyof SVGElementTagNameMap>(selector: K): SVGElementTagNameMap[K] | null;
+ closest<K extends keyof MathMLElementTagNameMap>(selector: K): MathMLElementTagNameMap[K] | null;
+ closest<E extends Element = Element>(selectors: string): E | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/computedStyleMap) */
+ computedStyleMap(): StylePropertyMapReadOnly;
+ /**
+ * Returns element's first attribute whose qualified name is qualifiedName, and null if there is no such attribute otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttribute)
+ */
+ getAttribute(qualifiedName: string): string | null;
+ /**
+ * Returns element's attribute whose namespace is namespace and local name is localName, and null if there is no such attribute otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNS)
+ */
+ getAttributeNS(namespace: string | null, localName: string): string | null;
+ /**
+ * Returns the qualified names of all element's attributes. Can contain duplicates.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNames)
+ */
+ getAttributeNames(): string[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNode) */
+ getAttributeNode(qualifiedName: string): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getAttributeNodeNS) */
+ getAttributeNodeNS(namespace: string | null, localName: string): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getBoundingClientRect) */
+ getBoundingClientRect(): DOMRect;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getClientRects) */
+ getClientRects(): DOMRectList;
+ /**
+ * Returns a HTMLCollection of the elements in the object on which the method was invoked (a document or an element) that have all the classes given by classNames. The classNames argument is interpreted as a space-separated list of classes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByClassName)
+ */
+ getElementsByClassName(classNames: string): HTMLCollectionOf<Element>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByTagName) */
+ getElementsByTagName<K extends keyof HTMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementTagNameMap[K]>;
+ getElementsByTagName<K extends keyof SVGElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<SVGElementTagNameMap[K]>;
+ getElementsByTagName<K extends keyof MathMLElementTagNameMap>(qualifiedName: K): HTMLCollectionOf<MathMLElementTagNameMap[K]>;
+ /** @deprecated */
+ getElementsByTagName<K extends keyof HTMLElementDeprecatedTagNameMap>(qualifiedName: K): HTMLCollectionOf<HTMLElementDeprecatedTagNameMap[K]>;
+ getElementsByTagName(qualifiedName: string): HTMLCollectionOf<Element>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/getElementsByTagNameNS) */
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1999/xhtml", localName: string): HTMLCollectionOf<HTMLElement>;
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/2000/svg", localName: string): HTMLCollectionOf<SVGElement>;
+ getElementsByTagNameNS(namespaceURI: "http://www.w3.org/1998/Math/MathML", localName: string): HTMLCollectionOf<MathMLElement>;
+ getElementsByTagNameNS(namespace: string | null, localName: string): HTMLCollectionOf<Element>;
+ /**
+ * Returns true if element has an attribute whose qualified name is qualifiedName, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttribute)
+ */
+ hasAttribute(qualifiedName: string): boolean;
+ /**
+ * Returns true if element has an attribute whose namespace is namespace and local name is localName.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttributeNS)
+ */
+ hasAttributeNS(namespace: string | null, localName: string): boolean;
+ /**
+ * Returns true if element has attributes, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasAttributes)
+ */
+ hasAttributes(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/hasPointerCapture) */
+ hasPointerCapture(pointerId: number): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentElement) */
+ insertAdjacentElement(where: InsertPosition, element: Element): Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentHTML) */
+ insertAdjacentHTML(position: InsertPosition, text: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/insertAdjacentText) */
+ insertAdjacentText(where: InsertPosition, data: string): void;
+ /**
+ * Returns true if matching selectors against element's root yields element, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/matches)
+ */
+ matches(selectors: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture) */
+ releasePointerCapture(pointerId: number): void;
+ /**
+ * Removes element's first attribute whose qualified name is qualifiedName.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttribute)
+ */
+ removeAttribute(qualifiedName: string): void;
+ /**
+ * Removes element's attribute whose namespace is namespace and local name is localName.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttributeNS)
+ */
+ removeAttributeNS(namespace: string | null, localName: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/removeAttributeNode) */
+ removeAttributeNode(attr: Attr): Attr;
+ /**
+ * Displays element fullscreen and resolves promise when done.
+ *
+ * When supplied, options's navigationUI member indicates whether showing navigation UI while in fullscreen is preferred or not. If set to "show", navigation simplicity is preferred over screen space, and if set to "hide", more screen space is preferred. User agents are always free to honor user preference over the application's. The default value "auto" indicates no application preference.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/requestFullscreen)
+ */
+ requestFullscreen(options?: FullscreenOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/requestPointerLock) */
+ requestPointerLock(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scroll) */
+ scroll(options?: ScrollToOptions): void;
+ scroll(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollBy) */
+ scrollBy(options?: ScrollToOptions): void;
+ scrollBy(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollIntoView) */
+ scrollIntoView(arg?: boolean | ScrollIntoViewOptions): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/scrollTo) */
+ scrollTo(options?: ScrollToOptions): void;
+ scrollTo(x: number, y: number): void;
+ /**
+ * Sets the value of element's first attribute whose qualified name is qualifiedName to value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttribute)
+ */
+ setAttribute(qualifiedName: string, value: string): void;
+ /**
+ * Sets the value of element's attribute whose namespace is namespace and local name is localName to value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNS)
+ */
+ setAttributeNS(namespace: string | null, qualifiedName: string, value: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNode) */
+ setAttributeNode(attr: Attr): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setAttributeNodeNS) */
+ setAttributeNodeNS(attr: Attr): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/setPointerCapture) */
+ setPointerCapture(pointerId: number): void;
+ /**
+ * If force is not given, "toggles" qualifiedName, removing it if it is present and adding it if it is not present. If force is true, adds qualifiedName. If force is false, removes qualifiedName.
+ *
+ * Returns true if qualifiedName is now present, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/toggleAttribute)
+ */
+ toggleAttribute(qualifiedName: string, force?: boolean): boolean;
+ /**
+ * @deprecated This is a legacy alias of \`matches\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/matches)
+ */
+ webkitMatchesSelector(selectors: string): boolean;
+ addEventListener<K extends keyof ElementEventMap>(type: K, listener: (this: Element, ev: ElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ElementEventMap>(type: K, listener: (this: Element, ev: ElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Element: {
+ prototype: Element;
+ new(): Element;
+};
+
+interface ElementCSSInlineStyle {
+ readonly attributeStyleMap: StylePropertyMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/style) */
+ readonly style: CSSStyleDeclaration;
+}
+
+interface ElementContentEditable {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/contentEditable) */
+ contentEditable: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/enterKeyHint) */
+ enterKeyHint: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/inputMode) */
+ inputMode: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/isContentEditable) */
+ readonly isContentEditable: boolean;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals) */
+interface ElementInternals extends ARIAMixin {
+ /**
+ * Returns the form owner of internals's target element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/form)
+ */
+ readonly form: HTMLFormElement | null;
+ /**
+ * Returns a NodeList of all the label elements that internals's target element is associated with.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/labels)
+ */
+ readonly labels: NodeList;
+ /**
+ * Returns the ShadowRoot for internals's target element, if the target element is a shadow host, or null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/shadowRoot)
+ */
+ readonly shadowRoot: ShadowRoot | null;
+ /**
+ * Returns the error message that would be shown to the user if internals's target element was to be checked for validity.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/validationMessage)
+ */
+ readonly validationMessage: string;
+ /**
+ * Returns the ValidityState object for internals's target element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/validity)
+ */
+ readonly validity: ValidityState;
+ /**
+ * Returns true if internals's target element will be validated when the form is submitted; false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/willValidate)
+ */
+ readonly willValidate: boolean;
+ /**
+ * Returns true if internals's target element has no validity problems; false otherwise. Fires an invalid event at the element in the latter case.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/checkValidity)
+ */
+ checkValidity(): boolean;
+ /**
+ * Returns true if internals's target element has no validity problems; otherwise, returns false, fires an invalid event at the element, and (if the event isn't canceled) reports the problem to the user.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/reportValidity)
+ */
+ reportValidity(): boolean;
+ /**
+ * Sets both the state and submission value of internals's target element to value.
+ *
+ * If value is null, the element won't participate in form submission.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/setFormValue)
+ */
+ setFormValue(value: File | string | FormData | null, state?: File | string | FormData | null): void;
+ /**
+ * Marks internals's target element as suffering from the constraints indicated by the flags argument, and sets the element's validation message to message. If anchor is specified, the user agent might use it to indicate problems with the constraints of internals's target element when the form owner is validated interactively or reportValidity() is called.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ElementInternals/setValidity)
+ */
+ setValidity(flags?: ValidityStateFlags, message?: string, anchor?: HTMLElement): void;
+}
+
+declare var ElementInternals: {
+ prototype: ElementInternals;
+ new(): ElementInternals;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk) */
+interface EncodedVideoChunk {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/byteLength) */
+ readonly byteLength: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/duration) */
+ readonly duration: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/type) */
+ readonly type: EncodedVideoChunkType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/copyTo) */
+ copyTo(destination: AllowSharedBufferSource): void;
+}
+
+declare var EncodedVideoChunk: {
+ prototype: EncodedVideoChunk;
+ new(init: EncodedVideoChunkInit): EncodedVideoChunk;
+};
+
+/**
+ * Events providing information related to errors in scripts or in files.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent)
+ */
+interface ErrorEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/colno) */
+ readonly colno: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/error) */
+ readonly error: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/filename) */
+ readonly filename: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/lineno) */
+ readonly lineno: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/message) */
+ readonly message: string;
+}
+
+declare var ErrorEvent: {
+ prototype: ErrorEvent;
+ new(type: string, eventInitDict?: ErrorEventInit): ErrorEvent;
+};
+
+/**
+ * An event which takes place in the DOM.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event)
+ */
+interface Event {
+ /**
+ * Returns true or false depending on how event was initialized. True if event goes through its target's ancestors in reverse tree order, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/bubbles)
+ */
+ readonly bubbles: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelBubble)
+ */
+ cancelBubble: boolean;
+ /**
+ * Returns true or false depending on how event was initialized. Its return value does not always carry meaning, but true can indicate that part of the operation during which event was dispatched, can be canceled by invoking the preventDefault() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelable)
+ */
+ readonly cancelable: boolean;
+ /**
+ * Returns true or false depending on how event was initialized. True if event invokes listeners past a ShadowRoot node that is the root of its target, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composed)
+ */
+ readonly composed: boolean;
+ /**
+ * Returns the object whose event listener's callback is currently being invoked.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/currentTarget)
+ */
+ readonly currentTarget: EventTarget | null;
+ /**
+ * Returns true if preventDefault() was invoked successfully to indicate cancelation, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/defaultPrevented)
+ */
+ readonly defaultPrevented: boolean;
+ /**
+ * Returns the event's phase, which is one of NONE, CAPTURING_PHASE, AT_TARGET, and BUBBLING_PHASE.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/eventPhase)
+ */
+ readonly eventPhase: number;
+ /**
+ * Returns true if event was dispatched by the user agent, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/isTrusted)
+ */
+ readonly isTrusted: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/returnValue)
+ */
+ returnValue: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/srcElement)
+ */
+ readonly srcElement: EventTarget | null;
+ /**
+ * Returns the object to which event is dispatched (its target).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/target)
+ */
+ readonly target: EventTarget | null;
+ /**
+ * Returns the event's timestamp as the number of milliseconds measured relative to the time origin.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/timeStamp)
+ */
+ readonly timeStamp: DOMHighResTimeStamp;
+ /**
+ * Returns the type of event, e.g. "click", "hashchange", or "submit".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/type)
+ */
+ readonly type: string;
+ /**
+ * Returns the invocation target objects of event's path (objects on which listeners will be invoked), except for any nodes in shadow trees of which the shadow root's mode is "closed" that are not reachable from event's currentTarget.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composedPath)
+ */
+ composedPath(): EventTarget[];
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/initEvent)
+ */
+ initEvent(type: string, bubbles?: boolean, cancelable?: boolean): void;
+ /**
+ * If invoked when the cancelable attribute value is true, and while executing a listener for the event with passive set to false, signals to the operation that caused event to be dispatched that it needs to be canceled.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/preventDefault)
+ */
+ preventDefault(): void;
+ /**
+ * Invoking this method prevents event from reaching any registered event listeners after the current one finishes running and, when dispatched in a tree, also prevents event from reaching any other objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopImmediatePropagation)
+ */
+ stopImmediatePropagation(): void;
+ /**
+ * When dispatched in a tree, invoking this method prevents event from reaching any objects other than the current object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopPropagation)
+ */
+ stopPropagation(): void;
+ readonly NONE: 0;
+ readonly CAPTURING_PHASE: 1;
+ readonly AT_TARGET: 2;
+ readonly BUBBLING_PHASE: 3;
+}
+
+declare var Event: {
+ prototype: Event;
+ new(type: string, eventInitDict?: EventInit): Event;
+ readonly NONE: 0;
+ readonly CAPTURING_PHASE: 1;
+ readonly AT_TARGET: 2;
+ readonly BUBBLING_PHASE: 3;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventCounts) */
+interface EventCounts {
+ forEach(callbackfn: (value: number, key: string, parent: EventCounts) => void, thisArg?: any): void;
+}
+
+declare var EventCounts: {
+ prototype: EventCounts;
+ new(): EventCounts;
+};
+
+interface EventListener {
+ (evt: Event): void;
+}
+
+interface EventListenerObject {
+ handleEvent(object: Event): void;
+}
+
+interface EventSourceEventMap {
+ "error": Event;
+ "message": MessageEvent;
+ "open": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource) */
+interface EventSource extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/error_event) */
+ onerror: ((this: EventSource, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/message_event) */
+ onmessage: ((this: EventSource, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/open_event) */
+ onopen: ((this: EventSource, ev: Event) => any) | null;
+ /**
+ * Returns the state of this EventSource object's connection. It can have the values described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/readyState)
+ */
+ readonly readyState: number;
+ /**
+ * Returns the URL providing the event stream.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/url)
+ */
+ readonly url: string;
+ /**
+ * Returns true if the credentials mode for connection requests to the URL providing the event stream is set to "include", and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/withCredentials)
+ */
+ readonly withCredentials: boolean;
+ /**
+ * Aborts any instances of the fetch algorithm started for this EventSource object, and sets the readyState attribute to CLOSED.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/close)
+ */
+ close(): void;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSED: 2;
+ addEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var EventSource: {
+ prototype: EventSource;
+ new(url: string | URL, eventSourceInitDict?: EventSourceInit): EventSource;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSED: 2;
+};
+
+/**
+ * EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget)
+ */
+interface EventTarget {
+ /**
+ * Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
+ *
+ * The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture.
+ *
+ * When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET.
+ *
+ * When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in § 2.8 Observing event listeners.
+ *
+ * When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed.
+ *
+ * If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted.
+ *
+ * The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/addEventListener)
+ */
+ addEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: AddEventListenerOptions | boolean): void;
+ /**
+ * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent)
+ */
+ dispatchEvent(event: Event): boolean;
+ /**
+ * Removes the event listener in target's event listener list with the same type, callback, and options.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/removeEventListener)
+ */
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean): void;
+}
+
+declare var EventTarget: {
+ prototype: EventTarget;
+ new(): EventTarget;
+};
+
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/External)
+ */
+interface External {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/External/AddSearchProvider)
+ */
+ AddSearchProvider(): void;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/External/IsSearchProviderInstalled)
+ */
+ IsSearchProviderInstalled(): void;
+}
+
+/** @deprecated */
+declare var External: {
+ prototype: External;
+ new(): External;
+};
+
+/**
+ * Provides information about files and allows JavaScript in a web page to access their content.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/File)
+ */
+interface File extends Blob {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/lastModified) */
+ readonly lastModified: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/webkitRelativePath) */
+ readonly webkitRelativePath: string;
+}
+
+declare var File: {
+ prototype: File;
+ new(fileBits: BlobPart[], fileName: string, options?: FilePropertyBag): File;
+};
+
+/**
+ * An object of this type is returned by the files property of the HTML <input> element; this lets you access the list of files selected with the <input type="file"> element. It's also used for a list of files dropped into web content when using the drag and drop API; see the DataTransfer object for details on this usage.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList)
+ */
+interface FileList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/item) */
+ item(index: number): File | null;
+ [index: number]: File;
+}
+
+declare var FileList: {
+ prototype: FileList;
+ new(): FileList;
+};
+
+interface FileReaderEventMap {
+ "abort": ProgressEvent<FileReader>;
+ "error": ProgressEvent<FileReader>;
+ "load": ProgressEvent<FileReader>;
+ "loadend": ProgressEvent<FileReader>;
+ "loadstart": ProgressEvent<FileReader>;
+ "progress": ProgressEvent<FileReader>;
+}
+
+/**
+ * Lets web applications asynchronously read the contents of files (or raw data buffers) stored on the user's computer, using File or Blob objects to specify the file or data to read.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader)
+ */
+interface FileReader extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error) */
+ readonly error: DOMException | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort_event) */
+ onabort: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error_event) */
+ onerror: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/load_event) */
+ onload: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadend_event) */
+ onloadend: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadstart_event) */
+ onloadstart: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/progress_event) */
+ onprogress: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */
+ readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/result) */
+ readonly result: string | ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort) */
+ abort(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsArrayBuffer) */
+ readAsArrayBuffer(blob: Blob): void;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsBinaryString)
+ */
+ readAsBinaryString(blob: Blob): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsDataURL) */
+ readAsDataURL(blob: Blob): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsText) */
+ readAsText(blob: Blob, encoding?: string): void;
+ readonly EMPTY: 0;
+ readonly LOADING: 1;
+ readonly DONE: 2;
+ addEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var FileReader: {
+ prototype: FileReader;
+ new(): FileReader;
+ readonly EMPTY: 0;
+ readonly LOADING: 1;
+ readonly DONE: 2;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem) */
+interface FileSystem {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystem/root) */
+ readonly root: FileSystemDirectoryEntry;
+}
+
+declare var FileSystem: {
+ prototype: FileSystem;
+ new(): FileSystem;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry) */
+interface FileSystemDirectoryEntry extends FileSystemEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/createReader) */
+ createReader(): FileSystemDirectoryReader;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getDirectory) */
+ getDirectory(path?: string | null, options?: FileSystemFlags, successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryEntry/getFile) */
+ getFile(path?: string | null, options?: FileSystemFlags, successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;
+}
+
+declare var FileSystemDirectoryEntry: {
+ prototype: FileSystemDirectoryEntry;
+ new(): FileSystemDirectoryEntry;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle)
+ */
+interface FileSystemDirectoryHandle extends FileSystemHandle {
+ readonly kind: "directory";
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getDirectoryHandle) */
+ getDirectoryHandle(name: string, options?: FileSystemGetDirectoryOptions): Promise<FileSystemDirectoryHandle>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getFileHandle) */
+ getFileHandle(name: string, options?: FileSystemGetFileOptions): Promise<FileSystemFileHandle>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/removeEntry) */
+ removeEntry(name: string, options?: FileSystemRemoveOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/resolve) */
+ resolve(possibleDescendant: FileSystemHandle): Promise<string[] | null>;
+}
+
+declare var FileSystemDirectoryHandle: {
+ prototype: FileSystemDirectoryHandle;
+ new(): FileSystemDirectoryHandle;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader) */
+interface FileSystemDirectoryReader {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryReader/readEntries) */
+ readEntries(successCallback: FileSystemEntriesCallback, errorCallback?: ErrorCallback): void;
+}
+
+declare var FileSystemDirectoryReader: {
+ prototype: FileSystemDirectoryReader;
+ new(): FileSystemDirectoryReader;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry) */
+interface FileSystemEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/filesystem) */
+ readonly filesystem: FileSystem;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/fullPath) */
+ readonly fullPath: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/isDirectory) */
+ readonly isDirectory: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/isFile) */
+ readonly isFile: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemEntry/getParent) */
+ getParent(successCallback?: FileSystemEntryCallback, errorCallback?: ErrorCallback): void;
+}
+
+declare var FileSystemEntry: {
+ prototype: FileSystemEntry;
+ new(): FileSystemEntry;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileEntry) */
+interface FileSystemFileEntry extends FileSystemEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileEntry/file) */
+ file(successCallback: FileCallback, errorCallback?: ErrorCallback): void;
+}
+
+declare var FileSystemFileEntry: {
+ prototype: FileSystemFileEntry;
+ new(): FileSystemFileEntry;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle)
+ */
+interface FileSystemFileHandle extends FileSystemHandle {
+ readonly kind: "file";
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/createWritable) */
+ createWritable(options?: FileSystemCreateWritableOptions): Promise<FileSystemWritableFileStream>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/getFile) */
+ getFile(): Promise<File>;
+}
+
+declare var FileSystemFileHandle: {
+ prototype: FileSystemFileHandle;
+ new(): FileSystemFileHandle;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle)
+ */
+interface FileSystemHandle {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/kind) */
+ readonly kind: FileSystemHandleKind;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/isSameEntry) */
+ isSameEntry(other: FileSystemHandle): Promise<boolean>;
+}
+
+declare var FileSystemHandle: {
+ prototype: FileSystemHandle;
+ new(): FileSystemHandle;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream)
+ */
+interface FileSystemWritableFileStream extends WritableStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/seek) */
+ seek(position: number): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/truncate) */
+ truncate(size: number): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write) */
+ write(data: FileSystemWriteChunkType): Promise<void>;
+}
+
+declare var FileSystemWritableFileStream: {
+ prototype: FileSystemWritableFileStream;
+ new(): FileSystemWritableFileStream;
+};
+
+/**
+ * Focus-related events like focus, blur, focusin, or focusout.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FocusEvent)
+ */
+interface FocusEvent extends UIEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FocusEvent/relatedTarget) */
+ readonly relatedTarget: EventTarget | null;
+}
+
+declare var FocusEvent: {
+ prototype: FocusEvent;
+ new(type: string, eventInitDict?: FocusEventInit): FocusEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace) */
+interface FontFace {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/ascentOverride) */
+ ascentOverride: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/descentOverride) */
+ descentOverride: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/display) */
+ display: FontDisplay;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/family) */
+ family: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/featureSettings) */
+ featureSettings: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/lineGapOverride) */
+ lineGapOverride: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/loaded) */
+ readonly loaded: Promise<FontFace>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/status) */
+ readonly status: FontFaceLoadStatus;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/stretch) */
+ stretch: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/style) */
+ style: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/unicodeRange) */
+ unicodeRange: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/weight) */
+ weight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/load) */
+ load(): Promise<FontFace>;
+}
+
+declare var FontFace: {
+ prototype: FontFace;
+ new(family: string, source: string | BinaryData, descriptors?: FontFaceDescriptors): FontFace;
+};
+
+interface FontFaceSetEventMap {
+ "loading": Event;
+ "loadingdone": Event;
+ "loadingerror": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet) */
+interface FontFaceSet extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loading_event) */
+ onloading: ((this: FontFaceSet, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingdone_event) */
+ onloadingdone: ((this: FontFaceSet, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingerror_event) */
+ onloadingerror: ((this: FontFaceSet, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/ready) */
+ readonly ready: Promise<FontFaceSet>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/status) */
+ readonly status: FontFaceSetLoadStatus;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/check) */
+ check(font: string, text?: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/load) */
+ load(font: string, text?: string): Promise<FontFace[]>;
+ forEach(callbackfn: (value: FontFace, key: FontFace, parent: FontFaceSet) => void, thisArg?: any): void;
+ addEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var FontFaceSet: {
+ prototype: FontFaceSet;
+ new(initialFaces: FontFace[]): FontFaceSet;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent) */
+interface FontFaceSetLoadEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent/fontfaces) */
+ readonly fontfaces: ReadonlyArray<FontFace>;
+}
+
+declare var FontFaceSetLoadEvent: {
+ prototype: FontFaceSetLoadEvent;
+ new(type: string, eventInitDict?: FontFaceSetLoadEventInit): FontFaceSetLoadEvent;
+};
+
+interface FontFaceSource {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fonts) */
+ readonly fonts: FontFaceSet;
+}
+
+/**
+ * Provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the XMLHttpRequest.send() method. It uses the same format a form would use if the encoding type were set to "multipart/form-data".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData)
+ */
+interface FormData {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) */
+ append(name: string, value: string | Blob): void;
+ append(name: string, value: string): void;
+ append(name: string, blobValue: Blob, filename?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/delete) */
+ delete(name: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/get) */
+ get(name: string): FormDataEntryValue | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/getAll) */
+ getAll(name: string): FormDataEntryValue[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/has) */
+ has(name: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) */
+ set(name: string, value: string | Blob): void;
+ set(name: string, value: string): void;
+ set(name: string, blobValue: Blob, filename?: string): void;
+ forEach(callbackfn: (value: FormDataEntryValue, key: string, parent: FormData) => void, thisArg?: any): void;
+}
+
+declare var FormData: {
+ prototype: FormData;
+ new(form?: HTMLFormElement, submitter?: HTMLElement | null): FormData;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormDataEvent) */
+interface FormDataEvent extends Event {
+ /**
+ * Returns a FormData object representing names and values of elements associated to the target form. Operations on the FormData object will affect form data to be submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormDataEvent/formData)
+ */
+ readonly formData: FormData;
+}
+
+declare var FormDataEvent: {
+ prototype: FormDataEvent;
+ new(type: string, eventInitDict: FormDataEventInit): FormDataEvent;
+};
+
+/**
+ * A change in volume. It is an AudioNode audio-processing module that causes a given gain to be applied to the input data before its propagation to the output. A GainNode always has exactly one input and one output, both with the same number of channels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GainNode)
+ */
+interface GainNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GainNode/gain) */
+ readonly gain: AudioParam;
+}
+
+declare var GainNode: {
+ prototype: GainNode;
+ new(context: BaseAudioContext, options?: GainOptions): GainNode;
+};
+
+/**
+ * This Gamepad API interface defines an individual gamepad or other controller, allowing access to information such as button presses, axis positions, and id.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad)
+ */
+interface Gamepad {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/axes) */
+ readonly axes: ReadonlyArray<number>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/buttons) */
+ readonly buttons: ReadonlyArray<GamepadButton>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/connected) */
+ readonly connected: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/id) */
+ readonly id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/index) */
+ readonly index: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/mapping) */
+ readonly mapping: GamepadMappingType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Gamepad/timestamp) */
+ readonly timestamp: DOMHighResTimeStamp;
+ readonly vibrationActuator: GamepadHapticActuator | null;
+}
+
+declare var Gamepad: {
+ prototype: Gamepad;
+ new(): Gamepad;
+};
+
+/**
+ * An individual button of a gamepad or other controller, allowing access to the current state of different types of buttons available on the control device.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton)
+ */
+interface GamepadButton {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/pressed) */
+ readonly pressed: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/touched) */
+ readonly touched: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadButton/value) */
+ readonly value: number;
+}
+
+declare var GamepadButton: {
+ prototype: GamepadButton;
+ new(): GamepadButton;
+};
+
+/**
+ * This Gamepad API interface contains references to gamepads connected to the system, which is what the gamepad events Window.gamepadconnected and Window.gamepaddisconnected are fired in response to.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadEvent)
+ */
+interface GamepadEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadEvent/gamepad) */
+ readonly gamepad: Gamepad;
+}
+
+declare var GamepadEvent: {
+ prototype: GamepadEvent;
+ new(type: string, eventInitDict: GamepadEventInit): GamepadEvent;
+};
+
+/**
+ * This Gamepad API interface represents hardware in the controller designed to provide haptic feedback to the user (if available), most commonly vibration hardware.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator)
+ */
+interface GamepadHapticActuator {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GamepadHapticActuator/type) */
+ readonly type: GamepadHapticActuatorType;
+ playEffect(type: GamepadHapticEffectType, params?: GamepadEffectParameters): Promise<GamepadHapticsResult>;
+ reset(): Promise<GamepadHapticsResult>;
+}
+
+declare var GamepadHapticActuator: {
+ prototype: GamepadHapticActuator;
+ new(): GamepadHapticActuator;
+};
+
+interface GenericTransformStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/readable) */
+ readonly readable: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/writable) */
+ readonly writable: WritableStream;
+}
+
+/**
+ * An object able to programmatically obtain the position of the device. It gives Web content access to the location of the device. This allows a Web site or app to offer customized results based on the user's location.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation)
+ */
+interface Geolocation {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/clearWatch) */
+ clearWatch(watchId: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/getCurrentPosition) */
+ getCurrentPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback | null, options?: PositionOptions): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Geolocation/watchPosition) */
+ watchPosition(successCallback: PositionCallback, errorCallback?: PositionErrorCallback | null, options?: PositionOptions): number;
+}
+
+declare var Geolocation: {
+ prototype: Geolocation;
+ new(): Geolocation;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates)
+ */
+interface GeolocationCoordinates {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/accuracy) */
+ readonly accuracy: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/altitude) */
+ readonly altitude: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/altitudeAccuracy) */
+ readonly altitudeAccuracy: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/heading) */
+ readonly heading: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/latitude) */
+ readonly latitude: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/longitude) */
+ readonly longitude: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationCoordinates/speed) */
+ readonly speed: number | null;
+}
+
+declare var GeolocationCoordinates: {
+ prototype: GeolocationCoordinates;
+ new(): GeolocationCoordinates;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition)
+ */
+interface GeolocationPosition {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/coords) */
+ readonly coords: GeolocationCoordinates;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPosition/timestamp) */
+ readonly timestamp: EpochTimeStamp;
+}
+
+declare var GeolocationPosition: {
+ prototype: GeolocationPosition;
+ new(): GeolocationPosition;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError) */
+interface GeolocationPositionError {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError/code) */
+ readonly code: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/GeolocationPositionError/message) */
+ readonly message: string;
+ readonly PERMISSION_DENIED: 1;
+ readonly POSITION_UNAVAILABLE: 2;
+ readonly TIMEOUT: 3;
+}
+
+declare var GeolocationPositionError: {
+ prototype: GeolocationPositionError;
+ new(): GeolocationPositionError;
+ readonly PERMISSION_DENIED: 1;
+ readonly POSITION_UNAVAILABLE: 2;
+ readonly TIMEOUT: 3;
+};
+
+interface GlobalEventHandlersEventMap {
+ "abort": UIEvent;
+ "animationcancel": AnimationEvent;
+ "animationend": AnimationEvent;
+ "animationiteration": AnimationEvent;
+ "animationstart": AnimationEvent;
+ "auxclick": MouseEvent;
+ "beforeinput": InputEvent;
+ "beforetoggle": Event;
+ "blur": FocusEvent;
+ "cancel": Event;
+ "canplay": Event;
+ "canplaythrough": Event;
+ "change": Event;
+ "click": MouseEvent;
+ "close": Event;
+ "compositionend": CompositionEvent;
+ "compositionstart": CompositionEvent;
+ "compositionupdate": CompositionEvent;
+ "contextmenu": MouseEvent;
+ "copy": ClipboardEvent;
+ "cuechange": Event;
+ "cut": ClipboardEvent;
+ "dblclick": MouseEvent;
+ "drag": DragEvent;
+ "dragend": DragEvent;
+ "dragenter": DragEvent;
+ "dragleave": DragEvent;
+ "dragover": DragEvent;
+ "dragstart": DragEvent;
+ "drop": DragEvent;
+ "durationchange": Event;
+ "emptied": Event;
+ "ended": Event;
+ "error": ErrorEvent;
+ "focus": FocusEvent;
+ "focusin": FocusEvent;
+ "focusout": FocusEvent;
+ "formdata": FormDataEvent;
+ "gotpointercapture": PointerEvent;
+ "input": Event;
+ "invalid": Event;
+ "keydown": KeyboardEvent;
+ "keypress": KeyboardEvent;
+ "keyup": KeyboardEvent;
+ "load": Event;
+ "loadeddata": Event;
+ "loadedmetadata": Event;
+ "loadstart": Event;
+ "lostpointercapture": PointerEvent;
+ "mousedown": MouseEvent;
+ "mouseenter": MouseEvent;
+ "mouseleave": MouseEvent;
+ "mousemove": MouseEvent;
+ "mouseout": MouseEvent;
+ "mouseover": MouseEvent;
+ "mouseup": MouseEvent;
+ "paste": ClipboardEvent;
+ "pause": Event;
+ "play": Event;
+ "playing": Event;
+ "pointercancel": PointerEvent;
+ "pointerdown": PointerEvent;
+ "pointerenter": PointerEvent;
+ "pointerleave": PointerEvent;
+ "pointermove": PointerEvent;
+ "pointerout": PointerEvent;
+ "pointerover": PointerEvent;
+ "pointerup": PointerEvent;
+ "progress": ProgressEvent;
+ "ratechange": Event;
+ "reset": Event;
+ "resize": UIEvent;
+ "scroll": Event;
+ "scrollend": Event;
+ "securitypolicyviolation": SecurityPolicyViolationEvent;
+ "seeked": Event;
+ "seeking": Event;
+ "select": Event;
+ "selectionchange": Event;
+ "selectstart": Event;
+ "slotchange": Event;
+ "stalled": Event;
+ "submit": SubmitEvent;
+ "suspend": Event;
+ "timeupdate": Event;
+ "toggle": Event;
+ "touchcancel": TouchEvent;
+ "touchend": TouchEvent;
+ "touchmove": TouchEvent;
+ "touchstart": TouchEvent;
+ "transitioncancel": TransitionEvent;
+ "transitionend": TransitionEvent;
+ "transitionrun": TransitionEvent;
+ "transitionstart": TransitionEvent;
+ "volumechange": Event;
+ "waiting": Event;
+ "webkitanimationend": Event;
+ "webkitanimationiteration": Event;
+ "webkitanimationstart": Event;
+ "webkittransitionend": Event;
+ "wheel": WheelEvent;
+}
+
+interface GlobalEventHandlers {
+ /**
+ * Fires when the user aborts the download.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/abort_event)
+ */
+ onabort: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationcancel_event) */
+ onanimationcancel: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event) */
+ onanimationend: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event) */
+ onanimationiteration: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event) */
+ onanimationstart: ((this: GlobalEventHandlers, ev: AnimationEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/auxclick_event) */
+ onauxclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/beforeinput_event) */
+ onbeforeinput: ((this: GlobalEventHandlers, ev: InputEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/beforetoggle_event) */
+ onbeforetoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when the object loses the input focus.
+ * @param ev The focus event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/blur_event)
+ */
+ onblur: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/cancel_event) */
+ oncancel: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when playback is possible, but would require further buffering.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplay_event)
+ */
+ oncanplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplaythrough_event) */
+ oncanplaythrough: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when the contents of the object or selection have changed.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/change_event)
+ */
+ onchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when the user clicks the left mouse button on the object
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/click_event)
+ */
+ onclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close_event) */
+ onclose: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when the user clicks the right mouse button in the client area, opening the context menu.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/contextmenu_event)
+ */
+ oncontextmenu: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/copy_event) */
+ oncopy: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/cuechange_event) */
+ oncuechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/cut_event) */
+ oncut: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
+ /**
+ * Fires when the user double-clicks the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/dblclick_event)
+ */
+ ondblclick: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /**
+ * Fires on the source object continuously during a drag operation.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drag_event)
+ */
+ ondrag: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
+ /**
+ * Fires on the source object when the user releases the mouse at the close of a drag operation.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragend_event)
+ */
+ ondragend: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
+ /**
+ * Fires on the target element when the user drags the object to a valid drop target.
+ * @param ev The drag event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragenter_event)
+ */
+ ondragenter: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
+ /**
+ * Fires on the target object when the user moves the mouse out of a valid drop target during a drag operation.
+ * @param ev The drag event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragleave_event)
+ */
+ ondragleave: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
+ /**
+ * Fires on the target element continuously while the user drags the object over a valid drop target.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragover_event)
+ */
+ ondragover: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
+ /**
+ * Fires on the source object when the user starts to drag a text selection or selected object.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragstart_event)
+ */
+ ondragstart: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drop_event) */
+ ondrop: ((this: GlobalEventHandlers, ev: DragEvent) => any) | null;
+ /**
+ * Occurs when the duration attribute is updated.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/durationchange_event)
+ */
+ ondurationchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when the media element is reset to its initial state.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/emptied_event)
+ */
+ onemptied: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when the end of playback is reached.
+ * @param ev The event
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ended_event)
+ */
+ onended: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when an error occurs during object loading.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/error_event)
+ */
+ onerror: OnErrorEventHandler;
+ /**
+ * Fires when the object receives focus.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/focus_event)
+ */
+ onfocus: ((this: GlobalEventHandlers, ev: FocusEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/formdata_event) */
+ onformdata: ((this: GlobalEventHandlers, ev: FormDataEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/gotpointercapture_event) */
+ ongotpointercapture: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/input_event) */
+ oninput: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/invalid_event) */
+ oninvalid: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when the user presses a key.
+ * @param ev The keyboard event
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keydown_event)
+ */
+ onkeydown: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;
+ /**
+ * Fires when the user presses an alphanumeric key.
+ * @param ev The event.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keypress_event)
+ */
+ onkeypress: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;
+ /**
+ * Fires when the user releases a key.
+ * @param ev The keyboard event
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keyup_event)
+ */
+ onkeyup: ((this: GlobalEventHandlers, ev: KeyboardEvent) => any) | null;
+ /**
+ * Fires immediately after the browser loads the object.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGElement/load_event)
+ */
+ onload: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when media data is loaded at the current playback position.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadeddata_event)
+ */
+ onloadeddata: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when the duration and dimensions of the media have been determined.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadedmetadata_event)
+ */
+ onloadedmetadata: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when Internet Explorer begins looking for media data.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadstart_event)
+ */
+ onloadstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/lostpointercapture_event) */
+ onlostpointercapture: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /**
+ * Fires when the user clicks the object with either mouse button.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousedown_event)
+ */
+ onmousedown: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseenter_event) */
+ onmouseenter: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseleave_event) */
+ onmouseleave: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /**
+ * Fires when the user moves the mouse over the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousemove_event)
+ */
+ onmousemove: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /**
+ * Fires when the user moves the mouse pointer outside the boundaries of the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseout_event)
+ */
+ onmouseout: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /**
+ * Fires when the user moves the mouse pointer into the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseover_event)
+ */
+ onmouseover: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /**
+ * Fires when the user releases a mouse button while the mouse is over the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseup_event)
+ */
+ onmouseup: ((this: GlobalEventHandlers, ev: MouseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/paste_event) */
+ onpaste: ((this: GlobalEventHandlers, ev: ClipboardEvent) => any) | null;
+ /**
+ * Occurs when playback is paused.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/pause_event)
+ */
+ onpause: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when the play method is requested.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/play_event)
+ */
+ onplay: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when the audio or video has started playing.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playing_event)
+ */
+ onplaying: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointercancel_event) */
+ onpointercancel: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerdown_event) */
+ onpointerdown: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerenter_event) */
+ onpointerenter: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerleave_event) */
+ onpointerleave: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointermove_event) */
+ onpointermove: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerout_event) */
+ onpointerout: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerover_event) */
+ onpointerover: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerup_event) */
+ onpointerup: ((this: GlobalEventHandlers, ev: PointerEvent) => any) | null;
+ /**
+ * Occurs to indicate progress while downloading media data.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/progress_event)
+ */
+ onprogress: ((this: GlobalEventHandlers, ev: ProgressEvent) => any) | null;
+ /**
+ * Occurs when the playback rate is increased or decreased.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ratechange_event)
+ */
+ onratechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when the user resets a form.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset_event)
+ */
+ onreset: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/resize_event) */
+ onresize: ((this: GlobalEventHandlers, ev: UIEvent) => any) | null;
+ /**
+ * Fires when the user repositions the scroll box in the scroll bar on the object.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scroll_event)
+ */
+ onscroll: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollend_event) */
+ onscrollend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/securitypolicyviolation_event) */
+ onsecuritypolicyviolation: ((this: GlobalEventHandlers, ev: SecurityPolicyViolationEvent) => any) | null;
+ /**
+ * Occurs when the seek operation ends.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeked_event)
+ */
+ onseeked: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when the current playback position is moved.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeking_event)
+ */
+ onseeking: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Fires when the current selection changes.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select_event)
+ */
+ onselect: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/selectionchange_event) */
+ onselectionchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/selectstart_event) */
+ onselectstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/slotchange_event) */
+ onslotchange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when the download has stopped.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/stalled_event)
+ */
+ onstalled: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit_event) */
+ onsubmit: ((this: GlobalEventHandlers, ev: SubmitEvent) => any) | null;
+ /**
+ * Occurs if the load operation has been intentionally halted.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/suspend_event)
+ */
+ onsuspend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs to indicate the current playback position.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/timeupdate_event)
+ */
+ ontimeupdate: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/toggle_event) */
+ ontoggle: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchcancel_event) */
+ ontouchcancel?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchend_event) */
+ ontouchend?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchmove_event) */
+ ontouchmove?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchstart_event) */
+ ontouchstart?: ((this: GlobalEventHandlers, ev: TouchEvent) => any) | null | undefined;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitioncancel_event) */
+ ontransitioncancel: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event) */
+ ontransitionend: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionrun_event) */
+ ontransitionrun: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionstart_event) */
+ ontransitionstart: ((this: GlobalEventHandlers, ev: TransitionEvent) => any) | null;
+ /**
+ * Occurs when the volume is changed, or playback is muted or unmuted.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volumechange_event)
+ */
+ onvolumechange: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * Occurs when playback stops because the next frame of a video resource is not available.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/waiting_event)
+ */
+ onwaiting: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * @deprecated This is a legacy alias of \`onanimationend\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event)
+ */
+ onwebkitanimationend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * @deprecated This is a legacy alias of \`onanimationiteration\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event)
+ */
+ onwebkitanimationiteration: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * @deprecated This is a legacy alias of \`onanimationstart\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event)
+ */
+ onwebkitanimationstart: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /**
+ * @deprecated This is a legacy alias of \`ontransitionend\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event)
+ */
+ onwebkittransitionend: ((this: GlobalEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/wheel_event) */
+ onwheel: ((this: GlobalEventHandlers, ev: WheelEvent) => any) | null;
+ addEventListener<K extends keyof GlobalEventHandlersEventMap>(type: K, listener: (this: GlobalEventHandlers, ev: GlobalEventHandlersEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof GlobalEventHandlersEventMap>(type: K, listener: (this: GlobalEventHandlers, ev: GlobalEventHandlersEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection) */
+interface HTMLAllCollection {
+ /**
+ * Returns the number of elements in the collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/length)
+ */
+ readonly length: number;
+ /**
+ * Returns the item with index index from the collection (determined by tree order).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/item)
+ */
+ item(nameOrIndex?: string): HTMLCollection | Element | null;
+ /**
+ * Returns the item with ID or name name from the collection.
+ *
+ * If there are multiple matching items, then an HTMLCollection object containing all those elements is returned.
+ *
+ * Only button, form, iframe, input, map, meta, object, select, and textarea elements can have a name for the purpose of this method; their name is given by the value of their name attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAllCollection/namedItem)
+ */
+ namedItem(name: string): HTMLCollection | Element | null;
+ [index: number]: Element;
+}
+
+declare var HTMLAllCollection: {
+ prototype: HTMLAllCollection;
+ new(): HTMLAllCollection;
+};
+
+/**
+ * Hyperlink elements and provides special properties and methods (beyond those of the regular HTMLElement object interface that they inherit from) for manipulating the layout and presentation of such elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement)
+ */
+interface HTMLAnchorElement extends HTMLElement, HTMLHyperlinkElementUtils {
+ /**
+ * Sets or retrieves the character set used to encode the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/charset)
+ */
+ charset: string;
+ /**
+ * Sets or retrieves the coordinates of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/coords)
+ */
+ coords: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/download) */
+ download: string;
+ /**
+ * Sets or retrieves the language code of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hreflang)
+ */
+ hreflang: string;
+ /**
+ * Sets or retrieves the shape of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/name)
+ */
+ name: string;
+ ping: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/referrerPolicy) */
+ referrerPolicy: string;
+ /**
+ * Sets or retrieves the relationship between the object and the destination of the link.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/rel)
+ */
+ rel: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/relList) */
+ readonly relList: DOMTokenList;
+ /**
+ * Sets or retrieves the relationship between the object and the destination of the link.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/rev)
+ */
+ rev: string;
+ /**
+ * Sets or retrieves the shape of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/shape)
+ */
+ shape: string;
+ /**
+ * Sets or retrieves the window or frame at which to target content.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/target)
+ */
+ target: string;
+ /**
+ * Retrieves or sets the text of the object as a string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/text)
+ */
+ text: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/type) */
+ type: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAnchorElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAnchorElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLAnchorElement: {
+ prototype: HTMLAnchorElement;
+ new(): HTMLAnchorElement;
+};
+
+/**
+ * Provides special properties and methods (beyond those of the regular object HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <area> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement)
+ */
+interface HTMLAreaElement extends HTMLElement, HTMLHyperlinkElementUtils {
+ /**
+ * Sets or retrieves a text alternative to the graphic.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/alt)
+ */
+ alt: string;
+ /**
+ * Sets or retrieves the coordinates of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/coords)
+ */
+ coords: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/download) */
+ download: string;
+ /**
+ * Sets or gets whether clicks in this region cause action.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/noHref)
+ */
+ noHref: boolean;
+ ping: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/referrerPolicy) */
+ referrerPolicy: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/rel) */
+ rel: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/relList) */
+ readonly relList: DOMTokenList;
+ /**
+ * Sets or retrieves the shape of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/shape)
+ */
+ shape: string;
+ /**
+ * Sets or retrieves the window or frame at which to target content.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAreaElement/target)
+ */
+ target: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLAreaElement: {
+ prototype: HTMLAreaElement;
+ new(): HTMLAreaElement;
+};
+
+/**
+ * Provides access to the properties of <audio> elements, as well as methods to manipulate them. It derives from the HTMLMediaElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAudioElement)
+ */
+interface HTMLAudioElement extends HTMLMediaElement {
+ addEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLAudioElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLAudioElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLAudioElement: {
+ prototype: HTMLAudioElement;
+ new(): HTMLAudioElement;
+};
+
+/**
+ * A HTML line break element (<br>). It inherits from HTMLElement.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBRElement)
+ */
+interface HTMLBRElement extends HTMLElement {
+ /**
+ * Sets or retrieves the side on which floating objects are not to be positioned when any IHTMLBlockElement is inserted into the document.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBRElement/clear)
+ */
+ clear: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLBRElement: {
+ prototype: HTMLBRElement;
+ new(): HTMLBRElement;
+};
+
+/**
+ * Contains the base URI for a document. This object inherits all of the properties and methods as described in the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement)
+ */
+interface HTMLBaseElement extends HTMLElement {
+ /**
+ * Gets or sets the baseline URL on which relative links are based.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/href)
+ */
+ href: string;
+ /**
+ * Sets or retrieves the window or frame at which to target content.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBaseElement/target)
+ */
+ target: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBaseElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLBaseElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLBaseElement: {
+ prototype: HTMLBaseElement;
+ new(): HTMLBaseElement;
+};
+
+interface HTMLBodyElementEventMap extends HTMLElementEventMap, WindowEventHandlersEventMap {
+}
+
+/**
+ * Provides special properties (beyond those inherited from the regular HTMLElement interface) for manipulating <body> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement)
+ */
+interface HTMLBodyElement extends HTMLElement, WindowEventHandlers {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/aLink)
+ */
+ aLink: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/background)
+ */
+ background: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/bgColor)
+ */
+ bgColor: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/link)
+ */
+ link: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/text)
+ */
+ text: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLBodyElement/vLink)
+ */
+ vLink: string;
+ addEventListener<K extends keyof HTMLBodyElementEventMap>(type: K, listener: (this: HTMLBodyElement, ev: HTMLBodyElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLBodyElementEventMap>(type: K, listener: (this: HTMLBodyElement, ev: HTMLBodyElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLBodyElement: {
+ prototype: HTMLBodyElement;
+ new(): HTMLBodyElement;
+};
+
+/**
+ * Provides properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <button> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement)
+ */
+interface HTMLButtonElement extends HTMLElement, PopoverInvokerElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/disabled) */
+ disabled: boolean;
+ /**
+ * Retrieves a reference to the form that the object is embedded in.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/form)
+ */
+ readonly form: HTMLFormElement | null;
+ /**
+ * Overrides the action attribute (where the data on a form is sent) on the parent form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formAction)
+ */
+ formAction: string;
+ /**
+ * Used to override the encoding (formEnctype attribute) specified on the form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formEnctype)
+ */
+ formEnctype: string;
+ /**
+ * Overrides the submit method attribute previously specified on a form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formMethod)
+ */
+ formMethod: string;
+ /**
+ * Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a "save draft"-type submit option.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formNoValidate)
+ */
+ formNoValidate: boolean;
+ /**
+ * Overrides the target attribute on a form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/formTarget)
+ */
+ formTarget: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/labels) */
+ readonly labels: NodeListOf<HTMLLabelElement>;
+ /**
+ * Sets or retrieves the name of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/name)
+ */
+ name: string;
+ /**
+ * Gets the classification and default behavior of the button.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/type)
+ */
+ type: "submit" | "reset" | "button";
+ /**
+ * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/validationMessage)
+ */
+ readonly validationMessage: string;
+ /**
+ * Returns a ValidityState object that represents the validity states of an element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/validity)
+ */
+ readonly validity: ValidityState;
+ /**
+ * Sets or retrieves the default or selected value of the control.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/value)
+ */
+ value: string;
+ /**
+ * Returns whether an element will successfully validate based on forms validation rules and constraints.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/willValidate)
+ */
+ readonly willValidate: boolean;
+ /** Returns whether a form will validate when it is submitted, without having to submit it. */
+ checkValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/reportValidity) */
+ reportValidity(): boolean;
+ /**
+ * Sets a custom error message that is displayed when a form is submitted.
+ * @param error Sets a custom error message that is displayed when a form is submitted.
+ */
+ setCustomValidity(error: string): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLButtonElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLButtonElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLButtonElement: {
+ prototype: HTMLButtonElement;
+ new(): HTMLButtonElement;
+};
+
+/**
+ * Provides properties and methods for manipulating the layout and presentation of <canvas> elements. The HTMLCanvasElement interface also inherits the properties and methods of the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement)
+ */
+interface HTMLCanvasElement extends HTMLElement {
+ /**
+ * Gets or sets the height of a canvas element on a document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/height)
+ */
+ height: number;
+ /**
+ * Gets or sets the width of a canvas element on a document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/width)
+ */
+ width: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/captureStream) */
+ captureStream(frameRequestRate?: number): MediaStream;
+ /**
+ * Returns an object that provides methods and properties for drawing and manipulating images and graphics on a canvas element in a document. A context object includes information about colors, line widths, fonts, and other graphic parameters that can be drawn on a canvas.
+ * @param contextId The identifier (ID) of the type of canvas to create. Internet Explorer 9 and Internet Explorer 10 support only a 2-D context using canvas.getContext("2d"); IE11 Preview also supports 3-D or WebGL context using canvas.getContext("experimental-webgl");
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/getContext)
+ */
+ getContext(contextId: "2d", options?: CanvasRenderingContext2DSettings): CanvasRenderingContext2D | null;
+ getContext(contextId: "bitmaprenderer", options?: ImageBitmapRenderingContextSettings): ImageBitmapRenderingContext | null;
+ getContext(contextId: "webgl", options?: WebGLContextAttributes): WebGLRenderingContext | null;
+ getContext(contextId: "webgl2", options?: WebGLContextAttributes): WebGL2RenderingContext | null;
+ getContext(contextId: string, options?: any): RenderingContext | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/toBlob) */
+ toBlob(callback: BlobCallback, type?: string, quality?: any): void;
+ /**
+ * Returns the content of the current canvas as an image that you can use as a source for another canvas or an HTML element.
+ * @param type The standard MIME type for the image format to return. If you do not specify this parameter, the default value is a PNG format image.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/toDataURL)
+ */
+ toDataURL(type?: string, quality?: any): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCanvasElement/transferControlToOffscreen) */
+ transferControlToOffscreen(): OffscreenCanvas;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLCanvasElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLCanvasElement: {
+ prototype: HTMLCanvasElement;
+ new(): HTMLCanvasElement;
+};
+
+/**
+ * A generic collection (array-like object similar to arguments) of elements (in document order) and offers methods and properties for selecting from the list.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection)
+ */
+interface HTMLCollectionBase {
+ /**
+ * Sets or retrieves the number of objects in a collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/length)
+ */
+ readonly length: number;
+ /**
+ * Retrieves an object from various collections.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/item)
+ */
+ item(index: number): Element | null;
+ [index: number]: Element;
+}
+
+interface HTMLCollection extends HTMLCollectionBase {
+ /**
+ * Retrieves a select object or an object from an options collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLCollection/namedItem)
+ */
+ namedItem(name: string): Element | null;
+}
+
+declare var HTMLCollection: {
+ prototype: HTMLCollection;
+ new(): HTMLCollection;
+};
+
+interface HTMLCollectionOf<T extends Element> extends HTMLCollectionBase {
+ item(index: number): T | null;
+ namedItem(name: string): T | null;
+ [index: number]: T;
+}
+
+/**
+ * Provides special properties (beyond those of the regular HTMLElement interface it also has available to it by inheritance) for manipulating definition list (<dl>) elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDListElement)
+ */
+interface HTMLDListElement extends HTMLElement {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDListElement/compact)
+ */
+ compact: boolean;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLDListElement: {
+ prototype: HTMLDListElement;
+ new(): HTMLDListElement;
+};
+
+/**
+ * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <data> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataElement)
+ */
+interface HTMLDataElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataElement/value) */
+ value: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLDataElement: {
+ prototype: HTMLDataElement;
+ new(): HTMLDataElement;
+};
+
+/**
+ * Provides special properties (beyond the HTMLElement object interface it also has available to it by inheritance) to manipulate <datalist> elements and their content.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataListElement)
+ */
+interface HTMLDataListElement extends HTMLElement {
+ /**
+ * Returns an HTMLCollection of the option elements of the datalist element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDataListElement/options)
+ */
+ readonly options: HTMLCollectionOf<HTMLOptionElement>;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDataListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLDataListElement: {
+ prototype: HTMLDataListElement;
+ new(): HTMLDataListElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement) */
+interface HTMLDetailsElement extends HTMLElement {
+ name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/open) */
+ open: boolean;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDetailsElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDetailsElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLDetailsElement: {
+ prototype: HTMLDetailsElement;
+ new(): HTMLDetailsElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement) */
+interface HTMLDialogElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/open) */
+ open: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/returnValue) */
+ returnValue: string;
+ /**
+ * Closes the dialog element.
+ *
+ * The argument, if provided, provides a return value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close)
+ */
+ close(returnValue?: string): void;
+ /**
+ * Displays the dialog element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/show)
+ */
+ show(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/showModal) */
+ showModal(): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDialogElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDialogElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLDialogElement: {
+ prototype: HTMLDialogElement;
+ new(): HTMLDialogElement;
+};
+
+/** @deprecated */
+interface HTMLDirectoryElement extends HTMLElement {
+ /** @deprecated */
+ compact: boolean;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDirectoryElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDirectoryElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var HTMLDirectoryElement: {
+ prototype: HTMLDirectoryElement;
+ new(): HTMLDirectoryElement;
+};
+
+/**
+ * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <div> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDivElement)
+ */
+interface HTMLDivElement extends HTMLElement {
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDivElement/align)
+ */
+ align: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLDivElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLDivElement: {
+ prototype: HTMLDivElement;
+ new(): HTMLDivElement;
+};
+
+/** @deprecated use Document */
+interface HTMLDocument extends Document {
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: HTMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: HTMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var HTMLDocument: {
+ prototype: HTMLDocument;
+ new(): HTMLDocument;
+};
+
+interface HTMLElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap {
+}
+
+/**
+ * Any HTML element. Some elements directly implement this interface, while others implement it via an interface that inherits it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement)
+ */
+interface HTMLElement extends Element, ElementCSSInlineStyle, ElementContentEditable, GlobalEventHandlers, HTMLOrSVGElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKey) */
+ accessKey: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/accessKeyLabel) */
+ readonly accessKeyLabel: string;
+ autocapitalize: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dir) */
+ dir: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/draggable) */
+ draggable: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidden) */
+ hidden: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/inert) */
+ inert: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/innerText) */
+ innerText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/lang) */
+ lang: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetHeight) */
+ readonly offsetHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetLeft) */
+ readonly offsetLeft: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetParent) */
+ readonly offsetParent: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetTop) */
+ readonly offsetTop: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/offsetWidth) */
+ readonly offsetWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/outerText) */
+ outerText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/popover) */
+ popover: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/spellcheck) */
+ spellcheck: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/title) */
+ title: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/translate) */
+ translate: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/attachInternals) */
+ attachInternals(): ElementInternals;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/click) */
+ click(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/hidePopover) */
+ hidePopover(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/showPopover) */
+ showPopover(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/togglePopover) */
+ togglePopover(force?: boolean): boolean;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLElement: {
+ prototype: HTMLElement;
+ new(): HTMLElement;
+};
+
+/**
+ * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <embed> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLEmbedElement)
+ */
+interface HTMLEmbedElement extends HTMLElement {
+ /** @deprecated */
+ align: string;
+ /** Sets or retrieves the height of the object. */
+ height: string;
+ /**
+ * Sets or retrieves the name of the object.
+ * @deprecated
+ */
+ name: string;
+ /** Sets or retrieves a URL to be loaded by the object. */
+ src: string;
+ type: string;
+ /** Sets or retrieves the width of the object. */
+ width: string;
+ getSVGDocument(): Document | null;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLEmbedElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLEmbedElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLEmbedElement: {
+ prototype: HTMLEmbedElement;
+ new(): HTMLEmbedElement;
+};
+
+/**
+ * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <fieldset> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement)
+ */
+interface HTMLFieldSetElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/disabled) */
+ disabled: boolean;
+ /**
+ * Returns an HTMLCollection of the form controls in the element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/elements)
+ */
+ readonly elements: HTMLCollection;
+ /**
+ * Retrieves a reference to the form that the object is embedded in.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/form)
+ */
+ readonly form: HTMLFormElement | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/name) */
+ name: string;
+ /**
+ * Returns the string "fieldset".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/type)
+ */
+ readonly type: string;
+ /**
+ * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/validationMessage)
+ */
+ readonly validationMessage: string;
+ /**
+ * Returns a ValidityState object that represents the validity states of an element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/validity)
+ */
+ readonly validity: ValidityState;
+ /**
+ * Returns whether an element will successfully validate based on forms validation rules and constraints.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/willValidate)
+ */
+ readonly willValidate: boolean;
+ /** Returns whether a form will validate when it is submitted, without having to submit it. */
+ checkValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFieldSetElement/reportValidity) */
+ reportValidity(): boolean;
+ /**
+ * Sets a custom error message that is displayed when a form is submitted.
+ * @param error Sets a custom error message that is displayed when a form is submitted.
+ */
+ setCustomValidity(error: string): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFieldSetElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFieldSetElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLFieldSetElement: {
+ prototype: HTMLFieldSetElement;
+ new(): HTMLFieldSetElement;
+};
+
+/**
+ * Implements the document object model (DOM) representation of the font element. The HTML Font Element <font> defines the font size, font face and color of text.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement)
+ */
+interface HTMLFontElement extends HTMLElement {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/color)
+ */
+ color: string;
+ /**
+ * Sets or retrieves the current typeface family.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/face)
+ */
+ face: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFontElement/size)
+ */
+ size: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFontElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFontElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var HTMLFontElement: {
+ prototype: HTMLFontElement;
+ new(): HTMLFontElement;
+};
+
+/**
+ * A collection of HTML form control elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormControlsCollection)
+ */
+interface HTMLFormControlsCollection extends HTMLCollectionBase {
+ /**
+ * Returns the item with ID or name name from the collection.
+ *
+ * If there are multiple matching items, then a RadioNodeList object containing all those elements is returned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormControlsCollection/namedItem)
+ */
+ namedItem(name: string): RadioNodeList | Element | null;
+}
+
+declare var HTMLFormControlsCollection: {
+ prototype: HTMLFormControlsCollection;
+ new(): HTMLFormControlsCollection;
+};
+
+/**
+ * A <form> element in the DOM; it allows access to and in some cases modification of aspects of the form, as well as access to its component elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement)
+ */
+interface HTMLFormElement extends HTMLElement {
+ /**
+ * Sets or retrieves a list of character encodings for input data that must be accepted by the server processing the form.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/acceptCharset)
+ */
+ acceptCharset: string;
+ /**
+ * Sets or retrieves the URL to which the form content is sent for processing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/action)
+ */
+ action: string;
+ /**
+ * Specifies whether autocomplete is applied to an editable text field.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/autocomplete)
+ */
+ autocomplete: AutoFillBase;
+ /**
+ * Retrieves a collection, in source order, of all controls in a given form.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/elements)
+ */
+ readonly elements: HTMLFormControlsCollection;
+ /**
+ * Sets or retrieves the MIME encoding for the form.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/encoding)
+ */
+ encoding: string;
+ /**
+ * Sets or retrieves the encoding type for the form.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/enctype)
+ */
+ enctype: string;
+ /**
+ * Sets or retrieves the number of objects in a collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/length)
+ */
+ readonly length: number;
+ /**
+ * Sets or retrieves how to send the form data to the server.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/method)
+ */
+ method: string;
+ /**
+ * Sets or retrieves the name of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/name)
+ */
+ name: string;
+ /**
+ * Designates a form that is not validated when submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/noValidate)
+ */
+ noValidate: boolean;
+ rel: string;
+ readonly relList: DOMTokenList;
+ /**
+ * Sets or retrieves the window or frame at which to target content.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/target)
+ */
+ target: string;
+ /**
+ * Returns whether a form will validate when it is submitted, without having to submit it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/checkValidity)
+ */
+ checkValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reportValidity) */
+ reportValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/requestSubmit) */
+ requestSubmit(submitter?: HTMLElement | null): void;
+ /**
+ * Fires when the user resets a form.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset)
+ */
+ reset(): void;
+ /**
+ * Fires when a FORM is about to be submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit)
+ */
+ submit(): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFormElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFormElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+ [index: number]: Element;
+ [name: string]: any;
+}
+
+declare var HTMLFormElement: {
+ prototype: HTMLFormElement;
+ new(): HTMLFormElement;
+};
+
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement)
+ */
+interface HTMLFrameElement extends HTMLElement {
+ /**
+ * Retrieves the document object of the page or frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/contentDocument)
+ */
+ readonly contentDocument: Document | null;
+ /**
+ * Retrieves the object of the specified.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/contentWindow)
+ */
+ readonly contentWindow: WindowProxy | null;
+ /**
+ * Sets or retrieves whether to display a border for the frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/frameBorder)
+ */
+ frameBorder: string;
+ /**
+ * Sets or retrieves a URI to a long description of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/longDesc)
+ */
+ longDesc: string;
+ /**
+ * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/marginHeight)
+ */
+ marginHeight: string;
+ /**
+ * Sets or retrieves the left and right margin widths before displaying the text in a frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/marginWidth)
+ */
+ marginWidth: string;
+ /**
+ * Sets or retrieves the frame name.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/name)
+ */
+ name: string;
+ /**
+ * Sets or retrieves whether the user can resize the frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/noResize)
+ */
+ noResize: boolean;
+ /**
+ * Sets or retrieves whether the frame can be scrolled.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/scrolling)
+ */
+ scrolling: string;
+ /**
+ * Sets or retrieves a URL to be loaded by the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameElement/src)
+ */
+ src: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var HTMLFrameElement: {
+ prototype: HTMLFrameElement;
+ new(): HTMLFrameElement;
+};
+
+interface HTMLFrameSetElementEventMap extends HTMLElementEventMap, WindowEventHandlersEventMap {
+}
+
+/**
+ * Provides special properties (beyond those of the regular HTMLElement interface they also inherit) for manipulating <frameset> elements.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFrameSetElement)
+ */
+interface HTMLFrameSetElement extends HTMLElement, WindowEventHandlers {
+ /**
+ * Sets or retrieves the frame widths of the object.
+ * @deprecated
+ */
+ cols: string;
+ /**
+ * Sets or retrieves the frame heights of the object.
+ * @deprecated
+ */
+ rows: string;
+ addEventListener<K extends keyof HTMLFrameSetElementEventMap>(type: K, listener: (this: HTMLFrameSetElement, ev: HTMLFrameSetElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLFrameSetElementEventMap>(type: K, listener: (this: HTMLFrameSetElement, ev: HTMLFrameSetElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var HTMLFrameSetElement: {
+ prototype: HTMLFrameSetElement;
+ new(): HTMLFrameSetElement;
+};
+
+/**
+ * Provides special properties (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating <hr> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHRElement)
+ */
+interface HTMLHRElement extends HTMLElement {
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ */
+ align: string;
+ /** @deprecated */
+ color: string;
+ /**
+ * Sets or retrieves whether the horizontal rule is drawn with 3-D shading.
+ * @deprecated
+ */
+ noShade: boolean;
+ /** @deprecated */
+ size: string;
+ /**
+ * Sets or retrieves the width of the object.
+ * @deprecated
+ */
+ width: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHRElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLHRElement: {
+ prototype: HTMLHRElement;
+ new(): HTMLHRElement;
+};
+
+/**
+ * Contains the descriptive information, or metadata, for a document. This object inherits all of the properties and methods described in the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadElement)
+ */
+interface HTMLHeadElement extends HTMLElement {
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLHeadElement: {
+ prototype: HTMLHeadElement;
+ new(): HTMLHeadElement;
+};
+
+/**
+ * The different heading elements. It inherits methods and properties from the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement)
+ */
+interface HTMLHeadingElement extends HTMLElement {
+ /**
+ * Sets or retrieves a value that indicates the table alignment.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHeadingElement/align)
+ */
+ align: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadingElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHeadingElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLHeadingElement: {
+ prototype: HTMLHeadingElement;
+ new(): HTMLHeadingElement;
+};
+
+/**
+ * Serves as the root node for a given HTML document. This object inherits the properties and methods described in the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHtmlElement)
+ */
+interface HTMLHtmlElement extends HTMLElement {
+ /**
+ * Sets or retrieves the DTD version that governs the current document.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLHtmlElement/version)
+ */
+ version: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHtmlElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLHtmlElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLHtmlElement: {
+ prototype: HTMLHtmlElement;
+ new(): HTMLHtmlElement;
+};
+
+interface HTMLHyperlinkElementUtils {
+ /**
+ * Returns the hyperlink's URL's fragment (includes leading "#" if non-empty).
+ *
+ * Can be set, to change the URL's fragment (ignores leading "#").
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hash)
+ */
+ hash: string;
+ /**
+ * Returns the hyperlink's URL's host and port (if different from the default port for the scheme).
+ *
+ * Can be set, to change the URL's host and port.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/host)
+ */
+ host: string;
+ /**
+ * Returns the hyperlink's URL's host.
+ *
+ * Can be set, to change the URL's host.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/hostname)
+ */
+ hostname: string;
+ /**
+ * Returns the hyperlink's URL.
+ *
+ * Can be set, to change the URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/href)
+ */
+ href: string;
+ toString(): string;
+ /**
+ * Returns the hyperlink's URL's origin.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/origin)
+ */
+ readonly origin: string;
+ /**
+ * Returns the hyperlink's URL's password.
+ *
+ * Can be set, to change the URL's password.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/password)
+ */
+ password: string;
+ /**
+ * Returns the hyperlink's URL's path.
+ *
+ * Can be set, to change the URL's path.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/pathname)
+ */
+ pathname: string;
+ /**
+ * Returns the hyperlink's URL's port.
+ *
+ * Can be set, to change the URL's port.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/port)
+ */
+ port: string;
+ /**
+ * Returns the hyperlink's URL's scheme.
+ *
+ * Can be set, to change the URL's scheme.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/protocol)
+ */
+ protocol: string;
+ /**
+ * Returns the hyperlink's URL's query (includes leading "?" if non-empty).
+ *
+ * Can be set, to change the URL's query (ignores leading "?").
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/search)
+ */
+ search: string;
+ /**
+ * Returns the hyperlink's URL's username.
+ *
+ * Can be set, to change the URL's username.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLAnchorElement/username)
+ */
+ username: string;
+}
+
+/**
+ * Provides special properties and methods (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of inline frame elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement)
+ */
+interface HTMLIFrameElement extends HTMLElement {
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/align)
+ */
+ align: string;
+ allow: string;
+ allowFullscreen: boolean;
+ /**
+ * Retrieves the document object of the page or frame.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentDocument)
+ */
+ readonly contentDocument: Document | null;
+ /**
+ * Retrieves the object of the specified.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/contentWindow)
+ */
+ readonly contentWindow: WindowProxy | null;
+ /**
+ * Sets or retrieves whether to display a border for the frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/frameBorder)
+ */
+ frameBorder: string;
+ /**
+ * Sets or retrieves the height of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/height)
+ */
+ height: string;
+ loading: string;
+ /**
+ * Sets or retrieves a URI to a long description of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/longDesc)
+ */
+ longDesc: string;
+ /**
+ * Sets or retrieves the top and bottom margin heights before displaying the text in a frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/marginHeight)
+ */
+ marginHeight: string;
+ /**
+ * Sets or retrieves the left and right margin widths before displaying the text in a frame.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/marginWidth)
+ */
+ marginWidth: string;
+ /**
+ * Sets or retrieves the frame name.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/name)
+ */
+ name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/referrerPolicy) */
+ referrerPolicy: ReferrerPolicy;
+ readonly sandbox: DOMTokenList;
+ /**
+ * Sets or retrieves whether the frame can be scrolled.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/scrolling)
+ */
+ scrolling: string;
+ /**
+ * Sets or retrieves a URL to be loaded by the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/src)
+ */
+ src: string;
+ /**
+ * Sets or retrives the content of the page that is to contain.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/srcdoc)
+ */
+ srcdoc: string;
+ /**
+ * Sets or retrieves the width of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLIFrameElement/width)
+ */
+ width: string;
+ getSVGDocument(): Document | null;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLIFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLIFrameElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLIFrameElement: {
+ prototype: HTMLIFrameElement;
+ new(): HTMLIFrameElement;
+};
+
+/**
+ * Provides special properties and methods for manipulating <img> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement)
+ */
+interface HTMLImageElement extends HTMLElement {
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/align)
+ */
+ align: string;
+ /**
+ * Sets or retrieves a text alternative to the graphic.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/alt)
+ */
+ alt: string;
+ /**
+ * Specifies the properties of a border drawn around an object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/border)
+ */
+ border: string;
+ /**
+ * Retrieves whether the object is fully loaded.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/complete)
+ */
+ readonly complete: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/crossOrigin) */
+ crossOrigin: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/currentSrc) */
+ readonly currentSrc: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/decoding) */
+ decoding: "async" | "sync" | "auto";
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/fetchPriority) */
+ fetchPriority: string;
+ /**
+ * Sets or retrieves the height of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/height)
+ */
+ height: number;
+ /**
+ * Sets or retrieves the width of the border to draw around the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/hspace)
+ */
+ hspace: number;
+ /**
+ * Sets or retrieves whether the image is a server-side image map.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/isMap)
+ */
+ isMap: boolean;
+ /**
+ * Sets or retrieves the policy for loading image elements that are outside the viewport.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/loading)
+ */
+ loading: "eager" | "lazy";
+ /**
+ * Sets or retrieves a Uniform Resource Identifier (URI) to a long description of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/longDesc)
+ */
+ longDesc: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/lowsrc)
+ */
+ lowsrc: string;
+ /**
+ * Sets or retrieves the name of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/name)
+ */
+ name: string;
+ /**
+ * The original height of the image resource before sizing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/naturalHeight)
+ */
+ readonly naturalHeight: number;
+ /**
+ * The original width of the image resource before sizing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/naturalWidth)
+ */
+ readonly naturalWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/referrerPolicy) */
+ referrerPolicy: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/sizes) */
+ sizes: string;
+ /**
+ * The address or URL of the a media resource that is to be considered.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/src)
+ */
+ src: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/srcset) */
+ srcset: string;
+ /**
+ * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/useMap)
+ */
+ useMap: string;
+ /**
+ * Sets or retrieves the vertical margin for the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/vspace)
+ */
+ vspace: number;
+ /**
+ * Sets or retrieves the width of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/width)
+ */
+ width: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/x) */
+ readonly x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/y) */
+ readonly y: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLImageElement/decode) */
+ decode(): Promise<void>;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLImageElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLImageElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLImageElement: {
+ prototype: HTMLImageElement;
+ new(): HTMLImageElement;
+};
+
+/**
+ * Provides special properties and methods for manipulating the options, layout, and presentation of <input> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement)
+ */
+interface HTMLInputElement extends HTMLElement, PopoverInvokerElement {
+ /** Sets or retrieves a comma-separated list of content types. */
+ accept: string;
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ */
+ align: string;
+ /** Sets or retrieves a text alternative to the graphic. */
+ alt: string;
+ /**
+ * Specifies whether autocomplete is applied to an editable text field.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/autocomplete)
+ */
+ autocomplete: AutoFill;
+ capture: string;
+ /** Sets or retrieves the state of the check box or radio button. */
+ checked: boolean;
+ /** Sets or retrieves the state of the check box or radio button. */
+ defaultChecked: boolean;
+ /** Sets or retrieves the initial contents of the object. */
+ defaultValue: string;
+ dirName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/disabled) */
+ disabled: boolean;
+ /**
+ * Returns a FileList object on a file type input object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/files)
+ */
+ files: FileList | null;
+ /** Retrieves a reference to the form that the object is embedded in. */
+ readonly form: HTMLFormElement | null;
+ /**
+ * Overrides the action attribute (where the data on a form is sent) on the parent form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formAction)
+ */
+ formAction: string;
+ /**
+ * Used to override the encoding (formEnctype attribute) specified on the form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formEnctype)
+ */
+ formEnctype: string;
+ /**
+ * Overrides the submit method attribute previously specified on a form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formMethod)
+ */
+ formMethod: string;
+ /**
+ * Overrides any validation or required attributes on a form or form elements to allow it to be submitted without validation. This can be used to create a "save draft"-type submit option.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formNoValidate)
+ */
+ formNoValidate: boolean;
+ /**
+ * Overrides the target attribute on a form element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/formTarget)
+ */
+ formTarget: string;
+ /**
+ * Sets or retrieves the height of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/height)
+ */
+ height: number;
+ /** When set, overrides the rendering of checkbox controls so that the current value is not visible. */
+ indeterminate: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/labels) */
+ readonly labels: NodeListOf<HTMLLabelElement> | null;
+ /**
+ * Specifies the ID of a pre-defined datalist of options for an input element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/list)
+ */
+ readonly list: HTMLDataListElement | null;
+ /** Defines the maximum acceptable value for an input element with type="number".When used with the min and step attributes, lets you control the range and increment (such as only even numbers) that the user can enter into an input field. */
+ max: string;
+ /** Sets or retrieves the maximum number of characters that the user can enter in a text control. */
+ maxLength: number;
+ /** Defines the minimum acceptable value for an input element with type="number". When used with the max and step attributes, lets you control the range and increment (such as even numbers only) that the user can enter into an input field. */
+ min: string;
+ minLength: number;
+ /**
+ * Sets or retrieves the Boolean value indicating whether multiple items can be selected from a list.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/multiple)
+ */
+ multiple: boolean;
+ /** Sets or retrieves the name of the object. */
+ name: string;
+ /**
+ * Gets or sets a string containing a regular expression that the user's input must match.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/pattern)
+ */
+ pattern: string;
+ /**
+ * Gets or sets a text string that is displayed in an input field as a hint or prompt to users as the format or type of information they need to enter.The text appears in an input field until the user puts focus on the field.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/placeholder)
+ */
+ placeholder: string;
+ readOnly: boolean;
+ /**
+ * When present, marks an element that can't be submitted without a value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/required)
+ */
+ required: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/selectionDirection) */
+ selectionDirection: "forward" | "backward" | "none" | null;
+ /** Gets or sets the end position or offset of a text selection. */
+ selectionEnd: number | null;
+ /** Gets or sets the starting position or offset of a text selection. */
+ selectionStart: number | null;
+ size: number;
+ /** The address or URL of the a media resource that is to be considered. */
+ src: string;
+ /** Defines an increment or jump between values that you want to allow the user to enter. When used with the max and min attributes, lets you control the range and increment (for example, allow only even numbers) that the user can enter into an input field. */
+ step: string;
+ /** Returns the content type of the object. */
+ type: string;
+ /**
+ * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.
+ * @deprecated
+ */
+ useMap: string;
+ /**
+ * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/validationMessage)
+ */
+ readonly validationMessage: string;
+ /**
+ * Returns a ValidityState object that represents the validity states of an element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/validity)
+ */
+ readonly validity: ValidityState;
+ /** Returns the value of the data at the cursor's current position. */
+ value: string;
+ /** Returns a Date object representing the form control's value, if applicable; otherwise, returns null. Can be set, to change the value. Throws an "InvalidStateError" DOMException if the control isn't date- or time-based. */
+ valueAsDate: Date | null;
+ /** Returns the input field value as a number. */
+ valueAsNumber: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/webkitEntries) */
+ readonly webkitEntries: ReadonlyArray<FileSystemEntry>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/webkitdirectory) */
+ webkitdirectory: boolean;
+ /**
+ * Sets or retrieves the width of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/width)
+ */
+ width: number;
+ /**
+ * Returns whether an element will successfully validate based on forms validation rules and constraints.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/willValidate)
+ */
+ readonly willValidate: boolean;
+ /**
+ * Returns whether a form will validate when it is submitted, without having to submit it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/checkValidity)
+ */
+ checkValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/reportValidity) */
+ reportValidity(): boolean;
+ /**
+ * Makes the selection equal to the current object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select)
+ */
+ select(): void;
+ /**
+ * Sets a custom error message that is displayed when a form is submitted.
+ * @param error Sets a custom error message that is displayed when a form is submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setCustomValidity)
+ */
+ setCustomValidity(error: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setRangeText) */
+ setRangeText(replacement: string): void;
+ setRangeText(replacement: string, start: number, end: number, selectionMode?: SelectionMode): void;
+ /**
+ * Sets the start and end positions of a selection in a text field.
+ * @param start The offset into the text field for the start of the selection.
+ * @param end The offset into the text field for the end of the selection.
+ * @param direction The direction in which the selection is performed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/setSelectionRange)
+ */
+ setSelectionRange(start: number | null, end: number | null, direction?: "forward" | "backward" | "none"): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/showPicker) */
+ showPicker(): void;
+ /**
+ * Decrements a range input control's value by the value given by the Step attribute. If the optional parameter is used, it will decrement the input control's step value multiplied by the parameter's value.
+ * @param n Value to decrement the value by.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/stepDown)
+ */
+ stepDown(n?: number): void;
+ /**
+ * Increments a range input control's value by the value given by the Step attribute. If the optional parameter is used, will increment the input control's value by that value.
+ * @param n Value to increment the value by.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/stepUp)
+ */
+ stepUp(n?: number): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLInputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLInputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLInputElement: {
+ prototype: HTMLInputElement;
+ new(): HTMLInputElement;
+};
+
+/**
+ * Exposes specific properties and methods (beyond those defined by regular HTMLElement interface it also has available to it by inheritance) for manipulating list elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLIElement)
+ */
+interface HTMLLIElement extends HTMLElement {
+ /** @deprecated */
+ type: string;
+ /** Sets or retrieves the value of a list item. */
+ value: number;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLIElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLIElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLLIElement: {
+ prototype: HTMLLIElement;
+ new(): HTMLLIElement;
+};
+
+/**
+ * Gives access to properties specific to <label> elements. It inherits methods and properties from the base HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement)
+ */
+interface HTMLLabelElement extends HTMLElement {
+ /**
+ * Returns the form control that is associated with this element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/control)
+ */
+ readonly control: HTMLElement | null;
+ /**
+ * Retrieves a reference to the form that the object is embedded in.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/form)
+ */
+ readonly form: HTMLFormElement | null;
+ /**
+ * Sets or retrieves the object to which the given label object is assigned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLabelElement/htmlFor)
+ */
+ htmlFor: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLabelElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLabelElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLLabelElement: {
+ prototype: HTMLLabelElement;
+ new(): HTMLLabelElement;
+};
+
+/**
+ * The HTMLLegendElement is an interface allowing to access properties of the <legend> elements. It inherits properties and methods from the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLegendElement)
+ */
+interface HTMLLegendElement extends HTMLElement {
+ /** @deprecated */
+ align: string;
+ /** Retrieves a reference to the form that the object is embedded in. */
+ readonly form: HTMLFormElement | null;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLegendElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLegendElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLLegendElement: {
+ prototype: HTMLLegendElement;
+ new(): HTMLLegendElement;
+};
+
+/**
+ * Reference information for external resources and the relationship of those resources to a document and vice-versa. This object inherits all of the properties and methods of the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement)
+ */
+interface HTMLLinkElement extends HTMLElement, LinkStyle {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/as) */
+ as: string;
+ /**
+ * Sets or retrieves the character set used to encode the object.
+ * @deprecated
+ */
+ charset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/crossOrigin) */
+ crossOrigin: string | null;
+ disabled: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/fetchPriority) */
+ fetchPriority: string;
+ /**
+ * Sets or retrieves a destination URL or an anchor point.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/href)
+ */
+ href: string;
+ /**
+ * Sets or retrieves the language code of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/hreflang)
+ */
+ hreflang: string;
+ imageSizes: string;
+ imageSrcset: string;
+ integrity: string;
+ /** Sets or retrieves the media type. */
+ media: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/referrerPolicy) */
+ referrerPolicy: string;
+ /**
+ * Sets or retrieves the relationship between the object and the destination of the link.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/rel)
+ */
+ rel: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/relList) */
+ readonly relList: DOMTokenList;
+ /**
+ * Sets or retrieves the relationship between the object and the destination of the link.
+ * @deprecated
+ */
+ rev: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/sizes) */
+ readonly sizes: DOMTokenList;
+ /**
+ * Sets or retrieves the window or frame at which to target content.
+ * @deprecated
+ */
+ target: string;
+ /** Sets or retrieves the MIME type of the object. */
+ type: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLinkElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLLinkElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLLinkElement: {
+ prototype: HTMLLinkElement;
+ new(): HTMLLinkElement;
+};
+
+/**
+ * Provides special properties and methods (beyond those of the regular object HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of map elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMapElement)
+ */
+interface HTMLMapElement extends HTMLElement {
+ /**
+ * Retrieves a collection of the area objects defined for the given map object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMapElement/areas)
+ */
+ readonly areas: HTMLCollection;
+ /**
+ * Sets or retrieves the name of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMapElement/name)
+ */
+ name: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMapElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMapElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLMapElement: {
+ prototype: HTMLMapElement;
+ new(): HTMLMapElement;
+};
+
+/**
+ * Provides methods to manipulate <marquee> elements.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMarqueeElement)
+ */
+interface HTMLMarqueeElement extends HTMLElement {
+ /** @deprecated */
+ behavior: string;
+ /** @deprecated */
+ bgColor: string;
+ /** @deprecated */
+ direction: string;
+ /** @deprecated */
+ height: string;
+ /** @deprecated */
+ hspace: number;
+ /** @deprecated */
+ loop: number;
+ /** @deprecated */
+ scrollAmount: number;
+ /** @deprecated */
+ scrollDelay: number;
+ /** @deprecated */
+ trueSpeed: boolean;
+ /** @deprecated */
+ vspace: number;
+ /** @deprecated */
+ width: string;
+ /** @deprecated */
+ start(): void;
+ /** @deprecated */
+ stop(): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMarqueeElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMarqueeElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var HTMLMarqueeElement: {
+ prototype: HTMLMarqueeElement;
+ new(): HTMLMarqueeElement;
+};
+
+interface HTMLMediaElementEventMap extends HTMLElementEventMap {
+ "encrypted": MediaEncryptedEvent;
+ "waitingforkey": Event;
+}
+
+/**
+ * Adds to HTMLElement the properties and methods needed to support basic media-related capabilities that are common to audio and video.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement)
+ */
+interface HTMLMediaElement extends HTMLElement {
+ /**
+ * Gets or sets a value that indicates whether to start playing the media automatically.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/autoplay)
+ */
+ autoplay: boolean;
+ /**
+ * Gets a collection of buffered time ranges.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/buffered)
+ */
+ readonly buffered: TimeRanges;
+ /**
+ * Gets or sets a flag that indicates whether the client provides a set of controls for the media (in case the developer does not include controls for the player).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/controls)
+ */
+ controls: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/crossOrigin) */
+ crossOrigin: string | null;
+ /**
+ * Gets the address or URL of the current media resource that is selected by IHTMLMediaElement.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/currentSrc)
+ */
+ readonly currentSrc: string;
+ /**
+ * Gets or sets the current playback position, in seconds.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/currentTime)
+ */
+ currentTime: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/defaultMuted) */
+ defaultMuted: boolean;
+ /**
+ * Gets or sets the default playback rate when the user is not using fast forward or reverse for a video or audio resource.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/defaultPlaybackRate)
+ */
+ defaultPlaybackRate: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/disableRemotePlayback) */
+ disableRemotePlayback: boolean;
+ /**
+ * Returns the duration in seconds of the current media resource. A NaN value is returned if duration is not available, or Infinity if the media resource is streaming.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/duration)
+ */
+ readonly duration: number;
+ /**
+ * Gets information about whether the playback has ended or not.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ended)
+ */
+ readonly ended: boolean;
+ /**
+ * Returns an object representing the current error state of the audio or video element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/error)
+ */
+ readonly error: MediaError | null;
+ /**
+ * Gets or sets a flag to specify whether playback should restart after it completes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loop)
+ */
+ loop: boolean;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/mediaKeys)
+ */
+ readonly mediaKeys: MediaKeys | null;
+ /**
+ * Gets or sets a flag that indicates whether the audio (either audio or the audio track on video media) is muted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/muted)
+ */
+ muted: boolean;
+ /**
+ * Gets the current network activity for the element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/networkState)
+ */
+ readonly networkState: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/encrypted_event) */
+ onencrypted: ((this: HTMLMediaElement, ev: MediaEncryptedEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/waitingforkey_event) */
+ onwaitingforkey: ((this: HTMLMediaElement, ev: Event) => any) | null;
+ /**
+ * Gets a flag that specifies whether playback is paused.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/paused)
+ */
+ readonly paused: boolean;
+ /**
+ * Gets or sets the current rate of speed for the media resource to play. This speed is expressed as a multiple of the normal speed of the media resource.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playbackRate)
+ */
+ playbackRate: number;
+ /**
+ * Gets TimeRanges for the current media resource that has been played.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/played)
+ */
+ readonly played: TimeRanges;
+ /**
+ * Gets or sets a value indicating what data should be preloaded, if any.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/preload)
+ */
+ preload: "none" | "metadata" | "auto" | "";
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/preservesPitch) */
+ preservesPitch: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/readyState) */
+ readonly readyState: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/remote) */
+ readonly remote: RemotePlayback;
+ /**
+ * Returns a TimeRanges object that represents the ranges of the current media resource that can be seeked.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seekable)
+ */
+ readonly seekable: TimeRanges;
+ /**
+ * Gets a flag that indicates whether the client is currently moving to a new playback position in the media resource.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeking)
+ */
+ readonly seeking: boolean;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/sinkId)
+ */
+ readonly sinkId: string;
+ /**
+ * The address or URL of the a media resource that is to be considered.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/src)
+ */
+ src: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/srcObject) */
+ srcObject: MediaProvider | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/textTracks) */
+ readonly textTracks: TextTrackList;
+ /**
+ * Gets or sets the volume level for audio portions of the media element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volume)
+ */
+ volume: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/addTextTrack) */
+ addTextTrack(kind: TextTrackKind, label?: string, language?: string): TextTrack;
+ /**
+ * Returns a string that specifies whether the client can play a given media resource type.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canPlayType)
+ */
+ canPlayType(type: string): CanPlayTypeResult;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/fastSeek) */
+ fastSeek(time: number): void;
+ /**
+ * Resets the audio or video object and loads a new media resource.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/load)
+ */
+ load(): void;
+ /**
+ * Pauses the current playback and sets paused to TRUE.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/pause)
+ */
+ pause(): void;
+ /**
+ * Loads and starts playback of a media resource.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/play)
+ */
+ play(): Promise<void>;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/setMediaKeys)
+ */
+ setMediaKeys(mediaKeys: MediaKeys | null): Promise<void>;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/setSinkId)
+ */
+ setSinkId(sinkId: string): Promise<void>;
+ readonly NETWORK_EMPTY: 0;
+ readonly NETWORK_IDLE: 1;
+ readonly NETWORK_LOADING: 2;
+ readonly NETWORK_NO_SOURCE: 3;
+ readonly HAVE_NOTHING: 0;
+ readonly HAVE_METADATA: 1;
+ readonly HAVE_CURRENT_DATA: 2;
+ readonly HAVE_FUTURE_DATA: 3;
+ readonly HAVE_ENOUGH_DATA: 4;
+ addEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLMediaElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLMediaElementEventMap>(type: K, listener: (this: HTMLMediaElement, ev: HTMLMediaElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLMediaElement: {
+ prototype: HTMLMediaElement;
+ new(): HTMLMediaElement;
+ readonly NETWORK_EMPTY: 0;
+ readonly NETWORK_IDLE: 1;
+ readonly NETWORK_LOADING: 2;
+ readonly NETWORK_NO_SOURCE: 3;
+ readonly HAVE_NOTHING: 0;
+ readonly HAVE_METADATA: 1;
+ readonly HAVE_CURRENT_DATA: 2;
+ readonly HAVE_FUTURE_DATA: 3;
+ readonly HAVE_ENOUGH_DATA: 4;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMenuElement) */
+interface HTMLMenuElement extends HTMLElement {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMenuElement/compact)
+ */
+ compact: boolean;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMenuElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMenuElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLMenuElement: {
+ prototype: HTMLMenuElement;
+ new(): HTMLMenuElement;
+};
+
+/**
+ * Contains descriptive metadata about a document. It inherits all of the properties and methods described in the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMetaElement)
+ */
+interface HTMLMetaElement extends HTMLElement {
+ /** Gets or sets meta-information to associate with httpEquiv or name. */
+ content: string;
+ /** Gets or sets information used to bind the value of a content attribute of a meta element to an HTTP response header. */
+ httpEquiv: string;
+ media: string;
+ /** Sets or retrieves the value specified in the content attribute of the meta object. */
+ name: string;
+ /**
+ * Sets or retrieves a scheme to be used in interpreting the value of a property specified for the object.
+ * @deprecated
+ */
+ scheme: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMetaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMetaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLMetaElement: {
+ prototype: HTMLMetaElement;
+ new(): HTMLMetaElement;
+};
+
+/**
+ * The HTML <meter> elements expose the HTMLMeterElement interface, which provides special properties and methods (beyond the HTMLElement object interface they also have available to them by inheritance) for manipulating the layout and presentation of <meter> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement)
+ */
+interface HTMLMeterElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/high) */
+ high: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/labels) */
+ readonly labels: NodeListOf<HTMLLabelElement>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/low) */
+ low: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/max) */
+ max: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/min) */
+ min: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/optimum) */
+ optimum: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMeterElement/value) */
+ value: number;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMeterElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLMeterElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLMeterElement: {
+ prototype: HTMLMeterElement;
+ new(): HTMLMeterElement;
+};
+
+/**
+ * Provides special properties (beyond the regular methods and properties available through the HTMLElement interface they also have available to them by inheritance) for manipulating modification elements, that is <del> and <ins>.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLModElement)
+ */
+interface HTMLModElement extends HTMLElement {
+ /**
+ * Sets or retrieves reference information about the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLModElement/cite)
+ */
+ cite: string;
+ /**
+ * Sets or retrieves the date and time of a modification to the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLModElement/dateTime)
+ */
+ dateTime: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLModElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLModElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLModElement: {
+ prototype: HTMLModElement;
+ new(): HTMLModElement;
+};
+
+/**
+ * Provides special properties (beyond those defined on the regular HTMLElement interface it also has available to it by inheritance) for manipulating ordered list elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement)
+ */
+interface HTMLOListElement extends HTMLElement {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/compact)
+ */
+ compact: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/reversed) */
+ reversed: boolean;
+ /**
+ * The starting number.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/start)
+ */
+ start: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOListElement/type) */
+ type: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLOListElement: {
+ prototype: HTMLOListElement;
+ new(): HTMLOListElement;
+};
+
+/**
+ * Provides special properties and methods (beyond those on the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <object> element, representing external resources.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement)
+ */
+interface HTMLObjectElement extends HTMLElement {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/align)
+ */
+ align: string;
+ /**
+ * Sets or retrieves a character string that can be used to implement your own archive functionality for the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/archive)
+ */
+ archive: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/border)
+ */
+ border: string;
+ /**
+ * Sets or retrieves the URL of the file containing the compiled Java class.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/code)
+ */
+ code: string;
+ /**
+ * Sets or retrieves the URL of the component.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/codeBase)
+ */
+ codeBase: string;
+ /**
+ * Sets or retrieves the Internet media type for the code associated with the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/codeType)
+ */
+ codeType: string;
+ /**
+ * Retrieves the document object of the page or frame.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/contentDocument)
+ */
+ readonly contentDocument: Document | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/contentWindow) */
+ readonly contentWindow: WindowProxy | null;
+ /**
+ * Sets or retrieves the URL that references the data of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/data)
+ */
+ data: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/declare)
+ */
+ declare: boolean;
+ /**
+ * Retrieves a reference to the form that the object is embedded in.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/form)
+ */
+ readonly form: HTMLFormElement | null;
+ /**
+ * Sets or retrieves the height of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/height)
+ */
+ height: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/hspace)
+ */
+ hspace: number;
+ /**
+ * Sets or retrieves the name of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/name)
+ */
+ name: string;
+ /**
+ * Sets or retrieves a message to be displayed while an object is loading.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/standby)
+ */
+ standby: string;
+ /**
+ * Sets or retrieves the MIME type of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/type)
+ */
+ type: string;
+ /**
+ * Sets or retrieves the URL, often with a bookmark extension (#name), to use as a client-side image map.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/useMap)
+ */
+ useMap: string;
+ /**
+ * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/validationMessage)
+ */
+ readonly validationMessage: string;
+ /**
+ * Returns a ValidityState object that represents the validity states of an element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/validity)
+ */
+ readonly validity: ValidityState;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/vspace)
+ */
+ vspace: number;
+ /**
+ * Sets or retrieves the width of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/width)
+ */
+ width: string;
+ /**
+ * Returns whether an element will successfully validate based on forms validation rules and constraints.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/willValidate)
+ */
+ readonly willValidate: boolean;
+ /**
+ * Returns whether a form will validate when it is submitted, without having to submit it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/checkValidity)
+ */
+ checkValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/getSVGDocument) */
+ getSVGDocument(): Document | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/reportValidity) */
+ reportValidity(): boolean;
+ /**
+ * Sets a custom error message that is displayed when a form is submitted.
+ * @param error Sets a custom error message that is displayed when a form is submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLObjectElement/setCustomValidity)
+ */
+ setCustomValidity(error: string): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLObjectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLObjectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLObjectElement: {
+ prototype: HTMLObjectElement;
+ new(): HTMLObjectElement;
+};
+
+/**
+ * Provides special properties and methods (beyond the regular HTMLElement object interface they also have available to them by inheritance) for manipulating the layout and presentation of <optgroup> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement)
+ */
+interface HTMLOptGroupElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement/disabled) */
+ disabled: boolean;
+ /**
+ * Sets or retrieves a value that you can use to implement your own label functionality for the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptGroupElement/label)
+ */
+ label: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptGroupElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptGroupElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLOptGroupElement: {
+ prototype: HTMLOptGroupElement;
+ new(): HTMLOptGroupElement;
+};
+
+/**
+ * <option> elements and inherits all classes and methods of the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement)
+ */
+interface HTMLOptionElement extends HTMLElement {
+ /**
+ * Sets or retrieves the status of an option.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/defaultSelected)
+ */
+ defaultSelected: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/disabled) */
+ disabled: boolean;
+ /**
+ * Retrieves a reference to the form that the object is embedded in.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/form)
+ */
+ readonly form: HTMLFormElement | null;
+ /**
+ * Sets or retrieves the ordinal position of an option in a list box.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/index)
+ */
+ readonly index: number;
+ /**
+ * Sets or retrieves a value that you can use to implement your own label functionality for the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/label)
+ */
+ label: string;
+ /**
+ * Sets or retrieves whether the option in the list box is the default item.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/selected)
+ */
+ selected: boolean;
+ /**
+ * Sets or retrieves the text string specified by the option tag.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/text)
+ */
+ text: string;
+ /**
+ * Sets or retrieves the value which is returned to the server when the form control is submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionElement/value)
+ */
+ value: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLOptionElement: {
+ prototype: HTMLOptionElement;
+ new(): HTMLOptionElement;
+};
+
+/**
+ * HTMLOptionsCollection is an interface representing a collection of HTML option elements (in document order) and offers methods and properties for traversing the list as well as optionally altering its items. This type is returned solely by the "options" property of select.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection)
+ */
+interface HTMLOptionsCollection extends HTMLCollectionOf<HTMLOptionElement> {
+ /**
+ * Returns the number of elements in the collection.
+ *
+ * When set to a smaller number, truncates the number of option elements in the corresponding container.
+ *
+ * When set to a greater number, adds new blank option elements to that container.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/length)
+ */
+ length: number;
+ /**
+ * Returns the index of the first selected item, if any, or −1 if there is no selected item.
+ *
+ * Can be set, to change the selection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/selectedIndex)
+ */
+ selectedIndex: number;
+ /**
+ * Inserts element before the node given by before.
+ *
+ * The before argument can be a number, in which case element is inserted before the item with that number, or an element from the collection, in which case element is inserted before that element.
+ *
+ * If before is omitted, null, or a number out of range, then element will be added at the end of the list.
+ *
+ * This method will throw a "HierarchyRequestError" DOMException if element is an ancestor of the element into which it is to be inserted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/add)
+ */
+ add(element: HTMLOptionElement | HTMLOptGroupElement, before?: HTMLElement | number | null): void;
+ /**
+ * Removes the item with index index from the collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOptionsCollection/remove)
+ */
+ remove(index: number): void;
+}
+
+declare var HTMLOptionsCollection: {
+ prototype: HTMLOptionsCollection;
+ new(): HTMLOptionsCollection;
+};
+
+interface HTMLOrSVGElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/autofocus) */
+ autofocus: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dataset) */
+ readonly dataset: DOMStringMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/nonce) */
+ nonce?: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/tabIndex) */
+ tabIndex: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/blur) */
+ blur(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/focus) */
+ focus(options?: FocusOptions): void;
+}
+
+/**
+ * Provides properties and methods (beyond those inherited from HTMLElement) for manipulating the layout and presentation of <output> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement)
+ */
+interface HTMLOutputElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/defaultValue) */
+ defaultValue: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/form) */
+ readonly form: HTMLFormElement | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/htmlFor) */
+ readonly htmlFor: DOMTokenList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/labels) */
+ readonly labels: NodeListOf<HTMLLabelElement>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/name) */
+ name: string;
+ /**
+ * Returns the string "output".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/type)
+ */
+ readonly type: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/validationMessage) */
+ readonly validationMessage: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/validity) */
+ readonly validity: ValidityState;
+ /**
+ * Returns the element's current value.
+ *
+ * Can be set, to change the value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/value)
+ */
+ value: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/willValidate) */
+ readonly willValidate: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/checkValidity) */
+ checkValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/reportValidity) */
+ reportValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLOutputElement/setCustomValidity) */
+ setCustomValidity(error: string): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOutputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLOutputElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLOutputElement: {
+ prototype: HTMLOutputElement;
+ new(): HTMLOutputElement;
+};
+
+/**
+ * Provides special properties (beyond those of the regular HTMLElement object interface it inherits) for manipulating <p> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParagraphElement)
+ */
+interface HTMLParagraphElement extends HTMLElement {
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParagraphElement/align)
+ */
+ align: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParagraphElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParagraphElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLParagraphElement: {
+ prototype: HTMLParagraphElement;
+ new(): HTMLParagraphElement;
+};
+
+/**
+ * Provides special properties (beyond those of the regular HTMLElement object interface it inherits) for manipulating <param> elements, representing a pair of a key and a value that acts as a parameter for an <object> element.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement)
+ */
+interface HTMLParamElement extends HTMLElement {
+ /**
+ * Sets or retrieves the name of an input parameter for an element.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/name)
+ */
+ name: string;
+ /**
+ * Sets or retrieves the content type of the resource designated by the value attribute.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/type)
+ */
+ type: string;
+ /**
+ * Sets or retrieves the value of an input parameter for an element.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/value)
+ */
+ value: string;
+ /**
+ * Sets or retrieves the data type of the value attribute.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLParamElement/valueType)
+ */
+ valueType: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParamElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLParamElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var HTMLParamElement: {
+ prototype: HTMLParamElement;
+ new(): HTMLParamElement;
+};
+
+/**
+ * A <picture> HTML element. It doesn't implement specific properties or methods.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLPictureElement)
+ */
+interface HTMLPictureElement extends HTMLElement {
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPictureElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPictureElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLPictureElement: {
+ prototype: HTMLPictureElement;
+ new(): HTMLPictureElement;
+};
+
+/**
+ * Exposes specific properties and methods (beyond those of the HTMLElement interface it also has available to it by inheritance) for manipulating a block of preformatted text (<pre>).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLPreElement)
+ */
+interface HTMLPreElement extends HTMLElement {
+ /**
+ * Sets or gets a value that you can use to implement your own width functionality for the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLPreElement/width)
+ */
+ width: number;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPreElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLPreElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLPreElement: {
+ prototype: HTMLPreElement;
+ new(): HTMLPreElement;
+};
+
+/**
+ * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of <progress> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement)
+ */
+interface HTMLProgressElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/labels) */
+ readonly labels: NodeListOf<HTMLLabelElement>;
+ /**
+ * Defines the maximum, or "done" value for a progress element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/max)
+ */
+ max: number;
+ /**
+ * Returns the quotient of value/max when the value attribute is set (determinate progress bar), or -1 when the value attribute is missing (indeterminate progress bar).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/position)
+ */
+ readonly position: number;
+ /**
+ * Sets or gets the current value of a progress element. The value must be a non-negative number between 0 and the max value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLProgressElement/value)
+ */
+ value: number;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLProgressElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLProgressElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLProgressElement: {
+ prototype: HTMLProgressElement;
+ new(): HTMLProgressElement;
+};
+
+/**
+ * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating quoting elements, like <blockquote> and <q>, but not the <cite> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLQuoteElement)
+ */
+interface HTMLQuoteElement extends HTMLElement {
+ /**
+ * Sets or retrieves reference information about the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLQuoteElement/cite)
+ */
+ cite: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLQuoteElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLQuoteElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLQuoteElement: {
+ prototype: HTMLQuoteElement;
+ new(): HTMLQuoteElement;
+};
+
+/**
+ * HTML <script> elements expose the HTMLScriptElement interface, which provides special properties and methods for manipulating the behavior and execution of <script> elements (beyond the inherited HTMLElement interface).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement)
+ */
+interface HTMLScriptElement extends HTMLElement {
+ async: boolean;
+ /**
+ * Sets or retrieves the character set used to encode the object.
+ * @deprecated
+ */
+ charset: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/crossOrigin) */
+ crossOrigin: string | null;
+ /** Sets or retrieves the status of the script. */
+ defer: boolean;
+ /**
+ * Sets or retrieves the event for which the script is written.
+ * @deprecated
+ */
+ event: string;
+ fetchPriority: string;
+ /**
+ * Sets or retrieves the object that is bound to the event script.
+ * @deprecated
+ */
+ htmlFor: string;
+ integrity: string;
+ noModule: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/referrerPolicy) */
+ referrerPolicy: string;
+ /** Retrieves the URL to an external file that contains the source code or data. */
+ src: string;
+ /** Retrieves or sets the text of the object as a string. */
+ text: string;
+ /** Sets or retrieves the MIME type for the associated scripting engine. */
+ type: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLScriptElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLScriptElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLScriptElement: {
+ prototype: HTMLScriptElement;
+ new(): HTMLScriptElement;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLScriptElement/supports_static) */
+ supports(type: string): boolean;
+};
+
+/**
+ * A <select> HTML Element. These elements also share all of the properties and methods of other HTML elements via the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement)
+ */
+interface HTMLSelectElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/autocomplete) */
+ autocomplete: AutoFill;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/disabled) */
+ disabled: boolean;
+ /**
+ * Retrieves a reference to the form that the object is embedded in.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/form)
+ */
+ readonly form: HTMLFormElement | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/labels) */
+ readonly labels: NodeListOf<HTMLLabelElement>;
+ /**
+ * Sets or retrieves the number of objects in a collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/length)
+ */
+ length: number;
+ /**
+ * Sets or retrieves the Boolean value indicating whether multiple items can be selected from a list.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/multiple)
+ */
+ multiple: boolean;
+ /**
+ * Sets or retrieves the name of the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/name)
+ */
+ name: string;
+ /**
+ * Returns an HTMLOptionsCollection of the list of options.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/options)
+ */
+ readonly options: HTMLOptionsCollection;
+ /**
+ * When present, marks an element that can't be submitted without a value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/required)
+ */
+ required: boolean;
+ /**
+ * Sets or retrieves the index of the selected option in a select object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/selectedIndex)
+ */
+ selectedIndex: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/selectedOptions) */
+ readonly selectedOptions: HTMLCollectionOf<HTMLOptionElement>;
+ /**
+ * Sets or retrieves the number of rows in the list box.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/size)
+ */
+ size: number;
+ /**
+ * Retrieves the type of select control based on the value of the MULTIPLE attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/type)
+ */
+ readonly type: string;
+ /**
+ * Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/validationMessage)
+ */
+ readonly validationMessage: string;
+ /**
+ * Returns a ValidityState object that represents the validity states of an element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/validity)
+ */
+ readonly validity: ValidityState;
+ /**
+ * Sets or retrieves the value which is returned to the server when the form control is submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/value)
+ */
+ value: string;
+ /**
+ * Returns whether an element will successfully validate based on forms validation rules and constraints.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/willValidate)
+ */
+ readonly willValidate: boolean;
+ /**
+ * Adds an element to the areas, controlRange, or options collection.
+ * @param element Variant of type Number that specifies the index position in the collection where the element is placed. If no value is given, the method places the element at the end of the collection.
+ * @param before Variant of type Object that specifies an element to insert before, or null to append the object to the collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/add)
+ */
+ add(element: HTMLOptionElement | HTMLOptGroupElement, before?: HTMLElement | number | null): void;
+ /**
+ * Returns whether a form will validate when it is submitted, without having to submit it.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/checkValidity)
+ */
+ checkValidity(): boolean;
+ /**
+ * Retrieves a select object or an object from an options collection.
+ * @param name Variant of type Number or String that specifies the object or collection to retrieve. If this parameter is an integer, it is the zero-based index of the object. If this parameter is a string, all objects with matching name or id properties are retrieved, and a collection is returned if more than one match is made.
+ * @param index Variant of type Number that specifies the zero-based index of the object to retrieve when a collection is returned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/item)
+ */
+ item(index: number): HTMLOptionElement | null;
+ /**
+ * Retrieves a select object or an object from an options collection.
+ * @param namedItem A String that specifies the name or id property of the object to retrieve. A collection is returned if more than one match is made.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/namedItem)
+ */
+ namedItem(name: string): HTMLOptionElement | null;
+ /**
+ * Removes an element from the collection.
+ * @param index Number that specifies the zero-based index of the element to remove from the collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/remove)
+ */
+ remove(): void;
+ remove(index: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/reportValidity) */
+ reportValidity(): boolean;
+ /**
+ * Sets a custom error message that is displayed when a form is submitted.
+ * @param error Sets a custom error message that is displayed when a form is submitted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/setCustomValidity)
+ */
+ setCustomValidity(error: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSelectElement/showPicker) */
+ showPicker(): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSelectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSelectElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+ [name: number]: HTMLOptionElement | HTMLOptGroupElement;
+}
+
+declare var HTMLSelectElement: {
+ prototype: HTMLSelectElement;
+ new(): HTMLSelectElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement) */
+interface HTMLSlotElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/name) */
+ name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/assign) */
+ assign(...nodes: (Element | Text)[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/assignedElements) */
+ assignedElements(options?: AssignedNodesOptions): Element[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/assignedNodes) */
+ assignedNodes(options?: AssignedNodesOptions): Node[];
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSlotElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSlotElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLSlotElement: {
+ prototype: HTMLSlotElement;
+ new(): HTMLSlotElement;
+};
+
+/**
+ * Provides special properties (beyond the regular HTMLElement object interface it also has available to it by inheritance) for manipulating <source> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement)
+ */
+interface HTMLSourceElement extends HTMLElement {
+ height: number;
+ /**
+ * Gets or sets the intended media type of the media source.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/media)
+ */
+ media: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/sizes) */
+ sizes: string;
+ /**
+ * The address or URL of the a media resource that is to be considered.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/src)
+ */
+ src: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/srcset) */
+ srcset: string;
+ /**
+ * Gets or sets the MIME type of a media resource.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSourceElement/type)
+ */
+ type: string;
+ width: number;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSourceElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSourceElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLSourceElement: {
+ prototype: HTMLSourceElement;
+ new(): HTMLSourceElement;
+};
+
+/**
+ * A <span> element and derives from the HTMLElement interface, but without implementing any additional properties or methods.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSpanElement)
+ */
+interface HTMLSpanElement extends HTMLElement {
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSpanElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLSpanElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLSpanElement: {
+ prototype: HTMLSpanElement;
+ new(): HTMLSpanElement;
+};
+
+/**
+ * A <style> element. It inherits properties and methods from its parent, HTMLElement, and from LinkStyle.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement)
+ */
+interface HTMLStyleElement extends HTMLElement, LinkStyle {
+ /**
+ * Enables or disables the style sheet.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/disabled)
+ */
+ disabled: boolean;
+ /**
+ * Sets or retrieves the media type.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/media)
+ */
+ media: string;
+ /**
+ * Retrieves the CSS language in which the style sheet is written.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLStyleElement/type)
+ */
+ type: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLStyleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLStyleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLStyleElement: {
+ prototype: HTMLStyleElement;
+ new(): HTMLStyleElement;
+};
+
+/**
+ * Special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating table caption elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCaptionElement)
+ */
+interface HTMLTableCaptionElement extends HTMLElement {
+ /**
+ * Sets or retrieves the alignment of the caption or legend.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCaptionElement/align)
+ */
+ align: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCaptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCaptionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTableCaptionElement: {
+ prototype: HTMLTableCaptionElement;
+ new(): HTMLTableCaptionElement;
+};
+
+/**
+ * Provides special properties and methods (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of table cells, either header or data cells, in an HTML document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement)
+ */
+interface HTMLTableCellElement extends HTMLElement {
+ /**
+ * Sets or retrieves abbreviated text for the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/abbr)
+ */
+ abbr: string;
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/align)
+ */
+ align: string;
+ /**
+ * Sets or retrieves a comma-delimited list of conceptual categories associated with the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/axis)
+ */
+ axis: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/bgColor)
+ */
+ bgColor: string;
+ /**
+ * Retrieves the position of the object in the cells collection of a row.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/cellIndex)
+ */
+ readonly cellIndex: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/ch)
+ */
+ ch: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/chOff)
+ */
+ chOff: string;
+ /**
+ * Sets or retrieves the number columns in the table that the object should span.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/colSpan)
+ */
+ colSpan: number;
+ /**
+ * Sets or retrieves a list of header cells that provide information for the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/headers)
+ */
+ headers: string;
+ /**
+ * Sets or retrieves the height of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/height)
+ */
+ height: string;
+ /**
+ * Sets or retrieves whether the browser automatically performs wordwrap.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/noWrap)
+ */
+ noWrap: boolean;
+ /**
+ * Sets or retrieves how many rows in a table the cell should span.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/rowSpan)
+ */
+ rowSpan: number;
+ /**
+ * Sets or retrieves the group of cells in a table to which the object's information applies.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/scope)
+ */
+ scope: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/vAlign)
+ */
+ vAlign: string;
+ /**
+ * Sets or retrieves the width of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableCellElement/width)
+ */
+ width: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTableCellElement: {
+ prototype: HTMLTableCellElement;
+ new(): HTMLTableCellElement;
+};
+
+/**
+ * Provides special properties (beyond the HTMLElement interface it also has available to it inheritance) for manipulating single or grouped table column elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement)
+ */
+interface HTMLTableColElement extends HTMLElement {
+ /**
+ * Sets or retrieves the alignment of the object relative to the display or table.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/align)
+ */
+ align: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/ch)
+ */
+ ch: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/chOff)
+ */
+ chOff: string;
+ /**
+ * Sets or retrieves the number of columns in the group.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/span)
+ */
+ span: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/vAlign)
+ */
+ vAlign: string;
+ /**
+ * Sets or retrieves the width of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableColElement/width)
+ */
+ width: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableColElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableColElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTableColElement: {
+ prototype: HTMLTableColElement;
+ new(): HTMLTableColElement;
+};
+
+/** @deprecated prefer HTMLTableCellElement */
+interface HTMLTableDataCellElement extends HTMLTableCellElement {
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableDataCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableDataCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/**
+ * Provides special properties and methods (beyond the regular HTMLElement object interface it also has available to it by inheritance) for manipulating the layout and presentation of tables in an HTML document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement)
+ */
+interface HTMLTableElement extends HTMLElement {
+ /**
+ * Sets or retrieves a value that indicates the table alignment.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/align)
+ */
+ align: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/bgColor)
+ */
+ bgColor: string;
+ /**
+ * Sets or retrieves the width of the border to draw around the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/border)
+ */
+ border: string;
+ /**
+ * Retrieves the caption object of a table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/caption)
+ */
+ caption: HTMLTableCaptionElement | null;
+ /**
+ * Sets or retrieves the amount of space between the border of the cell and the content of the cell.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/cellPadding)
+ */
+ cellPadding: string;
+ /**
+ * Sets or retrieves the amount of space between cells in a table.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/cellSpacing)
+ */
+ cellSpacing: string;
+ /**
+ * Sets or retrieves the way the border frame around the table is displayed.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/frame)
+ */
+ frame: string;
+ /**
+ * Sets or retrieves the number of horizontal rows contained in the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/rows)
+ */
+ readonly rows: HTMLCollectionOf<HTMLTableRowElement>;
+ /**
+ * Sets or retrieves which dividing lines (inner borders) are displayed.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/rules)
+ */
+ rules: string;
+ /**
+ * Sets or retrieves a description and/or structure of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/summary)
+ */
+ summary: string;
+ /**
+ * Retrieves a collection of all tBody objects in the table. Objects in this collection are in source order.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/tBodies)
+ */
+ readonly tBodies: HTMLCollectionOf<HTMLTableSectionElement>;
+ /**
+ * Retrieves the tFoot object of the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/tFoot)
+ */
+ tFoot: HTMLTableSectionElement | null;
+ /**
+ * Retrieves the tHead object of the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/tHead)
+ */
+ tHead: HTMLTableSectionElement | null;
+ /**
+ * Sets or retrieves the width of the object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/width)
+ */
+ width: string;
+ /**
+ * Creates an empty caption element in the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createCaption)
+ */
+ createCaption(): HTMLTableCaptionElement;
+ /**
+ * Creates an empty tBody element in the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createTBody)
+ */
+ createTBody(): HTMLTableSectionElement;
+ /**
+ * Creates an empty tFoot element in the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createTFoot)
+ */
+ createTFoot(): HTMLTableSectionElement;
+ /**
+ * Returns the tHead element object if successful, or null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/createTHead)
+ */
+ createTHead(): HTMLTableSectionElement;
+ /**
+ * Deletes the caption element and its contents from the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteCaption)
+ */
+ deleteCaption(): void;
+ /**
+ * Removes the specified row (tr) from the element and from the rows collection.
+ * @param index Number that specifies the zero-based position in the rows collection of the row to remove.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteRow)
+ */
+ deleteRow(index: number): void;
+ /**
+ * Deletes the tFoot element and its contents from the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteTFoot)
+ */
+ deleteTFoot(): void;
+ /**
+ * Deletes the tHead element and its contents from the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/deleteTHead)
+ */
+ deleteTHead(): void;
+ /**
+ * Creates a new row (tr) in the table, and adds the row to the rows collection.
+ * @param index Number that specifies where to insert the row in the rows collection. The default value is -1, which appends the new row to the end of the rows collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableElement/insertRow)
+ */
+ insertRow(index?: number): HTMLTableRowElement;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTableElement: {
+ prototype: HTMLTableElement;
+ new(): HTMLTableElement;
+};
+
+/** @deprecated prefer HTMLTableCellElement */
+interface HTMLTableHeaderCellElement extends HTMLTableCellElement {
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableHeaderCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableHeaderCellElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/**
+ * Provides special properties and methods (beyond the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of rows in an HTML table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement)
+ */
+interface HTMLTableRowElement extends HTMLElement {
+ /**
+ * Sets or retrieves how the object is aligned with adjacent text.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/align)
+ */
+ align: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/bgColor)
+ */
+ bgColor: string;
+ /**
+ * Retrieves a collection of all cells in the table row.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/cells)
+ */
+ readonly cells: HTMLCollectionOf<HTMLTableCellElement>;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/ch)
+ */
+ ch: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/chOff)
+ */
+ chOff: string;
+ /**
+ * Retrieves the position of the object in the rows collection for the table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/rowIndex)
+ */
+ readonly rowIndex: number;
+ /**
+ * Retrieves the position of the object in the collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/sectionRowIndex)
+ */
+ readonly sectionRowIndex: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/vAlign)
+ */
+ vAlign: string;
+ /**
+ * Removes the specified cell from the table row, as well as from the cells collection.
+ * @param index Number that specifies the zero-based position of the cell to remove from the table row. If no value is provided, the last cell in the cells collection is deleted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/deleteCell)
+ */
+ deleteCell(index: number): void;
+ /**
+ * Creates a new cell in the table row, and adds the cell to the cells collection.
+ * @param index Number that specifies where to insert the cell in the tr. The default value is -1, which appends the new cell to the end of the cells collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableRowElement/insertCell)
+ */
+ insertCell(index?: number): HTMLTableCellElement;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableRowElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableRowElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTableRowElement: {
+ prototype: HTMLTableRowElement;
+ new(): HTMLTableRowElement;
+};
+
+/**
+ * Provides special properties and methods (beyond the HTMLElement interface it also has available to it by inheritance) for manipulating the layout and presentation of sections, that is headers, footers and bodies, in an HTML table.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement)
+ */
+interface HTMLTableSectionElement extends HTMLElement {
+ /**
+ * Sets or retrieves a value that indicates the table alignment.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/align)
+ */
+ align: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/ch)
+ */
+ ch: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/chOff)
+ */
+ chOff: string;
+ /**
+ * Sets or retrieves the number of horizontal rows contained in the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/rows)
+ */
+ readonly rows: HTMLCollectionOf<HTMLTableRowElement>;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/vAlign)
+ */
+ vAlign: string;
+ /**
+ * Removes the specified row (tr) from the element and from the rows collection.
+ * @param index Number that specifies the zero-based position in the rows collection of the row to remove.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/deleteRow)
+ */
+ deleteRow(index: number): void;
+ /**
+ * Creates a new row (tr) in the table, and adds the row to the rows collection.
+ * @param index Number that specifies where to insert the row in the rows collection. The default value is -1, which appends the new row to the end of the rows collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTableSectionElement/insertRow)
+ */
+ insertRow(index?: number): HTMLTableRowElement;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableSectionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTableSectionElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTableSectionElement: {
+ prototype: HTMLTableSectionElement;
+ new(): HTMLTableSectionElement;
+};
+
+/**
+ * Enables access to the contents of an HTML <template> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement)
+ */
+interface HTMLTemplateElement extends HTMLElement {
+ /**
+ * Returns the template contents (a DocumentFragment).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTemplateElement/content)
+ */
+ readonly content: DocumentFragment;
+ shadowRootMode: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTemplateElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTemplateElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTemplateElement: {
+ prototype: HTMLTemplateElement;
+ new(): HTMLTemplateElement;
+};
+
+/**
+ * Provides special properties and methods for manipulating the layout and presentation of <textarea> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement)
+ */
+interface HTMLTextAreaElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/autocomplete) */
+ autocomplete: AutoFill;
+ /** Sets or retrieves the width of the object. */
+ cols: number;
+ /** Sets or retrieves the initial contents of the object. */
+ defaultValue: string;
+ dirName: string;
+ disabled: boolean;
+ /** Retrieves a reference to the form that the object is embedded in. */
+ readonly form: HTMLFormElement | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/labels) */
+ readonly labels: NodeListOf<HTMLLabelElement>;
+ /** Sets or retrieves the maximum number of characters that the user can enter in a text control. */
+ maxLength: number;
+ minLength: number;
+ /** Sets or retrieves the name of the object. */
+ name: string;
+ /** Gets or sets a text string that is displayed in an input field as a hint or prompt to users as the format or type of information they need to enter.The text appears in an input field until the user puts focus on the field. */
+ placeholder: string;
+ /** Sets or retrieves the value indicated whether the content of the object is read-only. */
+ readOnly: boolean;
+ /** When present, marks an element that can't be submitted without a value. */
+ required: boolean;
+ /** Sets or retrieves the number of horizontal rows contained in the object. */
+ rows: number;
+ selectionDirection: "forward" | "backward" | "none";
+ /** Gets or sets the end position or offset of a text selection. */
+ selectionEnd: number;
+ /** Gets or sets the starting position or offset of a text selection. */
+ selectionStart: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/textLength) */
+ readonly textLength: number;
+ /** Retrieves the type of control. */
+ readonly type: string;
+ /** Returns the error message that would be displayed if the user submits the form, or an empty string if no error message. It also triggers the standard error message, such as "this is a required field". The result is that the user sees validation messages without actually submitting. */
+ readonly validationMessage: string;
+ /** Returns a ValidityState object that represents the validity states of an element. */
+ readonly validity: ValidityState;
+ /** Retrieves or sets the text in the entry field of the textArea element. */
+ value: string;
+ /** Returns whether an element will successfully validate based on forms validation rules and constraints. */
+ readonly willValidate: boolean;
+ /** Sets or retrieves how to handle wordwrapping in the object. */
+ wrap: string;
+ /** Returns whether a form will validate when it is submitted, without having to submit it. */
+ checkValidity(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTextAreaElement/reportValidity) */
+ reportValidity(): boolean;
+ /** Highlights the input area of a form element. */
+ select(): void;
+ /**
+ * Sets a custom error message that is displayed when a form is submitted.
+ * @param error Sets a custom error message that is displayed when a form is submitted.
+ */
+ setCustomValidity(error: string): void;
+ setRangeText(replacement: string): void;
+ setRangeText(replacement: string, start: number, end: number, selectionMode?: SelectionMode): void;
+ /**
+ * Sets the start and end positions of a selection in a text field.
+ * @param start The offset into the text field for the start of the selection.
+ * @param end The offset into the text field for the end of the selection.
+ * @param direction The direction in which the selection is performed.
+ */
+ setSelectionRange(start: number | null, end: number | null, direction?: "forward" | "backward" | "none"): void;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTextAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTextAreaElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTextAreaElement: {
+ prototype: HTMLTextAreaElement;
+ new(): HTMLTextAreaElement;
+};
+
+/**
+ * Provides special properties (beyond the regular HTMLElement interface it also has available to it by inheritance) for manipulating <time> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTimeElement)
+ */
+interface HTMLTimeElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTimeElement/dateTime) */
+ dateTime: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTimeElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTimeElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTimeElement: {
+ prototype: HTMLTimeElement;
+ new(): HTMLTimeElement;
+};
+
+/**
+ * Contains the title for a document. This element inherits all of the properties and methods of the HTMLElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTitleElement)
+ */
+interface HTMLTitleElement extends HTMLElement {
+ /**
+ * Retrieves or sets the text of the object as a string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTitleElement/text)
+ */
+ text: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTitleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTitleElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTitleElement: {
+ prototype: HTMLTitleElement;
+ new(): HTMLTitleElement;
+};
+
+/**
+ * The HTMLTrackElement
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement)
+ */
+interface HTMLTrackElement extends HTMLElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/default) */
+ default: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/kind) */
+ kind: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/label) */
+ label: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/readyState) */
+ readonly readyState: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/src) */
+ src: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/srclang) */
+ srclang: string;
+ /**
+ * Returns the TextTrack object corresponding to the text track of the track element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/track)
+ */
+ readonly track: TextTrack;
+ readonly NONE: 0;
+ readonly LOADING: 1;
+ readonly LOADED: 2;
+ readonly ERROR: 3;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTrackElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLTrackElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLTrackElement: {
+ prototype: HTMLTrackElement;
+ new(): HTMLTrackElement;
+ readonly NONE: 0;
+ readonly LOADING: 1;
+ readonly LOADED: 2;
+ readonly ERROR: 3;
+};
+
+/**
+ * Provides special properties (beyond those defined on the regular HTMLElement interface it also has available to it by inheritance) for manipulating unordered list elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUListElement)
+ */
+interface HTMLUListElement extends HTMLElement {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUListElement/compact)
+ */
+ compact: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUListElement/type)
+ */
+ type: string;
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUListElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLUListElement: {
+ prototype: HTMLUListElement;
+ new(): HTMLUListElement;
+};
+
+/**
+ * An invalid HTML element and derives from the HTMLElement interface, but without implementing any additional properties or methods.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLUnknownElement)
+ */
+interface HTMLUnknownElement extends HTMLElement {
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUnknownElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLUnknownElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLUnknownElement: {
+ prototype: HTMLUnknownElement;
+ new(): HTMLUnknownElement;
+};
+
+interface HTMLVideoElementEventMap extends HTMLMediaElementEventMap {
+ "enterpictureinpicture": Event;
+ "leavepictureinpicture": Event;
+}
+
+/**
+ * Provides special properties and methods for manipulating video objects. It also inherits properties and methods of HTMLMediaElement and HTMLElement.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement)
+ */
+interface HTMLVideoElement extends HTMLMediaElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/disablePictureInPicture) */
+ disablePictureInPicture: boolean;
+ /**
+ * Gets or sets the height of the video element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/height)
+ */
+ height: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/enterpictureinpicture_event) */
+ onenterpictureinpicture: ((this: HTMLVideoElement, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/leavepictureinpicture_event) */
+ onleavepictureinpicture: ((this: HTMLVideoElement, ev: Event) => any) | null;
+ /** Gets or sets the playsinline of the video element. for example, On iPhone, video elements will now be allowed to play inline, and will not automatically enter fullscreen mode when playback begins. */
+ playsInline: boolean;
+ /**
+ * Gets or sets a URL of an image to display, for example, like a movie poster. This can be a still frame from the video, or another image if no video data is available.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/poster)
+ */
+ poster: string;
+ /**
+ * Gets the intrinsic height of a video in CSS pixels, or zero if the dimensions are not known.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/videoHeight)
+ */
+ readonly videoHeight: number;
+ /**
+ * Gets the intrinsic width of a video in CSS pixels, or zero if the dimensions are not known.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/videoWidth)
+ */
+ readonly videoWidth: number;
+ /**
+ * Gets or sets the width of the video element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/width)
+ */
+ width: number;
+ cancelVideoFrameCallback(handle: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/getVideoPlaybackQuality) */
+ getVideoPlaybackQuality(): VideoPlaybackQuality;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/requestPictureInPicture) */
+ requestPictureInPicture(): Promise<PictureInPictureWindow>;
+ requestVideoFrameCallback(callback: VideoFrameRequestCallback): number;
+ addEventListener<K extends keyof HTMLVideoElementEventMap>(type: K, listener: (this: HTMLVideoElement, ev: HTMLVideoElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof HTMLVideoElementEventMap>(type: K, listener: (this: HTMLVideoElement, ev: HTMLVideoElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var HTMLVideoElement: {
+ prototype: HTMLVideoElement;
+ new(): HTMLVideoElement;
+};
+
+/**
+ * Events that fire when the fragment identifier of the URL has changed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HashChangeEvent)
+ */
+interface HashChangeEvent extends Event {
+ /**
+ * Returns the URL of the session history entry that is now current.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HashChangeEvent/newURL)
+ */
+ readonly newURL: string;
+ /**
+ * Returns the URL of the session history entry that was previously current.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HashChangeEvent/oldURL)
+ */
+ readonly oldURL: string;
+}
+
+declare var HashChangeEvent: {
+ prototype: HashChangeEvent;
+ new(type: string, eventInitDict?: HashChangeEventInit): HashChangeEvent;
+};
+
+/**
+ * This Fetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consists of zero or more name and value pairs.  You can add to this using methods like append() (see Examples.) In all methods of this interface, header names are matched by case-insensitive byte sequence.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers)
+ */
+interface Headers {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/append) */
+ append(name: string, value: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/delete) */
+ delete(name: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/get) */
+ get(name: string): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/getSetCookie) */
+ getSetCookie(): string[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/has) */
+ has(name: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/set) */
+ set(name: string, value: string): void;
+ forEach(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any): void;
+}
+
+declare var Headers: {
+ prototype: Headers;
+ new(init?: HeadersInit): Headers;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Highlight) */
+interface Highlight {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Highlight/priority) */
+ priority: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Highlight/type) */
+ type: HighlightType;
+ forEach(callbackfn: (value: AbstractRange, key: AbstractRange, parent: Highlight) => void, thisArg?: any): void;
+}
+
+declare var Highlight: {
+ prototype: Highlight;
+ new(...initialRanges: AbstractRange[]): Highlight;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HighlightRegistry) */
+interface HighlightRegistry {
+ forEach(callbackfn: (value: Highlight, key: string, parent: HighlightRegistry) => void, thisArg?: any): void;
+}
+
+declare var HighlightRegistry: {
+ prototype: HighlightRegistry;
+ new(): HighlightRegistry;
+};
+
+/**
+ * Allows manipulation of the browser session history, that is the pages visited in the tab or frame that the current page is loaded in.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/History)
+ */
+interface History {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/scrollRestoration) */
+ scrollRestoration: ScrollRestoration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/state) */
+ readonly state: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/back) */
+ back(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/forward) */
+ forward(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/go) */
+ go(delta?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/pushState) */
+ pushState(data: any, unused: string, url?: string | URL | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/History/replaceState) */
+ replaceState(data: any, unused: string, url?: string | URL | null): void;
+}
+
+declare var History: {
+ prototype: History;
+ new(): History;
+};
+
+/**
+ * This IndexedDB API interface represents a cursor for traversing or iterating over multiple records in a database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor)
+ */
+interface IDBCursor {
+ /**
+ * Returns the direction ("next", "nextunique", "prev" or "prevunique") of the cursor.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/direction)
+ */
+ readonly direction: IDBCursorDirection;
+ /**
+ * Returns the key of the cursor. Throws a "InvalidStateError" DOMException if the cursor is advancing or is finished.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/key)
+ */
+ readonly key: IDBValidKey;
+ /**
+ * Returns the effective key of the cursor. Throws a "InvalidStateError" DOMException if the cursor is advancing or is finished.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/primaryKey)
+ */
+ readonly primaryKey: IDBValidKey;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/request) */
+ readonly request: IDBRequest;
+ /**
+ * Returns the IDBObjectStore or IDBIndex the cursor was opened from.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/source)
+ */
+ readonly source: IDBObjectStore | IDBIndex;
+ /**
+ * Advances the cursor through the next count records in range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/advance)
+ */
+ advance(count: number): void;
+ /**
+ * Advances the cursor to the next record in range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/continue)
+ */
+ continue(key?: IDBValidKey): void;
+ /**
+ * Advances the cursor to the next record in range matching or after key and primaryKey. Throws an "InvalidAccessError" DOMException if the source is not an index.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/continuePrimaryKey)
+ */
+ continuePrimaryKey(key: IDBValidKey, primaryKey: IDBValidKey): void;
+ /**
+ * Delete the record pointed at by the cursor with a new value.
+ *
+ * If successful, request's result will be undefined.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/delete)
+ */
+ delete(): IDBRequest<undefined>;
+ /**
+ * Updated the record pointed at by the cursor with a new value.
+ *
+ * Throws a "DataError" DOMException if the effective object store uses in-line keys and the key would have changed.
+ *
+ * If successful, request's result will be the record's key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/update)
+ */
+ update(value: any): IDBRequest<IDBValidKey>;
+}
+
+declare var IDBCursor: {
+ prototype: IDBCursor;
+ new(): IDBCursor;
+};
+
+/**
+ * This IndexedDB API interface represents a cursor for traversing or iterating over multiple records in a database. It is the same as the IDBCursor, except that it includes the value property.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursorWithValue)
+ */
+interface IDBCursorWithValue extends IDBCursor {
+ /**
+ * Returns the cursor's current value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursorWithValue/value)
+ */
+ readonly value: any;
+}
+
+declare var IDBCursorWithValue: {
+ prototype: IDBCursorWithValue;
+ new(): IDBCursorWithValue;
+};
+
+interface IDBDatabaseEventMap {
+ "abort": Event;
+ "close": Event;
+ "error": Event;
+ "versionchange": IDBVersionChangeEvent;
+}
+
+/**
+ * This IndexedDB API interface provides a connection to a database; you can use an IDBDatabase object to open a transaction on your database then create, manipulate, and delete objects (data) in that database. The interface provides the only way to get and manage versions of the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase)
+ */
+interface IDBDatabase extends EventTarget {
+ /**
+ * Returns the name of the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/name)
+ */
+ readonly name: string;
+ /**
+ * Returns a list of the names of object stores in the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/objectStoreNames)
+ */
+ readonly objectStoreNames: DOMStringList;
+ onabort: ((this: IDBDatabase, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/close_event) */
+ onclose: ((this: IDBDatabase, ev: Event) => any) | null;
+ onerror: ((this: IDBDatabase, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/versionchange_event) */
+ onversionchange: ((this: IDBDatabase, ev: IDBVersionChangeEvent) => any) | null;
+ /**
+ * Returns the version of the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/version)
+ */
+ readonly version: number;
+ /**
+ * Closes the connection once all running transactions have finished.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/close)
+ */
+ close(): void;
+ /**
+ * Creates a new object store with the given name and options and returns a new IDBObjectStore.
+ *
+ * Throws a "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/createObjectStore)
+ */
+ createObjectStore(name: string, options?: IDBObjectStoreParameters): IDBObjectStore;
+ /**
+ * Deletes the object store with the given name.
+ *
+ * Throws a "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/deleteObjectStore)
+ */
+ deleteObjectStore(name: string): void;
+ /**
+ * Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/transaction)
+ */
+ transaction(storeNames: string | string[], mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction;
+ addEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBDatabase: {
+ prototype: IDBDatabase;
+ new(): IDBDatabase;
+};
+
+/**
+ * In the following code snippet, we make a request to open a database, and include handlers for the success and error cases. For a full working example, see our To-do Notifications app (view example live.)
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory)
+ */
+interface IDBFactory {
+ /**
+ * Compares two values as keys. Returns -1 if key1 precedes key2, 1 if key2 precedes key1, and 0 if the keys are equal.
+ *
+ * Throws a "DataError" DOMException if either input is not a valid key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/cmp)
+ */
+ cmp(first: any, second: any): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/databases) */
+ databases(): Promise<IDBDatabaseInfo[]>;
+ /**
+ * Attempts to delete the named database. If the database already exists and there are open connections that don't close in response to a versionchange event, the request will be blocked until all they close. If the request is successful request's result will be null.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/deleteDatabase)
+ */
+ deleteDatabase(name: string): IDBOpenDBRequest;
+ /**
+ * Attempts to open a connection to the named database with the current version, or 1 if it does not already exist. If the request is successful request's result will be the connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/open)
+ */
+ open(name: string, version?: number): IDBOpenDBRequest;
+}
+
+declare var IDBFactory: {
+ prototype: IDBFactory;
+ new(): IDBFactory;
+};
+
+/**
+ * IDBIndex interface of the IndexedDB API provides asynchronous access to an index in a database. An index is a kind of object store for looking up records in another object store, called the referenced object store. You use this interface to retrieve data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex)
+ */
+interface IDBIndex {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/keyPath) */
+ readonly keyPath: string | string[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/multiEntry) */
+ readonly multiEntry: boolean;
+ /**
+ * Returns the name of the index.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/name)
+ */
+ name: string;
+ /**
+ * Returns the IDBObjectStore the index belongs to.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/objectStore)
+ */
+ readonly objectStore: IDBObjectStore;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/unique) */
+ readonly unique: boolean;
+ /**
+ * Retrieves the number of records matching the given key or key range in query.
+ *
+ * If successful, request's result will be the count.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/count)
+ */
+ count(query?: IDBValidKey | IDBKeyRange): IDBRequest<number>;
+ /**
+ * Retrieves the value of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the value, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/get)
+ */
+ get(query: IDBValidKey | IDBKeyRange): IDBRequest<any>;
+ /**
+ * Retrieves the values of the records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the values.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAll)
+ */
+ getAll(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<any[]>;
+ /**
+ * Retrieves the keys of records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the keys.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAllKeys)
+ */
+ getAllKeys(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<IDBValidKey[]>;
+ /**
+ * Retrieves the key of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the key, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getKey)
+ */
+ getKey(query: IDBValidKey | IDBKeyRange): IDBRequest<IDBValidKey | undefined>;
+ /**
+ * Opens a cursor over the records matching query, ordered by direction. If query is null, all records in index are matched.
+ *
+ * If successful, request's result will be an IDBCursorWithValue, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/openCursor)
+ */
+ openCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursorWithValue | null>;
+ /**
+ * Opens a cursor with key only flag set over the records matching query, ordered by direction. If query is null, all records in index are matched.
+ *
+ * If successful, request's result will be an IDBCursor, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/openKeyCursor)
+ */
+ openKeyCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursor | null>;
+}
+
+declare var IDBIndex: {
+ prototype: IDBIndex;
+ new(): IDBIndex;
+};
+
+/**
+ * A key range can be a single value or a range with upper and lower bounds or endpoints. If the key range has both upper and lower bounds, then it is bounded; if it has no bounds, it is unbounded. A bounded key range can either be open (the endpoints are excluded) or closed (the endpoints are included). To retrieve all keys within a certain range, you can use the following code constructs:
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange)
+ */
+interface IDBKeyRange {
+ /**
+ * Returns lower bound, or undefined if none.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lower)
+ */
+ readonly lower: any;
+ /**
+ * Returns true if the lower open flag is set, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lowerOpen)
+ */
+ readonly lowerOpen: boolean;
+ /**
+ * Returns upper bound, or undefined if none.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upper)
+ */
+ readonly upper: any;
+ /**
+ * Returns true if the upper open flag is set, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upperOpen)
+ */
+ readonly upperOpen: boolean;
+ /**
+ * Returns true if key is included in the range, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/includes)
+ */
+ includes(key: any): boolean;
+}
+
+declare var IDBKeyRange: {
+ prototype: IDBKeyRange;
+ new(): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange spanning from lower to upper. If lowerOpen is true, lower is not included in the range. If upperOpen is true, upper is not included in the range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/bound_static)
+ */
+ bound(lower: any, upper: any, lowerOpen?: boolean, upperOpen?: boolean): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange starting at key with no upper bound. If open is true, key is not included in the range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lowerBound_static)
+ */
+ lowerBound(lower: any, open?: boolean): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange spanning only key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/only_static)
+ */
+ only(value: any): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange with no lower bound and ending at key. If open is true, key is not included in the range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upperBound_static)
+ */
+ upperBound(upper: any, open?: boolean): IDBKeyRange;
+};
+
+/**
+ * This example shows a variety of different uses of object stores, from updating the data structure with IDBObjectStore.createIndex inside an onupgradeneeded function, to adding a new item to our object store with IDBObjectStore.add. For a full working example, see our To-do Notifications app (view example live.)
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore)
+ */
+interface IDBObjectStore {
+ /**
+ * Returns true if the store has a key generator, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/autoIncrement)
+ */
+ readonly autoIncrement: boolean;
+ /**
+ * Returns a list of the names of indexes in the store.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/indexNames)
+ */
+ readonly indexNames: DOMStringList;
+ /**
+ * Returns the key path of the store, or null if none.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/keyPath)
+ */
+ readonly keyPath: string | string[];
+ /**
+ * Returns the name of the store.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/name)
+ */
+ name: string;
+ /**
+ * Returns the associated transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/transaction)
+ */
+ readonly transaction: IDBTransaction;
+ /**
+ * Adds or updates a record in store with the given value and key.
+ *
+ * If the store uses in-line keys and key is specified a "DataError" DOMException will be thrown.
+ *
+ * If put() is used, any existing record with the key will be replaced. If add() is used, and if a record with the key already exists the request will fail, with request's error set to a "ConstraintError" DOMException.
+ *
+ * If successful, request's result will be the record's key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/add)
+ */
+ add(value: any, key?: IDBValidKey): IDBRequest<IDBValidKey>;
+ /**
+ * Deletes all records in store.
+ *
+ * If successful, request's result will be undefined.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/clear)
+ */
+ clear(): IDBRequest<undefined>;
+ /**
+ * Retrieves the number of records matching the given key or key range in query.
+ *
+ * If successful, request's result will be the count.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/count)
+ */
+ count(query?: IDBValidKey | IDBKeyRange): IDBRequest<number>;
+ /**
+ * Creates a new index in store with the given name, keyPath and options and returns a new IDBIndex. If the keyPath and options define constraints that cannot be satisfied with the data already in store the upgrade transaction will abort with a "ConstraintError" DOMException.
+ *
+ * Throws an "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/createIndex)
+ */
+ createIndex(name: string, keyPath: string | string[], options?: IDBIndexParameters): IDBIndex;
+ /**
+ * Deletes records in store with the given key or in the given key range in query.
+ *
+ * If successful, request's result will be undefined.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/delete)
+ */
+ delete(query: IDBValidKey | IDBKeyRange): IDBRequest<undefined>;
+ /**
+ * Deletes the index in store with the given name.
+ *
+ * Throws an "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/deleteIndex)
+ */
+ deleteIndex(name: string): void;
+ /**
+ * Retrieves the value of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the value, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/get)
+ */
+ get(query: IDBValidKey | IDBKeyRange): IDBRequest<any>;
+ /**
+ * Retrieves the values of the records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the values.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getAll)
+ */
+ getAll(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<any[]>;
+ /**
+ * Retrieves the keys of records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the keys.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getAllKeys)
+ */
+ getAllKeys(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<IDBValidKey[]>;
+ /**
+ * Retrieves the key of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the key, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getKey)
+ */
+ getKey(query: IDBValidKey | IDBKeyRange): IDBRequest<IDBValidKey | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/index) */
+ index(name: string): IDBIndex;
+ /**
+ * Opens a cursor over the records matching query, ordered by direction. If query is null, all records in store are matched.
+ *
+ * If successful, request's result will be an IDBCursorWithValue pointing at the first matching record, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/openCursor)
+ */
+ openCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursorWithValue | null>;
+ /**
+ * Opens a cursor with key only flag set over the records matching query, ordered by direction. If query is null, all records in store are matched.
+ *
+ * If successful, request's result will be an IDBCursor pointing at the first matching record, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/openKeyCursor)
+ */
+ openKeyCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursor | null>;
+ /**
+ * Adds or updates a record in store with the given value and key.
+ *
+ * If the store uses in-line keys and key is specified a "DataError" DOMException will be thrown.
+ *
+ * If put() is used, any existing record with the key will be replaced. If add() is used, and if a record with the key already exists the request will fail, with request's error set to a "ConstraintError" DOMException.
+ *
+ * If successful, request's result will be the record's key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/put)
+ */
+ put(value: any, key?: IDBValidKey): IDBRequest<IDBValidKey>;
+}
+
+declare var IDBObjectStore: {
+ prototype: IDBObjectStore;
+ new(): IDBObjectStore;
+};
+
+interface IDBOpenDBRequestEventMap extends IDBRequestEventMap {
+ "blocked": IDBVersionChangeEvent;
+ "upgradeneeded": IDBVersionChangeEvent;
+}
+
+/**
+ * Also inherits methods from its parents IDBRequest and EventTarget.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest)
+ */
+interface IDBOpenDBRequest extends IDBRequest<IDBDatabase> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest/blocked_event) */
+ onblocked: ((this: IDBOpenDBRequest, ev: IDBVersionChangeEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest/upgradeneeded_event) */
+ onupgradeneeded: ((this: IDBOpenDBRequest, ev: IDBVersionChangeEvent) => any) | null;
+ addEventListener<K extends keyof IDBOpenDBRequestEventMap>(type: K, listener: (this: IDBOpenDBRequest, ev: IDBOpenDBRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBOpenDBRequestEventMap>(type: K, listener: (this: IDBOpenDBRequest, ev: IDBOpenDBRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBOpenDBRequest: {
+ prototype: IDBOpenDBRequest;
+ new(): IDBOpenDBRequest;
+};
+
+interface IDBRequestEventMap {
+ "error": Event;
+ "success": Event;
+}
+
+/**
+ * The request object does not initially contain any information about the result of the operation, but once information becomes available, an event is fired on the request, and the information becomes available through the properties of the IDBRequest instance.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest)
+ */
+interface IDBRequest<T = any> extends EventTarget {
+ /**
+ * When a request is completed, returns the error (a DOMException), or null if the request succeeded. Throws a "InvalidStateError" DOMException if the request is still pending.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/error)
+ */
+ readonly error: DOMException | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/error_event) */
+ onerror: ((this: IDBRequest<T>, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/success_event) */
+ onsuccess: ((this: IDBRequest<T>, ev: Event) => any) | null;
+ /**
+ * Returns "pending" until a request is complete, then returns "done".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/readyState)
+ */
+ readonly readyState: IDBRequestReadyState;
+ /**
+ * When a request is completed, returns the result, or undefined if the request failed. Throws a "InvalidStateError" DOMException if the request is still pending.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/result)
+ */
+ readonly result: T;
+ /**
+ * Returns the IDBObjectStore, IDBIndex, or IDBCursor the request was made against, or null if is was an open request.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/source)
+ */
+ readonly source: IDBObjectStore | IDBIndex | IDBCursor;
+ /**
+ * Returns the IDBTransaction the request was made within. If this as an open request, then it returns an upgrade transaction while it is running, or null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/transaction)
+ */
+ readonly transaction: IDBTransaction | null;
+ addEventListener<K extends keyof IDBRequestEventMap>(type: K, listener: (this: IDBRequest<T>, ev: IDBRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBRequestEventMap>(type: K, listener: (this: IDBRequest<T>, ev: IDBRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBRequest: {
+ prototype: IDBRequest;
+ new(): IDBRequest;
+};
+
+interface IDBTransactionEventMap {
+ "abort": Event;
+ "complete": Event;
+ "error": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction) */
+interface IDBTransaction extends EventTarget {
+ /**
+ * Returns the transaction's connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/db)
+ */
+ readonly db: IDBDatabase;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/durability) */
+ readonly durability: IDBTransactionDurability;
+ /**
+ * If the transaction was aborted, returns the error (a DOMException) providing the reason.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/error)
+ */
+ readonly error: DOMException | null;
+ /**
+ * Returns the mode the transaction was created with ("readonly" or "readwrite"), or "versionchange" for an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/mode)
+ */
+ readonly mode: IDBTransactionMode;
+ /**
+ * Returns a list of the names of object stores in the transaction's scope. For an upgrade transaction this is all object stores in the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/objectStoreNames)
+ */
+ readonly objectStoreNames: DOMStringList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/abort_event) */
+ onabort: ((this: IDBTransaction, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/complete_event) */
+ oncomplete: ((this: IDBTransaction, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/error_event) */
+ onerror: ((this: IDBTransaction, ev: Event) => any) | null;
+ /**
+ * Aborts the transaction. All pending requests will fail with a "AbortError" DOMException and all changes made to the database will be reverted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/abort)
+ */
+ abort(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/commit) */
+ commit(): void;
+ /**
+ * Returns an IDBObjectStore in the transaction's scope.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/objectStore)
+ */
+ objectStore(name: string): IDBObjectStore;
+ addEventListener<K extends keyof IDBTransactionEventMap>(type: K, listener: (this: IDBTransaction, ev: IDBTransactionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBTransactionEventMap>(type: K, listener: (this: IDBTransaction, ev: IDBTransactionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBTransaction: {
+ prototype: IDBTransaction;
+ new(): IDBTransaction;
+};
+
+/**
+ * This IndexedDB API interface indicates that the version of the database has changed, as the result of an IDBOpenDBRequest.onupgradeneeded event handler function.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent)
+ */
+interface IDBVersionChangeEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent/newVersion) */
+ readonly newVersion: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent/oldVersion) */
+ readonly oldVersion: number;
+}
+
+declare var IDBVersionChangeEvent: {
+ prototype: IDBVersionChangeEvent;
+ new(type: string, eventInitDict?: IDBVersionChangeEventInit): IDBVersionChangeEvent;
+};
+
+/**
+ * The IIRFilterNode interface of the Web Audio API is a AudioNode processor which implements a general infinite impulse response (IIR)  filter; this type of filter can be used to implement tone control devices and graphic equalizers as well. It lets the parameters of the filter response be specified, so that it can be tuned as needed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IIRFilterNode)
+ */
+interface IIRFilterNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IIRFilterNode/getFrequencyResponse) */
+ getFrequencyResponse(frequencyHz: Float32Array, magResponse: Float32Array, phaseResponse: Float32Array): void;
+}
+
+declare var IIRFilterNode: {
+ prototype: IIRFilterNode;
+ new(context: BaseAudioContext, options: IIRFilterOptions): IIRFilterNode;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdleDeadline) */
+interface IdleDeadline {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdleDeadline/didTimeout) */
+ readonly didTimeout: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IdleDeadline/timeRemaining) */
+ timeRemaining(): DOMHighResTimeStamp;
+}
+
+declare var IdleDeadline: {
+ prototype: IdleDeadline;
+ new(): IdleDeadline;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap) */
+interface ImageBitmap {
+ /**
+ * Returns the intrinsic height of the image, in CSS pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/height)
+ */
+ readonly height: number;
+ /**
+ * Returns the intrinsic width of the image, in CSS pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/width)
+ */
+ readonly width: number;
+ /**
+ * Releases imageBitmap's underlying bitmap data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/close)
+ */
+ close(): void;
+}
+
+declare var ImageBitmap: {
+ prototype: ImageBitmap;
+ new(): ImageBitmap;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmapRenderingContext) */
+interface ImageBitmapRenderingContext {
+ /** Returns the canvas element that the context is bound to. */
+ readonly canvas: HTMLCanvasElement | OffscreenCanvas;
+ /**
+ * Transfers the underlying bitmap data from imageBitmap to context, and the bitmap becomes the contents of the canvas element to which context is bound.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmapRenderingContext/transferFromImageBitmap)
+ */
+ transferFromImageBitmap(bitmap: ImageBitmap | null): void;
+}
+
+declare var ImageBitmapRenderingContext: {
+ prototype: ImageBitmapRenderingContext;
+ new(): ImageBitmapRenderingContext;
+};
+
+/**
+ * The underlying pixel data of an area of a <canvas> element. It is created using the ImageData() constructor or creator methods on the CanvasRenderingContext2D object associated with a canvas: createImageData() and getImageData(). It can also be used to set a part of the canvas by using putImageData().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData)
+ */
+interface ImageData {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/colorSpace) */
+ readonly colorSpace: PredefinedColorSpace;
+ /**
+ * Returns the one-dimensional array containing the data in RGBA order, as integers in the range 0 to 255.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/data)
+ */
+ readonly data: Uint8ClampedArray;
+ /**
+ * Returns the actual dimensions of the data in the ImageData object, in pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/height)
+ */
+ readonly height: number;
+ /**
+ * Returns the actual dimensions of the data in the ImageData object, in pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/width)
+ */
+ readonly width: number;
+}
+
+declare var ImageData: {
+ prototype: ImageData;
+ new(sw: number, sh: number, settings?: ImageDataSettings): ImageData;
+ new(data: Uint8ClampedArray, sw: number, sh?: number, settings?: ImageDataSettings): ImageData;
+};
+
+interface InnerHTML {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/innerHTML) */
+ innerHTML: string;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputDeviceInfo)
+ */
+interface InputDeviceInfo extends MediaDeviceInfo {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputDeviceInfo/getCapabilities) */
+ getCapabilities(): MediaTrackCapabilities;
+}
+
+declare var InputDeviceInfo: {
+ prototype: InputDeviceInfo;
+ new(): InputDeviceInfo;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent) */
+interface InputEvent extends UIEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/data) */
+ readonly data: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/dataTransfer) */
+ readonly dataTransfer: DataTransfer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/inputType) */
+ readonly inputType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/isComposing) */
+ readonly isComposing: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/InputEvent/getTargetRanges) */
+ getTargetRanges(): StaticRange[];
+}
+
+declare var InputEvent: {
+ prototype: InputEvent;
+ new(type: string, eventInitDict?: InputEventInit): InputEvent;
+};
+
+/**
+ * provides a way to asynchronously observe changes in the intersection of a target element with an ancestor element or with a top-level document's viewport.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver)
+ */
+interface IntersectionObserver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/root) */
+ readonly root: Element | Document | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/rootMargin) */
+ readonly rootMargin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/thresholds) */
+ readonly thresholds: ReadonlyArray<number>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/disconnect) */
+ disconnect(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/observe) */
+ observe(target: Element): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/takeRecords) */
+ takeRecords(): IntersectionObserverEntry[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserver/unobserve) */
+ unobserve(target: Element): void;
+}
+
+declare var IntersectionObserver: {
+ prototype: IntersectionObserver;
+ new(callback: IntersectionObserverCallback, options?: IntersectionObserverInit): IntersectionObserver;
+};
+
+/**
+ * This Intersection Observer API interface describes the intersection between the target element and its root container at a specific moment of transition.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry)
+ */
+interface IntersectionObserverEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/boundingClientRect) */
+ readonly boundingClientRect: DOMRectReadOnly;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/intersectionRatio) */
+ readonly intersectionRatio: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/intersectionRect) */
+ readonly intersectionRect: DOMRectReadOnly;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/isIntersecting) */
+ readonly isIntersecting: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/rootBounds) */
+ readonly rootBounds: DOMRectReadOnly | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/target) */
+ readonly target: Element;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IntersectionObserverEntry/time) */
+ readonly time: DOMHighResTimeStamp;
+}
+
+declare var IntersectionObserverEntry: {
+ prototype: IntersectionObserverEntry;
+ new(intersectionObserverEntryInit: IntersectionObserverEntryInit): IntersectionObserverEntry;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KHR_parallel_shader_compile) */
+interface KHR_parallel_shader_compile {
+ readonly COMPLETION_STATUS_KHR: 0x91B1;
+}
+
+/**
+ * KeyboardEvent objects describe a user interaction with the keyboard; each event describes a single interaction between the user and a key (or combination of a key with modifier keys) on the keyboard.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent)
+ */
+interface KeyboardEvent extends UIEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/altKey) */
+ readonly altKey: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/charCode)
+ */
+ readonly charCode: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/code) */
+ readonly code: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/ctrlKey) */
+ readonly ctrlKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/isComposing) */
+ readonly isComposing: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/key) */
+ readonly key: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/keyCode)
+ */
+ readonly keyCode: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/location) */
+ readonly location: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/metaKey) */
+ readonly metaKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/repeat) */
+ readonly repeat: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/shiftKey) */
+ readonly shiftKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/getModifierState) */
+ getModifierState(keyArg: string): boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyboardEvent/initKeyboardEvent)
+ */
+ initKeyboardEvent(typeArg: string, bubblesArg?: boolean, cancelableArg?: boolean, viewArg?: Window | null, keyArg?: string, locationArg?: number, ctrlKey?: boolean, altKey?: boolean, shiftKey?: boolean, metaKey?: boolean): void;
+ readonly DOM_KEY_LOCATION_STANDARD: 0x00;
+ readonly DOM_KEY_LOCATION_LEFT: 0x01;
+ readonly DOM_KEY_LOCATION_RIGHT: 0x02;
+ readonly DOM_KEY_LOCATION_NUMPAD: 0x03;
+}
+
+declare var KeyboardEvent: {
+ prototype: KeyboardEvent;
+ new(type: string, eventInitDict?: KeyboardEventInit): KeyboardEvent;
+ readonly DOM_KEY_LOCATION_STANDARD: 0x00;
+ readonly DOM_KEY_LOCATION_LEFT: 0x01;
+ readonly DOM_KEY_LOCATION_RIGHT: 0x02;
+ readonly DOM_KEY_LOCATION_NUMPAD: 0x03;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect) */
+interface KeyframeEffect extends AnimationEffect {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/composite) */
+ composite: CompositeOperation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/iterationComposite) */
+ iterationComposite: IterationCompositeOperation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/pseudoElement) */
+ pseudoElement: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/target) */
+ target: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/getKeyframes) */
+ getKeyframes(): ComputedKeyframe[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KeyframeEffect/setKeyframes) */
+ setKeyframes(keyframes: Keyframe[] | PropertyIndexedKeyframes | null): void;
+}
+
+declare var KeyframeEffect: {
+ prototype: KeyframeEffect;
+ new(target: Element | null, keyframes: Keyframe[] | PropertyIndexedKeyframes | null, options?: number | KeyframeEffectOptions): KeyframeEffect;
+ new(source: KeyframeEffect): KeyframeEffect;
+};
+
+interface LinkStyle {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLLinkElement/sheet) */
+ readonly sheet: CSSStyleSheet | null;
+}
+
+/**
+ * The location (URL) of the object it is linked to. Changes done on it are reflected on the object it relates to. Both the Document and Window interface have such a linked Location, accessible via Document.location and Window.location respectively.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location)
+ */
+interface Location {
+ /**
+ * Returns a DOMStringList object listing the origins of the ancestor browsing contexts, from the parent browsing context to the top-level browsing context.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/ancestorOrigins)
+ */
+ readonly ancestorOrigins: DOMStringList;
+ /**
+ * Returns the Location object's URL's fragment (includes leading "#" if non-empty).
+ *
+ * Can be set, to navigate to the same URL with a changed fragment (ignores leading "#").
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/hash)
+ */
+ hash: string;
+ /**
+ * Returns the Location object's URL's host and port (if different from the default port for the scheme).
+ *
+ * Can be set, to navigate to the same URL with a changed host and port.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/host)
+ */
+ host: string;
+ /**
+ * Returns the Location object's URL's host.
+ *
+ * Can be set, to navigate to the same URL with a changed host.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/hostname)
+ */
+ hostname: string;
+ /**
+ * Returns the Location object's URL.
+ *
+ * Can be set, to navigate to the given URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/href)
+ */
+ href: string;
+ toString(): string;
+ /**
+ * Returns the Location object's URL's origin.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/origin)
+ */
+ readonly origin: string;
+ /**
+ * Returns the Location object's URL's path.
+ *
+ * Can be set, to navigate to the same URL with a changed path.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/pathname)
+ */
+ pathname: string;
+ /**
+ * Returns the Location object's URL's port.
+ *
+ * Can be set, to navigate to the same URL with a changed port.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/port)
+ */
+ port: string;
+ /**
+ * Returns the Location object's URL's scheme.
+ *
+ * Can be set, to navigate to the same URL with a changed scheme.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/protocol)
+ */
+ protocol: string;
+ /**
+ * Returns the Location object's URL's query (includes leading "?" if non-empty).
+ *
+ * Can be set, to navigate to the same URL with a changed query (ignores leading "?").
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/search)
+ */
+ search: string;
+ /**
+ * Navigates to the given URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/assign)
+ */
+ assign(url: string | URL): void;
+ /**
+ * Reloads the current page.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/reload)
+ */
+ reload(): void;
+ /**
+ * Removes the current page from the session history and navigates to the given URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Location/replace)
+ */
+ replace(url: string | URL): void;
+}
+
+declare var Location: {
+ prototype: Location;
+ new(): Location;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock)
+ */
+interface Lock {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock/mode) */
+ readonly mode: LockMode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock/name) */
+ readonly name: string;
+}
+
+declare var Lock: {
+ prototype: Lock;
+ new(): Lock;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager)
+ */
+interface LockManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager/query) */
+ query(): Promise<LockManagerSnapshot>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager/request) */
+ request(name: string, callback: LockGrantedCallback): Promise<any>;
+ request(name: string, options: LockOptions, callback: LockGrantedCallback): Promise<any>;
+}
+
+declare var LockManager: {
+ prototype: LockManager;
+ new(): LockManager;
+};
+
+interface MIDIAccessEventMap {
+ "statechange": Event;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess)
+ */
+interface MIDIAccess extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/inputs) */
+ readonly inputs: MIDIInputMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/statechange_event) */
+ onstatechange: ((this: MIDIAccess, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/outputs) */
+ readonly outputs: MIDIOutputMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIAccess/sysexEnabled) */
+ readonly sysexEnabled: boolean;
+ addEventListener<K extends keyof MIDIAccessEventMap>(type: K, listener: (this: MIDIAccess, ev: MIDIAccessEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MIDIAccessEventMap>(type: K, listener: (this: MIDIAccess, ev: MIDIAccessEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MIDIAccess: {
+ prototype: MIDIAccess;
+ new(): MIDIAccess;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIConnectionEvent)
+ */
+interface MIDIConnectionEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIConnectionEvent/port) */
+ readonly port: MIDIPort | null;
+}
+
+declare var MIDIConnectionEvent: {
+ prototype: MIDIConnectionEvent;
+ new(type: string, eventInitDict?: MIDIConnectionEventInit): MIDIConnectionEvent;
+};
+
+interface MIDIInputEventMap extends MIDIPortEventMap {
+ "midimessage": MIDIMessageEvent;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIInput)
+ */
+interface MIDIInput extends MIDIPort {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIInput/midimessage_event) */
+ onmidimessage: ((this: MIDIInput, ev: MIDIMessageEvent) => any) | null;
+ addEventListener<K extends keyof MIDIInputEventMap>(type: K, listener: (this: MIDIInput, ev: MIDIInputEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MIDIInputEventMap>(type: K, listener: (this: MIDIInput, ev: MIDIInputEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MIDIInput: {
+ prototype: MIDIInput;
+ new(): MIDIInput;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIInputMap)
+ */
+interface MIDIInputMap {
+ forEach(callbackfn: (value: MIDIInput, key: string, parent: MIDIInputMap) => void, thisArg?: any): void;
+}
+
+declare var MIDIInputMap: {
+ prototype: MIDIInputMap;
+ new(): MIDIInputMap;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIMessageEvent)
+ */
+interface MIDIMessageEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIMessageEvent/data) */
+ readonly data: Uint8Array | null;
+}
+
+declare var MIDIMessageEvent: {
+ prototype: MIDIMessageEvent;
+ new(type: string, eventInitDict?: MIDIMessageEventInit): MIDIMessageEvent;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput)
+ */
+interface MIDIOutput extends MIDIPort {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput/send) */
+ send(data: number[], timestamp?: DOMHighResTimeStamp): void;
+ addEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIOutput, ev: MIDIPortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIOutput, ev: MIDIPortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MIDIOutput: {
+ prototype: MIDIOutput;
+ new(): MIDIOutput;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutputMap)
+ */
+interface MIDIOutputMap {
+ forEach(callbackfn: (value: MIDIOutput, key: string, parent: MIDIOutputMap) => void, thisArg?: any): void;
+}
+
+declare var MIDIOutputMap: {
+ prototype: MIDIOutputMap;
+ new(): MIDIOutputMap;
+};
+
+interface MIDIPortEventMap {
+ "statechange": MIDIConnectionEvent;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort)
+ */
+interface MIDIPort extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/connection) */
+ readonly connection: MIDIPortConnectionState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/id) */
+ readonly id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/manufacturer) */
+ readonly manufacturer: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/name) */
+ readonly name: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/statechange_event) */
+ onstatechange: ((this: MIDIPort, ev: MIDIConnectionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/state) */
+ readonly state: MIDIPortDeviceState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/type) */
+ readonly type: MIDIPortType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/version) */
+ readonly version: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/close) */
+ close(): Promise<MIDIPort>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIPort/open) */
+ open(): Promise<MIDIPort>;
+ addEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIPort, ev: MIDIPortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MIDIPortEventMap>(type: K, listener: (this: MIDIPort, ev: MIDIPortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MIDIPort: {
+ prototype: MIDIPort;
+ new(): MIDIPort;
+};
+
+interface MathMLElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MathMLElement) */
+interface MathMLElement extends Element, ElementCSSInlineStyle, GlobalEventHandlers, HTMLOrSVGElement {
+ addEventListener<K extends keyof MathMLElementEventMap>(type: K, listener: (this: MathMLElement, ev: MathMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MathMLElementEventMap>(type: K, listener: (this: MathMLElement, ev: MathMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MathMLElement: {
+ prototype: MathMLElement;
+ new(): MathMLElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities) */
+interface MediaCapabilities {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities/decodingInfo) */
+ decodingInfo(configuration: MediaDecodingConfiguration): Promise<MediaCapabilitiesDecodingInfo>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities/encodingInfo) */
+ encodingInfo(configuration: MediaEncodingConfiguration): Promise<MediaCapabilitiesEncodingInfo>;
+}
+
+declare var MediaCapabilities: {
+ prototype: MediaCapabilities;
+ new(): MediaCapabilities;
+};
+
+/**
+ * The MediaDevicesInfo interface contains information that describes a single media input or output device.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo)
+ */
+interface MediaDeviceInfo {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/deviceId) */
+ readonly deviceId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/groupId) */
+ readonly groupId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/kind) */
+ readonly kind: MediaDeviceKind;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/label) */
+ readonly label: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDeviceInfo/toJSON) */
+ toJSON(): any;
+}
+
+declare var MediaDeviceInfo: {
+ prototype: MediaDeviceInfo;
+ new(): MediaDeviceInfo;
+};
+
+interface MediaDevicesEventMap {
+ "devicechange": Event;
+}
+
+/**
+ * Provides access to connected media input devices like cameras and microphones, as well as screen sharing. In essence, it lets you obtain access to any hardware source of media data.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices)
+ */
+interface MediaDevices extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/devicechange_event) */
+ ondevicechange: ((this: MediaDevices, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/enumerateDevices) */
+ enumerateDevices(): Promise<MediaDeviceInfo[]>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/getDisplayMedia) */
+ getDisplayMedia(options?: DisplayMediaStreamOptions): Promise<MediaStream>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/getSupportedConstraints) */
+ getSupportedConstraints(): MediaTrackSupportedConstraints;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaDevices/getUserMedia) */
+ getUserMedia(constraints?: MediaStreamConstraints): Promise<MediaStream>;
+ addEventListener<K extends keyof MediaDevicesEventMap>(type: K, listener: (this: MediaDevices, ev: MediaDevicesEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaDevicesEventMap>(type: K, listener: (this: MediaDevices, ev: MediaDevicesEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MediaDevices: {
+ prototype: MediaDevices;
+ new(): MediaDevices;
+};
+
+/**
+ * A MediaElementSourceNode has no inputs and exactly one output, and is created using the AudioContext.createMediaElementSource method. The amount of channels in the output equals the number of channels of the audio referenced by the HTMLMediaElement used in the creation of the node, or is 1 if the HTMLMediaElement has no audio.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaElementAudioSourceNode)
+ */
+interface MediaElementAudioSourceNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaElementAudioSourceNode/mediaElement) */
+ readonly mediaElement: HTMLMediaElement;
+}
+
+declare var MediaElementAudioSourceNode: {
+ prototype: MediaElementAudioSourceNode;
+ new(context: AudioContext, options: MediaElementAudioSourceOptions): MediaElementAudioSourceNode;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaEncryptedEvent) */
+interface MediaEncryptedEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaEncryptedEvent/initData) */
+ readonly initData: ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaEncryptedEvent/initDataType) */
+ readonly initDataType: string;
+}
+
+declare var MediaEncryptedEvent: {
+ prototype: MediaEncryptedEvent;
+ new(type: string, eventInitDict?: MediaEncryptedEventInit): MediaEncryptedEvent;
+};
+
+/**
+ * An error which occurred while handling media in an HTML media element based on HTMLMediaElement, such as <audio> or <video>.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaError)
+ */
+interface MediaError {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaError/code) */
+ readonly code: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaError/message) */
+ readonly message: string;
+ readonly MEDIA_ERR_ABORTED: 1;
+ readonly MEDIA_ERR_NETWORK: 2;
+ readonly MEDIA_ERR_DECODE: 3;
+ readonly MEDIA_ERR_SRC_NOT_SUPPORTED: 4;
+}
+
+declare var MediaError: {
+ prototype: MediaError;
+ new(): MediaError;
+ readonly MEDIA_ERR_ABORTED: 1;
+ readonly MEDIA_ERR_NETWORK: 2;
+ readonly MEDIA_ERR_DECODE: 3;
+ readonly MEDIA_ERR_SRC_NOT_SUPPORTED: 4;
+};
+
+/**
+ * This EncryptedMediaExtensions API interface contains the content and related data when the content decryption module generates a message for the session.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyMessageEvent)
+ */
+interface MediaKeyMessageEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyMessageEvent/message) */
+ readonly message: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyMessageEvent/messageType) */
+ readonly messageType: MediaKeyMessageType;
+}
+
+declare var MediaKeyMessageEvent: {
+ prototype: MediaKeyMessageEvent;
+ new(type: string, eventInitDict: MediaKeyMessageEventInit): MediaKeyMessageEvent;
+};
+
+interface MediaKeySessionEventMap {
+ "keystatuseschange": Event;
+ "message": MediaKeyMessageEvent;
+}
+
+/**
+ * This EncryptedMediaExtensions API interface represents a context for message exchange with a content decryption module (CDM).
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession)
+ */
+interface MediaKeySession extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/closed) */
+ readonly closed: Promise<MediaKeySessionClosedReason>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/expiration) */
+ readonly expiration: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/keyStatuses) */
+ readonly keyStatuses: MediaKeyStatusMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/keystatuseschange_event) */
+ onkeystatuseschange: ((this: MediaKeySession, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/message_event) */
+ onmessage: ((this: MediaKeySession, ev: MediaKeyMessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/sessionId) */
+ readonly sessionId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/close) */
+ close(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/generateRequest) */
+ generateRequest(initDataType: string, initData: BufferSource): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/load) */
+ load(sessionId: string): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/remove) */
+ remove(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySession/update) */
+ update(response: BufferSource): Promise<void>;
+ addEventListener<K extends keyof MediaKeySessionEventMap>(type: K, listener: (this: MediaKeySession, ev: MediaKeySessionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaKeySessionEventMap>(type: K, listener: (this: MediaKeySession, ev: MediaKeySessionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MediaKeySession: {
+ prototype: MediaKeySession;
+ new(): MediaKeySession;
+};
+
+/**
+ * This EncryptedMediaExtensions API interface is a read-only map of media key statuses by key IDs.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap)
+ */
+interface MediaKeyStatusMap {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/size) */
+ readonly size: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/get) */
+ get(keyId: BufferSource): MediaKeyStatus | undefined;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeyStatusMap/has) */
+ has(keyId: BufferSource): boolean;
+ forEach(callbackfn: (value: MediaKeyStatus, key: BufferSource, parent: MediaKeyStatusMap) => void, thisArg?: any): void;
+}
+
+declare var MediaKeyStatusMap: {
+ prototype: MediaKeyStatusMap;
+ new(): MediaKeyStatusMap;
+};
+
+/**
+ * This EncryptedMediaExtensions API interface provides access to a Key System for decryption and/or a content protection provider. You can request an instance of this object using the Navigator.requestMediaKeySystemAccess method.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess)
+ */
+interface MediaKeySystemAccess {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/keySystem) */
+ readonly keySystem: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/createMediaKeys) */
+ createMediaKeys(): Promise<MediaKeys>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeySystemAccess/getConfiguration) */
+ getConfiguration(): MediaKeySystemConfiguration;
+}
+
+declare var MediaKeySystemAccess: {
+ prototype: MediaKeySystemAccess;
+ new(): MediaKeySystemAccess;
+};
+
+/**
+ * This EncryptedMediaExtensions API interface the represents a set of keys that an associated HTMLMediaElement can use for decryption of media data during playback.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeys)
+ */
+interface MediaKeys {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeys/createSession) */
+ createSession(sessionType?: MediaKeySessionType): MediaKeySession;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaKeys/setServerCertificate) */
+ setServerCertificate(serverCertificate: BufferSource): Promise<boolean>;
+}
+
+declare var MediaKeys: {
+ prototype: MediaKeys;
+ new(): MediaKeys;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList) */
+interface MediaList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/mediaText) */
+ mediaText: string;
+ toString(): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/appendMedium) */
+ appendMedium(medium: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/deleteMedium) */
+ deleteMedium(medium: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaList/item) */
+ item(index: number): string | null;
+ [index: number]: string;
+}
+
+declare var MediaList: {
+ prototype: MediaList;
+ new(): MediaList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata) */
+interface MediaMetadata {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/album) */
+ album: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/artist) */
+ artist: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/artwork) */
+ artwork: ReadonlyArray<MediaImage>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaMetadata/title) */
+ title: string;
+}
+
+declare var MediaMetadata: {
+ prototype: MediaMetadata;
+ new(init?: MediaMetadataInit): MediaMetadata;
+};
+
+interface MediaQueryListEventMap {
+ "change": MediaQueryListEvent;
+}
+
+/**
+ * Stores information on a media query applied to a document, and handles sending notifications to listeners when the media query state change (i.e. when the media query test starts or stops evaluating to true).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList)
+ */
+interface MediaQueryList extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/matches) */
+ readonly matches: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/media) */
+ readonly media: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/change_event) */
+ onchange: ((this: MediaQueryList, ev: MediaQueryListEvent) => any) | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/addListener)
+ */
+ addListener(callback: ((this: MediaQueryList, ev: MediaQueryListEvent) => any) | null): void;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryList/removeListener)
+ */
+ removeListener(callback: ((this: MediaQueryList, ev: MediaQueryListEvent) => any) | null): void;
+ addEventListener<K extends keyof MediaQueryListEventMap>(type: K, listener: (this: MediaQueryList, ev: MediaQueryListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaQueryListEventMap>(type: K, listener: (this: MediaQueryList, ev: MediaQueryListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MediaQueryList: {
+ prototype: MediaQueryList;
+ new(): MediaQueryList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryListEvent) */
+interface MediaQueryListEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryListEvent/matches) */
+ readonly matches: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaQueryListEvent/media) */
+ readonly media: string;
+}
+
+declare var MediaQueryListEvent: {
+ prototype: MediaQueryListEvent;
+ new(type: string, eventInitDict?: MediaQueryListEventInit): MediaQueryListEvent;
+};
+
+interface MediaRecorderEventMap {
+ "dataavailable": BlobEvent;
+ "error": Event;
+ "pause": Event;
+ "resume": Event;
+ "start": Event;
+ "stop": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder) */
+interface MediaRecorder extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/audioBitsPerSecond) */
+ readonly audioBitsPerSecond: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/mimeType) */
+ readonly mimeType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/dataavailable_event) */
+ ondataavailable: ((this: MediaRecorder, ev: BlobEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/error_event) */
+ onerror: ((this: MediaRecorder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/pause_event) */
+ onpause: ((this: MediaRecorder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/resume_event) */
+ onresume: ((this: MediaRecorder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/start_event) */
+ onstart: ((this: MediaRecorder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/stop_event) */
+ onstop: ((this: MediaRecorder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/state) */
+ readonly state: RecordingState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/stream) */
+ readonly stream: MediaStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/videoBitsPerSecond) */
+ readonly videoBitsPerSecond: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/pause) */
+ pause(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/requestData) */
+ requestData(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/resume) */
+ resume(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/start) */
+ start(timeslice?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/stop) */
+ stop(): void;
+ addEventListener<K extends keyof MediaRecorderEventMap>(type: K, listener: (this: MediaRecorder, ev: MediaRecorderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaRecorderEventMap>(type: K, listener: (this: MediaRecorder, ev: MediaRecorderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MediaRecorder: {
+ prototype: MediaRecorder;
+ new(stream: MediaStream, options?: MediaRecorderOptions): MediaRecorder;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaRecorder/isTypeSupported_static) */
+ isTypeSupported(type: string): boolean;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession) */
+interface MediaSession {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/metadata) */
+ metadata: MediaMetadata | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/playbackState) */
+ playbackState: MediaSessionPlaybackState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/setActionHandler) */
+ setActionHandler(action: MediaSessionAction, handler: MediaSessionActionHandler | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSession/setPositionState) */
+ setPositionState(state?: MediaPositionState): void;
+}
+
+declare var MediaSession: {
+ prototype: MediaSession;
+ new(): MediaSession;
+};
+
+interface MediaSourceEventMap {
+ "sourceclose": Event;
+ "sourceended": Event;
+ "sourceopen": Event;
+}
+
+/**
+ * This Media Source Extensions API interface represents a source of media data for an HTMLMediaElement object. A MediaSource object can be attached to a HTMLMediaElement to be played in the user agent.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource)
+ */
+interface MediaSource extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/activeSourceBuffers) */
+ readonly activeSourceBuffers: SourceBufferList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/duration) */
+ duration: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceclose_event) */
+ onsourceclose: ((this: MediaSource, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceended_event) */
+ onsourceended: ((this: MediaSource, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceopen_event) */
+ onsourceopen: ((this: MediaSource, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/readyState) */
+ readonly readyState: ReadyState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/sourceBuffers) */
+ readonly sourceBuffers: SourceBufferList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/addSourceBuffer) */
+ addSourceBuffer(type: string): SourceBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/clearLiveSeekableRange) */
+ clearLiveSeekableRange(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/endOfStream) */
+ endOfStream(error?: EndOfStreamError): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/removeSourceBuffer) */
+ removeSourceBuffer(sourceBuffer: SourceBuffer): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/setLiveSeekableRange) */
+ setLiveSeekableRange(start: number, end: number): void;
+ addEventListener<K extends keyof MediaSourceEventMap>(type: K, listener: (this: MediaSource, ev: MediaSourceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaSourceEventMap>(type: K, listener: (this: MediaSource, ev: MediaSourceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MediaSource: {
+ prototype: MediaSource;
+ new(): MediaSource;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaSource/isTypeSupported_static) */
+ isTypeSupported(type: string): boolean;
+};
+
+interface MediaStreamEventMap {
+ "addtrack": MediaStreamTrackEvent;
+ "removetrack": MediaStreamTrackEvent;
+}
+
+/**
+ * A stream of media content. A stream consists of several tracks such as video or audio tracks. Each track is specified as an instance of MediaStreamTrack.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream)
+ */
+interface MediaStream extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/active) */
+ readonly active: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/id) */
+ readonly id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/addtrack_event) */
+ onaddtrack: ((this: MediaStream, ev: MediaStreamTrackEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/removetrack_event) */
+ onremovetrack: ((this: MediaStream, ev: MediaStreamTrackEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/addTrack) */
+ addTrack(track: MediaStreamTrack): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/clone) */
+ clone(): MediaStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getAudioTracks) */
+ getAudioTracks(): MediaStreamTrack[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getTrackById) */
+ getTrackById(trackId: string): MediaStreamTrack | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getTracks) */
+ getTracks(): MediaStreamTrack[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/getVideoTracks) */
+ getVideoTracks(): MediaStreamTrack[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStream/removeTrack) */
+ removeTrack(track: MediaStreamTrack): void;
+ addEventListener<K extends keyof MediaStreamEventMap>(type: K, listener: (this: MediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaStreamEventMap>(type: K, listener: (this: MediaStream, ev: MediaStreamEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MediaStream: {
+ prototype: MediaStream;
+ new(): MediaStream;
+ new(stream: MediaStream): MediaStream;
+ new(tracks: MediaStreamTrack[]): MediaStream;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioDestinationNode) */
+interface MediaStreamAudioDestinationNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioDestinationNode/stream) */
+ readonly stream: MediaStream;
+}
+
+declare var MediaStreamAudioDestinationNode: {
+ prototype: MediaStreamAudioDestinationNode;
+ new(context: AudioContext, options?: AudioNodeOptions): MediaStreamAudioDestinationNode;
+};
+
+/**
+ * A type of AudioNode which operates as an audio source whose media is received from a MediaStream obtained using the WebRTC or Media Capture and Streams APIs.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioSourceNode)
+ */
+interface MediaStreamAudioSourceNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamAudioSourceNode/mediaStream) */
+ readonly mediaStream: MediaStream;
+}
+
+declare var MediaStreamAudioSourceNode: {
+ prototype: MediaStreamAudioSourceNode;
+ new(context: AudioContext, options: MediaStreamAudioSourceOptions): MediaStreamAudioSourceNode;
+};
+
+interface MediaStreamTrackEventMap {
+ "ended": Event;
+ "mute": Event;
+ "unmute": Event;
+}
+
+/**
+ * A single media track within a stream; typically, these are audio or video tracks, but other track types may exist as well.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack)
+ */
+interface MediaStreamTrack extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/contentHint) */
+ contentHint: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/enabled) */
+ enabled: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/id) */
+ readonly id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/kind) */
+ readonly kind: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/label) */
+ readonly label: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/muted) */
+ readonly muted: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/ended_event) */
+ onended: ((this: MediaStreamTrack, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/mute_event) */
+ onmute: ((this: MediaStreamTrack, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/unmute_event) */
+ onunmute: ((this: MediaStreamTrack, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/readyState) */
+ readonly readyState: MediaStreamTrackState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/applyConstraints) */
+ applyConstraints(constraints?: MediaTrackConstraints): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/clone) */
+ clone(): MediaStreamTrack;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getCapabilities) */
+ getCapabilities(): MediaTrackCapabilities;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getConstraints) */
+ getConstraints(): MediaTrackConstraints;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/getSettings) */
+ getSettings(): MediaTrackSettings;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrack/stop) */
+ stop(): void;
+ addEventListener<K extends keyof MediaStreamTrackEventMap>(type: K, listener: (this: MediaStreamTrack, ev: MediaStreamTrackEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MediaStreamTrackEventMap>(type: K, listener: (this: MediaStreamTrack, ev: MediaStreamTrackEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MediaStreamTrack: {
+ prototype: MediaStreamTrack;
+ new(): MediaStreamTrack;
+};
+
+/**
+ * Events which indicate that a MediaStream has had tracks added to or removed from the stream through calls to Media Stream API methods. These events are sent to the stream when these changes occur.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrackEvent)
+ */
+interface MediaStreamTrackEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaStreamTrackEvent/track) */
+ readonly track: MediaStreamTrack;
+}
+
+declare var MediaStreamTrackEvent: {
+ prototype: MediaStreamTrackEvent;
+ new(type: string, eventInitDict: MediaStreamTrackEventInit): MediaStreamTrackEvent;
+};
+
+/**
+ * This Channel Messaging API interface allows us to create a new message channel and send data through it via its two MessagePort properties.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel)
+ */
+interface MessageChannel {
+ /**
+ * Returns the first MessagePort object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port1)
+ */
+ readonly port1: MessagePort;
+ /**
+ * Returns the second MessagePort object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port2)
+ */
+ readonly port2: MessagePort;
+}
+
+declare var MessageChannel: {
+ prototype: MessageChannel;
+ new(): MessageChannel;
+};
+
+/**
+ * A message received by a target object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent)
+ */
+interface MessageEvent<T = any> extends Event {
+ /**
+ * Returns the data of the message.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/data)
+ */
+ readonly data: T;
+ /**
+ * Returns the last event ID string, for server-sent events.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/lastEventId)
+ */
+ readonly lastEventId: string;
+ /**
+ * Returns the origin of the message, for server-sent events and cross-document messaging.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/origin)
+ */
+ readonly origin: string;
+ /**
+ * Returns the MessagePort array sent with the message, for cross-document messaging and channel messaging.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/ports)
+ */
+ readonly ports: ReadonlyArray<MessagePort>;
+ /**
+ * Returns the WindowProxy of the source window, for cross-document messaging, and the MessagePort being attached, in the connect event fired at SharedWorkerGlobalScope objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/source)
+ */
+ readonly source: MessageEventSource | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/initMessageEvent)
+ */
+ initMessageEvent(type: string, bubbles?: boolean, cancelable?: boolean, data?: any, origin?: string, lastEventId?: string, source?: MessageEventSource | null, ports?: MessagePort[]): void;
+}
+
+declare var MessageEvent: {
+ prototype: MessageEvent;
+ new<T>(type: string, eventInitDict?: MessageEventInit<T>): MessageEvent<T>;
+};
+
+interface MessagePortEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/**
+ * This Channel Messaging API interface represents one of the two ports of a MessageChannel, allowing messages to be sent from one port and listening out for them arriving at the other.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort)
+ */
+interface MessagePort extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/message_event) */
+ onmessage: ((this: MessagePort, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/messageerror_event) */
+ onmessageerror: ((this: MessagePort, ev: MessageEvent) => any) | null;
+ /**
+ * Disconnects the port, so that it is no longer active.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/close)
+ */
+ close(): void;
+ /**
+ * Posts a message through the channel. Objects listed in transfer are transferred, not just cloned, meaning that they are no longer usable on the sending side.
+ *
+ * Throws a "DataCloneError" DOMException if transfer contains duplicate objects or port, or if message could not be cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/postMessage)
+ */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+ /**
+ * Begins dispatching messages received on the port.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/start)
+ */
+ start(): void;
+ addEventListener<K extends keyof MessagePortEventMap>(type: K, listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MessagePortEventMap>(type: K, listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MessagePort: {
+ prototype: MessagePort;
+ new(): MessagePort;
+};
+
+/**
+ * Provides contains information about a MIME type associated with a particular plugin. NavigatorPlugins.mimeTypes returns an array of this object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType)
+ */
+interface MimeType {
+ /**
+ * Returns the MIME type's description.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/description)
+ */
+ readonly description: string;
+ /**
+ * Returns the Plugin object that implements this MIME type.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/enabledPlugin)
+ */
+ readonly enabledPlugin: Plugin;
+ /**
+ * Returns the MIME type's typical file extensions, in a comma-separated list.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/suffixes)
+ */
+ readonly suffixes: string;
+ /**
+ * Returns the MIME type.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeType/type)
+ */
+ readonly type: string;
+}
+
+/** @deprecated */
+declare var MimeType: {
+ prototype: MimeType;
+ new(): MimeType;
+};
+
+/**
+ * Returns an array of MimeType instances, each of which contains information about a supported browser plugins. This object is returned by NavigatorPlugins.mimeTypes.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray)
+ */
+interface MimeTypeArray {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray/length)
+ */
+ readonly length: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray/item)
+ */
+ item(index: number): MimeType | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MimeTypeArray/namedItem)
+ */
+ namedItem(name: string): MimeType | null;
+ [index: number]: MimeType;
+}
+
+/** @deprecated */
+declare var MimeTypeArray: {
+ prototype: MimeTypeArray;
+ new(): MimeTypeArray;
+};
+
+/**
+ * Events that occur due to the user interacting with a pointing device (such as a mouse). Common events using this interface include click, dblclick, mouseup, mousedown.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent)
+ */
+interface MouseEvent extends UIEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/altKey) */
+ readonly altKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/button) */
+ readonly button: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/buttons) */
+ readonly buttons: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/clientX) */
+ readonly clientX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/clientY) */
+ readonly clientY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/ctrlKey) */
+ readonly ctrlKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/layerX) */
+ readonly layerX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/layerY) */
+ readonly layerY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/metaKey) */
+ readonly metaKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/movementX) */
+ readonly movementX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/movementY) */
+ readonly movementY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/offsetX) */
+ readonly offsetX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/offsetY) */
+ readonly offsetY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/pageX) */
+ readonly pageX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/pageY) */
+ readonly pageY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/relatedTarget) */
+ readonly relatedTarget: EventTarget | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/screenX) */
+ readonly screenX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/screenY) */
+ readonly screenY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/shiftKey) */
+ readonly shiftKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/x) */
+ readonly x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/y) */
+ readonly y: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/getModifierState) */
+ getModifierState(keyArg: string): boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MouseEvent/initMouseEvent)
+ */
+ initMouseEvent(typeArg: string, canBubbleArg: boolean, cancelableArg: boolean, viewArg: Window, detailArg: number, screenXArg: number, screenYArg: number, clientXArg: number, clientYArg: number, ctrlKeyArg: boolean, altKeyArg: boolean, shiftKeyArg: boolean, metaKeyArg: boolean, buttonArg: number, relatedTargetArg: EventTarget | null): void;
+}
+
+declare var MouseEvent: {
+ prototype: MouseEvent;
+ new(type: string, eventInitDict?: MouseEventInit): MouseEvent;
+};
+
+/**
+ * Provides event properties that are specific to modifications to the Document Object Model (DOM) hierarchy and nodes.
+ * @deprecated DOM4 [DOM] provides a new mechanism using a MutationObserver interface which addresses the use cases that mutation events solve, but in a more performant manner. Thus, this specification describes mutation events for reference and completeness of legacy behavior, but deprecates the use of the MutationEvent interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent)
+ */
+interface MutationEvent extends Event {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/attrChange)
+ */
+ readonly attrChange: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/attrName)
+ */
+ readonly attrName: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/newValue)
+ */
+ readonly newValue: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/prevValue)
+ */
+ readonly prevValue: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/relatedNode)
+ */
+ readonly relatedNode: Node | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationEvent/initMutationEvent)
+ */
+ initMutationEvent(typeArg: string, bubblesArg?: boolean, cancelableArg?: boolean, relatedNodeArg?: Node | null, prevValueArg?: string, newValueArg?: string, attrNameArg?: string, attrChangeArg?: number): void;
+ readonly MODIFICATION: 1;
+ readonly ADDITION: 2;
+ readonly REMOVAL: 3;
+}
+
+/** @deprecated */
+declare var MutationEvent: {
+ prototype: MutationEvent;
+ new(): MutationEvent;
+ readonly MODIFICATION: 1;
+ readonly ADDITION: 2;
+ readonly REMOVAL: 3;
+};
+
+/**
+ * Provides the ability to watch for changes being made to the DOM tree. It is designed as a replacement for the older Mutation Events feature which was part of the DOM3 Events specification.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver)
+ */
+interface MutationObserver {
+ /**
+ * Stops observer from observing any mutations. Until the observe() method is used again, observer's callback will not be invoked.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver/disconnect)
+ */
+ disconnect(): void;
+ /**
+ * Instructs the user agent to observe a given target (a node) and report any mutations based on the criteria given by options (an object).
+ *
+ * The options argument allows for setting mutation observation options via object members.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver/observe)
+ */
+ observe(target: Node, options?: MutationObserverInit): void;
+ /**
+ * Empties the record queue and returns what was in there.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationObserver/takeRecords)
+ */
+ takeRecords(): MutationRecord[];
+}
+
+declare var MutationObserver: {
+ prototype: MutationObserver;
+ new(callback: MutationCallback): MutationObserver;
+};
+
+/**
+ * A MutationRecord represents an individual DOM mutation. It is the object that is passed to MutationObserver's callback.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord)
+ */
+interface MutationRecord {
+ /**
+ * Return the nodes added and removed respectively.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/addedNodes)
+ */
+ readonly addedNodes: NodeList;
+ /**
+ * Returns the local name of the changed attribute, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/attributeName)
+ */
+ readonly attributeName: string | null;
+ /**
+ * Returns the namespace of the changed attribute, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/attributeNamespace)
+ */
+ readonly attributeNamespace: string | null;
+ /**
+ * Return the previous and next sibling respectively of the added or removed nodes, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/nextSibling)
+ */
+ readonly nextSibling: Node | null;
+ /**
+ * The return value depends on type. For "attributes", it is the value of the changed attribute before the change. For "characterData", it is the data of the changed node before the change. For "childList", it is null.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/oldValue)
+ */
+ readonly oldValue: string | null;
+ /**
+ * Return the previous and next sibling respectively of the added or removed nodes, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/previousSibling)
+ */
+ readonly previousSibling: Node | null;
+ /**
+ * Return the nodes added and removed respectively.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/removedNodes)
+ */
+ readonly removedNodes: NodeList;
+ /**
+ * Returns the node the mutation affected, depending on the type. For "attributes", it is the element whose attribute changed. For "characterData", it is the CharacterData node. For "childList", it is the node whose children changed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/target)
+ */
+ readonly target: Node;
+ /**
+ * Returns "attributes" if it was an attribute mutation. "characterData" if it was a mutation to a CharacterData node. And "childList" if it was a mutation to the tree of nodes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MutationRecord/type)
+ */
+ readonly type: MutationRecordType;
+}
+
+declare var MutationRecord: {
+ prototype: MutationRecord;
+ new(): MutationRecord;
+};
+
+/**
+ * A collection of Attr objects. Objects inside a NamedNodeMap are not in any particular order, unlike NodeList, although they may be accessed by an index as in an array.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap)
+ */
+interface NamedNodeMap {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/getNamedItem) */
+ getNamedItem(qualifiedName: string): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/getNamedItemNS) */
+ getNamedItemNS(namespace: string | null, localName: string): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/item) */
+ item(index: number): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/removeNamedItem) */
+ removeNamedItem(qualifiedName: string): Attr;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/removeNamedItemNS) */
+ removeNamedItemNS(namespace: string | null, localName: string): Attr;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/setNamedItem) */
+ setNamedItem(attr: Attr): Attr | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NamedNodeMap/setNamedItemNS) */
+ setNamedItemNS(attr: Attr): Attr | null;
+ [index: number]: Attr;
+}
+
+declare var NamedNodeMap: {
+ prototype: NamedNodeMap;
+ new(): NamedNodeMap;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager)
+ */
+interface NavigationPreloadManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/disable) */
+ disable(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/enable) */
+ enable(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/getState) */
+ getState(): Promise<NavigationPreloadState>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/setHeaderValue) */
+ setHeaderValue(value: string): Promise<void>;
+}
+
+declare var NavigationPreloadManager: {
+ prototype: NavigationPreloadManager;
+ new(): NavigationPreloadManager;
+};
+
+/**
+ * The state and the identity of the user agent. It allows scripts to query it and to register themselves to carry on some activities.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator)
+ */
+interface Navigator extends NavigatorAutomationInformation, NavigatorBadge, NavigatorConcurrentHardware, NavigatorContentUtils, NavigatorCookies, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorOnLine, NavigatorPlugins, NavigatorStorage {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/clipboard)
+ */
+ readonly clipboard: Clipboard;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/credentials)
+ */
+ readonly credentials: CredentialsContainer;
+ readonly doNotTrack: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/geolocation) */
+ readonly geolocation: Geolocation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/maxTouchPoints) */
+ readonly maxTouchPoints: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/mediaCapabilities) */
+ readonly mediaCapabilities: MediaCapabilities;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/mediaDevices)
+ */
+ readonly mediaDevices: MediaDevices;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/mediaSession) */
+ readonly mediaSession: MediaSession;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/permissions) */
+ readonly permissions: Permissions;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/serviceWorker)
+ */
+ readonly serviceWorker: ServiceWorkerContainer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/userActivation) */
+ readonly userActivation: UserActivation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/wakeLock) */
+ readonly wakeLock: WakeLock;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/canShare)
+ */
+ canShare(data?: ShareData): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/getGamepads) */
+ getGamepads(): (Gamepad | null)[];
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/requestMIDIAccess)
+ */
+ requestMIDIAccess(options?: MIDIOptions): Promise<MIDIAccess>;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/requestMediaKeySystemAccess)
+ */
+ requestMediaKeySystemAccess(keySystem: string, supportedConfigurations: MediaKeySystemConfiguration[]): Promise<MediaKeySystemAccess>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/sendBeacon) */
+ sendBeacon(url: string | URL, data?: BodyInit | null): boolean;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/share)
+ */
+ share(data?: ShareData): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vibrate) */
+ vibrate(pattern: VibratePattern): boolean;
+}
+
+declare var Navigator: {
+ prototype: Navigator;
+ new(): Navigator;
+};
+
+interface NavigatorAutomationInformation {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/webdriver) */
+ readonly webdriver: boolean;
+}
+
+/** Available only in secure contexts. */
+interface NavigatorBadge {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/clearAppBadge) */
+ clearAppBadge(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/setAppBadge) */
+ setAppBadge(contents?: number): Promise<void>;
+}
+
+interface NavigatorConcurrentHardware {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/hardwareConcurrency) */
+ readonly hardwareConcurrency: number;
+}
+
+interface NavigatorContentUtils {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/registerProtocolHandler)
+ */
+ registerProtocolHandler(scheme: string, url: string | URL): void;
+}
+
+interface NavigatorCookies {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/cookieEnabled) */
+ readonly cookieEnabled: boolean;
+}
+
+interface NavigatorID {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appCodeName)
+ */
+ readonly appCodeName: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appName)
+ */
+ readonly appName: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appVersion)
+ */
+ readonly appVersion: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/platform)
+ */
+ readonly platform: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/product)
+ */
+ readonly product: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/productSub)
+ */
+ readonly productSub: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/userAgent) */
+ readonly userAgent: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vendor)
+ */
+ readonly vendor: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vendorSub)
+ */
+ readonly vendorSub: string;
+}
+
+interface NavigatorLanguage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/language) */
+ readonly language: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/languages) */
+ readonly languages: ReadonlyArray<string>;
+}
+
+/** Available only in secure contexts. */
+interface NavigatorLocks {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/locks) */
+ readonly locks: LockManager;
+}
+
+interface NavigatorOnLine {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/onLine) */
+ readonly onLine: boolean;
+}
+
+interface NavigatorPlugins {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigatorPlugins/mimeTypes)
+ */
+ readonly mimeTypes: MimeTypeArray;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/pdfViewerEnabled) */
+ readonly pdfViewerEnabled: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/plugins)
+ */
+ readonly plugins: PluginArray;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/javaEnabled)
+ */
+ javaEnabled(): boolean;
+}
+
+/** Available only in secure contexts. */
+interface NavigatorStorage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/storage) */
+ readonly storage: StorageManager;
+}
+
+/**
+ * Node is an interface from which a number of DOM API object types inherit. It allows those types to be treated similarly; for example, inheriting the same set of methods, or being tested in the same way.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node)
+ */
+interface Node extends EventTarget {
+ /**
+ * Returns node's node document's document base URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/baseURI)
+ */
+ readonly baseURI: string;
+ /**
+ * Returns the children.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/childNodes)
+ */
+ readonly childNodes: NodeListOf<ChildNode>;
+ /**
+ * Returns the first child.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/firstChild)
+ */
+ readonly firstChild: ChildNode | null;
+ /**
+ * Returns true if node is connected and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isConnected)
+ */
+ readonly isConnected: boolean;
+ /**
+ * Returns the last child.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/lastChild)
+ */
+ readonly lastChild: ChildNode | null;
+ /**
+ * Returns the next sibling.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nextSibling)
+ */
+ readonly nextSibling: ChildNode | null;
+ /**
+ * Returns a string appropriate for the type of node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nodeName)
+ */
+ readonly nodeName: string;
+ /**
+ * Returns the type of node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nodeType)
+ */
+ readonly nodeType: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/nodeValue) */
+ nodeValue: string | null;
+ /**
+ * Returns the node document. Returns null for documents.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/ownerDocument)
+ */
+ readonly ownerDocument: Document | null;
+ /**
+ * Returns the parent element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/parentElement)
+ */
+ readonly parentElement: HTMLElement | null;
+ /**
+ * Returns the parent.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/parentNode)
+ */
+ readonly parentNode: ParentNode | null;
+ /**
+ * Returns the previous sibling.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/previousSibling)
+ */
+ readonly previousSibling: ChildNode | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/textContent) */
+ textContent: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/appendChild) */
+ appendChild<T extends Node>(node: T): T;
+ /**
+ * Returns a copy of node. If deep is true, the copy also includes the node's descendants.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/cloneNode)
+ */
+ cloneNode(deep?: boolean): Node;
+ /**
+ * Returns a bitmask indicating the position of other relative to node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/compareDocumentPosition)
+ */
+ compareDocumentPosition(other: Node): number;
+ /**
+ * Returns true if other is an inclusive descendant of node, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/contains)
+ */
+ contains(other: Node | null): boolean;
+ /**
+ * Returns node's root.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/getRootNode)
+ */
+ getRootNode(options?: GetRootNodeOptions): Node;
+ /**
+ * Returns whether node has children.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/hasChildNodes)
+ */
+ hasChildNodes(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/insertBefore) */
+ insertBefore<T extends Node>(node: T, child: Node | null): T;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isDefaultNamespace) */
+ isDefaultNamespace(namespace: string | null): boolean;
+ /**
+ * Returns whether node and otherNode have the same properties.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isEqualNode)
+ */
+ isEqualNode(otherNode: Node | null): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/isSameNode) */
+ isSameNode(otherNode: Node | null): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/lookupNamespaceURI) */
+ lookupNamespaceURI(prefix: string | null): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/lookupPrefix) */
+ lookupPrefix(namespace: string | null): string | null;
+ /**
+ * Removes empty exclusive Text nodes and concatenates the data of remaining contiguous exclusive Text nodes into the first of their nodes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/normalize)
+ */
+ normalize(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/removeChild) */
+ removeChild<T extends Node>(child: T): T;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/replaceChild) */
+ replaceChild<T extends Node>(node: Node, child: T): T;
+ /** node is an element. */
+ readonly ELEMENT_NODE: 1;
+ readonly ATTRIBUTE_NODE: 2;
+ /** node is a Text node. */
+ readonly TEXT_NODE: 3;
+ /** node is a CDATASection node. */
+ readonly CDATA_SECTION_NODE: 4;
+ readonly ENTITY_REFERENCE_NODE: 5;
+ readonly ENTITY_NODE: 6;
+ /** node is a ProcessingInstruction node. */
+ readonly PROCESSING_INSTRUCTION_NODE: 7;
+ /** node is a Comment node. */
+ readonly COMMENT_NODE: 8;
+ /** node is a document. */
+ readonly DOCUMENT_NODE: 9;
+ /** node is a doctype. */
+ readonly DOCUMENT_TYPE_NODE: 10;
+ /** node is a DocumentFragment node. */
+ readonly DOCUMENT_FRAGMENT_NODE: 11;
+ readonly NOTATION_NODE: 12;
+ /** Set when node and other are not in the same tree. */
+ readonly DOCUMENT_POSITION_DISCONNECTED: 0x01;
+ /** Set when other is preceding node. */
+ readonly DOCUMENT_POSITION_PRECEDING: 0x02;
+ /** Set when other is following node. */
+ readonly DOCUMENT_POSITION_FOLLOWING: 0x04;
+ /** Set when other is an ancestor of node. */
+ readonly DOCUMENT_POSITION_CONTAINS: 0x08;
+ /** Set when other is a descendant of node. */
+ readonly DOCUMENT_POSITION_CONTAINED_BY: 0x10;
+ readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 0x20;
+}
+
+declare var Node: {
+ prototype: Node;
+ new(): Node;
+ /** node is an element. */
+ readonly ELEMENT_NODE: 1;
+ readonly ATTRIBUTE_NODE: 2;
+ /** node is a Text node. */
+ readonly TEXT_NODE: 3;
+ /** node is a CDATASection node. */
+ readonly CDATA_SECTION_NODE: 4;
+ readonly ENTITY_REFERENCE_NODE: 5;
+ readonly ENTITY_NODE: 6;
+ /** node is a ProcessingInstruction node. */
+ readonly PROCESSING_INSTRUCTION_NODE: 7;
+ /** node is a Comment node. */
+ readonly COMMENT_NODE: 8;
+ /** node is a document. */
+ readonly DOCUMENT_NODE: 9;
+ /** node is a doctype. */
+ readonly DOCUMENT_TYPE_NODE: 10;
+ /** node is a DocumentFragment node. */
+ readonly DOCUMENT_FRAGMENT_NODE: 11;
+ readonly NOTATION_NODE: 12;
+ /** Set when node and other are not in the same tree. */
+ readonly DOCUMENT_POSITION_DISCONNECTED: 0x01;
+ /** Set when other is preceding node. */
+ readonly DOCUMENT_POSITION_PRECEDING: 0x02;
+ /** Set when other is following node. */
+ readonly DOCUMENT_POSITION_FOLLOWING: 0x04;
+ /** Set when other is an ancestor of node. */
+ readonly DOCUMENT_POSITION_CONTAINS: 0x08;
+ /** Set when other is a descendant of node. */
+ readonly DOCUMENT_POSITION_CONTAINED_BY: 0x10;
+ readonly DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC: 0x20;
+};
+
+/**
+ * An iterator over the members of a list of the nodes in a subtree of the DOM. The nodes will be returned in document order.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator)
+ */
+interface NodeIterator {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/filter) */
+ readonly filter: NodeFilter | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/pointerBeforeReferenceNode) */
+ readonly pointerBeforeReferenceNode: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/referenceNode) */
+ readonly referenceNode: Node;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/root) */
+ readonly root: Node;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/whatToShow) */
+ readonly whatToShow: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/detach)
+ */
+ detach(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/nextNode) */
+ nextNode(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeIterator/previousNode) */
+ previousNode(): Node | null;
+}
+
+declare var NodeIterator: {
+ prototype: NodeIterator;
+ new(): NodeIterator;
+};
+
+/**
+ * NodeList objects are collections of nodes, usually returned by properties such as Node.childNodes and methods such as document.querySelectorAll().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList)
+ */
+interface NodeList {
+ /**
+ * Returns the number of nodes in the collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/length)
+ */
+ readonly length: number;
+ /**
+ * Returns the node with index index from the collection. The nodes are sorted in tree order.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NodeList/item)
+ */
+ item(index: number): Node | null;
+ /**
+ * Performs the specified action for each node in an list.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: Node, key: number, parent: NodeList) => void, thisArg?: any): void;
+ [index: number]: Node;
+}
+
+declare var NodeList: {
+ prototype: NodeList;
+ new(): NodeList;
+};
+
+interface NodeListOf<TNode extends Node> extends NodeList {
+ item(index: number): TNode;
+ /**
+ * Performs the specified action for each node in an list.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the list.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: TNode, key: number, parent: NodeListOf<TNode>) => void, thisArg?: any): void;
+ [index: number]: TNode;
+}
+
+interface NonDocumentTypeChildNode {
+ /**
+ * Returns the first following sibling that is an element, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/nextElementSibling)
+ */
+ readonly nextElementSibling: Element | null;
+ /**
+ * Returns the first preceding sibling that is an element, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CharacterData/previousElementSibling)
+ */
+ readonly previousElementSibling: Element | null;
+}
+
+interface NonElementParentNode {
+ /**
+ * Returns the first element within node's descendants whose ID is elementId.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/getElementById)
+ */
+ getElementById(elementId: string): Element | null;
+}
+
+interface NotificationEventMap {
+ "click": Event;
+ "close": Event;
+ "error": Event;
+ "show": Event;
+}
+
+/**
+ * This Notifications API interface is used to configure and display desktop notifications to the user.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification)
+ */
+interface Notification extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/badge) */
+ readonly badge: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/body) */
+ readonly body: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/data) */
+ readonly data: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/dir) */
+ readonly dir: NotificationDirection;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/icon) */
+ readonly icon: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/lang) */
+ readonly lang: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/click_event) */
+ onclick: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/close_event) */
+ onclose: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/error_event) */
+ onerror: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/show_event) */
+ onshow: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/requireInteraction) */
+ readonly requireInteraction: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/silent) */
+ readonly silent: boolean | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/tag) */
+ readonly tag: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/title) */
+ readonly title: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/close) */
+ close(): void;
+ addEventListener<K extends keyof NotificationEventMap>(type: K, listener: (this: Notification, ev: NotificationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof NotificationEventMap>(type: K, listener: (this: Notification, ev: NotificationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Notification: {
+ prototype: Notification;
+ new(title: string, options?: NotificationOptions): Notification;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/permission_static) */
+ readonly permission: NotificationPermission;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/requestPermission_static) */
+ requestPermission(deprecatedCallback?: NotificationPermissionCallback): Promise<NotificationPermission>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed) */
+interface OES_draw_buffers_indexed {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendEquationSeparateiOES) */
+ blendEquationSeparateiOES(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendEquationiOES) */
+ blendEquationiOES(buf: GLuint, mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendFuncSeparateiOES) */
+ blendFuncSeparateiOES(buf: GLuint, srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendFunciOES) */
+ blendFunciOES(buf: GLuint, src: GLenum, dst: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/colorMaskiOES) */
+ colorMaskiOES(buf: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/disableiOES) */
+ disableiOES(target: GLenum, index: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/enableiOES) */
+ enableiOES(target: GLenum, index: GLuint): void;
+}
+
+/**
+ * The OES_element_index_uint extension is part of the WebGL API and adds support for gl.UNSIGNED_INT types to WebGLRenderingContext.drawElements().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_element_index_uint)
+ */
+interface OES_element_index_uint {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_fbo_render_mipmap) */
+interface OES_fbo_render_mipmap {
+}
+
+/**
+ * The OES_standard_derivatives extension is part of the WebGL API and adds the GLSL derivative functions dFdx, dFdy, and fwidth.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_standard_derivatives)
+ */
+interface OES_standard_derivatives {
+ readonly FRAGMENT_SHADER_DERIVATIVE_HINT_OES: 0x8B8B;
+}
+
+/**
+ * The OES_texture_float extension is part of the WebGL API and exposes floating-point pixel types for textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_float)
+ */
+interface OES_texture_float {
+}
+
+/**
+ * The OES_texture_float_linear extension is part of the WebGL API and allows linear filtering with floating-point pixel types for textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_float_linear)
+ */
+interface OES_texture_float_linear {
+}
+
+/**
+ * The OES_texture_half_float extension is part of the WebGL API and adds texture formats with 16- (aka half float) and 32-bit floating-point components.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_half_float)
+ */
+interface OES_texture_half_float {
+ readonly HALF_FLOAT_OES: 0x8D61;
+}
+
+/**
+ * The OES_texture_half_float_linear extension is part of the WebGL API and allows linear filtering with half floating-point pixel types for textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_half_float_linear)
+ */
+interface OES_texture_half_float_linear {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object) */
+interface OES_vertex_array_object {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/bindVertexArrayOES) */
+ bindVertexArrayOES(arrayObject: WebGLVertexArrayObjectOES | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/createVertexArrayOES) */
+ createVertexArrayOES(): WebGLVertexArrayObjectOES | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/deleteVertexArrayOES) */
+ deleteVertexArrayOES(arrayObject: WebGLVertexArrayObjectOES | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/isVertexArrayOES) */
+ isVertexArrayOES(arrayObject: WebGLVertexArrayObjectOES | null): GLboolean;
+ readonly VERTEX_ARRAY_BINDING_OES: 0x85B5;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OVR_multiview2) */
+interface OVR_multiview2 {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OVR_multiview2/framebufferTextureMultiviewOVR) */
+ framebufferTextureMultiviewOVR(target: GLenum, attachment: GLenum, texture: WebGLTexture | null, level: GLint, baseViewIndex: GLint, numViews: GLsizei): void;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR: 0x9630;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR: 0x9632;
+ readonly MAX_VIEWS_OVR: 0x9631;
+ readonly FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR: 0x9633;
+}
+
+/**
+ * The Web Audio API OfflineAudioCompletionEvent interface represents events that occur when the processing of an OfflineAudioContext is terminated. The complete event implements this interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioCompletionEvent)
+ */
+interface OfflineAudioCompletionEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioCompletionEvent/renderedBuffer) */
+ readonly renderedBuffer: AudioBuffer;
+}
+
+declare var OfflineAudioCompletionEvent: {
+ prototype: OfflineAudioCompletionEvent;
+ new(type: string, eventInitDict: OfflineAudioCompletionEventInit): OfflineAudioCompletionEvent;
+};
+
+interface OfflineAudioContextEventMap extends BaseAudioContextEventMap {
+ "complete": OfflineAudioCompletionEvent;
+}
+
+/**
+ * An AudioContext interface representing an audio-processing graph built from linked together AudioNodes. In contrast with a standard AudioContext, an OfflineAudioContext doesn't render the audio to the device hardware; instead, it generates it, as fast as it can, and outputs the result to an AudioBuffer.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext)
+ */
+interface OfflineAudioContext extends BaseAudioContext {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/complete_event) */
+ oncomplete: ((this: OfflineAudioContext, ev: OfflineAudioCompletionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/resume) */
+ resume(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/startRendering) */
+ startRendering(): Promise<AudioBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OfflineAudioContext/suspend) */
+ suspend(suspendTime: number): Promise<void>;
+ addEventListener<K extends keyof OfflineAudioContextEventMap>(type: K, listener: (this: OfflineAudioContext, ev: OfflineAudioContextEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof OfflineAudioContextEventMap>(type: K, listener: (this: OfflineAudioContext, ev: OfflineAudioContextEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var OfflineAudioContext: {
+ prototype: OfflineAudioContext;
+ new(contextOptions: OfflineAudioContextOptions): OfflineAudioContext;
+ new(numberOfChannels: number, length: number, sampleRate: number): OfflineAudioContext;
+};
+
+interface OffscreenCanvasEventMap {
+ "contextlost": Event;
+ "contextrestored": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas) */
+interface OffscreenCanvas extends EventTarget {
+ /**
+ * These attributes return the dimensions of the OffscreenCanvas object's bitmap.
+ *
+ * They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/height)
+ */
+ height: number;
+ oncontextlost: ((this: OffscreenCanvas, ev: Event) => any) | null;
+ oncontextrestored: ((this: OffscreenCanvas, ev: Event) => any) | null;
+ /**
+ * These attributes return the dimensions of the OffscreenCanvas object's bitmap.
+ *
+ * They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/width)
+ */
+ width: number;
+ /**
+ * Returns a promise that will fulfill with a new Blob object representing a file containing the image in the OffscreenCanvas object.
+ *
+ * The argument, if provided, is a dictionary that controls the encoding options of the image file to be created. The type field specifies the file format and has a default value of "image/png"; that type is also used if the requested type isn't supported. If the image format supports variable quality (such as "image/jpeg"), then the quality field is a number in the range 0.0 to 1.0 inclusive indicating the desired quality level for the resulting image.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/convertToBlob)
+ */
+ convertToBlob(options?: ImageEncodeOptions): Promise<Blob>;
+ /**
+ * Returns an object that exposes an API for drawing on the OffscreenCanvas object. contextId specifies the desired API: "2d", "bitmaprenderer", "webgl", or "webgl2". options is handled by that API.
+ *
+ * This specification defines the "2d" context below, which is similar but distinct from the "2d" context that is created from a canvas element. The WebGL specifications define the "webgl" and "webgl2" contexts. [WEBGL]
+ *
+ * Returns null if the canvas has already been initialized with another context type (e.g., trying to get a "2d" context after getting a "webgl" context).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/getContext)
+ */
+ getContext(contextId: "2d", options?: any): OffscreenCanvasRenderingContext2D | null;
+ getContext(contextId: "bitmaprenderer", options?: any): ImageBitmapRenderingContext | null;
+ getContext(contextId: "webgl", options?: any): WebGLRenderingContext | null;
+ getContext(contextId: "webgl2", options?: any): WebGL2RenderingContext | null;
+ getContext(contextId: OffscreenRenderingContextId, options?: any): OffscreenRenderingContext | null;
+ /**
+ * Returns a newly created ImageBitmap object with the image in the OffscreenCanvas object. The image in the OffscreenCanvas object is replaced with a new blank image.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/transferToImageBitmap)
+ */
+ transferToImageBitmap(): ImageBitmap;
+ addEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var OffscreenCanvas: {
+ prototype: OffscreenCanvas;
+ new(width: number, height: number): OffscreenCanvas;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvasRenderingContext2D) */
+interface OffscreenCanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPath, CanvasPathDrawingStyles, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform {
+ readonly canvas: OffscreenCanvas;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvasRenderingContext2D/commit) */
+ commit(): void;
+}
+
+declare var OffscreenCanvasRenderingContext2D: {
+ prototype: OffscreenCanvasRenderingContext2D;
+ new(): OffscreenCanvasRenderingContext2D;
+};
+
+/**
+ * The OscillatorNode interface represents a periodic waveform, such as a sine wave. It is an AudioScheduledSourceNode audio-processing module that causes a specified frequency of a given wave to be created—in effect, a constant tone.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode)
+ */
+interface OscillatorNode extends AudioScheduledSourceNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/detune) */
+ readonly detune: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/frequency) */
+ readonly frequency: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/type) */
+ type: OscillatorType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OscillatorNode/setPeriodicWave) */
+ setPeriodicWave(periodicWave: PeriodicWave): void;
+ addEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: OscillatorNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AudioScheduledSourceNodeEventMap>(type: K, listener: (this: OscillatorNode, ev: AudioScheduledSourceNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var OscillatorNode: {
+ prototype: OscillatorNode;
+ new(context: BaseAudioContext, options?: OscillatorOptions): OscillatorNode;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OverconstrainedError) */
+interface OverconstrainedError extends DOMException {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OverconstrainedError/constraint) */
+ readonly constraint: string;
+}
+
+declare var OverconstrainedError: {
+ prototype: OverconstrainedError;
+ new(constraint: string, message?: string): OverconstrainedError;
+};
+
+/**
+ * The PageTransitionEvent is fired when a document is being loaded or unloaded.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PageTransitionEvent)
+ */
+interface PageTransitionEvent extends Event {
+ /**
+ * For the pageshow event, returns false if the page is newly being loaded (and the load event will fire). Otherwise, returns true.
+ *
+ * For the pagehide event, returns false if the page is going away for the last time. Otherwise, returns true, meaning that (if nothing conspires to make the page unsalvageable) the page might be reused if the user navigates back to this page.
+ *
+ * Things that can cause the page to be unsalvageable include:
+ *
+ * The user agent decided to not keep the Document alive in a session history entry after unload
+ * Having iframes that are not salvageable
+ * Active WebSocket objects
+ * Aborting a Document
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PageTransitionEvent/persisted)
+ */
+ readonly persisted: boolean;
+}
+
+declare var PageTransitionEvent: {
+ prototype: PageTransitionEvent;
+ new(type: string, eventInitDict?: PageTransitionEventInit): PageTransitionEvent;
+};
+
+/**
+ * A PannerNode always has exactly one input and one output: the input can be mono or stereo but the output is always stereo (2 channels); you can't have panning effects without at least two audio channels!
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode)
+ */
+interface PannerNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/coneInnerAngle) */
+ coneInnerAngle: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/coneOuterAngle) */
+ coneOuterAngle: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/coneOuterGain) */
+ coneOuterGain: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/distanceModel) */
+ distanceModel: DistanceModelType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/maxDistance) */
+ maxDistance: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/orientationX) */
+ readonly orientationX: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/orientationY) */
+ readonly orientationY: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/orientationZ) */
+ readonly orientationZ: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/panningModel) */
+ panningModel: PanningModelType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/positionX) */
+ readonly positionX: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/positionY) */
+ readonly positionY: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/positionZ) */
+ readonly positionZ: AudioParam;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/refDistance) */
+ refDistance: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/rolloffFactor) */
+ rolloffFactor: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/setOrientation)
+ */
+ setOrientation(x: number, y: number, z: number): void;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PannerNode/setPosition)
+ */
+ setPosition(x: number, y: number, z: number): void;
+}
+
+declare var PannerNode: {
+ prototype: PannerNode;
+ new(context: BaseAudioContext, options?: PannerOptions): PannerNode;
+};
+
+interface ParentNode extends Node {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/childElementCount) */
+ readonly childElementCount: number;
+ /**
+ * Returns the child elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/children)
+ */
+ readonly children: HTMLCollection;
+ /**
+ * Returns the first child that is an element, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/firstElementChild)
+ */
+ readonly firstElementChild: Element | null;
+ /**
+ * Returns the last child that is an element, and null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/lastElementChild)
+ */
+ readonly lastElementChild: Element | null;
+ /**
+ * Inserts nodes after the last child of node, while replacing strings in nodes with equivalent Text nodes.
+ *
+ * Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/append)
+ */
+ append(...nodes: (Node | string)[]): void;
+ /**
+ * Inserts nodes before the first child of node, while replacing strings in nodes with equivalent Text nodes.
+ *
+ * Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/prepend)
+ */
+ prepend(...nodes: (Node | string)[]): void;
+ /**
+ * Returns the first element that is a descendant of node that matches selectors.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/querySelector)
+ */
+ querySelector<K extends keyof HTMLElementTagNameMap>(selectors: K): HTMLElementTagNameMap[K] | null;
+ querySelector<K extends keyof SVGElementTagNameMap>(selectors: K): SVGElementTagNameMap[K] | null;
+ querySelector<K extends keyof MathMLElementTagNameMap>(selectors: K): MathMLElementTagNameMap[K] | null;
+ /** @deprecated */
+ querySelector<K extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K): HTMLElementDeprecatedTagNameMap[K] | null;
+ querySelector<E extends Element = Element>(selectors: string): E | null;
+ /**
+ * Returns all element descendants of node that match selectors.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/querySelectorAll)
+ */
+ querySelectorAll<K extends keyof HTMLElementTagNameMap>(selectors: K): NodeListOf<HTMLElementTagNameMap[K]>;
+ querySelectorAll<K extends keyof SVGElementTagNameMap>(selectors: K): NodeListOf<SVGElementTagNameMap[K]>;
+ querySelectorAll<K extends keyof MathMLElementTagNameMap>(selectors: K): NodeListOf<MathMLElementTagNameMap[K]>;
+ /** @deprecated */
+ querySelectorAll<K extends keyof HTMLElementDeprecatedTagNameMap>(selectors: K): NodeListOf<HTMLElementDeprecatedTagNameMap[K]>;
+ querySelectorAll<E extends Element = Element>(selectors: string): NodeListOf<E>;
+ /**
+ * Replace all children of node with nodes, while replacing strings in nodes with equivalent Text nodes.
+ *
+ * Throws a "HierarchyRequestError" DOMException if the constraints of the node tree are violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/replaceChildren)
+ */
+ replaceChildren(...nodes: (Node | string)[]): void;
+}
+
+/**
+ * This Canvas 2D API interface is used to declare a path that can then be used on a CanvasRenderingContext2D object. The path methods of the CanvasRenderingContext2D interface are also present on this interface, which gives you the convenience of being able to retain and replay your path whenever desired.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Path2D)
+ */
+interface Path2D extends CanvasPath {
+ /**
+ * Adds to the path the path given by the argument.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Path2D/addPath)
+ */
+ addPath(path: Path2D, transform?: DOMMatrix2DInit): void;
+}
+
+declare var Path2D: {
+ prototype: Path2D;
+ new(path?: Path2D | string): Path2D;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentMethodChangeEvent)
+ */
+interface PaymentMethodChangeEvent extends PaymentRequestUpdateEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentMethodChangeEvent/methodDetails) */
+ readonly methodDetails: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentMethodChangeEvent/methodName) */
+ readonly methodName: string;
+}
+
+declare var PaymentMethodChangeEvent: {
+ prototype: PaymentMethodChangeEvent;
+ new(type: string, eventInitDict?: PaymentMethodChangeEventInit): PaymentMethodChangeEvent;
+};
+
+interface PaymentRequestEventMap {
+ "paymentmethodchange": Event;
+}
+
+/**
+ * This Payment Request API interface is the primary access point into the API, and lets web content and apps accept payments from the end user.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest)
+ */
+interface PaymentRequest extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/id) */
+ readonly id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/paymentmethodchange_event) */
+ onpaymentmethodchange: ((this: PaymentRequest, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/abort) */
+ abort(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/canMakePayment) */
+ canMakePayment(): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequest/show) */
+ show(detailsPromise?: PaymentDetailsUpdate | PromiseLike<PaymentDetailsUpdate>): Promise<PaymentResponse>;
+ addEventListener<K extends keyof PaymentRequestEventMap>(type: K, listener: (this: PaymentRequest, ev: PaymentRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof PaymentRequestEventMap>(type: K, listener: (this: PaymentRequest, ev: PaymentRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var PaymentRequest: {
+ prototype: PaymentRequest;
+ new(methodData: PaymentMethodData[], details: PaymentDetailsInit): PaymentRequest;
+};
+
+/**
+ * This Payment Request API interface enables a web page to update the details of a PaymentRequest in response to a user action.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequestUpdateEvent)
+ */
+interface PaymentRequestUpdateEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentRequestUpdateEvent/updateWith) */
+ updateWith(detailsPromise: PaymentDetailsUpdate | PromiseLike<PaymentDetailsUpdate>): void;
+}
+
+declare var PaymentRequestUpdateEvent: {
+ prototype: PaymentRequestUpdateEvent;
+ new(type: string, eventInitDict?: PaymentRequestUpdateEventInit): PaymentRequestUpdateEvent;
+};
+
+/**
+ * This Payment Request API interface is returned after a user selects a payment method and approves a payment request.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse)
+ */
+interface PaymentResponse extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/details) */
+ readonly details: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/methodName) */
+ readonly methodName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/requestId) */
+ readonly requestId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/complete) */
+ complete(result?: PaymentComplete): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/retry) */
+ retry(errorFields?: PaymentValidationErrors): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PaymentResponse/toJSON) */
+ toJSON(): any;
+}
+
+declare var PaymentResponse: {
+ prototype: PaymentResponse;
+ new(): PaymentResponse;
+};
+
+interface PerformanceEventMap {
+ "resourcetimingbufferfull": Event;
+}
+
+/**
+ * Provides access to performance-related information for the current page. It's part of the High Resolution Time API, but is enhanced by the Performance Timeline API, the Navigation Timing API, the User Timing API, and the Resource Timing API.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance)
+ */
+interface Performance extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/eventCounts) */
+ readonly eventCounts: EventCounts;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/navigation)
+ */
+ readonly navigation: PerformanceNavigation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/resourcetimingbufferfull_event) */
+ onresourcetimingbufferfull: ((this: Performance, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/timeOrigin) */
+ readonly timeOrigin: DOMHighResTimeStamp;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/timing)
+ */
+ readonly timing: PerformanceTiming;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearMarks) */
+ clearMarks(markName?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearMeasures) */
+ clearMeasures(measureName?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearResourceTimings) */
+ clearResourceTimings(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntries) */
+ getEntries(): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */
+ getEntriesByName(name: string, type?: string): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */
+ getEntriesByType(type: string): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/mark) */
+ mark(markName: string, markOptions?: PerformanceMarkOptions): PerformanceMark;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/measure) */
+ measure(measureName: string, startOrMeasureOptions?: string | PerformanceMeasureOptions, endMark?: string): PerformanceMeasure;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/now) */
+ now(): DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/setResourceTimingBufferSize) */
+ setResourceTimingBufferSize(maxSize: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/toJSON) */
+ toJSON(): any;
+ addEventListener<K extends keyof PerformanceEventMap>(type: K, listener: (this: Performance, ev: PerformanceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof PerformanceEventMap>(type: K, listener: (this: Performance, ev: PerformanceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Performance: {
+ prototype: Performance;
+ new(): Performance;
+};
+
+/**
+ * Encapsulates a single performance metric that is part of the performance timeline. A performance entry can be directly created by making a performance mark or measure (for example by calling the mark() method) at an explicit point in an application. Performance entries are also created in indirect ways such as loading a resource (such as an image).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry)
+ */
+interface PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/duration) */
+ readonly duration: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/entryType) */
+ readonly entryType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/startTime) */
+ readonly startTime: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceEntry: {
+ prototype: PerformanceEntry;
+ new(): PerformanceEntry;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming) */
+interface PerformanceEventTiming extends PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/cancelable) */
+ readonly cancelable: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/processingEnd) */
+ readonly processingEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/processingStart) */
+ readonly processingStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/target) */
+ readonly target: Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEventTiming/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceEventTiming: {
+ prototype: PerformanceEventTiming;
+ new(): PerformanceEventTiming;
+};
+
+/**
+ * PerformanceMark is an abstract interface for PerformanceEntry objects with an entryType of "mark". Entries of this type are created by calling performance.mark() to add a named DOMHighResTimeStamp (the mark) to the browser's performance timeline.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMark)
+ */
+interface PerformanceMark extends PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMark/detail) */
+ readonly detail: any;
+}
+
+declare var PerformanceMark: {
+ prototype: PerformanceMark;
+ new(markName: string, markOptions?: PerformanceMarkOptions): PerformanceMark;
+};
+
+/**
+ * PerformanceMeasure is an abstract interface for PerformanceEntry objects with an entryType of "measure". Entries of this type are created by calling performance.measure() to add a named DOMHighResTimeStamp (the measure) between two marks to the browser's performance timeline.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMeasure)
+ */
+interface PerformanceMeasure extends PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMeasure/detail) */
+ readonly detail: any;
+}
+
+declare var PerformanceMeasure: {
+ prototype: PerformanceMeasure;
+ new(): PerformanceMeasure;
+};
+
+/**
+ * The legacy PerformanceNavigation interface represents information about how the navigation to the current document was done.
+ * @deprecated This interface is deprecated in the Navigation Timing Level 2 specification. Please use the PerformanceNavigationTiming interface instead.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation)
+ */
+interface PerformanceNavigation {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation/redirectCount)
+ */
+ readonly redirectCount: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation/type)
+ */
+ readonly type: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigation/toJSON)
+ */
+ toJSON(): any;
+ readonly TYPE_NAVIGATE: 0;
+ readonly TYPE_RELOAD: 1;
+ readonly TYPE_BACK_FORWARD: 2;
+ readonly TYPE_RESERVED: 255;
+}
+
+/** @deprecated */
+declare var PerformanceNavigation: {
+ prototype: PerformanceNavigation;
+ new(): PerformanceNavigation;
+ readonly TYPE_NAVIGATE: 0;
+ readonly TYPE_RELOAD: 1;
+ readonly TYPE_BACK_FORWARD: 2;
+ readonly TYPE_RESERVED: 255;
+};
+
+/**
+ * Provides methods and properties to store and retrieve metrics regarding the browser's document navigation events. For example, this interface can be used to determine how much time it takes to load or unload a document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming)
+ */
+interface PerformanceNavigationTiming extends PerformanceResourceTiming {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domComplete) */
+ readonly domComplete: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domContentLoadedEventEnd) */
+ readonly domContentLoadedEventEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domContentLoadedEventStart) */
+ readonly domContentLoadedEventStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/domInteractive) */
+ readonly domInteractive: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/loadEventEnd) */
+ readonly loadEventEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/loadEventStart) */
+ readonly loadEventStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/redirectCount) */
+ readonly redirectCount: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/type) */
+ readonly type: NavigationTimingType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/unloadEventEnd) */
+ readonly unloadEventEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/unloadEventStart) */
+ readonly unloadEventStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceNavigationTiming/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceNavigationTiming: {
+ prototype: PerformanceNavigationTiming;
+ new(): PerformanceNavigationTiming;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver) */
+interface PerformanceObserver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/disconnect) */
+ disconnect(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/observe) */
+ observe(options?: PerformanceObserverInit): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/takeRecords) */
+ takeRecords(): PerformanceEntryList;
+}
+
+declare var PerformanceObserver: {
+ prototype: PerformanceObserver;
+ new(callback: PerformanceObserverCallback): PerformanceObserver;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/supportedEntryTypes_static) */
+ readonly supportedEntryTypes: ReadonlyArray<string>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList) */
+interface PerformanceObserverEntryList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntries) */
+ getEntries(): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */
+ getEntriesByName(name: string, type?: string): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */
+ getEntriesByType(type: string): PerformanceEntryList;
+}
+
+declare var PerformanceObserverEntryList: {
+ prototype: PerformanceObserverEntryList;
+ new(): PerformanceObserverEntryList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformancePaintTiming) */
+interface PerformancePaintTiming extends PerformanceEntry {
+}
+
+declare var PerformancePaintTiming: {
+ prototype: PerformancePaintTiming;
+ new(): PerformancePaintTiming;
+};
+
+/**
+ * Enables retrieval and analysis of detailed network timing data regarding the loading of an application's resources. An application can use the timing metrics to determine, for example, the length of time it takes to fetch a specific resource, such as an XMLHttpRequest, <SVG>, image, or script.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming)
+ */
+interface PerformanceResourceTiming extends PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/connectEnd) */
+ readonly connectEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/connectStart) */
+ readonly connectStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/decodedBodySize) */
+ readonly decodedBodySize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/domainLookupEnd) */
+ readonly domainLookupEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/domainLookupStart) */
+ readonly domainLookupStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/encodedBodySize) */
+ readonly encodedBodySize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/fetchStart) */
+ readonly fetchStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/initiatorType) */
+ readonly initiatorType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/nextHopProtocol) */
+ readonly nextHopProtocol: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/redirectEnd) */
+ readonly redirectEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/redirectStart) */
+ readonly redirectStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/requestStart) */
+ readonly requestStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/responseEnd) */
+ readonly responseEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/responseStart) */
+ readonly responseStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/secureConnectionStart) */
+ readonly secureConnectionStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/serverTiming) */
+ readonly serverTiming: ReadonlyArray<PerformanceServerTiming>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/transferSize) */
+ readonly transferSize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/workerStart) */
+ readonly workerStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceResourceTiming: {
+ prototype: PerformanceResourceTiming;
+ new(): PerformanceResourceTiming;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming) */
+interface PerformanceServerTiming {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/description) */
+ readonly description: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/duration) */
+ readonly duration: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceServerTiming: {
+ prototype: PerformanceServerTiming;
+ new(): PerformanceServerTiming;
+};
+
+/**
+ * A legacy interface kept for backwards compatibility and contains properties that offer performance timing information for various events which occur during the loading and use of the current page. You get a PerformanceTiming object describing your page using the window.performance.timing property.
+ * @deprecated This interface is deprecated in the Navigation Timing Level 2 specification. Please use the PerformanceNavigationTiming interface instead.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming)
+ */
+interface PerformanceTiming {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/connectEnd)
+ */
+ readonly connectEnd: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/connectStart)
+ */
+ readonly connectStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domComplete)
+ */
+ readonly domComplete: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domContentLoadedEventEnd)
+ */
+ readonly domContentLoadedEventEnd: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domContentLoadedEventStart)
+ */
+ readonly domContentLoadedEventStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domInteractive)
+ */
+ readonly domInteractive: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domLoading)
+ */
+ readonly domLoading: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domainLookupEnd)
+ */
+ readonly domainLookupEnd: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/domainLookupStart)
+ */
+ readonly domainLookupStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/fetchStart)
+ */
+ readonly fetchStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/loadEventEnd)
+ */
+ readonly loadEventEnd: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/loadEventStart)
+ */
+ readonly loadEventStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/navigationStart)
+ */
+ readonly navigationStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/redirectEnd)
+ */
+ readonly redirectEnd: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/redirectStart)
+ */
+ readonly redirectStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/requestStart)
+ */
+ readonly requestStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/responseEnd)
+ */
+ readonly responseEnd: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/responseStart)
+ */
+ readonly responseStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/secureConnectionStart)
+ */
+ readonly secureConnectionStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/unloadEventEnd)
+ */
+ readonly unloadEventEnd: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/unloadEventStart)
+ */
+ readonly unloadEventStart: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceTiming/toJSON)
+ */
+ toJSON(): any;
+}
+
+/** @deprecated */
+declare var PerformanceTiming: {
+ prototype: PerformanceTiming;
+ new(): PerformanceTiming;
+};
+
+/**
+ * PeriodicWave has no inputs or outputs; it is used to define custom oscillators when calling OscillatorNode.setPeriodicWave(). The PeriodicWave itself is created/returned by AudioContext.createPeriodicWave().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PeriodicWave)
+ */
+interface PeriodicWave {
+}
+
+declare var PeriodicWave: {
+ prototype: PeriodicWave;
+ new(context: BaseAudioContext, options?: PeriodicWaveOptions): PeriodicWave;
+};
+
+interface PermissionStatusEventMap {
+ "change": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus) */
+interface PermissionStatus extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/change_event) */
+ onchange: ((this: PermissionStatus, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/state) */
+ readonly state: PermissionState;
+ addEventListener<K extends keyof PermissionStatusEventMap>(type: K, listener: (this: PermissionStatus, ev: PermissionStatusEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof PermissionStatusEventMap>(type: K, listener: (this: PermissionStatus, ev: PermissionStatusEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var PermissionStatus: {
+ prototype: PermissionStatus;
+ new(): PermissionStatus;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Permissions) */
+interface Permissions {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Permissions/query) */
+ query(permissionDesc: PermissionDescriptor): Promise<PermissionStatus>;
+}
+
+declare var Permissions: {
+ prototype: Permissions;
+ new(): Permissions;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PictureInPictureEvent) */
+interface PictureInPictureEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PictureInPictureEvent/pictureInPictureWindow) */
+ readonly pictureInPictureWindow: PictureInPictureWindow;
+}
+
+declare var PictureInPictureEvent: {
+ prototype: PictureInPictureEvent;
+ new(type: string, eventInitDict: PictureInPictureEventInit): PictureInPictureEvent;
+};
+
+interface PictureInPictureWindowEventMap {
+ "resize": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PictureInPictureWindow) */
+interface PictureInPictureWindow extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PictureInPictureWindow/height) */
+ readonly height: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PictureInPictureWindow/resize_event) */
+ onresize: ((this: PictureInPictureWindow, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PictureInPictureWindow/width) */
+ readonly width: number;
+ addEventListener<K extends keyof PictureInPictureWindowEventMap>(type: K, listener: (this: PictureInPictureWindow, ev: PictureInPictureWindowEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof PictureInPictureWindowEventMap>(type: K, listener: (this: PictureInPictureWindow, ev: PictureInPictureWindowEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var PictureInPictureWindow: {
+ prototype: PictureInPictureWindow;
+ new(): PictureInPictureWindow;
+};
+
+/**
+ * Provides information about a browser plugin.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin)
+ */
+interface Plugin {
+ /**
+ * Returns the plugin's description.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/description)
+ */
+ readonly description: string;
+ /**
+ * Returns the plugin library's filename, if applicable on the current platform.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/filename)
+ */
+ readonly filename: string;
+ /**
+ * Returns the number of MIME types, represented by MimeType objects, supported by the plugin.
+ * @deprecated
+ */
+ readonly length: number;
+ /**
+ * Returns the plugin's name.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/name)
+ */
+ readonly name: string;
+ /**
+ * Returns the specified MimeType object.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/item)
+ */
+ item(index: number): MimeType | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Plugin/namedItem)
+ */
+ namedItem(name: string): MimeType | null;
+ [index: number]: MimeType;
+}
+
+/** @deprecated */
+declare var Plugin: {
+ prototype: Plugin;
+ new(): Plugin;
+};
+
+/**
+ * Used to store a list of Plugin objects describing the available plugins; it's returned by the window.navigator.plugins property. The PluginArray is not a JavaScript array, but has the length property and supports accessing individual items using bracket notation (plugins[2]), as well as via item(index) and namedItem("name") methods.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray)
+ */
+interface PluginArray {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/length)
+ */
+ readonly length: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/item)
+ */
+ item(index: number): Plugin | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/namedItem)
+ */
+ namedItem(name: string): Plugin | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PluginArray/refresh)
+ */
+ refresh(): void;
+ [index: number]: Plugin;
+}
+
+/** @deprecated */
+declare var PluginArray: {
+ prototype: PluginArray;
+ new(): PluginArray;
+};
+
+/**
+ * The state of a DOM event produced by a pointer such as the geometry of the contact point, the device type that generated the event, the amount of pressure that was applied on the contact surface, etc.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent)
+ */
+interface PointerEvent extends MouseEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/height) */
+ readonly height: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/isPrimary) */
+ readonly isPrimary: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/pointerId) */
+ readonly pointerId: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/pointerType) */
+ readonly pointerType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/pressure) */
+ readonly pressure: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/tangentialPressure) */
+ readonly tangentialPressure: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/tiltX) */
+ readonly tiltX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/tiltY) */
+ readonly tiltY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/twist) */
+ readonly twist: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/width) */
+ readonly width: number;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/getCoalescedEvents)
+ */
+ getCoalescedEvents(): PointerEvent[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PointerEvent/getPredictedEvents) */
+ getPredictedEvents(): PointerEvent[];
+}
+
+declare var PointerEvent: {
+ prototype: PointerEvent;
+ new(type: string, eventInitDict?: PointerEventInit): PointerEvent;
+};
+
+/**
+ * PopStateEvent is an event handler for the popstate event on the window.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PopStateEvent)
+ */
+interface PopStateEvent extends Event {
+ /**
+ * Returns a copy of the information that was provided to pushState() or replaceState().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PopStateEvent/state)
+ */
+ readonly state: any;
+}
+
+declare var PopStateEvent: {
+ prototype: PopStateEvent;
+ new(type: string, eventInitDict?: PopStateEventInit): PopStateEvent;
+};
+
+interface PopoverInvokerElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetAction) */
+ popoverTargetAction: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLButtonElement/popoverTargetElement) */
+ popoverTargetElement: Element | null;
+}
+
+/**
+ * A processing instruction embeds application-specific instructions in XML which can be ignored by other applications that don't recognize them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProcessingInstruction)
+ */
+interface ProcessingInstruction extends CharacterData, LinkStyle {
+ readonly ownerDocument: Document;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProcessingInstruction/target) */
+ readonly target: string;
+}
+
+declare var ProcessingInstruction: {
+ prototype: ProcessingInstruction;
+ new(): ProcessingInstruction;
+};
+
+/**
+ * Events measuring progress of an underlying process, like an HTTP request (for an XMLHttpRequest, or the loading of the underlying resource of an <img>, <audio>, <video>, <style> or <link>).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent)
+ */
+interface ProgressEvent<T extends EventTarget = EventTarget> extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/lengthComputable) */
+ readonly lengthComputable: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/loaded) */
+ readonly loaded: number;
+ readonly target: T | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/total) */
+ readonly total: number;
+}
+
+declare var ProgressEvent: {
+ prototype: ProgressEvent;
+ new(type: string, eventInitDict?: ProgressEventInit): ProgressEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent) */
+interface PromiseRejectionEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/promise) */
+ readonly promise: Promise<any>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/reason) */
+ readonly reason: any;
+}
+
+declare var PromiseRejectionEvent: {
+ prototype: PromiseRejectionEvent;
+ new(type: string, eventInitDict: PromiseRejectionEventInit): PromiseRejectionEvent;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential)
+ */
+interface PublicKeyCredential extends Credential {
+ readonly authenticatorAttachment: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/rawId) */
+ readonly rawId: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/response) */
+ readonly response: AuthenticatorResponse;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/getClientExtensionResults) */
+ getClientExtensionResults(): AuthenticationExtensionsClientOutputs;
+}
+
+declare var PublicKeyCredential: {
+ prototype: PublicKeyCredential;
+ new(): PublicKeyCredential;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/isConditionalMediationAvailable) */
+ isConditionalMediationAvailable(): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PublicKeyCredential/isUserVerifyingPlatformAuthenticatorAvailable_static) */
+ isUserVerifyingPlatformAuthenticatorAvailable(): Promise<boolean>;
+};
+
+/**
+ * This Push API interface provides a way to receive notifications from third-party servers as well as request URLs for push notifications.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager)
+ */
+interface PushManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/getSubscription) */
+ getSubscription(): Promise<PushSubscription | null>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/permissionState) */
+ permissionState(options?: PushSubscriptionOptionsInit): Promise<PermissionState>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/subscribe) */
+ subscribe(options?: PushSubscriptionOptionsInit): Promise<PushSubscription>;
+}
+
+declare var PushManager: {
+ prototype: PushManager;
+ new(): PushManager;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings_static) */
+ readonly supportedContentEncodings: ReadonlyArray<string>;
+};
+
+/**
+ * This Push API interface provides a subcription's URL endpoint and allows unsubscription from a push service.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription)
+ */
+interface PushSubscription {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/endpoint) */
+ readonly endpoint: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/expirationTime) */
+ readonly expirationTime: EpochTimeStamp | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/options) */
+ readonly options: PushSubscriptionOptions;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/getKey) */
+ getKey(name: PushEncryptionKeyName): ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/toJSON) */
+ toJSON(): PushSubscriptionJSON;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/unsubscribe) */
+ unsubscribe(): Promise<boolean>;
+}
+
+declare var PushSubscription: {
+ prototype: PushSubscription;
+ new(): PushSubscription;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions)
+ */
+interface PushSubscriptionOptions {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions/applicationServerKey) */
+ readonly applicationServerKey: ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions/userVisibleOnly) */
+ readonly userVisibleOnly: boolean;
+}
+
+declare var PushSubscriptionOptions: {
+ prototype: PushSubscriptionOptions;
+ new(): PushSubscriptionOptions;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCCertificate) */
+interface RTCCertificate {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCCertificate/expires) */
+ readonly expires: EpochTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCCertificate/getFingerprints) */
+ getFingerprints(): RTCDtlsFingerprint[];
+}
+
+declare var RTCCertificate: {
+ prototype: RTCCertificate;
+ new(): RTCCertificate;
+};
+
+interface RTCDTMFSenderEventMap {
+ "tonechange": RTCDTMFToneChangeEvent;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender) */
+interface RTCDTMFSender extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender/canInsertDTMF) */
+ readonly canInsertDTMF: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender/tonechange_event) */
+ ontonechange: ((this: RTCDTMFSender, ev: RTCDTMFToneChangeEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender/toneBuffer) */
+ readonly toneBuffer: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFSender/insertDTMF) */
+ insertDTMF(tones: string, duration?: number, interToneGap?: number): void;
+ addEventListener<K extends keyof RTCDTMFSenderEventMap>(type: K, listener: (this: RTCDTMFSender, ev: RTCDTMFSenderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof RTCDTMFSenderEventMap>(type: K, listener: (this: RTCDTMFSender, ev: RTCDTMFSenderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var RTCDTMFSender: {
+ prototype: RTCDTMFSender;
+ new(): RTCDTMFSender;
+};
+
+/**
+ * Events sent to indicate that DTMF tones have started or finished playing. This interface is used by the tonechange event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFToneChangeEvent)
+ */
+interface RTCDTMFToneChangeEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDTMFToneChangeEvent/tone) */
+ readonly tone: string;
+}
+
+declare var RTCDTMFToneChangeEvent: {
+ prototype: RTCDTMFToneChangeEvent;
+ new(type: string, eventInitDict?: RTCDTMFToneChangeEventInit): RTCDTMFToneChangeEvent;
+};
+
+interface RTCDataChannelEventMap {
+ "bufferedamountlow": Event;
+ "close": Event;
+ "closing": Event;
+ "error": Event;
+ "message": MessageEvent;
+ "open": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel) */
+interface RTCDataChannel extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/binaryType) */
+ binaryType: BinaryType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedAmount) */
+ readonly bufferedAmount: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedAmountLowThreshold) */
+ bufferedAmountLowThreshold: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/id) */
+ readonly id: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/label) */
+ readonly label: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxPacketLifeTime) */
+ readonly maxPacketLifeTime: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/maxRetransmits) */
+ readonly maxRetransmits: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/negotiated) */
+ readonly negotiated: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/bufferedamountlow_event) */
+ onbufferedamountlow: ((this: RTCDataChannel, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/close_event) */
+ onclose: ((this: RTCDataChannel, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/closing_event) */
+ onclosing: ((this: RTCDataChannel, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/error_event) */
+ onerror: ((this: RTCDataChannel, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/message_event) */
+ onmessage: ((this: RTCDataChannel, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/open_event) */
+ onopen: ((this: RTCDataChannel, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/ordered) */
+ readonly ordered: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/protocol) */
+ readonly protocol: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/readyState) */
+ readonly readyState: RTCDataChannelState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannel/send) */
+ send(data: string): void;
+ send(data: Blob): void;
+ send(data: ArrayBuffer): void;
+ send(data: ArrayBufferView): void;
+ addEventListener<K extends keyof RTCDataChannelEventMap>(type: K, listener: (this: RTCDataChannel, ev: RTCDataChannelEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof RTCDataChannelEventMap>(type: K, listener: (this: RTCDataChannel, ev: RTCDataChannelEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var RTCDataChannel: {
+ prototype: RTCDataChannel;
+ new(): RTCDataChannel;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannelEvent) */
+interface RTCDataChannelEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDataChannelEvent/channel) */
+ readonly channel: RTCDataChannel;
+}
+
+declare var RTCDataChannelEvent: {
+ prototype: RTCDataChannelEvent;
+ new(type: string, eventInitDict: RTCDataChannelEventInit): RTCDataChannelEvent;
+};
+
+interface RTCDtlsTransportEventMap {
+ "error": Event;
+ "statechange": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport) */
+interface RTCDtlsTransport extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport/iceTransport) */
+ readonly iceTransport: RTCIceTransport;
+ onerror: ((this: RTCDtlsTransport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport/statechange_event) */
+ onstatechange: ((this: RTCDtlsTransport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport/state) */
+ readonly state: RTCDtlsTransportState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCDtlsTransport/getRemoteCertificates) */
+ getRemoteCertificates(): ArrayBuffer[];
+ addEventListener<K extends keyof RTCDtlsTransportEventMap>(type: K, listener: (this: RTCDtlsTransport, ev: RTCDtlsTransportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof RTCDtlsTransportEventMap>(type: K, listener: (this: RTCDtlsTransport, ev: RTCDtlsTransportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var RTCDtlsTransport: {
+ prototype: RTCDtlsTransport;
+ new(): RTCDtlsTransport;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame) */
+interface RTCEncodedAudioFrame {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/data) */
+ data: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/getMetadata) */
+ getMetadata(): RTCEncodedAudioFrameMetadata;
+}
+
+declare var RTCEncodedAudioFrame: {
+ prototype: RTCEncodedAudioFrame;
+ new(): RTCEncodedAudioFrame;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame) */
+interface RTCEncodedVideoFrame {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/data) */
+ data: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/type) */
+ readonly type: RTCEncodedVideoFrameType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/getMetadata) */
+ getMetadata(): RTCEncodedVideoFrameMetadata;
+}
+
+declare var RTCEncodedVideoFrame: {
+ prototype: RTCEncodedVideoFrame;
+ new(): RTCEncodedVideoFrame;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCError) */
+interface RTCError extends DOMException {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCError/errorDetail) */
+ readonly errorDetail: RTCErrorDetailType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCError/receivedAlert) */
+ readonly receivedAlert: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCError/sctpCauseCode) */
+ readonly sctpCauseCode: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCError/sdpLineNumber) */
+ readonly sdpLineNumber: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCError/sentAlert) */
+ readonly sentAlert: number | null;
+}
+
+declare var RTCError: {
+ prototype: RTCError;
+ new(init: RTCErrorInit, message?: string): RTCError;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCErrorEvent) */
+interface RTCErrorEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCErrorEvent/error) */
+ readonly error: RTCError;
+}
+
+declare var RTCErrorEvent: {
+ prototype: RTCErrorEvent;
+ new(type: string, eventInitDict: RTCErrorEventInit): RTCErrorEvent;
+};
+
+/**
+ * The RTCIceCandidate interface—part of the WebRTC API—represents a candidate Internet Connectivity Establishment (ICE) configuration which may be used to establish an RTCPeerConnection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate)
+ */
+interface RTCIceCandidate {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/address) */
+ readonly address: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/candidate) */
+ readonly candidate: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/component) */
+ readonly component: RTCIceComponent | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/foundation) */
+ readonly foundation: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/port) */
+ readonly port: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/priority) */
+ readonly priority: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/protocol) */
+ readonly protocol: RTCIceProtocol | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/relatedAddress) */
+ readonly relatedAddress: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/relatedPort) */
+ readonly relatedPort: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMLineIndex) */
+ readonly sdpMLineIndex: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/sdpMid) */
+ readonly sdpMid: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/tcpType) */
+ readonly tcpType: RTCIceTcpCandidateType | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/type) */
+ readonly type: RTCIceCandidateType | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/usernameFragment) */
+ readonly usernameFragment: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceCandidate/toJSON) */
+ toJSON(): RTCIceCandidateInit;
+}
+
+declare var RTCIceCandidate: {
+ prototype: RTCIceCandidate;
+ new(candidateInitDict?: RTCIceCandidateInit): RTCIceCandidate;
+};
+
+interface RTCIceTransportEventMap {
+ "gatheringstatechange": Event;
+ "selectedcandidatepairchange": Event;
+ "statechange": Event;
+}
+
+/**
+ * Provides access to information about the ICE transport layer over which the data is being sent and received.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceTransport)
+ */
+interface RTCIceTransport extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceTransport/gatheringState) */
+ readonly gatheringState: RTCIceGathererState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceTransport/gatheringstatechange_event) */
+ ongatheringstatechange: ((this: RTCIceTransport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceTransport/selectedcandidatepairchange_event) */
+ onselectedcandidatepairchange: ((this: RTCIceTransport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceTransport/statechange_event) */
+ onstatechange: ((this: RTCIceTransport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceTransport/state) */
+ readonly state: RTCIceTransportState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCIceTransport/getSelectedCandidatePair) */
+ getSelectedCandidatePair(): RTCIceCandidatePair | null;
+ addEventListener<K extends keyof RTCIceTransportEventMap>(type: K, listener: (this: RTCIceTransport, ev: RTCIceTransportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof RTCIceTransportEventMap>(type: K, listener: (this: RTCIceTransport, ev: RTCIceTransportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var RTCIceTransport: {
+ prototype: RTCIceTransport;
+ new(): RTCIceTransport;
+};
+
+interface RTCPeerConnectionEventMap {
+ "connectionstatechange": Event;
+ "datachannel": RTCDataChannelEvent;
+ "icecandidate": RTCPeerConnectionIceEvent;
+ "icecandidateerror": RTCPeerConnectionIceErrorEvent;
+ "iceconnectionstatechange": Event;
+ "icegatheringstatechange": Event;
+ "negotiationneeded": Event;
+ "signalingstatechange": Event;
+ "track": RTCTrackEvent;
+}
+
+/**
+ * A WebRTC connection between the local computer and a remote peer. It provides methods to connect to a remote peer, maintain and monitor the connection, and close the connection once it's no longer needed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection)
+ */
+interface RTCPeerConnection extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/canTrickleIceCandidates) */
+ readonly canTrickleIceCandidates: boolean | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/connectionState) */
+ readonly connectionState: RTCPeerConnectionState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/currentLocalDescription) */
+ readonly currentLocalDescription: RTCSessionDescription | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/currentRemoteDescription) */
+ readonly currentRemoteDescription: RTCSessionDescription | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/iceConnectionState) */
+ readonly iceConnectionState: RTCIceConnectionState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/iceGatheringState) */
+ readonly iceGatheringState: RTCIceGatheringState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/localDescription) */
+ readonly localDescription: RTCSessionDescription | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/connectionstatechange_event) */
+ onconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/datachannel_event) */
+ ondatachannel: ((this: RTCPeerConnection, ev: RTCDataChannelEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/icecandidate_event) */
+ onicecandidate: ((this: RTCPeerConnection, ev: RTCPeerConnectionIceEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/icecandidateerror_event) */
+ onicecandidateerror: ((this: RTCPeerConnection, ev: RTCPeerConnectionIceErrorEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/iceconnectionstatechange_event) */
+ oniceconnectionstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/icegatheringstatechange_event) */
+ onicegatheringstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/negotiationneeded_event) */
+ onnegotiationneeded: ((this: RTCPeerConnection, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/signalingstatechange_event) */
+ onsignalingstatechange: ((this: RTCPeerConnection, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/track_event) */
+ ontrack: ((this: RTCPeerConnection, ev: RTCTrackEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/pendingLocalDescription) */
+ readonly pendingLocalDescription: RTCSessionDescription | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/pendingRemoteDescription) */
+ readonly pendingRemoteDescription: RTCSessionDescription | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/remoteDescription) */
+ readonly remoteDescription: RTCSessionDescription | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/sctp) */
+ readonly sctp: RTCSctpTransport | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/signalingState) */
+ readonly signalingState: RTCSignalingState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addIceCandidate) */
+ addIceCandidate(candidate?: RTCIceCandidateInit): Promise<void>;
+ /** @deprecated */
+ addIceCandidate(candidate: RTCIceCandidateInit, successCallback: VoidFunction, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addTrack) */
+ addTrack(track: MediaStreamTrack, ...streams: MediaStream[]): RTCRtpSender;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/addTransceiver) */
+ addTransceiver(trackOrKind: MediaStreamTrack | string, init?: RTCRtpTransceiverInit): RTCRtpTransceiver;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/createAnswer) */
+ createAnswer(options?: RTCAnswerOptions): Promise<RTCSessionDescriptionInit>;
+ /** @deprecated */
+ createAnswer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/createDataChannel) */
+ createDataChannel(label: string, dataChannelDict?: RTCDataChannelInit): RTCDataChannel;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/createOffer) */
+ createOffer(options?: RTCOfferOptions): Promise<RTCSessionDescriptionInit>;
+ /** @deprecated */
+ createOffer(successCallback: RTCSessionDescriptionCallback, failureCallback: RTCPeerConnectionErrorCallback, options?: RTCOfferOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getConfiguration) */
+ getConfiguration(): RTCConfiguration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getReceivers) */
+ getReceivers(): RTCRtpReceiver[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getSenders) */
+ getSenders(): RTCRtpSender[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getStats) */
+ getStats(selector?: MediaStreamTrack | null): Promise<RTCStatsReport>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/getTransceivers) */
+ getTransceivers(): RTCRtpTransceiver[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/removeTrack) */
+ removeTrack(sender: RTCRtpSender): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/restartIce) */
+ restartIce(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/setConfiguration) */
+ setConfiguration(configuration?: RTCConfiguration): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/setLocalDescription) */
+ setLocalDescription(description?: RTCLocalSessionDescriptionInit): Promise<void>;
+ /** @deprecated */
+ setLocalDescription(description: RTCLocalSessionDescriptionInit, successCallback: VoidFunction, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/setRemoteDescription) */
+ setRemoteDescription(description: RTCSessionDescriptionInit): Promise<void>;
+ /** @deprecated */
+ setRemoteDescription(description: RTCSessionDescriptionInit, successCallback: VoidFunction, failureCallback: RTCPeerConnectionErrorCallback): Promise<void>;
+ addEventListener<K extends keyof RTCPeerConnectionEventMap>(type: K, listener: (this: RTCPeerConnection, ev: RTCPeerConnectionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof RTCPeerConnectionEventMap>(type: K, listener: (this: RTCPeerConnection, ev: RTCPeerConnectionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var RTCPeerConnection: {
+ prototype: RTCPeerConnection;
+ new(configuration?: RTCConfiguration): RTCPeerConnection;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnection/generateCertificate_static) */
+ generateCertificate(keygenAlgorithm: AlgorithmIdentifier): Promise<RTCCertificate>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceErrorEvent) */
+interface RTCPeerConnectionIceErrorEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceErrorEvent/address) */
+ readonly address: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceErrorEvent/errorCode) */
+ readonly errorCode: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceErrorEvent/errorText) */
+ readonly errorText: string;
+ readonly port: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceErrorEvent/url) */
+ readonly url: string;
+}
+
+declare var RTCPeerConnectionIceErrorEvent: {
+ prototype: RTCPeerConnectionIceErrorEvent;
+ new(type: string, eventInitDict: RTCPeerConnectionIceErrorEventInit): RTCPeerConnectionIceErrorEvent;
+};
+
+/**
+ * Events that occurs in relation to ICE candidates with the target, usually an RTCPeerConnection. Only one event is of this type: icecandidate.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceEvent)
+ */
+interface RTCPeerConnectionIceEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCPeerConnectionIceEvent/candidate) */
+ readonly candidate: RTCIceCandidate | null;
+}
+
+declare var RTCPeerConnectionIceEvent: {
+ prototype: RTCPeerConnectionIceEvent;
+ new(type: string, eventInitDict?: RTCPeerConnectionIceEventInit): RTCPeerConnectionIceEvent;
+};
+
+/**
+ * This WebRTC API interface manages the reception and decoding of data for a MediaStreamTrack on an RTCPeerConnection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver)
+ */
+interface RTCRtpReceiver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/track) */
+ readonly track: MediaStreamTrack;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/transform) */
+ transform: RTCRtpTransform | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/transport) */
+ readonly transport: RTCDtlsTransport | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getContributingSources) */
+ getContributingSources(): RTCRtpContributingSource[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getParameters) */
+ getParameters(): RTCRtpReceiveParameters;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getStats) */
+ getStats(): Promise<RTCStatsReport>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getSynchronizationSources) */
+ getSynchronizationSources(): RTCRtpSynchronizationSource[];
+}
+
+declare var RTCRtpReceiver: {
+ prototype: RTCRtpReceiver;
+ new(): RTCRtpReceiver;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpReceiver/getCapabilities_static) */
+ getCapabilities(kind: string): RTCRtpCapabilities | null;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransform) */
+interface RTCRtpScriptTransform {
+}
+
+declare var RTCRtpScriptTransform: {
+ prototype: RTCRtpScriptTransform;
+ new(worker: Worker, options?: any, transfer?: any[]): RTCRtpScriptTransform;
+};
+
+/**
+ * Provides the ability to control and obtain details about how a particular MediaStreamTrack is encoded and sent to a remote peer.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender)
+ */
+interface RTCRtpSender {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/dtmf) */
+ readonly dtmf: RTCDTMFSender | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/track) */
+ readonly track: MediaStreamTrack | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transform) */
+ transform: RTCRtpTransform | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/transport) */
+ readonly transport: RTCDtlsTransport | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getParameters) */
+ getParameters(): RTCRtpSendParameters;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getStats) */
+ getStats(): Promise<RTCStatsReport>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/replaceTrack) */
+ replaceTrack(withTrack: MediaStreamTrack | null): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/setParameters) */
+ setParameters(parameters: RTCRtpSendParameters, setParameterOptions?: RTCSetParameterOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/setStreams) */
+ setStreams(...streams: MediaStream[]): void;
+}
+
+declare var RTCRtpSender: {
+ prototype: RTCRtpSender;
+ new(): RTCRtpSender;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpSender/getCapabilities_static) */
+ getCapabilities(kind: string): RTCRtpCapabilities | null;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver) */
+interface RTCRtpTransceiver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/currentDirection) */
+ readonly currentDirection: RTCRtpTransceiverDirection | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/direction) */
+ direction: RTCRtpTransceiverDirection;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/mid) */
+ readonly mid: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/receiver) */
+ readonly receiver: RTCRtpReceiver;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/sender) */
+ readonly sender: RTCRtpSender;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/setCodecPreferences) */
+ setCodecPreferences(codecs: RTCRtpCodecCapability[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/stop) */
+ stop(): void;
+}
+
+declare var RTCRtpTransceiver: {
+ prototype: RTCRtpTransceiver;
+ new(): RTCRtpTransceiver;
+};
+
+interface RTCSctpTransportEventMap {
+ "statechange": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport) */
+interface RTCSctpTransport extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/maxChannels) */
+ readonly maxChannels: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/maxMessageSize) */
+ readonly maxMessageSize: number;
+ onstatechange: ((this: RTCSctpTransport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/state) */
+ readonly state: RTCSctpTransportState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSctpTransport/transport) */
+ readonly transport: RTCDtlsTransport;
+ addEventListener<K extends keyof RTCSctpTransportEventMap>(type: K, listener: (this: RTCSctpTransport, ev: RTCSctpTransportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof RTCSctpTransportEventMap>(type: K, listener: (this: RTCSctpTransport, ev: RTCSctpTransportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var RTCSctpTransport: {
+ prototype: RTCSctpTransport;
+ new(): RTCSctpTransport;
+};
+
+/**
+ * One end of a connection—or potential connection—and how it's configured. Each RTCSessionDescription consists of a description type indicating which part of the offer/answer negotiation process it describes and of the SDP descriptor of the session.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription)
+ */
+interface RTCSessionDescription {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription/sdp) */
+ readonly sdp: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription/type) */
+ readonly type: RTCSdpType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCSessionDescription/toJSON) */
+ toJSON(): any;
+}
+
+declare var RTCSessionDescription: {
+ prototype: RTCSessionDescription;
+ new(descriptionInitDict: RTCSessionDescriptionInit): RTCSessionDescription;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCStatsReport) */
+interface RTCStatsReport {
+ forEach(callbackfn: (value: any, key: string, parent: RTCStatsReport) => void, thisArg?: any): void;
+}
+
+declare var RTCStatsReport: {
+ prototype: RTCStatsReport;
+ new(): RTCStatsReport;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent) */
+interface RTCTrackEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/receiver) */
+ readonly receiver: RTCRtpReceiver;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/streams) */
+ readonly streams: ReadonlyArray<MediaStream>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/track) */
+ readonly track: MediaStreamTrack;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTrackEvent/transceiver) */
+ readonly transceiver: RTCRtpTransceiver;
+}
+
+declare var RTCTrackEvent: {
+ prototype: RTCTrackEvent;
+ new(type: string, eventInitDict: RTCTrackEventInit): RTCTrackEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RadioNodeList) */
+interface RadioNodeList extends NodeList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RadioNodeList/value) */
+ value: string;
+}
+
+declare var RadioNodeList: {
+ prototype: RadioNodeList;
+ new(): RadioNodeList;
+};
+
+/**
+ * A fragment of a document that can contain nodes and parts of text nodes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range)
+ */
+interface Range extends AbstractRange {
+ /**
+ * Returns the node, furthest away from the document, that is an ancestor of both range's start node and end node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/commonAncestorContainer)
+ */
+ readonly commonAncestorContainer: Node;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/cloneContents) */
+ cloneContents(): DocumentFragment;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/cloneRange) */
+ cloneRange(): Range;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/collapse) */
+ collapse(toStart?: boolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/compareBoundaryPoints) */
+ compareBoundaryPoints(how: number, sourceRange: Range): number;
+ /**
+ * Returns −1 if the point is before the range, 0 if the point is in the range, and 1 if the point is after the range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/comparePoint)
+ */
+ comparePoint(node: Node, offset: number): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/createContextualFragment) */
+ createContextualFragment(fragment: string): DocumentFragment;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/deleteContents) */
+ deleteContents(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/detach) */
+ detach(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/extractContents) */
+ extractContents(): DocumentFragment;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/getBoundingClientRect) */
+ getBoundingClientRect(): DOMRect;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/getClientRects) */
+ getClientRects(): DOMRectList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/insertNode) */
+ insertNode(node: Node): void;
+ /**
+ * Returns whether range intersects node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/intersectsNode)
+ */
+ intersectsNode(node: Node): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/isPointInRange) */
+ isPointInRange(node: Node, offset: number): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/selectNode) */
+ selectNode(node: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/selectNodeContents) */
+ selectNodeContents(node: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setEnd) */
+ setEnd(node: Node, offset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setEndAfter) */
+ setEndAfter(node: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setEndBefore) */
+ setEndBefore(node: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setStart) */
+ setStart(node: Node, offset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setStartAfter) */
+ setStartAfter(node: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/setStartBefore) */
+ setStartBefore(node: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Range/surroundContents) */
+ surroundContents(newParent: Node): void;
+ toString(): string;
+ readonly START_TO_START: 0;
+ readonly START_TO_END: 1;
+ readonly END_TO_END: 2;
+ readonly END_TO_START: 3;
+}
+
+declare var Range: {
+ prototype: Range;
+ new(): Range;
+ readonly START_TO_START: 0;
+ readonly START_TO_END: 1;
+ readonly END_TO_END: 2;
+ readonly END_TO_START: 3;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController) */
+interface ReadableByteStreamController {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/byobRequest) */
+ readonly byobRequest: ReadableStreamBYOBRequest | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/enqueue) */
+ enqueue(chunk: ArrayBufferView): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/error) */
+ error(e?: any): void;
+}
+
+declare var ReadableByteStreamController: {
+ prototype: ReadableByteStreamController;
+ new(): ReadableByteStreamController;
+};
+
+/**
+ * This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream)
+ */
+interface ReadableStream<R = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/locked) */
+ readonly locked: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/cancel) */
+ cancel(reason?: any): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader) */
+ getReader(options: { mode: "byob" }): ReadableStreamBYOBReader;
+ getReader(): ReadableStreamDefaultReader<R>;
+ getReader(options?: ReadableStreamGetReaderOptions): ReadableStreamReader<R>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeThrough) */
+ pipeThrough<T>(transform: ReadableWritablePair<T, R>, options?: StreamPipeOptions): ReadableStream<T>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeTo) */
+ pipeTo(destination: WritableStream<R>, options?: StreamPipeOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/tee) */
+ tee(): [ReadableStream<R>, ReadableStream<R>];
+}
+
+declare var ReadableStream: {
+ prototype: ReadableStream;
+ new(underlyingSource: UnderlyingByteSource, strategy?: { highWaterMark?: number }): ReadableStream<Uint8Array>;
+ new<R = any>(underlyingSource: UnderlyingDefaultSource<R>, strategy?: QueuingStrategy<R>): ReadableStream<R>;
+ new<R = any>(underlyingSource?: UnderlyingSource<R>, strategy?: QueuingStrategy<R>): ReadableStream<R>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader) */
+interface ReadableStreamBYOBReader extends ReadableStreamGenericReader {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/read) */
+ read<T extends ArrayBufferView>(view: T): Promise<ReadableStreamReadResult<T>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/releaseLock) */
+ releaseLock(): void;
+}
+
+declare var ReadableStreamBYOBReader: {
+ prototype: ReadableStreamBYOBReader;
+ new(stream: ReadableStream): ReadableStreamBYOBReader;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest) */
+interface ReadableStreamBYOBRequest {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/view) */
+ readonly view: ArrayBufferView | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respond) */
+ respond(bytesWritten: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respondWithNewView) */
+ respondWithNewView(view: ArrayBufferView): void;
+}
+
+declare var ReadableStreamBYOBRequest: {
+ prototype: ReadableStreamBYOBRequest;
+ new(): ReadableStreamBYOBRequest;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController) */
+interface ReadableStreamDefaultController<R = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/enqueue) */
+ enqueue(chunk?: R): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/error) */
+ error(e?: any): void;
+}
+
+declare var ReadableStreamDefaultController: {
+ prototype: ReadableStreamDefaultController;
+ new(): ReadableStreamDefaultController;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader) */
+interface ReadableStreamDefaultReader<R = any> extends ReadableStreamGenericReader {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/read) */
+ read(): Promise<ReadableStreamReadResult<R>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/releaseLock) */
+ releaseLock(): void;
+}
+
+declare var ReadableStreamDefaultReader: {
+ prototype: ReadableStreamDefaultReader;
+ new<R = any>(stream: ReadableStream<R>): ReadableStreamDefaultReader<R>;
+};
+
+interface ReadableStreamGenericReader {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/closed) */
+ readonly closed: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/cancel) */
+ cancel(reason?: any): Promise<void>;
+}
+
+interface RemotePlaybackEventMap {
+ "connect": Event;
+ "connecting": Event;
+ "disconnect": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback) */
+interface RemotePlayback extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback/connect_event) */
+ onconnect: ((this: RemotePlayback, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback/connecting_event) */
+ onconnecting: ((this: RemotePlayback, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback/disconnect_event) */
+ ondisconnect: ((this: RemotePlayback, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback/state) */
+ readonly state: RemotePlaybackState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback/cancelWatchAvailability) */
+ cancelWatchAvailability(id?: number): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback/prompt) */
+ prompt(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RemotePlayback/watchAvailability) */
+ watchAvailability(callback: RemotePlaybackAvailabilityCallback): Promise<number>;
+ addEventListener<K extends keyof RemotePlaybackEventMap>(type: K, listener: (this: RemotePlayback, ev: RemotePlaybackEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof RemotePlaybackEventMap>(type: K, listener: (this: RemotePlayback, ev: RemotePlaybackEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var RemotePlayback: {
+ prototype: RemotePlayback;
+ new(): RemotePlayback;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report) */
+interface Report {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/body) */
+ readonly body: ReportBody | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/type) */
+ readonly type: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/url) */
+ readonly url: string;
+ toJSON(): any;
+}
+
+declare var Report: {
+ prototype: Report;
+ new(): Report;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportBody) */
+interface ReportBody {
+ toJSON(): any;
+}
+
+declare var ReportBody: {
+ prototype: ReportBody;
+ new(): ReportBody;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver) */
+interface ReportingObserver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/disconnect) */
+ disconnect(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/observe) */
+ observe(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/takeRecords) */
+ takeRecords(): ReportList;
+}
+
+declare var ReportingObserver: {
+ prototype: ReportingObserver;
+ new(callback: ReportingObserverCallback, options?: ReportingObserverOptions): ReportingObserver;
+};
+
+/**
+ * This Fetch API interface represents a resource request.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request)
+ */
+interface Request extends Body {
+ /**
+ * Returns the cache mode associated with request, which is a string indicating how the request will interact with the browser's cache when fetching.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/cache)
+ */
+ readonly cache: RequestCache;
+ /**
+ * Returns the credentials mode associated with request, which is a string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/credentials)
+ */
+ readonly credentials: RequestCredentials;
+ /**
+ * Returns the kind of resource requested by request, e.g., "document" or "script".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/destination)
+ */
+ readonly destination: RequestDestination;
+ /**
+ * Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the "Host" header.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/headers)
+ */
+ readonly headers: Headers;
+ /**
+ * Returns request's subresource integrity metadata, which is a cryptographic hash of the resource being fetched. Its value consists of multiple hashes separated by whitespace. [SRI]
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/integrity)
+ */
+ readonly integrity: string;
+ /**
+ * Returns a boolean indicating whether or not request can outlive the global in which it was created.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/keepalive)
+ */
+ readonly keepalive: boolean;
+ /**
+ * Returns request's HTTP method, which is "GET" by default.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/method)
+ */
+ readonly method: string;
+ /**
+ * Returns the mode associated with request, which is a string indicating whether the request will use CORS, or will be restricted to same-origin URLs.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/mode)
+ */
+ readonly mode: RequestMode;
+ /**
+ * Returns the redirect mode associated with request, which is a string indicating how redirects for the request will be handled during fetching. A request will follow redirects by default.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/redirect)
+ */
+ readonly redirect: RequestRedirect;
+ /**
+ * Returns the referrer of request. Its value can be a same-origin URL if explicitly set in init, the empty string to indicate no referrer, and "about:client" when defaulting to the global's default. This is used during fetching to determine the value of the \`Referer\` header of the request being made.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/referrer)
+ */
+ readonly referrer: string;
+ /**
+ * Returns the referrer policy associated with request. This is used during fetching to compute the value of the request's referrer.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/referrerPolicy)
+ */
+ readonly referrerPolicy: ReferrerPolicy;
+ /**
+ * Returns the signal associated with request, which is an AbortSignal object indicating whether or not request has been aborted, and its abort event handler.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/signal)
+ */
+ readonly signal: AbortSignal;
+ /**
+ * Returns the URL of request as a string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/url)
+ */
+ readonly url: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/clone) */
+ clone(): Request;
+}
+
+declare var Request: {
+ prototype: Request;
+ new(input: RequestInfo | URL, init?: RequestInit): Request;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver) */
+interface ResizeObserver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver/disconnect) */
+ disconnect(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver/observe) */
+ observe(target: Element, options?: ResizeObserverOptions): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserver/unobserve) */
+ unobserve(target: Element): void;
+}
+
+declare var ResizeObserver: {
+ prototype: ResizeObserver;
+ new(callback: ResizeObserverCallback): ResizeObserver;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry) */
+interface ResizeObserverEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/borderBoxSize) */
+ readonly borderBoxSize: ReadonlyArray<ResizeObserverSize>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/contentBoxSize) */
+ readonly contentBoxSize: ReadonlyArray<ResizeObserverSize>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/contentRect) */
+ readonly contentRect: DOMRectReadOnly;
+ readonly devicePixelContentBoxSize: ReadonlyArray<ResizeObserverSize>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverEntry/target) */
+ readonly target: Element;
+}
+
+declare var ResizeObserverEntry: {
+ prototype: ResizeObserverEntry;
+ new(): ResizeObserverEntry;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverSize) */
+interface ResizeObserverSize {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverSize/blockSize) */
+ readonly blockSize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ResizeObserverSize/inlineSize) */
+ readonly inlineSize: number;
+}
+
+declare var ResizeObserverSize: {
+ prototype: ResizeObserverSize;
+ new(): ResizeObserverSize;
+};
+
+/**
+ * This Fetch API interface represents the response to a request.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response)
+ */
+interface Response extends Body {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/headers) */
+ readonly headers: Headers;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/ok) */
+ readonly ok: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirected) */
+ readonly redirected: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/status) */
+ readonly status: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/statusText) */
+ readonly statusText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/type) */
+ readonly type: ResponseType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/url) */
+ readonly url: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/clone) */
+ clone(): Response;
+}
+
+declare var Response: {
+ prototype: Response;
+ new(body?: BodyInit | null, init?: ResponseInit): Response;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/error_static) */
+ error(): Response;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json_static) */
+ json(data: any, init?: ResponseInit): Response;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirect_static) */
+ redirect(url: string | URL, status?: number): Response;
+};
+
+/**
+ * Provides access to the properties of <a> element, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAElement)
+ */
+interface SVGAElement extends SVGGraphicsElement, SVGURIReference {
+ rel: string;
+ readonly relList: DOMTokenList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAElement/target) */
+ readonly target: SVGAnimatedString;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGAElement: {
+ prototype: SVGAElement;
+ new(): SVGAElement;
+};
+
+/**
+ * Used to represent a value that can be an <angle> or <number> value. An SVGAngle reflected through the animVal attribute is always read only.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAngle)
+ */
+interface SVGAngle {
+ readonly unitType: number;
+ value: number;
+ valueAsString: string;
+ valueInSpecifiedUnits: number;
+ convertToSpecifiedUnits(unitType: number): void;
+ newValueSpecifiedUnits(unitType: number, valueInSpecifiedUnits: number): void;
+ readonly SVG_ANGLETYPE_UNKNOWN: 0;
+ readonly SVG_ANGLETYPE_UNSPECIFIED: 1;
+ readonly SVG_ANGLETYPE_DEG: 2;
+ readonly SVG_ANGLETYPE_RAD: 3;
+ readonly SVG_ANGLETYPE_GRAD: 4;
+}
+
+declare var SVGAngle: {
+ prototype: SVGAngle;
+ new(): SVGAngle;
+ readonly SVG_ANGLETYPE_UNKNOWN: 0;
+ readonly SVG_ANGLETYPE_UNSPECIFIED: 1;
+ readonly SVG_ANGLETYPE_DEG: 2;
+ readonly SVG_ANGLETYPE_RAD: 3;
+ readonly SVG_ANGLETYPE_GRAD: 4;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimateElement) */
+interface SVGAnimateElement extends SVGAnimationElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimateElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimateElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGAnimateElement: {
+ prototype: SVGAnimateElement;
+ new(): SVGAnimateElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimateMotionElement) */
+interface SVGAnimateMotionElement extends SVGAnimationElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimateMotionElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimateMotionElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGAnimateMotionElement: {
+ prototype: SVGAnimateMotionElement;
+ new(): SVGAnimateMotionElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimateTransformElement) */
+interface SVGAnimateTransformElement extends SVGAnimationElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimateTransformElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimateTransformElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGAnimateTransformElement: {
+ prototype: SVGAnimateTransformElement;
+ new(): SVGAnimateTransformElement;
+};
+
+/**
+ * Used for attributes of basic type <angle> which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedAngle)
+ */
+interface SVGAnimatedAngle {
+ readonly animVal: SVGAngle;
+ readonly baseVal: SVGAngle;
+}
+
+declare var SVGAnimatedAngle: {
+ prototype: SVGAnimatedAngle;
+ new(): SVGAnimatedAngle;
+};
+
+/**
+ * Used for attributes of type boolean which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedBoolean)
+ */
+interface SVGAnimatedBoolean {
+ readonly animVal: boolean;
+ baseVal: boolean;
+}
+
+declare var SVGAnimatedBoolean: {
+ prototype: SVGAnimatedBoolean;
+ new(): SVGAnimatedBoolean;
+};
+
+/**
+ * Used for attributes whose value must be a constant from a particular enumeration and which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedEnumeration)
+ */
+interface SVGAnimatedEnumeration {
+ readonly animVal: number;
+ baseVal: number;
+}
+
+declare var SVGAnimatedEnumeration: {
+ prototype: SVGAnimatedEnumeration;
+ new(): SVGAnimatedEnumeration;
+};
+
+/**
+ * Used for attributes of basic type <integer> which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedInteger)
+ */
+interface SVGAnimatedInteger {
+ readonly animVal: number;
+ baseVal: number;
+}
+
+declare var SVGAnimatedInteger: {
+ prototype: SVGAnimatedInteger;
+ new(): SVGAnimatedInteger;
+};
+
+/**
+ * Used for attributes of basic type <length> which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedLength)
+ */
+interface SVGAnimatedLength {
+ readonly animVal: SVGLength;
+ readonly baseVal: SVGLength;
+}
+
+declare var SVGAnimatedLength: {
+ prototype: SVGAnimatedLength;
+ new(): SVGAnimatedLength;
+};
+
+/**
+ * Used for attributes of type SVGLengthList which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedLengthList)
+ */
+interface SVGAnimatedLengthList {
+ readonly animVal: SVGLengthList;
+ readonly baseVal: SVGLengthList;
+}
+
+declare var SVGAnimatedLengthList: {
+ prototype: SVGAnimatedLengthList;
+ new(): SVGAnimatedLengthList;
+};
+
+/**
+ * Used for attributes of basic type <Number> which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedNumber)
+ */
+interface SVGAnimatedNumber {
+ readonly animVal: number;
+ baseVal: number;
+}
+
+declare var SVGAnimatedNumber: {
+ prototype: SVGAnimatedNumber;
+ new(): SVGAnimatedNumber;
+};
+
+/**
+ * The SVGAnimatedNumber interface is used for attributes which take a list of numbers and which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedNumberList)
+ */
+interface SVGAnimatedNumberList {
+ readonly animVal: SVGNumberList;
+ readonly baseVal: SVGNumberList;
+}
+
+declare var SVGAnimatedNumberList: {
+ prototype: SVGAnimatedNumberList;
+ new(): SVGAnimatedNumberList;
+};
+
+interface SVGAnimatedPoints {
+ readonly animatedPoints: SVGPointList;
+ readonly points: SVGPointList;
+}
+
+/**
+ * Used for attributes of type SVGPreserveAspectRatio which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedPreserveAspectRatio)
+ */
+interface SVGAnimatedPreserveAspectRatio {
+ readonly animVal: SVGPreserveAspectRatio;
+ readonly baseVal: SVGPreserveAspectRatio;
+}
+
+declare var SVGAnimatedPreserveAspectRatio: {
+ prototype: SVGAnimatedPreserveAspectRatio;
+ new(): SVGAnimatedPreserveAspectRatio;
+};
+
+/**
+ * Used for attributes of basic SVGRect which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedRect)
+ */
+interface SVGAnimatedRect {
+ readonly animVal: DOMRectReadOnly;
+ readonly baseVal: DOMRect;
+}
+
+declare var SVGAnimatedRect: {
+ prototype: SVGAnimatedRect;
+ new(): SVGAnimatedRect;
+};
+
+/**
+ * The SVGAnimatedString interface represents string attributes which can be animated from each SVG declaration. You need to create SVG attribute before doing anything else, everything should be declared inside this.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedString)
+ */
+interface SVGAnimatedString {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedString/animVal) */
+ readonly animVal: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedString/baseVal) */
+ baseVal: string;
+}
+
+declare var SVGAnimatedString: {
+ prototype: SVGAnimatedString;
+ new(): SVGAnimatedString;
+};
+
+/**
+ * Used for attributes which take a list of numbers and which can be animated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimatedTransformList)
+ */
+interface SVGAnimatedTransformList {
+ readonly animVal: SVGTransformList;
+ readonly baseVal: SVGTransformList;
+}
+
+declare var SVGAnimatedTransformList: {
+ prototype: SVGAnimatedTransformList;
+ new(): SVGAnimatedTransformList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimationElement) */
+interface SVGAnimationElement extends SVGElement, SVGTests {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGAnimationElement/targetElement) */
+ readonly targetElement: SVGElement | null;
+ beginElement(): void;
+ beginElementAt(offset: number): void;
+ endElement(): void;
+ endElementAt(offset: number): void;
+ getCurrentTime(): number;
+ getSimpleDuration(): number;
+ getStartTime(): number;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimationElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGAnimationElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGAnimationElement: {
+ prototype: SVGAnimationElement;
+ new(): SVGAnimationElement;
+};
+
+/**
+ * An interface for the <circle> element. The circle element is defined by the cx and cy attributes that denote the coordinates of the centre of the circle.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement)
+ */
+interface SVGCircleElement extends SVGGeometryElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement/cx) */
+ readonly cx: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement/cy) */
+ readonly cy: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGCircleElement/r) */
+ readonly r: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGCircleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGCircleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGCircleElement: {
+ prototype: SVGCircleElement;
+ new(): SVGCircleElement;
+};
+
+/**
+ * Provides access to the properties of <clipPath> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGClipPathElement)
+ */
+interface SVGClipPathElement extends SVGElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGClipPathElement/clipPathUnits) */
+ readonly clipPathUnits: SVGAnimatedEnumeration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGClipPathElement/transform) */
+ readonly transform: SVGAnimatedTransformList;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGClipPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGClipPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGClipPathElement: {
+ prototype: SVGClipPathElement;
+ new(): SVGClipPathElement;
+};
+
+/**
+ * A base interface used by the component transfer function interfaces.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGComponentTransferFunctionElement)
+ */
+interface SVGComponentTransferFunctionElement extends SVGElement {
+ readonly amplitude: SVGAnimatedNumber;
+ readonly exponent: SVGAnimatedNumber;
+ readonly intercept: SVGAnimatedNumber;
+ readonly offset: SVGAnimatedNumber;
+ readonly slope: SVGAnimatedNumber;
+ readonly tableValues: SVGAnimatedNumberList;
+ readonly type: SVGAnimatedEnumeration;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN: 0;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY: 1;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_TABLE: 2;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE: 3;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_LINEAR: 4;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_GAMMA: 5;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGComponentTransferFunctionElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGComponentTransferFunctionElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGComponentTransferFunctionElement: {
+ prototype: SVGComponentTransferFunctionElement;
+ new(): SVGComponentTransferFunctionElement;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_UNKNOWN: 0;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_IDENTITY: 1;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_TABLE: 2;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_DISCRETE: 3;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_LINEAR: 4;
+ readonly SVG_FECOMPONENTTRANSFER_TYPE_GAMMA: 5;
+};
+
+/**
+ * Corresponds to the <defs> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGDefsElement)
+ */
+interface SVGDefsElement extends SVGGraphicsElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDefsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDefsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGDefsElement: {
+ prototype: SVGDefsElement;
+ new(): SVGDefsElement;
+};
+
+/**
+ * Corresponds to the <desc> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGDescElement)
+ */
+interface SVGDescElement extends SVGElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDescElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGDescElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGDescElement: {
+ prototype: SVGDescElement;
+ new(): SVGDescElement;
+};
+
+interface SVGElementEventMap extends ElementEventMap, GlobalEventHandlersEventMap {
+}
+
+/**
+ * All of the SVG DOM interfaces that correspond directly to elements in the SVG language derive from the SVGElement interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGElement)
+ */
+interface SVGElement extends Element, ElementCSSInlineStyle, GlobalEventHandlers, HTMLOrSVGElement {
+ /** @deprecated */
+ readonly className: any;
+ readonly ownerSVGElement: SVGSVGElement | null;
+ readonly viewportElement: SVGElement | null;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGElement: {
+ prototype: SVGElement;
+ new(): SVGElement;
+};
+
+/**
+ * Provides access to the properties of <ellipse> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGEllipseElement)
+ */
+interface SVGEllipseElement extends SVGGeometryElement {
+ readonly cx: SVGAnimatedLength;
+ readonly cy: SVGAnimatedLength;
+ readonly rx: SVGAnimatedLength;
+ readonly ry: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGEllipseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGEllipseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGEllipseElement: {
+ prototype: SVGEllipseElement;
+ new(): SVGEllipseElement;
+};
+
+/**
+ * Corresponds to the <feBlend> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEBlendElement)
+ */
+interface SVGFEBlendElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ readonly in2: SVGAnimatedString;
+ readonly mode: SVGAnimatedEnumeration;
+ readonly SVG_FEBLEND_MODE_UNKNOWN: 0;
+ readonly SVG_FEBLEND_MODE_NORMAL: 1;
+ readonly SVG_FEBLEND_MODE_MULTIPLY: 2;
+ readonly SVG_FEBLEND_MODE_SCREEN: 3;
+ readonly SVG_FEBLEND_MODE_DARKEN: 4;
+ readonly SVG_FEBLEND_MODE_LIGHTEN: 5;
+ readonly SVG_FEBLEND_MODE_OVERLAY: 6;
+ readonly SVG_FEBLEND_MODE_COLOR_DODGE: 7;
+ readonly SVG_FEBLEND_MODE_COLOR_BURN: 8;
+ readonly SVG_FEBLEND_MODE_HARD_LIGHT: 9;
+ readonly SVG_FEBLEND_MODE_SOFT_LIGHT: 10;
+ readonly SVG_FEBLEND_MODE_DIFFERENCE: 11;
+ readonly SVG_FEBLEND_MODE_EXCLUSION: 12;
+ readonly SVG_FEBLEND_MODE_HUE: 13;
+ readonly SVG_FEBLEND_MODE_SATURATION: 14;
+ readonly SVG_FEBLEND_MODE_COLOR: 15;
+ readonly SVG_FEBLEND_MODE_LUMINOSITY: 16;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEBlendElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEBlendElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEBlendElement: {
+ prototype: SVGFEBlendElement;
+ new(): SVGFEBlendElement;
+ readonly SVG_FEBLEND_MODE_UNKNOWN: 0;
+ readonly SVG_FEBLEND_MODE_NORMAL: 1;
+ readonly SVG_FEBLEND_MODE_MULTIPLY: 2;
+ readonly SVG_FEBLEND_MODE_SCREEN: 3;
+ readonly SVG_FEBLEND_MODE_DARKEN: 4;
+ readonly SVG_FEBLEND_MODE_LIGHTEN: 5;
+ readonly SVG_FEBLEND_MODE_OVERLAY: 6;
+ readonly SVG_FEBLEND_MODE_COLOR_DODGE: 7;
+ readonly SVG_FEBLEND_MODE_COLOR_BURN: 8;
+ readonly SVG_FEBLEND_MODE_HARD_LIGHT: 9;
+ readonly SVG_FEBLEND_MODE_SOFT_LIGHT: 10;
+ readonly SVG_FEBLEND_MODE_DIFFERENCE: 11;
+ readonly SVG_FEBLEND_MODE_EXCLUSION: 12;
+ readonly SVG_FEBLEND_MODE_HUE: 13;
+ readonly SVG_FEBLEND_MODE_SATURATION: 14;
+ readonly SVG_FEBLEND_MODE_COLOR: 15;
+ readonly SVG_FEBLEND_MODE_LUMINOSITY: 16;
+};
+
+/**
+ * Corresponds to the <feColorMatrix> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement)
+ */
+interface SVGFEColorMatrixElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement/in1) */
+ readonly in1: SVGAnimatedString;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement/type) */
+ readonly type: SVGAnimatedEnumeration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEColorMatrixElement/values) */
+ readonly values: SVGAnimatedNumberList;
+ readonly SVG_FECOLORMATRIX_TYPE_UNKNOWN: 0;
+ readonly SVG_FECOLORMATRIX_TYPE_MATRIX: 1;
+ readonly SVG_FECOLORMATRIX_TYPE_SATURATE: 2;
+ readonly SVG_FECOLORMATRIX_TYPE_HUEROTATE: 3;
+ readonly SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA: 4;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEColorMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEColorMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEColorMatrixElement: {
+ prototype: SVGFEColorMatrixElement;
+ new(): SVGFEColorMatrixElement;
+ readonly SVG_FECOLORMATRIX_TYPE_UNKNOWN: 0;
+ readonly SVG_FECOLORMATRIX_TYPE_MATRIX: 1;
+ readonly SVG_FECOLORMATRIX_TYPE_SATURATE: 2;
+ readonly SVG_FECOLORMATRIX_TYPE_HUEROTATE: 3;
+ readonly SVG_FECOLORMATRIX_TYPE_LUMINANCETOALPHA: 4;
+};
+
+/**
+ * Corresponds to the <feComponentTransfer> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEComponentTransferElement)
+ */
+interface SVGFEComponentTransferElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEComponentTransferElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEComponentTransferElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEComponentTransferElement: {
+ prototype: SVGFEComponentTransferElement;
+ new(): SVGFEComponentTransferElement;
+};
+
+/**
+ * Corresponds to the <feComposite> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFECompositeElement)
+ */
+interface SVGFECompositeElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ readonly in2: SVGAnimatedString;
+ readonly k1: SVGAnimatedNumber;
+ readonly k2: SVGAnimatedNumber;
+ readonly k3: SVGAnimatedNumber;
+ readonly k4: SVGAnimatedNumber;
+ readonly operator: SVGAnimatedEnumeration;
+ readonly SVG_FECOMPOSITE_OPERATOR_UNKNOWN: 0;
+ readonly SVG_FECOMPOSITE_OPERATOR_OVER: 1;
+ readonly SVG_FECOMPOSITE_OPERATOR_IN: 2;
+ readonly SVG_FECOMPOSITE_OPERATOR_OUT: 3;
+ readonly SVG_FECOMPOSITE_OPERATOR_ATOP: 4;
+ readonly SVG_FECOMPOSITE_OPERATOR_XOR: 5;
+ readonly SVG_FECOMPOSITE_OPERATOR_ARITHMETIC: 6;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFECompositeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFECompositeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFECompositeElement: {
+ prototype: SVGFECompositeElement;
+ new(): SVGFECompositeElement;
+ readonly SVG_FECOMPOSITE_OPERATOR_UNKNOWN: 0;
+ readonly SVG_FECOMPOSITE_OPERATOR_OVER: 1;
+ readonly SVG_FECOMPOSITE_OPERATOR_IN: 2;
+ readonly SVG_FECOMPOSITE_OPERATOR_OUT: 3;
+ readonly SVG_FECOMPOSITE_OPERATOR_ATOP: 4;
+ readonly SVG_FECOMPOSITE_OPERATOR_XOR: 5;
+ readonly SVG_FECOMPOSITE_OPERATOR_ARITHMETIC: 6;
+};
+
+/**
+ * Corresponds to the <feConvolveMatrix> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEConvolveMatrixElement)
+ */
+interface SVGFEConvolveMatrixElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly bias: SVGAnimatedNumber;
+ readonly divisor: SVGAnimatedNumber;
+ readonly edgeMode: SVGAnimatedEnumeration;
+ readonly in1: SVGAnimatedString;
+ readonly kernelMatrix: SVGAnimatedNumberList;
+ readonly kernelUnitLengthX: SVGAnimatedNumber;
+ readonly kernelUnitLengthY: SVGAnimatedNumber;
+ readonly orderX: SVGAnimatedInteger;
+ readonly orderY: SVGAnimatedInteger;
+ readonly preserveAlpha: SVGAnimatedBoolean;
+ readonly targetX: SVGAnimatedInteger;
+ readonly targetY: SVGAnimatedInteger;
+ readonly SVG_EDGEMODE_UNKNOWN: 0;
+ readonly SVG_EDGEMODE_DUPLICATE: 1;
+ readonly SVG_EDGEMODE_WRAP: 2;
+ readonly SVG_EDGEMODE_NONE: 3;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEConvolveMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEConvolveMatrixElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEConvolveMatrixElement: {
+ prototype: SVGFEConvolveMatrixElement;
+ new(): SVGFEConvolveMatrixElement;
+ readonly SVG_EDGEMODE_UNKNOWN: 0;
+ readonly SVG_EDGEMODE_DUPLICATE: 1;
+ readonly SVG_EDGEMODE_WRAP: 2;
+ readonly SVG_EDGEMODE_NONE: 3;
+};
+
+/**
+ * Corresponds to the <feDiffuseLighting> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDiffuseLightingElement)
+ */
+interface SVGFEDiffuseLightingElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly diffuseConstant: SVGAnimatedNumber;
+ readonly in1: SVGAnimatedString;
+ readonly kernelUnitLengthX: SVGAnimatedNumber;
+ readonly kernelUnitLengthY: SVGAnimatedNumber;
+ readonly surfaceScale: SVGAnimatedNumber;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDiffuseLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDiffuseLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEDiffuseLightingElement: {
+ prototype: SVGFEDiffuseLightingElement;
+ new(): SVGFEDiffuseLightingElement;
+};
+
+/**
+ * Corresponds to the <feDisplacementMap> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDisplacementMapElement)
+ */
+interface SVGFEDisplacementMapElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ readonly in2: SVGAnimatedString;
+ readonly scale: SVGAnimatedNumber;
+ readonly xChannelSelector: SVGAnimatedEnumeration;
+ readonly yChannelSelector: SVGAnimatedEnumeration;
+ readonly SVG_CHANNEL_UNKNOWN: 0;
+ readonly SVG_CHANNEL_R: 1;
+ readonly SVG_CHANNEL_G: 2;
+ readonly SVG_CHANNEL_B: 3;
+ readonly SVG_CHANNEL_A: 4;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDisplacementMapElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDisplacementMapElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEDisplacementMapElement: {
+ prototype: SVGFEDisplacementMapElement;
+ new(): SVGFEDisplacementMapElement;
+ readonly SVG_CHANNEL_UNKNOWN: 0;
+ readonly SVG_CHANNEL_R: 1;
+ readonly SVG_CHANNEL_G: 2;
+ readonly SVG_CHANNEL_B: 3;
+ readonly SVG_CHANNEL_A: 4;
+};
+
+/**
+ * Corresponds to the <feDistantLight> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDistantLightElement)
+ */
+interface SVGFEDistantLightElement extends SVGElement {
+ readonly azimuth: SVGAnimatedNumber;
+ readonly elevation: SVGAnimatedNumber;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDistantLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDistantLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEDistantLightElement: {
+ prototype: SVGFEDistantLightElement;
+ new(): SVGFEDistantLightElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEDropShadowElement) */
+interface SVGFEDropShadowElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly dx: SVGAnimatedNumber;
+ readonly dy: SVGAnimatedNumber;
+ readonly in1: SVGAnimatedString;
+ readonly stdDeviationX: SVGAnimatedNumber;
+ readonly stdDeviationY: SVGAnimatedNumber;
+ setStdDeviation(stdDeviationX: number, stdDeviationY: number): void;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDropShadowElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEDropShadowElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEDropShadowElement: {
+ prototype: SVGFEDropShadowElement;
+ new(): SVGFEDropShadowElement;
+};
+
+/**
+ * Corresponds to the <feFlood> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFloodElement)
+ */
+interface SVGFEFloodElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFloodElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFloodElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEFloodElement: {
+ prototype: SVGFEFloodElement;
+ new(): SVGFEFloodElement;
+};
+
+/**
+ * Corresponds to the <feFuncA> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncAElement)
+ */
+interface SVGFEFuncAElement extends SVGComponentTransferFunctionElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncAElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEFuncAElement: {
+ prototype: SVGFEFuncAElement;
+ new(): SVGFEFuncAElement;
+};
+
+/**
+ * Corresponds to the <feFuncB> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncBElement)
+ */
+interface SVGFEFuncBElement extends SVGComponentTransferFunctionElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncBElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncBElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEFuncBElement: {
+ prototype: SVGFEFuncBElement;
+ new(): SVGFEFuncBElement;
+};
+
+/**
+ * Corresponds to the <feFuncG> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncGElement)
+ */
+interface SVGFEFuncGElement extends SVGComponentTransferFunctionElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEFuncGElement: {
+ prototype: SVGFEFuncGElement;
+ new(): SVGFEFuncGElement;
+};
+
+/**
+ * Corresponds to the <feFuncR> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEFuncRElement)
+ */
+interface SVGFEFuncRElement extends SVGComponentTransferFunctionElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncRElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEFuncRElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEFuncRElement: {
+ prototype: SVGFEFuncRElement;
+ new(): SVGFEFuncRElement;
+};
+
+/**
+ * Corresponds to the <feGaussianBlur> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEGaussianBlurElement)
+ */
+interface SVGFEGaussianBlurElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ readonly stdDeviationX: SVGAnimatedNumber;
+ readonly stdDeviationY: SVGAnimatedNumber;
+ setStdDeviation(stdDeviationX: number, stdDeviationY: number): void;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEGaussianBlurElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEGaussianBlurElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEGaussianBlurElement: {
+ prototype: SVGFEGaussianBlurElement;
+ new(): SVGFEGaussianBlurElement;
+};
+
+/**
+ * Corresponds to the <feImage> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEImageElement)
+ */
+interface SVGFEImageElement extends SVGElement, SVGFilterPrimitiveStandardAttributes, SVGURIReference {
+ readonly preserveAspectRatio: SVGAnimatedPreserveAspectRatio;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEImageElement: {
+ prototype: SVGFEImageElement;
+ new(): SVGFEImageElement;
+};
+
+/**
+ * Corresponds to the <feMerge> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEMergeElement)
+ */
+interface SVGFEMergeElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEMergeElement: {
+ prototype: SVGFEMergeElement;
+ new(): SVGFEMergeElement;
+};
+
+/**
+ * Corresponds to the <feMergeNode> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEMergeNodeElement)
+ */
+interface SVGFEMergeNodeElement extends SVGElement {
+ readonly in1: SVGAnimatedString;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeNodeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMergeNodeElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEMergeNodeElement: {
+ prototype: SVGFEMergeNodeElement;
+ new(): SVGFEMergeNodeElement;
+};
+
+/**
+ * Corresponds to the <feMorphology> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEMorphologyElement)
+ */
+interface SVGFEMorphologyElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ readonly operator: SVGAnimatedEnumeration;
+ readonly radiusX: SVGAnimatedNumber;
+ readonly radiusY: SVGAnimatedNumber;
+ readonly SVG_MORPHOLOGY_OPERATOR_UNKNOWN: 0;
+ readonly SVG_MORPHOLOGY_OPERATOR_ERODE: 1;
+ readonly SVG_MORPHOLOGY_OPERATOR_DILATE: 2;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMorphologyElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEMorphologyElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEMorphologyElement: {
+ prototype: SVGFEMorphologyElement;
+ new(): SVGFEMorphologyElement;
+ readonly SVG_MORPHOLOGY_OPERATOR_UNKNOWN: 0;
+ readonly SVG_MORPHOLOGY_OPERATOR_ERODE: 1;
+ readonly SVG_MORPHOLOGY_OPERATOR_DILATE: 2;
+};
+
+/**
+ * Corresponds to the <feOffset> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEOffsetElement)
+ */
+interface SVGFEOffsetElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly dx: SVGAnimatedNumber;
+ readonly dy: SVGAnimatedNumber;
+ readonly in1: SVGAnimatedString;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEOffsetElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEOffsetElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEOffsetElement: {
+ prototype: SVGFEOffsetElement;
+ new(): SVGFEOffsetElement;
+};
+
+/**
+ * Corresponds to the <fePointLight> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFEPointLightElement)
+ */
+interface SVGFEPointLightElement extends SVGElement {
+ readonly x: SVGAnimatedNumber;
+ readonly y: SVGAnimatedNumber;
+ readonly z: SVGAnimatedNumber;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEPointLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFEPointLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFEPointLightElement: {
+ prototype: SVGFEPointLightElement;
+ new(): SVGFEPointLightElement;
+};
+
+/**
+ * Corresponds to the <feSpecularLighting> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFESpecularLightingElement)
+ */
+interface SVGFESpecularLightingElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ readonly kernelUnitLengthX: SVGAnimatedNumber;
+ readonly kernelUnitLengthY: SVGAnimatedNumber;
+ readonly specularConstant: SVGAnimatedNumber;
+ readonly specularExponent: SVGAnimatedNumber;
+ readonly surfaceScale: SVGAnimatedNumber;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpecularLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpecularLightingElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFESpecularLightingElement: {
+ prototype: SVGFESpecularLightingElement;
+ new(): SVGFESpecularLightingElement;
+};
+
+/**
+ * Corresponds to the <feSpotLight> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFESpotLightElement)
+ */
+interface SVGFESpotLightElement extends SVGElement {
+ readonly limitingConeAngle: SVGAnimatedNumber;
+ readonly pointsAtX: SVGAnimatedNumber;
+ readonly pointsAtY: SVGAnimatedNumber;
+ readonly pointsAtZ: SVGAnimatedNumber;
+ readonly specularExponent: SVGAnimatedNumber;
+ readonly x: SVGAnimatedNumber;
+ readonly y: SVGAnimatedNumber;
+ readonly z: SVGAnimatedNumber;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpotLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFESpotLightElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFESpotLightElement: {
+ prototype: SVGFESpotLightElement;
+ new(): SVGFESpotLightElement;
+};
+
+/**
+ * Corresponds to the <feTile> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFETileElement)
+ */
+interface SVGFETileElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly in1: SVGAnimatedString;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETileElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETileElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFETileElement: {
+ prototype: SVGFETileElement;
+ new(): SVGFETileElement;
+};
+
+/**
+ * Corresponds to the <feTurbulence> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFETurbulenceElement)
+ */
+interface SVGFETurbulenceElement extends SVGElement, SVGFilterPrimitiveStandardAttributes {
+ readonly baseFrequencyX: SVGAnimatedNumber;
+ readonly baseFrequencyY: SVGAnimatedNumber;
+ readonly numOctaves: SVGAnimatedInteger;
+ readonly seed: SVGAnimatedNumber;
+ readonly stitchTiles: SVGAnimatedEnumeration;
+ readonly type: SVGAnimatedEnumeration;
+ readonly SVG_TURBULENCE_TYPE_UNKNOWN: 0;
+ readonly SVG_TURBULENCE_TYPE_FRACTALNOISE: 1;
+ readonly SVG_TURBULENCE_TYPE_TURBULENCE: 2;
+ readonly SVG_STITCHTYPE_UNKNOWN: 0;
+ readonly SVG_STITCHTYPE_STITCH: 1;
+ readonly SVG_STITCHTYPE_NOSTITCH: 2;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETurbulenceElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFETurbulenceElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFETurbulenceElement: {
+ prototype: SVGFETurbulenceElement;
+ new(): SVGFETurbulenceElement;
+ readonly SVG_TURBULENCE_TYPE_UNKNOWN: 0;
+ readonly SVG_TURBULENCE_TYPE_FRACTALNOISE: 1;
+ readonly SVG_TURBULENCE_TYPE_TURBULENCE: 2;
+ readonly SVG_STITCHTYPE_UNKNOWN: 0;
+ readonly SVG_STITCHTYPE_STITCH: 1;
+ readonly SVG_STITCHTYPE_NOSTITCH: 2;
+};
+
+/**
+ * Provides access to the properties of <filter> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGFilterElement)
+ */
+interface SVGFilterElement extends SVGElement, SVGURIReference {
+ readonly filterUnits: SVGAnimatedEnumeration;
+ readonly height: SVGAnimatedLength;
+ readonly primitiveUnits: SVGAnimatedEnumeration;
+ readonly width: SVGAnimatedLength;
+ readonly x: SVGAnimatedLength;
+ readonly y: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFilterElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGFilterElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGFilterElement: {
+ prototype: SVGFilterElement;
+ new(): SVGFilterElement;
+};
+
+interface SVGFilterPrimitiveStandardAttributes {
+ readonly height: SVGAnimatedLength;
+ readonly result: SVGAnimatedString;
+ readonly width: SVGAnimatedLength;
+ readonly x: SVGAnimatedLength;
+ readonly y: SVGAnimatedLength;
+}
+
+interface SVGFitToViewBox {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/preserveAspectRatio) */
+ readonly preserveAspectRatio: SVGAnimatedPreserveAspectRatio;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/viewBox) */
+ readonly viewBox: SVGAnimatedRect;
+}
+
+/**
+ * Provides access to the properties of <foreignObject> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGForeignObjectElement)
+ */
+interface SVGForeignObjectElement extends SVGGraphicsElement {
+ readonly height: SVGAnimatedLength;
+ readonly width: SVGAnimatedLength;
+ readonly x: SVGAnimatedLength;
+ readonly y: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGForeignObjectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGForeignObjectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGForeignObjectElement: {
+ prototype: SVGForeignObjectElement;
+ new(): SVGForeignObjectElement;
+};
+
+/**
+ * Corresponds to the <g> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGElement)
+ */
+interface SVGGElement extends SVGGraphicsElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGGElement: {
+ prototype: SVGGElement;
+ new(): SVGGElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement) */
+interface SVGGeometryElement extends SVGGraphicsElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/pathLength) */
+ readonly pathLength: SVGAnimatedNumber;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/getPointAtLength) */
+ getPointAtLength(distance: number): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/getTotalLength) */
+ getTotalLength(): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInFill) */
+ isPointInFill(point?: DOMPointInit): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGeometryElement/isPointInStroke) */
+ isPointInStroke(point?: DOMPointInit): boolean;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGeometryElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGeometryElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGGeometryElement: {
+ prototype: SVGGeometryElement;
+ new(): SVGGeometryElement;
+};
+
+/**
+ * The SVGGradient interface is a base interface used by SVGLinearGradientElement and SVGRadialGradientElement.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGradientElement)
+ */
+interface SVGGradientElement extends SVGElement, SVGURIReference {
+ readonly gradientTransform: SVGAnimatedTransformList;
+ readonly gradientUnits: SVGAnimatedEnumeration;
+ readonly spreadMethod: SVGAnimatedEnumeration;
+ readonly SVG_SPREADMETHOD_UNKNOWN: 0;
+ readonly SVG_SPREADMETHOD_PAD: 1;
+ readonly SVG_SPREADMETHOD_REFLECT: 2;
+ readonly SVG_SPREADMETHOD_REPEAT: 3;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGGradientElement: {
+ prototype: SVGGradientElement;
+ new(): SVGGradientElement;
+ readonly SVG_SPREADMETHOD_UNKNOWN: 0;
+ readonly SVG_SPREADMETHOD_PAD: 1;
+ readonly SVG_SPREADMETHOD_REFLECT: 2;
+ readonly SVG_SPREADMETHOD_REPEAT: 3;
+};
+
+/**
+ * SVG elements whose primary purpose is to directly render graphics into a group.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGraphicsElement)
+ */
+interface SVGGraphicsElement extends SVGElement, SVGTests {
+ readonly transform: SVGAnimatedTransformList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGGraphicsElement/getBBox) */
+ getBBox(options?: SVGBoundingBoxOptions): DOMRect;
+ getCTM(): DOMMatrix | null;
+ getScreenCTM(): DOMMatrix | null;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGraphicsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGGraphicsElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGGraphicsElement: {
+ prototype: SVGGraphicsElement;
+ new(): SVGGraphicsElement;
+};
+
+/**
+ * Corresponds to the <image> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement)
+ */
+interface SVGImageElement extends SVGGraphicsElement, SVGURIReference {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/crossorigin) */
+ crossOrigin: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/height) */
+ readonly height: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/preserveAspectRatio) */
+ readonly preserveAspectRatio: SVGAnimatedPreserveAspectRatio;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/width) */
+ readonly width: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/x) */
+ readonly x: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGImageElement/y) */
+ readonly y: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGImageElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGImageElement: {
+ prototype: SVGImageElement;
+ new(): SVGImageElement;
+};
+
+/**
+ * Correspond to the <length> basic data type.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLength)
+ */
+interface SVGLength {
+ readonly unitType: number;
+ value: number;
+ valueAsString: string;
+ valueInSpecifiedUnits: number;
+ convertToSpecifiedUnits(unitType: number): void;
+ newValueSpecifiedUnits(unitType: number, valueInSpecifiedUnits: number): void;
+ readonly SVG_LENGTHTYPE_UNKNOWN: 0;
+ readonly SVG_LENGTHTYPE_NUMBER: 1;
+ readonly SVG_LENGTHTYPE_PERCENTAGE: 2;
+ readonly SVG_LENGTHTYPE_EMS: 3;
+ readonly SVG_LENGTHTYPE_EXS: 4;
+ readonly SVG_LENGTHTYPE_PX: 5;
+ readonly SVG_LENGTHTYPE_CM: 6;
+ readonly SVG_LENGTHTYPE_MM: 7;
+ readonly SVG_LENGTHTYPE_IN: 8;
+ readonly SVG_LENGTHTYPE_PT: 9;
+ readonly SVG_LENGTHTYPE_PC: 10;
+}
+
+declare var SVGLength: {
+ prototype: SVGLength;
+ new(): SVGLength;
+ readonly SVG_LENGTHTYPE_UNKNOWN: 0;
+ readonly SVG_LENGTHTYPE_NUMBER: 1;
+ readonly SVG_LENGTHTYPE_PERCENTAGE: 2;
+ readonly SVG_LENGTHTYPE_EMS: 3;
+ readonly SVG_LENGTHTYPE_EXS: 4;
+ readonly SVG_LENGTHTYPE_PX: 5;
+ readonly SVG_LENGTHTYPE_CM: 6;
+ readonly SVG_LENGTHTYPE_MM: 7;
+ readonly SVG_LENGTHTYPE_IN: 8;
+ readonly SVG_LENGTHTYPE_PT: 9;
+ readonly SVG_LENGTHTYPE_PC: 10;
+};
+
+/**
+ * The SVGLengthList defines a list of SVGLength objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLengthList)
+ */
+interface SVGLengthList {
+ readonly length: number;
+ readonly numberOfItems: number;
+ appendItem(newItem: SVGLength): SVGLength;
+ clear(): void;
+ getItem(index: number): SVGLength;
+ initialize(newItem: SVGLength): SVGLength;
+ insertItemBefore(newItem: SVGLength, index: number): SVGLength;
+ removeItem(index: number): SVGLength;
+ replaceItem(newItem: SVGLength, index: number): SVGLength;
+ [index: number]: SVGLength;
+}
+
+declare var SVGLengthList: {
+ prototype: SVGLengthList;
+ new(): SVGLengthList;
+};
+
+/**
+ * Provides access to the properties of <line> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLineElement)
+ */
+interface SVGLineElement extends SVGGeometryElement {
+ readonly x1: SVGAnimatedLength;
+ readonly x2: SVGAnimatedLength;
+ readonly y1: SVGAnimatedLength;
+ readonly y2: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGLineElement: {
+ prototype: SVGLineElement;
+ new(): SVGLineElement;
+};
+
+/**
+ * Corresponds to the <linearGradient> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGLinearGradientElement)
+ */
+interface SVGLinearGradientElement extends SVGGradientElement {
+ readonly x1: SVGAnimatedLength;
+ readonly x2: SVGAnimatedLength;
+ readonly y1: SVGAnimatedLength;
+ readonly y2: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLinearGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGLinearGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGLinearGradientElement: {
+ prototype: SVGLinearGradientElement;
+ new(): SVGLinearGradientElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMPathElement) */
+interface SVGMPathElement extends SVGElement, SVGURIReference {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGMPathElement: {
+ prototype: SVGMPathElement;
+ new(): SVGMPathElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement) */
+interface SVGMarkerElement extends SVGElement, SVGFitToViewBox {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/markerHeight) */
+ readonly markerHeight: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/markerUnits) */
+ readonly markerUnits: SVGAnimatedEnumeration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/markerWidth) */
+ readonly markerWidth: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/orientAngle) */
+ readonly orientAngle: SVGAnimatedAngle;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/orientType) */
+ readonly orientType: SVGAnimatedEnumeration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/refX) */
+ readonly refX: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/refY) */
+ readonly refY: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/setOrientToAngle) */
+ setOrientToAngle(angle: SVGAngle): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMarkerElement/setOrientToAuto) */
+ setOrientToAuto(): void;
+ readonly SVG_MARKERUNITS_UNKNOWN: 0;
+ readonly SVG_MARKERUNITS_USERSPACEONUSE: 1;
+ readonly SVG_MARKERUNITS_STROKEWIDTH: 2;
+ readonly SVG_MARKER_ORIENT_UNKNOWN: 0;
+ readonly SVG_MARKER_ORIENT_AUTO: 1;
+ readonly SVG_MARKER_ORIENT_ANGLE: 2;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMarkerElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMarkerElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGMarkerElement: {
+ prototype: SVGMarkerElement;
+ new(): SVGMarkerElement;
+ readonly SVG_MARKERUNITS_UNKNOWN: 0;
+ readonly SVG_MARKERUNITS_USERSPACEONUSE: 1;
+ readonly SVG_MARKERUNITS_STROKEWIDTH: 2;
+ readonly SVG_MARKER_ORIENT_UNKNOWN: 0;
+ readonly SVG_MARKER_ORIENT_AUTO: 1;
+ readonly SVG_MARKER_ORIENT_ANGLE: 2;
+};
+
+/**
+ * Provides access to the properties of <mask> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement)
+ */
+interface SVGMaskElement extends SVGElement {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/height) */
+ readonly height: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/maskContentUnits) */
+ readonly maskContentUnits: SVGAnimatedEnumeration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/maskUnits) */
+ readonly maskUnits: SVGAnimatedEnumeration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/width) */
+ readonly width: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/x) */
+ readonly x: SVGAnimatedLength;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMaskElement/y) */
+ readonly y: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMaskElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMaskElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGMaskElement: {
+ prototype: SVGMaskElement;
+ new(): SVGMaskElement;
+};
+
+/**
+ * Corresponds to the <metadata> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGMetadataElement)
+ */
+interface SVGMetadataElement extends SVGElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMetadataElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGMetadataElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGMetadataElement: {
+ prototype: SVGMetadataElement;
+ new(): SVGMetadataElement;
+};
+
+/**
+ * Corresponds to the <number> basic data type.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGNumber)
+ */
+interface SVGNumber {
+ value: number;
+}
+
+declare var SVGNumber: {
+ prototype: SVGNumber;
+ new(): SVGNumber;
+};
+
+/**
+ * The SVGNumberList defines a list of SVGNumber objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGNumberList)
+ */
+interface SVGNumberList {
+ readonly length: number;
+ readonly numberOfItems: number;
+ appendItem(newItem: SVGNumber): SVGNumber;
+ clear(): void;
+ getItem(index: number): SVGNumber;
+ initialize(newItem: SVGNumber): SVGNumber;
+ insertItemBefore(newItem: SVGNumber, index: number): SVGNumber;
+ removeItem(index: number): SVGNumber;
+ replaceItem(newItem: SVGNumber, index: number): SVGNumber;
+ [index: number]: SVGNumber;
+}
+
+declare var SVGNumberList: {
+ prototype: SVGNumberList;
+ new(): SVGNumberList;
+};
+
+/**
+ * Corresponds to the <path> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPathElement)
+ */
+interface SVGPathElement extends SVGGeometryElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGPathElement: {
+ prototype: SVGPathElement;
+ new(): SVGPathElement;
+};
+
+/**
+ * Corresponds to the <pattern> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPatternElement)
+ */
+interface SVGPatternElement extends SVGElement, SVGFitToViewBox, SVGURIReference {
+ readonly height: SVGAnimatedLength;
+ readonly patternContentUnits: SVGAnimatedEnumeration;
+ readonly patternTransform: SVGAnimatedTransformList;
+ readonly patternUnits: SVGAnimatedEnumeration;
+ readonly width: SVGAnimatedLength;
+ readonly x: SVGAnimatedLength;
+ readonly y: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPatternElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPatternElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGPatternElement: {
+ prototype: SVGPatternElement;
+ new(): SVGPatternElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList) */
+interface SVGPointList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/numberOfItems) */
+ readonly numberOfItems: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/appendItem) */
+ appendItem(newItem: DOMPoint): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/clear) */
+ clear(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/getItem) */
+ getItem(index: number): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/initialize) */
+ initialize(newItem: DOMPoint): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/insertItemBefore) */
+ insertItemBefore(newItem: DOMPoint, index: number): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/removeItem) */
+ removeItem(index: number): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPointList/replaceItem) */
+ replaceItem(newItem: DOMPoint, index: number): DOMPoint;
+ [index: number]: DOMPoint;
+}
+
+declare var SVGPointList: {
+ prototype: SVGPointList;
+ new(): SVGPointList;
+};
+
+/**
+ * Provides access to the properties of <polygon> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPolygonElement)
+ */
+interface SVGPolygonElement extends SVGGeometryElement, SVGAnimatedPoints {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolygonElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolygonElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGPolygonElement: {
+ prototype: SVGPolygonElement;
+ new(): SVGPolygonElement;
+};
+
+/**
+ * Provides access to the properties of <polyline> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPolylineElement)
+ */
+interface SVGPolylineElement extends SVGGeometryElement, SVGAnimatedPoints {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolylineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGPolylineElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGPolylineElement: {
+ prototype: SVGPolylineElement;
+ new(): SVGPolylineElement;
+};
+
+/**
+ * Corresponds to the preserveAspectRatio attribute, which is available for some of SVG's elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGPreserveAspectRatio)
+ */
+interface SVGPreserveAspectRatio {
+ align: number;
+ meetOrSlice: number;
+ readonly SVG_PRESERVEASPECTRATIO_UNKNOWN: 0;
+ readonly SVG_PRESERVEASPECTRATIO_NONE: 1;
+ readonly SVG_PRESERVEASPECTRATIO_XMINYMIN: 2;
+ readonly SVG_PRESERVEASPECTRATIO_XMIDYMIN: 3;
+ readonly SVG_PRESERVEASPECTRATIO_XMAXYMIN: 4;
+ readonly SVG_PRESERVEASPECTRATIO_XMINYMID: 5;
+ readonly SVG_PRESERVEASPECTRATIO_XMIDYMID: 6;
+ readonly SVG_PRESERVEASPECTRATIO_XMAXYMID: 7;
+ readonly SVG_PRESERVEASPECTRATIO_XMINYMAX: 8;
+ readonly SVG_PRESERVEASPECTRATIO_XMIDYMAX: 9;
+ readonly SVG_PRESERVEASPECTRATIO_XMAXYMAX: 10;
+ readonly SVG_MEETORSLICE_UNKNOWN: 0;
+ readonly SVG_MEETORSLICE_MEET: 1;
+ readonly SVG_MEETORSLICE_SLICE: 2;
+}
+
+declare var SVGPreserveAspectRatio: {
+ prototype: SVGPreserveAspectRatio;
+ new(): SVGPreserveAspectRatio;
+ readonly SVG_PRESERVEASPECTRATIO_UNKNOWN: 0;
+ readonly SVG_PRESERVEASPECTRATIO_NONE: 1;
+ readonly SVG_PRESERVEASPECTRATIO_XMINYMIN: 2;
+ readonly SVG_PRESERVEASPECTRATIO_XMIDYMIN: 3;
+ readonly SVG_PRESERVEASPECTRATIO_XMAXYMIN: 4;
+ readonly SVG_PRESERVEASPECTRATIO_XMINYMID: 5;
+ readonly SVG_PRESERVEASPECTRATIO_XMIDYMID: 6;
+ readonly SVG_PRESERVEASPECTRATIO_XMAXYMID: 7;
+ readonly SVG_PRESERVEASPECTRATIO_XMINYMAX: 8;
+ readonly SVG_PRESERVEASPECTRATIO_XMIDYMAX: 9;
+ readonly SVG_PRESERVEASPECTRATIO_XMAXYMAX: 10;
+ readonly SVG_MEETORSLICE_UNKNOWN: 0;
+ readonly SVG_MEETORSLICE_MEET: 1;
+ readonly SVG_MEETORSLICE_SLICE: 2;
+};
+
+/**
+ * Corresponds to the <RadialGradient> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGRadialGradientElement)
+ */
+interface SVGRadialGradientElement extends SVGGradientElement {
+ readonly cx: SVGAnimatedLength;
+ readonly cy: SVGAnimatedLength;
+ readonly fr: SVGAnimatedLength;
+ readonly fx: SVGAnimatedLength;
+ readonly fy: SVGAnimatedLength;
+ readonly r: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRadialGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRadialGradientElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGRadialGradientElement: {
+ prototype: SVGRadialGradientElement;
+ new(): SVGRadialGradientElement;
+};
+
+/**
+ * Provides access to the properties of <rect> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGRectElement)
+ */
+interface SVGRectElement extends SVGGeometryElement {
+ readonly height: SVGAnimatedLength;
+ readonly rx: SVGAnimatedLength;
+ readonly ry: SVGAnimatedLength;
+ readonly width: SVGAnimatedLength;
+ readonly x: SVGAnimatedLength;
+ readonly y: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGRectElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGRectElement: {
+ prototype: SVGRectElement;
+ new(): SVGRectElement;
+};
+
+interface SVGSVGElementEventMap extends SVGElementEventMap, WindowEventHandlersEventMap {
+}
+
+/**
+ * Provides access to the properties of <svg> elements, as well as methods to manipulate them. This interface contains also various miscellaneous commonly-used utility methods, such as matrix operations and the ability to control the time of redraw on visual rendering devices.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSVGElement)
+ */
+interface SVGSVGElement extends SVGGraphicsElement, SVGFitToViewBox, WindowEventHandlers {
+ currentScale: number;
+ readonly currentTranslate: DOMPointReadOnly;
+ readonly height: SVGAnimatedLength;
+ readonly width: SVGAnimatedLength;
+ readonly x: SVGAnimatedLength;
+ readonly y: SVGAnimatedLength;
+ animationsPaused(): boolean;
+ checkEnclosure(element: SVGElement, rect: DOMRectReadOnly): boolean;
+ checkIntersection(element: SVGElement, rect: DOMRectReadOnly): boolean;
+ createSVGAngle(): SVGAngle;
+ createSVGLength(): SVGLength;
+ createSVGMatrix(): DOMMatrix;
+ createSVGNumber(): SVGNumber;
+ createSVGPoint(): DOMPoint;
+ createSVGRect(): DOMRect;
+ createSVGTransform(): SVGTransform;
+ createSVGTransformFromMatrix(matrix?: DOMMatrix2DInit): SVGTransform;
+ deselectAll(): void;
+ /** @deprecated */
+ forceRedraw(): void;
+ getCurrentTime(): number;
+ getElementById(elementId: string): Element;
+ getEnclosureList(rect: DOMRectReadOnly, referenceElement: SVGElement | null): NodeListOf<SVGCircleElement | SVGEllipseElement | SVGImageElement | SVGLineElement | SVGPathElement | SVGPolygonElement | SVGPolylineElement | SVGRectElement | SVGTextElement | SVGUseElement>;
+ getIntersectionList(rect: DOMRectReadOnly, referenceElement: SVGElement | null): NodeListOf<SVGCircleElement | SVGEllipseElement | SVGImageElement | SVGLineElement | SVGPathElement | SVGPolygonElement | SVGPolylineElement | SVGRectElement | SVGTextElement | SVGUseElement>;
+ pauseAnimations(): void;
+ setCurrentTime(seconds: number): void;
+ /** @deprecated */
+ suspendRedraw(maxWaitMilliseconds: number): number;
+ unpauseAnimations(): void;
+ /** @deprecated */
+ unsuspendRedraw(suspendHandleID: number): void;
+ /** @deprecated */
+ unsuspendRedrawAll(): void;
+ addEventListener<K extends keyof SVGSVGElementEventMap>(type: K, listener: (this: SVGSVGElement, ev: SVGSVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGSVGElementEventMap>(type: K, listener: (this: SVGSVGElement, ev: SVGSVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGSVGElement: {
+ prototype: SVGSVGElement;
+ new(): SVGSVGElement;
+};
+
+/**
+ * Corresponds to the SVG <script> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGScriptElement)
+ */
+interface SVGScriptElement extends SVGElement, SVGURIReference {
+ type: string;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGScriptElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGScriptElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGScriptElement: {
+ prototype: SVGScriptElement;
+ new(): SVGScriptElement;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSetElement) */
+interface SVGSetElement extends SVGAnimationElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSetElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSetElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGSetElement: {
+ prototype: SVGSetElement;
+ new(): SVGSetElement;
+};
+
+/**
+ * Corresponds to the <stop> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStopElement)
+ */
+interface SVGStopElement extends SVGElement {
+ readonly offset: SVGAnimatedNumber;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStopElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStopElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGStopElement: {
+ prototype: SVGStopElement;
+ new(): SVGStopElement;
+};
+
+/**
+ * The SVGStringList defines a list of DOMString objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStringList)
+ */
+interface SVGStringList {
+ readonly length: number;
+ readonly numberOfItems: number;
+ appendItem(newItem: string): string;
+ clear(): void;
+ getItem(index: number): string;
+ initialize(newItem: string): string;
+ insertItemBefore(newItem: string, index: number): string;
+ removeItem(index: number): string;
+ replaceItem(newItem: string, index: number): string;
+ [index: number]: string;
+}
+
+declare var SVGStringList: {
+ prototype: SVGStringList;
+ new(): SVGStringList;
+};
+
+/**
+ * Corresponds to the SVG <style> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement)
+ */
+interface SVGStyleElement extends SVGElement, LinkStyle {
+ disabled: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement/media) */
+ media: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement/title) */
+ title: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGStyleElement/type)
+ */
+ type: string;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStyleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGStyleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGStyleElement: {
+ prototype: SVGStyleElement;
+ new(): SVGStyleElement;
+};
+
+/**
+ * Corresponds to the <switch> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSwitchElement)
+ */
+interface SVGSwitchElement extends SVGGraphicsElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSwitchElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSwitchElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGSwitchElement: {
+ prototype: SVGSwitchElement;
+ new(): SVGSwitchElement;
+};
+
+/**
+ * Corresponds to the <symbol> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGSymbolElement)
+ */
+interface SVGSymbolElement extends SVGElement, SVGFitToViewBox {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSymbolElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGSymbolElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGSymbolElement: {
+ prototype: SVGSymbolElement;
+ new(): SVGSymbolElement;
+};
+
+/**
+ * A <tspan> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTSpanElement)
+ */
+interface SVGTSpanElement extends SVGTextPositioningElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTSpanElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTSpanElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGTSpanElement: {
+ prototype: SVGTSpanElement;
+ new(): SVGTSpanElement;
+};
+
+interface SVGTests {
+ readonly requiredExtensions: SVGStringList;
+ readonly systemLanguage: SVGStringList;
+}
+
+/**
+ * Implemented by elements that support rendering child text content. It is inherited by various text-related interfaces, such as SVGTextElement, SVGTSpanElement, SVGTRefElement, SVGAltGlyphElement and SVGTextPathElement.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextContentElement)
+ */
+interface SVGTextContentElement extends SVGGraphicsElement {
+ readonly lengthAdjust: SVGAnimatedEnumeration;
+ readonly textLength: SVGAnimatedLength;
+ getCharNumAtPosition(point?: DOMPointInit): number;
+ getComputedTextLength(): number;
+ getEndPositionOfChar(charnum: number): DOMPoint;
+ getExtentOfChar(charnum: number): DOMRect;
+ getNumberOfChars(): number;
+ getRotationOfChar(charnum: number): number;
+ getStartPositionOfChar(charnum: number): DOMPoint;
+ getSubStringLength(charnum: number, nchars: number): number;
+ /** @deprecated */
+ selectSubString(charnum: number, nchars: number): void;
+ readonly LENGTHADJUST_UNKNOWN: 0;
+ readonly LENGTHADJUST_SPACING: 1;
+ readonly LENGTHADJUST_SPACINGANDGLYPHS: 2;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextContentElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextContentElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGTextContentElement: {
+ prototype: SVGTextContentElement;
+ new(): SVGTextContentElement;
+ readonly LENGTHADJUST_UNKNOWN: 0;
+ readonly LENGTHADJUST_SPACING: 1;
+ readonly LENGTHADJUST_SPACINGANDGLYPHS: 2;
+};
+
+/**
+ * Corresponds to the <text> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextElement)
+ */
+interface SVGTextElement extends SVGTextPositioningElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGTextElement: {
+ prototype: SVGTextElement;
+ new(): SVGTextElement;
+};
+
+/**
+ * Corresponds to the <textPath> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextPathElement)
+ */
+interface SVGTextPathElement extends SVGTextContentElement, SVGURIReference {
+ readonly method: SVGAnimatedEnumeration;
+ readonly spacing: SVGAnimatedEnumeration;
+ readonly startOffset: SVGAnimatedLength;
+ readonly TEXTPATH_METHODTYPE_UNKNOWN: 0;
+ readonly TEXTPATH_METHODTYPE_ALIGN: 1;
+ readonly TEXTPATH_METHODTYPE_STRETCH: 2;
+ readonly TEXTPATH_SPACINGTYPE_UNKNOWN: 0;
+ readonly TEXTPATH_SPACINGTYPE_AUTO: 1;
+ readonly TEXTPATH_SPACINGTYPE_EXACT: 2;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPathElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGTextPathElement: {
+ prototype: SVGTextPathElement;
+ new(): SVGTextPathElement;
+ readonly TEXTPATH_METHODTYPE_UNKNOWN: 0;
+ readonly TEXTPATH_METHODTYPE_ALIGN: 1;
+ readonly TEXTPATH_METHODTYPE_STRETCH: 2;
+ readonly TEXTPATH_SPACINGTYPE_UNKNOWN: 0;
+ readonly TEXTPATH_SPACINGTYPE_AUTO: 1;
+ readonly TEXTPATH_SPACINGTYPE_EXACT: 2;
+};
+
+/**
+ * Implemented by elements that support attributes that position individual text glyphs. It is inherited by SVGTextElement, SVGTSpanElement, SVGTRefElement and SVGAltGlyphElement.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTextPositioningElement)
+ */
+interface SVGTextPositioningElement extends SVGTextContentElement {
+ readonly dx: SVGAnimatedLengthList;
+ readonly dy: SVGAnimatedLengthList;
+ readonly rotate: SVGAnimatedNumberList;
+ readonly x: SVGAnimatedLengthList;
+ readonly y: SVGAnimatedLengthList;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPositioningElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTextPositioningElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGTextPositioningElement: {
+ prototype: SVGTextPositioningElement;
+ new(): SVGTextPositioningElement;
+};
+
+/**
+ * Corresponds to the <title> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTitleElement)
+ */
+interface SVGTitleElement extends SVGElement {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTitleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGTitleElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGTitleElement: {
+ prototype: SVGTitleElement;
+ new(): SVGTitleElement;
+};
+
+/**
+ * SVGTransform is the interface for one of the component transformations within an SVGTransformList; thus, an SVGTransform object corresponds to a single component (e.g., scale(…) or matrix(…)) within a transform attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTransform)
+ */
+interface SVGTransform {
+ readonly angle: number;
+ readonly matrix: DOMMatrix;
+ readonly type: number;
+ setMatrix(matrix?: DOMMatrix2DInit): void;
+ setRotate(angle: number, cx: number, cy: number): void;
+ setScale(sx: number, sy: number): void;
+ setSkewX(angle: number): void;
+ setSkewY(angle: number): void;
+ setTranslate(tx: number, ty: number): void;
+ readonly SVG_TRANSFORM_UNKNOWN: 0;
+ readonly SVG_TRANSFORM_MATRIX: 1;
+ readonly SVG_TRANSFORM_TRANSLATE: 2;
+ readonly SVG_TRANSFORM_SCALE: 3;
+ readonly SVG_TRANSFORM_ROTATE: 4;
+ readonly SVG_TRANSFORM_SKEWX: 5;
+ readonly SVG_TRANSFORM_SKEWY: 6;
+}
+
+declare var SVGTransform: {
+ prototype: SVGTransform;
+ new(): SVGTransform;
+ readonly SVG_TRANSFORM_UNKNOWN: 0;
+ readonly SVG_TRANSFORM_MATRIX: 1;
+ readonly SVG_TRANSFORM_TRANSLATE: 2;
+ readonly SVG_TRANSFORM_SCALE: 3;
+ readonly SVG_TRANSFORM_ROTATE: 4;
+ readonly SVG_TRANSFORM_SKEWX: 5;
+ readonly SVG_TRANSFORM_SKEWY: 6;
+};
+
+/**
+ * The SVGTransformList defines a list of SVGTransform objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGTransformList)
+ */
+interface SVGTransformList {
+ readonly length: number;
+ readonly numberOfItems: number;
+ appendItem(newItem: SVGTransform): SVGTransform;
+ clear(): void;
+ consolidate(): SVGTransform | null;
+ createSVGTransformFromMatrix(matrix?: DOMMatrix2DInit): SVGTransform;
+ getItem(index: number): SVGTransform;
+ initialize(newItem: SVGTransform): SVGTransform;
+ insertItemBefore(newItem: SVGTransform, index: number): SVGTransform;
+ removeItem(index: number): SVGTransform;
+ replaceItem(newItem: SVGTransform, index: number): SVGTransform;
+ [index: number]: SVGTransform;
+}
+
+declare var SVGTransformList: {
+ prototype: SVGTransformList;
+ new(): SVGTransformList;
+};
+
+interface SVGURIReference {
+ readonly href: SVGAnimatedString;
+}
+
+/**
+ * A commonly used set of constants used for reflecting gradientUnits, patternContentUnits and other similar attributes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGUnitTypes)
+ */
+interface SVGUnitTypes {
+ readonly SVG_UNIT_TYPE_UNKNOWN: 0;
+ readonly SVG_UNIT_TYPE_USERSPACEONUSE: 1;
+ readonly SVG_UNIT_TYPE_OBJECTBOUNDINGBOX: 2;
+}
+
+declare var SVGUnitTypes: {
+ prototype: SVGUnitTypes;
+ new(): SVGUnitTypes;
+ readonly SVG_UNIT_TYPE_UNKNOWN: 0;
+ readonly SVG_UNIT_TYPE_USERSPACEONUSE: 1;
+ readonly SVG_UNIT_TYPE_OBJECTBOUNDINGBOX: 2;
+};
+
+/**
+ * Corresponds to the <use> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGUseElement)
+ */
+interface SVGUseElement extends SVGGraphicsElement, SVGURIReference {
+ readonly height: SVGAnimatedLength;
+ readonly width: SVGAnimatedLength;
+ readonly x: SVGAnimatedLength;
+ readonly y: SVGAnimatedLength;
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGUseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGUseElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGUseElement: {
+ prototype: SVGUseElement;
+ new(): SVGUseElement;
+};
+
+/**
+ * Provides access to the properties of <view> elements, as well as methods to manipulate them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGViewElement)
+ */
+interface SVGViewElement extends SVGElement, SVGFitToViewBox {
+ addEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGViewElement, ev: SVGElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SVGElementEventMap>(type: K, listener: (this: SVGViewElement, ev: SVGElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SVGViewElement: {
+ prototype: SVGViewElement;
+ new(): SVGViewElement;
+};
+
+/**
+ * A screen, usually the one on which the current window is being rendered, and is obtained using window.screen.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen)
+ */
+interface Screen {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/availHeight) */
+ readonly availHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/availWidth) */
+ readonly availWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/colorDepth) */
+ readonly colorDepth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/height) */
+ readonly height: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/orientation) */
+ readonly orientation: ScreenOrientation;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/pixelDepth) */
+ readonly pixelDepth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Screen/width) */
+ readonly width: number;
+}
+
+declare var Screen: {
+ prototype: Screen;
+ new(): Screen;
+};
+
+interface ScreenOrientationEventMap {
+ "change": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation) */
+interface ScreenOrientation extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/angle) */
+ readonly angle: number;
+ onchange: ((this: ScreenOrientation, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/type) */
+ readonly type: OrientationType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScreenOrientation/unlock) */
+ unlock(): void;
+ addEventListener<K extends keyof ScreenOrientationEventMap>(type: K, listener: (this: ScreenOrientation, ev: ScreenOrientationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ScreenOrientationEventMap>(type: K, listener: (this: ScreenOrientation, ev: ScreenOrientationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ScreenOrientation: {
+ prototype: ScreenOrientation;
+ new(): ScreenOrientation;
+};
+
+interface ScriptProcessorNodeEventMap {
+ "audioprocess": AudioProcessingEvent;
+}
+
+/**
+ * Allows the generation, processing, or analyzing of audio using JavaScript.
+ * @deprecated As of the August 29 2014 Web Audio API spec publication, this feature has been marked as deprecated, and was replaced by AudioWorklet (see AudioWorkletNode).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScriptProcessorNode)
+ */
+interface ScriptProcessorNode extends AudioNode {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScriptProcessorNode/bufferSize)
+ */
+ readonly bufferSize: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ScriptProcessorNode/audioprocess_event)
+ */
+ onaudioprocess: ((this: ScriptProcessorNode, ev: AudioProcessingEvent) => any) | null;
+ addEventListener<K extends keyof ScriptProcessorNodeEventMap>(type: K, listener: (this: ScriptProcessorNode, ev: ScriptProcessorNodeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ScriptProcessorNodeEventMap>(type: K, listener: (this: ScriptProcessorNode, ev: ScriptProcessorNodeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+/** @deprecated */
+declare var ScriptProcessorNode: {
+ prototype: ScriptProcessorNode;
+ new(): ScriptProcessorNode;
+};
+
+/**
+ * Inherits from Event, and represents the event object of an event sent on a document or worker when its content security policy is violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent)
+ */
+interface SecurityPolicyViolationEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/blockedURI) */
+ readonly blockedURI: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/columnNumber) */
+ readonly columnNumber: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/disposition) */
+ readonly disposition: SecurityPolicyViolationEventDisposition;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/documentURI) */
+ readonly documentURI: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/effectiveDirective) */
+ readonly effectiveDirective: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/lineNumber) */
+ readonly lineNumber: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/originalPolicy) */
+ readonly originalPolicy: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/referrer) */
+ readonly referrer: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/sample) */
+ readonly sample: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/sourceFile) */
+ readonly sourceFile: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/statusCode) */
+ readonly statusCode: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/violatedDirective) */
+ readonly violatedDirective: string;
+}
+
+declare var SecurityPolicyViolationEvent: {
+ prototype: SecurityPolicyViolationEvent;
+ new(type: string, eventInitDict?: SecurityPolicyViolationEventInit): SecurityPolicyViolationEvent;
+};
+
+/**
+ * A Selection object represents the range of text selected by the user or the current position of the caret. To obtain a Selection object for examination or modification, call Window.getSelection().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection)
+ */
+interface Selection {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/anchorNode) */
+ readonly anchorNode: Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/anchorOffset) */
+ readonly anchorOffset: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/focusNode) */
+ readonly focusNode: Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/focusOffset) */
+ readonly focusOffset: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/isCollapsed) */
+ readonly isCollapsed: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/rangeCount) */
+ readonly rangeCount: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/type) */
+ readonly type: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/addRange) */
+ addRange(range: Range): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapse) */
+ collapse(node: Node | null, offset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapseToEnd) */
+ collapseToEnd(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapseToStart) */
+ collapseToStart(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/containsNode) */
+ containsNode(node: Node, allowPartialContainment?: boolean): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/deleteFromDocument) */
+ deleteFromDocument(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/removeAllRanges) */
+ empty(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/extend) */
+ extend(node: Node, offset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/getRangeAt) */
+ getRangeAt(index: number): Range;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/modify) */
+ modify(alter?: string, direction?: string, granularity?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/removeAllRanges) */
+ removeAllRanges(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/removeRange) */
+ removeRange(range: Range): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/selectAllChildren) */
+ selectAllChildren(node: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/setBaseAndExtent) */
+ setBaseAndExtent(anchorNode: Node, anchorOffset: number, focusNode: Node, focusOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Selection/collapse) */
+ setPosition(node: Node | null, offset?: number): void;
+ toString(): string;
+}
+
+declare var Selection: {
+ prototype: Selection;
+ new(): Selection;
+};
+
+interface ServiceWorkerEventMap extends AbstractWorkerEventMap {
+ "statechange": Event;
+}
+
+/**
+ * This ServiceWorker API interface provides a reference to a service worker. Multiple browsing contexts (e.g. pages, workers, etc.) can be associated with the same service worker, each through a unique ServiceWorker object.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker)
+ */
+interface ServiceWorker extends EventTarget, AbstractWorker {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/statechange_event) */
+ onstatechange: ((this: ServiceWorker, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/scriptURL) */
+ readonly scriptURL: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/state) */
+ readonly state: ServiceWorkerState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/postMessage) */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+ addEventListener<K extends keyof ServiceWorkerEventMap>(type: K, listener: (this: ServiceWorker, ev: ServiceWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ServiceWorkerEventMap>(type: K, listener: (this: ServiceWorker, ev: ServiceWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ServiceWorker: {
+ prototype: ServiceWorker;
+ new(): ServiceWorker;
+};
+
+interface ServiceWorkerContainerEventMap {
+ "controllerchange": Event;
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/**
+ * The ServiceWorkerContainer interface of the ServiceWorker API provides an object representing the service worker as an overall unit in the network ecosystem, including facilities to register, unregister and update service workers, and access the state of service workers and their registrations.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer)
+ */
+interface ServiceWorkerContainer extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/controller) */
+ readonly controller: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/controllerchange_event) */
+ oncontrollerchange: ((this: ServiceWorkerContainer, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/message_event) */
+ onmessage: ((this: ServiceWorkerContainer, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/messageerror_event) */
+ onmessageerror: ((this: ServiceWorkerContainer, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/ready) */
+ readonly ready: Promise<ServiceWorkerRegistration>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistration) */
+ getRegistration(clientURL?: string | URL): Promise<ServiceWorkerRegistration | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistrations) */
+ getRegistrations(): Promise<ReadonlyArray<ServiceWorkerRegistration>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/register) */
+ register(scriptURL: string | URL, options?: RegistrationOptions): Promise<ServiceWorkerRegistration>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/startMessages) */
+ startMessages(): void;
+ addEventListener<K extends keyof ServiceWorkerContainerEventMap>(type: K, listener: (this: ServiceWorkerContainer, ev: ServiceWorkerContainerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ServiceWorkerContainerEventMap>(type: K, listener: (this: ServiceWorkerContainer, ev: ServiceWorkerContainerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ServiceWorkerContainer: {
+ prototype: ServiceWorkerContainer;
+ new(): ServiceWorkerContainer;
+};
+
+interface ServiceWorkerRegistrationEventMap {
+ "updatefound": Event;
+}
+
+/**
+ * This ServiceWorker API interface represents the service worker registration. You register a service worker to control one or more pages that share the same origin.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration)
+ */
+interface ServiceWorkerRegistration extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/active) */
+ readonly active: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/installing) */
+ readonly installing: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/navigationPreload) */
+ readonly navigationPreload: NavigationPreloadManager;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/updatefound_event) */
+ onupdatefound: ((this: ServiceWorkerRegistration, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/pushManager) */
+ readonly pushManager: PushManager;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/scope) */
+ readonly scope: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/updateViaCache) */
+ readonly updateViaCache: ServiceWorkerUpdateViaCache;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/waiting) */
+ readonly waiting: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/getNotifications) */
+ getNotifications(filter?: GetNotificationOptions): Promise<Notification[]>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/showNotification) */
+ showNotification(title: string, options?: NotificationOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/unregister) */
+ unregister(): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/update) */
+ update(): Promise<void>;
+ addEventListener<K extends keyof ServiceWorkerRegistrationEventMap>(type: K, listener: (this: ServiceWorkerRegistration, ev: ServiceWorkerRegistrationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ServiceWorkerRegistrationEventMap>(type: K, listener: (this: ServiceWorkerRegistration, ev: ServiceWorkerRegistrationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ServiceWorkerRegistration: {
+ prototype: ServiceWorkerRegistration;
+ new(): ServiceWorkerRegistration;
+};
+
+interface ShadowRootEventMap {
+ "slotchange": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot) */
+interface ShadowRoot extends DocumentFragment, DocumentOrShadowRoot, InnerHTML {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/delegatesFocus) */
+ readonly delegatesFocus: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/host) */
+ readonly host: Element;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/mode) */
+ readonly mode: ShadowRootMode;
+ onslotchange: ((this: ShadowRoot, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ShadowRoot/slotAssignment) */
+ readonly slotAssignment: SlotAssignmentMode;
+ /** Throws a "NotSupportedError" DOMException if context object is a shadow root. */
+ addEventListener<K extends keyof ShadowRootEventMap>(type: K, listener: (this: ShadowRoot, ev: ShadowRootEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ShadowRootEventMap>(type: K, listener: (this: ShadowRoot, ev: ShadowRootEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ShadowRoot: {
+ prototype: ShadowRoot;
+ new(): ShadowRoot;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorker) */
+interface SharedWorker extends EventTarget, AbstractWorker {
+ /**
+ * Returns sharedWorker's MessagePort object which can be used to communicate with the global environment.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorker/port)
+ */
+ readonly port: MessagePort;
+ addEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: SharedWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: SharedWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SharedWorker: {
+ prototype: SharedWorker;
+ new(scriptURL: string | URL, options?: string | WorkerOptions): SharedWorker;
+};
+
+interface Slottable {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/assignedSlot) */
+ readonly assignedSlot: HTMLSlotElement | null;
+}
+
+interface SourceBufferEventMap {
+ "abort": Event;
+ "error": Event;
+ "update": Event;
+ "updateend": Event;
+ "updatestart": Event;
+}
+
+/**
+ * A chunk of media to be passed into an HTMLMediaElement and played, via a MediaSource object. This can be made up of one or several media segments.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer)
+ */
+interface SourceBuffer extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowEnd) */
+ appendWindowEnd: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendWindowStart) */
+ appendWindowStart: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/buffered) */
+ readonly buffered: TimeRanges;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/mode) */
+ mode: AppendMode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/abort_event) */
+ onabort: ((this: SourceBuffer, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/error_event) */
+ onerror: ((this: SourceBuffer, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/update_event) */
+ onupdate: ((this: SourceBuffer, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/updateend_event) */
+ onupdateend: ((this: SourceBuffer, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/updatestart_event) */
+ onupdatestart: ((this: SourceBuffer, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/timestampOffset) */
+ timestampOffset: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/updating) */
+ readonly updating: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/abort) */
+ abort(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/appendBuffer) */
+ appendBuffer(data: BufferSource): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/changeType) */
+ changeType(type: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBuffer/remove) */
+ remove(start: number, end: number): void;
+ addEventListener<K extends keyof SourceBufferEventMap>(type: K, listener: (this: SourceBuffer, ev: SourceBufferEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SourceBufferEventMap>(type: K, listener: (this: SourceBuffer, ev: SourceBufferEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SourceBuffer: {
+ prototype: SourceBuffer;
+ new(): SourceBuffer;
+};
+
+interface SourceBufferListEventMap {
+ "addsourcebuffer": Event;
+ "removesourcebuffer": Event;
+}
+
+/**
+ * A simple container list for multiple SourceBuffer objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList)
+ */
+interface SourceBufferList extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList/addsourcebuffer_event) */
+ onaddsourcebuffer: ((this: SourceBufferList, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SourceBufferList/removesourcebuffer_event) */
+ onremovesourcebuffer: ((this: SourceBufferList, ev: Event) => any) | null;
+ addEventListener<K extends keyof SourceBufferListEventMap>(type: K, listener: (this: SourceBufferList, ev: SourceBufferListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SourceBufferListEventMap>(type: K, listener: (this: SourceBufferList, ev: SourceBufferListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+ [index: number]: SourceBuffer;
+}
+
+declare var SourceBufferList: {
+ prototype: SourceBufferList;
+ new(): SourceBufferList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionAlternative) */
+interface SpeechRecognitionAlternative {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionAlternative/confidence) */
+ readonly confidence: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionAlternative/transcript) */
+ readonly transcript: string;
+}
+
+declare var SpeechRecognitionAlternative: {
+ prototype: SpeechRecognitionAlternative;
+ new(): SpeechRecognitionAlternative;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult) */
+interface SpeechRecognitionResult {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult/isFinal) */
+ readonly isFinal: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResult/item) */
+ item(index: number): SpeechRecognitionAlternative;
+ [index: number]: SpeechRecognitionAlternative;
+}
+
+declare var SpeechRecognitionResult: {
+ prototype: SpeechRecognitionResult;
+ new(): SpeechRecognitionResult;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResultList) */
+interface SpeechRecognitionResultList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResultList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechRecognitionResultList/item) */
+ item(index: number): SpeechRecognitionResult;
+ [index: number]: SpeechRecognitionResult;
+}
+
+declare var SpeechRecognitionResultList: {
+ prototype: SpeechRecognitionResultList;
+ new(): SpeechRecognitionResultList;
+};
+
+interface SpeechSynthesisEventMap {
+ "voiceschanged": Event;
+}
+
+/**
+ * This Web Speech API interface is the controller interface for the speech service; this can be used to retrieve information about the synthesis voices available on the device, start and pause speech, and other commands besides.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis)
+ */
+interface SpeechSynthesis extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/voiceschanged_event) */
+ onvoiceschanged: ((this: SpeechSynthesis, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/paused) */
+ readonly paused: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/pending) */
+ readonly pending: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/speaking) */
+ readonly speaking: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/cancel) */
+ cancel(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/getVoices) */
+ getVoices(): SpeechSynthesisVoice[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/pause) */
+ pause(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/resume) */
+ resume(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesis/speak) */
+ speak(utterance: SpeechSynthesisUtterance): void;
+ addEventListener<K extends keyof SpeechSynthesisEventMap>(type: K, listener: (this: SpeechSynthesis, ev: SpeechSynthesisEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SpeechSynthesisEventMap>(type: K, listener: (this: SpeechSynthesis, ev: SpeechSynthesisEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SpeechSynthesis: {
+ prototype: SpeechSynthesis;
+ new(): SpeechSynthesis;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisErrorEvent) */
+interface SpeechSynthesisErrorEvent extends SpeechSynthesisEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisErrorEvent/error) */
+ readonly error: SpeechSynthesisErrorCode;
+}
+
+declare var SpeechSynthesisErrorEvent: {
+ prototype: SpeechSynthesisErrorEvent;
+ new(type: string, eventInitDict: SpeechSynthesisErrorEventInit): SpeechSynthesisErrorEvent;
+};
+
+/**
+ * This Web Speech API interface contains information about the current state of SpeechSynthesisUtterance objects that have been processed in the speech service.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent)
+ */
+interface SpeechSynthesisEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/charIndex) */
+ readonly charIndex: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/charLength) */
+ readonly charLength: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/elapsedTime) */
+ readonly elapsedTime: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisEvent/utterance) */
+ readonly utterance: SpeechSynthesisUtterance;
+}
+
+declare var SpeechSynthesisEvent: {
+ prototype: SpeechSynthesisEvent;
+ new(type: string, eventInitDict: SpeechSynthesisEventInit): SpeechSynthesisEvent;
+};
+
+interface SpeechSynthesisUtteranceEventMap {
+ "boundary": SpeechSynthesisEvent;
+ "end": SpeechSynthesisEvent;
+ "error": SpeechSynthesisErrorEvent;
+ "mark": SpeechSynthesisEvent;
+ "pause": SpeechSynthesisEvent;
+ "resume": SpeechSynthesisEvent;
+ "start": SpeechSynthesisEvent;
+}
+
+/**
+ * This Web Speech API interface represents a speech request. It contains the content the speech service should read and information about how to read it (e.g. language, pitch and volume.)
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance)
+ */
+interface SpeechSynthesisUtterance extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/lang) */
+ lang: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/boundary_event) */
+ onboundary: ((this: SpeechSynthesisUtterance, ev: SpeechSynthesisEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/end_event) */
+ onend: ((this: SpeechSynthesisUtterance, ev: SpeechSynthesisEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/error_event) */
+ onerror: ((this: SpeechSynthesisUtterance, ev: SpeechSynthesisErrorEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/mark_event) */
+ onmark: ((this: SpeechSynthesisUtterance, ev: SpeechSynthesisEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/pause_event) */
+ onpause: ((this: SpeechSynthesisUtterance, ev: SpeechSynthesisEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/resume_event) */
+ onresume: ((this: SpeechSynthesisUtterance, ev: SpeechSynthesisEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/start_event) */
+ onstart: ((this: SpeechSynthesisUtterance, ev: SpeechSynthesisEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/pitch) */
+ pitch: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/rate) */
+ rate: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/text) */
+ text: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/voice) */
+ voice: SpeechSynthesisVoice | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisUtterance/volume) */
+ volume: number;
+ addEventListener<K extends keyof SpeechSynthesisUtteranceEventMap>(type: K, listener: (this: SpeechSynthesisUtterance, ev: SpeechSynthesisUtteranceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SpeechSynthesisUtteranceEventMap>(type: K, listener: (this: SpeechSynthesisUtterance, ev: SpeechSynthesisUtteranceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SpeechSynthesisUtterance: {
+ prototype: SpeechSynthesisUtterance;
+ new(text?: string): SpeechSynthesisUtterance;
+};
+
+/**
+ * This Web Speech API interface represents a voice that the system supports. Every SpeechSynthesisVoice has its own relative speech service including information about language, name and URI.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice)
+ */
+interface SpeechSynthesisVoice {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/default) */
+ readonly default: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/lang) */
+ readonly lang: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/localService) */
+ readonly localService: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SpeechSynthesisVoice/voiceURI) */
+ readonly voiceURI: string;
+}
+
+declare var SpeechSynthesisVoice: {
+ prototype: SpeechSynthesisVoice;
+ new(): SpeechSynthesisVoice;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StaticRange) */
+interface StaticRange extends AbstractRange {
+}
+
+declare var StaticRange: {
+ prototype: StaticRange;
+ new(init: StaticRangeInit): StaticRange;
+};
+
+/**
+ * The pan property takes a unitless value between -1 (full left pan) and 1 (full right pan). This interface was introduced as a much simpler way to apply a simple panning effect than having to use a full PannerNode.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StereoPannerNode)
+ */
+interface StereoPannerNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StereoPannerNode/pan) */
+ readonly pan: AudioParam;
+}
+
+declare var StereoPannerNode: {
+ prototype: StereoPannerNode;
+ new(context: BaseAudioContext, options?: StereoPannerOptions): StereoPannerNode;
+};
+
+/**
+ * This Web Storage API interface provides access to a particular domain's session or local storage. It allows, for example, the addition, modification, or deletion of stored data items.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage)
+ */
+interface Storage {
+ /**
+ * Returns the number of key/value pairs.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/length)
+ */
+ readonly length: number;
+ /**
+ * Removes all key/value pairs, if there are any.
+ *
+ * Dispatches a storage event on Window objects holding an equivalent Storage object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/clear)
+ */
+ clear(): void;
+ /**
+ * Returns the current value associated with the given key, or null if the given key does not exist.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/getItem)
+ */
+ getItem(key: string): string | null;
+ /**
+ * Returns the name of the nth key, or null if n is greater than or equal to the number of key/value pairs.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/key)
+ */
+ key(index: number): string | null;
+ /**
+ * Removes the key/value pair with the given key, if a key/value pair with the given key exists.
+ *
+ * Dispatches a storage event on Window objects holding an equivalent Storage object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/removeItem)
+ */
+ removeItem(key: string): void;
+ /**
+ * Sets the value of the pair identified by key to value, creating a new key/value pair if none existed for key previously.
+ *
+ * Throws a "QuotaExceededError" DOMException exception if the new value couldn't be set. (Setting could fail if, e.g., the user has disabled storage for the site, or if the quota has been exceeded.)
+ *
+ * Dispatches a storage event on Window objects holding an equivalent Storage object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Storage/setItem)
+ */
+ setItem(key: string, value: string): void;
+ [name: string]: any;
+}
+
+declare var Storage: {
+ prototype: Storage;
+ new(): Storage;
+};
+
+/**
+ * A StorageEvent is sent to a window when a storage area it has access to is changed within the context of another document.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent)
+ */
+interface StorageEvent extends Event {
+ /**
+ * Returns the key of the storage item being changed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/key)
+ */
+ readonly key: string | null;
+ /**
+ * Returns the new value of the key of the storage item whose value is being changed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/newValue)
+ */
+ readonly newValue: string | null;
+ /**
+ * Returns the old value of the key of the storage item whose value is being changed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/oldValue)
+ */
+ readonly oldValue: string | null;
+ /**
+ * Returns the Storage object that was affected.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/storageArea)
+ */
+ readonly storageArea: Storage | null;
+ /**
+ * Returns the URL of the document whose storage item changed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/url)
+ */
+ readonly url: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageEvent/initStorageEvent)
+ */
+ initStorageEvent(type: string, bubbles?: boolean, cancelable?: boolean, key?: string | null, oldValue?: string | null, newValue?: string | null, url?: string | URL, storageArea?: Storage | null): void;
+}
+
+declare var StorageEvent: {
+ prototype: StorageEvent;
+ new(type: string, eventInitDict?: StorageEventInit): StorageEvent;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager)
+ */
+interface StorageManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/estimate) */
+ estimate(): Promise<StorageEstimate>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/getDirectory) */
+ getDirectory(): Promise<FileSystemDirectoryHandle>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/persist) */
+ persist(): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/persisted) */
+ persisted(): Promise<boolean>;
+}
+
+declare var StorageManager: {
+ prototype: StorageManager;
+ new(): StorageManager;
+};
+
+/** @deprecated */
+interface StyleMedia {
+ type: string;
+ matchMedium(mediaquery: string): boolean;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMap) */
+interface StylePropertyMap extends StylePropertyMapReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMap/append) */
+ append(property: string, ...values: (CSSStyleValue | string)[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMap/clear) */
+ clear(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMap/delete) */
+ delete(property: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMap/set) */
+ set(property: string, ...values: (CSSStyleValue | string)[]): void;
+}
+
+declare var StylePropertyMap: {
+ prototype: StylePropertyMap;
+ new(): StylePropertyMap;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly) */
+interface StylePropertyMapReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/size) */
+ readonly size: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/get) */
+ get(property: string): undefined | CSSStyleValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/getAll) */
+ getAll(property: string): CSSStyleValue[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/has) */
+ has(property: string): boolean;
+ forEach(callbackfn: (value: CSSStyleValue[], key: string, parent: StylePropertyMapReadOnly) => void, thisArg?: any): void;
+}
+
+declare var StylePropertyMapReadOnly: {
+ prototype: StylePropertyMapReadOnly;
+ new(): StylePropertyMapReadOnly;
+};
+
+/**
+ * A single style sheet. CSS style sheets will further implement the more specialized CSSStyleSheet interface.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet)
+ */
+interface StyleSheet {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/disabled) */
+ disabled: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/href) */
+ readonly href: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/media) */
+ readonly media: MediaList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/ownerNode) */
+ readonly ownerNode: Element | ProcessingInstruction | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/parentStyleSheet) */
+ readonly parentStyleSheet: CSSStyleSheet | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/title) */
+ readonly title: string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheet/type) */
+ readonly type: string;
+}
+
+declare var StyleSheet: {
+ prototype: StyleSheet;
+ new(): StyleSheet;
+};
+
+/**
+ * A list of StyleSheet.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheetList)
+ */
+interface StyleSheetList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheetList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StyleSheetList/item) */
+ item(index: number): CSSStyleSheet | null;
+ [index: number]: CSSStyleSheet;
+}
+
+declare var StyleSheetList: {
+ prototype: StyleSheetList;
+ new(): StyleSheetList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubmitEvent) */
+interface SubmitEvent extends Event {
+ /**
+ * Returns the element representing the submit button that triggered the form submission, or null if the submission was not triggered by a button.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubmitEvent/submitter)
+ */
+ readonly submitter: HTMLElement | null;
+}
+
+declare var SubmitEvent: {
+ prototype: SubmitEvent;
+ new(type: string, eventInitDict?: SubmitEventInit): SubmitEvent;
+};
+
+/**
+ * This Web Crypto API interface provides a number of low-level cryptographic functions. It is accessed via the Crypto.subtle properties available in a window context (via Window.crypto).
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto)
+ */
+interface SubtleCrypto {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/decrypt) */
+ decrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveBits) */
+ deriveBits(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) */
+ deriveKey(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/digest) */
+ digest(algorithm: AlgorithmIdentifier, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/encrypt) */
+ encrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/exportKey) */
+ exportKey(format: "jwk", key: CryptoKey): Promise<JsonWebKey>;
+ exportKey(format: Exclude<KeyFormat, "jwk">, key: CryptoKey): Promise<ArrayBuffer>;
+ exportKey(format: KeyFormat, key: CryptoKey): Promise<ArrayBuffer | JsonWebKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) */
+ generateKey(algorithm: "Ed25519", extractable: boolean, keyUsages: ReadonlyArray<"sign" | "verify">): Promise<CryptoKeyPair>;
+ generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKeyPair>;
+ generateKey(algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ generateKey(algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKeyPair | CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) */
+ importKey(format: "jwk", keyData: JsonWebKey, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ importKey(format: Exclude<KeyFormat, "jwk">, keyData: BufferSource, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/sign) */
+ sign(algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) */
+ unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/verify) */
+ verify(algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams, key: CryptoKey, signature: BufferSource, data: BufferSource): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/wrapKey) */
+ wrapKey(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams): Promise<ArrayBuffer>;
+}
+
+declare var SubtleCrypto: {
+ prototype: SubtleCrypto;
+ new(): SubtleCrypto;
+};
+
+/**
+ * The textual content of Element or Attr. If an element has no markup within its content, it has a single child implementing Text that contains the element's text. However, if the element contains markup, it is parsed into information items and Text nodes that form its children.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Text)
+ */
+interface Text extends CharacterData, Slottable {
+ /**
+ * Returns the combined data of all direct Text node siblings.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Text/wholeText)
+ */
+ readonly wholeText: string;
+ /**
+ * Splits data at the given offset and returns the remainder as Text node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Text/splitText)
+ */
+ splitText(offset: number): Text;
+}
+
+declare var Text: {
+ prototype: Text;
+ new(data?: string): Text;
+};
+
+/**
+ * A decoder for a specific method, that is a specific character encoding, like utf-8, iso-8859-2, koi8, cp1261, gbk, etc. A decoder takes a stream of bytes as input and emits a stream of code points. For a more scalable, non-native library, see StringView – a C-like representation of strings based on typed arrays.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder)
+ */
+interface TextDecoder extends TextDecoderCommon {
+ /**
+ * Returns the result of running encoding's decoder. The method can be invoked zero or more times with options's stream set to true, and then once without options's stream (or set to false), to process a fragmented input. If the invocation without options's stream (or set to false) has no input, it's clearest to omit both arguments.
+ *
+ * \`\`\`
+ * var string = "", decoder = new TextDecoder(encoding), buffer;
+ * while(buffer = next_chunk()) {
+ * string += decoder.decode(buffer, {stream:true});
+ * }
+ * string += decoder.decode(); // end-of-queue
+ * \`\`\`
+ *
+ * If the error mode is "fatal" and encoding's decoder returns error, throws a TypeError.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/decode)
+ */
+ decode(input?: AllowSharedBufferSource, options?: TextDecodeOptions): string;
+}
+
+declare var TextDecoder: {
+ prototype: TextDecoder;
+ new(label?: string, options?: TextDecoderOptions): TextDecoder;
+};
+
+interface TextDecoderCommon {
+ /**
+ * Returns encoding's name, lowercased.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/encoding)
+ */
+ readonly encoding: string;
+ /**
+ * Returns true if error mode is "fatal", otherwise false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/fatal)
+ */
+ readonly fatal: boolean;
+ /**
+ * Returns the value of ignore BOM.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/ignoreBOM)
+ */
+ readonly ignoreBOM: boolean;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoderStream) */
+interface TextDecoderStream extends GenericTransformStream, TextDecoderCommon {
+ readonly readable: ReadableStream<string>;
+ readonly writable: WritableStream<BufferSource>;
+}
+
+declare var TextDecoderStream: {
+ prototype: TextDecoderStream;
+ new(label?: string, options?: TextDecoderOptions): TextDecoderStream;
+};
+
+/**
+ * TextEncoder takes a stream of code points as input and emits a stream of bytes. For a more scalable, non-native library, see StringView – a C-like representation of strings based on typed arrays.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder)
+ */
+interface TextEncoder extends TextEncoderCommon {
+ /**
+ * Returns the result of running UTF-8's encoder.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encode)
+ */
+ encode(input?: string): Uint8Array;
+ /**
+ * Runs the UTF-8 encoder on source, stores the result of that operation into destination, and returns the progress made as an object wherein read is the number of converted code units of source and written is the number of bytes modified in destination.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encodeInto)
+ */
+ encodeInto(source: string, destination: Uint8Array): TextEncoderEncodeIntoResult;
+}
+
+declare var TextEncoder: {
+ prototype: TextEncoder;
+ new(): TextEncoder;
+};
+
+interface TextEncoderCommon {
+ /**
+ * Returns "utf-8".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encoding)
+ */
+ readonly encoding: string;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoderStream) */
+interface TextEncoderStream extends GenericTransformStream, TextEncoderCommon {
+ readonly readable: ReadableStream<Uint8Array>;
+ readonly writable: WritableStream<string>;
+}
+
+declare var TextEncoderStream: {
+ prototype: TextEncoderStream;
+ new(): TextEncoderStream;
+};
+
+/**
+ * The dimensions of a piece of text in the canvas, as created by the CanvasRenderingContext2D.measureText() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics)
+ */
+interface TextMetrics {
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxAscent)
+ */
+ readonly actualBoundingBoxAscent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxDescent)
+ */
+ readonly actualBoundingBoxDescent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxLeft)
+ */
+ readonly actualBoundingBoxLeft: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxRight)
+ */
+ readonly actualBoundingBoxRight: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/alphabeticBaseline)
+ */
+ readonly alphabeticBaseline: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/emHeightAscent)
+ */
+ readonly emHeightAscent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/emHeightDescent)
+ */
+ readonly emHeightDescent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/fontBoundingBoxAscent)
+ */
+ readonly fontBoundingBoxAscent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/fontBoundingBoxDescent)
+ */
+ readonly fontBoundingBoxDescent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/hangingBaseline)
+ */
+ readonly hangingBaseline: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/ideographicBaseline)
+ */
+ readonly ideographicBaseline: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/width)
+ */
+ readonly width: number;
+}
+
+declare var TextMetrics: {
+ prototype: TextMetrics;
+ new(): TextMetrics;
+};
+
+interface TextTrackEventMap {
+ "cuechange": Event;
+}
+
+/**
+ * This interface also inherits properties from EventTarget.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack)
+ */
+interface TextTrack extends EventTarget {
+ /**
+ * Returns the text track cues from the text track list of cues that are currently active (i.e. that start before the current playback position and end after it), as a TextTrackCueList object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/activeCues)
+ */
+ readonly activeCues: TextTrackCueList | null;
+ /**
+ * Returns the text track list of cues, as a TextTrackCueList object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/cues)
+ */
+ readonly cues: TextTrackCueList | null;
+ /**
+ * Returns the ID of the given track.
+ *
+ * For in-band tracks, this is the ID that can be used with a fragment if the format supports media fragment syntax, and that can be used with the getTrackById() method.
+ *
+ * For TextTrack objects corresponding to track elements, this is the ID of the track element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/id)
+ */
+ readonly id: string;
+ /**
+ * Returns the text track in-band metadata track dispatch type string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/inBandMetadataTrackDispatchType)
+ */
+ readonly inBandMetadataTrackDispatchType: string;
+ /**
+ * Returns the text track kind string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/kind)
+ */
+ readonly kind: TextTrackKind;
+ /**
+ * Returns the text track label, if there is one, or the empty string otherwise (indicating that a custom label probably needs to be generated from the other attributes of the object if the object is exposed to the user).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/label)
+ */
+ readonly label: string;
+ /**
+ * Returns the text track language string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/language)
+ */
+ readonly language: string;
+ /**
+ * Returns the text track mode, represented by a string from the following list:
+ *
+ * Can be set, to change the mode.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/mode)
+ */
+ mode: TextTrackMode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/cuechange_event) */
+ oncuechange: ((this: TextTrack, ev: Event) => any) | null;
+ /**
+ * Adds the given cue to textTrack's text track list of cues.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/addCue)
+ */
+ addCue(cue: TextTrackCue): void;
+ /**
+ * Removes the given cue from textTrack's text track list of cues.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrack/removeCue)
+ */
+ removeCue(cue: TextTrackCue): void;
+ addEventListener<K extends keyof TextTrackEventMap>(type: K, listener: (this: TextTrack, ev: TextTrackEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof TextTrackEventMap>(type: K, listener: (this: TextTrack, ev: TextTrackEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var TextTrack: {
+ prototype: TextTrack;
+ new(): TextTrack;
+};
+
+interface TextTrackCueEventMap {
+ "enter": Event;
+ "exit": Event;
+}
+
+/**
+ * TextTrackCues represent a string of text that will be displayed for some duration of time on a TextTrack. This includes the start and end times that the cue will be displayed. A TextTrackCue cannot be used directly, instead one of the derived types (e.g. VTTCue) must be used.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue)
+ */
+interface TextTrackCue extends EventTarget {
+ /**
+ * Returns the text track cue end time, in seconds.
+ *
+ * Can be set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/endTime)
+ */
+ endTime: number;
+ /**
+ * Returns the text track cue identifier.
+ *
+ * Can be set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/id)
+ */
+ id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/enter_event) */
+ onenter: ((this: TextTrackCue, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/exit_event) */
+ onexit: ((this: TextTrackCue, ev: Event) => any) | null;
+ /**
+ * Returns true if the text track cue pause-on-exit flag is set, false otherwise.
+ *
+ * Can be set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/pauseOnExit)
+ */
+ pauseOnExit: boolean;
+ /**
+ * Returns the text track cue start time, in seconds.
+ *
+ * Can be set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/startTime)
+ */
+ startTime: number;
+ /**
+ * Returns the TextTrack object to which this text track cue belongs, if any, or null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCue/track)
+ */
+ readonly track: TextTrack | null;
+ addEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: TextTrackCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: TextTrackCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var TextTrackCue: {
+ prototype: TextTrackCue;
+ new(): TextTrackCue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCueList) */
+interface TextTrackCueList {
+ /**
+ * Returns the number of cues in the list.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCueList/length)
+ */
+ readonly length: number;
+ /**
+ * Returns the first text track cue (in text track cue order) with text track cue identifier id.
+ *
+ * Returns null if none of the cues have the given identifier or if the argument is the empty string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackCueList/getCueById)
+ */
+ getCueById(id: string): TextTrackCue | null;
+ [index: number]: TextTrackCue;
+}
+
+declare var TextTrackCueList: {
+ prototype: TextTrackCueList;
+ new(): TextTrackCueList;
+};
+
+interface TextTrackListEventMap {
+ "addtrack": TrackEvent;
+ "change": Event;
+ "removetrack": TrackEvent;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList) */
+interface TextTrackList extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/addtrack_event) */
+ onaddtrack: ((this: TextTrackList, ev: TrackEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/change_event) */
+ onchange: ((this: TextTrackList, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/removetrack_event) */
+ onremovetrack: ((this: TextTrackList, ev: TrackEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextTrackList/getTrackById) */
+ getTrackById(id: string): TextTrack | null;
+ addEventListener<K extends keyof TextTrackListEventMap>(type: K, listener: (this: TextTrackList, ev: TextTrackListEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof TextTrackListEventMap>(type: K, listener: (this: TextTrackList, ev: TextTrackListEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+ [index: number]: TextTrack;
+}
+
+declare var TextTrackList: {
+ prototype: TextTrackList;
+ new(): TextTrackList;
+};
+
+/**
+ * Used to represent a set of time ranges, primarily for the purpose of tracking which portions of media have been buffered when loading it for use by the <audio> and <video> elements.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges)
+ */
+interface TimeRanges {
+ /**
+ * Returns the number of ranges in the object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges/length)
+ */
+ readonly length: number;
+ /**
+ * Returns the time for the end of the range with the given index.
+ *
+ * Throws an "IndexSizeError" DOMException if the index is out of range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges/end)
+ */
+ end(index: number): number;
+ /**
+ * Returns the time for the start of the range with the given index.
+ *
+ * Throws an "IndexSizeError" DOMException if the index is out of range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TimeRanges/start)
+ */
+ start(index: number): number;
+}
+
+declare var TimeRanges: {
+ prototype: TimeRanges;
+ new(): TimeRanges;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent) */
+interface ToggleEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/newState) */
+ readonly newState: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/oldState) */
+ readonly oldState: string;
+}
+
+declare var ToggleEvent: {
+ prototype: ToggleEvent;
+ new(type: string, eventInitDict?: ToggleEventInit): ToggleEvent;
+};
+
+/**
+ * A single contact point on a touch-sensitive device. The contact point is commonly a finger or stylus and the device may be a touchscreen or trackpad.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch)
+ */
+interface Touch {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/clientX) */
+ readonly clientX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/clientY) */
+ readonly clientY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/force) */
+ readonly force: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/identifier) */
+ readonly identifier: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/pageX) */
+ readonly pageX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/pageY) */
+ readonly pageY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/radiusX) */
+ readonly radiusX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/radiusY) */
+ readonly radiusY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/rotationAngle) */
+ readonly rotationAngle: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/screenX) */
+ readonly screenX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/screenY) */
+ readonly screenY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Touch/target) */
+ readonly target: EventTarget;
+}
+
+declare var Touch: {
+ prototype: Touch;
+ new(touchInitDict: TouchInit): Touch;
+};
+
+/**
+ * An event sent when the state of contacts with a touch-sensitive surface changes. This surface can be a touch screen or trackpad, for example. The event can describe one or more points of contact with the screen and includes support for detecting movement, addition and removal of contact points, and so forth.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent)
+ */
+interface TouchEvent extends UIEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/altKey) */
+ readonly altKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/changedTouches) */
+ readonly changedTouches: TouchList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/ctrlKey) */
+ readonly ctrlKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/metaKey) */
+ readonly metaKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/shiftKey) */
+ readonly shiftKey: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/targetTouches) */
+ readonly targetTouches: TouchList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchEvent/touches) */
+ readonly touches: TouchList;
+}
+
+declare var TouchEvent: {
+ prototype: TouchEvent;
+ new(type: string, eventInitDict?: TouchEventInit): TouchEvent;
+};
+
+/**
+ * A list of contact points on a touch surface. For example, if the user has three fingers on the touch surface (such as a screen or trackpad), the corresponding TouchList object would have one Touch object for each finger, for a total of three entries.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchList)
+ */
+interface TouchList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TouchList/item) */
+ item(index: number): Touch | null;
+ [index: number]: Touch;
+}
+
+declare var TouchList: {
+ prototype: TouchList;
+ new(): TouchList;
+};
+
+/**
+ * The TrackEvent interface, part of the HTML DOM specification, is used for events which represent changes to the set of available tracks on an HTML media element; these events are addtrack and removetrack.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TrackEvent)
+ */
+interface TrackEvent extends Event {
+ /**
+ * Returns the track object (TextTrack, AudioTrack, or VideoTrack) to which the event relates.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TrackEvent/track)
+ */
+ readonly track: TextTrack | null;
+}
+
+declare var TrackEvent: {
+ prototype: TrackEvent;
+ new(type: string, eventInitDict?: TrackEventInit): TrackEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream) */
+interface TransformStream<I = any, O = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/readable) */
+ readonly readable: ReadableStream<O>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/writable) */
+ readonly writable: WritableStream<I>;
+}
+
+declare var TransformStream: {
+ prototype: TransformStream;
+ new<I = any, O = any>(transformer?: Transformer<I, O>, writableStrategy?: QueuingStrategy<I>, readableStrategy?: QueuingStrategy<O>): TransformStream<I, O>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController) */
+interface TransformStreamDefaultController<O = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/enqueue) */
+ enqueue(chunk?: O): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/error) */
+ error(reason?: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/terminate) */
+ terminate(): void;
+}
+
+declare var TransformStreamDefaultController: {
+ prototype: TransformStreamDefaultController;
+ new(): TransformStreamDefaultController;
+};
+
+/**
+ * Events providing information related to transitions.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent)
+ */
+interface TransitionEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent/elapsedTime) */
+ readonly elapsedTime: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent/propertyName) */
+ readonly propertyName: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransitionEvent/pseudoElement) */
+ readonly pseudoElement: string;
+}
+
+declare var TransitionEvent: {
+ prototype: TransitionEvent;
+ new(type: string, transitionEventInitDict?: TransitionEventInit): TransitionEvent;
+};
+
+/**
+ * The nodes of a document subtree and a position within them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker)
+ */
+interface TreeWalker {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/currentNode) */
+ currentNode: Node;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/filter) */
+ readonly filter: NodeFilter | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/root) */
+ readonly root: Node;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/whatToShow) */
+ readonly whatToShow: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/firstChild) */
+ firstChild(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/lastChild) */
+ lastChild(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/nextNode) */
+ nextNode(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/nextSibling) */
+ nextSibling(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/parentNode) */
+ parentNode(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/previousNode) */
+ previousNode(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TreeWalker/previousSibling) */
+ previousSibling(): Node | null;
+}
+
+declare var TreeWalker: {
+ prototype: TreeWalker;
+ new(): TreeWalker;
+};
+
+/**
+ * Simple user interface events.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent)
+ */
+interface UIEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/detail) */
+ readonly detail: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/view) */
+ readonly view: Window | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/which)
+ */
+ readonly which: number;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/UIEvent/initUIEvent)
+ */
+ initUIEvent(typeArg: string, bubblesArg?: boolean, cancelableArg?: boolean, viewArg?: Window | null, detailArg?: number): void;
+}
+
+declare var UIEvent: {
+ prototype: UIEvent;
+ new(type: string, eventInitDict?: UIEventInit): UIEvent;
+};
+
+/**
+ * The URL interface represents an object providing static methods used for creating object URLs.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL)
+ */
+interface URL {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hash) */
+ hash: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/host) */
+ host: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hostname) */
+ hostname: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/href) */
+ href: string;
+ toString(): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/origin) */
+ readonly origin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/password) */
+ password: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/pathname) */
+ pathname: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/port) */
+ port: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/protocol) */
+ protocol: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/search) */
+ search: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/searchParams) */
+ readonly searchParams: URLSearchParams;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/username) */
+ username: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/toJSON) */
+ toJSON(): string;
+}
+
+declare var URL: {
+ prototype: URL;
+ new(url: string | URL, base?: string | URL): URL;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */
+ canParse(url: string | URL, base?: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) */
+ createObjectURL(obj: Blob | MediaSource): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) */
+ revokeObjectURL(url: string): void;
+};
+
+type webkitURL = URL;
+declare var webkitURL: typeof URL;
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams) */
+interface URLSearchParams {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/size) */
+ readonly size: number;
+ /**
+ * Appends a specified key/value pair as a new search parameter.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/append)
+ */
+ append(name: string, value: string): void;
+ /**
+ * Deletes the given search parameter, and its associated value, from the list of all search parameters.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/delete)
+ */
+ delete(name: string, value?: string): void;
+ /**
+ * Returns the first value associated to the given search parameter.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/get)
+ */
+ get(name: string): string | null;
+ /**
+ * Returns all the values association with a given search parameter.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/getAll)
+ */
+ getAll(name: string): string[];
+ /**
+ * Returns a Boolean indicating if such a search parameter exists.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/has)
+ */
+ has(name: string, value?: string): boolean;
+ /**
+ * Sets the value associated to a given search parameter to the given value. If there were several values, delete the others.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/set)
+ */
+ set(name: string, value: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/sort) */
+ sort(): void;
+ /** Returns a string containing a query string suitable for use in a URL. Does not include the question mark. */
+ toString(): string;
+ forEach(callbackfn: (value: string, key: string, parent: URLSearchParams) => void, thisArg?: any): void;
+}
+
+declare var URLSearchParams: {
+ prototype: URLSearchParams;
+ new(init?: string[][] | Record<string, string> | string | URLSearchParams): URLSearchParams;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UserActivation) */
+interface UserActivation {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UserActivation/hasBeenActive) */
+ readonly hasBeenActive: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/UserActivation/hasBeenActive) */
+ readonly isActive: boolean;
+}
+
+declare var UserActivation: {
+ prototype: UserActivation;
+ new(): UserActivation;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue) */
+interface VTTCue extends TextTrackCue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/align) */
+ align: AlignSetting;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/line) */
+ line: LineAndPositionSetting;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/lineAlign) */
+ lineAlign: LineAlignSetting;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/position) */
+ position: LineAndPositionSetting;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/positionAlign) */
+ positionAlign: PositionAlignSetting;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/region) */
+ region: VTTRegion | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/size) */
+ size: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/snapToLines) */
+ snapToLines: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/text) */
+ text: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/vertical) */
+ vertical: DirectionSetting;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTCue/getCueAsHTML) */
+ getCueAsHTML(): DocumentFragment;
+ addEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: VTTCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof TextTrackCueEventMap>(type: K, listener: (this: VTTCue, ev: TextTrackCueEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var VTTCue: {
+ prototype: VTTCue;
+ new(startTime: number, endTime: number, text: string): VTTCue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion) */
+interface VTTRegion {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/id) */
+ id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/lines) */
+ lines: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/regionAnchorX) */
+ regionAnchorX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/regionAnchorY) */
+ regionAnchorY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/scroll) */
+ scroll: ScrollSetting;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/viewportAnchorX) */
+ viewportAnchorX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/viewportAnchorY) */
+ viewportAnchorY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VTTRegion/width) */
+ width: number;
+}
+
+declare var VTTRegion: {
+ prototype: VTTRegion;
+ new(): VTTRegion;
+};
+
+/**
+ * The validity states that an element can be in, with respect to constraint validation. Together, they help explain why an element's value fails to validate, if it's not valid.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState)
+ */
+interface ValidityState {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/badInput) */
+ readonly badInput: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/customError) */
+ readonly customError: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/patternMismatch) */
+ readonly patternMismatch: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/rangeOverflow) */
+ readonly rangeOverflow: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/rangeUnderflow) */
+ readonly rangeUnderflow: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/stepMismatch) */
+ readonly stepMismatch: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/tooLong) */
+ readonly tooLong: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/tooShort) */
+ readonly tooShort: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/typeMismatch) */
+ readonly typeMismatch: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/valid) */
+ readonly valid: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ValidityState/valueMissing) */
+ readonly valueMissing: boolean;
+}
+
+declare var ValidityState: {
+ prototype: ValidityState;
+ new(): ValidityState;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace) */
+interface VideoColorSpace {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/fullRange) */
+ readonly fullRange: boolean | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/matrix) */
+ readonly matrix: VideoMatrixCoefficients | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/primaries) */
+ readonly primaries: VideoColorPrimaries | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/transfer) */
+ readonly transfer: VideoTransferCharacteristics | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/toJSON) */
+ toJSON(): VideoColorSpaceInit;
+}
+
+declare var VideoColorSpace: {
+ prototype: VideoColorSpace;
+ new(init?: VideoColorSpaceInit): VideoColorSpace;
+};
+
+interface VideoDecoderEventMap {
+ "dequeue": Event;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder)
+ */
+interface VideoDecoder extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/decodeQueueSize) */
+ readonly decodeQueueSize: number;
+ ondequeue: ((this: VideoDecoder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/state) */
+ readonly state: CodecState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/configure) */
+ configure(config: VideoDecoderConfig): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/decode) */
+ decode(chunk: EncodedVideoChunk): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/flush) */
+ flush(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/reset) */
+ reset(): void;
+ addEventListener<K extends keyof VideoDecoderEventMap>(type: K, listener: (this: VideoDecoder, ev: VideoDecoderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof VideoDecoderEventMap>(type: K, listener: (this: VideoDecoder, ev: VideoDecoderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var VideoDecoder: {
+ prototype: VideoDecoder;
+ new(init: VideoDecoderInit): VideoDecoder;
+ isConfigSupported(config: VideoDecoderConfig): Promise<VideoDecoderSupport>;
+};
+
+interface VideoEncoderEventMap {
+ "dequeue": Event;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder)
+ */
+interface VideoEncoder extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/encodeQueueSize) */
+ readonly encodeQueueSize: number;
+ ondequeue: ((this: VideoEncoder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/state) */
+ readonly state: CodecState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/configure) */
+ configure(config: VideoEncoderConfig): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/encode) */
+ encode(frame: VideoFrame, options?: VideoEncoderEncodeOptions): void;
+ flush(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/reset) */
+ reset(): void;
+ addEventListener<K extends keyof VideoEncoderEventMap>(type: K, listener: (this: VideoEncoder, ev: VideoEncoderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof VideoEncoderEventMap>(type: K, listener: (this: VideoEncoder, ev: VideoEncoderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var VideoEncoder: {
+ prototype: VideoEncoder;
+ new(init: VideoEncoderInit): VideoEncoder;
+ isConfigSupported(config: VideoEncoderConfig): Promise<VideoEncoderSupport>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame) */
+interface VideoFrame {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedHeight) */
+ readonly codedHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedRect) */
+ readonly codedRect: DOMRectReadOnly | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedWidth) */
+ readonly codedWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/colorSpace) */
+ readonly colorSpace: VideoColorSpace;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayHeight) */
+ readonly displayHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayWidth) */
+ readonly displayWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/duration) */
+ readonly duration: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/format) */
+ readonly format: VideoPixelFormat | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/visibleRect) */
+ readonly visibleRect: DOMRectReadOnly | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/allocationSize) */
+ allocationSize(options?: VideoFrameCopyToOptions): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/clone) */
+ clone(): VideoFrame;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/close) */
+ close(): void;
+ copyTo(destination: AllowSharedBufferSource, options?: VideoFrameCopyToOptions): Promise<PlaneLayout[]>;
+}
+
+declare var VideoFrame: {
+ prototype: VideoFrame;
+ new(image: CanvasImageSource, init?: VideoFrameInit): VideoFrame;
+ new(data: AllowSharedBufferSource, init: VideoFrameBufferInit): VideoFrame;
+};
+
+/**
+ * Returned by the HTMLVideoElement.getVideoPlaybackQuality() method and contains metrics that can be used to determine the playback quality of a video.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality)
+ */
+interface VideoPlaybackQuality {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality/corruptedVideoFrames)
+ */
+ readonly corruptedVideoFrames: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality/creationTime) */
+ readonly creationTime: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality/droppedVideoFrames) */
+ readonly droppedVideoFrames: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoPlaybackQuality/totalVideoFrames) */
+ readonly totalVideoFrames: number;
+}
+
+declare var VideoPlaybackQuality: {
+ prototype: VideoPlaybackQuality;
+ new(): VideoPlaybackQuality;
+};
+
+interface VisualViewportEventMap {
+ "resize": Event;
+ "scroll": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport) */
+interface VisualViewport extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/height) */
+ readonly height: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/offsetLeft) */
+ readonly offsetLeft: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/offsetTop) */
+ readonly offsetTop: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/resize_event) */
+ onresize: ((this: VisualViewport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/scroll_event) */
+ onscroll: ((this: VisualViewport, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/pageLeft) */
+ readonly pageLeft: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/pageTop) */
+ readonly pageTop: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/scale) */
+ readonly scale: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VisualViewport/width) */
+ readonly width: number;
+ addEventListener<K extends keyof VisualViewportEventMap>(type: K, listener: (this: VisualViewport, ev: VisualViewportEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof VisualViewportEventMap>(type: K, listener: (this: VisualViewport, ev: VisualViewportEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var VisualViewport: {
+ prototype: VisualViewport;
+ new(): VisualViewport;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_color_buffer_float) */
+interface WEBGL_color_buffer_float {
+ readonly RGBA32F_EXT: 0x8814;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT: 0x8211;
+ readonly UNSIGNED_NORMALIZED_EXT: 0x8C17;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_astc) */
+interface WEBGL_compressed_texture_astc {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_astc/getSupportedProfiles) */
+ getSupportedProfiles(): string[];
+ readonly COMPRESSED_RGBA_ASTC_4x4_KHR: 0x93B0;
+ readonly COMPRESSED_RGBA_ASTC_5x4_KHR: 0x93B1;
+ readonly COMPRESSED_RGBA_ASTC_5x5_KHR: 0x93B2;
+ readonly COMPRESSED_RGBA_ASTC_6x5_KHR: 0x93B3;
+ readonly COMPRESSED_RGBA_ASTC_6x6_KHR: 0x93B4;
+ readonly COMPRESSED_RGBA_ASTC_8x5_KHR: 0x93B5;
+ readonly COMPRESSED_RGBA_ASTC_8x6_KHR: 0x93B6;
+ readonly COMPRESSED_RGBA_ASTC_8x8_KHR: 0x93B7;
+ readonly COMPRESSED_RGBA_ASTC_10x5_KHR: 0x93B8;
+ readonly COMPRESSED_RGBA_ASTC_10x6_KHR: 0x93B9;
+ readonly COMPRESSED_RGBA_ASTC_10x8_KHR: 0x93BA;
+ readonly COMPRESSED_RGBA_ASTC_10x10_KHR: 0x93BB;
+ readonly COMPRESSED_RGBA_ASTC_12x10_KHR: 0x93BC;
+ readonly COMPRESSED_RGBA_ASTC_12x12_KHR: 0x93BD;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR: 0x93D0;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR: 0x93D1;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR: 0x93D2;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR: 0x93D3;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR: 0x93D4;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR: 0x93D5;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR: 0x93D6;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR: 0x93D7;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR: 0x93D8;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR: 0x93D9;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR: 0x93DA;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR: 0x93DB;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR: 0x93DC;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR: 0x93DD;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_etc) */
+interface WEBGL_compressed_texture_etc {
+ readonly COMPRESSED_R11_EAC: 0x9270;
+ readonly COMPRESSED_SIGNED_R11_EAC: 0x9271;
+ readonly COMPRESSED_RG11_EAC: 0x9272;
+ readonly COMPRESSED_SIGNED_RG11_EAC: 0x9273;
+ readonly COMPRESSED_RGB8_ETC2: 0x9274;
+ readonly COMPRESSED_SRGB8_ETC2: 0x9275;
+ readonly COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9276;
+ readonly COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9277;
+ readonly COMPRESSED_RGBA8_ETC2_EAC: 0x9278;
+ readonly COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 0x9279;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_etc1) */
+interface WEBGL_compressed_texture_etc1 {
+ readonly COMPRESSED_RGB_ETC1_WEBGL: 0x8D64;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_pvrtc) */
+interface WEBGL_compressed_texture_pvrtc {
+ readonly COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 0x8C00;
+ readonly COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 0x8C01;
+ readonly COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 0x8C02;
+ readonly COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 0x8C03;
+}
+
+/**
+ * The WEBGL_compressed_texture_s3tc extension is part of the WebGL API and exposes four S3TC compressed texture formats.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_s3tc)
+ */
+interface WEBGL_compressed_texture_s3tc {
+ readonly COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83F0;
+ readonly COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83F1;
+ readonly COMPRESSED_RGBA_S3TC_DXT3_EXT: 0x83F2;
+ readonly COMPRESSED_RGBA_S3TC_DXT5_EXT: 0x83F3;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_s3tc_srgb) */
+interface WEBGL_compressed_texture_s3tc_srgb {
+ readonly COMPRESSED_SRGB_S3TC_DXT1_EXT: 0x8C4C;
+ readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 0x8C4D;
+ readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 0x8C4E;
+ readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: 0x8C4F;
+}
+
+/**
+ * The WEBGL_debug_renderer_info extension is part of the WebGL API and exposes two constants with information about the graphics driver for debugging purposes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_renderer_info)
+ */
+interface WEBGL_debug_renderer_info {
+ readonly UNMASKED_VENDOR_WEBGL: 0x9245;
+ readonly UNMASKED_RENDERER_WEBGL: 0x9246;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_shaders) */
+interface WEBGL_debug_shaders {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_shaders/getTranslatedShaderSource) */
+ getTranslatedShaderSource(shader: WebGLShader): string;
+}
+
+/**
+ * The WEBGL_depth_texture extension is part of the WebGL API and defines 2D depth and depth-stencil textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_depth_texture)
+ */
+interface WEBGL_depth_texture {
+ readonly UNSIGNED_INT_24_8_WEBGL: 0x84FA;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers) */
+interface WEBGL_draw_buffers {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers/drawBuffersWEBGL) */
+ drawBuffersWEBGL(buffers: GLenum[]): void;
+ readonly COLOR_ATTACHMENT0_WEBGL: 0x8CE0;
+ readonly COLOR_ATTACHMENT1_WEBGL: 0x8CE1;
+ readonly COLOR_ATTACHMENT2_WEBGL: 0x8CE2;
+ readonly COLOR_ATTACHMENT3_WEBGL: 0x8CE3;
+ readonly COLOR_ATTACHMENT4_WEBGL: 0x8CE4;
+ readonly COLOR_ATTACHMENT5_WEBGL: 0x8CE5;
+ readonly COLOR_ATTACHMENT6_WEBGL: 0x8CE6;
+ readonly COLOR_ATTACHMENT7_WEBGL: 0x8CE7;
+ readonly COLOR_ATTACHMENT8_WEBGL: 0x8CE8;
+ readonly COLOR_ATTACHMENT9_WEBGL: 0x8CE9;
+ readonly COLOR_ATTACHMENT10_WEBGL: 0x8CEA;
+ readonly COLOR_ATTACHMENT11_WEBGL: 0x8CEB;
+ readonly COLOR_ATTACHMENT12_WEBGL: 0x8CEC;
+ readonly COLOR_ATTACHMENT13_WEBGL: 0x8CED;
+ readonly COLOR_ATTACHMENT14_WEBGL: 0x8CEE;
+ readonly COLOR_ATTACHMENT15_WEBGL: 0x8CEF;
+ readonly DRAW_BUFFER0_WEBGL: 0x8825;
+ readonly DRAW_BUFFER1_WEBGL: 0x8826;
+ readonly DRAW_BUFFER2_WEBGL: 0x8827;
+ readonly DRAW_BUFFER3_WEBGL: 0x8828;
+ readonly DRAW_BUFFER4_WEBGL: 0x8829;
+ readonly DRAW_BUFFER5_WEBGL: 0x882A;
+ readonly DRAW_BUFFER6_WEBGL: 0x882B;
+ readonly DRAW_BUFFER7_WEBGL: 0x882C;
+ readonly DRAW_BUFFER8_WEBGL: 0x882D;
+ readonly DRAW_BUFFER9_WEBGL: 0x882E;
+ readonly DRAW_BUFFER10_WEBGL: 0x882F;
+ readonly DRAW_BUFFER11_WEBGL: 0x8830;
+ readonly DRAW_BUFFER12_WEBGL: 0x8831;
+ readonly DRAW_BUFFER13_WEBGL: 0x8832;
+ readonly DRAW_BUFFER14_WEBGL: 0x8833;
+ readonly DRAW_BUFFER15_WEBGL: 0x8834;
+ readonly MAX_COLOR_ATTACHMENTS_WEBGL: 0x8CDF;
+ readonly MAX_DRAW_BUFFERS_WEBGL: 0x8824;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context) */
+interface WEBGL_lose_context {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context/loseContext) */
+ loseContext(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context/restoreContext) */
+ restoreContext(): void;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw) */
+interface WEBGL_multi_draw {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysInstancedWEBGL) */
+ multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array | GLint[], firstsOffset: number, countsList: Int32Array | GLsizei[], countsOffset: number, instanceCountsList: Int32Array | GLsizei[], instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysWEBGL) */
+ multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array | GLint[], firstsOffset: number, countsList: Int32Array | GLsizei[], countsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsInstancedWEBGL) */
+ multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | GLsizei[], countsOffset: number, type: GLenum, offsetsList: Int32Array | GLsizei[], offsetsOffset: number, instanceCountsList: Int32Array | GLsizei[], instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsWEBGL) */
+ multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | GLsizei[], countsOffset: number, type: GLenum, offsetsList: Int32Array | GLsizei[], offsetsOffset: number, drawcount: GLsizei): void;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLock)
+ */
+interface WakeLock {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLock/request) */
+ request(type?: WakeLockType): Promise<WakeLockSentinel>;
+}
+
+declare var WakeLock: {
+ prototype: WakeLock;
+ new(): WakeLock;
+};
+
+interface WakeLockSentinelEventMap {
+ "release": Event;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel)
+ */
+interface WakeLockSentinel extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/release_event) */
+ onrelease: ((this: WakeLockSentinel, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/released) */
+ readonly released: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/type) */
+ readonly type: WakeLockType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WakeLockSentinel/release) */
+ release(): Promise<void>;
+ addEventListener<K extends keyof WakeLockSentinelEventMap>(type: K, listener: (this: WakeLockSentinel, ev: WakeLockSentinelEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WakeLockSentinelEventMap>(type: K, listener: (this: WakeLockSentinel, ev: WakeLockSentinelEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var WakeLockSentinel: {
+ prototype: WakeLockSentinel;
+ new(): WakeLockSentinel;
+};
+
+/**
+ * A WaveShaperNode always has exactly one input and one output.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WaveShaperNode)
+ */
+interface WaveShaperNode extends AudioNode {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WaveShaperNode/curve) */
+ curve: Float32Array | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WaveShaperNode/oversample) */
+ oversample: OverSampleType;
+}
+
+declare var WaveShaperNode: {
+ prototype: WaveShaperNode;
+ new(context: BaseAudioContext, options?: WaveShaperOptions): WaveShaperNode;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext) */
+interface WebGL2RenderingContext extends WebGL2RenderingContextBase, WebGL2RenderingContextOverloads, WebGLRenderingContextBase {
+}
+
+declare var WebGL2RenderingContext: {
+ prototype: WebGL2RenderingContext;
+ new(): WebGL2RenderingContext;
+ readonly READ_BUFFER: 0x0C02;
+ readonly UNPACK_ROW_LENGTH: 0x0CF2;
+ readonly UNPACK_SKIP_ROWS: 0x0CF3;
+ readonly UNPACK_SKIP_PIXELS: 0x0CF4;
+ readonly PACK_ROW_LENGTH: 0x0D02;
+ readonly PACK_SKIP_ROWS: 0x0D03;
+ readonly PACK_SKIP_PIXELS: 0x0D04;
+ readonly COLOR: 0x1800;
+ readonly DEPTH: 0x1801;
+ readonly STENCIL: 0x1802;
+ readonly RED: 0x1903;
+ readonly RGB8: 0x8051;
+ readonly RGB10_A2: 0x8059;
+ readonly TEXTURE_BINDING_3D: 0x806A;
+ readonly UNPACK_SKIP_IMAGES: 0x806D;
+ readonly UNPACK_IMAGE_HEIGHT: 0x806E;
+ readonly TEXTURE_3D: 0x806F;
+ readonly TEXTURE_WRAP_R: 0x8072;
+ readonly MAX_3D_TEXTURE_SIZE: 0x8073;
+ readonly UNSIGNED_INT_2_10_10_10_REV: 0x8368;
+ readonly MAX_ELEMENTS_VERTICES: 0x80E8;
+ readonly MAX_ELEMENTS_INDICES: 0x80E9;
+ readonly TEXTURE_MIN_LOD: 0x813A;
+ readonly TEXTURE_MAX_LOD: 0x813B;
+ readonly TEXTURE_BASE_LEVEL: 0x813C;
+ readonly TEXTURE_MAX_LEVEL: 0x813D;
+ readonly MIN: 0x8007;
+ readonly MAX: 0x8008;
+ readonly DEPTH_COMPONENT24: 0x81A6;
+ readonly MAX_TEXTURE_LOD_BIAS: 0x84FD;
+ readonly TEXTURE_COMPARE_MODE: 0x884C;
+ readonly TEXTURE_COMPARE_FUNC: 0x884D;
+ readonly CURRENT_QUERY: 0x8865;
+ readonly QUERY_RESULT: 0x8866;
+ readonly QUERY_RESULT_AVAILABLE: 0x8867;
+ readonly STREAM_READ: 0x88E1;
+ readonly STREAM_COPY: 0x88E2;
+ readonly STATIC_READ: 0x88E5;
+ readonly STATIC_COPY: 0x88E6;
+ readonly DYNAMIC_READ: 0x88E9;
+ readonly DYNAMIC_COPY: 0x88EA;
+ readonly MAX_DRAW_BUFFERS: 0x8824;
+ readonly DRAW_BUFFER0: 0x8825;
+ readonly DRAW_BUFFER1: 0x8826;
+ readonly DRAW_BUFFER2: 0x8827;
+ readonly DRAW_BUFFER3: 0x8828;
+ readonly DRAW_BUFFER4: 0x8829;
+ readonly DRAW_BUFFER5: 0x882A;
+ readonly DRAW_BUFFER6: 0x882B;
+ readonly DRAW_BUFFER7: 0x882C;
+ readonly DRAW_BUFFER8: 0x882D;
+ readonly DRAW_BUFFER9: 0x882E;
+ readonly DRAW_BUFFER10: 0x882F;
+ readonly DRAW_BUFFER11: 0x8830;
+ readonly DRAW_BUFFER12: 0x8831;
+ readonly DRAW_BUFFER13: 0x8832;
+ readonly DRAW_BUFFER14: 0x8833;
+ readonly DRAW_BUFFER15: 0x8834;
+ readonly MAX_FRAGMENT_UNIFORM_COMPONENTS: 0x8B49;
+ readonly MAX_VERTEX_UNIFORM_COMPONENTS: 0x8B4A;
+ readonly SAMPLER_3D: 0x8B5F;
+ readonly SAMPLER_2D_SHADOW: 0x8B62;
+ readonly FRAGMENT_SHADER_DERIVATIVE_HINT: 0x8B8B;
+ readonly PIXEL_PACK_BUFFER: 0x88EB;
+ readonly PIXEL_UNPACK_BUFFER: 0x88EC;
+ readonly PIXEL_PACK_BUFFER_BINDING: 0x88ED;
+ readonly PIXEL_UNPACK_BUFFER_BINDING: 0x88EF;
+ readonly FLOAT_MAT2x3: 0x8B65;
+ readonly FLOAT_MAT2x4: 0x8B66;
+ readonly FLOAT_MAT3x2: 0x8B67;
+ readonly FLOAT_MAT3x4: 0x8B68;
+ readonly FLOAT_MAT4x2: 0x8B69;
+ readonly FLOAT_MAT4x3: 0x8B6A;
+ readonly SRGB: 0x8C40;
+ readonly SRGB8: 0x8C41;
+ readonly SRGB8_ALPHA8: 0x8C43;
+ readonly COMPARE_REF_TO_TEXTURE: 0x884E;
+ readonly RGBA32F: 0x8814;
+ readonly RGB32F: 0x8815;
+ readonly RGBA16F: 0x881A;
+ readonly RGB16F: 0x881B;
+ readonly VERTEX_ATTRIB_ARRAY_INTEGER: 0x88FD;
+ readonly MAX_ARRAY_TEXTURE_LAYERS: 0x88FF;
+ readonly MIN_PROGRAM_TEXEL_OFFSET: 0x8904;
+ readonly MAX_PROGRAM_TEXEL_OFFSET: 0x8905;
+ readonly MAX_VARYING_COMPONENTS: 0x8B4B;
+ readonly TEXTURE_2D_ARRAY: 0x8C1A;
+ readonly TEXTURE_BINDING_2D_ARRAY: 0x8C1D;
+ readonly R11F_G11F_B10F: 0x8C3A;
+ readonly UNSIGNED_INT_10F_11F_11F_REV: 0x8C3B;
+ readonly RGB9_E5: 0x8C3D;
+ readonly UNSIGNED_INT_5_9_9_9_REV: 0x8C3E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_MODE: 0x8C7F;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: 0x8C80;
+ readonly TRANSFORM_FEEDBACK_VARYINGS: 0x8C83;
+ readonly TRANSFORM_FEEDBACK_BUFFER_START: 0x8C84;
+ readonly TRANSFORM_FEEDBACK_BUFFER_SIZE: 0x8C85;
+ readonly TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: 0x8C88;
+ readonly RASTERIZER_DISCARD: 0x8C89;
+ readonly MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: 0x8C8A;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: 0x8C8B;
+ readonly INTERLEAVED_ATTRIBS: 0x8C8C;
+ readonly SEPARATE_ATTRIBS: 0x8C8D;
+ readonly TRANSFORM_FEEDBACK_BUFFER: 0x8C8E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_BINDING: 0x8C8F;
+ readonly RGBA32UI: 0x8D70;
+ readonly RGB32UI: 0x8D71;
+ readonly RGBA16UI: 0x8D76;
+ readonly RGB16UI: 0x8D77;
+ readonly RGBA8UI: 0x8D7C;
+ readonly RGB8UI: 0x8D7D;
+ readonly RGBA32I: 0x8D82;
+ readonly RGB32I: 0x8D83;
+ readonly RGBA16I: 0x8D88;
+ readonly RGB16I: 0x8D89;
+ readonly RGBA8I: 0x8D8E;
+ readonly RGB8I: 0x8D8F;
+ readonly RED_INTEGER: 0x8D94;
+ readonly RGB_INTEGER: 0x8D98;
+ readonly RGBA_INTEGER: 0x8D99;
+ readonly SAMPLER_2D_ARRAY: 0x8DC1;
+ readonly SAMPLER_2D_ARRAY_SHADOW: 0x8DC4;
+ readonly SAMPLER_CUBE_SHADOW: 0x8DC5;
+ readonly UNSIGNED_INT_VEC2: 0x8DC6;
+ readonly UNSIGNED_INT_VEC3: 0x8DC7;
+ readonly UNSIGNED_INT_VEC4: 0x8DC8;
+ readonly INT_SAMPLER_2D: 0x8DCA;
+ readonly INT_SAMPLER_3D: 0x8DCB;
+ readonly INT_SAMPLER_CUBE: 0x8DCC;
+ readonly INT_SAMPLER_2D_ARRAY: 0x8DCF;
+ readonly UNSIGNED_INT_SAMPLER_2D: 0x8DD2;
+ readonly UNSIGNED_INT_SAMPLER_3D: 0x8DD3;
+ readonly UNSIGNED_INT_SAMPLER_CUBE: 0x8DD4;
+ readonly UNSIGNED_INT_SAMPLER_2D_ARRAY: 0x8DD7;
+ readonly DEPTH_COMPONENT32F: 0x8CAC;
+ readonly DEPTH32F_STENCIL8: 0x8CAD;
+ readonly FLOAT_32_UNSIGNED_INT_24_8_REV: 0x8DAD;
+ readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: 0x8210;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: 0x8211;
+ readonly FRAMEBUFFER_ATTACHMENT_RED_SIZE: 0x8212;
+ readonly FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: 0x8213;
+ readonly FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: 0x8214;
+ readonly FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: 0x8215;
+ readonly FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: 0x8216;
+ readonly FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: 0x8217;
+ readonly FRAMEBUFFER_DEFAULT: 0x8218;
+ readonly UNSIGNED_INT_24_8: 0x84FA;
+ readonly DEPTH24_STENCIL8: 0x88F0;
+ readonly UNSIGNED_NORMALIZED: 0x8C17;
+ readonly DRAW_FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly READ_FRAMEBUFFER: 0x8CA8;
+ readonly DRAW_FRAMEBUFFER: 0x8CA9;
+ readonly READ_FRAMEBUFFER_BINDING: 0x8CAA;
+ readonly RENDERBUFFER_SAMPLES: 0x8CAB;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: 0x8CD4;
+ readonly MAX_COLOR_ATTACHMENTS: 0x8CDF;
+ readonly COLOR_ATTACHMENT1: 0x8CE1;
+ readonly COLOR_ATTACHMENT2: 0x8CE2;
+ readonly COLOR_ATTACHMENT3: 0x8CE3;
+ readonly COLOR_ATTACHMENT4: 0x8CE4;
+ readonly COLOR_ATTACHMENT5: 0x8CE5;
+ readonly COLOR_ATTACHMENT6: 0x8CE6;
+ readonly COLOR_ATTACHMENT7: 0x8CE7;
+ readonly COLOR_ATTACHMENT8: 0x8CE8;
+ readonly COLOR_ATTACHMENT9: 0x8CE9;
+ readonly COLOR_ATTACHMENT10: 0x8CEA;
+ readonly COLOR_ATTACHMENT11: 0x8CEB;
+ readonly COLOR_ATTACHMENT12: 0x8CEC;
+ readonly COLOR_ATTACHMENT13: 0x8CED;
+ readonly COLOR_ATTACHMENT14: 0x8CEE;
+ readonly COLOR_ATTACHMENT15: 0x8CEF;
+ readonly FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: 0x8D56;
+ readonly MAX_SAMPLES: 0x8D57;
+ readonly HALF_FLOAT: 0x140B;
+ readonly RG: 0x8227;
+ readonly RG_INTEGER: 0x8228;
+ readonly R8: 0x8229;
+ readonly RG8: 0x822B;
+ readonly R16F: 0x822D;
+ readonly R32F: 0x822E;
+ readonly RG16F: 0x822F;
+ readonly RG32F: 0x8230;
+ readonly R8I: 0x8231;
+ readonly R8UI: 0x8232;
+ readonly R16I: 0x8233;
+ readonly R16UI: 0x8234;
+ readonly R32I: 0x8235;
+ readonly R32UI: 0x8236;
+ readonly RG8I: 0x8237;
+ readonly RG8UI: 0x8238;
+ readonly RG16I: 0x8239;
+ readonly RG16UI: 0x823A;
+ readonly RG32I: 0x823B;
+ readonly RG32UI: 0x823C;
+ readonly VERTEX_ARRAY_BINDING: 0x85B5;
+ readonly R8_SNORM: 0x8F94;
+ readonly RG8_SNORM: 0x8F95;
+ readonly RGB8_SNORM: 0x8F96;
+ readonly RGBA8_SNORM: 0x8F97;
+ readonly SIGNED_NORMALIZED: 0x8F9C;
+ readonly COPY_READ_BUFFER: 0x8F36;
+ readonly COPY_WRITE_BUFFER: 0x8F37;
+ readonly COPY_READ_BUFFER_BINDING: 0x8F36;
+ readonly COPY_WRITE_BUFFER_BINDING: 0x8F37;
+ readonly UNIFORM_BUFFER: 0x8A11;
+ readonly UNIFORM_BUFFER_BINDING: 0x8A28;
+ readonly UNIFORM_BUFFER_START: 0x8A29;
+ readonly UNIFORM_BUFFER_SIZE: 0x8A2A;
+ readonly MAX_VERTEX_UNIFORM_BLOCKS: 0x8A2B;
+ readonly MAX_FRAGMENT_UNIFORM_BLOCKS: 0x8A2D;
+ readonly MAX_COMBINED_UNIFORM_BLOCKS: 0x8A2E;
+ readonly MAX_UNIFORM_BUFFER_BINDINGS: 0x8A2F;
+ readonly MAX_UNIFORM_BLOCK_SIZE: 0x8A30;
+ readonly MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: 0x8A31;
+ readonly MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: 0x8A33;
+ readonly UNIFORM_BUFFER_OFFSET_ALIGNMENT: 0x8A34;
+ readonly ACTIVE_UNIFORM_BLOCKS: 0x8A36;
+ readonly UNIFORM_TYPE: 0x8A37;
+ readonly UNIFORM_SIZE: 0x8A38;
+ readonly UNIFORM_BLOCK_INDEX: 0x8A3A;
+ readonly UNIFORM_OFFSET: 0x8A3B;
+ readonly UNIFORM_ARRAY_STRIDE: 0x8A3C;
+ readonly UNIFORM_MATRIX_STRIDE: 0x8A3D;
+ readonly UNIFORM_IS_ROW_MAJOR: 0x8A3E;
+ readonly UNIFORM_BLOCK_BINDING: 0x8A3F;
+ readonly UNIFORM_BLOCK_DATA_SIZE: 0x8A40;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORMS: 0x8A42;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: 0x8A43;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: 0x8A44;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: 0x8A46;
+ readonly INVALID_INDEX: 0xFFFFFFFF;
+ readonly MAX_VERTEX_OUTPUT_COMPONENTS: 0x9122;
+ readonly MAX_FRAGMENT_INPUT_COMPONENTS: 0x9125;
+ readonly MAX_SERVER_WAIT_TIMEOUT: 0x9111;
+ readonly OBJECT_TYPE: 0x9112;
+ readonly SYNC_CONDITION: 0x9113;
+ readonly SYNC_STATUS: 0x9114;
+ readonly SYNC_FLAGS: 0x9115;
+ readonly SYNC_FENCE: 0x9116;
+ readonly SYNC_GPU_COMMANDS_COMPLETE: 0x9117;
+ readonly UNSIGNALED: 0x9118;
+ readonly SIGNALED: 0x9119;
+ readonly ALREADY_SIGNALED: 0x911A;
+ readonly TIMEOUT_EXPIRED: 0x911B;
+ readonly CONDITION_SATISFIED: 0x911C;
+ readonly WAIT_FAILED: 0x911D;
+ readonly SYNC_FLUSH_COMMANDS_BIT: 0x00000001;
+ readonly VERTEX_ATTRIB_ARRAY_DIVISOR: 0x88FE;
+ readonly ANY_SAMPLES_PASSED: 0x8C2F;
+ readonly ANY_SAMPLES_PASSED_CONSERVATIVE: 0x8D6A;
+ readonly SAMPLER_BINDING: 0x8919;
+ readonly RGB10_A2UI: 0x906F;
+ readonly INT_2_10_10_10_REV: 0x8D9F;
+ readonly TRANSFORM_FEEDBACK: 0x8E22;
+ readonly TRANSFORM_FEEDBACK_PAUSED: 0x8E23;
+ readonly TRANSFORM_FEEDBACK_ACTIVE: 0x8E24;
+ readonly TRANSFORM_FEEDBACK_BINDING: 0x8E25;
+ readonly TEXTURE_IMMUTABLE_FORMAT: 0x912F;
+ readonly MAX_ELEMENT_INDEX: 0x8D6B;
+ readonly TEXTURE_IMMUTABLE_LEVELS: 0x82DF;
+ readonly TIMEOUT_IGNORED: -1;
+ readonly MAX_CLIENT_WAIT_TIMEOUT_WEBGL: 0x9247;
+ readonly DEPTH_BUFFER_BIT: 0x00000100;
+ readonly STENCIL_BUFFER_BIT: 0x00000400;
+ readonly COLOR_BUFFER_BIT: 0x00004000;
+ readonly POINTS: 0x0000;
+ readonly LINES: 0x0001;
+ readonly LINE_LOOP: 0x0002;
+ readonly LINE_STRIP: 0x0003;
+ readonly TRIANGLES: 0x0004;
+ readonly TRIANGLE_STRIP: 0x0005;
+ readonly TRIANGLE_FAN: 0x0006;
+ readonly ZERO: 0;
+ readonly ONE: 1;
+ readonly SRC_COLOR: 0x0300;
+ readonly ONE_MINUS_SRC_COLOR: 0x0301;
+ readonly SRC_ALPHA: 0x0302;
+ readonly ONE_MINUS_SRC_ALPHA: 0x0303;
+ readonly DST_ALPHA: 0x0304;
+ readonly ONE_MINUS_DST_ALPHA: 0x0305;
+ readonly DST_COLOR: 0x0306;
+ readonly ONE_MINUS_DST_COLOR: 0x0307;
+ readonly SRC_ALPHA_SATURATE: 0x0308;
+ readonly FUNC_ADD: 0x8006;
+ readonly BLEND_EQUATION: 0x8009;
+ readonly BLEND_EQUATION_RGB: 0x8009;
+ readonly BLEND_EQUATION_ALPHA: 0x883D;
+ readonly FUNC_SUBTRACT: 0x800A;
+ readonly FUNC_REVERSE_SUBTRACT: 0x800B;
+ readonly BLEND_DST_RGB: 0x80C8;
+ readonly BLEND_SRC_RGB: 0x80C9;
+ readonly BLEND_DST_ALPHA: 0x80CA;
+ readonly BLEND_SRC_ALPHA: 0x80CB;
+ readonly CONSTANT_COLOR: 0x8001;
+ readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
+ readonly CONSTANT_ALPHA: 0x8003;
+ readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
+ readonly BLEND_COLOR: 0x8005;
+ readonly ARRAY_BUFFER: 0x8892;
+ readonly ELEMENT_ARRAY_BUFFER: 0x8893;
+ readonly ARRAY_BUFFER_BINDING: 0x8894;
+ readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
+ readonly STREAM_DRAW: 0x88E0;
+ readonly STATIC_DRAW: 0x88E4;
+ readonly DYNAMIC_DRAW: 0x88E8;
+ readonly BUFFER_SIZE: 0x8764;
+ readonly BUFFER_USAGE: 0x8765;
+ readonly CURRENT_VERTEX_ATTRIB: 0x8626;
+ readonly FRONT: 0x0404;
+ readonly BACK: 0x0405;
+ readonly FRONT_AND_BACK: 0x0408;
+ readonly CULL_FACE: 0x0B44;
+ readonly BLEND: 0x0BE2;
+ readonly DITHER: 0x0BD0;
+ readonly STENCIL_TEST: 0x0B90;
+ readonly DEPTH_TEST: 0x0B71;
+ readonly SCISSOR_TEST: 0x0C11;
+ readonly POLYGON_OFFSET_FILL: 0x8037;
+ readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
+ readonly SAMPLE_COVERAGE: 0x80A0;
+ readonly NO_ERROR: 0;
+ readonly INVALID_ENUM: 0x0500;
+ readonly INVALID_VALUE: 0x0501;
+ readonly INVALID_OPERATION: 0x0502;
+ readonly OUT_OF_MEMORY: 0x0505;
+ readonly CW: 0x0900;
+ readonly CCW: 0x0901;
+ readonly LINE_WIDTH: 0x0B21;
+ readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
+ readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
+ readonly CULL_FACE_MODE: 0x0B45;
+ readonly FRONT_FACE: 0x0B46;
+ readonly DEPTH_RANGE: 0x0B70;
+ readonly DEPTH_WRITEMASK: 0x0B72;
+ readonly DEPTH_CLEAR_VALUE: 0x0B73;
+ readonly DEPTH_FUNC: 0x0B74;
+ readonly STENCIL_CLEAR_VALUE: 0x0B91;
+ readonly STENCIL_FUNC: 0x0B92;
+ readonly STENCIL_FAIL: 0x0B94;
+ readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
+ readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
+ readonly STENCIL_REF: 0x0B97;
+ readonly STENCIL_VALUE_MASK: 0x0B93;
+ readonly STENCIL_WRITEMASK: 0x0B98;
+ readonly STENCIL_BACK_FUNC: 0x8800;
+ readonly STENCIL_BACK_FAIL: 0x8801;
+ readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
+ readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
+ readonly STENCIL_BACK_REF: 0x8CA3;
+ readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
+ readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
+ readonly VIEWPORT: 0x0BA2;
+ readonly SCISSOR_BOX: 0x0C10;
+ readonly COLOR_CLEAR_VALUE: 0x0C22;
+ readonly COLOR_WRITEMASK: 0x0C23;
+ readonly UNPACK_ALIGNMENT: 0x0CF5;
+ readonly PACK_ALIGNMENT: 0x0D05;
+ readonly MAX_TEXTURE_SIZE: 0x0D33;
+ readonly MAX_VIEWPORT_DIMS: 0x0D3A;
+ readonly SUBPIXEL_BITS: 0x0D50;
+ readonly RED_BITS: 0x0D52;
+ readonly GREEN_BITS: 0x0D53;
+ readonly BLUE_BITS: 0x0D54;
+ readonly ALPHA_BITS: 0x0D55;
+ readonly DEPTH_BITS: 0x0D56;
+ readonly STENCIL_BITS: 0x0D57;
+ readonly POLYGON_OFFSET_UNITS: 0x2A00;
+ readonly POLYGON_OFFSET_FACTOR: 0x8038;
+ readonly TEXTURE_BINDING_2D: 0x8069;
+ readonly SAMPLE_BUFFERS: 0x80A8;
+ readonly SAMPLES: 0x80A9;
+ readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
+ readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
+ readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
+ readonly DONT_CARE: 0x1100;
+ readonly FASTEST: 0x1101;
+ readonly NICEST: 0x1102;
+ readonly GENERATE_MIPMAP_HINT: 0x8192;
+ readonly BYTE: 0x1400;
+ readonly UNSIGNED_BYTE: 0x1401;
+ readonly SHORT: 0x1402;
+ readonly UNSIGNED_SHORT: 0x1403;
+ readonly INT: 0x1404;
+ readonly UNSIGNED_INT: 0x1405;
+ readonly FLOAT: 0x1406;
+ readonly DEPTH_COMPONENT: 0x1902;
+ readonly ALPHA: 0x1906;
+ readonly RGB: 0x1907;
+ readonly RGBA: 0x1908;
+ readonly LUMINANCE: 0x1909;
+ readonly LUMINANCE_ALPHA: 0x190A;
+ readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
+ readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
+ readonly UNSIGNED_SHORT_5_6_5: 0x8363;
+ readonly FRAGMENT_SHADER: 0x8B30;
+ readonly VERTEX_SHADER: 0x8B31;
+ readonly MAX_VERTEX_ATTRIBS: 0x8869;
+ readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
+ readonly MAX_VARYING_VECTORS: 0x8DFC;
+ readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
+ readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
+ readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
+ readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
+ readonly SHADER_TYPE: 0x8B4F;
+ readonly DELETE_STATUS: 0x8B80;
+ readonly LINK_STATUS: 0x8B82;
+ readonly VALIDATE_STATUS: 0x8B83;
+ readonly ATTACHED_SHADERS: 0x8B85;
+ readonly ACTIVE_UNIFORMS: 0x8B86;
+ readonly ACTIVE_ATTRIBUTES: 0x8B89;
+ readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
+ readonly CURRENT_PROGRAM: 0x8B8D;
+ readonly NEVER: 0x0200;
+ readonly LESS: 0x0201;
+ readonly EQUAL: 0x0202;
+ readonly LEQUAL: 0x0203;
+ readonly GREATER: 0x0204;
+ readonly NOTEQUAL: 0x0205;
+ readonly GEQUAL: 0x0206;
+ readonly ALWAYS: 0x0207;
+ readonly KEEP: 0x1E00;
+ readonly REPLACE: 0x1E01;
+ readonly INCR: 0x1E02;
+ readonly DECR: 0x1E03;
+ readonly INVERT: 0x150A;
+ readonly INCR_WRAP: 0x8507;
+ readonly DECR_WRAP: 0x8508;
+ readonly VENDOR: 0x1F00;
+ readonly RENDERER: 0x1F01;
+ readonly VERSION: 0x1F02;
+ readonly NEAREST: 0x2600;
+ readonly LINEAR: 0x2601;
+ readonly NEAREST_MIPMAP_NEAREST: 0x2700;
+ readonly LINEAR_MIPMAP_NEAREST: 0x2701;
+ readonly NEAREST_MIPMAP_LINEAR: 0x2702;
+ readonly LINEAR_MIPMAP_LINEAR: 0x2703;
+ readonly TEXTURE_MAG_FILTER: 0x2800;
+ readonly TEXTURE_MIN_FILTER: 0x2801;
+ readonly TEXTURE_WRAP_S: 0x2802;
+ readonly TEXTURE_WRAP_T: 0x2803;
+ readonly TEXTURE_2D: 0x0DE1;
+ readonly TEXTURE: 0x1702;
+ readonly TEXTURE_CUBE_MAP: 0x8513;
+ readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
+ readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
+ readonly TEXTURE0: 0x84C0;
+ readonly TEXTURE1: 0x84C1;
+ readonly TEXTURE2: 0x84C2;
+ readonly TEXTURE3: 0x84C3;
+ readonly TEXTURE4: 0x84C4;
+ readonly TEXTURE5: 0x84C5;
+ readonly TEXTURE6: 0x84C6;
+ readonly TEXTURE7: 0x84C7;
+ readonly TEXTURE8: 0x84C8;
+ readonly TEXTURE9: 0x84C9;
+ readonly TEXTURE10: 0x84CA;
+ readonly TEXTURE11: 0x84CB;
+ readonly TEXTURE12: 0x84CC;
+ readonly TEXTURE13: 0x84CD;
+ readonly TEXTURE14: 0x84CE;
+ readonly TEXTURE15: 0x84CF;
+ readonly TEXTURE16: 0x84D0;
+ readonly TEXTURE17: 0x84D1;
+ readonly TEXTURE18: 0x84D2;
+ readonly TEXTURE19: 0x84D3;
+ readonly TEXTURE20: 0x84D4;
+ readonly TEXTURE21: 0x84D5;
+ readonly TEXTURE22: 0x84D6;
+ readonly TEXTURE23: 0x84D7;
+ readonly TEXTURE24: 0x84D8;
+ readonly TEXTURE25: 0x84D9;
+ readonly TEXTURE26: 0x84DA;
+ readonly TEXTURE27: 0x84DB;
+ readonly TEXTURE28: 0x84DC;
+ readonly TEXTURE29: 0x84DD;
+ readonly TEXTURE30: 0x84DE;
+ readonly TEXTURE31: 0x84DF;
+ readonly ACTIVE_TEXTURE: 0x84E0;
+ readonly REPEAT: 0x2901;
+ readonly CLAMP_TO_EDGE: 0x812F;
+ readonly MIRRORED_REPEAT: 0x8370;
+ readonly FLOAT_VEC2: 0x8B50;
+ readonly FLOAT_VEC3: 0x8B51;
+ readonly FLOAT_VEC4: 0x8B52;
+ readonly INT_VEC2: 0x8B53;
+ readonly INT_VEC3: 0x8B54;
+ readonly INT_VEC4: 0x8B55;
+ readonly BOOL: 0x8B56;
+ readonly BOOL_VEC2: 0x8B57;
+ readonly BOOL_VEC3: 0x8B58;
+ readonly BOOL_VEC4: 0x8B59;
+ readonly FLOAT_MAT2: 0x8B5A;
+ readonly FLOAT_MAT3: 0x8B5B;
+ readonly FLOAT_MAT4: 0x8B5C;
+ readonly SAMPLER_2D: 0x8B5E;
+ readonly SAMPLER_CUBE: 0x8B60;
+ readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
+ readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
+ readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
+ readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
+ readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
+ readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
+ readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
+ readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
+ readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
+ readonly COMPILE_STATUS: 0x8B81;
+ readonly LOW_FLOAT: 0x8DF0;
+ readonly MEDIUM_FLOAT: 0x8DF1;
+ readonly HIGH_FLOAT: 0x8DF2;
+ readonly LOW_INT: 0x8DF3;
+ readonly MEDIUM_INT: 0x8DF4;
+ readonly HIGH_INT: 0x8DF5;
+ readonly FRAMEBUFFER: 0x8D40;
+ readonly RENDERBUFFER: 0x8D41;
+ readonly RGBA4: 0x8056;
+ readonly RGB5_A1: 0x8057;
+ readonly RGBA8: 0x8058;
+ readonly RGB565: 0x8D62;
+ readonly DEPTH_COMPONENT16: 0x81A5;
+ readonly STENCIL_INDEX8: 0x8D48;
+ readonly DEPTH_STENCIL: 0x84F9;
+ readonly RENDERBUFFER_WIDTH: 0x8D42;
+ readonly RENDERBUFFER_HEIGHT: 0x8D43;
+ readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
+ readonly RENDERBUFFER_RED_SIZE: 0x8D50;
+ readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
+ readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
+ readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
+ readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
+ readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
+ readonly COLOR_ATTACHMENT0: 0x8CE0;
+ readonly DEPTH_ATTACHMENT: 0x8D00;
+ readonly STENCIL_ATTACHMENT: 0x8D20;
+ readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
+ readonly NONE: 0;
+ readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
+ readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
+ readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
+ readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
+ readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
+ readonly FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly RENDERBUFFER_BINDING: 0x8CA7;
+ readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
+ readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
+ readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
+ readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
+ readonly CONTEXT_LOST_WEBGL: 0x9242;
+ readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
+ readonly BROWSER_DEFAULT_WEBGL: 0x9244;
+};
+
+interface WebGL2RenderingContextBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/beginQuery) */
+ beginQuery(target: GLenum, query: WebGLQuery): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/beginTransformFeedback) */
+ beginTransformFeedback(primitiveMode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindBufferBase) */
+ bindBufferBase(target: GLenum, index: GLuint, buffer: WebGLBuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindBufferRange) */
+ bindBufferRange(target: GLenum, index: GLuint, buffer: WebGLBuffer | null, offset: GLintptr, size: GLsizeiptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindSampler) */
+ bindSampler(unit: GLuint, sampler: WebGLSampler | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindTransformFeedback) */
+ bindTransformFeedback(target: GLenum, tf: WebGLTransformFeedback | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindVertexArray) */
+ bindVertexArray(array: WebGLVertexArrayObject | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/blitFramebuffer) */
+ blitFramebuffer(srcX0: GLint, srcY0: GLint, srcX1: GLint, srcY1: GLint, dstX0: GLint, dstY0: GLint, dstX1: GLint, dstY1: GLint, mask: GLbitfield, filter: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferfi(buffer: GLenum, drawbuffer: GLint, depth: GLfloat, stencil: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferfv(buffer: GLenum, drawbuffer: GLint, values: Float32List, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferiv(buffer: GLenum, drawbuffer: GLint, values: Int32List, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferuiv(buffer: GLenum, drawbuffer: GLint, values: Uint32List, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clientWaitSync) */
+ clientWaitSync(sync: WebGLSync, flags: GLbitfield, timeout: GLuint64): GLenum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/compressedTexImage3D) */
+ compressedTexImage3D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexImage3D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/compressedTexSubImage3D) */
+ compressedTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/copyBufferSubData) */
+ copyBufferSubData(readTarget: GLenum, writeTarget: GLenum, readOffset: GLintptr, writeOffset: GLintptr, size: GLsizeiptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/copyTexSubImage3D) */
+ copyTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createQuery) */
+ createQuery(): WebGLQuery | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createSampler) */
+ createSampler(): WebGLSampler | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createTransformFeedback) */
+ createTransformFeedback(): WebGLTransformFeedback | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createVertexArray) */
+ createVertexArray(): WebGLVertexArrayObject | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteQuery) */
+ deleteQuery(query: WebGLQuery | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteSampler) */
+ deleteSampler(sampler: WebGLSampler | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteSync) */
+ deleteSync(sync: WebGLSync | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteTransformFeedback) */
+ deleteTransformFeedback(tf: WebGLTransformFeedback | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteVertexArray) */
+ deleteVertexArray(vertexArray: WebGLVertexArrayObject | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawArraysInstanced) */
+ drawArraysInstanced(mode: GLenum, first: GLint, count: GLsizei, instanceCount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawBuffers) */
+ drawBuffers(buffers: GLenum[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawElementsInstanced) */
+ drawElementsInstanced(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr, instanceCount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawRangeElements) */
+ drawRangeElements(mode: GLenum, start: GLuint, end: GLuint, count: GLsizei, type: GLenum, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/endQuery) */
+ endQuery(target: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/endTransformFeedback) */
+ endTransformFeedback(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/fenceSync) */
+ fenceSync(condition: GLenum, flags: GLbitfield): WebGLSync | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/framebufferTextureLayer) */
+ framebufferTextureLayer(target: GLenum, attachment: GLenum, texture: WebGLTexture | null, level: GLint, layer: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniformBlockName) */
+ getActiveUniformBlockName(program: WebGLProgram, uniformBlockIndex: GLuint): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniformBlockParameter) */
+ getActiveUniformBlockParameter(program: WebGLProgram, uniformBlockIndex: GLuint, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniforms) */
+ getActiveUniforms(program: WebGLProgram, uniformIndices: GLuint[], pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getBufferSubData) */
+ getBufferSubData(target: GLenum, srcByteOffset: GLintptr, dstBuffer: ArrayBufferView, dstOffset?: number, length?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getFragDataLocation) */
+ getFragDataLocation(program: WebGLProgram, name: string): GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getIndexedParameter) */
+ getIndexedParameter(target: GLenum, index: GLuint): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getInternalformatParameter) */
+ getInternalformatParameter(target: GLenum, internalformat: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getQuery) */
+ getQuery(target: GLenum, pname: GLenum): WebGLQuery | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getQueryParameter) */
+ getQueryParameter(query: WebGLQuery, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getSamplerParameter) */
+ getSamplerParameter(sampler: WebGLSampler, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getSyncParameter) */
+ getSyncParameter(sync: WebGLSync, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getTransformFeedbackVarying) */
+ getTransformFeedbackVarying(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformBlockIndex) */
+ getUniformBlockIndex(program: WebGLProgram, uniformBlockName: string): GLuint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformIndices) */
+ getUniformIndices(program: WebGLProgram, uniformNames: string[]): GLuint[] | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateFramebuffer) */
+ invalidateFramebuffer(target: GLenum, attachments: GLenum[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateSubFramebuffer) */
+ invalidateSubFramebuffer(target: GLenum, attachments: GLenum[], x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isQuery) */
+ isQuery(query: WebGLQuery | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isSampler) */
+ isSampler(sampler: WebGLSampler | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isSync) */
+ isSync(sync: WebGLSync | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isTransformFeedback) */
+ isTransformFeedback(tf: WebGLTransformFeedback | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isVertexArray) */
+ isVertexArray(vertexArray: WebGLVertexArrayObject | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/pauseTransformFeedback) */
+ pauseTransformFeedback(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/readBuffer) */
+ readBuffer(src: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/renderbufferStorageMultisample) */
+ renderbufferStorageMultisample(target: GLenum, samples: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/resumeTransformFeedback) */
+ resumeTransformFeedback(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/samplerParameter) */
+ samplerParameterf(sampler: WebGLSampler, pname: GLenum, param: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/samplerParameter) */
+ samplerParameteri(sampler: WebGLSampler, pname: GLenum, param: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texImage3D) */
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView | null): void;
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texStorage2D) */
+ texStorage2D(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texStorage3D) */
+ texStorage3D(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texSubImage3D) */
+ texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, srcData: ArrayBufferView | null, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/transformFeedbackVaryings) */
+ transformFeedbackVaryings(program: WebGLProgram, varyings: string[], bufferMode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform1ui(location: WebGLUniformLocation | null, v0: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform1uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform2ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform2uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform3ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint, v2: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform3uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform4ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform4uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformBlockBinding) */
+ uniformBlockBinding(program: WebGLProgram, uniformBlockIndex: GLuint, uniformBlockBinding: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribDivisor) */
+ vertexAttribDivisor(index: GLuint, divisor: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4i(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4iv(index: GLuint, values: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4uiv(index: GLuint, values: Uint32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribIPointer) */
+ vertexAttribIPointer(index: GLuint, size: GLint, type: GLenum, stride: GLsizei, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/waitSync) */
+ waitSync(sync: WebGLSync, flags: GLbitfield, timeout: GLint64): void;
+ readonly READ_BUFFER: 0x0C02;
+ readonly UNPACK_ROW_LENGTH: 0x0CF2;
+ readonly UNPACK_SKIP_ROWS: 0x0CF3;
+ readonly UNPACK_SKIP_PIXELS: 0x0CF4;
+ readonly PACK_ROW_LENGTH: 0x0D02;
+ readonly PACK_SKIP_ROWS: 0x0D03;
+ readonly PACK_SKIP_PIXELS: 0x0D04;
+ readonly COLOR: 0x1800;
+ readonly DEPTH: 0x1801;
+ readonly STENCIL: 0x1802;
+ readonly RED: 0x1903;
+ readonly RGB8: 0x8051;
+ readonly RGB10_A2: 0x8059;
+ readonly TEXTURE_BINDING_3D: 0x806A;
+ readonly UNPACK_SKIP_IMAGES: 0x806D;
+ readonly UNPACK_IMAGE_HEIGHT: 0x806E;
+ readonly TEXTURE_3D: 0x806F;
+ readonly TEXTURE_WRAP_R: 0x8072;
+ readonly MAX_3D_TEXTURE_SIZE: 0x8073;
+ readonly UNSIGNED_INT_2_10_10_10_REV: 0x8368;
+ readonly MAX_ELEMENTS_VERTICES: 0x80E8;
+ readonly MAX_ELEMENTS_INDICES: 0x80E9;
+ readonly TEXTURE_MIN_LOD: 0x813A;
+ readonly TEXTURE_MAX_LOD: 0x813B;
+ readonly TEXTURE_BASE_LEVEL: 0x813C;
+ readonly TEXTURE_MAX_LEVEL: 0x813D;
+ readonly MIN: 0x8007;
+ readonly MAX: 0x8008;
+ readonly DEPTH_COMPONENT24: 0x81A6;
+ readonly MAX_TEXTURE_LOD_BIAS: 0x84FD;
+ readonly TEXTURE_COMPARE_MODE: 0x884C;
+ readonly TEXTURE_COMPARE_FUNC: 0x884D;
+ readonly CURRENT_QUERY: 0x8865;
+ readonly QUERY_RESULT: 0x8866;
+ readonly QUERY_RESULT_AVAILABLE: 0x8867;
+ readonly STREAM_READ: 0x88E1;
+ readonly STREAM_COPY: 0x88E2;
+ readonly STATIC_READ: 0x88E5;
+ readonly STATIC_COPY: 0x88E6;
+ readonly DYNAMIC_READ: 0x88E9;
+ readonly DYNAMIC_COPY: 0x88EA;
+ readonly MAX_DRAW_BUFFERS: 0x8824;
+ readonly DRAW_BUFFER0: 0x8825;
+ readonly DRAW_BUFFER1: 0x8826;
+ readonly DRAW_BUFFER2: 0x8827;
+ readonly DRAW_BUFFER3: 0x8828;
+ readonly DRAW_BUFFER4: 0x8829;
+ readonly DRAW_BUFFER5: 0x882A;
+ readonly DRAW_BUFFER6: 0x882B;
+ readonly DRAW_BUFFER7: 0x882C;
+ readonly DRAW_BUFFER8: 0x882D;
+ readonly DRAW_BUFFER9: 0x882E;
+ readonly DRAW_BUFFER10: 0x882F;
+ readonly DRAW_BUFFER11: 0x8830;
+ readonly DRAW_BUFFER12: 0x8831;
+ readonly DRAW_BUFFER13: 0x8832;
+ readonly DRAW_BUFFER14: 0x8833;
+ readonly DRAW_BUFFER15: 0x8834;
+ readonly MAX_FRAGMENT_UNIFORM_COMPONENTS: 0x8B49;
+ readonly MAX_VERTEX_UNIFORM_COMPONENTS: 0x8B4A;
+ readonly SAMPLER_3D: 0x8B5F;
+ readonly SAMPLER_2D_SHADOW: 0x8B62;
+ readonly FRAGMENT_SHADER_DERIVATIVE_HINT: 0x8B8B;
+ readonly PIXEL_PACK_BUFFER: 0x88EB;
+ readonly PIXEL_UNPACK_BUFFER: 0x88EC;
+ readonly PIXEL_PACK_BUFFER_BINDING: 0x88ED;
+ readonly PIXEL_UNPACK_BUFFER_BINDING: 0x88EF;
+ readonly FLOAT_MAT2x3: 0x8B65;
+ readonly FLOAT_MAT2x4: 0x8B66;
+ readonly FLOAT_MAT3x2: 0x8B67;
+ readonly FLOAT_MAT3x4: 0x8B68;
+ readonly FLOAT_MAT4x2: 0x8B69;
+ readonly FLOAT_MAT4x3: 0x8B6A;
+ readonly SRGB: 0x8C40;
+ readonly SRGB8: 0x8C41;
+ readonly SRGB8_ALPHA8: 0x8C43;
+ readonly COMPARE_REF_TO_TEXTURE: 0x884E;
+ readonly RGBA32F: 0x8814;
+ readonly RGB32F: 0x8815;
+ readonly RGBA16F: 0x881A;
+ readonly RGB16F: 0x881B;
+ readonly VERTEX_ATTRIB_ARRAY_INTEGER: 0x88FD;
+ readonly MAX_ARRAY_TEXTURE_LAYERS: 0x88FF;
+ readonly MIN_PROGRAM_TEXEL_OFFSET: 0x8904;
+ readonly MAX_PROGRAM_TEXEL_OFFSET: 0x8905;
+ readonly MAX_VARYING_COMPONENTS: 0x8B4B;
+ readonly TEXTURE_2D_ARRAY: 0x8C1A;
+ readonly TEXTURE_BINDING_2D_ARRAY: 0x8C1D;
+ readonly R11F_G11F_B10F: 0x8C3A;
+ readonly UNSIGNED_INT_10F_11F_11F_REV: 0x8C3B;
+ readonly RGB9_E5: 0x8C3D;
+ readonly UNSIGNED_INT_5_9_9_9_REV: 0x8C3E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_MODE: 0x8C7F;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: 0x8C80;
+ readonly TRANSFORM_FEEDBACK_VARYINGS: 0x8C83;
+ readonly TRANSFORM_FEEDBACK_BUFFER_START: 0x8C84;
+ readonly TRANSFORM_FEEDBACK_BUFFER_SIZE: 0x8C85;
+ readonly TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: 0x8C88;
+ readonly RASTERIZER_DISCARD: 0x8C89;
+ readonly MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: 0x8C8A;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: 0x8C8B;
+ readonly INTERLEAVED_ATTRIBS: 0x8C8C;
+ readonly SEPARATE_ATTRIBS: 0x8C8D;
+ readonly TRANSFORM_FEEDBACK_BUFFER: 0x8C8E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_BINDING: 0x8C8F;
+ readonly RGBA32UI: 0x8D70;
+ readonly RGB32UI: 0x8D71;
+ readonly RGBA16UI: 0x8D76;
+ readonly RGB16UI: 0x8D77;
+ readonly RGBA8UI: 0x8D7C;
+ readonly RGB8UI: 0x8D7D;
+ readonly RGBA32I: 0x8D82;
+ readonly RGB32I: 0x8D83;
+ readonly RGBA16I: 0x8D88;
+ readonly RGB16I: 0x8D89;
+ readonly RGBA8I: 0x8D8E;
+ readonly RGB8I: 0x8D8F;
+ readonly RED_INTEGER: 0x8D94;
+ readonly RGB_INTEGER: 0x8D98;
+ readonly RGBA_INTEGER: 0x8D99;
+ readonly SAMPLER_2D_ARRAY: 0x8DC1;
+ readonly SAMPLER_2D_ARRAY_SHADOW: 0x8DC4;
+ readonly SAMPLER_CUBE_SHADOW: 0x8DC5;
+ readonly UNSIGNED_INT_VEC2: 0x8DC6;
+ readonly UNSIGNED_INT_VEC3: 0x8DC7;
+ readonly UNSIGNED_INT_VEC4: 0x8DC8;
+ readonly INT_SAMPLER_2D: 0x8DCA;
+ readonly INT_SAMPLER_3D: 0x8DCB;
+ readonly INT_SAMPLER_CUBE: 0x8DCC;
+ readonly INT_SAMPLER_2D_ARRAY: 0x8DCF;
+ readonly UNSIGNED_INT_SAMPLER_2D: 0x8DD2;
+ readonly UNSIGNED_INT_SAMPLER_3D: 0x8DD3;
+ readonly UNSIGNED_INT_SAMPLER_CUBE: 0x8DD4;
+ readonly UNSIGNED_INT_SAMPLER_2D_ARRAY: 0x8DD7;
+ readonly DEPTH_COMPONENT32F: 0x8CAC;
+ readonly DEPTH32F_STENCIL8: 0x8CAD;
+ readonly FLOAT_32_UNSIGNED_INT_24_8_REV: 0x8DAD;
+ readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: 0x8210;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: 0x8211;
+ readonly FRAMEBUFFER_ATTACHMENT_RED_SIZE: 0x8212;
+ readonly FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: 0x8213;
+ readonly FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: 0x8214;
+ readonly FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: 0x8215;
+ readonly FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: 0x8216;
+ readonly FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: 0x8217;
+ readonly FRAMEBUFFER_DEFAULT: 0x8218;
+ readonly UNSIGNED_INT_24_8: 0x84FA;
+ readonly DEPTH24_STENCIL8: 0x88F0;
+ readonly UNSIGNED_NORMALIZED: 0x8C17;
+ readonly DRAW_FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly READ_FRAMEBUFFER: 0x8CA8;
+ readonly DRAW_FRAMEBUFFER: 0x8CA9;
+ readonly READ_FRAMEBUFFER_BINDING: 0x8CAA;
+ readonly RENDERBUFFER_SAMPLES: 0x8CAB;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: 0x8CD4;
+ readonly MAX_COLOR_ATTACHMENTS: 0x8CDF;
+ readonly COLOR_ATTACHMENT1: 0x8CE1;
+ readonly COLOR_ATTACHMENT2: 0x8CE2;
+ readonly COLOR_ATTACHMENT3: 0x8CE3;
+ readonly COLOR_ATTACHMENT4: 0x8CE4;
+ readonly COLOR_ATTACHMENT5: 0x8CE5;
+ readonly COLOR_ATTACHMENT6: 0x8CE6;
+ readonly COLOR_ATTACHMENT7: 0x8CE7;
+ readonly COLOR_ATTACHMENT8: 0x8CE8;
+ readonly COLOR_ATTACHMENT9: 0x8CE9;
+ readonly COLOR_ATTACHMENT10: 0x8CEA;
+ readonly COLOR_ATTACHMENT11: 0x8CEB;
+ readonly COLOR_ATTACHMENT12: 0x8CEC;
+ readonly COLOR_ATTACHMENT13: 0x8CED;
+ readonly COLOR_ATTACHMENT14: 0x8CEE;
+ readonly COLOR_ATTACHMENT15: 0x8CEF;
+ readonly FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: 0x8D56;
+ readonly MAX_SAMPLES: 0x8D57;
+ readonly HALF_FLOAT: 0x140B;
+ readonly RG: 0x8227;
+ readonly RG_INTEGER: 0x8228;
+ readonly R8: 0x8229;
+ readonly RG8: 0x822B;
+ readonly R16F: 0x822D;
+ readonly R32F: 0x822E;
+ readonly RG16F: 0x822F;
+ readonly RG32F: 0x8230;
+ readonly R8I: 0x8231;
+ readonly R8UI: 0x8232;
+ readonly R16I: 0x8233;
+ readonly R16UI: 0x8234;
+ readonly R32I: 0x8235;
+ readonly R32UI: 0x8236;
+ readonly RG8I: 0x8237;
+ readonly RG8UI: 0x8238;
+ readonly RG16I: 0x8239;
+ readonly RG16UI: 0x823A;
+ readonly RG32I: 0x823B;
+ readonly RG32UI: 0x823C;
+ readonly VERTEX_ARRAY_BINDING: 0x85B5;
+ readonly R8_SNORM: 0x8F94;
+ readonly RG8_SNORM: 0x8F95;
+ readonly RGB8_SNORM: 0x8F96;
+ readonly RGBA8_SNORM: 0x8F97;
+ readonly SIGNED_NORMALIZED: 0x8F9C;
+ readonly COPY_READ_BUFFER: 0x8F36;
+ readonly COPY_WRITE_BUFFER: 0x8F37;
+ readonly COPY_READ_BUFFER_BINDING: 0x8F36;
+ readonly COPY_WRITE_BUFFER_BINDING: 0x8F37;
+ readonly UNIFORM_BUFFER: 0x8A11;
+ readonly UNIFORM_BUFFER_BINDING: 0x8A28;
+ readonly UNIFORM_BUFFER_START: 0x8A29;
+ readonly UNIFORM_BUFFER_SIZE: 0x8A2A;
+ readonly MAX_VERTEX_UNIFORM_BLOCKS: 0x8A2B;
+ readonly MAX_FRAGMENT_UNIFORM_BLOCKS: 0x8A2D;
+ readonly MAX_COMBINED_UNIFORM_BLOCKS: 0x8A2E;
+ readonly MAX_UNIFORM_BUFFER_BINDINGS: 0x8A2F;
+ readonly MAX_UNIFORM_BLOCK_SIZE: 0x8A30;
+ readonly MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: 0x8A31;
+ readonly MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: 0x8A33;
+ readonly UNIFORM_BUFFER_OFFSET_ALIGNMENT: 0x8A34;
+ readonly ACTIVE_UNIFORM_BLOCKS: 0x8A36;
+ readonly UNIFORM_TYPE: 0x8A37;
+ readonly UNIFORM_SIZE: 0x8A38;
+ readonly UNIFORM_BLOCK_INDEX: 0x8A3A;
+ readonly UNIFORM_OFFSET: 0x8A3B;
+ readonly UNIFORM_ARRAY_STRIDE: 0x8A3C;
+ readonly UNIFORM_MATRIX_STRIDE: 0x8A3D;
+ readonly UNIFORM_IS_ROW_MAJOR: 0x8A3E;
+ readonly UNIFORM_BLOCK_BINDING: 0x8A3F;
+ readonly UNIFORM_BLOCK_DATA_SIZE: 0x8A40;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORMS: 0x8A42;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: 0x8A43;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: 0x8A44;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: 0x8A46;
+ readonly INVALID_INDEX: 0xFFFFFFFF;
+ readonly MAX_VERTEX_OUTPUT_COMPONENTS: 0x9122;
+ readonly MAX_FRAGMENT_INPUT_COMPONENTS: 0x9125;
+ readonly MAX_SERVER_WAIT_TIMEOUT: 0x9111;
+ readonly OBJECT_TYPE: 0x9112;
+ readonly SYNC_CONDITION: 0x9113;
+ readonly SYNC_STATUS: 0x9114;
+ readonly SYNC_FLAGS: 0x9115;
+ readonly SYNC_FENCE: 0x9116;
+ readonly SYNC_GPU_COMMANDS_COMPLETE: 0x9117;
+ readonly UNSIGNALED: 0x9118;
+ readonly SIGNALED: 0x9119;
+ readonly ALREADY_SIGNALED: 0x911A;
+ readonly TIMEOUT_EXPIRED: 0x911B;
+ readonly CONDITION_SATISFIED: 0x911C;
+ readonly WAIT_FAILED: 0x911D;
+ readonly SYNC_FLUSH_COMMANDS_BIT: 0x00000001;
+ readonly VERTEX_ATTRIB_ARRAY_DIVISOR: 0x88FE;
+ readonly ANY_SAMPLES_PASSED: 0x8C2F;
+ readonly ANY_SAMPLES_PASSED_CONSERVATIVE: 0x8D6A;
+ readonly SAMPLER_BINDING: 0x8919;
+ readonly RGB10_A2UI: 0x906F;
+ readonly INT_2_10_10_10_REV: 0x8D9F;
+ readonly TRANSFORM_FEEDBACK: 0x8E22;
+ readonly TRANSFORM_FEEDBACK_PAUSED: 0x8E23;
+ readonly TRANSFORM_FEEDBACK_ACTIVE: 0x8E24;
+ readonly TRANSFORM_FEEDBACK_BINDING: 0x8E25;
+ readonly TEXTURE_IMMUTABLE_FORMAT: 0x912F;
+ readonly MAX_ELEMENT_INDEX: 0x8D6B;
+ readonly TEXTURE_IMMUTABLE_LEVELS: 0x82DF;
+ readonly TIMEOUT_IGNORED: -1;
+ readonly MAX_CLIENT_WAIT_TIMEOUT_WEBGL: 0x9247;
+}
+
+interface WebGL2RenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferData) */
+ bufferData(target: GLenum, size: GLsizeiptr, usage: GLenum): void;
+ bufferData(target: GLenum, srcData: AllowSharedBufferSource | null, usage: GLenum): void;
+ bufferData(target: GLenum, srcData: ArrayBufferView, usage: GLenum, srcOffset: number, length?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferSubData) */
+ bufferSubData(target: GLenum, dstByteOffset: GLintptr, srcData: AllowSharedBufferSource): void;
+ bufferSubData(target: GLenum, dstByteOffset: GLintptr, srcData: ArrayBufferView, srcOffset: number, length?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexImage2D) */
+ compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexSubImage2D) */
+ compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/readPixels) */
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, dstData: ArrayBufferView | null): void;
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, offset: GLintptr): void;
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, dstData: ArrayBufferView, dstOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texImage2D) */
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texSubImage2D) */
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+}
+
+/**
+ * Part of the WebGL API and represents the information returned by calling the WebGLRenderingContext.getActiveAttrib() and WebGLRenderingContext.getActiveUniform() methods.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo)
+ */
+interface WebGLActiveInfo {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/size) */
+ readonly size: GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/type) */
+ readonly type: GLenum;
+}
+
+declare var WebGLActiveInfo: {
+ prototype: WebGLActiveInfo;
+ new(): WebGLActiveInfo;
+};
+
+/**
+ * Part of the WebGL API and represents an opaque buffer object storing data such as vertices or colors.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLBuffer)
+ */
+interface WebGLBuffer {
+}
+
+declare var WebGLBuffer: {
+ prototype: WebGLBuffer;
+ new(): WebGLBuffer;
+};
+
+/**
+ * The WebContextEvent interface is part of the WebGL API and is an interface for an event that is generated in response to a status change to the WebGL rendering context.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLContextEvent)
+ */
+interface WebGLContextEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLContextEvent/statusMessage) */
+ readonly statusMessage: string;
+}
+
+declare var WebGLContextEvent: {
+ prototype: WebGLContextEvent;
+ new(type: string, eventInit?: WebGLContextEventInit): WebGLContextEvent;
+};
+
+/**
+ * Part of the WebGL API and represents a collection of buffers that serve as a rendering destination.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLFramebuffer)
+ */
+interface WebGLFramebuffer {
+}
+
+declare var WebGLFramebuffer: {
+ prototype: WebGLFramebuffer;
+ new(): WebGLFramebuffer;
+};
+
+/**
+ * The WebGLProgram is part of the WebGL API and is a combination of two compiled WebGLShaders consisting of a vertex shader and a fragment shader (both written in GLSL).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLProgram)
+ */
+interface WebGLProgram {
+}
+
+declare var WebGLProgram: {
+ prototype: WebGLProgram;
+ new(): WebGLProgram;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLQuery) */
+interface WebGLQuery {
+}
+
+declare var WebGLQuery: {
+ prototype: WebGLQuery;
+ new(): WebGLQuery;
+};
+
+/**
+ * Part of the WebGL API and represents a buffer that can contain an image, or can be source or target of an rendering operation.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderbuffer)
+ */
+interface WebGLRenderbuffer {
+}
+
+declare var WebGLRenderbuffer: {
+ prototype: WebGLRenderbuffer;
+ new(): WebGLRenderbuffer;
+};
+
+/**
+ * Provides an interface to the OpenGL ES 2.0 graphics rendering context for the drawing surface of an HTML <canvas> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext)
+ */
+interface WebGLRenderingContext extends WebGLRenderingContextBase, WebGLRenderingContextOverloads {
+}
+
+declare var WebGLRenderingContext: {
+ prototype: WebGLRenderingContext;
+ new(): WebGLRenderingContext;
+ readonly DEPTH_BUFFER_BIT: 0x00000100;
+ readonly STENCIL_BUFFER_BIT: 0x00000400;
+ readonly COLOR_BUFFER_BIT: 0x00004000;
+ readonly POINTS: 0x0000;
+ readonly LINES: 0x0001;
+ readonly LINE_LOOP: 0x0002;
+ readonly LINE_STRIP: 0x0003;
+ readonly TRIANGLES: 0x0004;
+ readonly TRIANGLE_STRIP: 0x0005;
+ readonly TRIANGLE_FAN: 0x0006;
+ readonly ZERO: 0;
+ readonly ONE: 1;
+ readonly SRC_COLOR: 0x0300;
+ readonly ONE_MINUS_SRC_COLOR: 0x0301;
+ readonly SRC_ALPHA: 0x0302;
+ readonly ONE_MINUS_SRC_ALPHA: 0x0303;
+ readonly DST_ALPHA: 0x0304;
+ readonly ONE_MINUS_DST_ALPHA: 0x0305;
+ readonly DST_COLOR: 0x0306;
+ readonly ONE_MINUS_DST_COLOR: 0x0307;
+ readonly SRC_ALPHA_SATURATE: 0x0308;
+ readonly FUNC_ADD: 0x8006;
+ readonly BLEND_EQUATION: 0x8009;
+ readonly BLEND_EQUATION_RGB: 0x8009;
+ readonly BLEND_EQUATION_ALPHA: 0x883D;
+ readonly FUNC_SUBTRACT: 0x800A;
+ readonly FUNC_REVERSE_SUBTRACT: 0x800B;
+ readonly BLEND_DST_RGB: 0x80C8;
+ readonly BLEND_SRC_RGB: 0x80C9;
+ readonly BLEND_DST_ALPHA: 0x80CA;
+ readonly BLEND_SRC_ALPHA: 0x80CB;
+ readonly CONSTANT_COLOR: 0x8001;
+ readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
+ readonly CONSTANT_ALPHA: 0x8003;
+ readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
+ readonly BLEND_COLOR: 0x8005;
+ readonly ARRAY_BUFFER: 0x8892;
+ readonly ELEMENT_ARRAY_BUFFER: 0x8893;
+ readonly ARRAY_BUFFER_BINDING: 0x8894;
+ readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
+ readonly STREAM_DRAW: 0x88E0;
+ readonly STATIC_DRAW: 0x88E4;
+ readonly DYNAMIC_DRAW: 0x88E8;
+ readonly BUFFER_SIZE: 0x8764;
+ readonly BUFFER_USAGE: 0x8765;
+ readonly CURRENT_VERTEX_ATTRIB: 0x8626;
+ readonly FRONT: 0x0404;
+ readonly BACK: 0x0405;
+ readonly FRONT_AND_BACK: 0x0408;
+ readonly CULL_FACE: 0x0B44;
+ readonly BLEND: 0x0BE2;
+ readonly DITHER: 0x0BD0;
+ readonly STENCIL_TEST: 0x0B90;
+ readonly DEPTH_TEST: 0x0B71;
+ readonly SCISSOR_TEST: 0x0C11;
+ readonly POLYGON_OFFSET_FILL: 0x8037;
+ readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
+ readonly SAMPLE_COVERAGE: 0x80A0;
+ readonly NO_ERROR: 0;
+ readonly INVALID_ENUM: 0x0500;
+ readonly INVALID_VALUE: 0x0501;
+ readonly INVALID_OPERATION: 0x0502;
+ readonly OUT_OF_MEMORY: 0x0505;
+ readonly CW: 0x0900;
+ readonly CCW: 0x0901;
+ readonly LINE_WIDTH: 0x0B21;
+ readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
+ readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
+ readonly CULL_FACE_MODE: 0x0B45;
+ readonly FRONT_FACE: 0x0B46;
+ readonly DEPTH_RANGE: 0x0B70;
+ readonly DEPTH_WRITEMASK: 0x0B72;
+ readonly DEPTH_CLEAR_VALUE: 0x0B73;
+ readonly DEPTH_FUNC: 0x0B74;
+ readonly STENCIL_CLEAR_VALUE: 0x0B91;
+ readonly STENCIL_FUNC: 0x0B92;
+ readonly STENCIL_FAIL: 0x0B94;
+ readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
+ readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
+ readonly STENCIL_REF: 0x0B97;
+ readonly STENCIL_VALUE_MASK: 0x0B93;
+ readonly STENCIL_WRITEMASK: 0x0B98;
+ readonly STENCIL_BACK_FUNC: 0x8800;
+ readonly STENCIL_BACK_FAIL: 0x8801;
+ readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
+ readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
+ readonly STENCIL_BACK_REF: 0x8CA3;
+ readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
+ readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
+ readonly VIEWPORT: 0x0BA2;
+ readonly SCISSOR_BOX: 0x0C10;
+ readonly COLOR_CLEAR_VALUE: 0x0C22;
+ readonly COLOR_WRITEMASK: 0x0C23;
+ readonly UNPACK_ALIGNMENT: 0x0CF5;
+ readonly PACK_ALIGNMENT: 0x0D05;
+ readonly MAX_TEXTURE_SIZE: 0x0D33;
+ readonly MAX_VIEWPORT_DIMS: 0x0D3A;
+ readonly SUBPIXEL_BITS: 0x0D50;
+ readonly RED_BITS: 0x0D52;
+ readonly GREEN_BITS: 0x0D53;
+ readonly BLUE_BITS: 0x0D54;
+ readonly ALPHA_BITS: 0x0D55;
+ readonly DEPTH_BITS: 0x0D56;
+ readonly STENCIL_BITS: 0x0D57;
+ readonly POLYGON_OFFSET_UNITS: 0x2A00;
+ readonly POLYGON_OFFSET_FACTOR: 0x8038;
+ readonly TEXTURE_BINDING_2D: 0x8069;
+ readonly SAMPLE_BUFFERS: 0x80A8;
+ readonly SAMPLES: 0x80A9;
+ readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
+ readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
+ readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
+ readonly DONT_CARE: 0x1100;
+ readonly FASTEST: 0x1101;
+ readonly NICEST: 0x1102;
+ readonly GENERATE_MIPMAP_HINT: 0x8192;
+ readonly BYTE: 0x1400;
+ readonly UNSIGNED_BYTE: 0x1401;
+ readonly SHORT: 0x1402;
+ readonly UNSIGNED_SHORT: 0x1403;
+ readonly INT: 0x1404;
+ readonly UNSIGNED_INT: 0x1405;
+ readonly FLOAT: 0x1406;
+ readonly DEPTH_COMPONENT: 0x1902;
+ readonly ALPHA: 0x1906;
+ readonly RGB: 0x1907;
+ readonly RGBA: 0x1908;
+ readonly LUMINANCE: 0x1909;
+ readonly LUMINANCE_ALPHA: 0x190A;
+ readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
+ readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
+ readonly UNSIGNED_SHORT_5_6_5: 0x8363;
+ readonly FRAGMENT_SHADER: 0x8B30;
+ readonly VERTEX_SHADER: 0x8B31;
+ readonly MAX_VERTEX_ATTRIBS: 0x8869;
+ readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
+ readonly MAX_VARYING_VECTORS: 0x8DFC;
+ readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
+ readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
+ readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
+ readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
+ readonly SHADER_TYPE: 0x8B4F;
+ readonly DELETE_STATUS: 0x8B80;
+ readonly LINK_STATUS: 0x8B82;
+ readonly VALIDATE_STATUS: 0x8B83;
+ readonly ATTACHED_SHADERS: 0x8B85;
+ readonly ACTIVE_UNIFORMS: 0x8B86;
+ readonly ACTIVE_ATTRIBUTES: 0x8B89;
+ readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
+ readonly CURRENT_PROGRAM: 0x8B8D;
+ readonly NEVER: 0x0200;
+ readonly LESS: 0x0201;
+ readonly EQUAL: 0x0202;
+ readonly LEQUAL: 0x0203;
+ readonly GREATER: 0x0204;
+ readonly NOTEQUAL: 0x0205;
+ readonly GEQUAL: 0x0206;
+ readonly ALWAYS: 0x0207;
+ readonly KEEP: 0x1E00;
+ readonly REPLACE: 0x1E01;
+ readonly INCR: 0x1E02;
+ readonly DECR: 0x1E03;
+ readonly INVERT: 0x150A;
+ readonly INCR_WRAP: 0x8507;
+ readonly DECR_WRAP: 0x8508;
+ readonly VENDOR: 0x1F00;
+ readonly RENDERER: 0x1F01;
+ readonly VERSION: 0x1F02;
+ readonly NEAREST: 0x2600;
+ readonly LINEAR: 0x2601;
+ readonly NEAREST_MIPMAP_NEAREST: 0x2700;
+ readonly LINEAR_MIPMAP_NEAREST: 0x2701;
+ readonly NEAREST_MIPMAP_LINEAR: 0x2702;
+ readonly LINEAR_MIPMAP_LINEAR: 0x2703;
+ readonly TEXTURE_MAG_FILTER: 0x2800;
+ readonly TEXTURE_MIN_FILTER: 0x2801;
+ readonly TEXTURE_WRAP_S: 0x2802;
+ readonly TEXTURE_WRAP_T: 0x2803;
+ readonly TEXTURE_2D: 0x0DE1;
+ readonly TEXTURE: 0x1702;
+ readonly TEXTURE_CUBE_MAP: 0x8513;
+ readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
+ readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
+ readonly TEXTURE0: 0x84C0;
+ readonly TEXTURE1: 0x84C1;
+ readonly TEXTURE2: 0x84C2;
+ readonly TEXTURE3: 0x84C3;
+ readonly TEXTURE4: 0x84C4;
+ readonly TEXTURE5: 0x84C5;
+ readonly TEXTURE6: 0x84C6;
+ readonly TEXTURE7: 0x84C7;
+ readonly TEXTURE8: 0x84C8;
+ readonly TEXTURE9: 0x84C9;
+ readonly TEXTURE10: 0x84CA;
+ readonly TEXTURE11: 0x84CB;
+ readonly TEXTURE12: 0x84CC;
+ readonly TEXTURE13: 0x84CD;
+ readonly TEXTURE14: 0x84CE;
+ readonly TEXTURE15: 0x84CF;
+ readonly TEXTURE16: 0x84D0;
+ readonly TEXTURE17: 0x84D1;
+ readonly TEXTURE18: 0x84D2;
+ readonly TEXTURE19: 0x84D3;
+ readonly TEXTURE20: 0x84D4;
+ readonly TEXTURE21: 0x84D5;
+ readonly TEXTURE22: 0x84D6;
+ readonly TEXTURE23: 0x84D7;
+ readonly TEXTURE24: 0x84D8;
+ readonly TEXTURE25: 0x84D9;
+ readonly TEXTURE26: 0x84DA;
+ readonly TEXTURE27: 0x84DB;
+ readonly TEXTURE28: 0x84DC;
+ readonly TEXTURE29: 0x84DD;
+ readonly TEXTURE30: 0x84DE;
+ readonly TEXTURE31: 0x84DF;
+ readonly ACTIVE_TEXTURE: 0x84E0;
+ readonly REPEAT: 0x2901;
+ readonly CLAMP_TO_EDGE: 0x812F;
+ readonly MIRRORED_REPEAT: 0x8370;
+ readonly FLOAT_VEC2: 0x8B50;
+ readonly FLOAT_VEC3: 0x8B51;
+ readonly FLOAT_VEC4: 0x8B52;
+ readonly INT_VEC2: 0x8B53;
+ readonly INT_VEC3: 0x8B54;
+ readonly INT_VEC4: 0x8B55;
+ readonly BOOL: 0x8B56;
+ readonly BOOL_VEC2: 0x8B57;
+ readonly BOOL_VEC3: 0x8B58;
+ readonly BOOL_VEC4: 0x8B59;
+ readonly FLOAT_MAT2: 0x8B5A;
+ readonly FLOAT_MAT3: 0x8B5B;
+ readonly FLOAT_MAT4: 0x8B5C;
+ readonly SAMPLER_2D: 0x8B5E;
+ readonly SAMPLER_CUBE: 0x8B60;
+ readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
+ readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
+ readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
+ readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
+ readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
+ readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
+ readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
+ readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
+ readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
+ readonly COMPILE_STATUS: 0x8B81;
+ readonly LOW_FLOAT: 0x8DF0;
+ readonly MEDIUM_FLOAT: 0x8DF1;
+ readonly HIGH_FLOAT: 0x8DF2;
+ readonly LOW_INT: 0x8DF3;
+ readonly MEDIUM_INT: 0x8DF4;
+ readonly HIGH_INT: 0x8DF5;
+ readonly FRAMEBUFFER: 0x8D40;
+ readonly RENDERBUFFER: 0x8D41;
+ readonly RGBA4: 0x8056;
+ readonly RGB5_A1: 0x8057;
+ readonly RGBA8: 0x8058;
+ readonly RGB565: 0x8D62;
+ readonly DEPTH_COMPONENT16: 0x81A5;
+ readonly STENCIL_INDEX8: 0x8D48;
+ readonly DEPTH_STENCIL: 0x84F9;
+ readonly RENDERBUFFER_WIDTH: 0x8D42;
+ readonly RENDERBUFFER_HEIGHT: 0x8D43;
+ readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
+ readonly RENDERBUFFER_RED_SIZE: 0x8D50;
+ readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
+ readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
+ readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
+ readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
+ readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
+ readonly COLOR_ATTACHMENT0: 0x8CE0;
+ readonly DEPTH_ATTACHMENT: 0x8D00;
+ readonly STENCIL_ATTACHMENT: 0x8D20;
+ readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
+ readonly NONE: 0;
+ readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
+ readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
+ readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
+ readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
+ readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
+ readonly FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly RENDERBUFFER_BINDING: 0x8CA7;
+ readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
+ readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
+ readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
+ readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
+ readonly CONTEXT_LOST_WEBGL: 0x9242;
+ readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
+ readonly BROWSER_DEFAULT_WEBGL: 0x9244;
+};
+
+interface WebGLRenderingContextBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/canvas) */
+ readonly canvas: HTMLCanvasElement | OffscreenCanvas;
+ drawingBufferColorSpace: PredefinedColorSpace;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawingBufferHeight) */
+ readonly drawingBufferHeight: GLsizei;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawingBufferWidth) */
+ readonly drawingBufferWidth: GLsizei;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/activeTexture) */
+ activeTexture(texture: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/attachShader) */
+ attachShader(program: WebGLProgram, shader: WebGLShader): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindAttribLocation) */
+ bindAttribLocation(program: WebGLProgram, index: GLuint, name: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindBuffer) */
+ bindBuffer(target: GLenum, buffer: WebGLBuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindFramebuffer) */
+ bindFramebuffer(target: GLenum, framebuffer: WebGLFramebuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindRenderbuffer) */
+ bindRenderbuffer(target: GLenum, renderbuffer: WebGLRenderbuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindTexture) */
+ bindTexture(target: GLenum, texture: WebGLTexture | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendColor) */
+ blendColor(red: GLclampf, green: GLclampf, blue: GLclampf, alpha: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendEquation) */
+ blendEquation(mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendEquationSeparate) */
+ blendEquationSeparate(modeRGB: GLenum, modeAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendFunc) */
+ blendFunc(sfactor: GLenum, dfactor: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendFuncSeparate) */
+ blendFuncSeparate(srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/checkFramebufferStatus) */
+ checkFramebufferStatus(target: GLenum): GLenum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clear) */
+ clear(mask: GLbitfield): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearColor) */
+ clearColor(red: GLclampf, green: GLclampf, blue: GLclampf, alpha: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearDepth) */
+ clearDepth(depth: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearStencil) */
+ clearStencil(s: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/colorMask) */
+ colorMask(red: GLboolean, green: GLboolean, blue: GLboolean, alpha: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compileShader) */
+ compileShader(shader: WebGLShader): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/copyTexImage2D) */
+ copyTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, x: GLint, y: GLint, width: GLsizei, height: GLsizei, border: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/copyTexSubImage2D) */
+ copyTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createBuffer) */
+ createBuffer(): WebGLBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createFramebuffer) */
+ createFramebuffer(): WebGLFramebuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createProgram) */
+ createProgram(): WebGLProgram | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createRenderbuffer) */
+ createRenderbuffer(): WebGLRenderbuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createShader) */
+ createShader(type: GLenum): WebGLShader | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createTexture) */
+ createTexture(): WebGLTexture | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/cullFace) */
+ cullFace(mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteBuffer) */
+ deleteBuffer(buffer: WebGLBuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteFramebuffer) */
+ deleteFramebuffer(framebuffer: WebGLFramebuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteProgram) */
+ deleteProgram(program: WebGLProgram | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteRenderbuffer) */
+ deleteRenderbuffer(renderbuffer: WebGLRenderbuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteShader) */
+ deleteShader(shader: WebGLShader | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteTexture) */
+ deleteTexture(texture: WebGLTexture | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthFunc) */
+ depthFunc(func: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthMask) */
+ depthMask(flag: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthRange) */
+ depthRange(zNear: GLclampf, zFar: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/detachShader) */
+ detachShader(program: WebGLProgram, shader: WebGLShader): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/disable) */
+ disable(cap: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/disableVertexAttribArray) */
+ disableVertexAttribArray(index: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawArrays) */
+ drawArrays(mode: GLenum, first: GLint, count: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawElements) */
+ drawElements(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/enable) */
+ enable(cap: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/enableVertexAttribArray) */
+ enableVertexAttribArray(index: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/finish) */
+ finish(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/flush) */
+ flush(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/framebufferRenderbuffer) */
+ framebufferRenderbuffer(target: GLenum, attachment: GLenum, renderbuffertarget: GLenum, renderbuffer: WebGLRenderbuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/framebufferTexture2D) */
+ framebufferTexture2D(target: GLenum, attachment: GLenum, textarget: GLenum, texture: WebGLTexture | null, level: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/frontFace) */
+ frontFace(mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/generateMipmap) */
+ generateMipmap(target: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getActiveAttrib) */
+ getActiveAttrib(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getActiveUniform) */
+ getActiveUniform(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getAttachedShaders) */
+ getAttachedShaders(program: WebGLProgram): WebGLShader[] | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getAttribLocation) */
+ getAttribLocation(program: WebGLProgram, name: string): GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getBufferParameter) */
+ getBufferParameter(target: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getContextAttributes) */
+ getContextAttributes(): WebGLContextAttributes | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getError) */
+ getError(): GLenum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getExtension) */
+ getExtension(extensionName: "ANGLE_instanced_arrays"): ANGLE_instanced_arrays | null;
+ getExtension(extensionName: "EXT_blend_minmax"): EXT_blend_minmax | null;
+ getExtension(extensionName: "EXT_color_buffer_float"): EXT_color_buffer_float | null;
+ getExtension(extensionName: "EXT_color_buffer_half_float"): EXT_color_buffer_half_float | null;
+ getExtension(extensionName: "EXT_float_blend"): EXT_float_blend | null;
+ getExtension(extensionName: "EXT_frag_depth"): EXT_frag_depth | null;
+ getExtension(extensionName: "EXT_sRGB"): EXT_sRGB | null;
+ getExtension(extensionName: "EXT_shader_texture_lod"): EXT_shader_texture_lod | null;
+ getExtension(extensionName: "EXT_texture_compression_bptc"): EXT_texture_compression_bptc | null;
+ getExtension(extensionName: "EXT_texture_compression_rgtc"): EXT_texture_compression_rgtc | null;
+ getExtension(extensionName: "EXT_texture_filter_anisotropic"): EXT_texture_filter_anisotropic | null;
+ getExtension(extensionName: "KHR_parallel_shader_compile"): KHR_parallel_shader_compile | null;
+ getExtension(extensionName: "OES_element_index_uint"): OES_element_index_uint | null;
+ getExtension(extensionName: "OES_fbo_render_mipmap"): OES_fbo_render_mipmap | null;
+ getExtension(extensionName: "OES_standard_derivatives"): OES_standard_derivatives | null;
+ getExtension(extensionName: "OES_texture_float"): OES_texture_float | null;
+ getExtension(extensionName: "OES_texture_float_linear"): OES_texture_float_linear | null;
+ getExtension(extensionName: "OES_texture_half_float"): OES_texture_half_float | null;
+ getExtension(extensionName: "OES_texture_half_float_linear"): OES_texture_half_float_linear | null;
+ getExtension(extensionName: "OES_vertex_array_object"): OES_vertex_array_object | null;
+ getExtension(extensionName: "OVR_multiview2"): OVR_multiview2 | null;
+ getExtension(extensionName: "WEBGL_color_buffer_float"): WEBGL_color_buffer_float | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_astc"): WEBGL_compressed_texture_astc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_etc"): WEBGL_compressed_texture_etc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_etc1"): WEBGL_compressed_texture_etc1 | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_pvrtc"): WEBGL_compressed_texture_pvrtc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_s3tc"): WEBGL_compressed_texture_s3tc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_s3tc_srgb"): WEBGL_compressed_texture_s3tc_srgb | null;
+ getExtension(extensionName: "WEBGL_debug_renderer_info"): WEBGL_debug_renderer_info | null;
+ getExtension(extensionName: "WEBGL_debug_shaders"): WEBGL_debug_shaders | null;
+ getExtension(extensionName: "WEBGL_depth_texture"): WEBGL_depth_texture | null;
+ getExtension(extensionName: "WEBGL_draw_buffers"): WEBGL_draw_buffers | null;
+ getExtension(extensionName: "WEBGL_lose_context"): WEBGL_lose_context | null;
+ getExtension(extensionName: "WEBGL_multi_draw"): WEBGL_multi_draw | null;
+ getExtension(name: string): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getFramebufferAttachmentParameter) */
+ getFramebufferAttachmentParameter(target: GLenum, attachment: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getParameter) */
+ getParameter(pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getProgramInfoLog) */
+ getProgramInfoLog(program: WebGLProgram): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getProgramParameter) */
+ getProgramParameter(program: WebGLProgram, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getRenderbufferParameter) */
+ getRenderbufferParameter(target: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderInfoLog) */
+ getShaderInfoLog(shader: WebGLShader): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderParameter) */
+ getShaderParameter(shader: WebGLShader, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderPrecisionFormat) */
+ getShaderPrecisionFormat(shadertype: GLenum, precisiontype: GLenum): WebGLShaderPrecisionFormat | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderSource) */
+ getShaderSource(shader: WebGLShader): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getSupportedExtensions) */
+ getSupportedExtensions(): string[] | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getTexParameter) */
+ getTexParameter(target: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getUniform) */
+ getUniform(program: WebGLProgram, location: WebGLUniformLocation): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getUniformLocation) */
+ getUniformLocation(program: WebGLProgram, name: string): WebGLUniformLocation | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getVertexAttrib) */
+ getVertexAttrib(index: GLuint, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getVertexAttribOffset) */
+ getVertexAttribOffset(index: GLuint, pname: GLenum): GLintptr;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/hint) */
+ hint(target: GLenum, mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isBuffer) */
+ isBuffer(buffer: WebGLBuffer | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isContextLost) */
+ isContextLost(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isEnabled) */
+ isEnabled(cap: GLenum): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isFramebuffer) */
+ isFramebuffer(framebuffer: WebGLFramebuffer | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isProgram) */
+ isProgram(program: WebGLProgram | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isRenderbuffer) */
+ isRenderbuffer(renderbuffer: WebGLRenderbuffer | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isShader) */
+ isShader(shader: WebGLShader | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isTexture) */
+ isTexture(texture: WebGLTexture | null): GLboolean;
+ lineWidth(width: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/linkProgram) */
+ linkProgram(program: WebGLProgram): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/pixelStorei) */
+ pixelStorei(pname: GLenum, param: GLint | GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/polygonOffset) */
+ polygonOffset(factor: GLfloat, units: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/renderbufferStorage) */
+ renderbufferStorage(target: GLenum, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/sampleCoverage) */
+ sampleCoverage(value: GLclampf, invert: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/scissor) */
+ scissor(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/shaderSource) */
+ shaderSource(shader: WebGLShader, source: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilFunc) */
+ stencilFunc(func: GLenum, ref: GLint, mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilFuncSeparate) */
+ stencilFuncSeparate(face: GLenum, func: GLenum, ref: GLint, mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilMask) */
+ stencilMask(mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilMaskSeparate) */
+ stencilMaskSeparate(face: GLenum, mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilOp) */
+ stencilOp(fail: GLenum, zfail: GLenum, zpass: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilOpSeparate) */
+ stencilOpSeparate(face: GLenum, fail: GLenum, zfail: GLenum, zpass: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texParameter) */
+ texParameterf(target: GLenum, pname: GLenum, param: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texParameter) */
+ texParameteri(target: GLenum, pname: GLenum, param: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1f(location: WebGLUniformLocation | null, x: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1i(location: WebGLUniformLocation | null, x: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2i(location: WebGLUniformLocation | null, x: GLint, y: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat, z: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3i(location: WebGLUniformLocation | null, x: GLint, y: GLint, z: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4i(location: WebGLUniformLocation | null, x: GLint, y: GLint, z: GLint, w: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/useProgram) */
+ useProgram(program: WebGLProgram | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/validateProgram) */
+ validateProgram(program: WebGLProgram): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib1f(index: GLuint, x: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib1fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib2f(index: GLuint, x: GLfloat, y: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib2fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib3f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib3fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib4f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib4fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttribPointer) */
+ vertexAttribPointer(index: GLuint, size: GLint, type: GLenum, normalized: GLboolean, stride: GLsizei, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/viewport) */
+ viewport(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ readonly DEPTH_BUFFER_BIT: 0x00000100;
+ readonly STENCIL_BUFFER_BIT: 0x00000400;
+ readonly COLOR_BUFFER_BIT: 0x00004000;
+ readonly POINTS: 0x0000;
+ readonly LINES: 0x0001;
+ readonly LINE_LOOP: 0x0002;
+ readonly LINE_STRIP: 0x0003;
+ readonly TRIANGLES: 0x0004;
+ readonly TRIANGLE_STRIP: 0x0005;
+ readonly TRIANGLE_FAN: 0x0006;
+ readonly ZERO: 0;
+ readonly ONE: 1;
+ readonly SRC_COLOR: 0x0300;
+ readonly ONE_MINUS_SRC_COLOR: 0x0301;
+ readonly SRC_ALPHA: 0x0302;
+ readonly ONE_MINUS_SRC_ALPHA: 0x0303;
+ readonly DST_ALPHA: 0x0304;
+ readonly ONE_MINUS_DST_ALPHA: 0x0305;
+ readonly DST_COLOR: 0x0306;
+ readonly ONE_MINUS_DST_COLOR: 0x0307;
+ readonly SRC_ALPHA_SATURATE: 0x0308;
+ readonly FUNC_ADD: 0x8006;
+ readonly BLEND_EQUATION: 0x8009;
+ readonly BLEND_EQUATION_RGB: 0x8009;
+ readonly BLEND_EQUATION_ALPHA: 0x883D;
+ readonly FUNC_SUBTRACT: 0x800A;
+ readonly FUNC_REVERSE_SUBTRACT: 0x800B;
+ readonly BLEND_DST_RGB: 0x80C8;
+ readonly BLEND_SRC_RGB: 0x80C9;
+ readonly BLEND_DST_ALPHA: 0x80CA;
+ readonly BLEND_SRC_ALPHA: 0x80CB;
+ readonly CONSTANT_COLOR: 0x8001;
+ readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
+ readonly CONSTANT_ALPHA: 0x8003;
+ readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
+ readonly BLEND_COLOR: 0x8005;
+ readonly ARRAY_BUFFER: 0x8892;
+ readonly ELEMENT_ARRAY_BUFFER: 0x8893;
+ readonly ARRAY_BUFFER_BINDING: 0x8894;
+ readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
+ readonly STREAM_DRAW: 0x88E0;
+ readonly STATIC_DRAW: 0x88E4;
+ readonly DYNAMIC_DRAW: 0x88E8;
+ readonly BUFFER_SIZE: 0x8764;
+ readonly BUFFER_USAGE: 0x8765;
+ readonly CURRENT_VERTEX_ATTRIB: 0x8626;
+ readonly FRONT: 0x0404;
+ readonly BACK: 0x0405;
+ readonly FRONT_AND_BACK: 0x0408;
+ readonly CULL_FACE: 0x0B44;
+ readonly BLEND: 0x0BE2;
+ readonly DITHER: 0x0BD0;
+ readonly STENCIL_TEST: 0x0B90;
+ readonly DEPTH_TEST: 0x0B71;
+ readonly SCISSOR_TEST: 0x0C11;
+ readonly POLYGON_OFFSET_FILL: 0x8037;
+ readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
+ readonly SAMPLE_COVERAGE: 0x80A0;
+ readonly NO_ERROR: 0;
+ readonly INVALID_ENUM: 0x0500;
+ readonly INVALID_VALUE: 0x0501;
+ readonly INVALID_OPERATION: 0x0502;
+ readonly OUT_OF_MEMORY: 0x0505;
+ readonly CW: 0x0900;
+ readonly CCW: 0x0901;
+ readonly LINE_WIDTH: 0x0B21;
+ readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
+ readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
+ readonly CULL_FACE_MODE: 0x0B45;
+ readonly FRONT_FACE: 0x0B46;
+ readonly DEPTH_RANGE: 0x0B70;
+ readonly DEPTH_WRITEMASK: 0x0B72;
+ readonly DEPTH_CLEAR_VALUE: 0x0B73;
+ readonly DEPTH_FUNC: 0x0B74;
+ readonly STENCIL_CLEAR_VALUE: 0x0B91;
+ readonly STENCIL_FUNC: 0x0B92;
+ readonly STENCIL_FAIL: 0x0B94;
+ readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
+ readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
+ readonly STENCIL_REF: 0x0B97;
+ readonly STENCIL_VALUE_MASK: 0x0B93;
+ readonly STENCIL_WRITEMASK: 0x0B98;
+ readonly STENCIL_BACK_FUNC: 0x8800;
+ readonly STENCIL_BACK_FAIL: 0x8801;
+ readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
+ readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
+ readonly STENCIL_BACK_REF: 0x8CA3;
+ readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
+ readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
+ readonly VIEWPORT: 0x0BA2;
+ readonly SCISSOR_BOX: 0x0C10;
+ readonly COLOR_CLEAR_VALUE: 0x0C22;
+ readonly COLOR_WRITEMASK: 0x0C23;
+ readonly UNPACK_ALIGNMENT: 0x0CF5;
+ readonly PACK_ALIGNMENT: 0x0D05;
+ readonly MAX_TEXTURE_SIZE: 0x0D33;
+ readonly MAX_VIEWPORT_DIMS: 0x0D3A;
+ readonly SUBPIXEL_BITS: 0x0D50;
+ readonly RED_BITS: 0x0D52;
+ readonly GREEN_BITS: 0x0D53;
+ readonly BLUE_BITS: 0x0D54;
+ readonly ALPHA_BITS: 0x0D55;
+ readonly DEPTH_BITS: 0x0D56;
+ readonly STENCIL_BITS: 0x0D57;
+ readonly POLYGON_OFFSET_UNITS: 0x2A00;
+ readonly POLYGON_OFFSET_FACTOR: 0x8038;
+ readonly TEXTURE_BINDING_2D: 0x8069;
+ readonly SAMPLE_BUFFERS: 0x80A8;
+ readonly SAMPLES: 0x80A9;
+ readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
+ readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
+ readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
+ readonly DONT_CARE: 0x1100;
+ readonly FASTEST: 0x1101;
+ readonly NICEST: 0x1102;
+ readonly GENERATE_MIPMAP_HINT: 0x8192;
+ readonly BYTE: 0x1400;
+ readonly UNSIGNED_BYTE: 0x1401;
+ readonly SHORT: 0x1402;
+ readonly UNSIGNED_SHORT: 0x1403;
+ readonly INT: 0x1404;
+ readonly UNSIGNED_INT: 0x1405;
+ readonly FLOAT: 0x1406;
+ readonly DEPTH_COMPONENT: 0x1902;
+ readonly ALPHA: 0x1906;
+ readonly RGB: 0x1907;
+ readonly RGBA: 0x1908;
+ readonly LUMINANCE: 0x1909;
+ readonly LUMINANCE_ALPHA: 0x190A;
+ readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
+ readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
+ readonly UNSIGNED_SHORT_5_6_5: 0x8363;
+ readonly FRAGMENT_SHADER: 0x8B30;
+ readonly VERTEX_SHADER: 0x8B31;
+ readonly MAX_VERTEX_ATTRIBS: 0x8869;
+ readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
+ readonly MAX_VARYING_VECTORS: 0x8DFC;
+ readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
+ readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
+ readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
+ readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
+ readonly SHADER_TYPE: 0x8B4F;
+ readonly DELETE_STATUS: 0x8B80;
+ readonly LINK_STATUS: 0x8B82;
+ readonly VALIDATE_STATUS: 0x8B83;
+ readonly ATTACHED_SHADERS: 0x8B85;
+ readonly ACTIVE_UNIFORMS: 0x8B86;
+ readonly ACTIVE_ATTRIBUTES: 0x8B89;
+ readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
+ readonly CURRENT_PROGRAM: 0x8B8D;
+ readonly NEVER: 0x0200;
+ readonly LESS: 0x0201;
+ readonly EQUAL: 0x0202;
+ readonly LEQUAL: 0x0203;
+ readonly GREATER: 0x0204;
+ readonly NOTEQUAL: 0x0205;
+ readonly GEQUAL: 0x0206;
+ readonly ALWAYS: 0x0207;
+ readonly KEEP: 0x1E00;
+ readonly REPLACE: 0x1E01;
+ readonly INCR: 0x1E02;
+ readonly DECR: 0x1E03;
+ readonly INVERT: 0x150A;
+ readonly INCR_WRAP: 0x8507;
+ readonly DECR_WRAP: 0x8508;
+ readonly VENDOR: 0x1F00;
+ readonly RENDERER: 0x1F01;
+ readonly VERSION: 0x1F02;
+ readonly NEAREST: 0x2600;
+ readonly LINEAR: 0x2601;
+ readonly NEAREST_MIPMAP_NEAREST: 0x2700;
+ readonly LINEAR_MIPMAP_NEAREST: 0x2701;
+ readonly NEAREST_MIPMAP_LINEAR: 0x2702;
+ readonly LINEAR_MIPMAP_LINEAR: 0x2703;
+ readonly TEXTURE_MAG_FILTER: 0x2800;
+ readonly TEXTURE_MIN_FILTER: 0x2801;
+ readonly TEXTURE_WRAP_S: 0x2802;
+ readonly TEXTURE_WRAP_T: 0x2803;
+ readonly TEXTURE_2D: 0x0DE1;
+ readonly TEXTURE: 0x1702;
+ readonly TEXTURE_CUBE_MAP: 0x8513;
+ readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
+ readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
+ readonly TEXTURE0: 0x84C0;
+ readonly TEXTURE1: 0x84C1;
+ readonly TEXTURE2: 0x84C2;
+ readonly TEXTURE3: 0x84C3;
+ readonly TEXTURE4: 0x84C4;
+ readonly TEXTURE5: 0x84C5;
+ readonly TEXTURE6: 0x84C6;
+ readonly TEXTURE7: 0x84C7;
+ readonly TEXTURE8: 0x84C8;
+ readonly TEXTURE9: 0x84C9;
+ readonly TEXTURE10: 0x84CA;
+ readonly TEXTURE11: 0x84CB;
+ readonly TEXTURE12: 0x84CC;
+ readonly TEXTURE13: 0x84CD;
+ readonly TEXTURE14: 0x84CE;
+ readonly TEXTURE15: 0x84CF;
+ readonly TEXTURE16: 0x84D0;
+ readonly TEXTURE17: 0x84D1;
+ readonly TEXTURE18: 0x84D2;
+ readonly TEXTURE19: 0x84D3;
+ readonly TEXTURE20: 0x84D4;
+ readonly TEXTURE21: 0x84D5;
+ readonly TEXTURE22: 0x84D6;
+ readonly TEXTURE23: 0x84D7;
+ readonly TEXTURE24: 0x84D8;
+ readonly TEXTURE25: 0x84D9;
+ readonly TEXTURE26: 0x84DA;
+ readonly TEXTURE27: 0x84DB;
+ readonly TEXTURE28: 0x84DC;
+ readonly TEXTURE29: 0x84DD;
+ readonly TEXTURE30: 0x84DE;
+ readonly TEXTURE31: 0x84DF;
+ readonly ACTIVE_TEXTURE: 0x84E0;
+ readonly REPEAT: 0x2901;
+ readonly CLAMP_TO_EDGE: 0x812F;
+ readonly MIRRORED_REPEAT: 0x8370;
+ readonly FLOAT_VEC2: 0x8B50;
+ readonly FLOAT_VEC3: 0x8B51;
+ readonly FLOAT_VEC4: 0x8B52;
+ readonly INT_VEC2: 0x8B53;
+ readonly INT_VEC3: 0x8B54;
+ readonly INT_VEC4: 0x8B55;
+ readonly BOOL: 0x8B56;
+ readonly BOOL_VEC2: 0x8B57;
+ readonly BOOL_VEC3: 0x8B58;
+ readonly BOOL_VEC4: 0x8B59;
+ readonly FLOAT_MAT2: 0x8B5A;
+ readonly FLOAT_MAT3: 0x8B5B;
+ readonly FLOAT_MAT4: 0x8B5C;
+ readonly SAMPLER_2D: 0x8B5E;
+ readonly SAMPLER_CUBE: 0x8B60;
+ readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
+ readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
+ readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
+ readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
+ readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
+ readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
+ readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
+ readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
+ readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
+ readonly COMPILE_STATUS: 0x8B81;
+ readonly LOW_FLOAT: 0x8DF0;
+ readonly MEDIUM_FLOAT: 0x8DF1;
+ readonly HIGH_FLOAT: 0x8DF2;
+ readonly LOW_INT: 0x8DF3;
+ readonly MEDIUM_INT: 0x8DF4;
+ readonly HIGH_INT: 0x8DF5;
+ readonly FRAMEBUFFER: 0x8D40;
+ readonly RENDERBUFFER: 0x8D41;
+ readonly RGBA4: 0x8056;
+ readonly RGB5_A1: 0x8057;
+ readonly RGBA8: 0x8058;
+ readonly RGB565: 0x8D62;
+ readonly DEPTH_COMPONENT16: 0x81A5;
+ readonly STENCIL_INDEX8: 0x8D48;
+ readonly DEPTH_STENCIL: 0x84F9;
+ readonly RENDERBUFFER_WIDTH: 0x8D42;
+ readonly RENDERBUFFER_HEIGHT: 0x8D43;
+ readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
+ readonly RENDERBUFFER_RED_SIZE: 0x8D50;
+ readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
+ readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
+ readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
+ readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
+ readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
+ readonly COLOR_ATTACHMENT0: 0x8CE0;
+ readonly DEPTH_ATTACHMENT: 0x8D00;
+ readonly STENCIL_ATTACHMENT: 0x8D20;
+ readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
+ readonly NONE: 0;
+ readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
+ readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
+ readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
+ readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
+ readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
+ readonly FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly RENDERBUFFER_BINDING: 0x8CA7;
+ readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
+ readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
+ readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
+ readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
+ readonly CONTEXT_LOST_WEBGL: 0x9242;
+ readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
+ readonly BROWSER_DEFAULT_WEBGL: 0x9244;
+}
+
+interface WebGLRenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferData) */
+ bufferData(target: GLenum, size: GLsizeiptr, usage: GLenum): void;
+ bufferData(target: GLenum, data: AllowSharedBufferSource | null, usage: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferSubData) */
+ bufferSubData(target: GLenum, offset: GLintptr, data: AllowSharedBufferSource): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexImage2D) */
+ compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, data: ArrayBufferView): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexSubImage2D) */
+ compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, data: ArrayBufferView): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/readPixels) */
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texImage2D) */
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texSubImage2D) */
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Float32List): void;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLSampler) */
+interface WebGLSampler {
+}
+
+declare var WebGLSampler: {
+ prototype: WebGLSampler;
+ new(): WebGLSampler;
+};
+
+/**
+ * The WebGLShader is part of the WebGL API and can either be a vertex or a fragment shader. A WebGLProgram requires both types of shaders.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShader)
+ */
+interface WebGLShader {
+}
+
+declare var WebGLShader: {
+ prototype: WebGLShader;
+ new(): WebGLShader;
+};
+
+/**
+ * Part of the WebGL API and represents the information returned by calling the WebGLRenderingContext.getShaderPrecisionFormat() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat)
+ */
+interface WebGLShaderPrecisionFormat {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/precision) */
+ readonly precision: GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/rangeMax) */
+ readonly rangeMax: GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/rangeMin) */
+ readonly rangeMin: GLint;
+}
+
+declare var WebGLShaderPrecisionFormat: {
+ prototype: WebGLShaderPrecisionFormat;
+ new(): WebGLShaderPrecisionFormat;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLSync) */
+interface WebGLSync {
+}
+
+declare var WebGLSync: {
+ prototype: WebGLSync;
+ new(): WebGLSync;
+};
+
+/**
+ * Part of the WebGL API and represents an opaque texture object providing storage and state for texturing operations.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLTexture)
+ */
+interface WebGLTexture {
+}
+
+declare var WebGLTexture: {
+ prototype: WebGLTexture;
+ new(): WebGLTexture;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLTransformFeedback) */
+interface WebGLTransformFeedback {
+}
+
+declare var WebGLTransformFeedback: {
+ prototype: WebGLTransformFeedback;
+ new(): WebGLTransformFeedback;
+};
+
+/**
+ * Part of the WebGL API and represents the location of a uniform variable in a shader program.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLUniformLocation)
+ */
+interface WebGLUniformLocation {
+}
+
+declare var WebGLUniformLocation: {
+ prototype: WebGLUniformLocation;
+ new(): WebGLUniformLocation;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLVertexArrayObject) */
+interface WebGLVertexArrayObject {
+}
+
+declare var WebGLVertexArrayObject: {
+ prototype: WebGLVertexArrayObject;
+ new(): WebGLVertexArrayObject;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLVertexArrayObjectOES) */
+interface WebGLVertexArrayObjectOES {
+}
+
+interface WebSocketEventMap {
+ "close": CloseEvent;
+ "error": Event;
+ "message": MessageEvent;
+ "open": Event;
+}
+
+/**
+ * Provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket)
+ */
+interface WebSocket extends EventTarget {
+ /**
+ * Returns a string that indicates how binary data from the WebSocket object is exposed to scripts:
+ *
+ * Can be set, to change how binary data is returned. The default is "blob".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/binaryType)
+ */
+ binaryType: BinaryType;
+ /**
+ * Returns the number of bytes of application data (UTF-8 text and binary data) that have been queued using send() but not yet been transmitted to the network.
+ *
+ * If the WebSocket connection is closed, this attribute's value will only increase with each call to the send() method. (The number does not reset to zero once the connection closes.)
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/bufferedAmount)
+ */
+ readonly bufferedAmount: number;
+ /**
+ * Returns the extensions selected by the server, if any.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/extensions)
+ */
+ readonly extensions: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/close_event) */
+ onclose: ((this: WebSocket, ev: CloseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/error_event) */
+ onerror: ((this: WebSocket, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/message_event) */
+ onmessage: ((this: WebSocket, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/open_event) */
+ onopen: ((this: WebSocket, ev: Event) => any) | null;
+ /**
+ * Returns the subprotocol selected by the server, if any. It can be used in conjunction with the array form of the constructor's second argument to perform subprotocol negotiation.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/protocol)
+ */
+ readonly protocol: string;
+ /**
+ * Returns the state of the WebSocket object's connection. It can have the values described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState)
+ */
+ readonly readyState: number;
+ /**
+ * Returns the URL that was used to establish the WebSocket connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/url)
+ */
+ readonly url: string;
+ /**
+ * Closes the WebSocket connection, optionally using code as the the WebSocket connection close code and reason as the the WebSocket connection close reason.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/close)
+ */
+ close(code?: number, reason?: string): void;
+ /**
+ * Transmits data using the WebSocket connection. data can be a string, a Blob, an ArrayBuffer, or an ArrayBufferView.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/send)
+ */
+ send(data: string | ArrayBufferLike | Blob | ArrayBufferView): void;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSING: 2;
+ readonly CLOSED: 3;
+ addEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var WebSocket: {
+ prototype: WebSocket;
+ new(url: string | URL, protocols?: string | string[]): WebSocket;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSING: 2;
+ readonly CLOSED: 3;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport)
+ */
+interface WebTransport {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/closed) */
+ readonly closed: Promise<WebTransportCloseInfo>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/datagrams) */
+ readonly datagrams: WebTransportDatagramDuplexStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingBidirectionalStreams) */
+ readonly incomingBidirectionalStreams: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingUnidirectionalStreams) */
+ readonly incomingUnidirectionalStreams: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/ready) */
+ readonly ready: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/close) */
+ close(closeInfo?: WebTransportCloseInfo): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createBidirectionalStream) */
+ createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WebTransportBidirectionalStream>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createUnidirectionalStream) */
+ createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WritableStream>;
+}
+
+declare var WebTransport: {
+ prototype: WebTransport;
+ new(url: string | URL, options?: WebTransportOptions): WebTransport;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream)
+ */
+interface WebTransportBidirectionalStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/readable) */
+ readonly readable: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/writable) */
+ readonly writable: WritableStream;
+}
+
+declare var WebTransportBidirectionalStream: {
+ prototype: WebTransportBidirectionalStream;
+ new(): WebTransportBidirectionalStream;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream)
+ */
+interface WebTransportDatagramDuplexStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingHighWaterMark) */
+ incomingHighWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingMaxAge) */
+ incomingMaxAge: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/maxDatagramSize) */
+ readonly maxDatagramSize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingHighWaterMark) */
+ outgoingHighWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingMaxAge) */
+ outgoingMaxAge: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/readable) */
+ readonly readable: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/writable) */
+ readonly writable: WritableStream;
+}
+
+declare var WebTransportDatagramDuplexStream: {
+ prototype: WebTransportDatagramDuplexStream;
+ new(): WebTransportDatagramDuplexStream;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError)
+ */
+interface WebTransportError extends DOMException {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/source) */
+ readonly source: WebTransportErrorSource;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/streamErrorCode) */
+ readonly streamErrorCode: number | null;
+}
+
+declare var WebTransportError: {
+ prototype: WebTransportError;
+ new(message?: string, options?: WebTransportErrorOptions): WebTransportError;
+};
+
+/**
+ * Events that occur due to the user moving a mouse wheel or similar input device.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent)
+ */
+interface WheelEvent extends MouseEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaMode) */
+ readonly deltaMode: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaX) */
+ readonly deltaX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaY) */
+ readonly deltaY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WheelEvent/deltaZ) */
+ readonly deltaZ: number;
+ readonly DOM_DELTA_PIXEL: 0x00;
+ readonly DOM_DELTA_LINE: 0x01;
+ readonly DOM_DELTA_PAGE: 0x02;
+}
+
+declare var WheelEvent: {
+ prototype: WheelEvent;
+ new(type: string, eventInitDict?: WheelEventInit): WheelEvent;
+ readonly DOM_DELTA_PIXEL: 0x00;
+ readonly DOM_DELTA_LINE: 0x01;
+ readonly DOM_DELTA_PAGE: 0x02;
+};
+
+interface WindowEventMap extends GlobalEventHandlersEventMap, WindowEventHandlersEventMap {
+ "DOMContentLoaded": Event;
+ "devicemotion": DeviceMotionEvent;
+ "deviceorientation": DeviceOrientationEvent;
+ "deviceorientationabsolute": DeviceOrientationEvent;
+ "gamepadconnected": GamepadEvent;
+ "gamepaddisconnected": GamepadEvent;
+ "orientationchange": Event;
+}
+
+/**
+ * A window containing a DOM document; the document property points to the DOM document loaded in that window.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window)
+ */
+interface Window extends EventTarget, AnimationFrameProvider, GlobalEventHandlers, WindowEventHandlers, WindowLocalStorage, WindowOrWorkerGlobalScope, WindowSessionStorage {
+ /**
+ * @deprecated This is a legacy alias of \`navigator\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/navigator)
+ */
+ readonly clientInformation: Navigator;
+ /**
+ * Returns true if the window has been closed, false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/closed)
+ */
+ readonly closed: boolean;
+ /**
+ * Defines a new custom element, mapping the given name to the given constructor as an autonomous custom element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/customElements)
+ */
+ readonly customElements: CustomElementRegistry;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/devicePixelRatio) */
+ readonly devicePixelRatio: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/document) */
+ readonly document: Document;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/event)
+ */
+ readonly event: Event | undefined;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/external)
+ */
+ readonly external: External;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/frameElement) */
+ readonly frameElement: Element | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/frames) */
+ readonly frames: WindowProxy;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/history) */
+ readonly history: History;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/innerHeight) */
+ readonly innerHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/innerWidth) */
+ readonly innerWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/location) */
+ get location(): Location;
+ set location(href: string | Location);
+ /**
+ * Returns true if the location bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/locationbar)
+ */
+ readonly locationbar: BarProp;
+ /**
+ * Returns true if the menu bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/menubar)
+ */
+ readonly menubar: BarProp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/name) */
+ name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/navigator) */
+ readonly navigator: Navigator;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/devicemotion_event)
+ */
+ ondevicemotion: ((this: Window, ev: DeviceMotionEvent) => any) | null;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/deviceorientation_event)
+ */
+ ondeviceorientation: ((this: Window, ev: DeviceOrientationEvent) => any) | null;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/deviceorientationabsolute_event)
+ */
+ ondeviceorientationabsolute: ((this: Window, ev: DeviceOrientationEvent) => any) | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/orientationchange_event)
+ */
+ onorientationchange: ((this: Window, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/opener) */
+ opener: any;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/orientation)
+ */
+ readonly orientation: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/outerHeight) */
+ readonly outerHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/outerWidth) */
+ readonly outerWidth: number;
+ /**
+ * @deprecated This is a legacy alias of \`scrollX\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollX)
+ */
+ readonly pageXOffset: number;
+ /**
+ * @deprecated This is a legacy alias of \`scrollY\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollY)
+ */
+ readonly pageYOffset: number;
+ /**
+ * Refers to either the parent WindowProxy, or itself.
+ *
+ * It can rarely be null e.g. for contentWindow of an iframe that is already removed from the parent.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/parent)
+ */
+ readonly parent: WindowProxy;
+ /**
+ * Returns true if the personal bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/personalbar)
+ */
+ readonly personalbar: BarProp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screen) */
+ readonly screen: Screen;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenLeft) */
+ readonly screenLeft: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenTop) */
+ readonly screenTop: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenX) */
+ readonly screenX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenY) */
+ readonly screenY: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollX) */
+ readonly scrollX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollY) */
+ readonly scrollY: number;
+ /**
+ * Returns true if the scrollbars are visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollbars)
+ */
+ readonly scrollbars: BarProp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/self) */
+ readonly self: Window & typeof globalThis;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/speechSynthesis) */
+ readonly speechSynthesis: SpeechSynthesis;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/status)
+ */
+ status: string;
+ /**
+ * Returns true if the status bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/statusbar)
+ */
+ readonly statusbar: BarProp;
+ /**
+ * Returns true if the toolbar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/toolbar)
+ */
+ readonly toolbar: BarProp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/top) */
+ readonly top: WindowProxy | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/visualViewport) */
+ readonly visualViewport: VisualViewport | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/window) */
+ readonly window: Window & typeof globalThis;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/alert) */
+ alert(message?: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/blur) */
+ blur(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/cancelIdleCallback) */
+ cancelIdleCallback(handle: number): void;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/captureEvents)
+ */
+ captureEvents(): void;
+ /**
+ * Closes the window.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/close)
+ */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/confirm) */
+ confirm(message?: string): boolean;
+ /**
+ * Moves the focus to the window's browsing context, if any.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/focus)
+ */
+ focus(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/getComputedStyle) */
+ getComputedStyle(elt: Element, pseudoElt?: string | null): CSSStyleDeclaration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/getSelection) */
+ getSelection(): Selection | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/matchMedia) */
+ matchMedia(query: string): MediaQueryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/moveBy) */
+ moveBy(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/moveTo) */
+ moveTo(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/open) */
+ open(url?: string | URL, target?: string, features?: string): WindowProxy | null;
+ /**
+ * Posts a message to the given window. Messages can be structured objects, e.g. nested objects and arrays, can contain JavaScript values (strings, numbers, Date objects, etc), and can contain certain data objects such as File Blob, FileList, and ArrayBuffer objects.
+ *
+ * Objects listed in the transfer member of options are transferred, not just cloned, meaning that they are no longer usable on the sending side.
+ *
+ * A target origin can be specified using the targetOrigin member of options. If not provided, it defaults to "/". This default restricts the message to same-origin targets only.
+ *
+ * If the origin of the target window doesn't match the given target origin, the message is discarded, to avoid information leakage. To send the message to the target regardless of origin, set the target origin to "*".
+ *
+ * Throws a "DataCloneError" DOMException if transfer array contains duplicate objects or if message could not be cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/postMessage)
+ */
+ postMessage(message: any, targetOrigin: string, transfer?: Transferable[]): void;
+ postMessage(message: any, options?: WindowPostMessageOptions): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/print) */
+ print(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/prompt) */
+ prompt(message?: string, _default?: string): string | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/releaseEvents)
+ */
+ releaseEvents(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/requestIdleCallback) */
+ requestIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/resizeBy) */
+ resizeBy(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/resizeTo) */
+ resizeTo(width: number, height: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scroll) */
+ scroll(options?: ScrollToOptions): void;
+ scroll(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollBy) */
+ scrollBy(options?: ScrollToOptions): void;
+ scrollBy(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollTo) */
+ scrollTo(options?: ScrollToOptions): void;
+ scrollTo(x: number, y: number): void;
+ /**
+ * Cancels the document load.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/stop)
+ */
+ stop(): void;
+ addEventListener<K extends keyof WindowEventMap>(type: K, listener: (this: Window, ev: WindowEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WindowEventMap>(type: K, listener: (this: Window, ev: WindowEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+ [index: number]: Window;
+}
+
+declare var Window: {
+ prototype: Window;
+ new(): Window;
+};
+
+interface WindowEventHandlersEventMap {
+ "afterprint": Event;
+ "beforeprint": Event;
+ "beforeunload": BeforeUnloadEvent;
+ "gamepadconnected": GamepadEvent;
+ "gamepaddisconnected": GamepadEvent;
+ "hashchange": HashChangeEvent;
+ "languagechange": Event;
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+ "offline": Event;
+ "online": Event;
+ "pagehide": PageTransitionEvent;
+ "pageshow": PageTransitionEvent;
+ "popstate": PopStateEvent;
+ "rejectionhandled": PromiseRejectionEvent;
+ "storage": StorageEvent;
+ "unhandledrejection": PromiseRejectionEvent;
+ "unload": Event;
+}
+
+interface WindowEventHandlers {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/afterprint_event) */
+ onafterprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/beforeprint_event) */
+ onbeforeprint: ((this: WindowEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/beforeunload_event) */
+ onbeforeunload: ((this: WindowEventHandlers, ev: BeforeUnloadEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/gamepadconnected_event) */
+ ongamepadconnected: ((this: WindowEventHandlers, ev: GamepadEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/gamepaddisconnected_event) */
+ ongamepaddisconnected: ((this: WindowEventHandlers, ev: GamepadEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/hashchange_event) */
+ onhashchange: ((this: WindowEventHandlers, ev: HashChangeEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/languagechange_event) */
+ onlanguagechange: ((this: WindowEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/message_event) */
+ onmessage: ((this: WindowEventHandlers, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/messageerror_event) */
+ onmessageerror: ((this: WindowEventHandlers, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/offline_event) */
+ onoffline: ((this: WindowEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/online_event) */
+ ononline: ((this: WindowEventHandlers, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/pagehide_event) */
+ onpagehide: ((this: WindowEventHandlers, ev: PageTransitionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/pageshow_event) */
+ onpageshow: ((this: WindowEventHandlers, ev: PageTransitionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/popstate_event) */
+ onpopstate: ((this: WindowEventHandlers, ev: PopStateEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/rejectionhandled_event) */
+ onrejectionhandled: ((this: WindowEventHandlers, ev: PromiseRejectionEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/storage_event) */
+ onstorage: ((this: WindowEventHandlers, ev: StorageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/unhandledrejection_event) */
+ onunhandledrejection: ((this: WindowEventHandlers, ev: PromiseRejectionEvent) => any) | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/unload_event)
+ */
+ onunload: ((this: WindowEventHandlers, ev: Event) => any) | null;
+ addEventListener<K extends keyof WindowEventHandlersEventMap>(type: K, listener: (this: WindowEventHandlers, ev: WindowEventHandlersEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WindowEventHandlersEventMap>(type: K, listener: (this: WindowEventHandlers, ev: WindowEventHandlersEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+interface WindowLocalStorage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/localStorage) */
+ readonly localStorage: Storage;
+}
+
+interface WindowOrWorkerGlobalScope {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/caches)
+ */
+ readonly caches: CacheStorage;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crossOriginIsolated) */
+ readonly crossOriginIsolated: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crypto_property) */
+ readonly crypto: Crypto;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/indexedDB) */
+ readonly indexedDB: IDBFactory;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/isSecureContext) */
+ readonly isSecureContext: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/origin) */
+ readonly origin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/performance_property) */
+ readonly performance: Performance;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/atob) */
+ atob(data: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/btoa) */
+ btoa(data: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearInterval) */
+ clearInterval(id: number | undefined): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearTimeout) */
+ clearTimeout(id: number | undefined): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/createImageBitmap) */
+ createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+ createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/fetch) */
+ fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/queueMicrotask) */
+ queueMicrotask(callback: VoidFunction): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/reportError) */
+ reportError(e: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setInterval) */
+ setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setTimeout) */
+ setTimeout(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/structuredClone) */
+ structuredClone<T = any>(value: T, options?: StructuredSerializeOptions): T;
+}
+
+interface WindowSessionStorage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/sessionStorage) */
+ readonly sessionStorage: Storage;
+}
+
+interface WorkerEventMap extends AbstractWorkerEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/**
+ * This Web Workers API interface represents a background task that can be easily created and can send messages back to its creator. Creating a worker is as simple as calling the Worker() constructor and specifying a script to be run in the worker thread.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker)
+ */
+interface Worker extends EventTarget, AbstractWorker {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/message_event) */
+ onmessage: ((this: Worker, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/messageerror_event) */
+ onmessageerror: ((this: Worker, ev: MessageEvent) => any) | null;
+ /**
+ * Clones message and transmits it to worker's global environment. transfer can be passed as a list of objects that are to be transferred rather than cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/postMessage)
+ */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+ /**
+ * Aborts worker's associated global environment.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/terminate)
+ */
+ terminate(): void;
+ addEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: Worker, ev: WorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: Worker, ev: WorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Worker: {
+ prototype: Worker;
+ new(scriptURL: string | URL, options?: WorkerOptions): Worker;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worklet)
+ */
+interface Worklet {
+ /**
+ * Loads and executes the module script given by moduleURL into all of worklet's global scopes. It can also create additional global scopes as part of this process, depending on the worklet type. The returned promise will fulfill once the script has been successfully loaded and run in all global scopes.
+ *
+ * The credentials option can be set to a credentials mode to modify the script-fetching process. It defaults to "same-origin".
+ *
+ * Any failures in fetching the script or its dependencies will cause the returned promise to be rejected with an "AbortError" DOMException. Any errors in parsing the script or its dependencies will cause the returned promise to be rejected with the exception generated during parsing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worklet/addModule)
+ */
+ addModule(moduleURL: string | URL, options?: WorkletOptions): Promise<void>;
+}
+
+declare var Worklet: {
+ prototype: Worklet;
+ new(): Worklet;
+};
+
+/**
+ * This Streams API interface provides a standard abstraction for writing streaming data to a destination, known as a sink. This object comes with built-in backpressure and queuing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream)
+ */
+interface WritableStream<W = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/locked) */
+ readonly locked: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/abort) */
+ abort(reason?: any): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/close) */
+ close(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/getWriter) */
+ getWriter(): WritableStreamDefaultWriter<W>;
+}
+
+declare var WritableStream: {
+ prototype: WritableStream;
+ new<W = any>(underlyingSink?: UnderlyingSink<W>, strategy?: QueuingStrategy<W>): WritableStream<W>;
+};
+
+/**
+ * This Streams API interface represents a controller allowing control of a WritableStream's state. When constructing a WritableStream, the underlying sink is given a corresponding WritableStreamDefaultController instance to manipulate.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController)
+ */
+interface WritableStreamDefaultController {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/signal) */
+ readonly signal: AbortSignal;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/error) */
+ error(e?: any): void;
+}
+
+declare var WritableStreamDefaultController: {
+ prototype: WritableStreamDefaultController;
+ new(): WritableStreamDefaultController;
+};
+
+/**
+ * This Streams API interface is the object returned by WritableStream.getWriter() and once created locks the < writer to the WritableStream ensuring that no other streams can write to the underlying sink.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter)
+ */
+interface WritableStreamDefaultWriter<W = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/closed) */
+ readonly closed: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/ready) */
+ readonly ready: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/abort) */
+ abort(reason?: any): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/close) */
+ close(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/releaseLock) */
+ releaseLock(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/write) */
+ write(chunk?: W): Promise<void>;
+}
+
+declare var WritableStreamDefaultWriter: {
+ prototype: WritableStreamDefaultWriter;
+ new<W = any>(stream: WritableStream<W>): WritableStreamDefaultWriter<W>;
+};
+
+/**
+ * An XML document. It inherits from the generic Document and does not add any specific methods or properties to it: nevertheless, several algorithms behave differently with the two types of documents.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLDocument)
+ */
+interface XMLDocument extends Document {
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: XMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: XMLDocument, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var XMLDocument: {
+ prototype: XMLDocument;
+ new(): XMLDocument;
+};
+
+interface XMLHttpRequestEventMap extends XMLHttpRequestEventTargetEventMap {
+ "readystatechange": Event;
+}
+
+/**
+ * Use XMLHttpRequest (XHR) objects to interact with servers. You can retrieve data from a URL without having to do a full page refresh. This enables a Web page to update just part of a page without disrupting what the user is doing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest)
+ */
+interface XMLHttpRequest extends XMLHttpRequestEventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/readystatechange_event) */
+ onreadystatechange: ((this: XMLHttpRequest, ev: Event) => any) | null;
+ /**
+ * Returns client's state.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/readyState)
+ */
+ readonly readyState: number;
+ /**
+ * Returns the response body.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/response)
+ */
+ readonly response: any;
+ /**
+ * Returns response as text.
+ *
+ * Throws an "InvalidStateError" DOMException if responseType is not the empty string or "text".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseText)
+ */
+ readonly responseText: string;
+ /**
+ * Returns the response type.
+ *
+ * Can be set to change the response type. Values are: the empty string (default), "arraybuffer", "blob", "document", "json", and "text".
+ *
+ * When set: setting to "document" is ignored if current global object is not a Window object.
+ *
+ * When set: throws an "InvalidStateError" DOMException if state is loading or done.
+ *
+ * When set: throws an "InvalidAccessError" DOMException if the synchronous flag is set and current global object is a Window object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseType)
+ */
+ responseType: XMLHttpRequestResponseType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseURL) */
+ readonly responseURL: string;
+ /**
+ * Returns the response as document.
+ *
+ * Throws an "InvalidStateError" DOMException if responseType is not the empty string or "document".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseXML)
+ */
+ readonly responseXML: Document | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/status) */
+ readonly status: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/statusText) */
+ readonly statusText: string;
+ /**
+ * Can be set to a time in milliseconds. When set to a non-zero value will cause fetching to terminate after the given time has passed. When the time has passed, the request has not yet completed, and this's synchronous flag is unset, a timeout event will then be dispatched, or a "TimeoutError" DOMException will be thrown otherwise (for the send() method).
+ *
+ * When set: throws an "InvalidAccessError" DOMException if the synchronous flag is set and current global object is a Window object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/timeout)
+ */
+ timeout: number;
+ /**
+ * Returns the associated XMLHttpRequestUpload object. It can be used to gather transmission information when data is transferred to a server.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/upload)
+ */
+ readonly upload: XMLHttpRequestUpload;
+ /**
+ * True when credentials are to be included in a cross-origin request. False when they are to be excluded in a cross-origin request and when cookies are to be ignored in its response. Initially false.
+ *
+ * When set: throws an "InvalidStateError" DOMException if state is not unsent or opened, or if the send() flag is set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/withCredentials)
+ */
+ withCredentials: boolean;
+ /**
+ * Cancels any network activity.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/abort)
+ */
+ abort(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/getAllResponseHeaders) */
+ getAllResponseHeaders(): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/getResponseHeader) */
+ getResponseHeader(name: string): string | null;
+ /**
+ * Sets the request method, request URL, and synchronous flag.
+ *
+ * Throws a "SyntaxError" DOMException if either method is not a valid method or url cannot be parsed.
+ *
+ * Throws a "SecurityError" DOMException if method is a case-insensitive match for \`CONNECT\`, \`TRACE\`, or \`TRACK\`.
+ *
+ * Throws an "InvalidAccessError" DOMException if async is false, current global object is a Window object, and the timeout attribute is not zero or the responseType attribute is not the empty string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/open)
+ */
+ open(method: string, url: string | URL): void;
+ open(method: string, url: string | URL, async: boolean, username?: string | null, password?: string | null): void;
+ /**
+ * Acts as if the \`Content-Type\` header value for a response is mime. (It does not change the header.)
+ *
+ * Throws an "InvalidStateError" DOMException if state is loading or done.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/overrideMimeType)
+ */
+ overrideMimeType(mime: string): void;
+ /**
+ * Initiates the request. The body argument provides the request body, if any, and is ignored if the request method is GET or HEAD.
+ *
+ * Throws an "InvalidStateError" DOMException if either state is not opened or the send() flag is set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/send)
+ */
+ send(body?: Document | XMLHttpRequestBodyInit | null): void;
+ /**
+ * Combines a header in author request headers.
+ *
+ * Throws an "InvalidStateError" DOMException if either state is not opened or the send() flag is set.
+ *
+ * Throws a "SyntaxError" DOMException if name is not a header name or if value is not a header value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/setRequestHeader)
+ */
+ setRequestHeader(name: string, value: string): void;
+ readonly UNSENT: 0;
+ readonly OPENED: 1;
+ readonly HEADERS_RECEIVED: 2;
+ readonly LOADING: 3;
+ readonly DONE: 4;
+ addEventListener<K extends keyof XMLHttpRequestEventMap>(type: K, listener: (this: XMLHttpRequest, ev: XMLHttpRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof XMLHttpRequestEventMap>(type: K, listener: (this: XMLHttpRequest, ev: XMLHttpRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var XMLHttpRequest: {
+ prototype: XMLHttpRequest;
+ new(): XMLHttpRequest;
+ readonly UNSENT: 0;
+ readonly OPENED: 1;
+ readonly HEADERS_RECEIVED: 2;
+ readonly LOADING: 3;
+ readonly DONE: 4;
+};
+
+interface XMLHttpRequestEventTargetEventMap {
+ "abort": ProgressEvent<XMLHttpRequestEventTarget>;
+ "error": ProgressEvent<XMLHttpRequestEventTarget>;
+ "load": ProgressEvent<XMLHttpRequestEventTarget>;
+ "loadend": ProgressEvent<XMLHttpRequestEventTarget>;
+ "loadstart": ProgressEvent<XMLHttpRequestEventTarget>;
+ "progress": ProgressEvent<XMLHttpRequestEventTarget>;
+ "timeout": ProgressEvent<XMLHttpRequestEventTarget>;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequestEventTarget) */
+interface XMLHttpRequestEventTarget extends EventTarget {
+ onabort: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onerror: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onload: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onloadend: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onloadstart: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onprogress: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ ontimeout: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ addEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var XMLHttpRequestEventTarget: {
+ prototype: XMLHttpRequestEventTarget;
+ new(): XMLHttpRequestEventTarget;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequestUpload) */
+interface XMLHttpRequestUpload extends XMLHttpRequestEventTarget {
+ addEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestUpload, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestUpload, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var XMLHttpRequestUpload: {
+ prototype: XMLHttpRequestUpload;
+ new(): XMLHttpRequestUpload;
+};
+
+/**
+ * Provides the serializeToString() method to construct an XML string representing a DOM tree.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLSerializer)
+ */
+interface XMLSerializer {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLSerializer/serializeToString) */
+ serializeToString(root: Node): string;
+}
+
+declare var XMLSerializer: {
+ prototype: XMLSerializer;
+ new(): XMLSerializer;
+};
+
+/**
+ * The XPathEvaluator interface allows to compile and evaluate XPath expressions.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathEvaluator)
+ */
+interface XPathEvaluator extends XPathEvaluatorBase {
+}
+
+declare var XPathEvaluator: {
+ prototype: XPathEvaluator;
+ new(): XPathEvaluator;
+};
+
+interface XPathEvaluatorBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createExpression) */
+ createExpression(expression: string, resolver?: XPathNSResolver | null): XPathExpression;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/createNSResolver) */
+ createNSResolver(nodeResolver: Node): Node;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/evaluate) */
+ evaluate(expression: string, contextNode: Node, resolver?: XPathNSResolver | null, type?: number, result?: XPathResult | null): XPathResult;
+}
+
+/**
+ * This interface is a compiled XPath expression that can be evaluated on a document or specific node to return information its DOM tree.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathExpression)
+ */
+interface XPathExpression {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathExpression/evaluate) */
+ evaluate(contextNode: Node, type?: number, result?: XPathResult | null): XPathResult;
+}
+
+declare var XPathExpression: {
+ prototype: XPathExpression;
+ new(): XPathExpression;
+};
+
+/**
+ * The results generated by evaluating an XPath expression within the context of a given node.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult)
+ */
+interface XPathResult {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/booleanValue) */
+ readonly booleanValue: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/invalidIteratorState) */
+ readonly invalidIteratorState: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/numberValue) */
+ readonly numberValue: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/resultType) */
+ readonly resultType: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/singleNodeValue) */
+ readonly singleNodeValue: Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/snapshotLength) */
+ readonly snapshotLength: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/stringValue) */
+ readonly stringValue: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/iterateNext) */
+ iterateNext(): Node | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XPathResult/snapshotItem) */
+ snapshotItem(index: number): Node | null;
+ readonly ANY_TYPE: 0;
+ readonly NUMBER_TYPE: 1;
+ readonly STRING_TYPE: 2;
+ readonly BOOLEAN_TYPE: 3;
+ readonly UNORDERED_NODE_ITERATOR_TYPE: 4;
+ readonly ORDERED_NODE_ITERATOR_TYPE: 5;
+ readonly UNORDERED_NODE_SNAPSHOT_TYPE: 6;
+ readonly ORDERED_NODE_SNAPSHOT_TYPE: 7;
+ readonly ANY_UNORDERED_NODE_TYPE: 8;
+ readonly FIRST_ORDERED_NODE_TYPE: 9;
+}
+
+declare var XPathResult: {
+ prototype: XPathResult;
+ new(): XPathResult;
+ readonly ANY_TYPE: 0;
+ readonly NUMBER_TYPE: 1;
+ readonly STRING_TYPE: 2;
+ readonly BOOLEAN_TYPE: 3;
+ readonly UNORDERED_NODE_ITERATOR_TYPE: 4;
+ readonly ORDERED_NODE_ITERATOR_TYPE: 5;
+ readonly UNORDERED_NODE_SNAPSHOT_TYPE: 6;
+ readonly ORDERED_NODE_SNAPSHOT_TYPE: 7;
+ readonly ANY_UNORDERED_NODE_TYPE: 8;
+ readonly FIRST_ORDERED_NODE_TYPE: 9;
+};
+
+/**
+ * An XSLTProcessor applies an XSLT stylesheet transformation to an XML document to produce a new XML document as output. It has methods to load the XSLT stylesheet, to manipulate <xsl:param> parameter values, and to apply the transformation to documents.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor)
+ */
+interface XSLTProcessor {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/clearParameters) */
+ clearParameters(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/getParameter) */
+ getParameter(namespaceURI: string | null, localName: string): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/importStylesheet) */
+ importStylesheet(style: Node): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/removeParameter) */
+ removeParameter(namespaceURI: string | null, localName: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/reset) */
+ reset(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/setParameter) */
+ setParameter(namespaceURI: string | null, localName: string, value: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/transformToDocument) */
+ transformToDocument(source: Node): Document;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XSLTProcessor/transformToFragment) */
+ transformToFragment(source: Node, output: Document): DocumentFragment;
+}
+
+declare var XSLTProcessor: {
+ prototype: XSLTProcessor;
+ new(): XSLTProcessor;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console) */
+interface Console {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/assert_static) */
+ assert(condition?: boolean, ...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/clear_static) */
+ clear(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/count_static) */
+ count(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/countReset_static) */
+ countReset(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/debug_static) */
+ debug(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dir_static) */
+ dir(item?: any, options?: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dirxml_static) */
+ dirxml(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/error_static) */
+ error(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/group_static) */
+ group(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupCollapsed_static) */
+ groupCollapsed(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupEnd_static) */
+ groupEnd(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/info_static) */
+ info(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/log_static) */
+ log(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/table_static) */
+ table(tabularData?: any, properties?: string[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/time_static) */
+ time(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeEnd_static) */
+ timeEnd(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeLog_static) */
+ timeLog(label?: string, ...data: any[]): void;
+ timeStamp(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/trace_static) */
+ trace(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/warn_static) */
+ warn(...data: any[]): void;
+}
+
+declare var console: Console;
+
+/** Holds useful CSS-related methods. No object with this interface are implemented: it contains only static methods and therefore is a utilitarian interface. */
+declare namespace CSS {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/highlights_static) */
+ var highlights: HighlightRegistry;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function Hz(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function Q(value: number): CSSUnitValue;
+ function cap(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function ch(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function cm(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function cqb(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function cqh(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function cqi(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function cqmax(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function cqmin(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function cqw(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function deg(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dpcm(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dpi(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dppx(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dvb(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dvh(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dvi(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dvmax(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dvmin(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function dvw(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function em(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/escape_static) */
+ function escape(ident: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function ex(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function fr(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function grad(value: number): CSSUnitValue;
+ function ic(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function kHz(value: number): CSSUnitValue;
+ function lh(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function lvb(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function lvh(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function lvi(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function lvmax(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function lvmin(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function lvw(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function mm(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function ms(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function number(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function pc(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function percent(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function pt(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function px(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function rad(value: number): CSSUnitValue;
+ function rcap(value: number): CSSUnitValue;
+ function rch(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/registerProperty_static) */
+ function registerProperty(definition: PropertyDefinition): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function rem(value: number): CSSUnitValue;
+ function rex(value: number): CSSUnitValue;
+ function ric(value: number): CSSUnitValue;
+ function rlh(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function s(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/supports_static) */
+ function supports(property: string, value: string): boolean;
+ function supports(conditionText: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function svb(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function svh(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function svi(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function svmax(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function svmin(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function svw(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function turn(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function vb(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function vh(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function vi(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function vmax(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function vmin(value: number): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSS/factory_functions_static) */
+ function vw(value: number): CSSUnitValue;
+}
+
+declare namespace WebAssembly {
+ interface CompileError extends Error {
+ }
+
+ var CompileError: {
+ prototype: CompileError;
+ new(message?: string): CompileError;
+ (message?: string): CompileError;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Global) */
+ interface Global<T extends ValueType = ValueType> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Global/value) */
+ value: ValueTypeMap[T];
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Global/valueOf) */
+ valueOf(): ValueTypeMap[T];
+ }
+
+ var Global: {
+ prototype: Global;
+ new<T extends ValueType = ValueType>(descriptor: GlobalDescriptor<T>, v?: ValueTypeMap[T]): Global<T>;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Instance) */
+ interface Instance {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Instance/exports) */
+ readonly exports: Exports;
+ }
+
+ var Instance: {
+ prototype: Instance;
+ new(module: Module, importObject?: Imports): Instance;
+ };
+
+ interface LinkError extends Error {
+ }
+
+ var LinkError: {
+ prototype: LinkError;
+ new(message?: string): LinkError;
+ (message?: string): LinkError;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Memory) */
+ interface Memory {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Memory/buffer) */
+ readonly buffer: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Memory/grow) */
+ grow(delta: number): number;
+ }
+
+ var Memory: {
+ prototype: Memory;
+ new(descriptor: MemoryDescriptor): Memory;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module) */
+ interface Module {
+ }
+
+ var Module: {
+ prototype: Module;
+ new(bytes: BufferSource): Module;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module/customSections_static) */
+ customSections(moduleObject: Module, sectionName: string): ArrayBuffer[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module/exports_static) */
+ exports(moduleObject: Module): ModuleExportDescriptor[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module/imports_static) */
+ imports(moduleObject: Module): ModuleImportDescriptor[];
+ };
+
+ interface RuntimeError extends Error {
+ }
+
+ var RuntimeError: {
+ prototype: RuntimeError;
+ new(message?: string): RuntimeError;
+ (message?: string): RuntimeError;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table) */
+ interface Table {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/get) */
+ get(index: number): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/grow) */
+ grow(delta: number, value?: any): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/set) */
+ set(index: number, value?: any): void;
+ }
+
+ var Table: {
+ prototype: Table;
+ new(descriptor: TableDescriptor, value?: any): Table;
+ };
+
+ interface GlobalDescriptor<T extends ValueType = ValueType> {
+ mutable?: boolean;
+ value: T;
+ }
+
+ interface MemoryDescriptor {
+ initial: number;
+ maximum?: number;
+ shared?: boolean;
+ }
+
+ interface ModuleExportDescriptor {
+ kind: ImportExportKind;
+ name: string;
+ }
+
+ interface ModuleImportDescriptor {
+ kind: ImportExportKind;
+ module: string;
+ name: string;
+ }
+
+ interface TableDescriptor {
+ element: TableKind;
+ initial: number;
+ maximum?: number;
+ }
+
+ interface ValueTypeMap {
+ anyfunc: Function;
+ externref: any;
+ f32: number;
+ f64: number;
+ i32: number;
+ i64: bigint;
+ v128: never;
+ }
+
+ interface WebAssemblyInstantiatedSource {
+ instance: Instance;
+ module: Module;
+ }
+
+ type ImportExportKind = "function" | "global" | "memory" | "table";
+ type TableKind = "anyfunc" | "externref";
+ type ExportValue = Function | Global | Memory | Table;
+ type Exports = Record<string, ExportValue>;
+ type ImportValue = ExportValue | number;
+ type Imports = Record<string, ModuleImports>;
+ type ModuleImports = Record<string, ImportValue>;
+ type ValueType = keyof ValueTypeMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/compile_static) */
+ function compile(bytes: BufferSource): Promise<Module>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/compileStreaming_static) */
+ function compileStreaming(source: Response | PromiseLike<Response>): Promise<Module>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/instantiate_static) */
+ function instantiate(bytes: BufferSource, importObject?: Imports): Promise<WebAssemblyInstantiatedSource>;
+ function instantiate(moduleObject: Module, importObject?: Imports): Promise<Instance>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/instantiateStreaming_static) */
+ function instantiateStreaming(source: Response | PromiseLike<Response>, importObject?: Imports): Promise<WebAssemblyInstantiatedSource>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/validate_static) */
+ function validate(bytes: BufferSource): boolean;
+}
+
+interface BlobCallback {
+ (blob: Blob | null): void;
+}
+
+interface CustomElementConstructor {
+ new (...params: any[]): HTMLElement;
+}
+
+interface DecodeErrorCallback {
+ (error: DOMException): void;
+}
+
+interface DecodeSuccessCallback {
+ (decodedData: AudioBuffer): void;
+}
+
+interface EncodedVideoChunkOutputCallback {
+ (chunk: EncodedVideoChunk, metadata?: EncodedVideoChunkMetadata): void;
+}
+
+interface ErrorCallback {
+ (err: DOMException): void;
+}
+
+interface FileCallback {
+ (file: File): void;
+}
+
+interface FileSystemEntriesCallback {
+ (entries: FileSystemEntry[]): void;
+}
+
+interface FileSystemEntryCallback {
+ (entry: FileSystemEntry): void;
+}
+
+interface FrameRequestCallback {
+ (time: DOMHighResTimeStamp): void;
+}
+
+interface FunctionStringCallback {
+ (data: string): void;
+}
+
+interface IdleRequestCallback {
+ (deadline: IdleDeadline): void;
+}
+
+interface IntersectionObserverCallback {
+ (entries: IntersectionObserverEntry[], observer: IntersectionObserver): void;
+}
+
+interface LockGrantedCallback {
+ (lock: Lock | null): any;
+}
+
+interface MediaSessionActionHandler {
+ (details: MediaSessionActionDetails): void;
+}
+
+interface MutationCallback {
+ (mutations: MutationRecord[], observer: MutationObserver): void;
+}
+
+interface NotificationPermissionCallback {
+ (permission: NotificationPermission): void;
+}
+
+interface OnBeforeUnloadEventHandlerNonNull {
+ (event: Event): string | null;
+}
+
+interface OnErrorEventHandlerNonNull {
+ (event: Event | string, source?: string, lineno?: number, colno?: number, error?: Error): any;
+}
+
+interface PerformanceObserverCallback {
+ (entries: PerformanceObserverEntryList, observer: PerformanceObserver): void;
+}
+
+interface PositionCallback {
+ (position: GeolocationPosition): void;
+}
+
+interface PositionErrorCallback {
+ (positionError: GeolocationPositionError): void;
+}
+
+interface QueuingStrategySize<T = any> {
+ (chunk: T): number;
+}
+
+interface RTCPeerConnectionErrorCallback {
+ (error: DOMException): void;
+}
+
+interface RTCSessionDescriptionCallback {
+ (description: RTCSessionDescriptionInit): void;
+}
+
+interface RemotePlaybackAvailabilityCallback {
+ (available: boolean): void;
+}
+
+interface ReportingObserverCallback {
+ (reports: Report[], observer: ReportingObserver): void;
+}
+
+interface ResizeObserverCallback {
+ (entries: ResizeObserverEntry[], observer: ResizeObserver): void;
+}
+
+interface TransformerFlushCallback<O> {
+ (controller: TransformStreamDefaultController<O>): void | PromiseLike<void>;
+}
+
+interface TransformerStartCallback<O> {
+ (controller: TransformStreamDefaultController<O>): any;
+}
+
+interface TransformerTransformCallback<I, O> {
+ (chunk: I, controller: TransformStreamDefaultController<O>): void | PromiseLike<void>;
+}
+
+interface UnderlyingSinkAbortCallback {
+ (reason?: any): void | PromiseLike<void>;
+}
+
+interface UnderlyingSinkCloseCallback {
+ (): void | PromiseLike<void>;
+}
+
+interface UnderlyingSinkStartCallback {
+ (controller: WritableStreamDefaultController): any;
+}
+
+interface UnderlyingSinkWriteCallback<W> {
+ (chunk: W, controller: WritableStreamDefaultController): void | PromiseLike<void>;
+}
+
+interface UnderlyingSourceCancelCallback {
+ (reason?: any): void | PromiseLike<void>;
+}
+
+interface UnderlyingSourcePullCallback<R> {
+ (controller: ReadableStreamController<R>): void | PromiseLike<void>;
+}
+
+interface UnderlyingSourceStartCallback<R> {
+ (controller: ReadableStreamController<R>): any;
+}
+
+interface VideoFrameOutputCallback {
+ (output: VideoFrame): void;
+}
+
+interface VideoFrameRequestCallback {
+ (now: DOMHighResTimeStamp, metadata: VideoFrameCallbackMetadata): void;
+}
+
+interface VoidFunction {
+ (): void;
+}
+
+interface WebCodecsErrorCallback {
+ (error: DOMException): void;
+}
+
+interface HTMLElementTagNameMap {
+ "a": HTMLAnchorElement;
+ "abbr": HTMLElement;
+ "address": HTMLElement;
+ "area": HTMLAreaElement;
+ "article": HTMLElement;
+ "aside": HTMLElement;
+ "audio": HTMLAudioElement;
+ "b": HTMLElement;
+ "base": HTMLBaseElement;
+ "bdi": HTMLElement;
+ "bdo": HTMLElement;
+ "blockquote": HTMLQuoteElement;
+ "body": HTMLBodyElement;
+ "br": HTMLBRElement;
+ "button": HTMLButtonElement;
+ "canvas": HTMLCanvasElement;
+ "caption": HTMLTableCaptionElement;
+ "cite": HTMLElement;
+ "code": HTMLElement;
+ "col": HTMLTableColElement;
+ "colgroup": HTMLTableColElement;
+ "data": HTMLDataElement;
+ "datalist": HTMLDataListElement;
+ "dd": HTMLElement;
+ "del": HTMLModElement;
+ "details": HTMLDetailsElement;
+ "dfn": HTMLElement;
+ "dialog": HTMLDialogElement;
+ "div": HTMLDivElement;
+ "dl": HTMLDListElement;
+ "dt": HTMLElement;
+ "em": HTMLElement;
+ "embed": HTMLEmbedElement;
+ "fieldset": HTMLFieldSetElement;
+ "figcaption": HTMLElement;
+ "figure": HTMLElement;
+ "footer": HTMLElement;
+ "form": HTMLFormElement;
+ "h1": HTMLHeadingElement;
+ "h2": HTMLHeadingElement;
+ "h3": HTMLHeadingElement;
+ "h4": HTMLHeadingElement;
+ "h5": HTMLHeadingElement;
+ "h6": HTMLHeadingElement;
+ "head": HTMLHeadElement;
+ "header": HTMLElement;
+ "hgroup": HTMLElement;
+ "hr": HTMLHRElement;
+ "html": HTMLHtmlElement;
+ "i": HTMLElement;
+ "iframe": HTMLIFrameElement;
+ "img": HTMLImageElement;
+ "input": HTMLInputElement;
+ "ins": HTMLModElement;
+ "kbd": HTMLElement;
+ "label": HTMLLabelElement;
+ "legend": HTMLLegendElement;
+ "li": HTMLLIElement;
+ "link": HTMLLinkElement;
+ "main": HTMLElement;
+ "map": HTMLMapElement;
+ "mark": HTMLElement;
+ "menu": HTMLMenuElement;
+ "meta": HTMLMetaElement;
+ "meter": HTMLMeterElement;
+ "nav": HTMLElement;
+ "noscript": HTMLElement;
+ "object": HTMLObjectElement;
+ "ol": HTMLOListElement;
+ "optgroup": HTMLOptGroupElement;
+ "option": HTMLOptionElement;
+ "output": HTMLOutputElement;
+ "p": HTMLParagraphElement;
+ "picture": HTMLPictureElement;
+ "pre": HTMLPreElement;
+ "progress": HTMLProgressElement;
+ "q": HTMLQuoteElement;
+ "rp": HTMLElement;
+ "rt": HTMLElement;
+ "ruby": HTMLElement;
+ "s": HTMLElement;
+ "samp": HTMLElement;
+ "script": HTMLScriptElement;
+ "search": HTMLElement;
+ "section": HTMLElement;
+ "select": HTMLSelectElement;
+ "slot": HTMLSlotElement;
+ "small": HTMLElement;
+ "source": HTMLSourceElement;
+ "span": HTMLSpanElement;
+ "strong": HTMLElement;
+ "style": HTMLStyleElement;
+ "sub": HTMLElement;
+ "summary": HTMLElement;
+ "sup": HTMLElement;
+ "table": HTMLTableElement;
+ "tbody": HTMLTableSectionElement;
+ "td": HTMLTableCellElement;
+ "template": HTMLTemplateElement;
+ "textarea": HTMLTextAreaElement;
+ "tfoot": HTMLTableSectionElement;
+ "th": HTMLTableCellElement;
+ "thead": HTMLTableSectionElement;
+ "time": HTMLTimeElement;
+ "title": HTMLTitleElement;
+ "tr": HTMLTableRowElement;
+ "track": HTMLTrackElement;
+ "u": HTMLElement;
+ "ul": HTMLUListElement;
+ "var": HTMLElement;
+ "video": HTMLVideoElement;
+ "wbr": HTMLElement;
+}
+
+interface HTMLElementDeprecatedTagNameMap {
+ "acronym": HTMLElement;
+ "applet": HTMLUnknownElement;
+ "basefont": HTMLElement;
+ "bgsound": HTMLUnknownElement;
+ "big": HTMLElement;
+ "blink": HTMLUnknownElement;
+ "center": HTMLElement;
+ "dir": HTMLDirectoryElement;
+ "font": HTMLFontElement;
+ "frame": HTMLFrameElement;
+ "frameset": HTMLFrameSetElement;
+ "isindex": HTMLUnknownElement;
+ "keygen": HTMLUnknownElement;
+ "listing": HTMLPreElement;
+ "marquee": HTMLMarqueeElement;
+ "menuitem": HTMLElement;
+ "multicol": HTMLUnknownElement;
+ "nextid": HTMLUnknownElement;
+ "nobr": HTMLElement;
+ "noembed": HTMLElement;
+ "noframes": HTMLElement;
+ "param": HTMLParamElement;
+ "plaintext": HTMLElement;
+ "rb": HTMLElement;
+ "rtc": HTMLElement;
+ "spacer": HTMLUnknownElement;
+ "strike": HTMLElement;
+ "tt": HTMLElement;
+ "xmp": HTMLPreElement;
+}
+
+interface SVGElementTagNameMap {
+ "a": SVGAElement;
+ "animate": SVGAnimateElement;
+ "animateMotion": SVGAnimateMotionElement;
+ "animateTransform": SVGAnimateTransformElement;
+ "circle": SVGCircleElement;
+ "clipPath": SVGClipPathElement;
+ "defs": SVGDefsElement;
+ "desc": SVGDescElement;
+ "ellipse": SVGEllipseElement;
+ "feBlend": SVGFEBlendElement;
+ "feColorMatrix": SVGFEColorMatrixElement;
+ "feComponentTransfer": SVGFEComponentTransferElement;
+ "feComposite": SVGFECompositeElement;
+ "feConvolveMatrix": SVGFEConvolveMatrixElement;
+ "feDiffuseLighting": SVGFEDiffuseLightingElement;
+ "feDisplacementMap": SVGFEDisplacementMapElement;
+ "feDistantLight": SVGFEDistantLightElement;
+ "feDropShadow": SVGFEDropShadowElement;
+ "feFlood": SVGFEFloodElement;
+ "feFuncA": SVGFEFuncAElement;
+ "feFuncB": SVGFEFuncBElement;
+ "feFuncG": SVGFEFuncGElement;
+ "feFuncR": SVGFEFuncRElement;
+ "feGaussianBlur": SVGFEGaussianBlurElement;
+ "feImage": SVGFEImageElement;
+ "feMerge": SVGFEMergeElement;
+ "feMergeNode": SVGFEMergeNodeElement;
+ "feMorphology": SVGFEMorphologyElement;
+ "feOffset": SVGFEOffsetElement;
+ "fePointLight": SVGFEPointLightElement;
+ "feSpecularLighting": SVGFESpecularLightingElement;
+ "feSpotLight": SVGFESpotLightElement;
+ "feTile": SVGFETileElement;
+ "feTurbulence": SVGFETurbulenceElement;
+ "filter": SVGFilterElement;
+ "foreignObject": SVGForeignObjectElement;
+ "g": SVGGElement;
+ "image": SVGImageElement;
+ "line": SVGLineElement;
+ "linearGradient": SVGLinearGradientElement;
+ "marker": SVGMarkerElement;
+ "mask": SVGMaskElement;
+ "metadata": SVGMetadataElement;
+ "mpath": SVGMPathElement;
+ "path": SVGPathElement;
+ "pattern": SVGPatternElement;
+ "polygon": SVGPolygonElement;
+ "polyline": SVGPolylineElement;
+ "radialGradient": SVGRadialGradientElement;
+ "rect": SVGRectElement;
+ "script": SVGScriptElement;
+ "set": SVGSetElement;
+ "stop": SVGStopElement;
+ "style": SVGStyleElement;
+ "svg": SVGSVGElement;
+ "switch": SVGSwitchElement;
+ "symbol": SVGSymbolElement;
+ "text": SVGTextElement;
+ "textPath": SVGTextPathElement;
+ "title": SVGTitleElement;
+ "tspan": SVGTSpanElement;
+ "use": SVGUseElement;
+ "view": SVGViewElement;
+}
+
+interface MathMLElementTagNameMap {
+ "annotation": MathMLElement;
+ "annotation-xml": MathMLElement;
+ "maction": MathMLElement;
+ "math": MathMLElement;
+ "merror": MathMLElement;
+ "mfrac": MathMLElement;
+ "mi": MathMLElement;
+ "mmultiscripts": MathMLElement;
+ "mn": MathMLElement;
+ "mo": MathMLElement;
+ "mover": MathMLElement;
+ "mpadded": MathMLElement;
+ "mphantom": MathMLElement;
+ "mprescripts": MathMLElement;
+ "mroot": MathMLElement;
+ "mrow": MathMLElement;
+ "ms": MathMLElement;
+ "mspace": MathMLElement;
+ "msqrt": MathMLElement;
+ "mstyle": MathMLElement;
+ "msub": MathMLElement;
+ "msubsup": MathMLElement;
+ "msup": MathMLElement;
+ "mtable": MathMLElement;
+ "mtd": MathMLElement;
+ "mtext": MathMLElement;
+ "mtr": MathMLElement;
+ "munder": MathMLElement;
+ "munderover": MathMLElement;
+ "semantics": MathMLElement;
+}
+
+/** @deprecated Directly use HTMLElementTagNameMap or SVGElementTagNameMap as appropriate, instead. */
+type ElementTagNameMap = HTMLElementTagNameMap & Pick<SVGElementTagNameMap, Exclude<keyof SVGElementTagNameMap, keyof HTMLElementTagNameMap>>;
+
+declare var Audio: {
+ new(src?: string): HTMLAudioElement;
+};
+declare var Image: {
+ new(width?: number, height?: number): HTMLImageElement;
+};
+declare var Option: {
+ new(text?: string, value?: string, defaultSelected?: boolean, selected?: boolean): HTMLOptionElement;
+};
+/**
+ * @deprecated This is a legacy alias of \`navigator\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/navigator)
+ */
+declare var clientInformation: Navigator;
+/**
+ * Returns true if the window has been closed, false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/closed)
+ */
+declare var closed: boolean;
+/**
+ * Defines a new custom element, mapping the given name to the given constructor as an autonomous custom element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/customElements)
+ */
+declare var customElements: CustomElementRegistry;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/devicePixelRatio) */
+declare var devicePixelRatio: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/document) */
+declare var document: Document;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/event)
+ */
+declare var event: Event | undefined;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/external)
+ */
+declare var external: External;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/frameElement) */
+declare var frameElement: Element | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/frames) */
+declare var frames: WindowProxy;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/history) */
+declare var history: History;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/innerHeight) */
+declare var innerHeight: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/innerWidth) */
+declare var innerWidth: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/length) */
+declare var length: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/location) */
+declare var location: Location;
+/**
+ * Returns true if the location bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/locationbar)
+ */
+declare var locationbar: BarProp;
+/**
+ * Returns true if the menu bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/menubar)
+ */
+declare var menubar: BarProp;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/name) */
+/** @deprecated */
+declare const name: void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/navigator) */
+declare var navigator: Navigator;
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/devicemotion_event)
+ */
+declare var ondevicemotion: ((this: Window, ev: DeviceMotionEvent) => any) | null;
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/deviceorientation_event)
+ */
+declare var ondeviceorientation: ((this: Window, ev: DeviceOrientationEvent) => any) | null;
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/deviceorientationabsolute_event)
+ */
+declare var ondeviceorientationabsolute: ((this: Window, ev: DeviceOrientationEvent) => any) | null;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/orientationchange_event)
+ */
+declare var onorientationchange: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/opener) */
+declare var opener: any;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/orientation)
+ */
+declare var orientation: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/outerHeight) */
+declare var outerHeight: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/outerWidth) */
+declare var outerWidth: number;
+/**
+ * @deprecated This is a legacy alias of \`scrollX\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollX)
+ */
+declare var pageXOffset: number;
+/**
+ * @deprecated This is a legacy alias of \`scrollY\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollY)
+ */
+declare var pageYOffset: number;
+/**
+ * Refers to either the parent WindowProxy, or itself.
+ *
+ * It can rarely be null e.g. for contentWindow of an iframe that is already removed from the parent.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/parent)
+ */
+declare var parent: WindowProxy;
+/**
+ * Returns true if the personal bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/personalbar)
+ */
+declare var personalbar: BarProp;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screen) */
+declare var screen: Screen;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenLeft) */
+declare var screenLeft: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenTop) */
+declare var screenTop: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenX) */
+declare var screenX: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/screenY) */
+declare var screenY: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollX) */
+declare var scrollX: number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollY) */
+declare var scrollY: number;
+/**
+ * Returns true if the scrollbars are visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollbars)
+ */
+declare var scrollbars: BarProp;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/self) */
+declare var self: Window & typeof globalThis;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/speechSynthesis) */
+declare var speechSynthesis: SpeechSynthesis;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/status)
+ */
+declare var status: string;
+/**
+ * Returns true if the status bar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/statusbar)
+ */
+declare var statusbar: BarProp;
+/**
+ * Returns true if the toolbar is visible; otherwise, returns false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/toolbar)
+ */
+declare var toolbar: BarProp;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/top) */
+declare var top: WindowProxy | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/visualViewport) */
+declare var visualViewport: VisualViewport | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/window) */
+declare var window: Window & typeof globalThis;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/alert) */
+declare function alert(message?: any): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/blur) */
+declare function blur(): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/cancelIdleCallback) */
+declare function cancelIdleCallback(handle: number): void;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/captureEvents)
+ */
+declare function captureEvents(): void;
+/**
+ * Closes the window.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/close)
+ */
+declare function close(): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/confirm) */
+declare function confirm(message?: string): boolean;
+/**
+ * Moves the focus to the window's browsing context, if any.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/focus)
+ */
+declare function focus(): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/getComputedStyle) */
+declare function getComputedStyle(elt: Element, pseudoElt?: string | null): CSSStyleDeclaration;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/getSelection) */
+declare function getSelection(): Selection | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/matchMedia) */
+declare function matchMedia(query: string): MediaQueryList;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/moveBy) */
+declare function moveBy(x: number, y: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/moveTo) */
+declare function moveTo(x: number, y: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/open) */
+declare function open(url?: string | URL, target?: string, features?: string): WindowProxy | null;
+/**
+ * Posts a message to the given window. Messages can be structured objects, e.g. nested objects and arrays, can contain JavaScript values (strings, numbers, Date objects, etc), and can contain certain data objects such as File Blob, FileList, and ArrayBuffer objects.
+ *
+ * Objects listed in the transfer member of options are transferred, not just cloned, meaning that they are no longer usable on the sending side.
+ *
+ * A target origin can be specified using the targetOrigin member of options. If not provided, it defaults to "/". This default restricts the message to same-origin targets only.
+ *
+ * If the origin of the target window doesn't match the given target origin, the message is discarded, to avoid information leakage. To send the message to the target regardless of origin, set the target origin to "*".
+ *
+ * Throws a "DataCloneError" DOMException if transfer array contains duplicate objects or if message could not be cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/postMessage)
+ */
+declare function postMessage(message: any, targetOrigin: string, transfer?: Transferable[]): void;
+declare function postMessage(message: any, options?: WindowPostMessageOptions): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/print) */
+declare function print(): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/prompt) */
+declare function prompt(message?: string, _default?: string): string | null;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/releaseEvents)
+ */
+declare function releaseEvents(): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/requestIdleCallback) */
+declare function requestIdleCallback(callback: IdleRequestCallback, options?: IdleRequestOptions): number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/resizeBy) */
+declare function resizeBy(x: number, y: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/resizeTo) */
+declare function resizeTo(width: number, height: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scroll) */
+declare function scroll(options?: ScrollToOptions): void;
+declare function scroll(x: number, y: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollBy) */
+declare function scrollBy(options?: ScrollToOptions): void;
+declare function scrollBy(x: number, y: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/scrollTo) */
+declare function scrollTo(options?: ScrollToOptions): void;
+declare function scrollTo(x: number, y: number): void;
+/**
+ * Cancels the document load.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/stop)
+ */
+declare function stop(): void;
+declare function toString(): string;
+/**
+ * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent)
+ */
+declare function dispatchEvent(event: Event): boolean;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/cancelAnimationFrame) */
+declare function cancelAnimationFrame(handle: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/requestAnimationFrame) */
+declare function requestAnimationFrame(callback: FrameRequestCallback): number;
+/**
+ * Fires when the user aborts the download.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/abort_event)
+ */
+declare var onabort: ((this: Window, ev: UIEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationcancel_event) */
+declare var onanimationcancel: ((this: Window, ev: AnimationEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event) */
+declare var onanimationend: ((this: Window, ev: AnimationEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event) */
+declare var onanimationiteration: ((this: Window, ev: AnimationEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event) */
+declare var onanimationstart: ((this: Window, ev: AnimationEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/auxclick_event) */
+declare var onauxclick: ((this: Window, ev: MouseEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/beforeinput_event) */
+declare var onbeforeinput: ((this: Window, ev: InputEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/beforetoggle_event) */
+declare var onbeforetoggle: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when the object loses the input focus.
+ * @param ev The focus event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/blur_event)
+ */
+declare var onblur: ((this: Window, ev: FocusEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/cancel_event) */
+declare var oncancel: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when playback is possible, but would require further buffering.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplay_event)
+ */
+declare var oncanplay: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/canplaythrough_event) */
+declare var oncanplaythrough: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when the contents of the object or selection have changed.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/change_event)
+ */
+declare var onchange: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when the user clicks the left mouse button on the object
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/click_event)
+ */
+declare var onclick: ((this: Window, ev: MouseEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDialogElement/close_event) */
+declare var onclose: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when the user clicks the right mouse button in the client area, opening the context menu.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/contextmenu_event)
+ */
+declare var oncontextmenu: ((this: Window, ev: MouseEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/copy_event) */
+declare var oncopy: ((this: Window, ev: ClipboardEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLTrackElement/cuechange_event) */
+declare var oncuechange: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/cut_event) */
+declare var oncut: ((this: Window, ev: ClipboardEvent) => any) | null;
+/**
+ * Fires when the user double-clicks the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/dblclick_event)
+ */
+declare var ondblclick: ((this: Window, ev: MouseEvent) => any) | null;
+/**
+ * Fires on the source object continuously during a drag operation.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drag_event)
+ */
+declare var ondrag: ((this: Window, ev: DragEvent) => any) | null;
+/**
+ * Fires on the source object when the user releases the mouse at the close of a drag operation.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragend_event)
+ */
+declare var ondragend: ((this: Window, ev: DragEvent) => any) | null;
+/**
+ * Fires on the target element when the user drags the object to a valid drop target.
+ * @param ev The drag event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragenter_event)
+ */
+declare var ondragenter: ((this: Window, ev: DragEvent) => any) | null;
+/**
+ * Fires on the target object when the user moves the mouse out of a valid drop target during a drag operation.
+ * @param ev The drag event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragleave_event)
+ */
+declare var ondragleave: ((this: Window, ev: DragEvent) => any) | null;
+/**
+ * Fires on the target element continuously while the user drags the object over a valid drop target.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragover_event)
+ */
+declare var ondragover: ((this: Window, ev: DragEvent) => any) | null;
+/**
+ * Fires on the source object when the user starts to drag a text selection or selected object.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/dragstart_event)
+ */
+declare var ondragstart: ((this: Window, ev: DragEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/drop_event) */
+declare var ondrop: ((this: Window, ev: DragEvent) => any) | null;
+/**
+ * Occurs when the duration attribute is updated.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/durationchange_event)
+ */
+declare var ondurationchange: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when the media element is reset to its initial state.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/emptied_event)
+ */
+declare var onemptied: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when the end of playback is reached.
+ * @param ev The event
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ended_event)
+ */
+declare var onended: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when an error occurs during object loading.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/error_event)
+ */
+declare var onerror: OnErrorEventHandler;
+/**
+ * Fires when the object receives focus.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/focus_event)
+ */
+declare var onfocus: ((this: Window, ev: FocusEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/formdata_event) */
+declare var onformdata: ((this: Window, ev: FormDataEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/gotpointercapture_event) */
+declare var ongotpointercapture: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/input_event) */
+declare var oninput: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/invalid_event) */
+declare var oninvalid: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when the user presses a key.
+ * @param ev The keyboard event
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keydown_event)
+ */
+declare var onkeydown: ((this: Window, ev: KeyboardEvent) => any) | null;
+/**
+ * Fires when the user presses an alphanumeric key.
+ * @param ev The event.
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keypress_event)
+ */
+declare var onkeypress: ((this: Window, ev: KeyboardEvent) => any) | null;
+/**
+ * Fires when the user releases a key.
+ * @param ev The keyboard event
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/keyup_event)
+ */
+declare var onkeyup: ((this: Window, ev: KeyboardEvent) => any) | null;
+/**
+ * Fires immediately after the browser loads the object.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SVGElement/load_event)
+ */
+declare var onload: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when media data is loaded at the current playback position.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadeddata_event)
+ */
+declare var onloadeddata: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when the duration and dimensions of the media have been determined.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadedmetadata_event)
+ */
+declare var onloadedmetadata: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when Internet Explorer begins looking for media data.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/loadstart_event)
+ */
+declare var onloadstart: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLElement/lostpointercapture_event) */
+declare var onlostpointercapture: ((this: Window, ev: PointerEvent) => any) | null;
+/**
+ * Fires when the user clicks the object with either mouse button.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousedown_event)
+ */
+declare var onmousedown: ((this: Window, ev: MouseEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseenter_event) */
+declare var onmouseenter: ((this: Window, ev: MouseEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseleave_event) */
+declare var onmouseleave: ((this: Window, ev: MouseEvent) => any) | null;
+/**
+ * Fires when the user moves the mouse over the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mousemove_event)
+ */
+declare var onmousemove: ((this: Window, ev: MouseEvent) => any) | null;
+/**
+ * Fires when the user moves the mouse pointer outside the boundaries of the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseout_event)
+ */
+declare var onmouseout: ((this: Window, ev: MouseEvent) => any) | null;
+/**
+ * Fires when the user moves the mouse pointer into the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseover_event)
+ */
+declare var onmouseover: ((this: Window, ev: MouseEvent) => any) | null;
+/**
+ * Fires when the user releases a mouse button while the mouse is over the object.
+ * @param ev The mouse event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/mouseup_event)
+ */
+declare var onmouseup: ((this: Window, ev: MouseEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/paste_event) */
+declare var onpaste: ((this: Window, ev: ClipboardEvent) => any) | null;
+/**
+ * Occurs when playback is paused.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/pause_event)
+ */
+declare var onpause: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when the play method is requested.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/play_event)
+ */
+declare var onplay: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when the audio or video has started playing.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/playing_event)
+ */
+declare var onplaying: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointercancel_event) */
+declare var onpointercancel: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerdown_event) */
+declare var onpointerdown: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerenter_event) */
+declare var onpointerenter: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerleave_event) */
+declare var onpointerleave: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointermove_event) */
+declare var onpointermove: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerout_event) */
+declare var onpointerout: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerover_event) */
+declare var onpointerover: ((this: Window, ev: PointerEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/pointerup_event) */
+declare var onpointerup: ((this: Window, ev: PointerEvent) => any) | null;
+/**
+ * Occurs to indicate progress while downloading media data.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/progress_event)
+ */
+declare var onprogress: ((this: Window, ev: ProgressEvent) => any) | null;
+/**
+ * Occurs when the playback rate is increased or decreased.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/ratechange_event)
+ */
+declare var onratechange: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when the user resets a form.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/reset_event)
+ */
+declare var onreset: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLVideoElement/resize_event) */
+declare var onresize: ((this: Window, ev: UIEvent) => any) | null;
+/**
+ * Fires when the user repositions the scroll box in the scroll bar on the object.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scroll_event)
+ */
+declare var onscroll: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/scrollend_event) */
+declare var onscrollend: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/securitypolicyviolation_event) */
+declare var onsecuritypolicyviolation: ((this: Window, ev: SecurityPolicyViolationEvent) => any) | null;
+/**
+ * Occurs when the seek operation ends.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeked_event)
+ */
+declare var onseeked: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when the current playback position is moved.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/seeking_event)
+ */
+declare var onseeking: ((this: Window, ev: Event) => any) | null;
+/**
+ * Fires when the current selection changes.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLInputElement/select_event)
+ */
+declare var onselect: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/selectionchange_event) */
+declare var onselectionchange: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Node/selectstart_event) */
+declare var onselectstart: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLSlotElement/slotchange_event) */
+declare var onslotchange: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when the download has stopped.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/stalled_event)
+ */
+declare var onstalled: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLFormElement/submit_event) */
+declare var onsubmit: ((this: Window, ev: SubmitEvent) => any) | null;
+/**
+ * Occurs if the load operation has been intentionally halted.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/suspend_event)
+ */
+declare var onsuspend: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs to indicate the current playback position.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/timeupdate_event)
+ */
+declare var ontimeupdate: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLDetailsElement/toggle_event) */
+declare var ontoggle: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchcancel_event) */
+declare var ontouchcancel: ((this: Window, ev: TouchEvent) => any) | null | undefined;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchend_event) */
+declare var ontouchend: ((this: Window, ev: TouchEvent) => any) | null | undefined;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchmove_event) */
+declare var ontouchmove: ((this: Window, ev: TouchEvent) => any) | null | undefined;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/touchstart_event) */
+declare var ontouchstart: ((this: Window, ev: TouchEvent) => any) | null | undefined;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitioncancel_event) */
+declare var ontransitioncancel: ((this: Window, ev: TransitionEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event) */
+declare var ontransitionend: ((this: Window, ev: TransitionEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionrun_event) */
+declare var ontransitionrun: ((this: Window, ev: TransitionEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionstart_event) */
+declare var ontransitionstart: ((this: Window, ev: TransitionEvent) => any) | null;
+/**
+ * Occurs when the volume is changed, or playback is muted or unmuted.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/volumechange_event)
+ */
+declare var onvolumechange: ((this: Window, ev: Event) => any) | null;
+/**
+ * Occurs when playback stops because the next frame of a video resource is not available.
+ * @param ev The event.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/HTMLMediaElement/waiting_event)
+ */
+declare var onwaiting: ((this: Window, ev: Event) => any) | null;
+/**
+ * @deprecated This is a legacy alias of \`onanimationend\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationend_event)
+ */
+declare var onwebkitanimationend: ((this: Window, ev: Event) => any) | null;
+/**
+ * @deprecated This is a legacy alias of \`onanimationiteration\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationiteration_event)
+ */
+declare var onwebkitanimationiteration: ((this: Window, ev: Event) => any) | null;
+/**
+ * @deprecated This is a legacy alias of \`onanimationstart\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/animationstart_event)
+ */
+declare var onwebkitanimationstart: ((this: Window, ev: Event) => any) | null;
+/**
+ * @deprecated This is a legacy alias of \`ontransitionend\`.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/transitionend_event)
+ */
+declare var onwebkittransitionend: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Element/wheel_event) */
+declare var onwheel: ((this: Window, ev: WheelEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/afterprint_event) */
+declare var onafterprint: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/beforeprint_event) */
+declare var onbeforeprint: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/beforeunload_event) */
+declare var onbeforeunload: ((this: Window, ev: BeforeUnloadEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/gamepadconnected_event) */
+declare var ongamepadconnected: ((this: Window, ev: GamepadEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/gamepaddisconnected_event) */
+declare var ongamepaddisconnected: ((this: Window, ev: GamepadEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/hashchange_event) */
+declare var onhashchange: ((this: Window, ev: HashChangeEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/languagechange_event) */
+declare var onlanguagechange: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/message_event) */
+declare var onmessage: ((this: Window, ev: MessageEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/messageerror_event) */
+declare var onmessageerror: ((this: Window, ev: MessageEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/offline_event) */
+declare var onoffline: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/online_event) */
+declare var ononline: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/pagehide_event) */
+declare var onpagehide: ((this: Window, ev: PageTransitionEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/pageshow_event) */
+declare var onpageshow: ((this: Window, ev: PageTransitionEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/popstate_event) */
+declare var onpopstate: ((this: Window, ev: PopStateEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/rejectionhandled_event) */
+declare var onrejectionhandled: ((this: Window, ev: PromiseRejectionEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/storage_event) */
+declare var onstorage: ((this: Window, ev: StorageEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/unhandledrejection_event) */
+declare var onunhandledrejection: ((this: Window, ev: PromiseRejectionEvent) => any) | null;
+/**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/unload_event)
+ */
+declare var onunload: ((this: Window, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/localStorage) */
+declare var localStorage: Storage;
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/caches)
+ */
+declare var caches: CacheStorage;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crossOriginIsolated) */
+declare var crossOriginIsolated: boolean;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crypto_property) */
+declare var crypto: Crypto;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/indexedDB) */
+declare var indexedDB: IDBFactory;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/isSecureContext) */
+declare var isSecureContext: boolean;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/origin) */
+declare var origin: string;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/performance_property) */
+declare var performance: Performance;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/atob) */
+declare function atob(data: string): string;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/btoa) */
+declare function btoa(data: string): string;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearInterval) */
+declare function clearInterval(id: number | undefined): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearTimeout) */
+declare function clearTimeout(id: number | undefined): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/createImageBitmap) */
+declare function createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+declare function createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/fetch) */
+declare function fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/queueMicrotask) */
+declare function queueMicrotask(callback: VoidFunction): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/reportError) */
+declare function reportError(e: any): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setInterval) */
+declare function setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setTimeout) */
+declare function setTimeout(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/structuredClone) */
+declare function structuredClone<T = any>(value: T, options?: StructuredSerializeOptions): T;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Window/sessionStorage) */
+declare var sessionStorage: Storage;
+declare function addEventListener<K extends keyof WindowEventMap>(type: K, listener: (this: Window, ev: WindowEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+declare function addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+declare function removeEventListener<K extends keyof WindowEventMap>(type: K, listener: (this: Window, ev: WindowEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+declare function removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+type AlgorithmIdentifier = Algorithm | string;
+type AllowSharedBufferSource = ArrayBuffer | ArrayBufferView;
+type AutoFill = AutoFillBase | \`\${OptionalPrefixToken<AutoFillSection>}\${OptionalPrefixToken<AutoFillAddressKind>}\${AutoFillField}\${OptionalPostfixToken<AutoFillCredentialField>}\`;
+type AutoFillField = AutoFillNormalField | \`\${OptionalPrefixToken<AutoFillContactKind>}\${AutoFillContactField}\`;
+type AutoFillSection = \`section-\${string}\`;
+type BigInteger = Uint8Array;
+type BinaryData = ArrayBuffer | ArrayBufferView;
+type BlobPart = BufferSource | Blob | string;
+type BodyInit = ReadableStream | XMLHttpRequestBodyInit;
+type BufferSource = ArrayBufferView | ArrayBuffer;
+type COSEAlgorithmIdentifier = number;
+type CSSKeywordish = string | CSSKeywordValue;
+type CSSNumberish = number | CSSNumericValue;
+type CSSPerspectiveValue = CSSNumericValue | CSSKeywordish;
+type CSSUnparsedSegment = string | CSSVariableReferenceValue;
+type CanvasImageSource = HTMLOrSVGImageElement | HTMLVideoElement | HTMLCanvasElement | ImageBitmap | OffscreenCanvas | VideoFrame;
+type ClipboardItemData = Promise<string | Blob>;
+type ClipboardItems = ClipboardItem[];
+type ConstrainBoolean = boolean | ConstrainBooleanParameters;
+type ConstrainDOMString = string | string[] | ConstrainDOMStringParameters;
+type ConstrainDouble = number | ConstrainDoubleRange;
+type ConstrainULong = number | ConstrainULongRange;
+type DOMHighResTimeStamp = number;
+type EpochTimeStamp = number;
+type EventListenerOrEventListenerObject = EventListener | EventListenerObject;
+type FileSystemWriteChunkType = BufferSource | Blob | string | WriteParams;
+type Float32List = Float32Array | GLfloat[];
+type FormDataEntryValue = File | string;
+type GLbitfield = number;
+type GLboolean = boolean;
+type GLclampf = number;
+type GLenum = number;
+type GLfloat = number;
+type GLint = number;
+type GLint64 = number;
+type GLintptr = number;
+type GLsizei = number;
+type GLsizeiptr = number;
+type GLuint = number;
+type GLuint64 = number;
+type HTMLOrSVGImageElement = HTMLImageElement | SVGImageElement;
+type HTMLOrSVGScriptElement = HTMLScriptElement | SVGScriptElement;
+type HashAlgorithmIdentifier = AlgorithmIdentifier;
+type HeadersInit = [string, string][] | Record<string, string> | Headers;
+type IDBValidKey = number | string | Date | BufferSource | IDBValidKey[];
+type ImageBitmapSource = CanvasImageSource | Blob | ImageData;
+type Int32List = Int32Array | GLint[];
+type LineAndPositionSetting = number | AutoKeyword;
+type MediaProvider = MediaStream | MediaSource | Blob;
+type MessageEventSource = WindowProxy | MessagePort | ServiceWorker;
+type MutationRecordType = "attributes" | "characterData" | "childList";
+type NamedCurve = string;
+type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
+type OnBeforeUnloadEventHandler = OnBeforeUnloadEventHandlerNonNull | null;
+type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
+type OptionalPostfixToken<T extends string> = \` \${T}\` | "";
+type OptionalPrefixToken<T extends string> = \`\${T} \` | "";
+type PerformanceEntryList = PerformanceEntry[];
+type RTCRtpTransform = RTCRtpScriptTransform;
+type ReadableStreamController<T> = ReadableStreamDefaultController<T> | ReadableByteStreamController;
+type ReadableStreamReadResult<T> = ReadableStreamReadValueResult<T> | ReadableStreamReadDoneResult<T>;
+type ReadableStreamReader<T> = ReadableStreamDefaultReader<T> | ReadableStreamBYOBReader;
+type RenderingContext = CanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
+type ReportList = Report[];
+type RequestInfo = Request | string;
+type TexImageSource = ImageBitmap | ImageData | HTMLImageElement | HTMLCanvasElement | HTMLVideoElement | OffscreenCanvas | VideoFrame;
+type TimerHandler = string | Function;
+type Transferable = OffscreenCanvas | ImageBitmap | MessagePort | ReadableStream | WritableStream | TransformStream | VideoFrame | ArrayBuffer;
+type Uint32List = Uint32Array | GLuint[];
+type VibratePattern = number | number[];
+type WindowProxy = Window;
+type XMLHttpRequestBodyInit = Blob | BufferSource | FormData | URLSearchParams | string;
+type AlignSetting = "center" | "end" | "left" | "right" | "start";
+type AlphaOption = "discard" | "keep";
+type AnimationPlayState = "finished" | "idle" | "paused" | "running";
+type AnimationReplaceState = "active" | "persisted" | "removed";
+type AppendMode = "segments" | "sequence";
+type AttestationConveyancePreference = "direct" | "enterprise" | "indirect" | "none";
+type AudioContextLatencyCategory = "balanced" | "interactive" | "playback";
+type AudioContextState = "closed" | "running" | "suspended";
+type AuthenticatorAttachment = "cross-platform" | "platform";
+type AuthenticatorTransport = "ble" | "hybrid" | "internal" | "nfc" | "usb";
+type AutoFillAddressKind = "billing" | "shipping";
+type AutoFillBase = "" | "off" | "on";
+type AutoFillContactField = "email" | "tel" | "tel-area-code" | "tel-country-code" | "tel-extension" | "tel-local" | "tel-local-prefix" | "tel-local-suffix" | "tel-national";
+type AutoFillContactKind = "home" | "mobile" | "work";
+type AutoFillCredentialField = "webauthn";
+type AutoFillNormalField = "additional-name" | "address-level1" | "address-level2" | "address-level3" | "address-level4" | "address-line1" | "address-line2" | "address-line3" | "bday-day" | "bday-month" | "bday-year" | "cc-csc" | "cc-exp" | "cc-exp-month" | "cc-exp-year" | "cc-family-name" | "cc-given-name" | "cc-name" | "cc-number" | "cc-type" | "country" | "country-name" | "current-password" | "family-name" | "given-name" | "honorific-prefix" | "honorific-suffix" | "name" | "new-password" | "one-time-code" | "organization" | "postal-code" | "street-address" | "transaction-amount" | "transaction-currency" | "username";
+type AutoKeyword = "auto";
+type AutomationRate = "a-rate" | "k-rate";
+type AvcBitstreamFormat = "annexb" | "avc";
+type BinaryType = "arraybuffer" | "blob";
+type BiquadFilterType = "allpass" | "bandpass" | "highpass" | "highshelf" | "lowpass" | "lowshelf" | "notch" | "peaking";
+type CSSMathOperator = "clamp" | "invert" | "max" | "min" | "negate" | "product" | "sum";
+type CSSNumericBaseType = "angle" | "flex" | "frequency" | "length" | "percent" | "resolution" | "time";
+type CanPlayTypeResult = "" | "maybe" | "probably";
+type CanvasDirection = "inherit" | "ltr" | "rtl";
+type CanvasFillRule = "evenodd" | "nonzero";
+type CanvasFontKerning = "auto" | "none" | "normal";
+type CanvasFontStretch = "condensed" | "expanded" | "extra-condensed" | "extra-expanded" | "normal" | "semi-condensed" | "semi-expanded" | "ultra-condensed" | "ultra-expanded";
+type CanvasFontVariantCaps = "all-petite-caps" | "all-small-caps" | "normal" | "petite-caps" | "small-caps" | "titling-caps" | "unicase";
+type CanvasLineCap = "butt" | "round" | "square";
+type CanvasLineJoin = "bevel" | "miter" | "round";
+type CanvasTextAlign = "center" | "end" | "left" | "right" | "start";
+type CanvasTextBaseline = "alphabetic" | "bottom" | "hanging" | "ideographic" | "middle" | "top";
+type CanvasTextRendering = "auto" | "geometricPrecision" | "optimizeLegibility" | "optimizeSpeed";
+type ChannelCountMode = "clamped-max" | "explicit" | "max";
+type ChannelInterpretation = "discrete" | "speakers";
+type ClientTypes = "all" | "sharedworker" | "window" | "worker";
+type CodecState = "closed" | "configured" | "unconfigured";
+type ColorGamut = "p3" | "rec2020" | "srgb";
+type ColorSpaceConversion = "default" | "none";
+type CompositeOperation = "accumulate" | "add" | "replace";
+type CompositeOperationOrAuto = "accumulate" | "add" | "auto" | "replace";
+type CompressionFormat = "deflate" | "deflate-raw" | "gzip";
+type CredentialMediationRequirement = "conditional" | "optional" | "required" | "silent";
+type DOMParserSupportedType = "application/xhtml+xml" | "application/xml" | "image/svg+xml" | "text/html" | "text/xml";
+type DirectionSetting = "" | "lr" | "rl";
+type DisplayCaptureSurfaceType = "browser" | "monitor" | "window";
+type DistanceModelType = "exponential" | "inverse" | "linear";
+type DocumentReadyState = "complete" | "interactive" | "loading";
+type DocumentVisibilityState = "hidden" | "visible";
+type EncodedVideoChunkType = "delta" | "key";
+type EndOfStreamError = "decode" | "network";
+type EndingType = "native" | "transparent";
+type FileSystemHandleKind = "directory" | "file";
+type FillMode = "auto" | "backwards" | "both" | "forwards" | "none";
+type FontDisplay = "auto" | "block" | "fallback" | "optional" | "swap";
+type FontFaceLoadStatus = "error" | "loaded" | "loading" | "unloaded";
+type FontFaceSetLoadStatus = "loaded" | "loading";
+type FullscreenNavigationUI = "auto" | "hide" | "show";
+type GamepadHapticActuatorType = "vibration";
+type GamepadHapticEffectType = "dual-rumble";
+type GamepadHapticsResult = "complete" | "preempted";
+type GamepadMappingType = "" | "standard" | "xr-standard";
+type GlobalCompositeOperation = "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor";
+type HardwareAcceleration = "no-preference" | "prefer-hardware" | "prefer-software";
+type HdrMetadataType = "smpteSt2086" | "smpteSt2094-10" | "smpteSt2094-40";
+type HighlightType = "grammar-error" | "highlight" | "spelling-error";
+type IDBCursorDirection = "next" | "nextunique" | "prev" | "prevunique";
+type IDBRequestReadyState = "done" | "pending";
+type IDBTransactionDurability = "default" | "relaxed" | "strict";
+type IDBTransactionMode = "readonly" | "readwrite" | "versionchange";
+type ImageOrientation = "flipY" | "from-image" | "none";
+type ImageSmoothingQuality = "high" | "low" | "medium";
+type InsertPosition = "afterbegin" | "afterend" | "beforebegin" | "beforeend";
+type IterationCompositeOperation = "accumulate" | "replace";
+type KeyFormat = "jwk" | "pkcs8" | "raw" | "spki";
+type KeyType = "private" | "public" | "secret";
+type KeyUsage = "decrypt" | "deriveBits" | "deriveKey" | "encrypt" | "sign" | "unwrapKey" | "verify" | "wrapKey";
+type LatencyMode = "quality" | "realtime";
+type LineAlignSetting = "center" | "end" | "start";
+type LockMode = "exclusive" | "shared";
+type MIDIPortConnectionState = "closed" | "open" | "pending";
+type MIDIPortDeviceState = "connected" | "disconnected";
+type MIDIPortType = "input" | "output";
+type MediaDecodingType = "file" | "media-source" | "webrtc";
+type MediaDeviceKind = "audioinput" | "audiooutput" | "videoinput";
+type MediaEncodingType = "record" | "webrtc";
+type MediaKeyMessageType = "individualization-request" | "license-release" | "license-renewal" | "license-request";
+type MediaKeySessionClosedReason = "closed-by-application" | "hardware-context-reset" | "internal-error" | "release-acknowledged" | "resource-evicted";
+type MediaKeySessionType = "persistent-license" | "temporary";
+type MediaKeyStatus = "expired" | "internal-error" | "output-downscaled" | "output-restricted" | "released" | "status-pending" | "usable" | "usable-in-future";
+type MediaKeysRequirement = "not-allowed" | "optional" | "required";
+type MediaSessionAction = "nexttrack" | "pause" | "play" | "previoustrack" | "seekbackward" | "seekforward" | "seekto" | "skipad" | "stop";
+type MediaSessionPlaybackState = "none" | "paused" | "playing";
+type MediaStreamTrackState = "ended" | "live";
+type NavigationTimingType = "back_forward" | "navigate" | "prerender" | "reload";
+type NotificationDirection = "auto" | "ltr" | "rtl";
+type NotificationPermission = "default" | "denied" | "granted";
+type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2" | "webgpu";
+type OrientationType = "landscape-primary" | "landscape-secondary" | "portrait-primary" | "portrait-secondary";
+type OscillatorType = "custom" | "sawtooth" | "sine" | "square" | "triangle";
+type OverSampleType = "2x" | "4x" | "none";
+type PanningModelType = "HRTF" | "equalpower";
+type PaymentComplete = "fail" | "success" | "unknown";
+type PermissionName = "geolocation" | "notifications" | "persistent-storage" | "push" | "screen-wake-lock" | "xr-spatial-tracking";
+type PermissionState = "denied" | "granted" | "prompt";
+type PlaybackDirection = "alternate" | "alternate-reverse" | "normal" | "reverse";
+type PositionAlignSetting = "auto" | "center" | "line-left" | "line-right";
+type PredefinedColorSpace = "display-p3" | "srgb";
+type PremultiplyAlpha = "default" | "none" | "premultiply";
+type PresentationStyle = "attachment" | "inline" | "unspecified";
+type PublicKeyCredentialType = "public-key";
+type PushEncryptionKeyName = "auth" | "p256dh";
+type RTCBundlePolicy = "balanced" | "max-bundle" | "max-compat";
+type RTCDataChannelState = "closed" | "closing" | "connecting" | "open";
+type RTCDegradationPreference = "balanced" | "maintain-framerate" | "maintain-resolution";
+type RTCDtlsTransportState = "closed" | "connected" | "connecting" | "failed" | "new";
+type RTCEncodedVideoFrameType = "delta" | "empty" | "key";
+type RTCErrorDetailType = "data-channel-failure" | "dtls-failure" | "fingerprint-failure" | "hardware-encoder-error" | "hardware-encoder-not-available" | "sctp-failure" | "sdp-syntax-error";
+type RTCIceCandidateType = "host" | "prflx" | "relay" | "srflx";
+type RTCIceComponent = "rtcp" | "rtp";
+type RTCIceConnectionState = "checking" | "closed" | "completed" | "connected" | "disconnected" | "failed" | "new";
+type RTCIceGathererState = "complete" | "gathering" | "new";
+type RTCIceGatheringState = "complete" | "gathering" | "new";
+type RTCIceProtocol = "tcp" | "udp";
+type RTCIceTcpCandidateType = "active" | "passive" | "so";
+type RTCIceTransportPolicy = "all" | "relay";
+type RTCIceTransportState = "checking" | "closed" | "completed" | "connected" | "disconnected" | "failed" | "new";
+type RTCPeerConnectionState = "closed" | "connected" | "connecting" | "disconnected" | "failed" | "new";
+type RTCPriorityType = "high" | "low" | "medium" | "very-low";
+type RTCRtcpMuxPolicy = "require";
+type RTCRtpTransceiverDirection = "inactive" | "recvonly" | "sendonly" | "sendrecv" | "stopped";
+type RTCSctpTransportState = "closed" | "connected" | "connecting";
+type RTCSdpType = "answer" | "offer" | "pranswer" | "rollback";
+type RTCSignalingState = "closed" | "have-local-offer" | "have-local-pranswer" | "have-remote-offer" | "have-remote-pranswer" | "stable";
+type RTCStatsIceCandidatePairState = "failed" | "frozen" | "in-progress" | "inprogress" | "succeeded" | "waiting";
+type RTCStatsType = "candidate-pair" | "certificate" | "codec" | "data-channel" | "inbound-rtp" | "local-candidate" | "media-playout" | "media-source" | "outbound-rtp" | "peer-connection" | "remote-candidate" | "remote-inbound-rtp" | "remote-outbound-rtp" | "transport";
+type ReadableStreamReaderMode = "byob";
+type ReadableStreamType = "bytes";
+type ReadyState = "closed" | "ended" | "open";
+type RecordingState = "inactive" | "paused" | "recording";
+type ReferrerPolicy = "" | "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url";
+type RemotePlaybackState = "connected" | "connecting" | "disconnected";
+type RequestCache = "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload";
+type RequestCredentials = "include" | "omit" | "same-origin";
+type RequestDestination = "" | "audio" | "audioworklet" | "document" | "embed" | "font" | "frame" | "iframe" | "image" | "manifest" | "object" | "paintworklet" | "report" | "script" | "sharedworker" | "style" | "track" | "video" | "worker" | "xslt";
+type RequestMode = "cors" | "navigate" | "no-cors" | "same-origin";
+type RequestPriority = "auto" | "high" | "low";
+type RequestRedirect = "error" | "follow" | "manual";
+type ResidentKeyRequirement = "discouraged" | "preferred" | "required";
+type ResizeObserverBoxOptions = "border-box" | "content-box" | "device-pixel-content-box";
+type ResizeQuality = "high" | "low" | "medium" | "pixelated";
+type ResponseType = "basic" | "cors" | "default" | "error" | "opaque" | "opaqueredirect";
+type ScrollBehavior = "auto" | "instant" | "smooth";
+type ScrollLogicalPosition = "center" | "end" | "nearest" | "start";
+type ScrollRestoration = "auto" | "manual";
+type ScrollSetting = "" | "up";
+type SecurityPolicyViolationEventDisposition = "enforce" | "report";
+type SelectionMode = "end" | "preserve" | "select" | "start";
+type ServiceWorkerState = "activated" | "activating" | "installed" | "installing" | "parsed" | "redundant";
+type ServiceWorkerUpdateViaCache = "all" | "imports" | "none";
+type ShadowRootMode = "closed" | "open";
+type SlotAssignmentMode = "manual" | "named";
+type SpeechSynthesisErrorCode = "audio-busy" | "audio-hardware" | "canceled" | "interrupted" | "invalid-argument" | "language-unavailable" | "network" | "not-allowed" | "synthesis-failed" | "synthesis-unavailable" | "text-too-long" | "voice-unavailable";
+type TextTrackKind = "captions" | "chapters" | "descriptions" | "metadata" | "subtitles";
+type TextTrackMode = "disabled" | "hidden" | "showing";
+type TouchType = "direct" | "stylus";
+type TransferFunction = "hlg" | "pq" | "srgb";
+type UserVerificationRequirement = "discouraged" | "preferred" | "required";
+type VideoColorPrimaries = "bt470bg" | "bt709" | "smpte170m";
+type VideoEncoderBitrateMode = "constant" | "quantizer" | "variable";
+type VideoFacingModeEnum = "environment" | "left" | "right" | "user";
+type VideoMatrixCoefficients = "bt470bg" | "bt709" | "rgb" | "smpte170m";
+type VideoPixelFormat = "BGRA" | "BGRX" | "I420" | "I420A" | "I422" | "I444" | "NV12" | "RGBA" | "RGBX";
+type VideoTransferCharacteristics = "bt709" | "iec61966-2-1" | "smpte170m";
+type WakeLockType = "screen";
+type WebGLPowerPreference = "default" | "high-performance" | "low-power";
+type WebTransportCongestionControl = "default" | "low-latency" | "throughput";
+type WebTransportErrorSource = "session" | "stream";
+type WorkerType = "classic" | "module";
+type WriteCommandType = "seek" | "truncate" | "write";
+type XMLHttpRequestResponseType = "" | "arraybuffer" | "blob" | "document" | "json" | "text";
+`,lo["lib.dom.iterable.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// Window Iterable APIs
+/////////////////////////////
+
+interface AudioParam {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AudioParam/setValueCurveAtTime) */
+ setValueCurveAtTime(values: Iterable<number>, startTime: number, duration: number): AudioParam;
+}
+
+interface AudioParamMap extends ReadonlyMap<string, AudioParam> {
+}
+
+interface BaseAudioContext {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createIIRFilter) */
+ createIIRFilter(feedforward: Iterable<number>, feedback: Iterable<number>): IIRFilterNode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BaseAudioContext/createPeriodicWave) */
+ createPeriodicWave(real: Iterable<number>, imag: Iterable<number>, constraints?: PeriodicWaveConstraints): PeriodicWave;
+}
+
+interface CSSKeyframesRule {
+ [Symbol.iterator](): IterableIterator<CSSKeyframeRule>;
+}
+
+interface CSSNumericArray {
+ [Symbol.iterator](): IterableIterator<CSSNumericValue>;
+ entries(): IterableIterator<[number, CSSNumericValue]>;
+ keys(): IterableIterator<number>;
+ values(): IterableIterator<CSSNumericValue>;
+}
+
+interface CSSRuleList {
+ [Symbol.iterator](): IterableIterator<CSSRule>;
+}
+
+interface CSSStyleDeclaration {
+ [Symbol.iterator](): IterableIterator<string>;
+}
+
+interface CSSTransformValue {
+ [Symbol.iterator](): IterableIterator<CSSTransformComponent>;
+ entries(): IterableIterator<[number, CSSTransformComponent]>;
+ keys(): IterableIterator<number>;
+ values(): IterableIterator<CSSTransformComponent>;
+}
+
+interface CSSUnparsedValue {
+ [Symbol.iterator](): IterableIterator<CSSUnparsedSegment>;
+ entries(): IterableIterator<[number, CSSUnparsedSegment]>;
+ keys(): IterableIterator<number>;
+ values(): IterableIterator<CSSUnparsedSegment>;
+}
+
+interface Cache {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/addAll) */
+ addAll(requests: Iterable<RequestInfo>): Promise<void>;
+}
+
+interface CanvasPath {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/roundRect) */
+ roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | Iterable<number | DOMPointInit>): void;
+}
+
+interface CanvasPathDrawingStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setLineDash) */
+ setLineDash(segments: Iterable<number>): void;
+}
+
+interface DOMRectList {
+ [Symbol.iterator](): IterableIterator<DOMRect>;
+}
+
+interface DOMStringList {
+ [Symbol.iterator](): IterableIterator<string>;
+}
+
+interface DOMTokenList {
+ [Symbol.iterator](): IterableIterator<string>;
+ entries(): IterableIterator<[number, string]>;
+ keys(): IterableIterator<number>;
+ values(): IterableIterator<string>;
+}
+
+interface DataTransferItemList {
+ [Symbol.iterator](): IterableIterator<DataTransferItem>;
+}
+
+interface EventCounts extends ReadonlyMap<string, number> {
+}
+
+interface FileList {
+ [Symbol.iterator](): IterableIterator<File>;
+}
+
+interface FontFaceSet extends Set<FontFace> {
+}
+
+interface FormData {
+ [Symbol.iterator](): IterableIterator<[string, FormDataEntryValue]>;
+ /** Returns an array of key, value pairs for every entry in the list. */
+ entries(): IterableIterator<[string, FormDataEntryValue]>;
+ /** Returns a list of keys in the list. */
+ keys(): IterableIterator<string>;
+ /** Returns a list of values in the list. */
+ values(): IterableIterator<FormDataEntryValue>;
+}
+
+interface HTMLAllCollection {
+ [Symbol.iterator](): IterableIterator<Element>;
+}
+
+interface HTMLCollectionBase {
+ [Symbol.iterator](): IterableIterator<Element>;
+}
+
+interface HTMLCollectionOf<T extends Element> {
+ [Symbol.iterator](): IterableIterator<T>;
+}
+
+interface HTMLFormElement {
+ [Symbol.iterator](): IterableIterator<Element>;
+}
+
+interface HTMLSelectElement {
+ [Symbol.iterator](): IterableIterator<HTMLOptionElement>;
+}
+
+interface Headers {
+ [Symbol.iterator](): IterableIterator<[string, string]>;
+ /** Returns an iterator allowing to go through all key/value pairs contained in this object. */
+ entries(): IterableIterator<[string, string]>;
+ /** Returns an iterator allowing to go through all keys of the key/value pairs contained in this object. */
+ keys(): IterableIterator<string>;
+ /** Returns an iterator allowing to go through all values of the key/value pairs contained in this object. */
+ values(): IterableIterator<string>;
+}
+
+interface Highlight extends Set<AbstractRange> {
+}
+
+interface HighlightRegistry extends Map<string, Highlight> {
+}
+
+interface IDBDatabase {
+ /**
+ * Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/transaction)
+ */
+ transaction(storeNames: string | Iterable<string>, mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction;
+}
+
+interface IDBObjectStore {
+ /**
+ * Creates a new index in store with the given name, keyPath and options and returns a new IDBIndex. If the keyPath and options define constraints that cannot be satisfied with the data already in store the upgrade transaction will abort with a "ConstraintError" DOMException.
+ *
+ * Throws an "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/createIndex)
+ */
+ createIndex(name: string, keyPath: string | Iterable<string>, options?: IDBIndexParameters): IDBIndex;
+}
+
+interface MIDIInputMap extends ReadonlyMap<string, MIDIInput> {
+}
+
+interface MIDIOutput {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MIDIOutput/send) */
+ send(data: Iterable<number>, timestamp?: DOMHighResTimeStamp): void;
+}
+
+interface MIDIOutputMap extends ReadonlyMap<string, MIDIOutput> {
+}
+
+interface MediaKeyStatusMap {
+ [Symbol.iterator](): IterableIterator<[BufferSource, MediaKeyStatus]>;
+ entries(): IterableIterator<[BufferSource, MediaKeyStatus]>;
+ keys(): IterableIterator<BufferSource>;
+ values(): IterableIterator<MediaKeyStatus>;
+}
+
+interface MediaList {
+ [Symbol.iterator](): IterableIterator<string>;
+}
+
+interface MessageEvent<T = any> {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/initMessageEvent)
+ */
+ initMessageEvent(type: string, bubbles?: boolean, cancelable?: boolean, data?: any, origin?: string, lastEventId?: string, source?: MessageEventSource | null, ports?: Iterable<MessagePort>): void;
+}
+
+interface MimeTypeArray {
+ [Symbol.iterator](): IterableIterator<MimeType>;
+}
+
+interface NamedNodeMap {
+ [Symbol.iterator](): IterableIterator<Attr>;
+}
+
+interface Navigator {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/requestMediaKeySystemAccess)
+ */
+ requestMediaKeySystemAccess(keySystem: string, supportedConfigurations: Iterable<MediaKeySystemConfiguration>): Promise<MediaKeySystemAccess>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/vibrate) */
+ vibrate(pattern: Iterable<number>): boolean;
+}
+
+interface NodeList {
+ [Symbol.iterator](): IterableIterator<Node>;
+ /** Returns an array of key, value pairs for every entry in the list. */
+ entries(): IterableIterator<[number, Node]>;
+ /** Returns an list of keys in the list. */
+ keys(): IterableIterator<number>;
+ /** Returns an list of values in the list. */
+ values(): IterableIterator<Node>;
+}
+
+interface NodeListOf<TNode extends Node> {
+ [Symbol.iterator](): IterableIterator<TNode>;
+ /** Returns an array of key, value pairs for every entry in the list. */
+ entries(): IterableIterator<[number, TNode]>;
+ /** Returns an list of keys in the list. */
+ keys(): IterableIterator<number>;
+ /** Returns an list of values in the list. */
+ values(): IterableIterator<TNode>;
+}
+
+interface Plugin {
+ [Symbol.iterator](): IterableIterator<MimeType>;
+}
+
+interface PluginArray {
+ [Symbol.iterator](): IterableIterator<Plugin>;
+}
+
+interface RTCRtpTransceiver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpTransceiver/setCodecPreferences) */
+ setCodecPreferences(codecs: Iterable<RTCRtpCodecCapability>): void;
+}
+
+interface RTCStatsReport extends ReadonlyMap<string, any> {
+}
+
+interface SVGLengthList {
+ [Symbol.iterator](): IterableIterator<SVGLength>;
+}
+
+interface SVGNumberList {
+ [Symbol.iterator](): IterableIterator<SVGNumber>;
+}
+
+interface SVGPointList {
+ [Symbol.iterator](): IterableIterator<DOMPoint>;
+}
+
+interface SVGStringList {
+ [Symbol.iterator](): IterableIterator<string>;
+}
+
+interface SVGTransformList {
+ [Symbol.iterator](): IterableIterator<SVGTransform>;
+}
+
+interface SourceBufferList {
+ [Symbol.iterator](): IterableIterator<SourceBuffer>;
+}
+
+interface SpeechRecognitionResult {
+ [Symbol.iterator](): IterableIterator<SpeechRecognitionAlternative>;
+}
+
+interface SpeechRecognitionResultList {
+ [Symbol.iterator](): IterableIterator<SpeechRecognitionResult>;
+}
+
+interface StylePropertyMapReadOnly {
+ [Symbol.iterator](): IterableIterator<[string, Iterable<CSSStyleValue>]>;
+ entries(): IterableIterator<[string, Iterable<CSSStyleValue>]>;
+ keys(): IterableIterator<string>;
+ values(): IterableIterator<Iterable<CSSStyleValue>>;
+}
+
+interface StyleSheetList {
+ [Symbol.iterator](): IterableIterator<CSSStyleSheet>;
+}
+
+interface SubtleCrypto {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) */
+ deriveKey(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) */
+ generateKey(algorithm: "Ed25519", extractable: boolean, keyUsages: ReadonlyArray<"sign" | "verify">): Promise<CryptoKeyPair>;
+ generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKeyPair>;
+ generateKey(algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ generateKey(algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKeyPair | CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) */
+ importKey(format: "jwk", keyData: JsonWebKey, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ importKey(format: Exclude<KeyFormat, "jwk">, keyData: BufferSource, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) */
+ unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
+}
+
+interface TextTrackCueList {
+ [Symbol.iterator](): IterableIterator<TextTrackCue>;
+}
+
+interface TextTrackList {
+ [Symbol.iterator](): IterableIterator<TextTrack>;
+}
+
+interface TouchList {
+ [Symbol.iterator](): IterableIterator<Touch>;
+}
+
+interface URLSearchParams {
+ [Symbol.iterator](): IterableIterator<[string, string]>;
+ /** Returns an array of key, value pairs for every entry in the search params. */
+ entries(): IterableIterator<[string, string]>;
+ /** Returns a list of keys in the search params. */
+ keys(): IterableIterator<string>;
+ /** Returns a list of values in the search params. */
+ values(): IterableIterator<string>;
+}
+
+interface WEBGL_draw_buffers {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers/drawBuffersWEBGL) */
+ drawBuffersWEBGL(buffers: Iterable<GLenum>): void;
+}
+
+interface WEBGL_multi_draw {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysInstancedWEBGL) */
+ multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: number, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysWEBGL) */
+ multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: number, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsInstancedWEBGL) */
+ multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: number, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsWEBGL) */
+ multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: number, drawcount: GLsizei): void;
+}
+
+interface WebGL2RenderingContextBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferfv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLfloat>, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLint>, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferuiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLuint>, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawBuffers) */
+ drawBuffers(buffers: Iterable<GLenum>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniforms) */
+ getActiveUniforms(program: WebGLProgram, uniformIndices: Iterable<GLuint>, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformIndices) */
+ getUniformIndices(program: WebGLProgram, uniformNames: Iterable<string>): Iterable<GLuint> | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateFramebuffer) */
+ invalidateFramebuffer(target: GLenum, attachments: Iterable<GLenum>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateSubFramebuffer) */
+ invalidateSubFramebuffer(target: GLenum, attachments: Iterable<GLenum>, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/transformFeedbackVaryings) */
+ transformFeedbackVaryings(program: WebGLProgram, varyings: Iterable<string>, bufferMode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform1uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform2uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform3uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform4uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4iv(index: GLuint, values: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4uiv(index: GLuint, values: Iterable<GLuint>): void;
+}
+
+interface WebGL2RenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+}
+
+interface WebGLRenderingContextBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib1fv(index: GLuint, values: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib2fv(index: GLuint, values: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib3fv(index: GLuint, values: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib4fv(index: GLuint, values: Iterable<GLfloat>): void;
+}
+
+interface WebGLRenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
+}
+`,lo["lib.es2015.collection.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Map<K, V> {
+ clear(): void;
+ /**
+ * @returns true if an element in the Map existed and has been removed, or false if the element does not exist.
+ */
+ delete(key: K): boolean;
+ /**
+ * Executes a provided function once per each key/value pair in the Map, in insertion order.
+ */
+ forEach(callbackfn: (value: V, key: K, map: Map<K, V>) => void, thisArg?: any): void;
+ /**
+ * Returns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.
+ * @returns Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.
+ */
+ get(key: K): V | undefined;
+ /**
+ * @returns boolean indicating whether an element with the specified key exists or not.
+ */
+ has(key: K): boolean;
+ /**
+ * Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.
+ */
+ set(key: K, value: V): this;
+ /**
+ * @returns the number of elements in the Map.
+ */
+ readonly size: number;
+}
+
+interface MapConstructor {
+ new (): Map<any, any>;
+ new <K, V>(entries?: readonly (readonly [K, V])[] | null): Map<K, V>;
+ readonly prototype: Map<any, any>;
+}
+declare var Map: MapConstructor;
+
+interface ReadonlyMap<K, V> {
+ forEach(callbackfn: (value: V, key: K, map: ReadonlyMap<K, V>) => void, thisArg?: any): void;
+ get(key: K): V | undefined;
+ has(key: K): boolean;
+ readonly size: number;
+}
+
+interface WeakMap<K extends WeakKey, V> {
+ /**
+ * Removes the specified element from the WeakMap.
+ * @returns true if the element was successfully removed, or false if it was not present.
+ */
+ delete(key: K): boolean;
+ /**
+ * @returns a specified element.
+ */
+ get(key: K): V | undefined;
+ /**
+ * @returns a boolean indicating whether an element with the specified key exists or not.
+ */
+ has(key: K): boolean;
+ /**
+ * Adds a new element with a specified key and value.
+ * @param key Must be an object or symbol.
+ */
+ set(key: K, value: V): this;
+}
+
+interface WeakMapConstructor {
+ new <K extends WeakKey = WeakKey, V = any>(entries?: readonly (readonly [K, V])[] | null): WeakMap<K, V>;
+ readonly prototype: WeakMap<WeakKey, any>;
+}
+declare var WeakMap: WeakMapConstructor;
+
+interface Set<T> {
+ /**
+ * Appends a new element with a specified value to the end of the Set.
+ */
+ add(value: T): this;
+
+ clear(): void;
+ /**
+ * Removes a specified value from the Set.
+ * @returns Returns true if an element in the Set existed and has been removed, or false if the element does not exist.
+ */
+ delete(value: T): boolean;
+ /**
+ * Executes a provided function once per each value in the Set object, in insertion order.
+ */
+ forEach(callbackfn: (value: T, value2: T, set: Set<T>) => void, thisArg?: any): void;
+ /**
+ * @returns a boolean indicating whether an element with the specified value exists in the Set or not.
+ */
+ has(value: T): boolean;
+ /**
+ * @returns the number of (unique) elements in Set.
+ */
+ readonly size: number;
+}
+
+interface SetConstructor {
+ new <T = any>(values?: readonly T[] | null): Set<T>;
+ readonly prototype: Set<any>;
+}
+declare var Set: SetConstructor;
+
+interface ReadonlySet<T> {
+ forEach(callbackfn: (value: T, value2: T, set: ReadonlySet<T>) => void, thisArg?: any): void;
+ has(value: T): boolean;
+ readonly size: number;
+}
+
+interface WeakSet<T extends WeakKey> {
+ /**
+ * Appends a new value to the end of the WeakSet.
+ */
+ add(value: T): this;
+ /**
+ * Removes the specified element from the WeakSet.
+ * @returns Returns true if the element existed and has been removed, or false if the element does not exist.
+ */
+ delete(value: T): boolean;
+ /**
+ * @returns a boolean indicating whether a value exists in the WeakSet or not.
+ */
+ has(value: T): boolean;
+}
+
+interface WeakSetConstructor {
+ new <T extends WeakKey = WeakKey>(values?: readonly T[] | null): WeakSet<T>;
+ readonly prototype: WeakSet<WeakKey>;
+}
+declare var WeakSet: WeakSetConstructor;
+`,lo["lib.es2015.core.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Array<T> {
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find<S extends T>(predicate: (value: T, index: number, obj: T[]) => value is S, thisArg?: any): S | undefined;
+ find(predicate: (value: T, index: number, obj: T[]) => unknown, thisArg?: any): T | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: T, index: number, obj: T[]) => unknown, thisArg?: any): number;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: T, start?: number, end?: number): this;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+}
+
+interface ArrayConstructor {
+ /**
+ * Creates an array from an array-like object.
+ * @param arrayLike An array-like object to convert to an array.
+ */
+ from<T>(arrayLike: ArrayLike<T>): T[];
+
+ /**
+ * Creates an array from an iterable object.
+ * @param arrayLike An array-like object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T, U>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of<T>(...items: T[]): T[];
+}
+
+interface DateConstructor {
+ new (value: number | string | Date): Date;
+}
+
+interface Function {
+ /**
+ * Returns the name of the function. Function names are read-only and can not be changed.
+ */
+ readonly name: string;
+}
+
+interface Math {
+ /**
+ * Returns the number of leading zero bits in the 32-bit binary representation of a number.
+ * @param x A numeric expression.
+ */
+ clz32(x: number): number;
+
+ /**
+ * Returns the result of 32-bit multiplication of two numbers.
+ * @param x First number
+ * @param y Second number
+ */
+ imul(x: number, y: number): number;
+
+ /**
+ * Returns the sign of the x, indicating whether x is positive, negative or zero.
+ * @param x The numeric expression to test
+ */
+ sign(x: number): number;
+
+ /**
+ * Returns the base 10 logarithm of a number.
+ * @param x A numeric expression.
+ */
+ log10(x: number): number;
+
+ /**
+ * Returns the base 2 logarithm of a number.
+ * @param x A numeric expression.
+ */
+ log2(x: number): number;
+
+ /**
+ * Returns the natural logarithm of 1 + x.
+ * @param x A numeric expression.
+ */
+ log1p(x: number): number;
+
+ /**
+ * Returns the result of (e^x - 1), which is an implementation-dependent approximation to
+ * subtracting 1 from the exponential function of x (e raised to the power of x, where e
+ * is the base of the natural logarithms).
+ * @param x A numeric expression.
+ */
+ expm1(x: number): number;
+
+ /**
+ * Returns the hyperbolic cosine of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ cosh(x: number): number;
+
+ /**
+ * Returns the hyperbolic sine of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ sinh(x: number): number;
+
+ /**
+ * Returns the hyperbolic tangent of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ tanh(x: number): number;
+
+ /**
+ * Returns the inverse hyperbolic cosine of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ acosh(x: number): number;
+
+ /**
+ * Returns the inverse hyperbolic sine of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ asinh(x: number): number;
+
+ /**
+ * Returns the inverse hyperbolic tangent of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ atanh(x: number): number;
+
+ /**
+ * Returns the square root of the sum of squares of its arguments.
+ * @param values Values to compute the square root for.
+ * If no arguments are passed, the result is +0.
+ * If there is only one argument, the result is the absolute value.
+ * If any argument is +Infinity or -Infinity, the result is +Infinity.
+ * If any argument is NaN, the result is NaN.
+ * If all arguments are either +0 or −0, the result is +0.
+ */
+ hypot(...values: number[]): number;
+
+ /**
+ * Returns the integral part of the a numeric expression, x, removing any fractional digits.
+ * If x is already an integer, the result is x.
+ * @param x A numeric expression.
+ */
+ trunc(x: number): number;
+
+ /**
+ * Returns the nearest single precision float representation of a number.
+ * @param x A numeric expression.
+ */
+ fround(x: number): number;
+
+ /**
+ * Returns an implementation-dependent approximation to the cube root of number.
+ * @param x A numeric expression.
+ */
+ cbrt(x: number): number;
+}
+
+interface NumberConstructor {
+ /**
+ * The value of Number.EPSILON is the difference between 1 and the smallest value greater than 1
+ * that is representable as a Number value, which is approximately:
+ * 2.2204460492503130808472633361816 x 10‍−‍16.
+ */
+ readonly EPSILON: number;
+
+ /**
+ * Returns true if passed value is finite.
+ * Unlike the global isFinite, Number.isFinite doesn't forcibly convert the parameter to a
+ * number. Only finite values of the type number, result in true.
+ * @param number A numeric value.
+ */
+ isFinite(number: unknown): boolean;
+
+ /**
+ * Returns true if the value passed is an integer, false otherwise.
+ * @param number A numeric value.
+ */
+ isInteger(number: unknown): boolean;
+
+ /**
+ * Returns a Boolean value that indicates whether a value is the reserved value NaN (not a
+ * number). Unlike the global isNaN(), Number.isNaN() doesn't forcefully convert the parameter
+ * to a number. Only values of the type number, that are also NaN, result in true.
+ * @param number A numeric value.
+ */
+ isNaN(number: unknown): boolean;
+
+ /**
+ * Returns true if the value passed is a safe integer.
+ * @param number A numeric value.
+ */
+ isSafeInteger(number: unknown): boolean;
+
+ /**
+ * The value of the largest integer n such that n and n + 1 are both exactly representable as
+ * a Number value.
+ * The value of Number.MAX_SAFE_INTEGER is 9007199254740991 2^53 − 1.
+ */
+ readonly MAX_SAFE_INTEGER: number;
+
+ /**
+ * The value of the smallest integer n such that n and n − 1 are both exactly representable as
+ * a Number value.
+ * The value of Number.MIN_SAFE_INTEGER is −9007199254740991 (−(2^53 − 1)).
+ */
+ readonly MIN_SAFE_INTEGER: number;
+
+ /**
+ * Converts a string to a floating-point number.
+ * @param string A string that contains a floating-point number.
+ */
+ parseFloat(string: string): number;
+
+ /**
+ * Converts A string to an integer.
+ * @param string A string to convert into a number.
+ * @param radix A value between 2 and 36 that specifies the base of the number in \`string\`.
+ * If this argument is not supplied, strings with a prefix of '0x' are considered hexadecimal.
+ * All other strings are considered decimal.
+ */
+ parseInt(string: string, radix?: number): number;
+}
+
+interface ObjectConstructor {
+ /**
+ * Copy the values of all of the enumerable own properties from one or more source objects to a
+ * target object. Returns the target object.
+ * @param target The target object to copy to.
+ * @param source The source object from which to copy properties.
+ */
+ assign<T extends {}, U>(target: T, source: U): T & U;
+
+ /**
+ * Copy the values of all of the enumerable own properties from one or more source objects to a
+ * target object. Returns the target object.
+ * @param target The target object to copy to.
+ * @param source1 The first source object from which to copy properties.
+ * @param source2 The second source object from which to copy properties.
+ */
+ assign<T extends {}, U, V>(target: T, source1: U, source2: V): T & U & V;
+
+ /**
+ * Copy the values of all of the enumerable own properties from one or more source objects to a
+ * target object. Returns the target object.
+ * @param target The target object to copy to.
+ * @param source1 The first source object from which to copy properties.
+ * @param source2 The second source object from which to copy properties.
+ * @param source3 The third source object from which to copy properties.
+ */
+ assign<T extends {}, U, V, W>(target: T, source1: U, source2: V, source3: W): T & U & V & W;
+
+ /**
+ * Copy the values of all of the enumerable own properties from one or more source objects to a
+ * target object. Returns the target object.
+ * @param target The target object to copy to.
+ * @param sources One or more source objects from which to copy properties
+ */
+ assign(target: object, ...sources: any[]): any;
+
+ /**
+ * Returns an array of all symbol properties found directly on object o.
+ * @param o Object to retrieve the symbols from.
+ */
+ getOwnPropertySymbols(o: any): symbol[];
+
+ /**
+ * Returns the names of the enumerable string properties and methods of an object.
+ * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
+ */
+ keys(o: {}): string[];
+
+ /**
+ * Returns true if the values are the same value, false otherwise.
+ * @param value1 The first value.
+ * @param value2 The second value.
+ */
+ is(value1: any, value2: any): boolean;
+
+ /**
+ * Sets the prototype of a specified object o to object proto or null. Returns the object o.
+ * @param o The object to change its prototype.
+ * @param proto The value of the new prototype or null.
+ */
+ setPrototypeOf(o: any, proto: object | null): any;
+}
+
+interface ReadonlyArray<T> {
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find<S extends T>(predicate: (value: T, index: number, obj: readonly T[]) => value is S, thisArg?: any): S | undefined;
+ find(predicate: (value: T, index: number, obj: readonly T[]) => unknown, thisArg?: any): T | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: T, index: number, obj: readonly T[]) => unknown, thisArg?: any): number;
+}
+
+interface RegExp {
+ /**
+ * Returns a string indicating the flags of the regular expression in question. This field is read-only.
+ * The characters in this string are sequenced and concatenated in the following order:
+ *
+ * - "g" for global
+ * - "i" for ignoreCase
+ * - "m" for multiline
+ * - "u" for unicode
+ * - "y" for sticky
+ *
+ * If no flags are set, the value is the empty string.
+ */
+ readonly flags: string;
+
+ /**
+ * Returns a Boolean value indicating the state of the sticky flag (y) used with a regular
+ * expression. Default is false. Read-only.
+ */
+ readonly sticky: boolean;
+
+ /**
+ * Returns a Boolean value indicating the state of the Unicode flag (u) used with a regular
+ * expression. Default is false. Read-only.
+ */
+ readonly unicode: boolean;
+}
+
+interface RegExpConstructor {
+ new (pattern: RegExp | string, flags?: string): RegExp;
+ (pattern: RegExp | string, flags?: string): RegExp;
+}
+
+interface String {
+ /**
+ * Returns a nonnegative integer Number less than 1114112 (0x110000) that is the code point
+ * value of the UTF-16 encoded code point starting at the string element at position pos in
+ * the String resulting from converting this object to a String.
+ * If there is no element at that position, the result is undefined.
+ * If a valid UTF-16 surrogate pair does not begin at pos, the result is the code unit at pos.
+ */
+ codePointAt(pos: number): number | undefined;
+
+ /**
+ * Returns true if searchString appears as a substring of the result of converting this
+ * object to a String, at one or more positions that are
+ * greater than or equal to position; otherwise, returns false.
+ * @param searchString search string
+ * @param position If position is undefined, 0 is assumed, so as to search all of the String.
+ */
+ includes(searchString: string, position?: number): boolean;
+
+ /**
+ * Returns true if the sequence of elements of searchString converted to a String is the
+ * same as the corresponding elements of this object (converted to a String) starting at
+ * endPosition – length(this). Otherwise returns false.
+ */
+ endsWith(searchString: string, endPosition?: number): boolean;
+
+ /**
+ * Returns the String value result of normalizing the string into the normalization form
+ * named by form as specified in Unicode Standard Annex #15, Unicode Normalization Forms.
+ * @param form Applicable values: "NFC", "NFD", "NFKC", or "NFKD", If not specified default
+ * is "NFC"
+ */
+ normalize(form: "NFC" | "NFD" | "NFKC" | "NFKD"): string;
+
+ /**
+ * Returns the String value result of normalizing the string into the normalization form
+ * named by form as specified in Unicode Standard Annex #15, Unicode Normalization Forms.
+ * @param form Applicable values: "NFC", "NFD", "NFKC", or "NFKD", If not specified default
+ * is "NFC"
+ */
+ normalize(form?: string): string;
+
+ /**
+ * Returns a String value that is made from count copies appended together. If count is 0,
+ * the empty string is returned.
+ * @param count number of copies to append
+ */
+ repeat(count: number): string;
+
+ /**
+ * Returns true if the sequence of elements of searchString converted to a String is the
+ * same as the corresponding elements of this object (converted to a String) starting at
+ * position. Otherwise returns false.
+ */
+ startsWith(searchString: string, position?: number): boolean;
+
+ /**
+ * Returns an \`<a>\` HTML anchor element and sets the name attribute to the text value
+ * @deprecated A legacy feature for browser compatibility
+ * @param name
+ */
+ anchor(name: string): string;
+
+ /**
+ * Returns a \`<big>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ big(): string;
+
+ /**
+ * Returns a \`<blink>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ blink(): string;
+
+ /**
+ * Returns a \`<b>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ bold(): string;
+
+ /**
+ * Returns a \`<tt>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ fixed(): string;
+
+ /**
+ * Returns a \`<font>\` HTML element and sets the color attribute value
+ * @deprecated A legacy feature for browser compatibility
+ */
+ fontcolor(color: string): string;
+
+ /**
+ * Returns a \`<font>\` HTML element and sets the size attribute value
+ * @deprecated A legacy feature for browser compatibility
+ */
+ fontsize(size: number): string;
+
+ /**
+ * Returns a \`<font>\` HTML element and sets the size attribute value
+ * @deprecated A legacy feature for browser compatibility
+ */
+ fontsize(size: string): string;
+
+ /**
+ * Returns an \`<i>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ italics(): string;
+
+ /**
+ * Returns an \`<a>\` HTML element and sets the href attribute value
+ * @deprecated A legacy feature for browser compatibility
+ */
+ link(url: string): string;
+
+ /**
+ * Returns a \`<small>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ small(): string;
+
+ /**
+ * Returns a \`<strike>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ strike(): string;
+
+ /**
+ * Returns a \`<sub>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ sub(): string;
+
+ /**
+ * Returns a \`<sup>\` HTML element
+ * @deprecated A legacy feature for browser compatibility
+ */
+ sup(): string;
+}
+
+interface StringConstructor {
+ /**
+ * Return the String value whose elements are, in order, the elements in the List elements.
+ * If length is 0, the empty string is returned.
+ */
+ fromCodePoint(...codePoints: number[]): string;
+
+ /**
+ * String.raw is usually used as a tag function of a Tagged Template String. When called as
+ * such, the first argument will be a well formed template call site object and the rest
+ * parameter will contain the substitution values. It can also be called directly, for example,
+ * to interleave strings and values from your own tag function, and in this case the only thing
+ * it needs from the first argument is the raw property.
+ * @param template A well-formed template string call site representation.
+ * @param substitutions A set of substitution values.
+ */
+ raw(template: { raw: readonly string[] | ArrayLike<string>; }, ...substitutions: any[]): string;
+}
+`,lo["lib.es2015.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es5" />
+/// <reference lib="es2015.core" />
+/// <reference lib="es2015.collection" />
+/// <reference lib="es2015.iterable" />
+/// <reference lib="es2015.generator" />
+/// <reference lib="es2015.promise" />
+/// <reference lib="es2015.proxy" />
+/// <reference lib="es2015.reflect" />
+/// <reference lib="es2015.symbol" />
+/// <reference lib="es2015.symbol.wellknown" />
+`,lo["lib.es2015.generator.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.iterable" />
+
+interface Generator<T = unknown, TReturn = any, TNext = unknown> extends Iterator<T, TReturn, TNext> {
+ // NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.
+ next(...args: [] | [TNext]): IteratorResult<T, TReturn>;
+ return(value: TReturn): IteratorResult<T, TReturn>;
+ throw(e: any): IteratorResult<T, TReturn>;
+ [Symbol.iterator](): Generator<T, TReturn, TNext>;
+}
+
+interface GeneratorFunction {
+ /**
+ * Creates a new Generator object.
+ * @param args A list of arguments the function accepts.
+ */
+ new (...args: any[]): Generator;
+ /**
+ * Creates a new Generator object.
+ * @param args A list of arguments the function accepts.
+ */
+ (...args: any[]): Generator;
+ /**
+ * The length of the arguments.
+ */
+ readonly length: number;
+ /**
+ * Returns the name of the function.
+ */
+ readonly name: string;
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: Generator;
+}
+
+interface GeneratorFunctionConstructor {
+ /**
+ * Creates a new Generator function.
+ * @param args A list of arguments the function accepts.
+ */
+ new (...args: string[]): GeneratorFunction;
+ /**
+ * Creates a new Generator function.
+ * @param args A list of arguments the function accepts.
+ */
+ (...args: string[]): GeneratorFunction;
+ /**
+ * The length of the arguments.
+ */
+ readonly length: number;
+ /**
+ * Returns the name of the function.
+ */
+ readonly name: string;
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: GeneratorFunction;
+}
+`,lo["lib.es2015.iterable.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.symbol" />
+
+interface SymbolConstructor {
+ /**
+ * A method that returns the default iterator for an object. Called by the semantics of the
+ * for-of statement.
+ */
+ readonly iterator: unique symbol;
+}
+
+interface IteratorYieldResult<TYield> {
+ done?: false;
+ value: TYield;
+}
+
+interface IteratorReturnResult<TReturn> {
+ done: true;
+ value: TReturn;
+}
+
+type IteratorResult<T, TReturn = any> = IteratorYieldResult<T> | IteratorReturnResult<TReturn>;
+
+interface Iterator<T, TReturn = any, TNext = undefined> {
+ // NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.
+ next(...args: [] | [TNext]): IteratorResult<T, TReturn>;
+ return?(value?: TReturn): IteratorResult<T, TReturn>;
+ throw?(e?: any): IteratorResult<T, TReturn>;
+}
+
+interface Iterable<T> {
+ [Symbol.iterator](): Iterator<T>;
+}
+
+interface IterableIterator<T> extends Iterator<T> {
+ [Symbol.iterator](): IterableIterator<T>;
+}
+
+interface Array<T> {
+ /** Iterator */
+ [Symbol.iterator](): IterableIterator<T>;
+
+ /**
+ * Returns an iterable of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, T]>;
+
+ /**
+ * Returns an iterable of keys in the array
+ */
+ keys(): IterableIterator<number>;
+
+ /**
+ * Returns an iterable of values in the array
+ */
+ values(): IterableIterator<T>;
+}
+
+interface ArrayConstructor {
+ /**
+ * Creates an array from an iterable object.
+ * @param iterable An iterable object to convert to an array.
+ */
+ from<T>(iterable: Iterable<T> | ArrayLike<T>): T[];
+
+ /**
+ * Creates an array from an iterable object.
+ * @param iterable An iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T, U>(iterable: Iterable<T> | ArrayLike<T>, mapfn: (v: T, k: number) => U, thisArg?: any): U[];
+}
+
+interface ReadonlyArray<T> {
+ /** Iterator of values in the array. */
+ [Symbol.iterator](): IterableIterator<T>;
+
+ /**
+ * Returns an iterable of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, T]>;
+
+ /**
+ * Returns an iterable of keys in the array
+ */
+ keys(): IterableIterator<number>;
+
+ /**
+ * Returns an iterable of values in the array
+ */
+ values(): IterableIterator<T>;
+}
+
+interface IArguments {
+ /** Iterator */
+ [Symbol.iterator](): IterableIterator<any>;
+}
+
+interface Map<K, V> {
+ /** Returns an iterable of entries in the map. */
+ [Symbol.iterator](): IterableIterator<[K, V]>;
+
+ /**
+ * Returns an iterable of key, value pairs for every entry in the map.
+ */
+ entries(): IterableIterator<[K, V]>;
+
+ /**
+ * Returns an iterable of keys in the map
+ */
+ keys(): IterableIterator<K>;
+
+ /**
+ * Returns an iterable of values in the map
+ */
+ values(): IterableIterator<V>;
+}
+
+interface ReadonlyMap<K, V> {
+ /** Returns an iterable of entries in the map. */
+ [Symbol.iterator](): IterableIterator<[K, V]>;
+
+ /**
+ * Returns an iterable of key, value pairs for every entry in the map.
+ */
+ entries(): IterableIterator<[K, V]>;
+
+ /**
+ * Returns an iterable of keys in the map
+ */
+ keys(): IterableIterator<K>;
+
+ /**
+ * Returns an iterable of values in the map
+ */
+ values(): IterableIterator<V>;
+}
+
+interface MapConstructor {
+ new (): Map<any, any>;
+ new <K, V>(iterable?: Iterable<readonly [K, V]> | null): Map<K, V>;
+}
+
+interface WeakMap<K extends WeakKey, V> {}
+
+interface WeakMapConstructor {
+ new <K extends WeakKey, V>(iterable: Iterable<readonly [K, V]>): WeakMap<K, V>;
+}
+
+interface Set<T> {
+ /** Iterates over values in the set. */
+ [Symbol.iterator](): IterableIterator<T>;
+ /**
+ * Returns an iterable of [v,v] pairs for every value \`v\` in the set.
+ */
+ entries(): IterableIterator<[T, T]>;
+ /**
+ * Despite its name, returns an iterable of the values in the set.
+ */
+ keys(): IterableIterator<T>;
+
+ /**
+ * Returns an iterable of values in the set.
+ */
+ values(): IterableIterator<T>;
+}
+
+interface ReadonlySet<T> {
+ /** Iterates over values in the set. */
+ [Symbol.iterator](): IterableIterator<T>;
+
+ /**
+ * Returns an iterable of [v,v] pairs for every value \`v\` in the set.
+ */
+ entries(): IterableIterator<[T, T]>;
+
+ /**
+ * Despite its name, returns an iterable of the values in the set.
+ */
+ keys(): IterableIterator<T>;
+
+ /**
+ * Returns an iterable of values in the set.
+ */
+ values(): IterableIterator<T>;
+}
+
+interface SetConstructor {
+ new <T>(iterable?: Iterable<T> | null): Set<T>;
+}
+
+interface WeakSet<T extends WeakKey> {}
+
+interface WeakSetConstructor {
+ new <T extends WeakKey = WeakKey>(iterable: Iterable<T>): WeakSet<T>;
+}
+
+interface Promise<T> {}
+
+interface PromiseConstructor {
+ /**
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any Promise is rejected.
+ * @param values An iterable of Promises.
+ * @returns A new Promise.
+ */
+ all<T>(values: Iterable<T | PromiseLike<T>>): Promise<Awaited<T>[]>;
+
+ /**
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An iterable of Promises.
+ * @returns A new Promise.
+ */
+ race<T>(values: Iterable<T | PromiseLike<T>>): Promise<Awaited<T>>;
+}
+
+interface String {
+ /** Iterator */
+ [Symbol.iterator](): IterableIterator<string>;
+}
+
+interface Int8Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Int8ArrayConstructor {
+ new (elements: Iterable<number>): Int8Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int8Array;
+}
+
+interface Uint8Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Uint8ArrayConstructor {
+ new (elements: Iterable<number>): Uint8Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint8Array;
+}
+
+interface Uint8ClampedArray {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Uint8ClampedArrayConstructor {
+ new (elements: Iterable<number>): Uint8ClampedArray;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint8ClampedArray;
+}
+
+interface Int16Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Int16ArrayConstructor {
+ new (elements: Iterable<number>): Int16Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int16Array;
+}
+
+interface Uint16Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Uint16ArrayConstructor {
+ new (elements: Iterable<number>): Uint16Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint16Array;
+}
+
+interface Int32Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Int32ArrayConstructor {
+ new (elements: Iterable<number>): Int32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Int32Array;
+}
+
+interface Uint32Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Uint32ArrayConstructor {
+ new (elements: Iterable<number>): Uint32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Uint32Array;
+}
+
+interface Float32Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Float32ArrayConstructor {
+ new (elements: Iterable<number>): Float32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Float32Array;
+}
+
+interface Float64Array {
+ [Symbol.iterator](): IterableIterator<number>;
+ /**
+ * Returns an array of key, value pairs for every entry in the array
+ */
+ entries(): IterableIterator<[number, number]>;
+ /**
+ * Returns an list of keys in the array
+ */
+ keys(): IterableIterator<number>;
+ /**
+ * Returns an list of values in the array
+ */
+ values(): IterableIterator<number>;
+}
+
+interface Float64ArrayConstructor {
+ new (elements: Iterable<number>): Float64Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: Iterable<number>, mapfn?: (v: number, k: number) => number, thisArg?: any): Float64Array;
+}
+`,lo["lib.es2015.promise.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface PromiseConstructor {
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: Promise<any>;
+
+ /**
+ * Creates a new Promise.
+ * @param executor A callback used to initialize the promise. This callback is passed two arguments:
+ * a resolve callback used to resolve the promise with a value or the result of another promise,
+ * and a reject callback used to reject the promise with a provided reason or error.
+ */
+ new <T>(executor: (resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void): Promise<T>;
+
+ /**
+ * Creates a Promise that is resolved with an array of results when all of the provided Promises
+ * resolve, or rejected when any Promise is rejected.
+ * @param values An array of Promises.
+ * @returns A new Promise.
+ */
+ all<T extends readonly unknown[] | []>(values: T): Promise<{ -readonly [P in keyof T]: Awaited<T[P]>; }>;
+
+ // see: lib.es2015.iterable.d.ts
+ // all<T>(values: Iterable<T | PromiseLike<T>>): Promise<Awaited<T>[]>;
+
+ /**
+ * Creates a Promise that is resolved or rejected when any of the provided Promises are resolved
+ * or rejected.
+ * @param values An array of Promises.
+ * @returns A new Promise.
+ */
+ race<T extends readonly unknown[] | []>(values: T): Promise<Awaited<T[number]>>;
+
+ // see: lib.es2015.iterable.d.ts
+ // race<T>(values: Iterable<T | PromiseLike<T>>): Promise<Awaited<T>>;
+
+ /**
+ * Creates a new rejected promise for the provided reason.
+ * @param reason The reason the promise was rejected.
+ * @returns A new rejected Promise.
+ */
+ reject<T = never>(reason?: any): Promise<T>;
+
+ /**
+ * Creates a new resolved promise.
+ * @returns A resolved promise.
+ */
+ resolve(): Promise<void>;
+ /**
+ * Creates a new resolved promise for the provided value.
+ * @param value A promise.
+ * @returns A promise whose internal state matches the provided promise.
+ */
+ resolve<T>(value: T): Promise<Awaited<T>>;
+ /**
+ * Creates a new resolved promise for the provided value.
+ * @param value A promise.
+ * @returns A promise whose internal state matches the provided promise.
+ */
+ resolve<T>(value: T | PromiseLike<T>): Promise<Awaited<T>>;
+}
+
+declare var Promise: PromiseConstructor;
+`,lo["lib.es2015.proxy.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface ProxyHandler<T extends object> {
+ /**
+ * A trap method for a function call.
+ * @param target The original callable object which is being proxied.
+ */
+ apply?(target: T, thisArg: any, argArray: any[]): any;
+
+ /**
+ * A trap for the \`new\` operator.
+ * @param target The original object which is being proxied.
+ * @param newTarget The constructor that was originally called.
+ */
+ construct?(target: T, argArray: any[], newTarget: Function): object;
+
+ /**
+ * A trap for \`Object.defineProperty()\`.
+ * @param target The original object which is being proxied.
+ * @returns A \`Boolean\` indicating whether or not the property has been defined.
+ */
+ defineProperty?(target: T, property: string | symbol, attributes: PropertyDescriptor): boolean;
+
+ /**
+ * A trap for the \`delete\` operator.
+ * @param target The original object which is being proxied.
+ * @param p The name or \`Symbol\` of the property to delete.
+ * @returns A \`Boolean\` indicating whether or not the property was deleted.
+ */
+ deleteProperty?(target: T, p: string | symbol): boolean;
+
+ /**
+ * A trap for getting a property value.
+ * @param target The original object which is being proxied.
+ * @param p The name or \`Symbol\` of the property to get.
+ * @param receiver The proxy or an object that inherits from the proxy.
+ */
+ get?(target: T, p: string | symbol, receiver: any): any;
+
+ /**
+ * A trap for \`Object.getOwnPropertyDescriptor()\`.
+ * @param target The original object which is being proxied.
+ * @param p The name of the property whose description should be retrieved.
+ */
+ getOwnPropertyDescriptor?(target: T, p: string | symbol): PropertyDescriptor | undefined;
+
+ /**
+ * A trap for the \`[[GetPrototypeOf]]\` internal method.
+ * @param target The original object which is being proxied.
+ */
+ getPrototypeOf?(target: T): object | null;
+
+ /**
+ * A trap for the \`in\` operator.
+ * @param target The original object which is being proxied.
+ * @param p The name or \`Symbol\` of the property to check for existence.
+ */
+ has?(target: T, p: string | symbol): boolean;
+
+ /**
+ * A trap for \`Object.isExtensible()\`.
+ * @param target The original object which is being proxied.
+ */
+ isExtensible?(target: T): boolean;
+
+ /**
+ * A trap for \`Reflect.ownKeys()\`.
+ * @param target The original object which is being proxied.
+ */
+ ownKeys?(target: T): ArrayLike<string | symbol>;
+
+ /**
+ * A trap for \`Object.preventExtensions()\`.
+ * @param target The original object which is being proxied.
+ */
+ preventExtensions?(target: T): boolean;
+
+ /**
+ * A trap for setting a property value.
+ * @param target The original object which is being proxied.
+ * @param p The name or \`Symbol\` of the property to set.
+ * @param receiver The object to which the assignment was originally directed.
+ * @returns A \`Boolean\` indicating whether or not the property was set.
+ */
+ set?(target: T, p: string | symbol, newValue: any, receiver: any): boolean;
+
+ /**
+ * A trap for \`Object.setPrototypeOf()\`.
+ * @param target The original object which is being proxied.
+ * @param newPrototype The object's new prototype or \`null\`.
+ */
+ setPrototypeOf?(target: T, v: object | null): boolean;
+}
+
+interface ProxyConstructor {
+ /**
+ * Creates a revocable Proxy object.
+ * @param target A target object to wrap with Proxy.
+ * @param handler An object whose properties define the behavior of Proxy when an operation is attempted on it.
+ */
+ revocable<T extends object>(target: T, handler: ProxyHandler<T>): { proxy: T; revoke: () => void; };
+
+ /**
+ * Creates a Proxy object. The Proxy object allows you to create an object that can be used in place of the
+ * original object, but which may redefine fundamental Object operations like getting, setting, and defining
+ * properties. Proxy objects are commonly used to log property accesses, validate, format, or sanitize inputs.
+ * @param target A target object to wrap with Proxy.
+ * @param handler An object whose properties define the behavior of Proxy when an operation is attempted on it.
+ */
+ new <T extends object>(target: T, handler: ProxyHandler<T>): T;
+}
+declare var Proxy: ProxyConstructor;
+`,lo["lib.es2015.reflect.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Reflect {
+ /**
+ * Calls the function with the specified object as the this value
+ * and the elements of specified array as the arguments.
+ * @param target The function to call.
+ * @param thisArgument The object to be used as the this object.
+ * @param argumentsList An array of argument values to be passed to the function.
+ */
+ function apply<T, A extends readonly any[], R>(
+ target: (this: T, ...args: A) => R,
+ thisArgument: T,
+ argumentsList: Readonly<A>,
+ ): R;
+ function apply(target: Function, thisArgument: any, argumentsList: ArrayLike<any>): any;
+
+ /**
+ * Constructs the target with the elements of specified array as the arguments
+ * and the specified constructor as the \`new.target\` value.
+ * @param target The constructor to invoke.
+ * @param argumentsList An array of argument values to be passed to the constructor.
+ * @param newTarget The constructor to be used as the \`new.target\` object.
+ */
+ function construct<A extends readonly any[], R>(
+ target: new (...args: A) => R,
+ argumentsList: Readonly<A>,
+ newTarget?: new (...args: any) => any,
+ ): R;
+ function construct(target: Function, argumentsList: ArrayLike<any>, newTarget?: Function): any;
+
+ /**
+ * Adds a property to an object, or modifies attributes of an existing property.
+ * @param target Object on which to add or modify the property. This can be a native JavaScript object
+ * (that is, a user-defined object or a built in object) or a DOM object.
+ * @param propertyKey The property name.
+ * @param attributes Descriptor for the property. It can be for a data property or an accessor property.
+ */
+ function defineProperty(target: object, propertyKey: PropertyKey, attributes: PropertyDescriptor & ThisType<any>): boolean;
+
+ /**
+ * Removes a property from an object, equivalent to \`delete target[propertyKey]\`,
+ * except it won't throw if \`target[propertyKey]\` is non-configurable.
+ * @param target Object from which to remove the own property.
+ * @param propertyKey The property name.
+ */
+ function deleteProperty(target: object, propertyKey: PropertyKey): boolean;
+
+ /**
+ * Gets the property of target, equivalent to \`target[propertyKey]\` when \`receiver === target\`.
+ * @param target Object that contains the property on itself or in its prototype chain.
+ * @param propertyKey The property name.
+ * @param receiver The reference to use as the \`this\` value in the getter function,
+ * if \`target[propertyKey]\` is an accessor property.
+ */
+ function get<T extends object, P extends PropertyKey>(
+ target: T,
+ propertyKey: P,
+ receiver?: unknown,
+ ): P extends keyof T ? T[P] : any;
+
+ /**
+ * Gets the own property descriptor of the specified object.
+ * An own property descriptor is one that is defined directly on the object and is not inherited from the object's prototype.
+ * @param target Object that contains the property.
+ * @param propertyKey The property name.
+ */
+ function getOwnPropertyDescriptor<T extends object, P extends PropertyKey>(
+ target: T,
+ propertyKey: P,
+ ): TypedPropertyDescriptor<P extends keyof T ? T[P] : any> | undefined;
+
+ /**
+ * Returns the prototype of an object.
+ * @param target The object that references the prototype.
+ */
+ function getPrototypeOf(target: object): object | null;
+
+ /**
+ * Equivalent to \`propertyKey in target\`.
+ * @param target Object that contains the property on itself or in its prototype chain.
+ * @param propertyKey Name of the property.
+ */
+ function has(target: object, propertyKey: PropertyKey): boolean;
+
+ /**
+ * Returns a value that indicates whether new properties can be added to an object.
+ * @param target Object to test.
+ */
+ function isExtensible(target: object): boolean;
+
+ /**
+ * Returns the string and symbol keys of the own properties of an object. The own properties of an object
+ * are those that are defined directly on that object, and are not inherited from the object's prototype.
+ * @param target Object that contains the own properties.
+ */
+ function ownKeys(target: object): (string | symbol)[];
+
+ /**
+ * Prevents the addition of new properties to an object.
+ * @param target Object to make non-extensible.
+ * @return Whether the object has been made non-extensible.
+ */
+ function preventExtensions(target: object): boolean;
+
+ /**
+ * Sets the property of target, equivalent to \`target[propertyKey] = value\` when \`receiver === target\`.
+ * @param target Object that contains the property on itself or in its prototype chain.
+ * @param propertyKey Name of the property.
+ * @param receiver The reference to use as the \`this\` value in the setter function,
+ * if \`target[propertyKey]\` is an accessor property.
+ */
+ function set<T extends object, P extends PropertyKey>(
+ target: T,
+ propertyKey: P,
+ value: P extends keyof T ? T[P] : any,
+ receiver?: any,
+ ): boolean;
+ function set(target: object, propertyKey: PropertyKey, value: any, receiver?: any): boolean;
+
+ /**
+ * Sets the prototype of a specified object o to object proto or null.
+ * @param target The object to change its prototype.
+ * @param proto The value of the new prototype or null.
+ * @return Whether setting the prototype was successful.
+ */
+ function setPrototypeOf(target: object, proto: object | null): boolean;
+}
+`,lo["lib.es2015.symbol.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface SymbolConstructor {
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: Symbol;
+
+ /**
+ * Returns a new unique Symbol value.
+ * @param description Description of the new Symbol object.
+ */
+ (description?: string | number): symbol;
+
+ /**
+ * Returns a Symbol object from the global symbol registry matching the given key if found.
+ * Otherwise, returns a new symbol with this key.
+ * @param key key to search for.
+ */
+ for(key: string): symbol;
+
+ /**
+ * Returns a key from the global symbol registry matching the given Symbol if found.
+ * Otherwise, returns a undefined.
+ * @param sym Symbol to find the key for.
+ */
+ keyFor(sym: symbol): string | undefined;
+}
+
+declare var Symbol: SymbolConstructor;
+`,lo["lib.es2015.symbol.wellknown.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.symbol" />
+
+interface SymbolConstructor {
+ /**
+ * A method that determines if a constructor object recognizes an object as one of the
+ * constructor’s instances. Called by the semantics of the instanceof operator.
+ */
+ readonly hasInstance: unique symbol;
+
+ /**
+ * A Boolean value that if true indicates that an object should flatten to its array elements
+ * by Array.prototype.concat.
+ */
+ readonly isConcatSpreadable: unique symbol;
+
+ /**
+ * A regular expression method that matches the regular expression against a string. Called
+ * by the String.prototype.match method.
+ */
+ readonly match: unique symbol;
+
+ /**
+ * A regular expression method that replaces matched substrings of a string. Called by the
+ * String.prototype.replace method.
+ */
+ readonly replace: unique symbol;
+
+ /**
+ * A regular expression method that returns the index within a string that matches the
+ * regular expression. Called by the String.prototype.search method.
+ */
+ readonly search: unique symbol;
+
+ /**
+ * A function valued property that is the constructor function that is used to create
+ * derived objects.
+ */
+ readonly species: unique symbol;
+
+ /**
+ * A regular expression method that splits a string at the indices that match the regular
+ * expression. Called by the String.prototype.split method.
+ */
+ readonly split: unique symbol;
+
+ /**
+ * A method that converts an object to a corresponding primitive value.
+ * Called by the ToPrimitive abstract operation.
+ */
+ readonly toPrimitive: unique symbol;
+
+ /**
+ * A String value that is used in the creation of the default string description of an object.
+ * Called by the built-in method Object.prototype.toString.
+ */
+ readonly toStringTag: unique symbol;
+
+ /**
+ * An Object whose truthy properties are properties that are excluded from the 'with'
+ * environment bindings of the associated objects.
+ */
+ readonly unscopables: unique symbol;
+}
+
+interface Symbol {
+ /**
+ * Converts a Symbol object to a symbol.
+ */
+ [Symbol.toPrimitive](hint: string): symbol;
+
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface Array<T> {
+ /**
+ * Is an object whose properties have the value 'true'
+ * when they will be absent when used in a 'with' statement.
+ */
+ readonly [Symbol.unscopables]: {
+ [K in keyof any[]]?: boolean;
+ };
+}
+
+interface ReadonlyArray<T> {
+ /**
+ * Is an object whose properties have the value 'true'
+ * when they will be absent when used in a 'with' statement.
+ */
+ readonly [Symbol.unscopables]: {
+ [K in keyof readonly any[]]?: boolean;
+ };
+}
+
+interface Date {
+ /**
+ * Converts a Date object to a string.
+ */
+ [Symbol.toPrimitive](hint: "default"): string;
+ /**
+ * Converts a Date object to a string.
+ */
+ [Symbol.toPrimitive](hint: "string"): string;
+ /**
+ * Converts a Date object to a number.
+ */
+ [Symbol.toPrimitive](hint: "number"): number;
+ /**
+ * Converts a Date object to a string or number.
+ *
+ * @param hint The strings "number", "string", or "default" to specify what primitive to return.
+ *
+ * @throws {TypeError} If 'hint' was given something other than "number", "string", or "default".
+ * @returns A number if 'hint' was "number", a string if 'hint' was "string" or "default".
+ */
+ [Symbol.toPrimitive](hint: string): string | number;
+}
+
+interface Map<K, V> {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface WeakMap<K extends WeakKey, V> {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface Set<T> {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface WeakSet<T extends WeakKey> {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface JSON {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface Function {
+ /**
+ * Determines whether the given value inherits from this function if this function was used
+ * as a constructor function.
+ *
+ * A constructor function can control which objects are recognized as its instances by
+ * 'instanceof' by overriding this method.
+ */
+ [Symbol.hasInstance](value: any): boolean;
+}
+
+interface GeneratorFunction {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface Math {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface Promise<T> {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface PromiseConstructor {
+ readonly [Symbol.species]: PromiseConstructor;
+}
+
+interface RegExp {
+ /**
+ * Matches a string with this regular expression, and returns an array containing the results of
+ * that search.
+ * @param string A string to search within.
+ */
+ [Symbol.match](string: string): RegExpMatchArray | null;
+
+ /**
+ * Replaces text in a string, using this regular expression.
+ * @param string A String object or string literal whose contents matching against
+ * this regular expression will be replaced
+ * @param replaceValue A String object or string literal containing the text to replace for every
+ * successful match of this regular expression.
+ */
+ [Symbol.replace](string: string, replaceValue: string): string;
+
+ /**
+ * Replaces text in a string, using this regular expression.
+ * @param string A String object or string literal whose contents matching against
+ * this regular expression will be replaced
+ * @param replacer A function that returns the replacement text.
+ */
+ [Symbol.replace](string: string, replacer: (substring: string, ...args: any[]) => string): string;
+
+ /**
+ * Finds the position beginning first substring match in a regular expression search
+ * using this regular expression.
+ *
+ * @param string The string to search within.
+ */
+ [Symbol.search](string: string): number;
+
+ /**
+ * Returns an array of substrings that were delimited by strings in the original input that
+ * match against this regular expression.
+ *
+ * If the regular expression contains capturing parentheses, then each time this
+ * regular expression matches, the results (including any undefined results) of the
+ * capturing parentheses are spliced.
+ *
+ * @param string string value to split
+ * @param limit if not undefined, the output array is truncated so that it contains no more
+ * than 'limit' elements.
+ */
+ [Symbol.split](string: string, limit?: number): string[];
+}
+
+interface RegExpConstructor {
+ readonly [Symbol.species]: RegExpConstructor;
+}
+
+interface String {
+ /**
+ * Matches a string or an object that supports being matched against, and returns an array
+ * containing the results of that search, or null if no matches are found.
+ * @param matcher An object that supports being matched against.
+ */
+ match(matcher: { [Symbol.match](string: string): RegExpMatchArray | null; }): RegExpMatchArray | null;
+
+ /**
+ * Passes a string and {@linkcode replaceValue} to the \`[Symbol.replace]\` method on {@linkcode searchValue}. This method is expected to implement its own replacement algorithm.
+ * @param searchValue An object that supports searching for and replacing matches within a string.
+ * @param replaceValue The replacement text.
+ */
+ replace(searchValue: { [Symbol.replace](string: string, replaceValue: string): string; }, replaceValue: string): string;
+
+ /**
+ * Replaces text in a string, using an object that supports replacement within a string.
+ * @param searchValue A object can search for and replace matches within a string.
+ * @param replacer A function that returns the replacement text.
+ */
+ replace(searchValue: { [Symbol.replace](string: string, replacer: (substring: string, ...args: any[]) => string): string; }, replacer: (substring: string, ...args: any[]) => string): string;
+
+ /**
+ * Finds the first substring match in a regular expression search.
+ * @param searcher An object which supports searching within a string.
+ */
+ search(searcher: { [Symbol.search](string: string): number; }): number;
+
+ /**
+ * Split a string into substrings using the specified separator and return them as an array.
+ * @param splitter An object that can split a string.
+ * @param limit A value used to limit the number of elements returned in the array.
+ */
+ split(splitter: { [Symbol.split](string: string, limit?: number): string[]; }, limit?: number): string[];
+}
+
+interface ArrayBuffer {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface DataView {
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface Int8Array {
+ readonly [Symbol.toStringTag]: "Int8Array";
+}
+
+interface Uint8Array {
+ readonly [Symbol.toStringTag]: "Uint8Array";
+}
+
+interface Uint8ClampedArray {
+ readonly [Symbol.toStringTag]: "Uint8ClampedArray";
+}
+
+interface Int16Array {
+ readonly [Symbol.toStringTag]: "Int16Array";
+}
+
+interface Uint16Array {
+ readonly [Symbol.toStringTag]: "Uint16Array";
+}
+
+interface Int32Array {
+ readonly [Symbol.toStringTag]: "Int32Array";
+}
+
+interface Uint32Array {
+ readonly [Symbol.toStringTag]: "Uint32Array";
+}
+
+interface Float32Array {
+ readonly [Symbol.toStringTag]: "Float32Array";
+}
+
+interface Float64Array {
+ readonly [Symbol.toStringTag]: "Float64Array";
+}
+
+interface ArrayConstructor {
+ readonly [Symbol.species]: ArrayConstructor;
+}
+interface MapConstructor {
+ readonly [Symbol.species]: MapConstructor;
+}
+interface SetConstructor {
+ readonly [Symbol.species]: SetConstructor;
+}
+interface ArrayBufferConstructor {
+ readonly [Symbol.species]: ArrayBufferConstructor;
+}
+`,lo["lib.es2016.array.include.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Array<T> {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: T, fromIndex?: number): boolean;
+}
+
+interface ReadonlyArray<T> {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: T, fromIndex?: number): boolean;
+}
+
+interface Int8Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Uint8Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Uint8ClampedArray {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Int16Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Uint16Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Int32Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Uint32Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Float32Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+
+interface Float64Array {
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: number, fromIndex?: number): boolean;
+}
+`,lo["lib.es2016.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015" />
+/// <reference lib="es2016.array.include" />
+/// <reference lib="es2016.intl" />
+`,lo["lib.es2016.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2016" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+`,lo["lib.es2016.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Intl {
+ /**
+ * The \`Intl.getCanonicalLocales()\` method returns an array containing
+ * the canonical locale names. Duplicates will be omitted and elements
+ * will be validated as structurally valid language tags.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/getCanonicalLocales)
+ *
+ * @param locale A list of String values for which to get the canonical locale names
+ * @returns An array containing the canonical and validated locale names.
+ */
+ function getCanonicalLocales(locale?: string | readonly string[]): string[];
+}
+`,lo["lib.es2017.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2016" />
+/// <reference lib="es2017.object" />
+/// <reference lib="es2017.sharedmemory" />
+/// <reference lib="es2017.string" />
+/// <reference lib="es2017.intl" />
+/// <reference lib="es2017.typedarrays" />
+/// <reference lib="es2017.date" />
+`,lo["lib.es2017.date.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface DateConstructor {
+ /**
+ * Returns the number of milliseconds between midnight, January 1, 1970 Universal Coordinated Time (UTC) (or GMT) and the specified date.
+ * @param year The full year designation is required for cross-century date accuracy. If year is between 0 and 99 is used, then year is assumed to be 1900 + year.
+ * @param monthIndex The month as a number between 0 and 11 (January to December).
+ * @param date The date as a number between 1 and 31.
+ * @param hours Must be supplied if minutes is supplied. A number from 0 to 23 (midnight to 11pm) that specifies the hour.
+ * @param minutes Must be supplied if seconds is supplied. A number from 0 to 59 that specifies the minutes.
+ * @param seconds Must be supplied if milliseconds is supplied. A number from 0 to 59 that specifies the seconds.
+ * @param ms A number from 0 to 999 that specifies the milliseconds.
+ */
+ UTC(year: number, monthIndex?: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): number;
+}
+`,lo["lib.es2017.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2017" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+`,lo["lib.es2017.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Intl {
+ interface DateTimeFormatPartTypesRegistry {
+ day: any;
+ dayPeriod: any;
+ era: any;
+ hour: any;
+ literal: any;
+ minute: any;
+ month: any;
+ second: any;
+ timeZoneName: any;
+ weekday: any;
+ year: any;
+ }
+
+ type DateTimeFormatPartTypes = keyof DateTimeFormatPartTypesRegistry;
+
+ interface DateTimeFormatPart {
+ type: DateTimeFormatPartTypes;
+ value: string;
+ }
+
+ interface DateTimeFormat {
+ formatToParts(date?: Date | number): DateTimeFormatPart[];
+ }
+}
+`,lo["lib.es2017.object.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface ObjectConstructor {
+ /**
+ * Returns an array of values of the enumerable properties of an object
+ * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
+ */
+ values<T>(o: { [s: string]: T; } | ArrayLike<T>): T[];
+
+ /**
+ * Returns an array of values of the enumerable properties of an object
+ * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
+ */
+ values(o: {}): any[];
+
+ /**
+ * Returns an array of key/values of the enumerable properties of an object
+ * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
+ */
+ entries<T>(o: { [s: string]: T; } | ArrayLike<T>): [string, T][];
+
+ /**
+ * Returns an array of key/values of the enumerable properties of an object
+ * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
+ */
+ entries(o: {}): [string, any][];
+
+ /**
+ * Returns an object containing all own property descriptors of an object
+ * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
+ */
+ getOwnPropertyDescriptors<T>(o: T): { [P in keyof T]: TypedPropertyDescriptor<T[P]>; } & { [x: string]: PropertyDescriptor; };
+}
+`,lo["lib.es2017.sharedmemory.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.symbol" />
+/// <reference lib="es2015.symbol.wellknown" />
+
+interface SharedArrayBuffer {
+ /**
+ * Read-only. The length of the ArrayBuffer (in bytes).
+ */
+ readonly byteLength: number;
+
+ /**
+ * Returns a section of an SharedArrayBuffer.
+ */
+ slice(begin: number, end?: number): SharedArrayBuffer;
+ readonly [Symbol.species]: SharedArrayBuffer;
+ readonly [Symbol.toStringTag]: "SharedArrayBuffer";
+}
+
+interface SharedArrayBufferConstructor {
+ readonly prototype: SharedArrayBuffer;
+ new (byteLength: number): SharedArrayBuffer;
+}
+declare var SharedArrayBuffer: SharedArrayBufferConstructor;
+
+interface ArrayBufferTypes {
+ SharedArrayBuffer: SharedArrayBuffer;
+}
+
+interface Atomics {
+ /**
+ * Adds a value to the value at the given position in the array, returning the original value.
+ * Until this atomic operation completes, any other read or write operation against the array
+ * will block.
+ */
+ add(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, value: number): number;
+
+ /**
+ * Stores the bitwise AND of a value with the value at the given position in the array,
+ * returning the original value. Until this atomic operation completes, any other read or
+ * write operation against the array will block.
+ */
+ and(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, value: number): number;
+
+ /**
+ * Replaces the value at the given position in the array if the original value equals the given
+ * expected value, returning the original value. Until this atomic operation completes, any
+ * other read or write operation against the array will block.
+ */
+ compareExchange(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, expectedValue: number, replacementValue: number): number;
+
+ /**
+ * Replaces the value at the given position in the array, returning the original value. Until
+ * this atomic operation completes, any other read or write operation against the array will
+ * block.
+ */
+ exchange(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, value: number): number;
+
+ /**
+ * Returns a value indicating whether high-performance algorithms can use atomic operations
+ * (\`true\`) or must use locks (\`false\`) for the given number of bytes-per-element of a typed
+ * array.
+ */
+ isLockFree(size: number): boolean;
+
+ /**
+ * Returns the value at the given position in the array. Until this atomic operation completes,
+ * any other read or write operation against the array will block.
+ */
+ load(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number): number;
+
+ /**
+ * Stores the bitwise OR of a value with the value at the given position in the array,
+ * returning the original value. Until this atomic operation completes, any other read or write
+ * operation against the array will block.
+ */
+ or(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, value: number): number;
+
+ /**
+ * Stores a value at the given position in the array, returning the new value. Until this
+ * atomic operation completes, any other read or write operation against the array will block.
+ */
+ store(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, value: number): number;
+
+ /**
+ * Subtracts a value from the value at the given position in the array, returning the original
+ * value. Until this atomic operation completes, any other read or write operation against the
+ * array will block.
+ */
+ sub(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, value: number): number;
+
+ /**
+ * If the value at the given position in the array is equal to the provided value, the current
+ * agent is put to sleep causing execution to suspend until the timeout expires (returning
+ * \`"timed-out"\`) or until the agent is awoken (returning \`"ok"\`); otherwise, returns
+ * \`"not-equal"\`.
+ */
+ wait(typedArray: Int32Array, index: number, value: number, timeout?: number): "ok" | "not-equal" | "timed-out";
+
+ /**
+ * Wakes up sleeping agents that are waiting on the given index of the array, returning the
+ * number of agents that were awoken.
+ * @param typedArray A shared Int32Array.
+ * @param index The position in the typedArray to wake up on.
+ * @param count The number of sleeping agents to notify. Defaults to +Infinity.
+ */
+ notify(typedArray: Int32Array, index: number, count?: number): number;
+
+ /**
+ * Stores the bitwise XOR of a value with the value at the given position in the array,
+ * returning the original value. Until this atomic operation completes, any other read or write
+ * operation against the array will block.
+ */
+ xor(typedArray: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array, index: number, value: number): number;
+
+ readonly [Symbol.toStringTag]: "Atomics";
+}
+
+declare var Atomics: Atomics;
+`,lo["lib.es2017.string.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface String {
+ /**
+ * Pads the current string with a given string (possibly repeated) so that the resulting string reaches a given length.
+ * The padding is applied from the start (left) of the current string.
+ *
+ * @param maxLength The length of the resulting string once the current string has been padded.
+ * If this parameter is smaller than the current string's length, the current string will be returned as it is.
+ *
+ * @param fillString The string to pad the current string with.
+ * If this string is too long, it will be truncated and the left-most part will be applied.
+ * The default value for this parameter is " " (U+0020).
+ */
+ padStart(maxLength: number, fillString?: string): string;
+
+ /**
+ * Pads the current string with a given string (possibly repeated) so that the resulting string reaches a given length.
+ * The padding is applied from the end (right) of the current string.
+ *
+ * @param maxLength The length of the resulting string once the current string has been padded.
+ * If this parameter is smaller than the current string's length, the current string will be returned as it is.
+ *
+ * @param fillString The string to pad the current string with.
+ * If this string is too long, it will be truncated and the left-most part will be applied.
+ * The default value for this parameter is " " (U+0020).
+ */
+ padEnd(maxLength: number, fillString?: string): string;
+}
+`,lo["lib.es2017.typedarrays.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Int8ArrayConstructor {
+ new (): Int8Array;
+}
+
+interface Uint8ArrayConstructor {
+ new (): Uint8Array;
+}
+
+interface Uint8ClampedArrayConstructor {
+ new (): Uint8ClampedArray;
+}
+
+interface Int16ArrayConstructor {
+ new (): Int16Array;
+}
+
+interface Uint16ArrayConstructor {
+ new (): Uint16Array;
+}
+
+interface Int32ArrayConstructor {
+ new (): Int32Array;
+}
+
+interface Uint32ArrayConstructor {
+ new (): Uint32Array;
+}
+
+interface Float32ArrayConstructor {
+ new (): Float32Array;
+}
+
+interface Float64ArrayConstructor {
+ new (): Float64Array;
+}
+`,lo["lib.es2018.asyncgenerator.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2018.asynciterable" />
+
+interface AsyncGenerator<T = unknown, TReturn = any, TNext = unknown> extends AsyncIterator<T, TReturn, TNext> {
+ // NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.
+ next(...args: [] | [TNext]): Promise<IteratorResult<T, TReturn>>;
+ return(value: TReturn | PromiseLike<TReturn>): Promise<IteratorResult<T, TReturn>>;
+ throw(e: any): Promise<IteratorResult<T, TReturn>>;
+ [Symbol.asyncIterator](): AsyncGenerator<T, TReturn, TNext>;
+}
+
+interface AsyncGeneratorFunction {
+ /**
+ * Creates a new AsyncGenerator object.
+ * @param args A list of arguments the function accepts.
+ */
+ new (...args: any[]): AsyncGenerator;
+ /**
+ * Creates a new AsyncGenerator object.
+ * @param args A list of arguments the function accepts.
+ */
+ (...args: any[]): AsyncGenerator;
+ /**
+ * The length of the arguments.
+ */
+ readonly length: number;
+ /**
+ * Returns the name of the function.
+ */
+ readonly name: string;
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: AsyncGenerator;
+}
+
+interface AsyncGeneratorFunctionConstructor {
+ /**
+ * Creates a new AsyncGenerator function.
+ * @param args A list of arguments the function accepts.
+ */
+ new (...args: string[]): AsyncGeneratorFunction;
+ /**
+ * Creates a new AsyncGenerator function.
+ * @param args A list of arguments the function accepts.
+ */
+ (...args: string[]): AsyncGeneratorFunction;
+ /**
+ * The length of the arguments.
+ */
+ readonly length: number;
+ /**
+ * Returns the name of the function.
+ */
+ readonly name: string;
+ /**
+ * A reference to the prototype.
+ */
+ readonly prototype: AsyncGeneratorFunction;
+}
+`,lo["lib.es2018.asynciterable.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.symbol" />
+/// <reference lib="es2015.iterable" />
+
+interface SymbolConstructor {
+ /**
+ * A method that returns the default async iterator for an object. Called by the semantics of
+ * the for-await-of statement.
+ */
+ readonly asyncIterator: unique symbol;
+}
+
+interface AsyncIterator<T, TReturn = any, TNext = undefined> {
+ // NOTE: 'next' is defined using a tuple to ensure we report the correct assignability errors in all places.
+ next(...args: [] | [TNext]): Promise<IteratorResult<T, TReturn>>;
+ return?(value?: TReturn | PromiseLike<TReturn>): Promise<IteratorResult<T, TReturn>>;
+ throw?(e?: any): Promise<IteratorResult<T, TReturn>>;
+}
+
+interface AsyncIterable<T> {
+ [Symbol.asyncIterator](): AsyncIterator<T>;
+}
+
+interface AsyncIterableIterator<T> extends AsyncIterator<T> {
+ [Symbol.asyncIterator](): AsyncIterableIterator<T>;
+}
+`,lo["lib.es2018.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2017" />
+/// <reference lib="es2018.asynciterable" />
+/// <reference lib="es2018.asyncgenerator" />
+/// <reference lib="es2018.promise" />
+/// <reference lib="es2018.regexp" />
+/// <reference lib="es2018.intl" />
+`,lo["lib.es2018.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2018" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="dom.asynciterable" />
+`,lo["lib.es2018.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Intl {
+ // http://cldr.unicode.org/index/cldr-spec/plural-rules#TOC-Determining-Plural-Categories
+ type LDMLPluralRule = "zero" | "one" | "two" | "few" | "many" | "other";
+ type PluralRuleType = "cardinal" | "ordinal";
+
+ interface PluralRulesOptions {
+ localeMatcher?: "lookup" | "best fit" | undefined;
+ type?: PluralRuleType | undefined;
+ minimumIntegerDigits?: number | undefined;
+ minimumFractionDigits?: number | undefined;
+ maximumFractionDigits?: number | undefined;
+ minimumSignificantDigits?: number | undefined;
+ maximumSignificantDigits?: number | undefined;
+ }
+
+ interface ResolvedPluralRulesOptions {
+ locale: string;
+ pluralCategories: LDMLPluralRule[];
+ type: PluralRuleType;
+ minimumIntegerDigits: number;
+ minimumFractionDigits: number;
+ maximumFractionDigits: number;
+ minimumSignificantDigits?: number;
+ maximumSignificantDigits?: number;
+ }
+
+ interface PluralRules {
+ resolvedOptions(): ResolvedPluralRulesOptions;
+ select(n: number): LDMLPluralRule;
+ }
+
+ interface PluralRulesConstructor {
+ new (locales?: string | readonly string[], options?: PluralRulesOptions): PluralRules;
+ (locales?: string | readonly string[], options?: PluralRulesOptions): PluralRules;
+ supportedLocalesOf(locales: string | readonly string[], options?: { localeMatcher?: "lookup" | "best fit"; }): string[];
+ }
+
+ const PluralRules: PluralRulesConstructor;
+
+ // We can only have one definition for 'type' in TypeScript, and so you can learn where the keys come from here:
+ type ES2018NumberFormatPartType = "literal" | "nan" | "infinity" | "percent" | "integer" | "group" | "decimal" | "fraction" | "plusSign" | "minusSign" | "percentSign" | "currency" | "code" | "symbol" | "name";
+ type ES2020NumberFormatPartType = "compact" | "exponentInteger" | "exponentMinusSign" | "exponentSeparator" | "unit" | "unknown";
+ type NumberFormatPartTypes = ES2018NumberFormatPartType | ES2020NumberFormatPartType;
+
+ interface NumberFormatPart {
+ type: NumberFormatPartTypes;
+ value: string;
+ }
+
+ interface NumberFormat {
+ formatToParts(number?: number | bigint): NumberFormatPart[];
+ }
+}
+`,lo["lib.es2018.promise.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/**
+ * Represents the completion of an asynchronous operation
+ */
+interface Promise<T> {
+ /**
+ * Attaches a callback that is invoked when the Promise is settled (fulfilled or rejected). The
+ * resolved value cannot be modified from the callback.
+ * @param onfinally The callback to execute when the Promise is settled (fulfilled or rejected).
+ * @returns A Promise for the completion of the callback.
+ */
+ finally(onfinally?: (() => void) | undefined | null): Promise<T>;
+}
+`,lo["lib.es2018.regexp.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface RegExpMatchArray {
+ groups?: {
+ [key: string]: string;
+ };
+}
+
+interface RegExpExecArray {
+ groups?: {
+ [key: string]: string;
+ };
+}
+
+interface RegExp {
+ /**
+ * Returns a Boolean value indicating the state of the dotAll flag (s) used with a regular expression.
+ * Default is false. Read-only.
+ */
+ readonly dotAll: boolean;
+}
+`,lo["lib.es2019.array.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+type FlatArray<Arr, Depth extends number> = {
+ done: Arr;
+ recur: Arr extends ReadonlyArray<infer InnerArr> ? FlatArray<InnerArr, [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20][Depth]>
+ : Arr;
+}[Depth extends -1 ? "done" : "recur"];
+
+interface ReadonlyArray<T> {
+ /**
+ * Calls a defined callback function on each element of an array. Then, flattens the result into
+ * a new array.
+ * This is identical to a map followed by flat with depth 1.
+ *
+ * @param callback A function that accepts up to three arguments. The flatMap method calls the
+ * callback function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callback function. If
+ * thisArg is omitted, undefined is used as the this value.
+ */
+ flatMap<U, This = undefined>(
+ callback: (this: This, value: T, index: number, array: T[]) => U | ReadonlyArray<U>,
+ thisArg?: This,
+ ): U[];
+
+ /**
+ * Returns a new array with all sub-array elements concatenated into it recursively up to the
+ * specified depth.
+ *
+ * @param depth The maximum recursion depth
+ */
+ flat<A, D extends number = 1>(
+ this: A,
+ depth?: D,
+ ): FlatArray<A, D>[];
+}
+
+interface Array<T> {
+ /**
+ * Calls a defined callback function on each element of an array. Then, flattens the result into
+ * a new array.
+ * This is identical to a map followed by flat with depth 1.
+ *
+ * @param callback A function that accepts up to three arguments. The flatMap method calls the
+ * callback function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callback function. If
+ * thisArg is omitted, undefined is used as the this value.
+ */
+ flatMap<U, This = undefined>(
+ callback: (this: This, value: T, index: number, array: T[]) => U | ReadonlyArray<U>,
+ thisArg?: This,
+ ): U[];
+
+ /**
+ * Returns a new array with all sub-array elements concatenated into it recursively up to the
+ * specified depth.
+ *
+ * @param depth The maximum recursion depth
+ */
+ flat<A, D extends number = 1>(
+ this: A,
+ depth?: D,
+ ): FlatArray<A, D>[];
+}
+`,lo["lib.es2019.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2018" />
+/// <reference lib="es2019.array" />
+/// <reference lib="es2019.object" />
+/// <reference lib="es2019.string" />
+/// <reference lib="es2019.symbol" />
+/// <reference lib="es2019.intl" />
+`,lo["lib.es2019.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2019" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="dom.asynciterable" />
+`,lo["lib.es2019.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Intl {
+ interface DateTimeFormatPartTypesRegistry {
+ unknown: any;
+ }
+}
+`,lo["lib.es2019.object.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.iterable" />
+
+interface ObjectConstructor {
+ /**
+ * Returns an object created by key-value entries for properties and methods
+ * @param entries An iterable object that contains key-value entries for properties and methods.
+ */
+ fromEntries<T = any>(entries: Iterable<readonly [PropertyKey, T]>): { [k: string]: T; };
+
+ /**
+ * Returns an object created by key-value entries for properties and methods
+ * @param entries An iterable object that contains key-value entries for properties and methods.
+ */
+ fromEntries(entries: Iterable<readonly any[]>): any;
+}
+`,lo["lib.es2019.string.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface String {
+ /** Removes the trailing white space and line terminator characters from a string. */
+ trimEnd(): string;
+
+ /** Removes the leading white space and line terminator characters from a string. */
+ trimStart(): string;
+
+ /**
+ * Removes the leading white space and line terminator characters from a string.
+ * @deprecated A legacy feature for browser compatibility. Use \`trimStart\` instead
+ */
+ trimLeft(): string;
+
+ /**
+ * Removes the trailing white space and line terminator characters from a string.
+ * @deprecated A legacy feature for browser compatibility. Use \`trimEnd\` instead
+ */
+ trimRight(): string;
+}
+`,lo["lib.es2019.symbol.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Symbol {
+ /**
+ * Expose the [[Description]] internal slot of a symbol directly.
+ */
+ readonly description: string | undefined;
+}
+`,lo["lib.es2020.bigint.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2020.intl" />
+
+interface BigIntToLocaleStringOptions {
+ /**
+ * The locale matching algorithm to use.The default is "best fit". For information about this option, see the {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation Intl page}.
+ */
+ localeMatcher?: string;
+ /**
+ * The formatting style to use , the default is "decimal".
+ */
+ style?: string;
+
+ numberingSystem?: string;
+ /**
+ * The unit to use in unit formatting, Possible values are core unit identifiers, defined in UTS #35, Part 2, Section 6. A subset of units from the full list was selected for use in ECMAScript. Pairs of simple units can be concatenated with "-per-" to make a compound unit. There is no default value; if the style is "unit", the unit property must be provided.
+ */
+ unit?: string;
+
+ /**
+ * The unit formatting style to use in unit formatting, the defaults is "short".
+ */
+ unitDisplay?: string;
+
+ /**
+ * The currency to use in currency formatting. Possible values are the ISO 4217 currency codes, such as "USD" for the US dollar, "EUR" for the euro, or "CNY" for the Chinese RMB — see the Current currency & funds code list. There is no default value; if the style is "currency", the currency property must be provided. It is only used when [[Style]] has the value "currency".
+ */
+ currency?: string;
+
+ /**
+ * How to display the currency in currency formatting. It is only used when [[Style]] has the value "currency". The default is "symbol".
+ *
+ * "symbol" to use a localized currency symbol such as €,
+ *
+ * "code" to use the ISO currency code,
+ *
+ * "name" to use a localized currency name such as "dollar"
+ */
+ currencyDisplay?: string;
+
+ /**
+ * Whether to use grouping separators, such as thousands separators or thousand/lakh/crore separators. The default is true.
+ */
+ useGrouping?: boolean;
+
+ /**
+ * The minimum number of integer digits to use. Possible values are from 1 to 21; the default is 1.
+ */
+ minimumIntegerDigits?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21;
+
+ /**
+ * The minimum number of fraction digits to use. Possible values are from 0 to 20; the default for plain number and percent formatting is 0; the default for currency formatting is the number of minor unit digits provided by the {@link http://www.currency-iso.org/en/home/tables/table-a1.html ISO 4217 currency codes list} (2 if the list doesn't provide that information).
+ */
+ minimumFractionDigits?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20;
+
+ /**
+ * The maximum number of fraction digits to use. Possible values are from 0 to 20; the default for plain number formatting is the larger of minimumFractionDigits and 3; the default for currency formatting is the larger of minimumFractionDigits and the number of minor unit digits provided by the {@link http://www.currency-iso.org/en/home/tables/table-a1.html ISO 4217 currency codes list} (2 if the list doesn't provide that information); the default for percent formatting is the larger of minimumFractionDigits and 0.
+ */
+ maximumFractionDigits?: 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20;
+
+ /**
+ * The minimum number of significant digits to use. Possible values are from 1 to 21; the default is 1.
+ */
+ minimumSignificantDigits?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21;
+
+ /**
+ * The maximum number of significant digits to use. Possible values are from 1 to 21; the default is 21.
+ */
+ maximumSignificantDigits?: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21;
+
+ /**
+ * The formatting that should be displayed for the number, the defaults is "standard"
+ *
+ * "standard" plain number formatting
+ *
+ * "scientific" return the order-of-magnitude for formatted number.
+ *
+ * "engineering" return the exponent of ten when divisible by three
+ *
+ * "compact" string representing exponent, defaults is using the "short" form
+ */
+ notation?: string;
+
+ /**
+ * used only when notation is "compact"
+ */
+ compactDisplay?: string;
+}
+
+interface BigInt {
+ /**
+ * Returns a string representation of an object.
+ * @param radix Specifies a radix for converting numeric values to strings.
+ */
+ toString(radix?: number): string;
+
+ /** Returns a string representation appropriate to the host environment's current locale. */
+ toLocaleString(locales?: Intl.LocalesArgument, options?: BigIntToLocaleStringOptions): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): bigint;
+
+ readonly [Symbol.toStringTag]: "BigInt";
+}
+
+interface BigIntConstructor {
+ (value: bigint | boolean | number | string): bigint;
+ readonly prototype: BigInt;
+
+ /**
+ * Interprets the low bits of a BigInt as a 2's-complement signed integer.
+ * All higher bits are discarded.
+ * @param bits The number of low bits to use
+ * @param int The BigInt whose bits to extract
+ */
+ asIntN(bits: number, int: bigint): bigint;
+ /**
+ * Interprets the low bits of a BigInt as an unsigned integer.
+ * All higher bits are discarded.
+ * @param bits The number of low bits to use
+ * @param int The BigInt whose bits to extract
+ */
+ asUintN(bits: number, int: bigint): bigint;
+}
+
+declare var BigInt: BigIntConstructor;
+
+/**
+ * A typed array of 64-bit signed integer values. The contents are initialized to 0. If the
+ * requested number of bytes could not be allocated, an exception is raised.
+ */
+interface BigInt64Array {
+ /** The size in bytes of each element in the array. */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /** The ArrayBuffer instance referenced by the array. */
+ readonly buffer: ArrayBufferLike;
+
+ /** The length in bytes of the array. */
+ readonly byteLength: number;
+
+ /** The offset in bytes of the array. */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /** Yields index, value pairs for every entry in the array. */
+ entries(): IterableIterator<[number, bigint]>;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns false,
+ * or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: bigint, index: number, array: BigInt64Array) => boolean, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: bigint, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: bigint, index: number, array: BigInt64Array) => any, thisArg?: any): BigInt64Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: bigint, index: number, array: BigInt64Array) => boolean, thisArg?: any): bigint | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: bigint, index: number, array: BigInt64Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: bigint, index: number, array: BigInt64Array) => void, thisArg?: any): void;
+
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: bigint, fromIndex?: number): boolean;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: bigint, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /** Yields each index in the array. */
+ keys(): IterableIterator<number>;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: bigint, fromIndex?: number): number;
+
+ /** The length of the array. */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: bigint, index: number, array: BigInt64Array) => bigint, thisArg?: any): BigInt64Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: bigint, currentValue: bigint, currentIndex: number, array: BigInt64Array) => bigint): bigint;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: bigint, currentIndex: number, array: BigInt64Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: bigint, currentValue: bigint, currentIndex: number, array: BigInt64Array) => bigint): bigint;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: bigint, currentIndex: number, array: BigInt64Array) => U, initialValue: U): U;
+
+ /** Reverses the elements in the array. */
+ reverse(): this;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<bigint>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array.
+ */
+ slice(start?: number, end?: number): BigInt64Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls the
+ * predicate function for each element in the array until the predicate returns true, or until
+ * the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: bigint, index: number, array: BigInt64Array) => boolean, thisArg?: any): boolean;
+
+ /**
+ * Sorts the array.
+ * @param compareFn The function used to determine the order of the elements. If omitted, the elements are sorted in ascending order.
+ */
+ sort(compareFn?: (a: bigint, b: bigint) => number | bigint): this;
+
+ /**
+ * Gets a new BigInt64Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): BigInt64Array;
+
+ /** Converts the array to a string by using the current locale. */
+ toLocaleString(): string;
+
+ /** Returns a string representation of the array. */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): BigInt64Array;
+
+ /** Yields each value in the array. */
+ values(): IterableIterator<bigint>;
+
+ [Symbol.iterator](): IterableIterator<bigint>;
+
+ readonly [Symbol.toStringTag]: "BigInt64Array";
+
+ [index: number]: bigint;
+}
+
+interface BigInt64ArrayConstructor {
+ readonly prototype: BigInt64Array;
+ new (length?: number): BigInt64Array;
+ new (array: Iterable<bigint>): BigInt64Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): BigInt64Array;
+
+ /** The size in bytes of each element in the array. */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: bigint[]): BigInt64Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: ArrayLike<bigint>): BigInt64Array;
+ from<U>(arrayLike: ArrayLike<U>, mapfn: (v: U, k: number) => bigint, thisArg?: any): BigInt64Array;
+}
+
+declare var BigInt64Array: BigInt64ArrayConstructor;
+
+/**
+ * A typed array of 64-bit unsigned integer values. The contents are initialized to 0. If the
+ * requested number of bytes could not be allocated, an exception is raised.
+ */
+interface BigUint64Array {
+ /** The size in bytes of each element in the array. */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /** The ArrayBuffer instance referenced by the array. */
+ readonly buffer: ArrayBufferLike;
+
+ /** The length in bytes of the array. */
+ readonly byteLength: number;
+
+ /** The offset in bytes of the array. */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /** Yields index, value pairs for every entry in the array. */
+ entries(): IterableIterator<[number, bigint]>;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns false,
+ * or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: bigint, index: number, array: BigUint64Array) => boolean, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: bigint, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: bigint, index: number, array: BigUint64Array) => any, thisArg?: any): BigUint64Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: bigint, index: number, array: BigUint64Array) => boolean, thisArg?: any): bigint | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: bigint, index: number, array: BigUint64Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: bigint, index: number, array: BigUint64Array) => void, thisArg?: any): void;
+
+ /**
+ * Determines whether an array includes a certain element, returning true or false as appropriate.
+ * @param searchElement The element to search for.
+ * @param fromIndex The position in this array at which to begin searching for searchElement.
+ */
+ includes(searchElement: bigint, fromIndex?: number): boolean;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: bigint, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /** Yields each index in the array. */
+ keys(): IterableIterator<number>;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: bigint, fromIndex?: number): number;
+
+ /** The length of the array. */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: bigint, index: number, array: BigUint64Array) => bigint, thisArg?: any): BigUint64Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: bigint, currentValue: bigint, currentIndex: number, array: BigUint64Array) => bigint): bigint;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: bigint, currentIndex: number, array: BigUint64Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: bigint, currentValue: bigint, currentIndex: number, array: BigUint64Array) => bigint): bigint;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: bigint, currentIndex: number, array: BigUint64Array) => U, initialValue: U): U;
+
+ /** Reverses the elements in the array. */
+ reverse(): this;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<bigint>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array.
+ */
+ slice(start?: number, end?: number): BigUint64Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls the
+ * predicate function for each element in the array until the predicate returns true, or until
+ * the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: bigint, index: number, array: BigUint64Array) => boolean, thisArg?: any): boolean;
+
+ /**
+ * Sorts the array.
+ * @param compareFn The function used to determine the order of the elements. If omitted, the elements are sorted in ascending order.
+ */
+ sort(compareFn?: (a: bigint, b: bigint) => number | bigint): this;
+
+ /**
+ * Gets a new BigUint64Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): BigUint64Array;
+
+ /** Converts the array to a string by using the current locale. */
+ toLocaleString(): string;
+
+ /** Returns a string representation of the array. */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): BigUint64Array;
+
+ /** Yields each value in the array. */
+ values(): IterableIterator<bigint>;
+
+ [Symbol.iterator](): IterableIterator<bigint>;
+
+ readonly [Symbol.toStringTag]: "BigUint64Array";
+
+ [index: number]: bigint;
+}
+
+interface BigUint64ArrayConstructor {
+ readonly prototype: BigUint64Array;
+ new (length?: number): BigUint64Array;
+ new (array: Iterable<bigint>): BigUint64Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): BigUint64Array;
+
+ /** The size in bytes of each element in the array. */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: bigint[]): BigUint64Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from(arrayLike: ArrayLike<bigint>): BigUint64Array;
+ from<U>(arrayLike: ArrayLike<U>, mapfn: (v: U, k: number) => bigint, thisArg?: any): BigUint64Array;
+}
+
+declare var BigUint64Array: BigUint64ArrayConstructor;
+
+interface DataView {
+ /**
+ * Gets the BigInt64 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getBigInt64(byteOffset: number, littleEndian?: boolean): bigint;
+
+ /**
+ * Gets the BigUint64 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getBigUint64(byteOffset: number, littleEndian?: boolean): bigint;
+
+ /**
+ * Stores a BigInt64 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setBigInt64(byteOffset: number, value: bigint, littleEndian?: boolean): void;
+
+ /**
+ * Stores a BigUint64 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setBigUint64(byteOffset: number, value: bigint, littleEndian?: boolean): void;
+}
+
+declare namespace Intl {
+ interface NumberFormat {
+ format(value: number | bigint): string;
+ resolvedOptions(): ResolvedNumberFormatOptions;
+ }
+}
+`,lo["lib.es2020.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2019" />
+/// <reference lib="es2020.bigint" />
+/// <reference lib="es2020.date" />
+/// <reference lib="es2020.number" />
+/// <reference lib="es2020.promise" />
+/// <reference lib="es2020.sharedmemory" />
+/// <reference lib="es2020.string" />
+/// <reference lib="es2020.symbol.wellknown" />
+/// <reference lib="es2020.intl" />
+`,lo["lib.es2020.date.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2020.intl" />
+
+interface Date {
+ /**
+ * Converts a date and time to a string by using the current or specified locale.
+ * @param locales A locale string, array of locale strings, Intl.Locale object, or array of Intl.Locale objects that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleString(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string;
+
+ /**
+ * Converts a date to a string by using the current or specified locale.
+ * @param locales A locale string, array of locale strings, Intl.Locale object, or array of Intl.Locale objects that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleDateString(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string;
+
+ /**
+ * Converts a time to a string by using the current or specified locale.
+ * @param locales A locale string, array of locale strings, Intl.Locale object, or array of Intl.Locale objects that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleTimeString(locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string;
+}
+`,lo["lib.es2020.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2020" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="dom.asynciterable" />
+`,lo["lib.es2020.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2018.intl" />
+declare namespace Intl {
+ /**
+ * A string that is a valid [Unicode BCP 47 Locale Identifier](https://unicode.org/reports/tr35/#Unicode_locale_identifier).
+ *
+ * For example: "fa", "es-MX", "zh-Hant-TW".
+ *
+ * See [MDN - Intl - locales argument](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument).
+ */
+ type UnicodeBCP47LocaleIdentifier = string;
+
+ /**
+ * Unit to use in the relative time internationalized message.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format#Parameters).
+ */
+ type RelativeTimeFormatUnit =
+ | "year"
+ | "years"
+ | "quarter"
+ | "quarters"
+ | "month"
+ | "months"
+ | "week"
+ | "weeks"
+ | "day"
+ | "days"
+ | "hour"
+ | "hours"
+ | "minute"
+ | "minutes"
+ | "second"
+ | "seconds";
+
+ /**
+ * Value of the \`unit\` property in objects returned by
+ * \`Intl.RelativeTimeFormat.prototype.formatToParts()\`. \`formatToParts\` and
+ * \`format\` methods accept either singular or plural unit names as input,
+ * but \`formatToParts\` only outputs singular (e.g. "day") not plural (e.g.
+ * "days").
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts#Using_formatToParts).
+ */
+ type RelativeTimeFormatUnitSingular =
+ | "year"
+ | "quarter"
+ | "month"
+ | "week"
+ | "day"
+ | "hour"
+ | "minute"
+ | "second";
+
+ /**
+ * The locale matching algorithm to use.
+ *
+ * [MDN](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation).
+ */
+ type RelativeTimeFormatLocaleMatcher = "lookup" | "best fit";
+
+ /**
+ * The format of output message.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters).
+ */
+ type RelativeTimeFormatNumeric = "always" | "auto";
+
+ /**
+ * The length of the internationalized message.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters).
+ */
+ type RelativeTimeFormatStyle = "long" | "short" | "narrow";
+
+ /**
+ * The locale or locales to use
+ *
+ * See [MDN - Intl - locales argument](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locales_argument).
+ */
+ type LocalesArgument = UnicodeBCP47LocaleIdentifier | Locale | readonly (UnicodeBCP47LocaleIdentifier | Locale)[] | undefined;
+
+ /**
+ * An object with some or all of properties of \`options\` parameter
+ * of \`Intl.RelativeTimeFormat\` constructor.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters).
+ */
+ interface RelativeTimeFormatOptions {
+ /** The locale matching algorithm to use. For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation). */
+ localeMatcher?: RelativeTimeFormatLocaleMatcher;
+ /** The format of output message. */
+ numeric?: RelativeTimeFormatNumeric;
+ /** The length of the internationalized message. */
+ style?: RelativeTimeFormatStyle;
+ }
+
+ /**
+ * An object with properties reflecting the locale
+ * and formatting options computed during initialization
+ * of the \`Intl.RelativeTimeFormat\` object
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions#Description).
+ */
+ interface ResolvedRelativeTimeFormatOptions {
+ locale: UnicodeBCP47LocaleIdentifier;
+ style: RelativeTimeFormatStyle;
+ numeric: RelativeTimeFormatNumeric;
+ numberingSystem: string;
+ }
+
+ /**
+ * An object representing the relative time format in parts
+ * that can be used for custom locale-aware formatting.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts#Using_formatToParts).
+ */
+ type RelativeTimeFormatPart =
+ | {
+ type: "literal";
+ value: string;
+ }
+ | {
+ type: Exclude<NumberFormatPartTypes, "literal">;
+ value: string;
+ unit: RelativeTimeFormatUnitSingular;
+ };
+
+ interface RelativeTimeFormat {
+ /**
+ * Formats a value and a unit according to the locale
+ * and formatting options of the given
+ * [\`Intl.RelativeTimeFormat\`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat)
+ * object.
+ *
+ * While this method automatically provides the correct plural forms,
+ * the grammatical form is otherwise as neutral as possible.
+ *
+ * It is the caller's responsibility to handle cut-off logic
+ * such as deciding between displaying "in 7 days" or "in 1 week".
+ * This API does not support relative dates involving compound units.
+ * e.g "in 5 days and 4 hours".
+ *
+ * @param value - Numeric value to use in the internationalized relative time message
+ *
+ * @param unit - [Unit](https://tc39.es/ecma402/#sec-singularrelativetimeunit) to use in the relative time internationalized message.
+ *
+ * @throws \`RangeError\` if \`unit\` was given something other than \`unit\` possible values
+ *
+ * @returns {string} Internationalized relative time message as string
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/format).
+ */
+ format(value: number, unit: RelativeTimeFormatUnit): string;
+
+ /**
+ * Returns an array of objects representing the relative time format in parts that can be used for custom locale-aware formatting.
+ *
+ * @param value - Numeric value to use in the internationalized relative time message
+ *
+ * @param unit - [Unit](https://tc39.es/ecma402/#sec-singularrelativetimeunit) to use in the relative time internationalized message.
+ *
+ * @throws \`RangeError\` if \`unit\` was given something other than \`unit\` possible values
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/formatToParts).
+ */
+ formatToParts(value: number, unit: RelativeTimeFormatUnit): RelativeTimeFormatPart[];
+
+ /**
+ * Provides access to the locale and options computed during initialization of this \`Intl.RelativeTimeFormat\` object.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/resolvedOptions).
+ */
+ resolvedOptions(): ResolvedRelativeTimeFormatOptions;
+ }
+
+ /**
+ * The [\`Intl.RelativeTimeFormat\`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat)
+ * object is a constructor for objects that enable language-sensitive relative time formatting.
+ *
+ * [Compatibility](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat#Browser_compatibility).
+ */
+ const RelativeTimeFormat: {
+ /**
+ * Creates [Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) objects
+ *
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
+ * For the general form and interpretation of the locales argument,
+ * see the [\`Intl\` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
+ *
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters)
+ * with some or all of options of \`RelativeTimeFormatOptions\`.
+ *
+ * @returns [Intl.RelativeTimeFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RelativeTimeFormat) object.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat).
+ */
+ new (
+ locales?: LocalesArgument,
+ options?: RelativeTimeFormatOptions,
+ ): RelativeTimeFormat;
+
+ /**
+ * Returns an array containing those of the provided locales
+ * that are supported in date and time formatting
+ * without having to fall back to the runtime's default locale.
+ *
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
+ * For the general form and interpretation of the locales argument,
+ * see the [\`Intl\` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
+ *
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/RelativeTimeFormat#Parameters)
+ * with some or all of options of the formatting.
+ *
+ * @returns An array containing those of the provided locales
+ * that are supported in date and time formatting
+ * without having to fall back to the runtime's default locale.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/RelativeTimeFormat/supportedLocalesOf).
+ */
+ supportedLocalesOf(
+ locales?: LocalesArgument,
+ options?: RelativeTimeFormatOptions,
+ ): UnicodeBCP47LocaleIdentifier[];
+ };
+
+ interface NumberFormatOptions {
+ compactDisplay?: "short" | "long" | undefined;
+ notation?: "standard" | "scientific" | "engineering" | "compact" | undefined;
+ signDisplay?: "auto" | "never" | "always" | "exceptZero" | undefined;
+ unit?: string | undefined;
+ unitDisplay?: "short" | "long" | "narrow" | undefined;
+ currencyDisplay?: string | undefined;
+ currencySign?: string | undefined;
+ }
+
+ interface ResolvedNumberFormatOptions {
+ compactDisplay?: "short" | "long";
+ notation?: "standard" | "scientific" | "engineering" | "compact";
+ signDisplay?: "auto" | "never" | "always" | "exceptZero";
+ unit?: string;
+ unitDisplay?: "short" | "long" | "narrow";
+ currencyDisplay?: string;
+ currencySign?: string;
+ }
+
+ interface DateTimeFormatOptions {
+ calendar?: string | undefined;
+ dayPeriod?: "narrow" | "short" | "long" | undefined;
+ numberingSystem?: string | undefined;
+
+ dateStyle?: "full" | "long" | "medium" | "short" | undefined;
+ timeStyle?: "full" | "long" | "medium" | "short" | undefined;
+ hourCycle?: "h11" | "h12" | "h23" | "h24" | undefined;
+ }
+
+ type LocaleHourCycleKey = "h12" | "h23" | "h11" | "h24";
+ type LocaleCollationCaseFirst = "upper" | "lower" | "false";
+
+ interface LocaleOptions {
+ /** A string containing the language, and the script and region if available. */
+ baseName?: string;
+ /** The part of the Locale that indicates the locale's calendar era. */
+ calendar?: string;
+ /** Flag that defines whether case is taken into account for the locale's collation rules. */
+ caseFirst?: LocaleCollationCaseFirst;
+ /** The collation type used for sorting */
+ collation?: string;
+ /** The time keeping format convention used by the locale. */
+ hourCycle?: LocaleHourCycleKey;
+ /** The primary language subtag associated with the locale. */
+ language?: string;
+ /** The numeral system used by the locale. */
+ numberingSystem?: string;
+ /** Flag that defines whether the locale has special collation handling for numeric characters. */
+ numeric?: boolean;
+ /** The region of the world (usually a country) associated with the locale. Possible values are region codes as defined by ISO 3166-1. */
+ region?: string;
+ /** The script used for writing the particular language used in the locale. Possible values are script codes as defined by ISO 15924. */
+ script?: string;
+ }
+
+ interface Locale extends LocaleOptions {
+ /** A string containing the language, and the script and region if available. */
+ baseName: string;
+ /** The primary language subtag associated with the locale. */
+ language: string;
+ /** Gets the most likely values for the language, script, and region of the locale based on existing values. */
+ maximize(): Locale;
+ /** Attempts to remove information about the locale that would be added by calling \`Locale.maximize()\`. */
+ minimize(): Locale;
+ /** Returns the locale's full locale identifier string. */
+ toString(): UnicodeBCP47LocaleIdentifier;
+ }
+
+ /**
+ * Constructor creates [Intl.Locale](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale)
+ * objects
+ *
+ * @param tag - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646).
+ * For the general form and interpretation of the locales argument,
+ * see the [\`Intl\` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
+ *
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale/Locale#Parameters) with some or all of options of the locale.
+ *
+ * @returns [Intl.Locale](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale) object.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Locale).
+ */
+ const Locale: {
+ new (tag: UnicodeBCP47LocaleIdentifier | Locale, options?: LocaleOptions): Locale;
+ };
+
+ type DisplayNamesFallback =
+ | "code"
+ | "none";
+
+ type DisplayNamesType =
+ | "language"
+ | "region"
+ | "script"
+ | "calendar"
+ | "dateTimeField"
+ | "currency";
+
+ type DisplayNamesLanguageDisplay =
+ | "dialect"
+ | "standard";
+
+ interface DisplayNamesOptions {
+ localeMatcher?: RelativeTimeFormatLocaleMatcher;
+ style?: RelativeTimeFormatStyle;
+ type: DisplayNamesType;
+ languageDisplay?: DisplayNamesLanguageDisplay;
+ fallback?: DisplayNamesFallback;
+ }
+
+ interface ResolvedDisplayNamesOptions {
+ locale: UnicodeBCP47LocaleIdentifier;
+ style: RelativeTimeFormatStyle;
+ type: DisplayNamesType;
+ fallback: DisplayNamesFallback;
+ languageDisplay?: DisplayNamesLanguageDisplay;
+ }
+
+ interface DisplayNames {
+ /**
+ * Receives a code and returns a string based on the locale and options provided when instantiating
+ * [\`Intl.DisplayNames()\`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames)
+ *
+ * @param code The \`code\` to provide depends on the \`type\` passed to display name during creation:
+ * - If the type is \`"region"\`, code should be either an [ISO-3166 two letters region code](https://www.iso.org/iso-3166-country-codes.html),
+ * or a [three digits UN M49 Geographic Regions](https://unstats.un.org/unsd/methodology/m49/).
+ * - If the type is \`"script"\`, code should be an [ISO-15924 four letters script code](https://unicode.org/iso15924/iso15924-codes.html).
+ * - If the type is \`"language"\`, code should be a \`languageCode\` ["-" \`scriptCode\`] ["-" \`regionCode\` ] *("-" \`variant\` )
+ * subsequence of the unicode_language_id grammar in [UTS 35's Unicode Language and Locale Identifiers grammar](https://unicode.org/reports/tr35/#Unicode_language_identifier).
+ * \`languageCode\` is either a two letters ISO 639-1 language code or a three letters ISO 639-2 language code.
+ * - If the type is \`"currency"\`, code should be a [3-letter ISO 4217 currency code](https://www.iso.org/iso-4217-currency-codes.html).
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/of).
+ */
+ of(code: string): string | undefined;
+ /**
+ * Returns a new object with properties reflecting the locale and style formatting options computed during the construction of the current
+ * [\`Intl/DisplayNames\`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames) object.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/resolvedOptions).
+ */
+ resolvedOptions(): ResolvedDisplayNamesOptions;
+ }
+
+ /**
+ * The [\`Intl.DisplayNames()\`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames)
+ * object enables the consistent translation of language, region and script display names.
+ *
+ * [Compatibility](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames#browser_compatibility).
+ */
+ const DisplayNames: {
+ prototype: DisplayNames;
+
+ /**
+ * @param locales A string with a BCP 47 language tag, or an array of such strings.
+ * For the general form and interpretation of the \`locales\` argument, see the [Intl](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation)
+ * page.
+ *
+ * @param options An object for setting up a display name.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/DisplayNames).
+ */
+ new (locales: LocalesArgument, options: DisplayNamesOptions): DisplayNames;
+
+ /**
+ * Returns an array containing those of the provided locales that are supported in display names without having to fall back to the runtime's default locale.
+ *
+ * @param locales A string with a BCP 47 language tag, or an array of such strings.
+ * For the general form and interpretation of the \`locales\` argument, see the [Intl](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#locale_identification_and_negotiation)
+ * page.
+ *
+ * @param options An object with a locale matcher.
+ *
+ * @returns An array of strings representing a subset of the given locale tags that are supported in display names without having to fall back to the runtime's default locale.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DisplayNames/supportedLocalesOf).
+ */
+ supportedLocalesOf(locales?: LocalesArgument, options?: { localeMatcher?: RelativeTimeFormatLocaleMatcher; }): UnicodeBCP47LocaleIdentifier[];
+ };
+
+ interface CollatorConstructor {
+ new (locales?: LocalesArgument, options?: CollatorOptions): Collator;
+ (locales?: LocalesArgument, options?: CollatorOptions): Collator;
+ supportedLocalesOf(locales: LocalesArgument, options?: CollatorOptions): string[];
+ }
+
+ interface DateTimeFormatConstructor {
+ new (locales?: LocalesArgument, options?: DateTimeFormatOptions): DateTimeFormat;
+ (locales?: LocalesArgument, options?: DateTimeFormatOptions): DateTimeFormat;
+ supportedLocalesOf(locales: LocalesArgument, options?: DateTimeFormatOptions): string[];
+ }
+
+ interface NumberFormatConstructor {
+ new (locales?: LocalesArgument, options?: NumberFormatOptions): NumberFormat;
+ (locales?: LocalesArgument, options?: NumberFormatOptions): NumberFormat;
+ supportedLocalesOf(locales: LocalesArgument, options?: NumberFormatOptions): string[];
+ }
+
+ interface PluralRulesConstructor {
+ new (locales?: LocalesArgument, options?: PluralRulesOptions): PluralRules;
+ (locales?: LocalesArgument, options?: PluralRulesOptions): PluralRules;
+
+ supportedLocalesOf(locales: LocalesArgument, options?: { localeMatcher?: "lookup" | "best fit"; }): string[];
+ }
+}
+`,lo["lib.es2020.number.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2020.intl" />
+
+interface Number {
+ /**
+ * Converts a number to a string by using the current or specified locale.
+ * @param locales A locale string, array of locale strings, Intl.Locale object, or array of Intl.Locale objects that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleString(locales?: Intl.LocalesArgument, options?: Intl.NumberFormatOptions): string;
+}
+`,lo["lib.es2020.promise.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface PromiseFulfilledResult<T> {
+ status: "fulfilled";
+ value: T;
+}
+
+interface PromiseRejectedResult {
+ status: "rejected";
+ reason: any;
+}
+
+type PromiseSettledResult<T> = PromiseFulfilledResult<T> | PromiseRejectedResult;
+
+interface PromiseConstructor {
+ /**
+ * Creates a Promise that is resolved with an array of results when all
+ * of the provided Promises resolve or reject.
+ * @param values An array of Promises.
+ * @returns A new Promise.
+ */
+ allSettled<T extends readonly unknown[] | []>(values: T): Promise<{ -readonly [P in keyof T]: PromiseSettledResult<Awaited<T[P]>>; }>;
+
+ /**
+ * Creates a Promise that is resolved with an array of results when all
+ * of the provided Promises resolve or reject.
+ * @param values An array of Promises.
+ * @returns A new Promise.
+ */
+ allSettled<T>(values: Iterable<T | PromiseLike<T>>): Promise<PromiseSettledResult<Awaited<T>>[]>;
+}
+`,lo["lib.es2020.sharedmemory.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Atomics {
+ /**
+ * Adds a value to the value at the given position in the array, returning the original value.
+ * Until this atomic operation completes, any other read or write operation against the array
+ * will block.
+ */
+ add(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
+
+ /**
+ * Stores the bitwise AND of a value with the value at the given position in the array,
+ * returning the original value. Until this atomic operation completes, any other read or
+ * write operation against the array will block.
+ */
+ and(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
+
+ /**
+ * Replaces the value at the given position in the array if the original value equals the given
+ * expected value, returning the original value. Until this atomic operation completes, any
+ * other read or write operation against the array will block.
+ */
+ compareExchange(typedArray: BigInt64Array | BigUint64Array, index: number, expectedValue: bigint, replacementValue: bigint): bigint;
+
+ /**
+ * Replaces the value at the given position in the array, returning the original value. Until
+ * this atomic operation completes, any other read or write operation against the array will
+ * block.
+ */
+ exchange(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
+
+ /**
+ * Returns the value at the given position in the array. Until this atomic operation completes,
+ * any other read or write operation against the array will block.
+ */
+ load(typedArray: BigInt64Array | BigUint64Array, index: number): bigint;
+
+ /**
+ * Stores the bitwise OR of a value with the value at the given position in the array,
+ * returning the original value. Until this atomic operation completes, any other read or write
+ * operation against the array will block.
+ */
+ or(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
+
+ /**
+ * Stores a value at the given position in the array, returning the new value. Until this
+ * atomic operation completes, any other read or write operation against the array will block.
+ */
+ store(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
+
+ /**
+ * Subtracts a value from the value at the given position in the array, returning the original
+ * value. Until this atomic operation completes, any other read or write operation against the
+ * array will block.
+ */
+ sub(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
+
+ /**
+ * If the value at the given position in the array is equal to the provided value, the current
+ * agent is put to sleep causing execution to suspend until the timeout expires (returning
+ * \`"timed-out"\`) or until the agent is awoken (returning \`"ok"\`); otherwise, returns
+ * \`"not-equal"\`.
+ */
+ wait(typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): "ok" | "not-equal" | "timed-out";
+
+ /**
+ * Wakes up sleeping agents that are waiting on the given index of the array, returning the
+ * number of agents that were awoken.
+ * @param typedArray A shared BigInt64Array.
+ * @param index The position in the typedArray to wake up on.
+ * @param count The number of sleeping agents to notify. Defaults to +Infinity.
+ */
+ notify(typedArray: BigInt64Array, index: number, count?: number): number;
+
+ /**
+ * Stores the bitwise XOR of a value with the value at the given position in the array,
+ * returning the original value. Until this atomic operation completes, any other read or write
+ * operation against the array will block.
+ */
+ xor(typedArray: BigInt64Array | BigUint64Array, index: number, value: bigint): bigint;
+}
+`,lo["lib.es2020.string.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.iterable" />
+
+interface String {
+ /**
+ * Matches a string with a regular expression, and returns an iterable of matches
+ * containing the results of that search.
+ * @param regexp A variable name or string literal containing the regular expression pattern and flags.
+ */
+ matchAll(regexp: RegExp): IterableIterator<RegExpExecArray>;
+
+ /** Converts all alphabetic characters to lowercase, taking into account the host environment's current locale. */
+ toLocaleLowerCase(locales?: Intl.LocalesArgument): string;
+
+ /** Returns a string where all alphabetic characters have been converted to uppercase, taking into account the host environment's current locale. */
+ toLocaleUpperCase(locales?: Intl.LocalesArgument): string;
+
+ /**
+ * Determines whether two strings are equivalent in the current or specified locale.
+ * @param that String to compare to target string
+ * @param locales A locale string or array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used. This parameter must conform to BCP 47 standards; see the Intl.Collator object for details.
+ * @param options An object that contains one or more properties that specify comparison options. see the Intl.Collator object for details.
+ */
+ localeCompare(that: string, locales?: Intl.LocalesArgument, options?: Intl.CollatorOptions): number;
+}
+`,lo["lib.es2020.symbol.wellknown.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.iterable" />
+/// <reference lib="es2015.symbol" />
+
+interface SymbolConstructor {
+ /**
+ * A regular expression method that matches the regular expression against a string. Called
+ * by the String.prototype.matchAll method.
+ */
+ readonly matchAll: unique symbol;
+}
+
+interface RegExp {
+ /**
+ * Matches a string with this regular expression, and returns an iterable of matches
+ * containing the results of that search.
+ * @param string A string to search within.
+ */
+ [Symbol.matchAll](str: string): IterableIterator<RegExpMatchArray>;
+}
+`,lo["lib.es2021.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2020" />
+/// <reference lib="es2021.promise" />
+/// <reference lib="es2021.string" />
+/// <reference lib="es2021.weakref" />
+/// <reference lib="es2021.intl" />
+`,lo["lib.es2021.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2021" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="dom.asynciterable" />
+`,lo["lib.es2021.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Intl {
+ interface DateTimeFormatPartTypesRegistry {
+ fractionalSecond: any;
+ }
+
+ interface DateTimeFormatOptions {
+ formatMatcher?: "basic" | "best fit" | "best fit" | undefined;
+ dateStyle?: "full" | "long" | "medium" | "short" | undefined;
+ timeStyle?: "full" | "long" | "medium" | "short" | undefined;
+ dayPeriod?: "narrow" | "short" | "long" | undefined;
+ fractionalSecondDigits?: 1 | 2 | 3 | undefined;
+ }
+
+ interface DateTimeRangeFormatPart extends DateTimeFormatPart {
+ source: "startRange" | "endRange" | "shared";
+ }
+
+ interface DateTimeFormat {
+ formatRange(startDate: Date | number | bigint, endDate: Date | number | bigint): string;
+ formatRangeToParts(startDate: Date | number | bigint, endDate: Date | number | bigint): DateTimeRangeFormatPart[];
+ }
+
+ interface ResolvedDateTimeFormatOptions {
+ formatMatcher?: "basic" | "best fit" | "best fit";
+ dateStyle?: "full" | "long" | "medium" | "short";
+ timeStyle?: "full" | "long" | "medium" | "short";
+ hourCycle?: "h11" | "h12" | "h23" | "h24";
+ dayPeriod?: "narrow" | "short" | "long";
+ fractionalSecondDigits?: 1 | 2 | 3;
+ }
+
+ /**
+ * The locale matching algorithm to use.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters).
+ */
+ type ListFormatLocaleMatcher = "lookup" | "best fit";
+
+ /**
+ * The format of output message.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters).
+ */
+ type ListFormatType = "conjunction" | "disjunction" | "unit";
+
+ /**
+ * The length of the formatted message.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters).
+ */
+ type ListFormatStyle = "long" | "short" | "narrow";
+
+ /**
+ * An object with some or all properties of the \`Intl.ListFormat\` constructor \`options\` parameter.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters).
+ */
+ interface ListFormatOptions {
+ /** The locale matching algorithm to use. For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation). */
+ localeMatcher?: ListFormatLocaleMatcher | undefined;
+ /** The format of output message. */
+ type?: ListFormatType | undefined;
+ /** The length of the internationalized message. */
+ style?: ListFormatStyle | undefined;
+ }
+
+ interface ResolvedListFormatOptions {
+ locale: string;
+ style: ListFormatStyle;
+ type: ListFormatType;
+ }
+
+ interface ListFormat {
+ /**
+ * Returns a string with a language-specific representation of the list.
+ *
+ * @param list - An iterable object, such as an [Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array).
+ *
+ * @throws \`TypeError\` if \`list\` includes something other than the possible values.
+ *
+ * @returns {string} A language-specific formatted string representing the elements of the list.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/format).
+ */
+ format(list: Iterable<string>): string;
+
+ /**
+ * Returns an Array of objects representing the different components that can be used to format a list of values in a locale-aware fashion.
+ *
+ * @param list - An iterable object, such as an [Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array), to be formatted according to a locale.
+ *
+ * @throws \`TypeError\` if \`list\` includes something other than the possible values.
+ *
+ * @returns {{ type: "element" | "literal", value: string; }[]} An Array of components which contains the formatted parts from the list.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/formatToParts).
+ */
+ formatToParts(list: Iterable<string>): { type: "element" | "literal"; value: string; }[];
+
+ /**
+ * Returns a new object with properties reflecting the locale and style
+ * formatting options computed during the construction of the current
+ * \`Intl.ListFormat\` object.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/resolvedOptions).
+ */
+ resolvedOptions(): ResolvedListFormatOptions;
+ }
+
+ const ListFormat: {
+ prototype: ListFormat;
+
+ /**
+ * Creates [Intl.ListFormat](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat) objects that
+ * enable language-sensitive list formatting.
+ *
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
+ * For the general form and interpretation of the \`locales\` argument,
+ * see the [\`Intl\` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
+ *
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/ListFormat#parameters)
+ * with some or all options of \`ListFormatOptions\`.
+ *
+ * @returns [Intl.ListFormatOptions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat) object.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat).
+ */
+ new (locales?: LocalesArgument, options?: ListFormatOptions): ListFormat;
+
+ /**
+ * Returns an array containing those of the provided locales that are
+ * supported in list formatting without having to fall back to the runtime's default locale.
+ *
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
+ * For the general form and interpretation of the \`locales\` argument,
+ * see the [\`Intl\` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
+ *
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/supportedLocalesOf#parameters).
+ * with some or all possible options.
+ *
+ * @returns An array of strings representing a subset of the given locale tags that are supported in list
+ * formatting without having to fall back to the runtime's default locale.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/ListFormat/supportedLocalesOf).
+ */
+ supportedLocalesOf(locales: LocalesArgument, options?: Pick<ListFormatOptions, "localeMatcher">): UnicodeBCP47LocaleIdentifier[];
+ };
+}
+`,lo["lib.es2021.promise.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface AggregateError extends Error {
+ errors: any[];
+}
+
+interface AggregateErrorConstructor {
+ new (errors: Iterable<any>, message?: string): AggregateError;
+ (errors: Iterable<any>, message?: string): AggregateError;
+ readonly prototype: AggregateError;
+}
+
+declare var AggregateError: AggregateErrorConstructor;
+
+/**
+ * Represents the completion of an asynchronous operation
+ */
+interface PromiseConstructor {
+ /**
+ * The any function returns a promise that is fulfilled by the first given promise to be fulfilled, or rejected with an AggregateError containing an array of rejection reasons if all of the given promises are rejected. It resolves all elements of the passed iterable to promises as it runs this algorithm.
+ * @param values An array or iterable of Promises.
+ * @returns A new Promise.
+ */
+ any<T extends readonly unknown[] | []>(values: T): Promise<Awaited<T[number]>>;
+
+ /**
+ * The any function returns a promise that is fulfilled by the first given promise to be fulfilled, or rejected with an AggregateError containing an array of rejection reasons if all of the given promises are rejected. It resolves all elements of the passed iterable to promises as it runs this algorithm.
+ * @param values An array or iterable of Promises.
+ * @returns A new Promise.
+ */
+ any<T>(values: Iterable<T | PromiseLike<T>>): Promise<Awaited<T>>;
+}
+`,lo["lib.es2021.string.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface String {
+ /**
+ * Replace all instances of a substring in a string, using a regular expression or search string.
+ * @param searchValue A string to search for.
+ * @param replaceValue A string containing the text to replace for every successful match of searchValue in this string.
+ */
+ replaceAll(searchValue: string | RegExp, replaceValue: string): string;
+
+ /**
+ * Replace all instances of a substring in a string, using a regular expression or search string.
+ * @param searchValue A string to search for.
+ * @param replacer A function that returns the replacement text.
+ */
+ replaceAll(searchValue: string | RegExp, replacer: (substring: string, ...args: any[]) => string): string;
+}
+`,lo["lib.es2021.weakref.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface WeakRef<T extends WeakKey> {
+ readonly [Symbol.toStringTag]: "WeakRef";
+
+ /**
+ * Returns the WeakRef instance's target value, or undefined if the target value has been
+ * reclaimed.
+ * In es2023 the value can be either a symbol or an object, in previous versions only object is permissible.
+ */
+ deref(): T | undefined;
+}
+
+interface WeakRefConstructor {
+ readonly prototype: WeakRef<any>;
+
+ /**
+ * Creates a WeakRef instance for the given target value.
+ * In es2023 the value can be either a symbol or an object, in previous versions only object is permissible.
+ * @param target The target value for the WeakRef instance.
+ */
+ new <T extends WeakKey>(target: T): WeakRef<T>;
+}
+
+declare var WeakRef: WeakRefConstructor;
+
+interface FinalizationRegistry<T> {
+ readonly [Symbol.toStringTag]: "FinalizationRegistry";
+
+ /**
+ * Registers a value with the registry.
+ * In es2023 the value can be either a symbol or an object, in previous versions only object is permissible.
+ * @param target The target value to register.
+ * @param heldValue The value to pass to the finalizer for this value. This cannot be the
+ * target value.
+ * @param unregisterToken The token to pass to the unregister method to unregister the target
+ * value. If not provided, the target cannot be unregistered.
+ */
+ register(target: WeakKey, heldValue: T, unregisterToken?: WeakKey): void;
+
+ /**
+ * Unregisters a value from the registry.
+ * In es2023 the value can be either a symbol or an object, in previous versions only object is permissible.
+ * @param unregisterToken The token that was used as the unregisterToken argument when calling
+ * register to register the target value.
+ */
+ unregister(unregisterToken: WeakKey): void;
+}
+
+interface FinalizationRegistryConstructor {
+ readonly prototype: FinalizationRegistry<any>;
+
+ /**
+ * Creates a finalization registry with an associated cleanup callback
+ * @param cleanupCallback The callback to call after a value in the registry has been reclaimed.
+ */
+ new <T>(cleanupCallback: (heldValue: T) => void): FinalizationRegistry<T>;
+}
+
+declare var FinalizationRegistry: FinalizationRegistryConstructor;
+`,lo["lib.es2022.array.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Array<T> {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): T | undefined;
+}
+
+interface ReadonlyArray<T> {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): T | undefined;
+}
+
+interface Int8Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Uint8Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Uint8ClampedArray {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Int16Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Uint16Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Int32Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Uint32Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Float32Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface Float64Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): number | undefined;
+}
+
+interface BigInt64Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): bigint | undefined;
+}
+
+interface BigUint64Array {
+ /**
+ * Returns the item located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): bigint | undefined;
+}
+`,lo["lib.es2022.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2021" />
+/// <reference lib="es2022.array" />
+/// <reference lib="es2022.error" />
+/// <reference lib="es2022.intl" />
+/// <reference lib="es2022.object" />
+/// <reference lib="es2022.sharedmemory" />
+/// <reference lib="es2022.string" />
+/// <reference lib="es2022.regexp" />
+`,lo["lib.es2022.error.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface ErrorOptions {
+ cause?: unknown;
+}
+
+interface Error {
+ cause?: unknown;
+}
+
+interface ErrorConstructor {
+ new (message?: string, options?: ErrorOptions): Error;
+ (message?: string, options?: ErrorOptions): Error;
+}
+
+interface EvalErrorConstructor {
+ new (message?: string, options?: ErrorOptions): EvalError;
+ (message?: string, options?: ErrorOptions): EvalError;
+}
+
+interface RangeErrorConstructor {
+ new (message?: string, options?: ErrorOptions): RangeError;
+ (message?: string, options?: ErrorOptions): RangeError;
+}
+
+interface ReferenceErrorConstructor {
+ new (message?: string, options?: ErrorOptions): ReferenceError;
+ (message?: string, options?: ErrorOptions): ReferenceError;
+}
+
+interface SyntaxErrorConstructor {
+ new (message?: string, options?: ErrorOptions): SyntaxError;
+ (message?: string, options?: ErrorOptions): SyntaxError;
+}
+
+interface TypeErrorConstructor {
+ new (message?: string, options?: ErrorOptions): TypeError;
+ (message?: string, options?: ErrorOptions): TypeError;
+}
+
+interface URIErrorConstructor {
+ new (message?: string, options?: ErrorOptions): URIError;
+ (message?: string, options?: ErrorOptions): URIError;
+}
+
+interface AggregateErrorConstructor {
+ new (
+ errors: Iterable<any>,
+ message?: string,
+ options?: ErrorOptions,
+ ): AggregateError;
+ (
+ errors: Iterable<any>,
+ message?: string,
+ options?: ErrorOptions,
+ ): AggregateError;
+}
+`,lo["lib.es2022.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2022" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="dom.asynciterable" />
+`,lo["lib.es2022.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Intl {
+ /**
+ * An object with some or all properties of the \`Intl.Segmenter\` constructor \`options\` parameter.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/Segmenter#parameters)
+ */
+ interface SegmenterOptions {
+ /** The locale matching algorithm to use. For information about this option, see [Intl page](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_negotiation). */
+ localeMatcher?: "best fit" | "lookup" | undefined;
+ /** The type of input to be split */
+ granularity?: "grapheme" | "word" | "sentence" | undefined;
+ }
+
+ interface Segmenter {
+ /**
+ * Returns \`Segments\` object containing the segments of the input string, using the segmenter's locale and granularity.
+ *
+ * @param input - The text to be segmented as a \`string\`.
+ *
+ * @returns A new iterable Segments object containing the segments of the input string, using the segmenter's locale and granularity.
+ */
+ segment(input: string): Segments;
+ resolvedOptions(): ResolvedSegmenterOptions;
+ }
+
+ interface ResolvedSegmenterOptions {
+ locale: string;
+ granularity: "grapheme" | "word" | "sentence";
+ }
+
+ interface Segments {
+ /**
+ * Returns an object describing the segment in the original string that includes the code unit at a specified index.
+ *
+ * @param codeUnitIndex - A number specifying the index of the code unit in the original input string. If the value is omitted, it defaults to \`0\`.
+ */
+ containing(codeUnitIndex?: number): SegmentData;
+
+ /** Returns an iterator to iterate over the segments. */
+ [Symbol.iterator](): IterableIterator<SegmentData>;
+ }
+
+ interface SegmentData {
+ /** A string containing the segment extracted from the original input string. */
+ segment: string;
+ /** The code unit index in the original input string at which the segment begins. */
+ index: number;
+ /** The complete input string that was segmented. */
+ input: string;
+ /**
+ * A boolean value only if granularity is "word"; otherwise, undefined.
+ * If granularity is "word", then isWordLike is true when the segment is word-like (i.e., consists of letters/numbers/ideographs/etc.); otherwise, false.
+ */
+ isWordLike?: boolean;
+ }
+
+ const Segmenter: {
+ prototype: Segmenter;
+
+ /**
+ * Creates a new \`Intl.Segmenter\` object.
+ *
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
+ * For the general form and interpretation of the \`locales\` argument,
+ * see the [\`Intl\` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
+ *
+ * @param options - An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/Segmenter#parameters)
+ * with some or all options of \`SegmenterOptions\`.
+ *
+ * @returns [Intl.Segmenter](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segments) object.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter).
+ */
+ new (locales?: LocalesArgument, options?: SegmenterOptions): Segmenter;
+
+ /**
+ * Returns an array containing those of the provided locales that are supported without having to fall back to the runtime's default locale.
+ *
+ * @param locales - A string with a [BCP 47 language tag](http://tools.ietf.org/html/rfc5646), or an array of such strings.
+ * For the general form and interpretation of the \`locales\` argument,
+ * see the [\`Intl\` page](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).
+ *
+ * @param options An [object](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/supportedLocalesOf#parameters).
+ * with some or all possible options.
+ *
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/Segmenter/supportedLocalesOf)
+ */
+ supportedLocalesOf(locales: LocalesArgument, options?: Pick<SegmenterOptions, "localeMatcher">): UnicodeBCP47LocaleIdentifier[];
+ };
+
+ /**
+ * Returns a sorted array of the supported collation, calendar, currency, numbering system, timezones, and units by the implementation.
+ * [MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/supportedValuesOf)
+ *
+ * @param key A string indicating the category of values to return.
+ * @returns A sorted array of the supported values.
+ */
+ function supportedValuesOf(key: "calendar" | "collation" | "currency" | "numberingSystem" | "timeZone" | "unit"): string[];
+}
+`,lo["lib.es2022.object.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface ObjectConstructor {
+ /**
+ * Determines whether an object has a property with the specified name.
+ * @param o An object.
+ * @param v A property name.
+ */
+ hasOwn(o: object, v: PropertyKey): boolean;
+}
+`,lo["lib.es2022.regexp.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface RegExpMatchArray {
+ indices?: RegExpIndicesArray;
+}
+
+interface RegExpExecArray {
+ indices?: RegExpIndicesArray;
+}
+
+interface RegExpIndicesArray extends Array<[number, number]> {
+ groups?: {
+ [key: string]: [number, number];
+ };
+}
+
+interface RegExp {
+ /**
+ * Returns a Boolean value indicating the state of the hasIndices flag (d) used with with a regular expression.
+ * Default is false. Read-only.
+ */
+ readonly hasIndices: boolean;
+}
+`,lo["lib.es2022.sharedmemory.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Atomics {
+ /**
+ * A non-blocking, asynchronous version of wait which is usable on the main thread.
+ * Waits asynchronously on a shared memory location and returns a Promise
+ * @param typedArray A shared Int32Array or BigInt64Array.
+ * @param index The position in the typedArray to wait on.
+ * @param value The expected value to test.
+ * @param [timeout] The expected value to test.
+ */
+ waitAsync(typedArray: Int32Array, index: number, value: number, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; };
+
+ /**
+ * A non-blocking, asynchronous version of wait which is usable on the main thread.
+ * Waits asynchronously on a shared memory location and returns a Promise
+ * @param typedArray A shared Int32Array or BigInt64Array.
+ * @param index The position in the typedArray to wait on.
+ * @param value The expected value to test.
+ * @param [timeout] The expected value to test.
+ */
+ waitAsync(typedArray: BigInt64Array, index: number, value: bigint, timeout?: number): { async: false; value: "not-equal" | "timed-out"; } | { async: true; value: Promise<"ok" | "timed-out">; };
+}
+`,lo["lib.es2022.string.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface String {
+ /**
+ * Returns a new String consisting of the single UTF-16 code unit located at the specified index.
+ * @param index The zero-based index of the desired code unit. A negative index will count back from the last item.
+ */
+ at(index: number): string | undefined;
+}
+`,lo["lib.es2023.array.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface Array<T> {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends T>(predicate: (value: T, index: number, array: T[]) => value is S, thisArg?: any): S | undefined;
+ findLast(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): T | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): number;
+
+ /**
+ * Returns a copy of an array with its elements reversed.
+ */
+ toReversed(): T[];
+
+ /**
+ * Returns a copy of an array with its elements sorted.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending, ASCII character order.
+ * \`\`\`ts
+ * [11, 2, 22, 1].toSorted((a, b) => a - b) // [1, 2, 11, 22]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: T, b: T) => number): T[];
+
+ /**
+ * Copies an array and removes elements and, if necessary, inserts new elements in their place. Returns the copied array.
+ * @param start The zero-based location in the array from which to start removing elements.
+ * @param deleteCount The number of elements to remove.
+ * @param items Elements to insert into the copied array in place of the deleted elements.
+ * @returns The copied array.
+ */
+ toSpliced(start: number, deleteCount: number, ...items: T[]): T[];
+
+ /**
+ * Copies an array and removes elements while returning the remaining elements.
+ * @param start The zero-based location in the array from which to start removing elements.
+ * @param deleteCount The number of elements to remove.
+ * @returns A copy of the original array with the remaining elements.
+ */
+ toSpliced(start: number, deleteCount?: number): T[];
+
+ /**
+ * Copies an array, then overwrites the value at the provided index with the
+ * given value. If the index is negative, then it replaces from the end
+ * of the array.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to write into the copied array.
+ * @returns The copied array with the updated value.
+ */
+ with(index: number, value: T): T[];
+}
+
+interface ReadonlyArray<T> {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends T>(
+ predicate: (value: T, index: number, array: readonly T[]) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (value: T, index: number, array: readonly T[]) => unknown,
+ thisArg?: any,
+ ): T | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (value: T, index: number, array: readonly T[]) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copied array with all of its elements reversed.
+ */
+ toReversed(): T[];
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending, ASCII character order.
+ * \`\`\`ts
+ * [11, 2, 22, 1].toSorted((a, b) => a - b) // [1, 2, 11, 22]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: T, b: T) => number): T[];
+
+ /**
+ * Copies an array and removes elements while, if necessary, inserting new elements in their place, returning the remaining elements.
+ * @param start The zero-based location in the array from which to start removing elements.
+ * @param deleteCount The number of elements to remove.
+ * @param items Elements to insert into the copied array in place of the deleted elements.
+ * @returns A copy of the original array with the remaining elements.
+ */
+ toSpliced(start: number, deleteCount: number, ...items: T[]): T[];
+
+ /**
+ * Copies an array and removes elements while returning the remaining elements.
+ * @param start The zero-based location in the array from which to start removing elements.
+ * @param deleteCount The number of elements to remove.
+ * @returns A copy of the original array with the remaining elements.
+ */
+ toSpliced(start: number, deleteCount?: number): T[];
+
+ /**
+ * Copies an array, then overwrites the value at the provided index with the
+ * given value. If the index is negative, then it replaces from the end
+ * of the array
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: T): T[];
+}
+
+interface Int8Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Int8Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (value: number, index: number, array: Int8Array) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (value: number, index: number, array: Int8Array) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Uint8Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Uint8Array.from([11, 2, 22, 1]);
+ * myNums.toSorted((a, b) => a - b) // Uint8Array(4) [1, 2, 11, 22]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Uint8Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Uint8Array;
+}
+
+interface Uint8Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint8Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (value: number, index: number, array: Uint8Array) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (value: number, index: number, array: Uint8Array) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Uint8Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Uint8Array.from([11, 2, 22, 1]);
+ * myNums.toSorted((a, b) => a - b) // Uint8Array(4) [1, 2, 11, 22]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Uint8Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Uint8Array;
+}
+
+interface Uint8ClampedArray {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint8ClampedArray,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint8ClampedArray,
+ ) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint8ClampedArray,
+ ) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Uint8ClampedArray;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Uint8ClampedArray.from([11, 2, 22, 1]);
+ * myNums.toSorted((a, b) => a - b) // Uint8ClampedArray(4) [1, 2, 11, 22]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Uint8ClampedArray;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Uint8ClampedArray;
+}
+
+interface Int16Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Int16Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (value: number, index: number, array: Int16Array) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (value: number, index: number, array: Int16Array) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Int16Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Int16Array.from([11, 2, -22, 1]);
+ * myNums.toSorted((a, b) => a - b) // Int16Array(4) [-22, 1, 2, 11]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Int16Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Int16Array;
+}
+
+interface Uint16Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint16Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint16Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint16Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Uint16Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Uint16Array.from([11, 2, 22, 1]);
+ * myNums.toSorted((a, b) => a - b) // Uint16Array(4) [1, 2, 11, 22]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Uint16Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Uint16Array;
+}
+
+interface Int32Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Int32Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (value: number, index: number, array: Int32Array) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (value: number, index: number, array: Int32Array) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Int32Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Int32Array.from([11, 2, -22, 1]);
+ * myNums.toSorted((a, b) => a - b) // Int32Array(4) [-22, 1, 2, 11]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Int32Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Int32Array;
+}
+
+interface Uint32Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint32Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint32Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (
+ value: number,
+ index: number,
+ array: Uint32Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Uint32Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Uint32Array.from([11, 2, 22, 1]);
+ * myNums.toSorted((a, b) => a - b) // Uint32Array(4) [1, 2, 11, 22]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Uint32Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Uint32Array;
+}
+
+interface Float32Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Float32Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (
+ value: number,
+ index: number,
+ array: Float32Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (
+ value: number,
+ index: number,
+ array: Float32Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Float32Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Float32Array.from([11.25, 2, -22.5, 1]);
+ * myNums.toSorted((a, b) => a - b) // Float32Array(4) [-22.5, 1, 2, 11.5]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Float32Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Float32Array;
+}
+
+interface Float64Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends number>(
+ predicate: (
+ value: number,
+ index: number,
+ array: Float64Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (
+ value: number,
+ index: number,
+ array: Float64Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (
+ value: number,
+ index: number,
+ array: Float64Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): Float64Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = Float64Array.from([11.25, 2, -22.5, 1]);
+ * myNums.toSorted((a, b) => a - b) // Float64Array(4) [-22.5, 1, 2, 11.5]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: number, b: number) => number): Float64Array;
+
+ /**
+ * Copies the array and inserts the given number at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: number): Float64Array;
+}
+
+interface BigInt64Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends bigint>(
+ predicate: (
+ value: bigint,
+ index: number,
+ array: BigInt64Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (
+ value: bigint,
+ index: number,
+ array: BigInt64Array,
+ ) => unknown,
+ thisArg?: any,
+ ): bigint | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (
+ value: bigint,
+ index: number,
+ array: BigInt64Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): BigInt64Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = BigInt64Array.from([11n, 2n, -22n, 1n]);
+ * myNums.toSorted((a, b) => Number(a - b)) // BigInt64Array(4) [-22n, 1n, 2n, 11n]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: bigint, b: bigint) => number): BigInt64Array;
+
+ /**
+ * Copies the array and inserts the given bigint at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: bigint): BigInt64Array;
+}
+
+interface BigUint64Array {
+ /**
+ * Returns the value of the last element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate findLast calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found, findLast
+ * immediately returns that element value. Otherwise, findLast returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLast<S extends bigint>(
+ predicate: (
+ value: bigint,
+ index: number,
+ array: BigUint64Array,
+ ) => value is S,
+ thisArg?: any,
+ ): S | undefined;
+ findLast(
+ predicate: (
+ value: bigint,
+ index: number,
+ array: BigUint64Array,
+ ) => unknown,
+ thisArg?: any,
+ ): bigint | undefined;
+
+ /**
+ * Returns the index of the last element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate findLastIndex calls predicate once for each element of the array, in descending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findLastIndex immediately returns that element index. Otherwise, findLastIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findLastIndex(
+ predicate: (
+ value: bigint,
+ index: number,
+ array: BigUint64Array,
+ ) => unknown,
+ thisArg?: any,
+ ): number;
+
+ /**
+ * Copies the array and returns the copy with the elements in reverse order.
+ */
+ toReversed(): BigUint64Array;
+
+ /**
+ * Copies and sorts the array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * const myNums = BigUint64Array.from([11n, 2n, 22n, 1n]);
+ * myNums.toSorted((a, b) => Number(a - b)) // BigUint64Array(4) [1n, 2n, 11n, 22n]
+ * \`\`\`
+ */
+ toSorted(compareFn?: (a: bigint, b: bigint) => number): BigUint64Array;
+
+ /**
+ * Copies the array and inserts the given bigint at the provided index.
+ * @param index The index of the value to overwrite. If the index is
+ * negative, then it replaces from the end of the array.
+ * @param value The value to insert into the copied array.
+ * @returns A copy of the original array with the inserted value.
+ */
+ with(index: number, value: bigint): BigUint64Array;
+}
+`,lo["lib.es2023.collection.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface WeakKeyTypes {
+ symbol: symbol;
+}
+`,lo["lib.es2023.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2022" />
+/// <reference lib="es2023.array" />
+/// <reference lib="es2023.collection" />
+`,lo["lib.es2023.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2023" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="dom.asynciterable" />
+`,lo["lib.es5.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="decorators" />
+/// <reference lib="decorators.legacy" />
+
+/////////////////////////////
+/// ECMAScript APIs
+/////////////////////////////
+
+declare var NaN: number;
+declare var Infinity: number;
+
+/**
+ * Evaluates JavaScript code and executes it.
+ * @param x A String value that contains valid JavaScript code.
+ */
+declare function eval(x: string): any;
+
+/**
+ * Converts a string to an integer.
+ * @param string A string to convert into a number.
+ * @param radix A value between 2 and 36 that specifies the base of the number in \`string\`.
+ * If this argument is not supplied, strings with a prefix of '0x' are considered hexadecimal.
+ * All other strings are considered decimal.
+ */
+declare function parseInt(string: string, radix?: number): number;
+
+/**
+ * Converts a string to a floating-point number.
+ * @param string A string that contains a floating-point number.
+ */
+declare function parseFloat(string: string): number;
+
+/**
+ * Returns a Boolean value that indicates whether a value is the reserved value NaN (not a number).
+ * @param number A numeric value.
+ */
+declare function isNaN(number: number): boolean;
+
+/**
+ * Determines whether a supplied number is finite.
+ * @param number Any numeric value.
+ */
+declare function isFinite(number: number): boolean;
+
+/**
+ * Gets the unencoded version of an encoded Uniform Resource Identifier (URI).
+ * @param encodedURI A value representing an encoded URI.
+ */
+declare function decodeURI(encodedURI: string): string;
+
+/**
+ * Gets the unencoded version of an encoded component of a Uniform Resource Identifier (URI).
+ * @param encodedURIComponent A value representing an encoded URI component.
+ */
+declare function decodeURIComponent(encodedURIComponent: string): string;
+
+/**
+ * Encodes a text string as a valid Uniform Resource Identifier (URI)
+ * @param uri A value representing an unencoded URI.
+ */
+declare function encodeURI(uri: string): string;
+
+/**
+ * Encodes a text string as a valid component of a Uniform Resource Identifier (URI).
+ * @param uriComponent A value representing an unencoded URI component.
+ */
+declare function encodeURIComponent(uriComponent: string | number | boolean): string;
+
+/**
+ * Computes a new string in which certain characters have been replaced by a hexadecimal escape sequence.
+ * @deprecated A legacy feature for browser compatibility
+ * @param string A string value
+ */
+declare function escape(string: string): string;
+
+/**
+ * Computes a new string in which hexadecimal escape sequences are replaced with the character that it represents.
+ * @deprecated A legacy feature for browser compatibility
+ * @param string A string value
+ */
+declare function unescape(string: string): string;
+
+interface Symbol {
+ /** Returns a string representation of an object. */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): symbol;
+}
+
+declare type PropertyKey = string | number | symbol;
+
+interface PropertyDescriptor {
+ configurable?: boolean;
+ enumerable?: boolean;
+ value?: any;
+ writable?: boolean;
+ get?(): any;
+ set?(v: any): void;
+}
+
+interface PropertyDescriptorMap {
+ [key: PropertyKey]: PropertyDescriptor;
+}
+
+interface Object {
+ /** The initial value of Object.prototype.constructor is the standard built-in Object constructor. */
+ constructor: Function;
+
+ /** Returns a string representation of an object. */
+ toString(): string;
+
+ /** Returns a date converted to a string using the current locale. */
+ toLocaleString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Object;
+
+ /**
+ * Determines whether an object has a property with the specified name.
+ * @param v A property name.
+ */
+ hasOwnProperty(v: PropertyKey): boolean;
+
+ /**
+ * Determines whether an object exists in another object's prototype chain.
+ * @param v Another object whose prototype chain is to be checked.
+ */
+ isPrototypeOf(v: Object): boolean;
+
+ /**
+ * Determines whether a specified property is enumerable.
+ * @param v A property name.
+ */
+ propertyIsEnumerable(v: PropertyKey): boolean;
+}
+
+interface ObjectConstructor {
+ new (value?: any): Object;
+ (): any;
+ (value: any): any;
+
+ /** A reference to the prototype for a class of objects. */
+ readonly prototype: Object;
+
+ /**
+ * Returns the prototype of an object.
+ * @param o The object that references the prototype.
+ */
+ getPrototypeOf(o: any): any;
+
+ /**
+ * Gets the own property descriptor of the specified object.
+ * An own property descriptor is one that is defined directly on the object and is not inherited from the object's prototype.
+ * @param o Object that contains the property.
+ * @param p Name of the property.
+ */
+ getOwnPropertyDescriptor(o: any, p: PropertyKey): PropertyDescriptor | undefined;
+
+ /**
+ * Returns the names of the own properties of an object. The own properties of an object are those that are defined directly
+ * on that object, and are not inherited from the object's prototype. The properties of an object include both fields (objects) and functions.
+ * @param o Object that contains the own properties.
+ */
+ getOwnPropertyNames(o: any): string[];
+
+ /**
+ * Creates an object that has the specified prototype or that has null prototype.
+ * @param o Object to use as a prototype. May be null.
+ */
+ create(o: object | null): any;
+
+ /**
+ * Creates an object that has the specified prototype, and that optionally contains specified properties.
+ * @param o Object to use as a prototype. May be null
+ * @param properties JavaScript object that contains one or more property descriptors.
+ */
+ create(o: object | null, properties: PropertyDescriptorMap & ThisType<any>): any;
+
+ /**
+ * Adds a property to an object, or modifies attributes of an existing property.
+ * @param o Object on which to add or modify the property. This can be a native JavaScript object (that is, a user-defined object or a built in object) or a DOM object.
+ * @param p The property name.
+ * @param attributes Descriptor for the property. It can be for a data property or an accessor property.
+ */
+ defineProperty<T>(o: T, p: PropertyKey, attributes: PropertyDescriptor & ThisType<any>): T;
+
+ /**
+ * Adds one or more properties to an object, and/or modifies attributes of existing properties.
+ * @param o Object on which to add or modify the properties. This can be a native JavaScript object or a DOM object.
+ * @param properties JavaScript object that contains one or more descriptor objects. Each descriptor object describes a data property or an accessor property.
+ */
+ defineProperties<T>(o: T, properties: PropertyDescriptorMap & ThisType<any>): T;
+
+ /**
+ * Prevents the modification of attributes of existing properties, and prevents the addition of new properties.
+ * @param o Object on which to lock the attributes.
+ */
+ seal<T>(o: T): T;
+
+ /**
+ * Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
+ * @param f Object on which to lock the attributes.
+ */
+ freeze<T extends Function>(f: T): T;
+
+ /**
+ * Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
+ * @param o Object on which to lock the attributes.
+ */
+ freeze<T extends { [idx: string]: U | null | undefined | object; }, U extends string | bigint | number | boolean | symbol>(o: T): Readonly<T>;
+
+ /**
+ * Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
+ * @param o Object on which to lock the attributes.
+ */
+ freeze<T>(o: T): Readonly<T>;
+
+ /**
+ * Prevents the addition of new properties to an object.
+ * @param o Object to make non-extensible.
+ */
+ preventExtensions<T>(o: T): T;
+
+ /**
+ * Returns true if existing property attributes cannot be modified in an object and new properties cannot be added to the object.
+ * @param o Object to test.
+ */
+ isSealed(o: any): boolean;
+
+ /**
+ * Returns true if existing property attributes and values cannot be modified in an object, and new properties cannot be added to the object.
+ * @param o Object to test.
+ */
+ isFrozen(o: any): boolean;
+
+ /**
+ * Returns a value that indicates whether new properties can be added to an object.
+ * @param o Object to test.
+ */
+ isExtensible(o: any): boolean;
+
+ /**
+ * Returns the names of the enumerable string properties and methods of an object.
+ * @param o Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
+ */
+ keys(o: object): string[];
+}
+
+/**
+ * Provides functionality common to all JavaScript objects.
+ */
+declare var Object: ObjectConstructor;
+
+/**
+ * Creates a new function.
+ */
+interface Function {
+ /**
+ * Calls the function, substituting the specified object for the this value of the function, and the specified array for the arguments of the function.
+ * @param thisArg The object to be used as the this object.
+ * @param argArray A set of arguments to be passed to the function.
+ */
+ apply(this: Function, thisArg: any, argArray?: any): any;
+
+ /**
+ * Calls a method of an object, substituting another object for the current object.
+ * @param thisArg The object to be used as the current object.
+ * @param argArray A list of arguments to be passed to the method.
+ */
+ call(this: Function, thisArg: any, ...argArray: any[]): any;
+
+ /**
+ * For a given function, creates a bound function that has the same body as the original function.
+ * The this object of the bound function is associated with the specified object, and has the specified initial parameters.
+ * @param thisArg An object to which the this keyword can refer inside the new function.
+ * @param argArray A list of arguments to be passed to the new function.
+ */
+ bind(this: Function, thisArg: any, ...argArray: any[]): any;
+
+ /** Returns a string representation of a function. */
+ toString(): string;
+
+ prototype: any;
+ readonly length: number;
+
+ // Non-standard extensions
+ arguments: any;
+ caller: Function;
+}
+
+interface FunctionConstructor {
+ /**
+ * Creates a new function.
+ * @param args A list of arguments the function accepts.
+ */
+ new (...args: string[]): Function;
+ (...args: string[]): Function;
+ readonly prototype: Function;
+}
+
+declare var Function: FunctionConstructor;
+
+/**
+ * Extracts the type of the 'this' parameter of a function type, or 'unknown' if the function type has no 'this' parameter.
+ */
+type ThisParameterType<T> = T extends (this: infer U, ...args: never) => any ? U : unknown;
+
+/**
+ * Removes the 'this' parameter from a function type.
+ */
+type OmitThisParameter<T> = unknown extends ThisParameterType<T> ? T : T extends (...args: infer A) => infer R ? (...args: A) => R : T;
+
+interface CallableFunction extends Function {
+ /**
+ * Calls the function with the specified object as the this value and the elements of specified array as the arguments.
+ * @param thisArg The object to be used as the this object.
+ */
+ apply<T, R>(this: (this: T) => R, thisArg: T): R;
+
+ /**
+ * Calls the function with the specified object as the this value and the elements of specified array as the arguments.
+ * @param thisArg The object to be used as the this object.
+ * @param args An array of argument values to be passed to the function.
+ */
+ apply<T, A extends any[], R>(this: (this: T, ...args: A) => R, thisArg: T, args: A): R;
+
+ /**
+ * Calls the function with the specified object as the this value and the specified rest arguments as the arguments.
+ * @param thisArg The object to be used as the this object.
+ * @param args Argument values to be passed to the function.
+ */
+ call<T, A extends any[], R>(this: (this: T, ...args: A) => R, thisArg: T, ...args: A): R;
+
+ /**
+ * For a given function, creates a bound function that has the same body as the original function.
+ * The this object of the bound function is associated with the specified object, and has the specified initial parameters.
+ * @param thisArg The object to be used as the this object.
+ */
+ bind<T>(this: T, thisArg: ThisParameterType<T>): OmitThisParameter<T>;
+
+ /**
+ * For a given function, creates a bound function that has the same body as the original function.
+ * The this object of the bound function is associated with the specified object, and has the specified initial parameters.
+ * @param thisArg The object to be used as the this object.
+ * @param args Arguments to bind to the parameters of the function.
+ */
+ bind<T, A extends any[], B extends any[], R>(this: (this: T, ...args: [...A, ...B]) => R, thisArg: T, ...args: A): (...args: B) => R;
+}
+
+interface NewableFunction extends Function {
+ /**
+ * Calls the function with the specified object as the this value and the elements of specified array as the arguments.
+ * @param thisArg The object to be used as the this object.
+ */
+ apply<T>(this: new () => T, thisArg: T): void;
+ /**
+ * Calls the function with the specified object as the this value and the elements of specified array as the arguments.
+ * @param thisArg The object to be used as the this object.
+ * @param args An array of argument values to be passed to the function.
+ */
+ apply<T, A extends any[]>(this: new (...args: A) => T, thisArg: T, args: A): void;
+
+ /**
+ * Calls the function with the specified object as the this value and the specified rest arguments as the arguments.
+ * @param thisArg The object to be used as the this object.
+ * @param args Argument values to be passed to the function.
+ */
+ call<T, A extends any[]>(this: new (...args: A) => T, thisArg: T, ...args: A): void;
+
+ /**
+ * For a given function, creates a bound function that has the same body as the original function.
+ * The this object of the bound function is associated with the specified object, and has the specified initial parameters.
+ * @param thisArg The object to be used as the this object.
+ */
+ bind<T>(this: T, thisArg: any): T;
+
+ /**
+ * For a given function, creates a bound function that has the same body as the original function.
+ * The this object of the bound function is associated with the specified object, and has the specified initial parameters.
+ * @param thisArg The object to be used as the this object.
+ * @param args Arguments to bind to the parameters of the function.
+ */
+ bind<A extends any[], B extends any[], R>(this: new (...args: [...A, ...B]) => R, thisArg: any, ...args: A): new (...args: B) => R;
+}
+
+interface IArguments {
+ [index: number]: any;
+ length: number;
+ callee: Function;
+}
+
+interface String {
+ /** Returns a string representation of a string. */
+ toString(): string;
+
+ /**
+ * Returns the character at the specified index.
+ * @param pos The zero-based index of the desired character.
+ */
+ charAt(pos: number): string;
+
+ /**
+ * Returns the Unicode value of the character at the specified location.
+ * @param index The zero-based index of the desired character. If there is no character at the specified index, NaN is returned.
+ */
+ charCodeAt(index: number): number;
+
+ /**
+ * Returns a string that contains the concatenation of two or more strings.
+ * @param strings The strings to append to the end of the string.
+ */
+ concat(...strings: string[]): string;
+
+ /**
+ * Returns the position of the first occurrence of a substring.
+ * @param searchString The substring to search for in the string
+ * @param position The index at which to begin searching the String object. If omitted, search starts at the beginning of the string.
+ */
+ indexOf(searchString: string, position?: number): number;
+
+ /**
+ * Returns the last occurrence of a substring in the string.
+ * @param searchString The substring to search for.
+ * @param position The index at which to begin searching. If omitted, the search begins at the end of the string.
+ */
+ lastIndexOf(searchString: string, position?: number): number;
+
+ /**
+ * Determines whether two strings are equivalent in the current locale.
+ * @param that String to compare to target string
+ */
+ localeCompare(that: string): number;
+
+ /**
+ * Matches a string with a regular expression, and returns an array containing the results of that search.
+ * @param regexp A variable name or string literal containing the regular expression pattern and flags.
+ */
+ match(regexp: string | RegExp): RegExpMatchArray | null;
+
+ /**
+ * Replaces text in a string, using a regular expression or search string.
+ * @param searchValue A string or regular expression to search for.
+ * @param replaceValue A string containing the text to replace. When the {@linkcode searchValue} is a \`RegExp\`, all matches are replaced if the \`g\` flag is set (or only those matches at the beginning, if the \`y\` flag is also present). Otherwise, only the first match of {@linkcode searchValue} is replaced.
+ */
+ replace(searchValue: string | RegExp, replaceValue: string): string;
+
+ /**
+ * Replaces text in a string, using a regular expression or search string.
+ * @param searchValue A string to search for.
+ * @param replacer A function that returns the replacement text.
+ */
+ replace(searchValue: string | RegExp, replacer: (substring: string, ...args: any[]) => string): string;
+
+ /**
+ * Finds the first substring match in a regular expression search.
+ * @param regexp The regular expression pattern and applicable flags.
+ */
+ search(regexp: string | RegExp): number;
+
+ /**
+ * Returns a section of a string.
+ * @param start The index to the beginning of the specified portion of stringObj.
+ * @param end The index to the end of the specified portion of stringObj. The substring includes the characters up to, but not including, the character indicated by end.
+ * If this value is not specified, the substring continues to the end of stringObj.
+ */
+ slice(start?: number, end?: number): string;
+
+ /**
+ * Split a string into substrings using the specified separator and return them as an array.
+ * @param separator A string that identifies character or characters to use in separating the string. If omitted, a single-element array containing the entire string is returned.
+ * @param limit A value used to limit the number of elements returned in the array.
+ */
+ split(separator: string | RegExp, limit?: number): string[];
+
+ /**
+ * Returns the substring at the specified location within a String object.
+ * @param start The zero-based index number indicating the beginning of the substring.
+ * @param end Zero-based index number indicating the end of the substring. The substring includes the characters up to, but not including, the character indicated by end.
+ * If end is omitted, the characters from start through the end of the original string are returned.
+ */
+ substring(start: number, end?: number): string;
+
+ /** Converts all the alphabetic characters in a string to lowercase. */
+ toLowerCase(): string;
+
+ /** Converts all alphabetic characters to lowercase, taking into account the host environment's current locale. */
+ toLocaleLowerCase(locales?: string | string[]): string;
+
+ /** Converts all the alphabetic characters in a string to uppercase. */
+ toUpperCase(): string;
+
+ /** Returns a string where all alphabetic characters have been converted to uppercase, taking into account the host environment's current locale. */
+ toLocaleUpperCase(locales?: string | string[]): string;
+
+ /** Removes the leading and trailing white space and line terminator characters from a string. */
+ trim(): string;
+
+ /** Returns the length of a String object. */
+ readonly length: number;
+
+ // IE extensions
+ /**
+ * Gets a substring beginning at the specified location and having the specified length.
+ * @deprecated A legacy feature for browser compatibility
+ * @param from The starting position of the desired substring. The index of the first character in the string is zero.
+ * @param length The number of characters to include in the returned substring.
+ */
+ substr(from: number, length?: number): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): string;
+
+ readonly [index: number]: string;
+}
+
+interface StringConstructor {
+ new (value?: any): String;
+ (value?: any): string;
+ readonly prototype: String;
+ fromCharCode(...codes: number[]): string;
+}
+
+/**
+ * Allows manipulation and formatting of text strings and determination and location of substrings within strings.
+ */
+declare var String: StringConstructor;
+
+interface Boolean {
+ /** Returns the primitive value of the specified object. */
+ valueOf(): boolean;
+}
+
+interface BooleanConstructor {
+ new (value?: any): Boolean;
+ <T>(value?: T): boolean;
+ readonly prototype: Boolean;
+}
+
+declare var Boolean: BooleanConstructor;
+
+interface Number {
+ /**
+ * Returns a string representation of an object.
+ * @param radix Specifies a radix for converting numeric values to strings. This value is only used for numbers.
+ */
+ toString(radix?: number): string;
+
+ /**
+ * Returns a string representing a number in fixed-point notation.
+ * @param fractionDigits Number of digits after the decimal point. Must be in the range 0 - 20, inclusive.
+ */
+ toFixed(fractionDigits?: number): string;
+
+ /**
+ * Returns a string containing a number represented in exponential notation.
+ * @param fractionDigits Number of digits after the decimal point. Must be in the range 0 - 20, inclusive.
+ */
+ toExponential(fractionDigits?: number): string;
+
+ /**
+ * Returns a string containing a number represented either in exponential or fixed-point notation with a specified number of digits.
+ * @param precision Number of significant digits. Must be in the range 1 - 21, inclusive.
+ */
+ toPrecision(precision?: number): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): number;
+}
+
+interface NumberConstructor {
+ new (value?: any): Number;
+ (value?: any): number;
+ readonly prototype: Number;
+
+ /** The largest number that can be represented in JavaScript. Equal to approximately 1.79E+308. */
+ readonly MAX_VALUE: number;
+
+ /** The closest number to zero that can be represented in JavaScript. Equal to approximately 5.00E-324. */
+ readonly MIN_VALUE: number;
+
+ /**
+ * A value that is not a number.
+ * In equality comparisons, NaN does not equal any value, including itself. To test whether a value is equivalent to NaN, use the isNaN function.
+ */
+ readonly NaN: number;
+
+ /**
+ * A value that is less than the largest negative number that can be represented in JavaScript.
+ * JavaScript displays NEGATIVE_INFINITY values as -infinity.
+ */
+ readonly NEGATIVE_INFINITY: number;
+
+ /**
+ * A value greater than the largest number that can be represented in JavaScript.
+ * JavaScript displays POSITIVE_INFINITY values as infinity.
+ */
+ readonly POSITIVE_INFINITY: number;
+}
+
+/** An object that represents a number of any kind. All JavaScript numbers are 64-bit floating-point numbers. */
+declare var Number: NumberConstructor;
+
+interface TemplateStringsArray extends ReadonlyArray<string> {
+ readonly raw: readonly string[];
+}
+
+/**
+ * The type of \`import.meta\`.
+ *
+ * If you need to declare that a given property exists on \`import.meta\`,
+ * this type may be augmented via interface merging.
+ */
+interface ImportMeta {
+}
+
+/**
+ * The type for the optional second argument to \`import()\`.
+ *
+ * If your host environment supports additional options, this type may be
+ * augmented via interface merging.
+ */
+interface ImportCallOptions {
+ /** @deprecated*/ assert?: ImportAssertions;
+ with?: ImportAttributes;
+}
+
+/**
+ * The type for the \`assert\` property of the optional second argument to \`import()\`.
+ * @deprecated
+ */
+interface ImportAssertions {
+ [key: string]: string;
+}
+
+/**
+ * The type for the \`with\` property of the optional second argument to \`import()\`.
+ */
+interface ImportAttributes {
+ [key: string]: string;
+}
+
+interface Math {
+ /** The mathematical constant e. This is Euler's number, the base of natural logarithms. */
+ readonly E: number;
+ /** The natural logarithm of 10. */
+ readonly LN10: number;
+ /** The natural logarithm of 2. */
+ readonly LN2: number;
+ /** The base-2 logarithm of e. */
+ readonly LOG2E: number;
+ /** The base-10 logarithm of e. */
+ readonly LOG10E: number;
+ /** Pi. This is the ratio of the circumference of a circle to its diameter. */
+ readonly PI: number;
+ /** The square root of 0.5, or, equivalently, one divided by the square root of 2. */
+ readonly SQRT1_2: number;
+ /** The square root of 2. */
+ readonly SQRT2: number;
+ /**
+ * Returns the absolute value of a number (the value without regard to whether it is positive or negative).
+ * For example, the absolute value of -5 is the same as the absolute value of 5.
+ * @param x A numeric expression for which the absolute value is needed.
+ */
+ abs(x: number): number;
+ /**
+ * Returns the arc cosine (or inverse cosine) of a number.
+ * @param x A numeric expression.
+ */
+ acos(x: number): number;
+ /**
+ * Returns the arcsine of a number.
+ * @param x A numeric expression.
+ */
+ asin(x: number): number;
+ /**
+ * Returns the arctangent of a number.
+ * @param x A numeric expression for which the arctangent is needed.
+ */
+ atan(x: number): number;
+ /**
+ * Returns the angle (in radians) from the X axis to a point.
+ * @param y A numeric expression representing the cartesian y-coordinate.
+ * @param x A numeric expression representing the cartesian x-coordinate.
+ */
+ atan2(y: number, x: number): number;
+ /**
+ * Returns the smallest integer greater than or equal to its numeric argument.
+ * @param x A numeric expression.
+ */
+ ceil(x: number): number;
+ /**
+ * Returns the cosine of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ cos(x: number): number;
+ /**
+ * Returns e (the base of natural logarithms) raised to a power.
+ * @param x A numeric expression representing the power of e.
+ */
+ exp(x: number): number;
+ /**
+ * Returns the greatest integer less than or equal to its numeric argument.
+ * @param x A numeric expression.
+ */
+ floor(x: number): number;
+ /**
+ * Returns the natural logarithm (base e) of a number.
+ * @param x A numeric expression.
+ */
+ log(x: number): number;
+ /**
+ * Returns the larger of a set of supplied numeric expressions.
+ * @param values Numeric expressions to be evaluated.
+ */
+ max(...values: number[]): number;
+ /**
+ * Returns the smaller of a set of supplied numeric expressions.
+ * @param values Numeric expressions to be evaluated.
+ */
+ min(...values: number[]): number;
+ /**
+ * Returns the value of a base expression taken to a specified power.
+ * @param x The base value of the expression.
+ * @param y The exponent value of the expression.
+ */
+ pow(x: number, y: number): number;
+ /** Returns a pseudorandom number between 0 and 1. */
+ random(): number;
+ /**
+ * Returns a supplied numeric expression rounded to the nearest integer.
+ * @param x The value to be rounded to the nearest integer.
+ */
+ round(x: number): number;
+ /**
+ * Returns the sine of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ sin(x: number): number;
+ /**
+ * Returns the square root of a number.
+ * @param x A numeric expression.
+ */
+ sqrt(x: number): number;
+ /**
+ * Returns the tangent of a number.
+ * @param x A numeric expression that contains an angle measured in radians.
+ */
+ tan(x: number): number;
+}
+/** An intrinsic object that provides basic mathematics functionality and constants. */
+declare var Math: Math;
+
+/** Enables basic storage and retrieval of dates and times. */
+interface Date {
+ /** Returns a string representation of a date. The format of the string depends on the locale. */
+ toString(): string;
+ /** Returns a date as a string value. */
+ toDateString(): string;
+ /** Returns a time as a string value. */
+ toTimeString(): string;
+ /** Returns a value as a string value appropriate to the host environment's current locale. */
+ toLocaleString(): string;
+ /** Returns a date as a string value appropriate to the host environment's current locale. */
+ toLocaleDateString(): string;
+ /** Returns a time as a string value appropriate to the host environment's current locale. */
+ toLocaleTimeString(): string;
+ /** Returns the stored time value in milliseconds since midnight, January 1, 1970 UTC. */
+ valueOf(): number;
+ /** Returns the stored time value in milliseconds since midnight, January 1, 1970 UTC. */
+ getTime(): number;
+ /** Gets the year, using local time. */
+ getFullYear(): number;
+ /** Gets the year using Universal Coordinated Time (UTC). */
+ getUTCFullYear(): number;
+ /** Gets the month, using local time. */
+ getMonth(): number;
+ /** Gets the month of a Date object using Universal Coordinated Time (UTC). */
+ getUTCMonth(): number;
+ /** Gets the day-of-the-month, using local time. */
+ getDate(): number;
+ /** Gets the day-of-the-month, using Universal Coordinated Time (UTC). */
+ getUTCDate(): number;
+ /** Gets the day of the week, using local time. */
+ getDay(): number;
+ /** Gets the day of the week using Universal Coordinated Time (UTC). */
+ getUTCDay(): number;
+ /** Gets the hours in a date, using local time. */
+ getHours(): number;
+ /** Gets the hours value in a Date object using Universal Coordinated Time (UTC). */
+ getUTCHours(): number;
+ /** Gets the minutes of a Date object, using local time. */
+ getMinutes(): number;
+ /** Gets the minutes of a Date object using Universal Coordinated Time (UTC). */
+ getUTCMinutes(): number;
+ /** Gets the seconds of a Date object, using local time. */
+ getSeconds(): number;
+ /** Gets the seconds of a Date object using Universal Coordinated Time (UTC). */
+ getUTCSeconds(): number;
+ /** Gets the milliseconds of a Date, using local time. */
+ getMilliseconds(): number;
+ /** Gets the milliseconds of a Date object using Universal Coordinated Time (UTC). */
+ getUTCMilliseconds(): number;
+ /** Gets the difference in minutes between the time on the local computer and Universal Coordinated Time (UTC). */
+ getTimezoneOffset(): number;
+ /**
+ * Sets the date and time value in the Date object.
+ * @param time A numeric value representing the number of elapsed milliseconds since midnight, January 1, 1970 GMT.
+ */
+ setTime(time: number): number;
+ /**
+ * Sets the milliseconds value in the Date object using local time.
+ * @param ms A numeric value equal to the millisecond value.
+ */
+ setMilliseconds(ms: number): number;
+ /**
+ * Sets the milliseconds value in the Date object using Universal Coordinated Time (UTC).
+ * @param ms A numeric value equal to the millisecond value.
+ */
+ setUTCMilliseconds(ms: number): number;
+
+ /**
+ * Sets the seconds value in the Date object using local time.
+ * @param sec A numeric value equal to the seconds value.
+ * @param ms A numeric value equal to the milliseconds value.
+ */
+ setSeconds(sec: number, ms?: number): number;
+ /**
+ * Sets the seconds value in the Date object using Universal Coordinated Time (UTC).
+ * @param sec A numeric value equal to the seconds value.
+ * @param ms A numeric value equal to the milliseconds value.
+ */
+ setUTCSeconds(sec: number, ms?: number): number;
+ /**
+ * Sets the minutes value in the Date object using local time.
+ * @param min A numeric value equal to the minutes value.
+ * @param sec A numeric value equal to the seconds value.
+ * @param ms A numeric value equal to the milliseconds value.
+ */
+ setMinutes(min: number, sec?: number, ms?: number): number;
+ /**
+ * Sets the minutes value in the Date object using Universal Coordinated Time (UTC).
+ * @param min A numeric value equal to the minutes value.
+ * @param sec A numeric value equal to the seconds value.
+ * @param ms A numeric value equal to the milliseconds value.
+ */
+ setUTCMinutes(min: number, sec?: number, ms?: number): number;
+ /**
+ * Sets the hour value in the Date object using local time.
+ * @param hours A numeric value equal to the hours value.
+ * @param min A numeric value equal to the minutes value.
+ * @param sec A numeric value equal to the seconds value.
+ * @param ms A numeric value equal to the milliseconds value.
+ */
+ setHours(hours: number, min?: number, sec?: number, ms?: number): number;
+ /**
+ * Sets the hours value in the Date object using Universal Coordinated Time (UTC).
+ * @param hours A numeric value equal to the hours value.
+ * @param min A numeric value equal to the minutes value.
+ * @param sec A numeric value equal to the seconds value.
+ * @param ms A numeric value equal to the milliseconds value.
+ */
+ setUTCHours(hours: number, min?: number, sec?: number, ms?: number): number;
+ /**
+ * Sets the numeric day-of-the-month value of the Date object using local time.
+ * @param date A numeric value equal to the day of the month.
+ */
+ setDate(date: number): number;
+ /**
+ * Sets the numeric day of the month in the Date object using Universal Coordinated Time (UTC).
+ * @param date A numeric value equal to the day of the month.
+ */
+ setUTCDate(date: number): number;
+ /**
+ * Sets the month value in the Date object using local time.
+ * @param month A numeric value equal to the month. The value for January is 0, and other month values follow consecutively.
+ * @param date A numeric value representing the day of the month. If this value is not supplied, the value from a call to the getDate method is used.
+ */
+ setMonth(month: number, date?: number): number;
+ /**
+ * Sets the month value in the Date object using Universal Coordinated Time (UTC).
+ * @param month A numeric value equal to the month. The value for January is 0, and other month values follow consecutively.
+ * @param date A numeric value representing the day of the month. If it is not supplied, the value from a call to the getUTCDate method is used.
+ */
+ setUTCMonth(month: number, date?: number): number;
+ /**
+ * Sets the year of the Date object using local time.
+ * @param year A numeric value for the year.
+ * @param month A zero-based numeric value for the month (0 for January, 11 for December). Must be specified if numDate is specified.
+ * @param date A numeric value equal for the day of the month.
+ */
+ setFullYear(year: number, month?: number, date?: number): number;
+ /**
+ * Sets the year value in the Date object using Universal Coordinated Time (UTC).
+ * @param year A numeric value equal to the year.
+ * @param month A numeric value equal to the month. The value for January is 0, and other month values follow consecutively. Must be supplied if numDate is supplied.
+ * @param date A numeric value equal to the day of the month.
+ */
+ setUTCFullYear(year: number, month?: number, date?: number): number;
+ /** Returns a date converted to a string using Universal Coordinated Time (UTC). */
+ toUTCString(): string;
+ /** Returns a date as a string value in ISO format. */
+ toISOString(): string;
+ /** Used by the JSON.stringify method to enable the transformation of an object's data for JavaScript Object Notation (JSON) serialization. */
+ toJSON(key?: any): string;
+}
+
+interface DateConstructor {
+ new (): Date;
+ new (value: number | string): Date;
+ /**
+ * Creates a new Date.
+ * @param year The full year designation is required for cross-century date accuracy. If year is between 0 and 99 is used, then year is assumed to be 1900 + year.
+ * @param monthIndex The month as a number between 0 and 11 (January to December).
+ * @param date The date as a number between 1 and 31.
+ * @param hours Must be supplied if minutes is supplied. A number from 0 to 23 (midnight to 11pm) that specifies the hour.
+ * @param minutes Must be supplied if seconds is supplied. A number from 0 to 59 that specifies the minutes.
+ * @param seconds Must be supplied if milliseconds is supplied. A number from 0 to 59 that specifies the seconds.
+ * @param ms A number from 0 to 999 that specifies the milliseconds.
+ */
+ new (year: number, monthIndex: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): Date;
+ (): string;
+ readonly prototype: Date;
+ /**
+ * Parses a string containing a date, and returns the number of milliseconds between that date and midnight, January 1, 1970.
+ * @param s A date string
+ */
+ parse(s: string): number;
+ /**
+ * Returns the number of milliseconds between midnight, January 1, 1970 Universal Coordinated Time (UTC) (or GMT) and the specified date.
+ * @param year The full year designation is required for cross-century date accuracy. If year is between 0 and 99 is used, then year is assumed to be 1900 + year.
+ * @param monthIndex The month as a number between 0 and 11 (January to December).
+ * @param date The date as a number between 1 and 31.
+ * @param hours Must be supplied if minutes is supplied. A number from 0 to 23 (midnight to 11pm) that specifies the hour.
+ * @param minutes Must be supplied if seconds is supplied. A number from 0 to 59 that specifies the minutes.
+ * @param seconds Must be supplied if milliseconds is supplied. A number from 0 to 59 that specifies the seconds.
+ * @param ms A number from 0 to 999 that specifies the milliseconds.
+ */
+ UTC(year: number, monthIndex: number, date?: number, hours?: number, minutes?: number, seconds?: number, ms?: number): number;
+ /** Returns the number of milliseconds elapsed since midnight, January 1, 1970 Universal Coordinated Time (UTC). */
+ now(): number;
+}
+
+declare var Date: DateConstructor;
+
+interface RegExpMatchArray extends Array<string> {
+ /**
+ * The index of the search at which the result was found.
+ */
+ index?: number;
+ /**
+ * A copy of the search string.
+ */
+ input?: string;
+ /**
+ * The first match. This will always be present because \`null\` will be returned if there are no matches.
+ */
+ 0: string;
+}
+
+interface RegExpExecArray extends Array<string> {
+ /**
+ * The index of the search at which the result was found.
+ */
+ index: number;
+ /**
+ * A copy of the search string.
+ */
+ input: string;
+ /**
+ * The first match. This will always be present because \`null\` will be returned if there are no matches.
+ */
+ 0: string;
+}
+
+interface RegExp {
+ /**
+ * Executes a search on a string using a regular expression pattern, and returns an array containing the results of that search.
+ * @param string The String object or string literal on which to perform the search.
+ */
+ exec(string: string): RegExpExecArray | null;
+
+ /**
+ * Returns a Boolean value that indicates whether or not a pattern exists in a searched string.
+ * @param string String on which to perform the search.
+ */
+ test(string: string): boolean;
+
+ /** Returns a copy of the text of the regular expression pattern. Read-only. The regExp argument is a Regular expression object. It can be a variable name or a literal. */
+ readonly source: string;
+
+ /** Returns a Boolean value indicating the state of the global flag (g) used with a regular expression. Default is false. Read-only. */
+ readonly global: boolean;
+
+ /** Returns a Boolean value indicating the state of the ignoreCase flag (i) used with a regular expression. Default is false. Read-only. */
+ readonly ignoreCase: boolean;
+
+ /** Returns a Boolean value indicating the state of the multiline flag (m) used with a regular expression. Default is false. Read-only. */
+ readonly multiline: boolean;
+
+ lastIndex: number;
+
+ // Non-standard extensions
+ /** @deprecated A legacy feature for browser compatibility */
+ compile(pattern: string, flags?: string): this;
+}
+
+interface RegExpConstructor {
+ new (pattern: RegExp | string): RegExp;
+ new (pattern: string, flags?: string): RegExp;
+ (pattern: RegExp | string): RegExp;
+ (pattern: string, flags?: string): RegExp;
+ readonly "prototype": RegExp;
+
+ // Non-standard extensions
+ /** @deprecated A legacy feature for browser compatibility */
+ "$1": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$2": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$3": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$4": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$5": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$6": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$7": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$8": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$9": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "input": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$_": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "lastMatch": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$&": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "lastParen": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$+": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "leftContext": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$\`": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "rightContext": string;
+ /** @deprecated A legacy feature for browser compatibility */
+ "$'": string;
+}
+
+declare var RegExp: RegExpConstructor;
+
+interface Error {
+ name: string;
+ message: string;
+ stack?: string;
+}
+
+interface ErrorConstructor {
+ new (message?: string): Error;
+ (message?: string): Error;
+ readonly prototype: Error;
+}
+
+declare var Error: ErrorConstructor;
+
+interface EvalError extends Error {
+}
+
+interface EvalErrorConstructor extends ErrorConstructor {
+ new (message?: string): EvalError;
+ (message?: string): EvalError;
+ readonly prototype: EvalError;
+}
+
+declare var EvalError: EvalErrorConstructor;
+
+interface RangeError extends Error {
+}
+
+interface RangeErrorConstructor extends ErrorConstructor {
+ new (message?: string): RangeError;
+ (message?: string): RangeError;
+ readonly prototype: RangeError;
+}
+
+declare var RangeError: RangeErrorConstructor;
+
+interface ReferenceError extends Error {
+}
+
+interface ReferenceErrorConstructor extends ErrorConstructor {
+ new (message?: string): ReferenceError;
+ (message?: string): ReferenceError;
+ readonly prototype: ReferenceError;
+}
+
+declare var ReferenceError: ReferenceErrorConstructor;
+
+interface SyntaxError extends Error {
+}
+
+interface SyntaxErrorConstructor extends ErrorConstructor {
+ new (message?: string): SyntaxError;
+ (message?: string): SyntaxError;
+ readonly prototype: SyntaxError;
+}
+
+declare var SyntaxError: SyntaxErrorConstructor;
+
+interface TypeError extends Error {
+}
+
+interface TypeErrorConstructor extends ErrorConstructor {
+ new (message?: string): TypeError;
+ (message?: string): TypeError;
+ readonly prototype: TypeError;
+}
+
+declare var TypeError: TypeErrorConstructor;
+
+interface URIError extends Error {
+}
+
+interface URIErrorConstructor extends ErrorConstructor {
+ new (message?: string): URIError;
+ (message?: string): URIError;
+ readonly prototype: URIError;
+}
+
+declare var URIError: URIErrorConstructor;
+
+interface JSON {
+ /**
+ * Converts a JavaScript Object Notation (JSON) string into an object.
+ * @param text A valid JSON string.
+ * @param reviver A function that transforms the results. This function is called for each member of the object.
+ * If a member contains nested objects, the nested objects are transformed before the parent object is.
+ */
+ parse(text: string, reviver?: (this: any, key: string, value: any) => any): any;
+ /**
+ * Converts a JavaScript value to a JavaScript Object Notation (JSON) string.
+ * @param value A JavaScript value, usually an object or array, to be converted.
+ * @param replacer A function that transforms the results.
+ * @param space Adds indentation, white space, and line break characters to the return-value JSON text to make it easier to read.
+ */
+ stringify(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
+ /**
+ * Converts a JavaScript value to a JavaScript Object Notation (JSON) string.
+ * @param value A JavaScript value, usually an object or array, to be converted.
+ * @param replacer An array of strings and numbers that acts as an approved list for selecting the object properties that will be stringified.
+ * @param space Adds indentation, white space, and line break characters to the return-value JSON text to make it easier to read.
+ */
+ stringify(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
+}
+
+/**
+ * An intrinsic object that provides functions to convert JavaScript values to and from the JavaScript Object Notation (JSON) format.
+ */
+declare var JSON: JSON;
+
+/////////////////////////////
+/// ECMAScript Array API (specially handled by compiler)
+/////////////////////////////
+
+interface ReadonlyArray<T> {
+ /**
+ * Gets the length of the array. This is a number one higher than the highest element defined in an array.
+ */
+ readonly length: number;
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+ /**
+ * Returns a string representation of an array. The elements are converted to string using their toLocaleString methods.
+ */
+ toLocaleString(): string;
+ /**
+ * Combines two or more arrays.
+ * @param items Additional items to add to the end of array1.
+ */
+ concat(...items: ConcatArray<T>[]): T[];
+ /**
+ * Combines two or more arrays.
+ * @param items Additional items to add to the end of array1.
+ */
+ concat(...items: (T | ConcatArray<T>)[]): T[];
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): T[];
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0.
+ */
+ indexOf(searchElement: T, fromIndex?: number): number;
+ /**
+ * Returns the index of the last occurrence of a specified value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the search starts at the last index in the array.
+ */
+ lastIndexOf(searchElement: T, fromIndex?: number): number;
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every<S extends T>(predicate: (value: T, index: number, array: readonly T[]) => value is S, thisArg?: any): this is readonly S[];
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: T, index: number, array: readonly T[]) => unknown, thisArg?: any): boolean;
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: T, index: number, array: readonly T[]) => unknown, thisArg?: any): boolean;
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: T, index: number, array: readonly T[]) => void, thisArg?: any): void;
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
+ */
+ map<U>(callbackfn: (value: T, index: number, array: readonly T[]) => U, thisArg?: any): U[];
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value.
+ */
+ filter<S extends T>(predicate: (value: T, index: number, array: readonly T[]) => value is S, thisArg?: any): S[];
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: T, index: number, array: readonly T[]) => unknown, thisArg?: any): T[];
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: readonly T[]) => T): T;
+ reduce(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: readonly T[]) => T, initialValue: T): T;
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: readonly T[]) => U, initialValue: U): U;
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: readonly T[]) => T): T;
+ reduceRight(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: readonly T[]) => T, initialValue: T): T;
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: readonly T[]) => U, initialValue: U): U;
+
+ readonly [n: number]: T;
+}
+
+interface ConcatArray<T> {
+ readonly length: number;
+ readonly [n: number]: T;
+ join(separator?: string): string;
+ slice(start?: number, end?: number): T[];
+}
+
+interface Array<T> {
+ /**
+ * Gets or sets the length of the array. This is a number one higher than the highest index in the array.
+ */
+ length: number;
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+ /**
+ * Returns a string representation of an array. The elements are converted to string using their toLocaleString methods.
+ */
+ toLocaleString(): string;
+ /**
+ * Removes the last element from an array and returns it.
+ * If the array is empty, undefined is returned and the array is not modified.
+ */
+ pop(): T | undefined;
+ /**
+ * Appends new elements to the end of an array, and returns the new length of the array.
+ * @param items New elements to add to the array.
+ */
+ push(...items: T[]): number;
+ /**
+ * Combines two or more arrays.
+ * This method returns a new array without modifying any existing arrays.
+ * @param items Additional arrays and/or items to add to the end of the array.
+ */
+ concat(...items: ConcatArray<T>[]): T[];
+ /**
+ * Combines two or more arrays.
+ * This method returns a new array without modifying any existing arrays.
+ * @param items Additional arrays and/or items to add to the end of the array.
+ */
+ concat(...items: (T | ConcatArray<T>)[]): T[];
+ /**
+ * Adds all the elements of an array into a string, separated by the specified separator string.
+ * @param separator A string used to separate one element of the array from the next in the resulting string. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+ /**
+ * Reverses the elements in an array in place.
+ * This method mutates the array and returns a reference to the same array.
+ */
+ reverse(): T[];
+ /**
+ * Removes the first element from an array and returns it.
+ * If the array is empty, undefined is returned and the array is not modified.
+ */
+ shift(): T | undefined;
+ /**
+ * Returns a copy of a section of an array.
+ * For both start and end, a negative index can be used to indicate an offset from the end of the array.
+ * For example, -2 refers to the second to last element of the array.
+ * @param start The beginning index of the specified portion of the array.
+ * If start is undefined, then the slice begins at index 0.
+ * @param end The end index of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ * If end is undefined, then the slice extends to the end of the array.
+ */
+ slice(start?: number, end?: number): T[];
+ /**
+ * Sorts an array in place.
+ * This method mutates the array and returns a reference to the same array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if the first argument is less than the second argument, zero if they're equal, and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending, ASCII character order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: T, b: T) => number): this;
+ /**
+ * Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.
+ * @param start The zero-based location in the array from which to start removing elements.
+ * @param deleteCount The number of elements to remove.
+ * @returns An array containing the elements that were deleted.
+ */
+ splice(start: number, deleteCount?: number): T[];
+ /**
+ * Removes elements from an array and, if necessary, inserts new elements in their place, returning the deleted elements.
+ * @param start The zero-based location in the array from which to start removing elements.
+ * @param deleteCount The number of elements to remove.
+ * @param items Elements to insert into the array in place of the deleted elements.
+ * @returns An array containing the elements that were deleted.
+ */
+ splice(start: number, deleteCount: number, ...items: T[]): T[];
+ /**
+ * Inserts new elements at the start of an array, and returns the new length of the array.
+ * @param items Elements to insert at the start of the array.
+ */
+ unshift(...items: T[]): number;
+ /**
+ * Returns the index of the first occurrence of a value in an array, or -1 if it is not present.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the search starts at index 0.
+ */
+ indexOf(searchElement: T, fromIndex?: number): number;
+ /**
+ * Returns the index of the last occurrence of a specified value in an array, or -1 if it is not present.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin searching backward. If fromIndex is omitted, the search starts at the last index in the array.
+ */
+ lastIndexOf(searchElement: T, fromIndex?: number): number;
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every<S extends T>(predicate: (value: T, index: number, array: T[]) => value is S, thisArg?: any): this is S[];
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): boolean;
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): boolean;
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: T, index: number, array: T[]) => void, thisArg?: any): void;
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function. If thisArg is omitted, undefined is used as the this value.
+ */
+ map<U>(callbackfn: (value: T, index: number, array: T[]) => U, thisArg?: any): U[];
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value.
+ */
+ filter<S extends T>(predicate: (value: T, index: number, array: T[]) => value is S, thisArg?: any): S[];
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function. If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: T, index: number, array: T[]) => unknown, thisArg?: any): T[];
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T): T;
+ reduce(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue: T): T;
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U, initialValue: U): U;
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T): T;
+ reduceRight(callbackfn: (previousValue: T, currentValue: T, currentIndex: number, array: T[]) => T, initialValue: T): T;
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order. The return value of the callback function is the accumulated result, and is provided as an argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start the accumulation. The first call to the callbackfn function provides this value as an argument instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: T, currentIndex: number, array: T[]) => U, initialValue: U): U;
+
+ [n: number]: T;
+}
+
+interface ArrayConstructor {
+ new (arrayLength?: number): any[];
+ new <T>(arrayLength: number): T[];
+ new <T>(...items: T[]): T[];
+ (arrayLength?: number): any[];
+ <T>(arrayLength: number): T[];
+ <T>(...items: T[]): T[];
+ isArray(arg: any): arg is any[];
+ readonly prototype: any[];
+}
+
+declare var Array: ArrayConstructor;
+
+interface TypedPropertyDescriptor<T> {
+ enumerable?: boolean;
+ configurable?: boolean;
+ writable?: boolean;
+ value?: T;
+ get?: () => T;
+ set?: (value: T) => void;
+}
+
+declare type PromiseConstructorLike = new <T>(executor: (resolve: (value: T | PromiseLike<T>) => void, reject: (reason?: any) => void) => void) => PromiseLike<T>;
+
+interface PromiseLike<T> {
+ /**
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
+ * @param onfulfilled The callback to execute when the Promise is resolved.
+ * @param onrejected The callback to execute when the Promise is rejected.
+ * @returns A Promise for the completion of which ever callback is executed.
+ */
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): PromiseLike<TResult1 | TResult2>;
+}
+
+/**
+ * Represents the completion of an asynchronous operation
+ */
+interface Promise<T> {
+ /**
+ * Attaches callbacks for the resolution and/or rejection of the Promise.
+ * @param onfulfilled The callback to execute when the Promise is resolved.
+ * @param onrejected The callback to execute when the Promise is rejected.
+ * @returns A Promise for the completion of which ever callback is executed.
+ */
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): Promise<TResult1 | TResult2>;
+
+ /**
+ * Attaches a callback for only the rejection of the Promise.
+ * @param onrejected The callback to execute when the Promise is rejected.
+ * @returns A Promise for the completion of the callback.
+ */
+ catch<TResult = never>(onrejected?: ((reason: any) => TResult | PromiseLike<TResult>) | undefined | null): Promise<T | TResult>;
+}
+
+/**
+ * Recursively unwraps the "awaited type" of a type. Non-promise "thenables" should resolve to \`never\`. This emulates the behavior of \`await\`.
+ */
+type Awaited<T> = T extends null | undefined ? T : // special case for \`null | undefined\` when not in \`--strictNullChecks\` mode
+ T extends object & { then(onfulfilled: infer F, ...args: infer _): any; } ? // \`await\` only unwraps object types with a callable \`then\`. Non-object types are not unwrapped
+ F extends ((value: infer V, ...args: infer _) => any) ? // if the argument to \`then\` is callable, extracts the first argument
+ Awaited<V> : // recursively unwrap the value
+ never : // the argument to \`then\` was not callable
+ T; // non-object or non-thenable
+
+interface ArrayLike<T> {
+ readonly length: number;
+ readonly [n: number]: T;
+}
+
+/**
+ * Make all properties in T optional
+ */
+type Partial<T> = {
+ [P in keyof T]?: T[P];
+};
+
+/**
+ * Make all properties in T required
+ */
+type Required<T> = {
+ [P in keyof T]-?: T[P];
+};
+
+/**
+ * Make all properties in T readonly
+ */
+type Readonly<T> = {
+ readonly [P in keyof T]: T[P];
+};
+
+/**
+ * From T, pick a set of properties whose keys are in the union K
+ */
+type Pick<T, K extends keyof T> = {
+ [P in K]: T[P];
+};
+
+/**
+ * Construct a type with a set of properties K of type T
+ */
+type Record<K extends keyof any, T> = {
+ [P in K]: T;
+};
+
+/**
+ * Exclude from T those types that are assignable to U
+ */
+type Exclude<T, U> = T extends U ? never : T;
+
+/**
+ * Extract from T those types that are assignable to U
+ */
+type Extract<T, U> = T extends U ? T : never;
+
+/**
+ * Construct a type with the properties of T except for those in type K.
+ */
+type Omit<T, K extends keyof any> = Pick<T, Exclude<keyof T, K>>;
+
+/**
+ * Exclude null and undefined from T
+ */
+type NonNullable<T> = T & {};
+
+/**
+ * Obtain the parameters of a function type in a tuple
+ */
+type Parameters<T extends (...args: any) => any> = T extends (...args: infer P) => any ? P : never;
+
+/**
+ * Obtain the parameters of a constructor function type in a tuple
+ */
+type ConstructorParameters<T extends abstract new (...args: any) => any> = T extends abstract new (...args: infer P) => any ? P : never;
+
+/**
+ * Obtain the return type of a function type
+ */
+type ReturnType<T extends (...args: any) => any> = T extends (...args: any) => infer R ? R : any;
+
+/**
+ * Obtain the return type of a constructor function type
+ */
+type InstanceType<T extends abstract new (...args: any) => any> = T extends abstract new (...args: any) => infer R ? R : any;
+
+/**
+ * Convert string literal type to uppercase
+ */
+type Uppercase<S extends string> = intrinsic;
+
+/**
+ * Convert string literal type to lowercase
+ */
+type Lowercase<S extends string> = intrinsic;
+
+/**
+ * Convert first character of string literal type to uppercase
+ */
+type Capitalize<S extends string> = intrinsic;
+
+/**
+ * Convert first character of string literal type to lowercase
+ */
+type Uncapitalize<S extends string> = intrinsic;
+
+/**
+ * Marker for non-inference type position
+ */
+type NoInfer<T> = intrinsic;
+
+/**
+ * Marker for contextual 'this' type
+ */
+interface ThisType<T> {}
+
+/**
+ * Stores types to be used with WeakSet, WeakMap, WeakRef, and FinalizationRegistry
+ */
+interface WeakKeyTypes {
+ object: object;
+}
+
+type WeakKey = WeakKeyTypes[keyof WeakKeyTypes];
+
+/**
+ * Represents a raw buffer of binary data, which is used to store data for the
+ * different typed arrays. ArrayBuffers cannot be read from or written to directly,
+ * but can be passed to a typed array or DataView Object to interpret the raw
+ * buffer as needed.
+ */
+interface ArrayBuffer {
+ /**
+ * Read-only. The length of the ArrayBuffer (in bytes).
+ */
+ readonly byteLength: number;
+
+ /**
+ * Returns a section of an ArrayBuffer.
+ */
+ slice(begin: number, end?: number): ArrayBuffer;
+}
+
+/**
+ * Allowed ArrayBuffer types for the buffer of an ArrayBufferView and related Typed Arrays.
+ */
+interface ArrayBufferTypes {
+ ArrayBuffer: ArrayBuffer;
+}
+type ArrayBufferLike = ArrayBufferTypes[keyof ArrayBufferTypes];
+
+interface ArrayBufferConstructor {
+ readonly prototype: ArrayBuffer;
+ new (byteLength: number): ArrayBuffer;
+ isView(arg: any): arg is ArrayBufferView;
+}
+declare var ArrayBuffer: ArrayBufferConstructor;
+
+interface ArrayBufferView {
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ byteOffset: number;
+}
+
+interface DataView {
+ readonly buffer: ArrayBuffer;
+ readonly byteLength: number;
+ readonly byteOffset: number;
+ /**
+ * Gets the Float32 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getFloat32(byteOffset: number, littleEndian?: boolean): number;
+
+ /**
+ * Gets the Float64 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getFloat64(byteOffset: number, littleEndian?: boolean): number;
+
+ /**
+ * Gets the Int8 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ */
+ getInt8(byteOffset: number): number;
+
+ /**
+ * Gets the Int16 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getInt16(byteOffset: number, littleEndian?: boolean): number;
+ /**
+ * Gets the Int32 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getInt32(byteOffset: number, littleEndian?: boolean): number;
+
+ /**
+ * Gets the Uint8 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ */
+ getUint8(byteOffset: number): number;
+
+ /**
+ * Gets the Uint16 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getUint16(byteOffset: number, littleEndian?: boolean): number;
+
+ /**
+ * Gets the Uint32 value at the specified byte offset from the start of the view. There is
+ * no alignment constraint; multi-byte values may be fetched from any offset.
+ * @param byteOffset The place in the buffer at which the value should be retrieved.
+ * @param littleEndian If false or undefined, a big-endian value should be read.
+ */
+ getUint32(byteOffset: number, littleEndian?: boolean): number;
+
+ /**
+ * Stores an Float32 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setFloat32(byteOffset: number, value: number, littleEndian?: boolean): void;
+
+ /**
+ * Stores an Float64 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setFloat64(byteOffset: number, value: number, littleEndian?: boolean): void;
+
+ /**
+ * Stores an Int8 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ */
+ setInt8(byteOffset: number, value: number): void;
+
+ /**
+ * Stores an Int16 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setInt16(byteOffset: number, value: number, littleEndian?: boolean): void;
+
+ /**
+ * Stores an Int32 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setInt32(byteOffset: number, value: number, littleEndian?: boolean): void;
+
+ /**
+ * Stores an Uint8 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ */
+ setUint8(byteOffset: number, value: number): void;
+
+ /**
+ * Stores an Uint16 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setUint16(byteOffset: number, value: number, littleEndian?: boolean): void;
+
+ /**
+ * Stores an Uint32 value at the specified byte offset from the start of the view.
+ * @param byteOffset The place in the buffer at which the value should be set.
+ * @param value The value to set.
+ * @param littleEndian If false or undefined, a big-endian value should be written.
+ */
+ setUint32(byteOffset: number, value: number, littleEndian?: boolean): void;
+}
+
+interface DataViewConstructor {
+ readonly prototype: DataView;
+ new (buffer: ArrayBufferLike & { BYTES_PER_ELEMENT?: never; }, byteOffset?: number, byteLength?: number): DataView;
+}
+declare var DataView: DataViewConstructor;
+
+/**
+ * A typed array of 8-bit integer values. The contents are initialized to 0. If the requested
+ * number of bytes could not be allocated an exception is raised.
+ */
+interface Int8Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Int8Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Int8Array) => any, thisArg?: any): Int8Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Int8Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Int8Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Int8Array) => void, thisArg?: any): void;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Int8Array) => number, thisArg?: any): Int8Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Int8Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int8Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Int8Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Int8Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Int8Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Int8Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Int8Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Int8Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Int8Array;
+
+ [index: number]: number;
+}
+interface Int8ArrayConstructor {
+ readonly prototype: Int8Array;
+ new (length: number): Int8Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Int8Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Int8Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Int8Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Int8Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Int8Array;
+}
+declare var Int8Array: Int8ArrayConstructor;
+
+/**
+ * A typed array of 8-bit unsigned integer values. The contents are initialized to 0. If the
+ * requested number of bytes could not be allocated an exception is raised.
+ */
+interface Uint8Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Uint8Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Uint8Array) => any, thisArg?: any): Uint8Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Uint8Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Uint8Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Uint8Array) => void, thisArg?: any): void;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Uint8Array) => number, thisArg?: any): Uint8Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint8Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint8Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Uint8Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Uint8Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Uint8Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Uint8Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Uint8Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Uint8Array;
+
+ [index: number]: number;
+}
+
+interface Uint8ArrayConstructor {
+ readonly prototype: Uint8Array;
+ new (length: number): Uint8Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Uint8Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Uint8Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Uint8Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Uint8Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Uint8Array;
+}
+declare var Uint8Array: Uint8ArrayConstructor;
+
+/**
+ * A typed array of 8-bit unsigned integer (clamped) values. The contents are initialized to 0.
+ * If the requested number of bytes could not be allocated an exception is raised.
+ */
+interface Uint8ClampedArray {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Uint8ClampedArray) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Uint8ClampedArray) => any, thisArg?: any): Uint8ClampedArray;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Uint8ClampedArray) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Uint8ClampedArray) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Uint8ClampedArray) => void, thisArg?: any): void;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Uint8ClampedArray) => number, thisArg?: any): Uint8ClampedArray;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint8ClampedArray) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Uint8ClampedArray;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Uint8ClampedArray;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Uint8ClampedArray) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Uint8ClampedArray view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Uint8ClampedArray;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Uint8ClampedArray;
+
+ [index: number]: number;
+}
+
+interface Uint8ClampedArrayConstructor {
+ readonly prototype: Uint8ClampedArray;
+ new (length: number): Uint8ClampedArray;
+ new (array: ArrayLike<number> | ArrayBufferLike): Uint8ClampedArray;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Uint8ClampedArray;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Uint8ClampedArray;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Uint8ClampedArray;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Uint8ClampedArray;
+}
+declare var Uint8ClampedArray: Uint8ClampedArrayConstructor;
+
+/**
+ * A typed array of 16-bit signed integer values. The contents are initialized to 0. If the
+ * requested number of bytes could not be allocated an exception is raised.
+ */
+interface Int16Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Int16Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Int16Array) => any, thisArg?: any): Int16Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Int16Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Int16Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Int16Array) => void, thisArg?: any): void;
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Int16Array) => number, thisArg?: any): Int16Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Int16Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int16Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Int16Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Int16Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Int16Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Int16Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Int16Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Int16Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Int16Array;
+
+ [index: number]: number;
+}
+
+interface Int16ArrayConstructor {
+ readonly prototype: Int16Array;
+ new (length: number): Int16Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Int16Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Int16Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Int16Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Int16Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Int16Array;
+}
+declare var Int16Array: Int16ArrayConstructor;
+
+/**
+ * A typed array of 16-bit unsigned integer values. The contents are initialized to 0. If the
+ * requested number of bytes could not be allocated an exception is raised.
+ */
+interface Uint16Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Uint16Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Uint16Array) => any, thisArg?: any): Uint16Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Uint16Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Uint16Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Uint16Array) => void, thisArg?: any): void;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Uint16Array) => number, thisArg?: any): Uint16Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint16Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint16Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint16Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Uint16Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Uint16Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Uint16Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Uint16Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Uint16Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Uint16Array;
+
+ [index: number]: number;
+}
+
+interface Uint16ArrayConstructor {
+ readonly prototype: Uint16Array;
+ new (length: number): Uint16Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Uint16Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Uint16Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Uint16Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Uint16Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Uint16Array;
+}
+declare var Uint16Array: Uint16ArrayConstructor;
+/**
+ * A typed array of 32-bit signed integer values. The contents are initialized to 0. If the
+ * requested number of bytes could not be allocated an exception is raised.
+ */
+interface Int32Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Int32Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Int32Array) => any, thisArg?: any): Int32Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Int32Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Int32Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Int32Array) => void, thisArg?: any): void;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Int32Array) => number, thisArg?: any): Int32Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Int32Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Int32Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Int32Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Int32Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Int32Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Int32Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Int32Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Int32Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Int32Array;
+
+ [index: number]: number;
+}
+
+interface Int32ArrayConstructor {
+ readonly prototype: Int32Array;
+ new (length: number): Int32Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Int32Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Int32Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Int32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Int32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Int32Array;
+}
+declare var Int32Array: Int32ArrayConstructor;
+
+/**
+ * A typed array of 32-bit unsigned integer values. The contents are initialized to 0. If the
+ * requested number of bytes could not be allocated an exception is raised.
+ */
+interface Uint32Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Uint32Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Uint32Array) => any, thisArg?: any): Uint32Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Uint32Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Uint32Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Uint32Array) => void, thisArg?: any): void;
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Uint32Array) => number, thisArg?: any): Uint32Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint32Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Uint32Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Uint32Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Uint32Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Uint32Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Uint32Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Uint32Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Uint32Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Uint32Array;
+
+ [index: number]: number;
+}
+
+interface Uint32ArrayConstructor {
+ readonly prototype: Uint32Array;
+ new (length: number): Uint32Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Uint32Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Uint32Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Uint32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Uint32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Uint32Array;
+}
+declare var Uint32Array: Uint32ArrayConstructor;
+
+/**
+ * A typed array of 32-bit float values. The contents are initialized to 0. If the requested number
+ * of bytes could not be allocated an exception is raised.
+ */
+interface Float32Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Float32Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Float32Array) => any, thisArg?: any): Float32Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Float32Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Float32Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Float32Array) => void, thisArg?: any): void;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Float32Array) => number, thisArg?: any): Float32Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Float32Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float32Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Float32Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Float32Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Float32Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Float32Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Float32Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Float32Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Float32Array;
+
+ [index: number]: number;
+}
+
+interface Float32ArrayConstructor {
+ readonly prototype: Float32Array;
+ new (length: number): Float32Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Float32Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Float32Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Float32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Float32Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Float32Array;
+}
+declare var Float32Array: Float32ArrayConstructor;
+
+/**
+ * A typed array of 64-bit float values. The contents are initialized to 0. If the requested
+ * number of bytes could not be allocated an exception is raised.
+ */
+interface Float64Array {
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * The ArrayBuffer instance referenced by the array.
+ */
+ readonly buffer: ArrayBufferLike;
+
+ /**
+ * The length in bytes of the array.
+ */
+ readonly byteLength: number;
+
+ /**
+ * The offset in bytes of the array.
+ */
+ readonly byteOffset: number;
+
+ /**
+ * Returns the this object after copying a section of the array identified by start and end
+ * to the same array starting at position target
+ * @param target If target is negative, it is treated as length+target where length is the
+ * length of the array.
+ * @param start If start is negative, it is treated as length+start. If end is negative, it
+ * is treated as length+end.
+ * @param end If not specified, length of the this object is used as its default value.
+ */
+ copyWithin(target: number, start: number, end?: number): this;
+
+ /**
+ * Determines whether all the members of an array satisfy the specified test.
+ * @param predicate A function that accepts up to three arguments. The every method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value false, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ every(predicate: (value: number, index: number, array: Float64Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Changes all array elements from \`start\` to \`end\` index to a static \`value\` and returns the modified array
+ * @param value value to fill array section with
+ * @param start index to start filling the array at. If start is negative, it is treated as
+ * length+start where length is the length of the array.
+ * @param end index to stop filling the array at. If end is negative, it is treated as
+ * length+end.
+ */
+ fill(value: number, start?: number, end?: number): this;
+
+ /**
+ * Returns the elements of an array that meet the condition specified in a callback function.
+ * @param predicate A function that accepts up to three arguments. The filter method calls
+ * the predicate function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ filter(predicate: (value: number, index: number, array: Float64Array) => any, thisArg?: any): Float64Array;
+
+ /**
+ * Returns the value of the first element in the array where predicate is true, and undefined
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found, find
+ * immediately returns that element value. Otherwise, find returns undefined.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ find(predicate: (value: number, index: number, obj: Float64Array) => boolean, thisArg?: any): number | undefined;
+
+ /**
+ * Returns the index of the first element in the array where predicate is true, and -1
+ * otherwise.
+ * @param predicate find calls predicate once for each element of the array, in ascending
+ * order, until it finds one where predicate returns true. If such an element is found,
+ * findIndex immediately returns that element index. Otherwise, findIndex returns -1.
+ * @param thisArg If provided, it will be used as the this value for each invocation of
+ * predicate. If it is not provided, undefined is used instead.
+ */
+ findIndex(predicate: (value: number, index: number, obj: Float64Array) => boolean, thisArg?: any): number;
+
+ /**
+ * Performs the specified action for each element in an array.
+ * @param callbackfn A function that accepts up to three arguments. forEach calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ forEach(callbackfn: (value: number, index: number, array: Float64Array) => void, thisArg?: any): void;
+
+ /**
+ * Returns the index of the first occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ indexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * Adds all the elements of an array separated by the specified separator string.
+ * @param separator A string used to separate one element of an array from the next in the
+ * resulting String. If omitted, the array elements are separated with a comma.
+ */
+ join(separator?: string): string;
+
+ /**
+ * Returns the index of the last occurrence of a value in an array.
+ * @param searchElement The value to locate in the array.
+ * @param fromIndex The array index at which to begin the search. If fromIndex is omitted, the
+ * search starts at index 0.
+ */
+ lastIndexOf(searchElement: number, fromIndex?: number): number;
+
+ /**
+ * The length of the array.
+ */
+ readonly length: number;
+
+ /**
+ * Calls a defined callback function on each element of an array, and returns an array that
+ * contains the results.
+ * @param callbackfn A function that accepts up to three arguments. The map method calls the
+ * callbackfn function one time for each element in the array.
+ * @param thisArg An object to which the this keyword can refer in the callbackfn function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ map(callbackfn: (value: number, index: number, array: Float64Array) => number, thisArg?: any): Float64Array;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number): number;
+ reduce(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array. The return value of
+ * the callback function is the accumulated result, and is provided as an argument in the next
+ * call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduce method calls the
+ * callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduce<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Float64Array) => U, initialValue: U): U;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an
+ * argument instead of an array value.
+ */
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number): number;
+ reduceRight(callbackfn: (previousValue: number, currentValue: number, currentIndex: number, array: Float64Array) => number, initialValue: number): number;
+
+ /**
+ * Calls the specified callback function for all the elements in an array, in descending order.
+ * The return value of the callback function is the accumulated result, and is provided as an
+ * argument in the next call to the callback function.
+ * @param callbackfn A function that accepts up to four arguments. The reduceRight method calls
+ * the callbackfn function one time for each element in the array.
+ * @param initialValue If initialValue is specified, it is used as the initial value to start
+ * the accumulation. The first call to the callbackfn function provides this value as an argument
+ * instead of an array value.
+ */
+ reduceRight<U>(callbackfn: (previousValue: U, currentValue: number, currentIndex: number, array: Float64Array) => U, initialValue: U): U;
+
+ /**
+ * Reverses the elements in an Array.
+ */
+ reverse(): Float64Array;
+
+ /**
+ * Sets a value or an array of values.
+ * @param array A typed or untyped array of values to set.
+ * @param offset The index in the current array at which the values are to be written.
+ */
+ set(array: ArrayLike<number>, offset?: number): void;
+
+ /**
+ * Returns a section of an array.
+ * @param start The beginning of the specified portion of the array.
+ * @param end The end of the specified portion of the array. This is exclusive of the element at the index 'end'.
+ */
+ slice(start?: number, end?: number): Float64Array;
+
+ /**
+ * Determines whether the specified callback function returns true for any element of an array.
+ * @param predicate A function that accepts up to three arguments. The some method calls
+ * the predicate function for each element in the array until the predicate returns a value
+ * which is coercible to the Boolean value true, or until the end of the array.
+ * @param thisArg An object to which the this keyword can refer in the predicate function.
+ * If thisArg is omitted, undefined is used as the this value.
+ */
+ some(predicate: (value: number, index: number, array: Float64Array) => unknown, thisArg?: any): boolean;
+
+ /**
+ * Sorts an array.
+ * @param compareFn Function used to determine the order of the elements. It is expected to return
+ * a negative value if first argument is less than second argument, zero if they're equal and a positive
+ * value otherwise. If omitted, the elements are sorted in ascending order.
+ * \`\`\`ts
+ * [11,2,22,1].sort((a, b) => a - b)
+ * \`\`\`
+ */
+ sort(compareFn?: (a: number, b: number) => number): this;
+
+ /**
+ * Gets a new Float64Array view of the ArrayBuffer store for this array, referencing the elements
+ * at begin, inclusive, up to end, exclusive.
+ * @param begin The index of the beginning of the array.
+ * @param end The index of the end of the array.
+ */
+ subarray(begin?: number, end?: number): Float64Array;
+
+ /**
+ * Converts a number to a string by using the current locale.
+ */
+ toLocaleString(): string;
+
+ /**
+ * Returns a string representation of an array.
+ */
+ toString(): string;
+
+ /** Returns the primitive value of the specified object. */
+ valueOf(): Float64Array;
+
+ [index: number]: number;
+}
+
+interface Float64ArrayConstructor {
+ readonly prototype: Float64Array;
+ new (length: number): Float64Array;
+ new (array: ArrayLike<number> | ArrayBufferLike): Float64Array;
+ new (buffer: ArrayBufferLike, byteOffset?: number, length?: number): Float64Array;
+
+ /**
+ * The size in bytes of each element in the array.
+ */
+ readonly BYTES_PER_ELEMENT: number;
+
+ /**
+ * Returns a new array from a set of elements.
+ * @param items A set of elements to include in the new array object.
+ */
+ of(...items: number[]): Float64Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ */
+ from(arrayLike: ArrayLike<number>): Float64Array;
+
+ /**
+ * Creates an array from an array-like or iterable object.
+ * @param arrayLike An array-like or iterable object to convert to an array.
+ * @param mapfn A mapping function to call on every element of the array.
+ * @param thisArg Value of 'this' used to invoke the mapfn.
+ */
+ from<T>(arrayLike: ArrayLike<T>, mapfn: (v: T, k: number) => number, thisArg?: any): Float64Array;
+}
+declare var Float64Array: Float64ArrayConstructor;
+
+/////////////////////////////
+/// ECMAScript Internationalization API
+/////////////////////////////
+
+declare namespace Intl {
+ interface CollatorOptions {
+ usage?: "sort" | "search" | undefined;
+ localeMatcher?: "lookup" | "best fit" | undefined;
+ numeric?: boolean | undefined;
+ caseFirst?: "upper" | "lower" | "false" | undefined;
+ sensitivity?: "base" | "accent" | "case" | "variant" | undefined;
+ collation?: "big5han" | "compat" | "dict" | "direct" | "ducet" | "emoji" | "eor" | "gb2312" | "phonebk" | "phonetic" | "pinyin" | "reformed" | "searchjl" | "stroke" | "trad" | "unihan" | "zhuyin" | undefined;
+ ignorePunctuation?: boolean | undefined;
+ }
+
+ interface ResolvedCollatorOptions {
+ locale: string;
+ usage: string;
+ sensitivity: string;
+ ignorePunctuation: boolean;
+ collation: string;
+ caseFirst: string;
+ numeric: boolean;
+ }
+
+ interface Collator {
+ compare(x: string, y: string): number;
+ resolvedOptions(): ResolvedCollatorOptions;
+ }
+
+ interface CollatorConstructor {
+ new (locales?: string | string[], options?: CollatorOptions): Collator;
+ (locales?: string | string[], options?: CollatorOptions): Collator;
+ supportedLocalesOf(locales: string | string[], options?: CollatorOptions): string[];
+ }
+
+ var Collator: CollatorConstructor;
+
+ interface NumberFormatOptions {
+ localeMatcher?: string | undefined;
+ style?: string | undefined;
+ currency?: string | undefined;
+ currencySign?: string | undefined;
+ useGrouping?: boolean | undefined;
+ minimumIntegerDigits?: number | undefined;
+ minimumFractionDigits?: number | undefined;
+ maximumFractionDigits?: number | undefined;
+ minimumSignificantDigits?: number | undefined;
+ maximumSignificantDigits?: number | undefined;
+ }
+
+ interface ResolvedNumberFormatOptions {
+ locale: string;
+ numberingSystem: string;
+ style: string;
+ currency?: string;
+ minimumIntegerDigits: number;
+ minimumFractionDigits: number;
+ maximumFractionDigits: number;
+ minimumSignificantDigits?: number;
+ maximumSignificantDigits?: number;
+ useGrouping: boolean;
+ }
+
+ interface NumberFormat {
+ format(value: number): string;
+ resolvedOptions(): ResolvedNumberFormatOptions;
+ }
+
+ interface NumberFormatConstructor {
+ new (locales?: string | string[], options?: NumberFormatOptions): NumberFormat;
+ (locales?: string | string[], options?: NumberFormatOptions): NumberFormat;
+ supportedLocalesOf(locales: string | string[], options?: NumberFormatOptions): string[];
+ readonly prototype: NumberFormat;
+ }
+
+ var NumberFormat: NumberFormatConstructor;
+
+ interface DateTimeFormatOptions {
+ localeMatcher?: "best fit" | "lookup" | undefined;
+ weekday?: "long" | "short" | "narrow" | undefined;
+ era?: "long" | "short" | "narrow" | undefined;
+ year?: "numeric" | "2-digit" | undefined;
+ month?: "numeric" | "2-digit" | "long" | "short" | "narrow" | undefined;
+ day?: "numeric" | "2-digit" | undefined;
+ hour?: "numeric" | "2-digit" | undefined;
+ minute?: "numeric" | "2-digit" | undefined;
+ second?: "numeric" | "2-digit" | undefined;
+ timeZoneName?: "short" | "long" | "shortOffset" | "longOffset" | "shortGeneric" | "longGeneric" | undefined;
+ formatMatcher?: "best fit" | "basic" | undefined;
+ hour12?: boolean | undefined;
+ timeZone?: string | undefined;
+ }
+
+ interface ResolvedDateTimeFormatOptions {
+ locale: string;
+ calendar: string;
+ numberingSystem: string;
+ timeZone: string;
+ hour12?: boolean;
+ weekday?: string;
+ era?: string;
+ year?: string;
+ month?: string;
+ day?: string;
+ hour?: string;
+ minute?: string;
+ second?: string;
+ timeZoneName?: string;
+ }
+
+ interface DateTimeFormat {
+ format(date?: Date | number): string;
+ resolvedOptions(): ResolvedDateTimeFormatOptions;
+ }
+
+ interface DateTimeFormatConstructor {
+ new (locales?: string | string[], options?: DateTimeFormatOptions): DateTimeFormat;
+ (locales?: string | string[], options?: DateTimeFormatOptions): DateTimeFormat;
+ supportedLocalesOf(locales: string | string[], options?: DateTimeFormatOptions): string[];
+ readonly prototype: DateTimeFormat;
+ }
+
+ var DateTimeFormat: DateTimeFormatConstructor;
+}
+
+interface String {
+ /**
+ * Determines whether two strings are equivalent in the current or specified locale.
+ * @param that String to compare to target string
+ * @param locales A locale string or array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used. This parameter must conform to BCP 47 standards; see the Intl.Collator object for details.
+ * @param options An object that contains one or more properties that specify comparison options. see the Intl.Collator object for details.
+ */
+ localeCompare(that: string, locales?: string | string[], options?: Intl.CollatorOptions): number;
+}
+
+interface Number {
+ /**
+ * Converts a number to a string by using the current or specified locale.
+ * @param locales A locale string or array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleString(locales?: string | string[], options?: Intl.NumberFormatOptions): string;
+}
+
+interface Date {
+ /**
+ * Converts a date and time to a string by using the current or specified locale.
+ * @param locales A locale string or array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleString(locales?: string | string[], options?: Intl.DateTimeFormatOptions): string;
+ /**
+ * Converts a date to a string by using the current or specified locale.
+ * @param locales A locale string or array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleDateString(locales?: string | string[], options?: Intl.DateTimeFormatOptions): string;
+
+ /**
+ * Converts a time to a string by using the current or specified locale.
+ * @param locales A locale string or array of locale strings that contain one or more language or locale tags. If you include more than one locale string, list them in descending order of priority so that the first entry is the preferred locale. If you omit this parameter, the default locale of the JavaScript runtime is used.
+ * @param options An object that contains one or more properties that specify comparison options.
+ */
+ toLocaleTimeString(locales?: string | string[], options?: Intl.DateTimeFormatOptions): string;
+}
+`,lo["lib.es6.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015" />
+/// <reference lib="dom" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+`,lo["lib.esnext.collection.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface MapConstructor {
+ /**
+ * Groups members of an iterable according to the return value of the passed callback.
+ * @param items An iterable.
+ * @param keySelector A callback which will be invoked for each item in items.
+ */
+ groupBy<K, T>(
+ items: Iterable<T>,
+ keySelector: (item: T, index: number) => K,
+ ): Map<K, T[]>;
+}
+`,lo["lib.esnext.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2023" />
+/// <reference lib="esnext.intl" />
+/// <reference lib="esnext.decorators" />
+/// <reference lib="esnext.disposable" />
+/// <reference lib="esnext.promise" />
+/// <reference lib="esnext.object" />
+/// <reference lib="esnext.collection" />
+`,lo["lib.esnext.decorators.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.symbol" />
+/// <reference lib="decorators" />
+
+interface SymbolConstructor {
+ readonly metadata: unique symbol;
+}
+
+interface Function {
+ [Symbol.metadata]: DecoratorMetadata | null;
+}
+`,lo["lib.esnext.disposable.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="es2015.symbol" />
+
+interface SymbolConstructor {
+ /**
+ * A method that is used to release resources held by an object. Called by the semantics of the \`using\` statement.
+ */
+ readonly dispose: unique symbol;
+
+ /**
+ * A method that is used to asynchronously release resources held by an object. Called by the semantics of the \`await using\` statement.
+ */
+ readonly asyncDispose: unique symbol;
+}
+
+interface Disposable {
+ [Symbol.dispose](): void;
+}
+
+interface AsyncDisposable {
+ [Symbol.asyncDispose](): PromiseLike<void>;
+}
+
+interface SuppressedError extends Error {
+ error: any;
+ suppressed: any;
+}
+
+interface SuppressedErrorConstructor {
+ new (error: any, suppressed: any, message?: string): SuppressedError;
+ (error: any, suppressed: any, message?: string): SuppressedError;
+ readonly prototype: SuppressedError;
+}
+declare var SuppressedError: SuppressedErrorConstructor;
+
+interface DisposableStack {
+ /**
+ * Returns a value indicating whether this stack has been disposed.
+ */
+ readonly disposed: boolean;
+ /**
+ * Disposes each resource in the stack in the reverse order that they were added.
+ */
+ dispose(): void;
+ /**
+ * Adds a disposable resource to the stack, returning the resource.
+ * @param value The resource to add. \`null\` and \`undefined\` will not be added, but will be returned.
+ * @returns The provided {@link value}.
+ */
+ use<T extends Disposable | null | undefined>(value: T): T;
+ /**
+ * Adds a value and associated disposal callback as a resource to the stack.
+ * @param value The value to add.
+ * @param onDispose The callback to use in place of a \`[Symbol.dispose]()\` method. Will be invoked with \`value\`
+ * as the first parameter.
+ * @returns The provided {@link value}.
+ */
+ adopt<T>(value: T, onDispose: (value: T) => void): T;
+ /**
+ * Adds a callback to be invoked when the stack is disposed.
+ */
+ defer(onDispose: () => void): void;
+ /**
+ * Move all resources out of this stack and into a new \`DisposableStack\`, and marks this stack as disposed.
+ * @example
+ * \`\`\`ts
+ * class C {
+ * #res1: Disposable;
+ * #res2: Disposable;
+ * #disposables: DisposableStack;
+ * constructor() {
+ * // stack will be disposed when exiting constructor for any reason
+ * using stack = new DisposableStack();
+ *
+ * // get first resource
+ * this.#res1 = stack.use(getResource1());
+ *
+ * // get second resource. If this fails, both \`stack\` and \`#res1\` will be disposed.
+ * this.#res2 = stack.use(getResource2());
+ *
+ * // all operations succeeded, move resources out of \`stack\` so that they aren't disposed
+ * // when constructor exits
+ * this.#disposables = stack.move();
+ * }
+ *
+ * [Symbol.dispose]() {
+ * this.#disposables.dispose();
+ * }
+ * }
+ * \`\`\`
+ */
+ move(): DisposableStack;
+ [Symbol.dispose](): void;
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface DisposableStackConstructor {
+ new (): DisposableStack;
+ readonly prototype: DisposableStack;
+}
+declare var DisposableStack: DisposableStackConstructor;
+
+interface AsyncDisposableStack {
+ /**
+ * Returns a value indicating whether this stack has been disposed.
+ */
+ readonly disposed: boolean;
+ /**
+ * Disposes each resource in the stack in the reverse order that they were added.
+ */
+ disposeAsync(): Promise<void>;
+ /**
+ * Adds a disposable resource to the stack, returning the resource.
+ * @param value The resource to add. \`null\` and \`undefined\` will not be added, but will be returned.
+ * @returns The provided {@link value}.
+ */
+ use<T extends AsyncDisposable | Disposable | null | undefined>(value: T): T;
+ /**
+ * Adds a value and associated disposal callback as a resource to the stack.
+ * @param value The value to add.
+ * @param onDisposeAsync The callback to use in place of a \`[Symbol.asyncDispose]()\` method. Will be invoked with \`value\`
+ * as the first parameter.
+ * @returns The provided {@link value}.
+ */
+ adopt<T>(value: T, onDisposeAsync: (value: T) => PromiseLike<void> | void): T;
+ /**
+ * Adds a callback to be invoked when the stack is disposed.
+ */
+ defer(onDisposeAsync: () => PromiseLike<void> | void): void;
+ /**
+ * Move all resources out of this stack and into a new \`DisposableStack\`, and marks this stack as disposed.
+ * @example
+ * \`\`\`ts
+ * class C {
+ * #res1: Disposable;
+ * #res2: Disposable;
+ * #disposables: DisposableStack;
+ * constructor() {
+ * // stack will be disposed when exiting constructor for any reason
+ * using stack = new DisposableStack();
+ *
+ * // get first resource
+ * this.#res1 = stack.use(getResource1());
+ *
+ * // get second resource. If this fails, both \`stack\` and \`#res1\` will be disposed.
+ * this.#res2 = stack.use(getResource2());
+ *
+ * // all operations succeeded, move resources out of \`stack\` so that they aren't disposed
+ * // when constructor exits
+ * this.#disposables = stack.move();
+ * }
+ *
+ * [Symbol.dispose]() {
+ * this.#disposables.dispose();
+ * }
+ * }
+ * \`\`\`
+ */
+ move(): AsyncDisposableStack;
+ [Symbol.asyncDispose](): Promise<void>;
+ readonly [Symbol.toStringTag]: string;
+}
+
+interface AsyncDisposableStackConstructor {
+ new (): AsyncDisposableStack;
+ readonly prototype: AsyncDisposableStack;
+}
+declare var AsyncDisposableStack: AsyncDisposableStackConstructor;
+`,lo["lib.esnext.full.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/// <reference lib="esnext" />
+/// <reference lib="dom" />
+/// <reference lib="webworker.importscripts" />
+/// <reference lib="scripthost" />
+/// <reference lib="dom.iterable" />
+/// <reference lib="dom.asynciterable" />
+`,lo["lib.esnext.intl.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+declare namespace Intl {
+ interface NumberRangeFormatPart extends NumberFormatPart {
+ source: "startRange" | "endRange" | "shared";
+ }
+
+ interface NumberFormat {
+ formatRange(start: number | bigint, end: number | bigint): string;
+ formatRangeToParts(start: number | bigint, end: number | bigint): NumberRangeFormatPart[];
+ }
+}
+`,lo["lib.esnext.object.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface ObjectConstructor {
+ /**
+ * Groups members of an iterable according to the return value of the passed callback.
+ * @param items An iterable.
+ * @param keySelector A callback which will be invoked for each item in items.
+ */
+ groupBy<K extends PropertyKey, T>(
+ items: Iterable<T>,
+ keySelector: (item: T, index: number) => K,
+ ): Partial<Record<K, T[]>>;
+}
+`,lo["lib.esnext.promise.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+interface PromiseWithResolvers<T> {
+ promise: Promise<T>;
+ resolve: (value: T | PromiseLike<T>) => void;
+ reject: (reason?: any) => void;
+}
+
+interface PromiseConstructor {
+ /**
+ * Creates a new Promise and returns it in an object, along with its resolve and reject functions.
+ * @returns An object with the properties \`promise\`, \`resolve\`, and \`reject\`.
+ *
+ * \`\`\`ts
+ * const { promise, resolve, reject } = Promise.withResolvers<T>();
+ * \`\`\`
+ */
+ withResolvers<T>(): PromiseWithResolvers<T>;
+}
+`,lo["lib.scripthost.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// Windows Script Host APIS
+/////////////////////////////
+
+interface ActiveXObject {
+ new (s: string): any;
+}
+declare var ActiveXObject: ActiveXObject;
+
+interface ITextWriter {
+ Write(s: string): void;
+ WriteLine(s: string): void;
+ Close(): void;
+}
+
+interface TextStreamBase {
+ /**
+ * The column number of the current character position in an input stream.
+ */
+ Column: number;
+
+ /**
+ * The current line number in an input stream.
+ */
+ Line: number;
+
+ /**
+ * Closes a text stream.
+ * It is not necessary to close standard streams; they close automatically when the process ends. If
+ * you close a standard stream, be aware that any other pointers to that standard stream become invalid.
+ */
+ Close(): void;
+}
+
+interface TextStreamWriter extends TextStreamBase {
+ /**
+ * Sends a string to an output stream.
+ */
+ Write(s: string): void;
+
+ /**
+ * Sends a specified number of blank lines (newline characters) to an output stream.
+ */
+ WriteBlankLines(intLines: number): void;
+
+ /**
+ * Sends a string followed by a newline character to an output stream.
+ */
+ WriteLine(s: string): void;
+}
+
+interface TextStreamReader extends TextStreamBase {
+ /**
+ * Returns a specified number of characters from an input stream, starting at the current pointer position.
+ * Does not return until the ENTER key is pressed.
+ * Can only be used on a stream in reading mode; causes an error in writing or appending mode.
+ */
+ Read(characters: number): string;
+
+ /**
+ * Returns all characters from an input stream.
+ * Can only be used on a stream in reading mode; causes an error in writing or appending mode.
+ */
+ ReadAll(): string;
+
+ /**
+ * Returns an entire line from an input stream.
+ * Although this method extracts the newline character, it does not add it to the returned string.
+ * Can only be used on a stream in reading mode; causes an error in writing or appending mode.
+ */
+ ReadLine(): string;
+
+ /**
+ * Skips a specified number of characters when reading from an input text stream.
+ * Can only be used on a stream in reading mode; causes an error in writing or appending mode.
+ * @param characters Positive number of characters to skip forward. (Backward skipping is not supported.)
+ */
+ Skip(characters: number): void;
+
+ /**
+ * Skips the next line when reading from an input text stream.
+ * Can only be used on a stream in reading mode, not writing or appending mode.
+ */
+ SkipLine(): void;
+
+ /**
+ * Indicates whether the stream pointer position is at the end of a line.
+ */
+ AtEndOfLine: boolean;
+
+ /**
+ * Indicates whether the stream pointer position is at the end of a stream.
+ */
+ AtEndOfStream: boolean;
+}
+
+declare var WScript: {
+ /**
+ * Outputs text to either a message box (under WScript.exe) or the command console window followed by
+ * a newline (under CScript.exe).
+ */
+ Echo(s: any): void;
+
+ /**
+ * Exposes the write-only error output stream for the current script.
+ * Can be accessed only while using CScript.exe.
+ */
+ StdErr: TextStreamWriter;
+
+ /**
+ * Exposes the write-only output stream for the current script.
+ * Can be accessed only while using CScript.exe.
+ */
+ StdOut: TextStreamWriter;
+ Arguments: { length: number; Item(n: number): string; };
+
+ /**
+ * The full path of the currently running script.
+ */
+ ScriptFullName: string;
+
+ /**
+ * Forces the script to stop immediately, with an optional exit code.
+ */
+ Quit(exitCode?: number): number;
+
+ /**
+ * The Windows Script Host build version number.
+ */
+ BuildVersion: number;
+
+ /**
+ * Fully qualified path of the host executable.
+ */
+ FullName: string;
+
+ /**
+ * Gets/sets the script mode - interactive(true) or batch(false).
+ */
+ Interactive: boolean;
+
+ /**
+ * The name of the host executable (WScript.exe or CScript.exe).
+ */
+ Name: string;
+
+ /**
+ * Path of the directory containing the host executable.
+ */
+ Path: string;
+
+ /**
+ * The filename of the currently running script.
+ */
+ ScriptName: string;
+
+ /**
+ * Exposes the read-only input stream for the current script.
+ * Can be accessed only while using CScript.exe.
+ */
+ StdIn: TextStreamReader;
+
+ /**
+ * Windows Script Host version
+ */
+ Version: string;
+
+ /**
+ * Connects a COM object's event sources to functions named with a given prefix, in the form prefix_event.
+ */
+ ConnectObject(objEventSource: any, strPrefix: string): void;
+
+ /**
+ * Creates a COM object.
+ * @param strProgiID
+ * @param strPrefix Function names in the form prefix_event will be bound to this object's COM events.
+ */
+ CreateObject(strProgID: string, strPrefix?: string): any;
+
+ /**
+ * Disconnects a COM object from its event sources.
+ */
+ DisconnectObject(obj: any): void;
+
+ /**
+ * Retrieves an existing object with the specified ProgID from memory, or creates a new one from a file.
+ * @param strPathname Fully qualified path to the file containing the object persisted to disk.
+ * For objects in memory, pass a zero-length string.
+ * @param strProgID
+ * @param strPrefix Function names in the form prefix_event will be bound to this object's COM events.
+ */
+ GetObject(strPathname: string, strProgID?: string, strPrefix?: string): any;
+
+ /**
+ * Suspends script execution for a specified length of time, then continues execution.
+ * @param intTime Interval (in milliseconds) to suspend script execution.
+ */
+ Sleep(intTime: number): void;
+};
+
+/**
+ * WSH is an alias for WScript under Windows Script Host
+ */
+declare var WSH: typeof WScript;
+
+/**
+ * Represents an Automation SAFEARRAY
+ */
+declare class SafeArray<T = any> {
+ private constructor();
+ private SafeArray_typekey: SafeArray<T>;
+}
+
+/**
+ * Allows enumerating over a COM collection, which may not have indexed item access.
+ */
+interface Enumerator<T = any> {
+ /**
+ * Returns true if the current item is the last one in the collection, or the collection is empty,
+ * or the current item is undefined.
+ */
+ atEnd(): boolean;
+
+ /**
+ * Returns the current item in the collection
+ */
+ item(): T;
+
+ /**
+ * Resets the current item in the collection to the first item. If there are no items in the collection,
+ * the current item is set to undefined.
+ */
+ moveFirst(): void;
+
+ /**
+ * Moves the current item to the next item in the collection. If the enumerator is at the end of
+ * the collection or the collection is empty, the current item is set to undefined.
+ */
+ moveNext(): void;
+}
+
+interface EnumeratorConstructor {
+ new <T = any>(safearray: SafeArray<T>): Enumerator<T>;
+ new <T = any>(collection: { Item(index: any): T; }): Enumerator<T>;
+ new <T = any>(collection: any): Enumerator<T>;
+}
+
+declare var Enumerator: EnumeratorConstructor;
+
+/**
+ * Enables reading from a COM safe array, which might have an alternate lower bound, or multiple dimensions.
+ */
+interface VBArray<T = any> {
+ /**
+ * Returns the number of dimensions (1-based).
+ */
+ dimensions(): number;
+
+ /**
+ * Takes an index for each dimension in the array, and returns the item at the corresponding location.
+ */
+ getItem(dimension1Index: number, ...dimensionNIndexes: number[]): T;
+
+ /**
+ * Returns the smallest available index for a given dimension.
+ * @param dimension 1-based dimension (defaults to 1)
+ */
+ lbound(dimension?: number): number;
+
+ /**
+ * Returns the largest available index for a given dimension.
+ * @param dimension 1-based dimension (defaults to 1)
+ */
+ ubound(dimension?: number): number;
+
+ /**
+ * Returns a Javascript array with all the elements in the VBArray. If there are multiple dimensions,
+ * each successive dimension is appended to the end of the array.
+ * Example: [[1,2,3],[4,5,6]] becomes [1,2,3,4,5,6]
+ */
+ toArray(): T[];
+}
+
+interface VBArrayConstructor {
+ new <T = any>(safeArray: SafeArray<T>): VBArray<T>;
+}
+
+declare var VBArray: VBArrayConstructor;
+
+/**
+ * Automation date (VT_DATE)
+ */
+declare class VarDate {
+ private constructor();
+ private VarDate_typekey: VarDate;
+}
+
+interface DateConstructor {
+ new (vd: VarDate): Date;
+}
+
+interface Date {
+ getVarDate: () => VarDate;
+}
+`,lo["lib.webworker.asynciterable.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// Worker Async Iterable APIs
+/////////////////////////////
+
+interface FileSystemDirectoryHandle {
+ [Symbol.asyncIterator](): AsyncIterableIterator<[string, FileSystemHandle]>;
+ entries(): AsyncIterableIterator<[string, FileSystemHandle]>;
+ keys(): AsyncIterableIterator<string>;
+ values(): AsyncIterableIterator<FileSystemHandle>;
+}
+`,lo["lib.webworker.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// Worker APIs
+/////////////////////////////
+
+interface AddEventListenerOptions extends EventListenerOptions {
+ once?: boolean;
+ passive?: boolean;
+ signal?: AbortSignal;
+}
+
+interface AesCbcParams extends Algorithm {
+ iv: BufferSource;
+}
+
+interface AesCtrParams extends Algorithm {
+ counter: BufferSource;
+ length: number;
+}
+
+interface AesDerivedKeyParams extends Algorithm {
+ length: number;
+}
+
+interface AesGcmParams extends Algorithm {
+ additionalData?: BufferSource;
+ iv: BufferSource;
+ tagLength?: number;
+}
+
+interface AesKeyAlgorithm extends KeyAlgorithm {
+ length: number;
+}
+
+interface AesKeyGenParams extends Algorithm {
+ length: number;
+}
+
+interface Algorithm {
+ name: string;
+}
+
+interface AudioConfiguration {
+ bitrate?: number;
+ channels?: string;
+ contentType: string;
+ samplerate?: number;
+ spatialRendering?: boolean;
+}
+
+interface AvcEncoderConfig {
+ format?: AvcBitstreamFormat;
+}
+
+interface BlobPropertyBag {
+ endings?: EndingType;
+ type?: string;
+}
+
+interface CSSMatrixComponentOptions {
+ is2D?: boolean;
+}
+
+interface CSSNumericType {
+ angle?: number;
+ flex?: number;
+ frequency?: number;
+ length?: number;
+ percent?: number;
+ percentHint?: CSSNumericBaseType;
+ resolution?: number;
+ time?: number;
+}
+
+interface CacheQueryOptions {
+ ignoreMethod?: boolean;
+ ignoreSearch?: boolean;
+ ignoreVary?: boolean;
+}
+
+interface ClientQueryOptions {
+ includeUncontrolled?: boolean;
+ type?: ClientTypes;
+}
+
+interface CloseEventInit extends EventInit {
+ code?: number;
+ reason?: string;
+ wasClean?: boolean;
+}
+
+interface CryptoKeyPair {
+ privateKey: CryptoKey;
+ publicKey: CryptoKey;
+}
+
+interface CustomEventInit<T = any> extends EventInit {
+ detail?: T;
+}
+
+interface DOMMatrix2DInit {
+ a?: number;
+ b?: number;
+ c?: number;
+ d?: number;
+ e?: number;
+ f?: number;
+ m11?: number;
+ m12?: number;
+ m21?: number;
+ m22?: number;
+ m41?: number;
+ m42?: number;
+}
+
+interface DOMMatrixInit extends DOMMatrix2DInit {
+ is2D?: boolean;
+ m13?: number;
+ m14?: number;
+ m23?: number;
+ m24?: number;
+ m31?: number;
+ m32?: number;
+ m33?: number;
+ m34?: number;
+ m43?: number;
+ m44?: number;
+}
+
+interface DOMPointInit {
+ w?: number;
+ x?: number;
+ y?: number;
+ z?: number;
+}
+
+interface DOMQuadInit {
+ p1?: DOMPointInit;
+ p2?: DOMPointInit;
+ p3?: DOMPointInit;
+ p4?: DOMPointInit;
+}
+
+interface DOMRectInit {
+ height?: number;
+ width?: number;
+ x?: number;
+ y?: number;
+}
+
+interface EcKeyGenParams extends Algorithm {
+ namedCurve: NamedCurve;
+}
+
+interface EcKeyImportParams extends Algorithm {
+ namedCurve: NamedCurve;
+}
+
+interface EcdhKeyDeriveParams extends Algorithm {
+ public: CryptoKey;
+}
+
+interface EcdsaParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+}
+
+interface EncodedVideoChunkInit {
+ data: AllowSharedBufferSource;
+ duration?: number;
+ timestamp: number;
+ type: EncodedVideoChunkType;
+}
+
+interface EncodedVideoChunkMetadata {
+ decoderConfig?: VideoDecoderConfig;
+}
+
+interface ErrorEventInit extends EventInit {
+ colno?: number;
+ error?: any;
+ filename?: string;
+ lineno?: number;
+ message?: string;
+}
+
+interface EventInit {
+ bubbles?: boolean;
+ cancelable?: boolean;
+ composed?: boolean;
+}
+
+interface EventListenerOptions {
+ capture?: boolean;
+}
+
+interface EventSourceInit {
+ withCredentials?: boolean;
+}
+
+interface ExtendableEventInit extends EventInit {
+}
+
+interface ExtendableMessageEventInit extends ExtendableEventInit {
+ data?: any;
+ lastEventId?: string;
+ origin?: string;
+ ports?: MessagePort[];
+ source?: Client | ServiceWorker | MessagePort | null;
+}
+
+interface FetchEventInit extends ExtendableEventInit {
+ clientId?: string;
+ handled?: Promise<undefined>;
+ preloadResponse?: Promise<any>;
+ replacesClientId?: string;
+ request: Request;
+ resultingClientId?: string;
+}
+
+interface FilePropertyBag extends BlobPropertyBag {
+ lastModified?: number;
+}
+
+interface FileSystemCreateWritableOptions {
+ keepExistingData?: boolean;
+}
+
+interface FileSystemGetDirectoryOptions {
+ create?: boolean;
+}
+
+interface FileSystemGetFileOptions {
+ create?: boolean;
+}
+
+interface FileSystemReadWriteOptions {
+ at?: number;
+}
+
+interface FileSystemRemoveOptions {
+ recursive?: boolean;
+}
+
+interface FontFaceDescriptors {
+ ascentOverride?: string;
+ descentOverride?: string;
+ display?: FontDisplay;
+ featureSettings?: string;
+ lineGapOverride?: string;
+ stretch?: string;
+ style?: string;
+ unicodeRange?: string;
+ weight?: string;
+}
+
+interface FontFaceSetLoadEventInit extends EventInit {
+ fontfaces?: FontFace[];
+}
+
+interface GetNotificationOptions {
+ tag?: string;
+}
+
+interface HkdfParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ info: BufferSource;
+ salt: BufferSource;
+}
+
+interface HmacImportParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ length?: number;
+}
+
+interface HmacKeyGenParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ length?: number;
+}
+
+interface IDBDatabaseInfo {
+ name?: string;
+ version?: number;
+}
+
+interface IDBIndexParameters {
+ multiEntry?: boolean;
+ unique?: boolean;
+}
+
+interface IDBObjectStoreParameters {
+ autoIncrement?: boolean;
+ keyPath?: string | string[] | null;
+}
+
+interface IDBTransactionOptions {
+ durability?: IDBTransactionDurability;
+}
+
+interface IDBVersionChangeEventInit extends EventInit {
+ newVersion?: number | null;
+ oldVersion?: number;
+}
+
+interface ImageBitmapOptions {
+ colorSpaceConversion?: ColorSpaceConversion;
+ imageOrientation?: ImageOrientation;
+ premultiplyAlpha?: PremultiplyAlpha;
+ resizeHeight?: number;
+ resizeQuality?: ResizeQuality;
+ resizeWidth?: number;
+}
+
+interface ImageBitmapRenderingContextSettings {
+ alpha?: boolean;
+}
+
+interface ImageDataSettings {
+ colorSpace?: PredefinedColorSpace;
+}
+
+interface ImageEncodeOptions {
+ quality?: number;
+ type?: string;
+}
+
+interface ImportMeta {
+ url: string;
+}
+
+interface JsonWebKey {
+ alg?: string;
+ crv?: string;
+ d?: string;
+ dp?: string;
+ dq?: string;
+ e?: string;
+ ext?: boolean;
+ k?: string;
+ key_ops?: string[];
+ kty?: string;
+ n?: string;
+ oth?: RsaOtherPrimesInfo[];
+ p?: string;
+ q?: string;
+ qi?: string;
+ use?: string;
+ x?: string;
+ y?: string;
+}
+
+interface KeyAlgorithm {
+ name: string;
+}
+
+interface LockInfo {
+ clientId?: string;
+ mode?: LockMode;
+ name?: string;
+}
+
+interface LockManagerSnapshot {
+ held?: LockInfo[];
+ pending?: LockInfo[];
+}
+
+interface LockOptions {
+ ifAvailable?: boolean;
+ mode?: LockMode;
+ signal?: AbortSignal;
+ steal?: boolean;
+}
+
+interface MediaCapabilitiesDecodingInfo extends MediaCapabilitiesInfo {
+ configuration?: MediaDecodingConfiguration;
+}
+
+interface MediaCapabilitiesEncodingInfo extends MediaCapabilitiesInfo {
+ configuration?: MediaEncodingConfiguration;
+}
+
+interface MediaCapabilitiesInfo {
+ powerEfficient: boolean;
+ smooth: boolean;
+ supported: boolean;
+}
+
+interface MediaConfiguration {
+ audio?: AudioConfiguration;
+ video?: VideoConfiguration;
+}
+
+interface MediaDecodingConfiguration extends MediaConfiguration {
+ type: MediaDecodingType;
+}
+
+interface MediaEncodingConfiguration extends MediaConfiguration {
+ type: MediaEncodingType;
+}
+
+interface MessageEventInit<T = any> extends EventInit {
+ data?: T;
+ lastEventId?: string;
+ origin?: string;
+ ports?: MessagePort[];
+ source?: MessageEventSource | null;
+}
+
+interface MultiCacheQueryOptions extends CacheQueryOptions {
+ cacheName?: string;
+}
+
+interface NavigationPreloadState {
+ enabled?: boolean;
+ headerValue?: string;
+}
+
+interface NotificationEventInit extends ExtendableEventInit {
+ action?: string;
+ notification: Notification;
+}
+
+interface NotificationOptions {
+ badge?: string;
+ body?: string;
+ data?: any;
+ dir?: NotificationDirection;
+ icon?: string;
+ lang?: string;
+ requireInteraction?: boolean;
+ silent?: boolean | null;
+ tag?: string;
+}
+
+interface Pbkdf2Params extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+ iterations: number;
+ salt: BufferSource;
+}
+
+interface PerformanceMarkOptions {
+ detail?: any;
+ startTime?: DOMHighResTimeStamp;
+}
+
+interface PerformanceMeasureOptions {
+ detail?: any;
+ duration?: DOMHighResTimeStamp;
+ end?: string | DOMHighResTimeStamp;
+ start?: string | DOMHighResTimeStamp;
+}
+
+interface PerformanceObserverInit {
+ buffered?: boolean;
+ entryTypes?: string[];
+ type?: string;
+}
+
+interface PermissionDescriptor {
+ name: PermissionName;
+}
+
+interface PlaneLayout {
+ offset: number;
+ stride: number;
+}
+
+interface ProgressEventInit extends EventInit {
+ lengthComputable?: boolean;
+ loaded?: number;
+ total?: number;
+}
+
+interface PromiseRejectionEventInit extends EventInit {
+ promise: Promise<any>;
+ reason?: any;
+}
+
+interface PushEventInit extends ExtendableEventInit {
+ data?: PushMessageDataInit;
+}
+
+interface PushSubscriptionJSON {
+ endpoint?: string;
+ expirationTime?: EpochTimeStamp | null;
+ keys?: Record<string, string>;
+}
+
+interface PushSubscriptionOptionsInit {
+ applicationServerKey?: BufferSource | string | null;
+ userVisibleOnly?: boolean;
+}
+
+interface QueuingStrategy<T = any> {
+ highWaterMark?: number;
+ size?: QueuingStrategySize<T>;
+}
+
+interface QueuingStrategyInit {
+ /**
+ * Creates a new ByteLengthQueuingStrategy with the provided high water mark.
+ *
+ * Note that the provided high water mark will not be validated ahead of time. Instead, if it is negative, NaN, or not a number, the resulting ByteLengthQueuingStrategy will cause the corresponding stream constructor to throw.
+ */
+ highWaterMark: number;
+}
+
+interface RTCEncodedAudioFrameMetadata {
+ contributingSources?: number[];
+ payloadType?: number;
+ sequenceNumber?: number;
+ synchronizationSource?: number;
+}
+
+interface RTCEncodedVideoFrameMetadata {
+ contributingSources?: number[];
+ dependencies?: number[];
+ frameId?: number;
+ height?: number;
+ payloadType?: number;
+ spatialIndex?: number;
+ synchronizationSource?: number;
+ temporalIndex?: number;
+ timestamp?: number;
+ width?: number;
+}
+
+interface ReadableStreamGetReaderOptions {
+ /**
+ * Creates a ReadableStreamBYOBReader and locks the stream to the new reader.
+ *
+ * This call behaves the same way as the no-argument variant, except that it only works on readable byte streams, i.e. streams which were constructed specifically with the ability to handle "bring your own buffer" reading. The returned BYOB reader provides the ability to directly read individual chunks from the stream via its read() method, into developer-supplied buffers, allowing more precise control over allocation.
+ */
+ mode?: ReadableStreamReaderMode;
+}
+
+interface ReadableStreamReadDoneResult<T> {
+ done: true;
+ value?: T;
+}
+
+interface ReadableStreamReadValueResult<T> {
+ done: false;
+ value: T;
+}
+
+interface ReadableWritablePair<R = any, W = any> {
+ readable: ReadableStream<R>;
+ /**
+ * Provides a convenient, chainable way of piping this readable stream through a transform stream (or any other { writable, readable } pair). It simply pipes the stream into the writable side of the supplied pair, and returns the readable side for further use.
+ *
+ * Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
+ */
+ writable: WritableStream<W>;
+}
+
+interface RegistrationOptions {
+ scope?: string;
+ type?: WorkerType;
+ updateViaCache?: ServiceWorkerUpdateViaCache;
+}
+
+interface ReportingObserverOptions {
+ buffered?: boolean;
+ types?: string[];
+}
+
+interface RequestInit {
+ /** A BodyInit object or null to set request's body. */
+ body?: BodyInit | null;
+ /** A string indicating how the request will interact with the browser's cache to set request's cache. */
+ cache?: RequestCache;
+ /** A string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL. Sets request's credentials. */
+ credentials?: RequestCredentials;
+ /** A Headers object, an object literal, or an array of two-item arrays to set request's headers. */
+ headers?: HeadersInit;
+ /** A cryptographic hash of the resource to be fetched by request. Sets request's integrity. */
+ integrity?: string;
+ /** A boolean to set request's keepalive. */
+ keepalive?: boolean;
+ /** A string to set request's method. */
+ method?: string;
+ /** A string to indicate whether the request will use CORS, or will be restricted to same-origin URLs. Sets request's mode. */
+ mode?: RequestMode;
+ priority?: RequestPriority;
+ /** A string indicating whether request follows redirects, results in an error upon encountering a redirect, or returns the redirect (in an opaque fashion). Sets request's redirect. */
+ redirect?: RequestRedirect;
+ /** A string whose value is a same-origin URL, "about:client", or the empty string, to set request's referrer. */
+ referrer?: string;
+ /** A referrer policy to set request's referrerPolicy. */
+ referrerPolicy?: ReferrerPolicy;
+ /** An AbortSignal to set request's signal. */
+ signal?: AbortSignal | null;
+ /** Can only be null. Used to disassociate request from any Window. */
+ window?: null;
+}
+
+interface ResponseInit {
+ headers?: HeadersInit;
+ status?: number;
+ statusText?: string;
+}
+
+interface RsaHashedImportParams extends Algorithm {
+ hash: HashAlgorithmIdentifier;
+}
+
+interface RsaHashedKeyGenParams extends RsaKeyGenParams {
+ hash: HashAlgorithmIdentifier;
+}
+
+interface RsaKeyGenParams extends Algorithm {
+ modulusLength: number;
+ publicExponent: BigInteger;
+}
+
+interface RsaOaepParams extends Algorithm {
+ label?: BufferSource;
+}
+
+interface RsaOtherPrimesInfo {
+ d?: string;
+ r?: string;
+ t?: string;
+}
+
+interface RsaPssParams extends Algorithm {
+ saltLength: number;
+}
+
+interface SecurityPolicyViolationEventInit extends EventInit {
+ blockedURI?: string;
+ columnNumber?: number;
+ disposition: SecurityPolicyViolationEventDisposition;
+ documentURI: string;
+ effectiveDirective: string;
+ lineNumber?: number;
+ originalPolicy: string;
+ referrer?: string;
+ sample?: string;
+ sourceFile?: string;
+ statusCode: number;
+ violatedDirective: string;
+}
+
+interface StorageEstimate {
+ quota?: number;
+ usage?: number;
+}
+
+interface StreamPipeOptions {
+ preventAbort?: boolean;
+ preventCancel?: boolean;
+ /**
+ * Pipes this readable stream to a given writable stream destination. The way in which the piping process behaves under various error conditions can be customized with a number of passed options. It returns a promise that fulfills when the piping process completes successfully, or rejects if any errors were encountered.
+ *
+ * Piping a stream will lock it for the duration of the pipe, preventing any other consumer from acquiring a reader.
+ *
+ * Errors and closures of the source and destination streams propagate as follows:
+ *
+ * An error in this source readable stream will abort destination, unless preventAbort is truthy. The returned promise will be rejected with the source's error, or with any error that occurs during aborting the destination.
+ *
+ * An error in destination will cancel this source readable stream, unless preventCancel is truthy. The returned promise will be rejected with the destination's error, or with any error that occurs during canceling the source.
+ *
+ * When this source readable stream closes, destination will be closed, unless preventClose is truthy. The returned promise will be fulfilled once this process completes, unless an error is encountered while closing the destination, in which case it will be rejected with that error.
+ *
+ * If destination starts out closed or closing, this source readable stream will be canceled, unless preventCancel is true. The returned promise will be rejected with an error indicating piping to a closed stream failed, or with any error that occurs during canceling the source.
+ *
+ * The signal option can be set to an AbortSignal to allow aborting an ongoing pipe operation via the corresponding AbortController. In this case, this source readable stream will be canceled, and destination aborted, unless the respective options preventCancel or preventAbort are set.
+ */
+ preventClose?: boolean;
+ signal?: AbortSignal;
+}
+
+interface StructuredSerializeOptions {
+ transfer?: Transferable[];
+}
+
+interface TextDecodeOptions {
+ stream?: boolean;
+}
+
+interface TextDecoderOptions {
+ fatal?: boolean;
+ ignoreBOM?: boolean;
+}
+
+interface TextEncoderEncodeIntoResult {
+ read: number;
+ written: number;
+}
+
+interface Transformer<I = any, O = any> {
+ flush?: TransformerFlushCallback<O>;
+ readableType?: undefined;
+ start?: TransformerStartCallback<O>;
+ transform?: TransformerTransformCallback<I, O>;
+ writableType?: undefined;
+}
+
+interface UnderlyingByteSource {
+ autoAllocateChunkSize?: number;
+ cancel?: UnderlyingSourceCancelCallback;
+ pull?: (controller: ReadableByteStreamController) => void | PromiseLike<void>;
+ start?: (controller: ReadableByteStreamController) => any;
+ type: "bytes";
+}
+
+interface UnderlyingDefaultSource<R = any> {
+ cancel?: UnderlyingSourceCancelCallback;
+ pull?: (controller: ReadableStreamDefaultController<R>) => void | PromiseLike<void>;
+ start?: (controller: ReadableStreamDefaultController<R>) => any;
+ type?: undefined;
+}
+
+interface UnderlyingSink<W = any> {
+ abort?: UnderlyingSinkAbortCallback;
+ close?: UnderlyingSinkCloseCallback;
+ start?: UnderlyingSinkStartCallback;
+ type?: undefined;
+ write?: UnderlyingSinkWriteCallback<W>;
+}
+
+interface UnderlyingSource<R = any> {
+ autoAllocateChunkSize?: number;
+ cancel?: UnderlyingSourceCancelCallback;
+ pull?: UnderlyingSourcePullCallback<R>;
+ start?: UnderlyingSourceStartCallback<R>;
+ type?: ReadableStreamType;
+}
+
+interface VideoColorSpaceInit {
+ fullRange?: boolean | null;
+ matrix?: VideoMatrixCoefficients | null;
+ primaries?: VideoColorPrimaries | null;
+ transfer?: VideoTransferCharacteristics | null;
+}
+
+interface VideoConfiguration {
+ bitrate: number;
+ colorGamut?: ColorGamut;
+ contentType: string;
+ framerate: number;
+ hdrMetadataType?: HdrMetadataType;
+ height: number;
+ scalabilityMode?: string;
+ transferFunction?: TransferFunction;
+ width: number;
+}
+
+interface VideoDecoderConfig {
+ codec: string;
+ codedHeight?: number;
+ codedWidth?: number;
+ colorSpace?: VideoColorSpaceInit;
+ description?: AllowSharedBufferSource;
+ displayAspectHeight?: number;
+ displayAspectWidth?: number;
+ hardwareAcceleration?: HardwareAcceleration;
+ optimizeForLatency?: boolean;
+}
+
+interface VideoDecoderInit {
+ error: WebCodecsErrorCallback;
+ output: VideoFrameOutputCallback;
+}
+
+interface VideoDecoderSupport {
+ config?: VideoDecoderConfig;
+ supported?: boolean;
+}
+
+interface VideoEncoderConfig {
+ alpha?: AlphaOption;
+ avc?: AvcEncoderConfig;
+ bitrate?: number;
+ bitrateMode?: VideoEncoderBitrateMode;
+ codec: string;
+ displayHeight?: number;
+ displayWidth?: number;
+ framerate?: number;
+ hardwareAcceleration?: HardwareAcceleration;
+ height: number;
+ latencyMode?: LatencyMode;
+ scalabilityMode?: string;
+ width: number;
+}
+
+interface VideoEncoderEncodeOptions {
+ keyFrame?: boolean;
+}
+
+interface VideoEncoderInit {
+ error: WebCodecsErrorCallback;
+ output: EncodedVideoChunkOutputCallback;
+}
+
+interface VideoEncoderSupport {
+ config?: VideoEncoderConfig;
+ supported?: boolean;
+}
+
+interface VideoFrameBufferInit {
+ codedHeight: number;
+ codedWidth: number;
+ colorSpace?: VideoColorSpaceInit;
+ displayHeight?: number;
+ displayWidth?: number;
+ duration?: number;
+ format: VideoPixelFormat;
+ layout?: PlaneLayout[];
+ timestamp: number;
+ visibleRect?: DOMRectInit;
+}
+
+interface VideoFrameCopyToOptions {
+ layout?: PlaneLayout[];
+ rect?: DOMRectInit;
+}
+
+interface VideoFrameInit {
+ alpha?: AlphaOption;
+ displayHeight?: number;
+ displayWidth?: number;
+ duration?: number;
+ timestamp?: number;
+ visibleRect?: DOMRectInit;
+}
+
+interface WebGLContextAttributes {
+ alpha?: boolean;
+ antialias?: boolean;
+ depth?: boolean;
+ desynchronized?: boolean;
+ failIfMajorPerformanceCaveat?: boolean;
+ powerPreference?: WebGLPowerPreference;
+ premultipliedAlpha?: boolean;
+ preserveDrawingBuffer?: boolean;
+ stencil?: boolean;
+}
+
+interface WebGLContextEventInit extends EventInit {
+ statusMessage?: string;
+}
+
+interface WebTransportCloseInfo {
+ closeCode?: number;
+ reason?: string;
+}
+
+interface WebTransportErrorOptions {
+ source?: WebTransportErrorSource;
+ streamErrorCode?: number | null;
+}
+
+interface WebTransportHash {
+ algorithm?: string;
+ value?: BufferSource;
+}
+
+interface WebTransportOptions {
+ allowPooling?: boolean;
+ congestionControl?: WebTransportCongestionControl;
+ requireUnreliable?: boolean;
+ serverCertificateHashes?: WebTransportHash[];
+}
+
+interface WebTransportSendStreamOptions {
+ sendOrder?: number;
+}
+
+interface WorkerOptions {
+ credentials?: RequestCredentials;
+ name?: string;
+ type?: WorkerType;
+}
+
+interface WriteParams {
+ data?: BufferSource | Blob | string | null;
+ position?: number | null;
+ size?: number | null;
+ type: WriteCommandType;
+}
+
+/**
+ * The ANGLE_instanced_arrays extension is part of the WebGL API and allows to draw the same object, or groups of similar objects multiple times, if they share the same vertex data, primitive count and type.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays)
+ */
+interface ANGLE_instanced_arrays {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/drawArraysInstancedANGLE) */
+ drawArraysInstancedANGLE(mode: GLenum, first: GLint, count: GLsizei, primcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/drawElementsInstancedANGLE) */
+ drawElementsInstancedANGLE(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr, primcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ANGLE_instanced_arrays/vertexAttribDivisorANGLE) */
+ vertexAttribDivisorANGLE(index: GLuint, divisor: GLuint): void;
+ readonly VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE: 0x88FE;
+}
+
+/**
+ * A controller object that allows you to abort one or more DOM requests as and when desired.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController)
+ */
+interface AbortController {
+ /**
+ * Returns the AbortSignal object associated with this object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/signal)
+ */
+ readonly signal: AbortSignal;
+ /**
+ * Invoking this method will set this object's AbortSignal's aborted flag and signal to any observers that the associated activity is to be aborted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortController/abort)
+ */
+ abort(reason?: any): void;
+}
+
+declare var AbortController: {
+ prototype: AbortController;
+ new(): AbortController;
+};
+
+interface AbortSignalEventMap {
+ "abort": Event;
+}
+
+/**
+ * A signal object that allows you to communicate with a DOM request (such as a Fetch) and abort it if required via an AbortController object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal)
+ */
+interface AbortSignal extends EventTarget {
+ /**
+ * Returns true if this AbortSignal's AbortController has signaled to abort, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/aborted)
+ */
+ readonly aborted: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_event) */
+ onabort: ((this: AbortSignal, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/reason) */
+ readonly reason: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/throwIfAborted) */
+ throwIfAborted(): void;
+ addEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AbortSignalEventMap>(type: K, listener: (this: AbortSignal, ev: AbortSignalEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var AbortSignal: {
+ prototype: AbortSignal;
+ new(): AbortSignal;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/abort_static) */
+ abort(reason?: any): AbortSignal;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/AbortSignal/timeout_static) */
+ timeout(milliseconds: number): AbortSignal;
+};
+
+interface AbstractWorkerEventMap {
+ "error": ErrorEvent;
+}
+
+interface AbstractWorker {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/error_event) */
+ onerror: ((this: AbstractWorker, ev: ErrorEvent) => any) | null;
+ addEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof AbstractWorkerEventMap>(type: K, listener: (this: AbstractWorker, ev: AbstractWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+interface AnimationFrameProvider {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/cancelAnimationFrame) */
+ cancelAnimationFrame(handle: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/requestAnimationFrame) */
+ requestAnimationFrame(callback: FrameRequestCallback): number;
+}
+
+/**
+ * A file-like object of immutable, raw data. Blobs represent data that isn't necessarily in a JavaScript-native format. The File interface is based on Blob, inheriting blob functionality and expanding it to support files on the user's system.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob)
+ */
+interface Blob {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/size) */
+ readonly size: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/type) */
+ readonly type: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/arrayBuffer) */
+ arrayBuffer(): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/slice) */
+ slice(start?: number, end?: number, contentType?: string): Blob;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/stream) */
+ stream(): ReadableStream<Uint8Array>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Blob/text) */
+ text(): Promise<string>;
+}
+
+declare var Blob: {
+ prototype: Blob;
+ new(blobParts?: BlobPart[], options?: BlobPropertyBag): Blob;
+};
+
+interface Body {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/body) */
+ readonly body: ReadableStream<Uint8Array> | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/bodyUsed) */
+ readonly bodyUsed: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/arrayBuffer) */
+ arrayBuffer(): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/blob) */
+ blob(): Promise<Blob>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/formData) */
+ formData(): Promise<FormData>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/json) */
+ json(): Promise<any>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/text) */
+ text(): Promise<string>;
+}
+
+interface BroadcastChannelEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel) */
+interface BroadcastChannel extends EventTarget {
+ /**
+ * Returns the channel name (as passed to the constructor).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/name)
+ */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/message_event) */
+ onmessage: ((this: BroadcastChannel, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/messageerror_event) */
+ onmessageerror: ((this: BroadcastChannel, ev: MessageEvent) => any) | null;
+ /**
+ * Closes the BroadcastChannel object, opening it up to garbage collection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/close)
+ */
+ close(): void;
+ /**
+ * Sends the given message to other BroadcastChannel objects set up for this channel. Messages can be structured objects, e.g. nested objects and arrays.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/BroadcastChannel/postMessage)
+ */
+ postMessage(message: any): void;
+ addEventListener<K extends keyof BroadcastChannelEventMap>(type: K, listener: (this: BroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof BroadcastChannelEventMap>(type: K, listener: (this: BroadcastChannel, ev: BroadcastChannelEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var BroadcastChannel: {
+ prototype: BroadcastChannel;
+ new(name: string): BroadcastChannel;
+};
+
+/**
+ * This Streams API interface provides a built-in byte length queuing strategy that can be used when constructing streams.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy)
+ */
+interface ByteLengthQueuingStrategy extends QueuingStrategy<ArrayBufferView> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/highWaterMark) */
+ readonly highWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ByteLengthQueuingStrategy/size) */
+ readonly size: QueuingStrategySize<ArrayBufferView>;
+}
+
+declare var ByteLengthQueuingStrategy: {
+ prototype: ByteLengthQueuingStrategy;
+ new(init: QueuingStrategyInit): ByteLengthQueuingStrategy;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSImageValue) */
+interface CSSImageValue extends CSSStyleValue {
+}
+
+declare var CSSImageValue: {
+ prototype: CSSImageValue;
+ new(): CSSImageValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeywordValue) */
+interface CSSKeywordValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSKeywordValue/value) */
+ value: string;
+}
+
+declare var CSSKeywordValue: {
+ prototype: CSSKeywordValue;
+ new(value: string): CSSKeywordValue;
+};
+
+interface CSSMathClamp extends CSSMathValue {
+ readonly lower: CSSNumericValue;
+ readonly upper: CSSNumericValue;
+ readonly value: CSSNumericValue;
+}
+
+declare var CSSMathClamp: {
+ prototype: CSSMathClamp;
+ new(lower: CSSNumberish, value: CSSNumberish, upper: CSSNumberish): CSSMathClamp;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathInvert) */
+interface CSSMathInvert extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathInvert/value) */
+ readonly value: CSSNumericValue;
+}
+
+declare var CSSMathInvert: {
+ prototype: CSSMathInvert;
+ new(arg: CSSNumberish): CSSMathInvert;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMax) */
+interface CSSMathMax extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMax/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathMax: {
+ prototype: CSSMathMax;
+ new(...args: CSSNumberish[]): CSSMathMax;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMin) */
+interface CSSMathMin extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathMin/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathMin: {
+ prototype: CSSMathMin;
+ new(...args: CSSNumberish[]): CSSMathMin;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathNegate) */
+interface CSSMathNegate extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathNegate/value) */
+ readonly value: CSSNumericValue;
+}
+
+declare var CSSMathNegate: {
+ prototype: CSSMathNegate;
+ new(arg: CSSNumberish): CSSMathNegate;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathProduct) */
+interface CSSMathProduct extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathProduct/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathProduct: {
+ prototype: CSSMathProduct;
+ new(...args: CSSNumberish[]): CSSMathProduct;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathSum) */
+interface CSSMathSum extends CSSMathValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathSum/values) */
+ readonly values: CSSNumericArray;
+}
+
+declare var CSSMathSum: {
+ prototype: CSSMathSum;
+ new(...args: CSSNumberish[]): CSSMathSum;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathValue) */
+interface CSSMathValue extends CSSNumericValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMathValue/operator) */
+ readonly operator: CSSMathOperator;
+}
+
+declare var CSSMathValue: {
+ prototype: CSSMathValue;
+ new(): CSSMathValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMatrixComponent) */
+interface CSSMatrixComponent extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSMatrixComponent/matrix) */
+ matrix: DOMMatrix;
+}
+
+declare var CSSMatrixComponent: {
+ prototype: CSSMatrixComponent;
+ new(matrix: DOMMatrixReadOnly, options?: CSSMatrixComponentOptions): CSSMatrixComponent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericArray) */
+interface CSSNumericArray {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericArray/length) */
+ readonly length: number;
+ forEach(callbackfn: (value: CSSNumericValue, key: number, parent: CSSNumericArray) => void, thisArg?: any): void;
+ [index: number]: CSSNumericValue;
+}
+
+declare var CSSNumericArray: {
+ prototype: CSSNumericArray;
+ new(): CSSNumericArray;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue) */
+interface CSSNumericValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/add) */
+ add(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/div) */
+ div(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/equals) */
+ equals(...value: CSSNumberish[]): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/max) */
+ max(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/min) */
+ min(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/mul) */
+ mul(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/sub) */
+ sub(...values: CSSNumberish[]): CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/to) */
+ to(unit: string): CSSUnitValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/toSum) */
+ toSum(...units: string[]): CSSMathSum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSNumericValue/type) */
+ type(): CSSNumericType;
+}
+
+declare var CSSNumericValue: {
+ prototype: CSSNumericValue;
+ new(): CSSNumericValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPerspective) */
+interface CSSPerspective extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSPerspective/length) */
+ length: CSSPerspectiveValue;
+}
+
+declare var CSSPerspective: {
+ prototype: CSSPerspective;
+ new(length: CSSPerspectiveValue): CSSPerspective;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate) */
+interface CSSRotate extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/angle) */
+ angle: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/x) */
+ x: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/y) */
+ y: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSRotate/z) */
+ z: CSSNumberish;
+}
+
+declare var CSSRotate: {
+ prototype: CSSRotate;
+ new(angle: CSSNumericValue): CSSRotate;
+ new(x: CSSNumberish, y: CSSNumberish, z: CSSNumberish, angle: CSSNumericValue): CSSRotate;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale) */
+interface CSSScale extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale/x) */
+ x: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale/y) */
+ y: CSSNumberish;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSScale/z) */
+ z: CSSNumberish;
+}
+
+declare var CSSScale: {
+ prototype: CSSScale;
+ new(x: CSSNumberish, y: CSSNumberish, z?: CSSNumberish): CSSScale;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkew) */
+interface CSSSkew extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkew/ax) */
+ ax: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkew/ay) */
+ ay: CSSNumericValue;
+}
+
+declare var CSSSkew: {
+ prototype: CSSSkew;
+ new(ax: CSSNumericValue, ay: CSSNumericValue): CSSSkew;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewX) */
+interface CSSSkewX extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewX/ax) */
+ ax: CSSNumericValue;
+}
+
+declare var CSSSkewX: {
+ prototype: CSSSkewX;
+ new(ax: CSSNumericValue): CSSSkewX;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewY) */
+interface CSSSkewY extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSSkewY/ay) */
+ ay: CSSNumericValue;
+}
+
+declare var CSSSkewY: {
+ prototype: CSSSkewY;
+ new(ay: CSSNumericValue): CSSSkewY;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSStyleValue) */
+interface CSSStyleValue {
+ toString(): string;
+}
+
+declare var CSSStyleValue: {
+ prototype: CSSStyleValue;
+ new(): CSSStyleValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformComponent) */
+interface CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformComponent/is2D) */
+ is2D: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformComponent/toMatrix) */
+ toMatrix(): DOMMatrix;
+ toString(): string;
+}
+
+declare var CSSTransformComponent: {
+ prototype: CSSTransformComponent;
+ new(): CSSTransformComponent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue) */
+interface CSSTransformValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue/is2D) */
+ readonly is2D: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTransformValue/toMatrix) */
+ toMatrix(): DOMMatrix;
+ forEach(callbackfn: (value: CSSTransformComponent, key: number, parent: CSSTransformValue) => void, thisArg?: any): void;
+ [index: number]: CSSTransformComponent;
+}
+
+declare var CSSTransformValue: {
+ prototype: CSSTransformValue;
+ new(transforms: CSSTransformComponent[]): CSSTransformValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate) */
+interface CSSTranslate extends CSSTransformComponent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate/x) */
+ x: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate/y) */
+ y: CSSNumericValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSTranslate/z) */
+ z: CSSNumericValue;
+}
+
+declare var CSSTranslate: {
+ prototype: CSSTranslate;
+ new(x: CSSNumericValue, y: CSSNumericValue, z?: CSSNumericValue): CSSTranslate;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnitValue) */
+interface CSSUnitValue extends CSSNumericValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnitValue/unit) */
+ readonly unit: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnitValue/value) */
+ value: number;
+}
+
+declare var CSSUnitValue: {
+ prototype: CSSUnitValue;
+ new(value: number, unit: string): CSSUnitValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnparsedValue) */
+interface CSSUnparsedValue extends CSSStyleValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSUnparsedValue/length) */
+ readonly length: number;
+ forEach(callbackfn: (value: CSSUnparsedSegment, key: number, parent: CSSUnparsedValue) => void, thisArg?: any): void;
+ [index: number]: CSSUnparsedSegment;
+}
+
+declare var CSSUnparsedValue: {
+ prototype: CSSUnparsedValue;
+ new(members: CSSUnparsedSegment[]): CSSUnparsedValue;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSVariableReferenceValue) */
+interface CSSVariableReferenceValue {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSVariableReferenceValue/fallback) */
+ readonly fallback: CSSUnparsedValue | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CSSVariableReferenceValue/variable) */
+ variable: string;
+}
+
+declare var CSSVariableReferenceValue: {
+ prototype: CSSVariableReferenceValue;
+ new(variable: string, fallback?: CSSUnparsedValue | null): CSSVariableReferenceValue;
+};
+
+/**
+ * Provides a storage mechanism for Request / Response object pairs that are cached, for example as part of the ServiceWorker life cycle. Note that the Cache interface is exposed to windowed scopes as well as workers. You don't have to use it in conjunction with service workers, even though it is defined in the service worker spec.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache)
+ */
+interface Cache {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/add) */
+ add(request: RequestInfo | URL): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/addAll) */
+ addAll(requests: RequestInfo[]): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/delete) */
+ delete(request: RequestInfo | URL, options?: CacheQueryOptions): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/keys) */
+ keys(request?: RequestInfo | URL, options?: CacheQueryOptions): Promise<ReadonlyArray<Request>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/match) */
+ match(request: RequestInfo | URL, options?: CacheQueryOptions): Promise<Response | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/matchAll) */
+ matchAll(request?: RequestInfo | URL, options?: CacheQueryOptions): Promise<ReadonlyArray<Response>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/put) */
+ put(request: RequestInfo | URL, response: Response): Promise<void>;
+}
+
+declare var Cache: {
+ prototype: Cache;
+ new(): Cache;
+};
+
+/**
+ * The storage for Cache objects.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage)
+ */
+interface CacheStorage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/delete) */
+ delete(cacheName: string): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/has) */
+ has(cacheName: string): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/keys) */
+ keys(): Promise<string[]>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/match) */
+ match(request: RequestInfo | URL, options?: MultiCacheQueryOptions): Promise<Response | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CacheStorage/open) */
+ open(cacheName: string): Promise<Cache>;
+}
+
+declare var CacheStorage: {
+ prototype: CacheStorage;
+ new(): CacheStorage;
+};
+
+interface CanvasCompositing {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/globalAlpha) */
+ globalAlpha: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/globalCompositeOperation) */
+ globalCompositeOperation: GlobalCompositeOperation;
+}
+
+interface CanvasDrawImage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/drawImage) */
+ drawImage(image: CanvasImageSource, dx: number, dy: number): void;
+ drawImage(image: CanvasImageSource, dx: number, dy: number, dw: number, dh: number): void;
+ drawImage(image: CanvasImageSource, sx: number, sy: number, sw: number, sh: number, dx: number, dy: number, dw: number, dh: number): void;
+}
+
+interface CanvasDrawPath {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/beginPath) */
+ beginPath(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/clip) */
+ clip(fillRule?: CanvasFillRule): void;
+ clip(path: Path2D, fillRule?: CanvasFillRule): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fill) */
+ fill(fillRule?: CanvasFillRule): void;
+ fill(path: Path2D, fillRule?: CanvasFillRule): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/isPointInPath) */
+ isPointInPath(x: number, y: number, fillRule?: CanvasFillRule): boolean;
+ isPointInPath(path: Path2D, x: number, y: number, fillRule?: CanvasFillRule): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/isPointInStroke) */
+ isPointInStroke(x: number, y: number): boolean;
+ isPointInStroke(path: Path2D, x: number, y: number): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/stroke) */
+ stroke(): void;
+ stroke(path: Path2D): void;
+}
+
+interface CanvasFillStrokeStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillStyle) */
+ fillStyle: string | CanvasGradient | CanvasPattern;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeStyle) */
+ strokeStyle: string | CanvasGradient | CanvasPattern;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createConicGradient) */
+ createConicGradient(startAngle: number, x: number, y: number): CanvasGradient;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createLinearGradient) */
+ createLinearGradient(x0: number, y0: number, x1: number, y1: number): CanvasGradient;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createPattern) */
+ createPattern(image: CanvasImageSource, repetition: string | null): CanvasPattern | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createRadialGradient) */
+ createRadialGradient(x0: number, y0: number, r0: number, x1: number, y1: number, r1: number): CanvasGradient;
+}
+
+interface CanvasFilters {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/filter) */
+ filter: string;
+}
+
+/**
+ * An opaque object describing a gradient. It is returned by the methods CanvasRenderingContext2D.createLinearGradient() or CanvasRenderingContext2D.createRadialGradient().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasGradient)
+ */
+interface CanvasGradient {
+ /**
+ * Adds a color stop with the given color to the gradient at the given offset. 0.0 is the offset at one end of the gradient, 1.0 is the offset at the other end.
+ *
+ * Throws an "IndexSizeError" DOMException if the offset is out of range. Throws a "SyntaxError" DOMException if the color cannot be parsed.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasGradient/addColorStop)
+ */
+ addColorStop(offset: number, color: string): void;
+}
+
+declare var CanvasGradient: {
+ prototype: CanvasGradient;
+ new(): CanvasGradient;
+};
+
+interface CanvasImageData {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/createImageData) */
+ createImageData(sw: number, sh: number, settings?: ImageDataSettings): ImageData;
+ createImageData(imagedata: ImageData): ImageData;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getImageData) */
+ getImageData(sx: number, sy: number, sw: number, sh: number, settings?: ImageDataSettings): ImageData;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/putImageData) */
+ putImageData(imagedata: ImageData, dx: number, dy: number): void;
+ putImageData(imagedata: ImageData, dx: number, dy: number, dirtyX: number, dirtyY: number, dirtyWidth: number, dirtyHeight: number): void;
+}
+
+interface CanvasImageSmoothing {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/imageSmoothingEnabled) */
+ imageSmoothingEnabled: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/imageSmoothingQuality) */
+ imageSmoothingQuality: ImageSmoothingQuality;
+}
+
+interface CanvasPath {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/arc) */
+ arc(x: number, y: number, radius: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/arcTo) */
+ arcTo(x1: number, y1: number, x2: number, y2: number, radius: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/bezierCurveTo) */
+ bezierCurveTo(cp1x: number, cp1y: number, cp2x: number, cp2y: number, x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/closePath) */
+ closePath(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/ellipse) */
+ ellipse(x: number, y: number, radiusX: number, radiusY: number, rotation: number, startAngle: number, endAngle: number, counterclockwise?: boolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineTo) */
+ lineTo(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/moveTo) */
+ moveTo(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/quadraticCurveTo) */
+ quadraticCurveTo(cpx: number, cpy: number, x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/rect) */
+ rect(x: number, y: number, w: number, h: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/roundRect) */
+ roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | (number | DOMPointInit)[]): void;
+}
+
+interface CanvasPathDrawingStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineCap) */
+ lineCap: CanvasLineCap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineDashOffset) */
+ lineDashOffset: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineJoin) */
+ lineJoin: CanvasLineJoin;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/lineWidth) */
+ lineWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/miterLimit) */
+ miterLimit: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getLineDash) */
+ getLineDash(): number[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setLineDash) */
+ setLineDash(segments: number[]): void;
+}
+
+/**
+ * An opaque object describing a pattern, based on an image, a canvas, or a video, created by the CanvasRenderingContext2D.createPattern() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasPattern)
+ */
+interface CanvasPattern {
+ /**
+ * Sets the transformation matrix that will be used when rendering the pattern during a fill or stroke painting operation.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasPattern/setTransform)
+ */
+ setTransform(transform?: DOMMatrix2DInit): void;
+}
+
+declare var CanvasPattern: {
+ prototype: CanvasPattern;
+ new(): CanvasPattern;
+};
+
+interface CanvasRect {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/clearRect) */
+ clearRect(x: number, y: number, w: number, h: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillRect) */
+ fillRect(x: number, y: number, w: number, h: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeRect) */
+ strokeRect(x: number, y: number, w: number, h: number): void;
+}
+
+interface CanvasShadowStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowBlur) */
+ shadowBlur: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowColor) */
+ shadowColor: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowOffsetX) */
+ shadowOffsetX: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/shadowOffsetY) */
+ shadowOffsetY: number;
+}
+
+interface CanvasState {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/reset) */
+ reset(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/restore) */
+ restore(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/save) */
+ save(): void;
+}
+
+interface CanvasText {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fillText) */
+ fillText(text: string, x: number, y: number, maxWidth?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/measureText) */
+ measureText(text: string): TextMetrics;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/strokeText) */
+ strokeText(text: string, x: number, y: number, maxWidth?: number): void;
+}
+
+interface CanvasTextDrawingStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/direction) */
+ direction: CanvasDirection;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/font) */
+ font: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontKerning) */
+ fontKerning: CanvasFontKerning;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontStretch) */
+ fontStretch: CanvasFontStretch;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/fontVariantCaps) */
+ fontVariantCaps: CanvasFontVariantCaps;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/letterSpacing) */
+ letterSpacing: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textAlign) */
+ textAlign: CanvasTextAlign;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textBaseline) */
+ textBaseline: CanvasTextBaseline;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/textRendering) */
+ textRendering: CanvasTextRendering;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/wordSpacing) */
+ wordSpacing: string;
+}
+
+interface CanvasTransform {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/getTransform) */
+ getTransform(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/resetTransform) */
+ resetTransform(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/rotate) */
+ rotate(angle: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/scale) */
+ scale(x: number, y: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setTransform) */
+ setTransform(a: number, b: number, c: number, d: number, e: number, f: number): void;
+ setTransform(transform?: DOMMatrix2DInit): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/transform) */
+ transform(a: number, b: number, c: number, d: number, e: number, f: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/translate) */
+ translate(x: number, y: number): void;
+}
+
+/**
+ * The Client interface represents an executable context such as a Worker, or a SharedWorker. Window clients are represented by the more-specific WindowClient. You can get Client/WindowClient objects from methods such as Clients.matchAll() and Clients.get().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client)
+ */
+interface Client {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/frameType) */
+ readonly frameType: FrameType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/id) */
+ readonly id: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/type) */
+ readonly type: ClientTypes;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/url) */
+ readonly url: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Client/postMessage) */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+}
+
+declare var Client: {
+ prototype: Client;
+ new(): Client;
+};
+
+/**
+ * Provides access to Client objects. Access it via self.clients within a service worker.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients)
+ */
+interface Clients {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/claim) */
+ claim(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/get) */
+ get(id: string): Promise<Client | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/matchAll) */
+ matchAll<T extends ClientQueryOptions>(options?: T): Promise<ReadonlyArray<T["type"] extends "window" ? WindowClient : Client>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Clients/openWindow) */
+ openWindow(url: string | URL): Promise<WindowClient | null>;
+}
+
+declare var Clients: {
+ prototype: Clients;
+ new(): Clients;
+};
+
+/**
+ * A CloseEvent is sent to clients using WebSockets when the connection is closed. This is delivered to the listener indicated by the WebSocket object's onclose attribute.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent)
+ */
+interface CloseEvent extends Event {
+ /**
+ * Returns the WebSocket connection close code provided by the server.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/code)
+ */
+ readonly code: number;
+ /**
+ * Returns the WebSocket connection close reason provided by the server.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/reason)
+ */
+ readonly reason: string;
+ /**
+ * Returns true if the connection closed cleanly; false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CloseEvent/wasClean)
+ */
+ readonly wasClean: boolean;
+}
+
+declare var CloseEvent: {
+ prototype: CloseEvent;
+ new(type: string, eventInitDict?: CloseEventInit): CloseEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream) */
+interface CompressionStream extends GenericTransformStream {
+}
+
+declare var CompressionStream: {
+ prototype: CompressionStream;
+ new(format: CompressionFormat): CompressionStream;
+};
+
+/**
+ * This Streams API interface provides a built-in byte length queuing strategy that can be used when constructing streams.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy)
+ */
+interface CountQueuingStrategy extends QueuingStrategy {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/highWaterMark) */
+ readonly highWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CountQueuingStrategy/size) */
+ readonly size: QueuingStrategySize;
+}
+
+declare var CountQueuingStrategy: {
+ prototype: CountQueuingStrategy;
+ new(init: QueuingStrategyInit): CountQueuingStrategy;
+};
+
+/**
+ * Basic cryptography features available in the current context. It allows access to a cryptographically strong random number generator and to cryptographic primitives.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto)
+ */
+interface Crypto {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/subtle)
+ */
+ readonly subtle: SubtleCrypto;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/getRandomValues) */
+ getRandomValues<T extends ArrayBufferView | null>(array: T): T;
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Crypto/randomUUID)
+ */
+ randomUUID(): \`\${string}-\${string}-\${string}-\${string}-\${string}\`;
+}
+
+declare var Crypto: {
+ prototype: Crypto;
+ new(): Crypto;
+};
+
+/**
+ * The CryptoKey dictionary of the Web Crypto API represents a cryptographic key.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey)
+ */
+interface CryptoKey {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/algorithm) */
+ readonly algorithm: KeyAlgorithm;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/extractable) */
+ readonly extractable: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/type) */
+ readonly type: KeyType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CryptoKey/usages) */
+ readonly usages: KeyUsage[];
+}
+
+declare var CryptoKey: {
+ prototype: CryptoKey;
+ new(): CryptoKey;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent) */
+interface CustomEvent<T = any> extends Event {
+ /**
+ * Returns any custom data event was created with. Typically used for synthetic events.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/detail)
+ */
+ readonly detail: T;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/CustomEvent/initCustomEvent)
+ */
+ initCustomEvent(type: string, bubbles?: boolean, cancelable?: boolean, detail?: T): void;
+}
+
+declare var CustomEvent: {
+ prototype: CustomEvent;
+ new<T>(type: string, eventInitDict?: CustomEventInit<T>): CustomEvent<T>;
+};
+
+/**
+ * An abnormal event (called an exception) which occurs as a result of calling a method or accessing a property of a web API.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException)
+ */
+interface DOMException extends Error {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/code)
+ */
+ readonly code: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/message) */
+ readonly message: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMException/name) */
+ readonly name: string;
+ readonly INDEX_SIZE_ERR: 1;
+ readonly DOMSTRING_SIZE_ERR: 2;
+ readonly HIERARCHY_REQUEST_ERR: 3;
+ readonly WRONG_DOCUMENT_ERR: 4;
+ readonly INVALID_CHARACTER_ERR: 5;
+ readonly NO_DATA_ALLOWED_ERR: 6;
+ readonly NO_MODIFICATION_ALLOWED_ERR: 7;
+ readonly NOT_FOUND_ERR: 8;
+ readonly NOT_SUPPORTED_ERR: 9;
+ readonly INUSE_ATTRIBUTE_ERR: 10;
+ readonly INVALID_STATE_ERR: 11;
+ readonly SYNTAX_ERR: 12;
+ readonly INVALID_MODIFICATION_ERR: 13;
+ readonly NAMESPACE_ERR: 14;
+ readonly INVALID_ACCESS_ERR: 15;
+ readonly VALIDATION_ERR: 16;
+ readonly TYPE_MISMATCH_ERR: 17;
+ readonly SECURITY_ERR: 18;
+ readonly NETWORK_ERR: 19;
+ readonly ABORT_ERR: 20;
+ readonly URL_MISMATCH_ERR: 21;
+ readonly QUOTA_EXCEEDED_ERR: 22;
+ readonly TIMEOUT_ERR: 23;
+ readonly INVALID_NODE_TYPE_ERR: 24;
+ readonly DATA_CLONE_ERR: 25;
+}
+
+declare var DOMException: {
+ prototype: DOMException;
+ new(message?: string, name?: string): DOMException;
+ readonly INDEX_SIZE_ERR: 1;
+ readonly DOMSTRING_SIZE_ERR: 2;
+ readonly HIERARCHY_REQUEST_ERR: 3;
+ readonly WRONG_DOCUMENT_ERR: 4;
+ readonly INVALID_CHARACTER_ERR: 5;
+ readonly NO_DATA_ALLOWED_ERR: 6;
+ readonly NO_MODIFICATION_ALLOWED_ERR: 7;
+ readonly NOT_FOUND_ERR: 8;
+ readonly NOT_SUPPORTED_ERR: 9;
+ readonly INUSE_ATTRIBUTE_ERR: 10;
+ readonly INVALID_STATE_ERR: 11;
+ readonly SYNTAX_ERR: 12;
+ readonly INVALID_MODIFICATION_ERR: 13;
+ readonly NAMESPACE_ERR: 14;
+ readonly INVALID_ACCESS_ERR: 15;
+ readonly VALIDATION_ERR: 16;
+ readonly TYPE_MISMATCH_ERR: 17;
+ readonly SECURITY_ERR: 18;
+ readonly NETWORK_ERR: 19;
+ readonly ABORT_ERR: 20;
+ readonly URL_MISMATCH_ERR: 21;
+ readonly QUOTA_EXCEEDED_ERR: 22;
+ readonly TIMEOUT_ERR: 23;
+ readonly INVALID_NODE_TYPE_ERR: 24;
+ readonly DATA_CLONE_ERR: 25;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix) */
+interface DOMMatrix extends DOMMatrixReadOnly {
+ a: number;
+ b: number;
+ c: number;
+ d: number;
+ e: number;
+ f: number;
+ m11: number;
+ m12: number;
+ m13: number;
+ m14: number;
+ m21: number;
+ m22: number;
+ m23: number;
+ m24: number;
+ m31: number;
+ m32: number;
+ m33: number;
+ m34: number;
+ m41: number;
+ m42: number;
+ m43: number;
+ m44: number;
+ invertSelf(): DOMMatrix;
+ multiplySelf(other?: DOMMatrixInit): DOMMatrix;
+ preMultiplySelf(other?: DOMMatrixInit): DOMMatrix;
+ rotateAxisAngleSelf(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;
+ rotateFromVectorSelf(x?: number, y?: number): DOMMatrix;
+ rotateSelf(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix/scale3dSelf) */
+ scale3dSelf(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrix/scaleSelf) */
+ scaleSelf(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ skewXSelf(sx?: number): DOMMatrix;
+ skewYSelf(sy?: number): DOMMatrix;
+ translateSelf(tx?: number, ty?: number, tz?: number): DOMMatrix;
+}
+
+declare var DOMMatrix: {
+ prototype: DOMMatrix;
+ new(init?: string | number[]): DOMMatrix;
+ fromFloat32Array(array32: Float32Array): DOMMatrix;
+ fromFloat64Array(array64: Float64Array): DOMMatrix;
+ fromMatrix(other?: DOMMatrixInit): DOMMatrix;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly) */
+interface DOMMatrixReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/a) */
+ readonly a: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/b) */
+ readonly b: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/c) */
+ readonly c: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/d) */
+ readonly d: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/e) */
+ readonly e: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/f) */
+ readonly f: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/is2D) */
+ readonly is2D: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/isIdentity) */
+ readonly isIdentity: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m11) */
+ readonly m11: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m12) */
+ readonly m12: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m13) */
+ readonly m13: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m14) */
+ readonly m14: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m21) */
+ readonly m21: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m22) */
+ readonly m22: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m23) */
+ readonly m23: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m24) */
+ readonly m24: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m31) */
+ readonly m31: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m32) */
+ readonly m32: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m33) */
+ readonly m33: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m34) */
+ readonly m34: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m41) */
+ readonly m41: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m42) */
+ readonly m42: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m43) */
+ readonly m43: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/m44) */
+ readonly m44: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/flipX) */
+ flipX(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/flipY) */
+ flipY(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/inverse) */
+ inverse(): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/multiply) */
+ multiply(other?: DOMMatrixInit): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotate) */
+ rotate(rotX?: number, rotY?: number, rotZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotateAxisAngle) */
+ rotateAxisAngle(x?: number, y?: number, z?: number, angle?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/rotateFromVector) */
+ rotateFromVector(x?: number, y?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scale) */
+ scale(scaleX?: number, scaleY?: number, scaleZ?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scale3d) */
+ scale3d(scale?: number, originX?: number, originY?: number, originZ?: number): DOMMatrix;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/scaleNonUniform)
+ */
+ scaleNonUniform(scaleX?: number, scaleY?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/skewX) */
+ skewX(sx?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/skewY) */
+ skewY(sy?: number): DOMMatrix;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/toFloat32Array) */
+ toFloat32Array(): Float32Array;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/toFloat64Array) */
+ toFloat64Array(): Float64Array;
+ toJSON(): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/transformPoint) */
+ transformPoint(point?: DOMPointInit): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMMatrixReadOnly/translate) */
+ translate(tx?: number, ty?: number, tz?: number): DOMMatrix;
+}
+
+declare var DOMMatrixReadOnly: {
+ prototype: DOMMatrixReadOnly;
+ new(init?: string | number[]): DOMMatrixReadOnly;
+ fromFloat32Array(array32: Float32Array): DOMMatrixReadOnly;
+ fromFloat64Array(array64: Float64Array): DOMMatrixReadOnly;
+ fromMatrix(other?: DOMMatrixInit): DOMMatrixReadOnly;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint) */
+interface DOMPoint extends DOMPointReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/w) */
+ w: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/x) */
+ x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/y) */
+ y: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/z) */
+ z: number;
+}
+
+declare var DOMPoint: {
+ prototype: DOMPoint;
+ new(x?: number, y?: number, z?: number, w?: number): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPoint/fromPoint_static) */
+ fromPoint(other?: DOMPointInit): DOMPoint;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly) */
+interface DOMPointReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/w) */
+ readonly w: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/x) */
+ readonly x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/y) */
+ readonly y: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/z) */
+ readonly z: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/matrixTransform) */
+ matrixTransform(matrix?: DOMMatrixInit): DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/toJSON) */
+ toJSON(): any;
+}
+
+declare var DOMPointReadOnly: {
+ prototype: DOMPointReadOnly;
+ new(x?: number, y?: number, z?: number, w?: number): DOMPointReadOnly;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMPointReadOnly/fromPoint_static) */
+ fromPoint(other?: DOMPointInit): DOMPointReadOnly;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad) */
+interface DOMQuad {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p1) */
+ readonly p1: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p2) */
+ readonly p2: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p3) */
+ readonly p3: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/p4) */
+ readonly p4: DOMPoint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMQuad/getBounds) */
+ getBounds(): DOMRect;
+ toJSON(): any;
+}
+
+declare var DOMQuad: {
+ prototype: DOMQuad;
+ new(p1?: DOMPointInit, p2?: DOMPointInit, p3?: DOMPointInit, p4?: DOMPointInit): DOMQuad;
+ fromQuad(other?: DOMQuadInit): DOMQuad;
+ fromRect(other?: DOMRectInit): DOMQuad;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRect) */
+interface DOMRect extends DOMRectReadOnly {
+ height: number;
+ width: number;
+ x: number;
+ y: number;
+}
+
+declare var DOMRect: {
+ prototype: DOMRect;
+ new(x?: number, y?: number, width?: number, height?: number): DOMRect;
+ fromRect(other?: DOMRectInit): DOMRect;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly) */
+interface DOMRectReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/bottom) */
+ readonly bottom: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/height) */
+ readonly height: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/left) */
+ readonly left: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/right) */
+ readonly right: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/top) */
+ readonly top: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/width) */
+ readonly width: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/x) */
+ readonly x: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/y) */
+ readonly y: number;
+ toJSON(): any;
+}
+
+declare var DOMRectReadOnly: {
+ prototype: DOMRectReadOnly;
+ new(x?: number, y?: number, width?: number, height?: number): DOMRectReadOnly;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMRectReadOnly/fromRect_static) */
+ fromRect(other?: DOMRectInit): DOMRectReadOnly;
+};
+
+/**
+ * A type returned by some APIs which contains a list of DOMString (strings).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList)
+ */
+interface DOMStringList {
+ /**
+ * Returns the number of strings in strings.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/length)
+ */
+ readonly length: number;
+ /**
+ * Returns true if strings contains string, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/contains)
+ */
+ contains(string: string): boolean;
+ /**
+ * Returns the string with index index from strings.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DOMStringList/item)
+ */
+ item(index: number): string | null;
+ [index: number]: string;
+}
+
+declare var DOMStringList: {
+ prototype: DOMStringList;
+ new(): DOMStringList;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DecompressionStream) */
+interface DecompressionStream extends GenericTransformStream {
+}
+
+declare var DecompressionStream: {
+ prototype: DecompressionStream;
+ new(format: CompressionFormat): DecompressionStream;
+};
+
+interface DedicatedWorkerGlobalScopeEventMap extends WorkerGlobalScopeEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+ "rtctransform": Event;
+}
+
+/**
+ * (the Worker global scope) is accessible through the self keyword. Some additional global functions, namespaces objects, and constructors, not typically associated with the worker global scope, but available on it, are listed in the JavaScript Reference. See also: Functions available to workers.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope)
+ */
+interface DedicatedWorkerGlobalScope extends WorkerGlobalScope, AnimationFrameProvider {
+ /**
+ * Returns dedicatedWorkerGlobal's name, i.e. the value given to the Worker constructor. Primarily useful for debugging.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/name)
+ */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/message_event) */
+ onmessage: ((this: DedicatedWorkerGlobalScope, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/messageerror_event) */
+ onmessageerror: ((this: DedicatedWorkerGlobalScope, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/rtctransform_event) */
+ onrtctransform: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
+ /**
+ * Aborts dedicatedWorkerGlobal.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/close)
+ */
+ close(): void;
+ /**
+ * Clones message and transmits it to the Worker object associated with dedicatedWorkerGlobal. transfer can be passed as a list of objects that are to be transferred rather than cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/postMessage)
+ */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+ addEventListener<K extends keyof DedicatedWorkerGlobalScopeEventMap>(type: K, listener: (this: DedicatedWorkerGlobalScope, ev: DedicatedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof DedicatedWorkerGlobalScopeEventMap>(type: K, listener: (this: DedicatedWorkerGlobalScope, ev: DedicatedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var DedicatedWorkerGlobalScope: {
+ prototype: DedicatedWorkerGlobalScope;
+ new(): DedicatedWorkerGlobalScope;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_blend_minmax) */
+interface EXT_blend_minmax {
+ readonly MIN_EXT: 0x8007;
+ readonly MAX_EXT: 0x8008;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_float) */
+interface EXT_color_buffer_float {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_color_buffer_half_float) */
+interface EXT_color_buffer_half_float {
+ readonly RGBA16F_EXT: 0x881A;
+ readonly RGB16F_EXT: 0x881B;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT: 0x8211;
+ readonly UNSIGNED_NORMALIZED_EXT: 0x8C17;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_float_blend) */
+interface EXT_float_blend {
+}
+
+/**
+ * The EXT_frag_depth extension is part of the WebGL API and enables to set a depth value of a fragment from within the fragment shader.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_frag_depth)
+ */
+interface EXT_frag_depth {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_sRGB) */
+interface EXT_sRGB {
+ readonly SRGB_EXT: 0x8C40;
+ readonly SRGB_ALPHA_EXT: 0x8C42;
+ readonly SRGB8_ALPHA8_EXT: 0x8C43;
+ readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT: 0x8210;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_shader_texture_lod) */
+interface EXT_shader_texture_lod {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_bptc) */
+interface EXT_texture_compression_bptc {
+ readonly COMPRESSED_RGBA_BPTC_UNORM_EXT: 0x8E8C;
+ readonly COMPRESSED_SRGB_ALPHA_BPTC_UNORM_EXT: 0x8E8D;
+ readonly COMPRESSED_RGB_BPTC_SIGNED_FLOAT_EXT: 0x8E8E;
+ readonly COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_EXT: 0x8E8F;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_compression_rgtc) */
+interface EXT_texture_compression_rgtc {
+ readonly COMPRESSED_RED_RGTC1_EXT: 0x8DBB;
+ readonly COMPRESSED_SIGNED_RED_RGTC1_EXT: 0x8DBC;
+ readonly COMPRESSED_RED_GREEN_RGTC2_EXT: 0x8DBD;
+ readonly COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT: 0x8DBE;
+}
+
+/**
+ * The EXT_texture_filter_anisotropic extension is part of the WebGL API and exposes two constants for anisotropic filtering (AF).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_filter_anisotropic)
+ */
+interface EXT_texture_filter_anisotropic {
+ readonly TEXTURE_MAX_ANISOTROPY_EXT: 0x84FE;
+ readonly MAX_TEXTURE_MAX_ANISOTROPY_EXT: 0x84FF;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EXT_texture_norm16) */
+interface EXT_texture_norm16 {
+ readonly R16_EXT: 0x822A;
+ readonly RG16_EXT: 0x822C;
+ readonly RGB16_EXT: 0x8054;
+ readonly RGBA16_EXT: 0x805B;
+ readonly R16_SNORM_EXT: 0x8F98;
+ readonly RG16_SNORM_EXT: 0x8F99;
+ readonly RGB16_SNORM_EXT: 0x8F9A;
+ readonly RGBA16_SNORM_EXT: 0x8F9B;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk) */
+interface EncodedVideoChunk {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/byteLength) */
+ readonly byteLength: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/duration) */
+ readonly duration: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/type) */
+ readonly type: EncodedVideoChunkType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EncodedVideoChunk/copyTo) */
+ copyTo(destination: AllowSharedBufferSource): void;
+}
+
+declare var EncodedVideoChunk: {
+ prototype: EncodedVideoChunk;
+ new(init: EncodedVideoChunkInit): EncodedVideoChunk;
+};
+
+/**
+ * Events providing information related to errors in scripts or in files.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent)
+ */
+interface ErrorEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/colno) */
+ readonly colno: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/error) */
+ readonly error: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/filename) */
+ readonly filename: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/lineno) */
+ readonly lineno: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ErrorEvent/message) */
+ readonly message: string;
+}
+
+declare var ErrorEvent: {
+ prototype: ErrorEvent;
+ new(type: string, eventInitDict?: ErrorEventInit): ErrorEvent;
+};
+
+/**
+ * An event which takes place in the DOM.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event)
+ */
+interface Event {
+ /**
+ * Returns true or false depending on how event was initialized. True if event goes through its target's ancestors in reverse tree order, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/bubbles)
+ */
+ readonly bubbles: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelBubble)
+ */
+ cancelBubble: boolean;
+ /**
+ * Returns true or false depending on how event was initialized. Its return value does not always carry meaning, but true can indicate that part of the operation during which event was dispatched, can be canceled by invoking the preventDefault() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/cancelable)
+ */
+ readonly cancelable: boolean;
+ /**
+ * Returns true or false depending on how event was initialized. True if event invokes listeners past a ShadowRoot node that is the root of its target, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composed)
+ */
+ readonly composed: boolean;
+ /**
+ * Returns the object whose event listener's callback is currently being invoked.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/currentTarget)
+ */
+ readonly currentTarget: EventTarget | null;
+ /**
+ * Returns true if preventDefault() was invoked successfully to indicate cancelation, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/defaultPrevented)
+ */
+ readonly defaultPrevented: boolean;
+ /**
+ * Returns the event's phase, which is one of NONE, CAPTURING_PHASE, AT_TARGET, and BUBBLING_PHASE.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/eventPhase)
+ */
+ readonly eventPhase: number;
+ /**
+ * Returns true if event was dispatched by the user agent, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/isTrusted)
+ */
+ readonly isTrusted: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/returnValue)
+ */
+ returnValue: boolean;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/srcElement)
+ */
+ readonly srcElement: EventTarget | null;
+ /**
+ * Returns the object to which event is dispatched (its target).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/target)
+ */
+ readonly target: EventTarget | null;
+ /**
+ * Returns the event's timestamp as the number of milliseconds measured relative to the time origin.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/timeStamp)
+ */
+ readonly timeStamp: DOMHighResTimeStamp;
+ /**
+ * Returns the type of event, e.g. "click", "hashchange", or "submit".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/type)
+ */
+ readonly type: string;
+ /**
+ * Returns the invocation target objects of event's path (objects on which listeners will be invoked), except for any nodes in shadow trees of which the shadow root's mode is "closed" that are not reachable from event's currentTarget.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/composedPath)
+ */
+ composedPath(): EventTarget[];
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/initEvent)
+ */
+ initEvent(type: string, bubbles?: boolean, cancelable?: boolean): void;
+ /**
+ * If invoked when the cancelable attribute value is true, and while executing a listener for the event with passive set to false, signals to the operation that caused event to be dispatched that it needs to be canceled.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/preventDefault)
+ */
+ preventDefault(): void;
+ /**
+ * Invoking this method prevents event from reaching any registered event listeners after the current one finishes running and, when dispatched in a tree, also prevents event from reaching any other objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopImmediatePropagation)
+ */
+ stopImmediatePropagation(): void;
+ /**
+ * When dispatched in a tree, invoking this method prevents event from reaching any objects other than the current object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Event/stopPropagation)
+ */
+ stopPropagation(): void;
+ readonly NONE: 0;
+ readonly CAPTURING_PHASE: 1;
+ readonly AT_TARGET: 2;
+ readonly BUBBLING_PHASE: 3;
+}
+
+declare var Event: {
+ prototype: Event;
+ new(type: string, eventInitDict?: EventInit): Event;
+ readonly NONE: 0;
+ readonly CAPTURING_PHASE: 1;
+ readonly AT_TARGET: 2;
+ readonly BUBBLING_PHASE: 3;
+};
+
+interface EventListener {
+ (evt: Event): void;
+}
+
+interface EventListenerObject {
+ handleEvent(object: Event): void;
+}
+
+interface EventSourceEventMap {
+ "error": Event;
+ "message": MessageEvent;
+ "open": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource) */
+interface EventSource extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/error_event) */
+ onerror: ((this: EventSource, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/message_event) */
+ onmessage: ((this: EventSource, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/open_event) */
+ onopen: ((this: EventSource, ev: Event) => any) | null;
+ /**
+ * Returns the state of this EventSource object's connection. It can have the values described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/readyState)
+ */
+ readonly readyState: number;
+ /**
+ * Returns the URL providing the event stream.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/url)
+ */
+ readonly url: string;
+ /**
+ * Returns true if the credentials mode for connection requests to the URL providing the event stream is set to "include", and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/withCredentials)
+ */
+ readonly withCredentials: boolean;
+ /**
+ * Aborts any instances of the fetch algorithm started for this EventSource object, and sets the readyState attribute to CLOSED.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventSource/close)
+ */
+ close(): void;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSED: 2;
+ addEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof EventSourceEventMap>(type: K, listener: (this: EventSource, ev: EventSourceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: (this: EventSource, event: MessageEvent) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var EventSource: {
+ prototype: EventSource;
+ new(url: string | URL, eventSourceInitDict?: EventSourceInit): EventSource;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSED: 2;
+};
+
+/**
+ * EventTarget is a DOM interface implemented by objects that can receive events and may have listeners for them.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget)
+ */
+interface EventTarget {
+ /**
+ * Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
+ *
+ * The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture.
+ *
+ * When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET.
+ *
+ * When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in § 2.8 Observing event listeners.
+ *
+ * When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed.
+ *
+ * If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted.
+ *
+ * The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/addEventListener)
+ */
+ addEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: AddEventListenerOptions | boolean): void;
+ /**
+ * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent)
+ */
+ dispatchEvent(event: Event): boolean;
+ /**
+ * Removes the event listener in target's event listener list with the same type, callback, and options.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/removeEventListener)
+ */
+ removeEventListener(type: string, callback: EventListenerOrEventListenerObject | null, options?: EventListenerOptions | boolean): void;
+}
+
+declare var EventTarget: {
+ prototype: EventTarget;
+ new(): EventTarget;
+};
+
+/**
+ * Extends the lifetime of the install and activate events dispatched on the global scope as part of the service worker lifecycle. This ensures that any functional events (like FetchEvent) are not dispatched until it upgrades database schemas and deletes the outdated cache entries.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableEvent)
+ */
+interface ExtendableEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableEvent/waitUntil) */
+ waitUntil(f: Promise<any>): void;
+}
+
+declare var ExtendableEvent: {
+ prototype: ExtendableEvent;
+ new(type: string, eventInitDict?: ExtendableEventInit): ExtendableEvent;
+};
+
+/**
+ * This ServiceWorker API interface represents the event object of a message event fired on a service worker (when a channel message is received on the ServiceWorkerGlobalScope from another context) — extends the lifetime of such events.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent)
+ */
+interface ExtendableMessageEvent extends ExtendableEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/data) */
+ readonly data: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/lastEventId) */
+ readonly lastEventId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/origin) */
+ readonly origin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/ports) */
+ readonly ports: ReadonlyArray<MessagePort>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ExtendableMessageEvent/source) */
+ readonly source: Client | ServiceWorker | MessagePort | null;
+}
+
+declare var ExtendableMessageEvent: {
+ prototype: ExtendableMessageEvent;
+ new(type: string, eventInitDict?: ExtendableMessageEventInit): ExtendableMessageEvent;
+};
+
+/**
+ * This is the event type for fetch events dispatched on the service worker global scope. It contains information about the fetch, including the request and how the receiver will treat the response. It provides the event.respondWith() method, which allows us to provide a response to this fetch.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent)
+ */
+interface FetchEvent extends ExtendableEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/clientId) */
+ readonly clientId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/handled) */
+ readonly handled: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/preloadResponse) */
+ readonly preloadResponse: Promise<any>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/request) */
+ readonly request: Request;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/resultingClientId) */
+ readonly resultingClientId: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FetchEvent/respondWith) */
+ respondWith(r: Response | PromiseLike<Response>): void;
+}
+
+declare var FetchEvent: {
+ prototype: FetchEvent;
+ new(type: string, eventInitDict: FetchEventInit): FetchEvent;
+};
+
+/**
+ * Provides information about files and allows JavaScript in a web page to access their content.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/File)
+ */
+interface File extends Blob {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/lastModified) */
+ readonly lastModified: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/File/webkitRelativePath) */
+ readonly webkitRelativePath: string;
+}
+
+declare var File: {
+ prototype: File;
+ new(fileBits: BlobPart[], fileName: string, options?: FilePropertyBag): File;
+};
+
+/**
+ * An object of this type is returned by the files property of the HTML <input> element; this lets you access the list of files selected with the <input type="file"> element. It's also used for a list of files dropped into web content when using the drag and drop API; see the DataTransfer object for details on this usage.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList)
+ */
+interface FileList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileList/item) */
+ item(index: number): File | null;
+ [index: number]: File;
+}
+
+declare var FileList: {
+ prototype: FileList;
+ new(): FileList;
+};
+
+interface FileReaderEventMap {
+ "abort": ProgressEvent<FileReader>;
+ "error": ProgressEvent<FileReader>;
+ "load": ProgressEvent<FileReader>;
+ "loadend": ProgressEvent<FileReader>;
+ "loadstart": ProgressEvent<FileReader>;
+ "progress": ProgressEvent<FileReader>;
+}
+
+/**
+ * Lets web applications asynchronously read the contents of files (or raw data buffers) stored on the user's computer, using File or Blob objects to specify the file or data to read.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader)
+ */
+interface FileReader extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error) */
+ readonly error: DOMException | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort_event) */
+ onabort: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/error_event) */
+ onerror: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/load_event) */
+ onload: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadend_event) */
+ onloadend: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/loadstart_event) */
+ onloadstart: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/progress_event) */
+ onprogress: ((this: FileReader, ev: ProgressEvent<FileReader>) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readyState) */
+ readonly readyState: typeof FileReader.EMPTY | typeof FileReader.LOADING | typeof FileReader.DONE;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/result) */
+ readonly result: string | ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/abort) */
+ abort(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsArrayBuffer) */
+ readAsArrayBuffer(blob: Blob): void;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsBinaryString)
+ */
+ readAsBinaryString(blob: Blob): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsDataURL) */
+ readAsDataURL(blob: Blob): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReader/readAsText) */
+ readAsText(blob: Blob, encoding?: string): void;
+ readonly EMPTY: 0;
+ readonly LOADING: 1;
+ readonly DONE: 2;
+ addEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof FileReaderEventMap>(type: K, listener: (this: FileReader, ev: FileReaderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var FileReader: {
+ prototype: FileReader;
+ new(): FileReader;
+ readonly EMPTY: 0;
+ readonly LOADING: 1;
+ readonly DONE: 2;
+};
+
+/**
+ * Allows to read File or Blob objects in a synchronous way.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync)
+ */
+interface FileReaderSync {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsArrayBuffer) */
+ readAsArrayBuffer(blob: Blob): ArrayBuffer;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsBinaryString)
+ */
+ readAsBinaryString(blob: Blob): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsDataURL) */
+ readAsDataURL(blob: Blob): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileReaderSync/readAsText) */
+ readAsText(blob: Blob, encoding?: string): string;
+}
+
+declare var FileReaderSync: {
+ prototype: FileReaderSync;
+ new(): FileReaderSync;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle)
+ */
+interface FileSystemDirectoryHandle extends FileSystemHandle {
+ readonly kind: "directory";
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getDirectoryHandle) */
+ getDirectoryHandle(name: string, options?: FileSystemGetDirectoryOptions): Promise<FileSystemDirectoryHandle>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/getFileHandle) */
+ getFileHandle(name: string, options?: FileSystemGetFileOptions): Promise<FileSystemFileHandle>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/removeEntry) */
+ removeEntry(name: string, options?: FileSystemRemoveOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemDirectoryHandle/resolve) */
+ resolve(possibleDescendant: FileSystemHandle): Promise<string[] | null>;
+}
+
+declare var FileSystemDirectoryHandle: {
+ prototype: FileSystemDirectoryHandle;
+ new(): FileSystemDirectoryHandle;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle)
+ */
+interface FileSystemFileHandle extends FileSystemHandle {
+ readonly kind: "file";
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/createSyncAccessHandle) */
+ createSyncAccessHandle(): Promise<FileSystemSyncAccessHandle>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/createWritable) */
+ createWritable(options?: FileSystemCreateWritableOptions): Promise<FileSystemWritableFileStream>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemFileHandle/getFile) */
+ getFile(): Promise<File>;
+}
+
+declare var FileSystemFileHandle: {
+ prototype: FileSystemFileHandle;
+ new(): FileSystemFileHandle;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle)
+ */
+interface FileSystemHandle {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/kind) */
+ readonly kind: FileSystemHandleKind;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemHandle/isSameEntry) */
+ isSameEntry(other: FileSystemHandle): Promise<boolean>;
+}
+
+declare var FileSystemHandle: {
+ prototype: FileSystemHandle;
+ new(): FileSystemHandle;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle)
+ */
+interface FileSystemSyncAccessHandle {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/flush) */
+ flush(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/getSize) */
+ getSize(): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/read) */
+ read(buffer: AllowSharedBufferSource, options?: FileSystemReadWriteOptions): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/truncate) */
+ truncate(newSize: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemSyncAccessHandle/write) */
+ write(buffer: AllowSharedBufferSource, options?: FileSystemReadWriteOptions): number;
+}
+
+declare var FileSystemSyncAccessHandle: {
+ prototype: FileSystemSyncAccessHandle;
+ new(): FileSystemSyncAccessHandle;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream)
+ */
+interface FileSystemWritableFileStream extends WritableStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/seek) */
+ seek(position: number): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/truncate) */
+ truncate(size: number): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FileSystemWritableFileStream/write) */
+ write(data: FileSystemWriteChunkType): Promise<void>;
+}
+
+declare var FileSystemWritableFileStream: {
+ prototype: FileSystemWritableFileStream;
+ new(): FileSystemWritableFileStream;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace) */
+interface FontFace {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/ascentOverride) */
+ ascentOverride: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/descentOverride) */
+ descentOverride: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/display) */
+ display: FontDisplay;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/family) */
+ family: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/featureSettings) */
+ featureSettings: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/lineGapOverride) */
+ lineGapOverride: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/loaded) */
+ readonly loaded: Promise<FontFace>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/status) */
+ readonly status: FontFaceLoadStatus;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/stretch) */
+ stretch: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/style) */
+ style: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/unicodeRange) */
+ unicodeRange: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/weight) */
+ weight: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFace/load) */
+ load(): Promise<FontFace>;
+}
+
+declare var FontFace: {
+ prototype: FontFace;
+ new(family: string, source: string | BinaryData, descriptors?: FontFaceDescriptors): FontFace;
+};
+
+interface FontFaceSetEventMap {
+ "loading": Event;
+ "loadingdone": Event;
+ "loadingerror": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet) */
+interface FontFaceSet extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loading_event) */
+ onloading: ((this: FontFaceSet, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingdone_event) */
+ onloadingdone: ((this: FontFaceSet, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/loadingerror_event) */
+ onloadingerror: ((this: FontFaceSet, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/ready) */
+ readonly ready: Promise<FontFaceSet>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/status) */
+ readonly status: FontFaceSetLoadStatus;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/check) */
+ check(font: string, text?: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSet/load) */
+ load(font: string, text?: string): Promise<FontFace[]>;
+ forEach(callbackfn: (value: FontFace, key: FontFace, parent: FontFaceSet) => void, thisArg?: any): void;
+ addEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof FontFaceSetEventMap>(type: K, listener: (this: FontFaceSet, ev: FontFaceSetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var FontFaceSet: {
+ prototype: FontFaceSet;
+ new(initialFaces: FontFace[]): FontFaceSet;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent) */
+interface FontFaceSetLoadEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FontFaceSetLoadEvent/fontfaces) */
+ readonly fontfaces: ReadonlyArray<FontFace>;
+}
+
+declare var FontFaceSetLoadEvent: {
+ prototype: FontFaceSetLoadEvent;
+ new(type: string, eventInitDict?: FontFaceSetLoadEventInit): FontFaceSetLoadEvent;
+};
+
+interface FontFaceSource {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fonts) */
+ readonly fonts: FontFaceSet;
+}
+
+/**
+ * Provides a way to easily construct a set of key/value pairs representing form fields and their values, which can then be easily sent using the XMLHttpRequest.send() method. It uses the same format a form would use if the encoding type were set to "multipart/form-data".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData)
+ */
+interface FormData {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/append) */
+ append(name: string, value: string | Blob): void;
+ append(name: string, value: string): void;
+ append(name: string, blobValue: Blob, filename?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/delete) */
+ delete(name: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/get) */
+ get(name: string): FormDataEntryValue | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/getAll) */
+ getAll(name: string): FormDataEntryValue[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/has) */
+ has(name: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/FormData/set) */
+ set(name: string, value: string | Blob): void;
+ set(name: string, value: string): void;
+ set(name: string, blobValue: Blob, filename?: string): void;
+ forEach(callbackfn: (value: FormDataEntryValue, key: string, parent: FormData) => void, thisArg?: any): void;
+}
+
+declare var FormData: {
+ prototype: FormData;
+ new(): FormData;
+};
+
+interface GenericTransformStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/readable) */
+ readonly readable: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CompressionStream/writable) */
+ readonly writable: WritableStream;
+}
+
+/**
+ * This Fetch API interface allows you to perform various actions on HTTP request and response headers. These actions include retrieving, setting, adding to, and removing. A Headers object has an associated header list, which is initially empty and consists of zero or more name and value pairs.  You can add to this using methods like append() (see Examples.) In all methods of this interface, header names are matched by case-insensitive byte sequence.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers)
+ */
+interface Headers {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/append) */
+ append(name: string, value: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/delete) */
+ delete(name: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/get) */
+ get(name: string): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/getSetCookie) */
+ getSetCookie(): string[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/has) */
+ has(name: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Headers/set) */
+ set(name: string, value: string): void;
+ forEach(callbackfn: (value: string, key: string, parent: Headers) => void, thisArg?: any): void;
+}
+
+declare var Headers: {
+ prototype: Headers;
+ new(init?: HeadersInit): Headers;
+};
+
+/**
+ * This IndexedDB API interface represents a cursor for traversing or iterating over multiple records in a database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor)
+ */
+interface IDBCursor {
+ /**
+ * Returns the direction ("next", "nextunique", "prev" or "prevunique") of the cursor.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/direction)
+ */
+ readonly direction: IDBCursorDirection;
+ /**
+ * Returns the key of the cursor. Throws a "InvalidStateError" DOMException if the cursor is advancing or is finished.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/key)
+ */
+ readonly key: IDBValidKey;
+ /**
+ * Returns the effective key of the cursor. Throws a "InvalidStateError" DOMException if the cursor is advancing or is finished.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/primaryKey)
+ */
+ readonly primaryKey: IDBValidKey;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/request) */
+ readonly request: IDBRequest;
+ /**
+ * Returns the IDBObjectStore or IDBIndex the cursor was opened from.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/source)
+ */
+ readonly source: IDBObjectStore | IDBIndex;
+ /**
+ * Advances the cursor through the next count records in range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/advance)
+ */
+ advance(count: number): void;
+ /**
+ * Advances the cursor to the next record in range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/continue)
+ */
+ continue(key?: IDBValidKey): void;
+ /**
+ * Advances the cursor to the next record in range matching or after key and primaryKey. Throws an "InvalidAccessError" DOMException if the source is not an index.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/continuePrimaryKey)
+ */
+ continuePrimaryKey(key: IDBValidKey, primaryKey: IDBValidKey): void;
+ /**
+ * Delete the record pointed at by the cursor with a new value.
+ *
+ * If successful, request's result will be undefined.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/delete)
+ */
+ delete(): IDBRequest<undefined>;
+ /**
+ * Updated the record pointed at by the cursor with a new value.
+ *
+ * Throws a "DataError" DOMException if the effective object store uses in-line keys and the key would have changed.
+ *
+ * If successful, request's result will be the record's key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursor/update)
+ */
+ update(value: any): IDBRequest<IDBValidKey>;
+}
+
+declare var IDBCursor: {
+ prototype: IDBCursor;
+ new(): IDBCursor;
+};
+
+/**
+ * This IndexedDB API interface represents a cursor for traversing or iterating over multiple records in a database. It is the same as the IDBCursor, except that it includes the value property.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursorWithValue)
+ */
+interface IDBCursorWithValue extends IDBCursor {
+ /**
+ * Returns the cursor's current value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBCursorWithValue/value)
+ */
+ readonly value: any;
+}
+
+declare var IDBCursorWithValue: {
+ prototype: IDBCursorWithValue;
+ new(): IDBCursorWithValue;
+};
+
+interface IDBDatabaseEventMap {
+ "abort": Event;
+ "close": Event;
+ "error": Event;
+ "versionchange": IDBVersionChangeEvent;
+}
+
+/**
+ * This IndexedDB API interface provides a connection to a database; you can use an IDBDatabase object to open a transaction on your database then create, manipulate, and delete objects (data) in that database. The interface provides the only way to get and manage versions of the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase)
+ */
+interface IDBDatabase extends EventTarget {
+ /**
+ * Returns the name of the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/name)
+ */
+ readonly name: string;
+ /**
+ * Returns a list of the names of object stores in the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/objectStoreNames)
+ */
+ readonly objectStoreNames: DOMStringList;
+ onabort: ((this: IDBDatabase, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/close_event) */
+ onclose: ((this: IDBDatabase, ev: Event) => any) | null;
+ onerror: ((this: IDBDatabase, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/versionchange_event) */
+ onversionchange: ((this: IDBDatabase, ev: IDBVersionChangeEvent) => any) | null;
+ /**
+ * Returns the version of the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/version)
+ */
+ readonly version: number;
+ /**
+ * Closes the connection once all running transactions have finished.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/close)
+ */
+ close(): void;
+ /**
+ * Creates a new object store with the given name and options and returns a new IDBObjectStore.
+ *
+ * Throws a "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/createObjectStore)
+ */
+ createObjectStore(name: string, options?: IDBObjectStoreParameters): IDBObjectStore;
+ /**
+ * Deletes the object store with the given name.
+ *
+ * Throws a "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/deleteObjectStore)
+ */
+ deleteObjectStore(name: string): void;
+ /**
+ * Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/transaction)
+ */
+ transaction(storeNames: string | string[], mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction;
+ addEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBDatabaseEventMap>(type: K, listener: (this: IDBDatabase, ev: IDBDatabaseEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBDatabase: {
+ prototype: IDBDatabase;
+ new(): IDBDatabase;
+};
+
+/**
+ * In the following code snippet, we make a request to open a database, and include handlers for the success and error cases. For a full working example, see our To-do Notifications app (view example live.)
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory)
+ */
+interface IDBFactory {
+ /**
+ * Compares two values as keys. Returns -1 if key1 precedes key2, 1 if key2 precedes key1, and 0 if the keys are equal.
+ *
+ * Throws a "DataError" DOMException if either input is not a valid key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/cmp)
+ */
+ cmp(first: any, second: any): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/databases) */
+ databases(): Promise<IDBDatabaseInfo[]>;
+ /**
+ * Attempts to delete the named database. If the database already exists and there are open connections that don't close in response to a versionchange event, the request will be blocked until all they close. If the request is successful request's result will be null.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/deleteDatabase)
+ */
+ deleteDatabase(name: string): IDBOpenDBRequest;
+ /**
+ * Attempts to open a connection to the named database with the current version, or 1 if it does not already exist. If the request is successful request's result will be the connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBFactory/open)
+ */
+ open(name: string, version?: number): IDBOpenDBRequest;
+}
+
+declare var IDBFactory: {
+ prototype: IDBFactory;
+ new(): IDBFactory;
+};
+
+/**
+ * IDBIndex interface of the IndexedDB API provides asynchronous access to an index in a database. An index is a kind of object store for looking up records in another object store, called the referenced object store. You use this interface to retrieve data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex)
+ */
+interface IDBIndex {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/keyPath) */
+ readonly keyPath: string | string[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/multiEntry) */
+ readonly multiEntry: boolean;
+ /**
+ * Returns the name of the index.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/name)
+ */
+ name: string;
+ /**
+ * Returns the IDBObjectStore the index belongs to.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/objectStore)
+ */
+ readonly objectStore: IDBObjectStore;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/unique) */
+ readonly unique: boolean;
+ /**
+ * Retrieves the number of records matching the given key or key range in query.
+ *
+ * If successful, request's result will be the count.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/count)
+ */
+ count(query?: IDBValidKey | IDBKeyRange): IDBRequest<number>;
+ /**
+ * Retrieves the value of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the value, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/get)
+ */
+ get(query: IDBValidKey | IDBKeyRange): IDBRequest<any>;
+ /**
+ * Retrieves the values of the records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the values.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAll)
+ */
+ getAll(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<any[]>;
+ /**
+ * Retrieves the keys of records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the keys.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getAllKeys)
+ */
+ getAllKeys(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<IDBValidKey[]>;
+ /**
+ * Retrieves the key of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the key, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/getKey)
+ */
+ getKey(query: IDBValidKey | IDBKeyRange): IDBRequest<IDBValidKey | undefined>;
+ /**
+ * Opens a cursor over the records matching query, ordered by direction. If query is null, all records in index are matched.
+ *
+ * If successful, request's result will be an IDBCursorWithValue, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/openCursor)
+ */
+ openCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursorWithValue | null>;
+ /**
+ * Opens a cursor with key only flag set over the records matching query, ordered by direction. If query is null, all records in index are matched.
+ *
+ * If successful, request's result will be an IDBCursor, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBIndex/openKeyCursor)
+ */
+ openKeyCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursor | null>;
+}
+
+declare var IDBIndex: {
+ prototype: IDBIndex;
+ new(): IDBIndex;
+};
+
+/**
+ * A key range can be a single value or a range with upper and lower bounds or endpoints. If the key range has both upper and lower bounds, then it is bounded; if it has no bounds, it is unbounded. A bounded key range can either be open (the endpoints are excluded) or closed (the endpoints are included). To retrieve all keys within a certain range, you can use the following code constructs:
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange)
+ */
+interface IDBKeyRange {
+ /**
+ * Returns lower bound, or undefined if none.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lower)
+ */
+ readonly lower: any;
+ /**
+ * Returns true if the lower open flag is set, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lowerOpen)
+ */
+ readonly lowerOpen: boolean;
+ /**
+ * Returns upper bound, or undefined if none.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upper)
+ */
+ readonly upper: any;
+ /**
+ * Returns true if the upper open flag is set, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upperOpen)
+ */
+ readonly upperOpen: boolean;
+ /**
+ * Returns true if key is included in the range, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/includes)
+ */
+ includes(key: any): boolean;
+}
+
+declare var IDBKeyRange: {
+ prototype: IDBKeyRange;
+ new(): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange spanning from lower to upper. If lowerOpen is true, lower is not included in the range. If upperOpen is true, upper is not included in the range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/bound_static)
+ */
+ bound(lower: any, upper: any, lowerOpen?: boolean, upperOpen?: boolean): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange starting at key with no upper bound. If open is true, key is not included in the range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/lowerBound_static)
+ */
+ lowerBound(lower: any, open?: boolean): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange spanning only key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/only_static)
+ */
+ only(value: any): IDBKeyRange;
+ /**
+ * Returns a new IDBKeyRange with no lower bound and ending at key. If open is true, key is not included in the range.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBKeyRange/upperBound_static)
+ */
+ upperBound(upper: any, open?: boolean): IDBKeyRange;
+};
+
+/**
+ * This example shows a variety of different uses of object stores, from updating the data structure with IDBObjectStore.createIndex inside an onupgradeneeded function, to adding a new item to our object store with IDBObjectStore.add. For a full working example, see our To-do Notifications app (view example live.)
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore)
+ */
+interface IDBObjectStore {
+ /**
+ * Returns true if the store has a key generator, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/autoIncrement)
+ */
+ readonly autoIncrement: boolean;
+ /**
+ * Returns a list of the names of indexes in the store.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/indexNames)
+ */
+ readonly indexNames: DOMStringList;
+ /**
+ * Returns the key path of the store, or null if none.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/keyPath)
+ */
+ readonly keyPath: string | string[];
+ /**
+ * Returns the name of the store.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/name)
+ */
+ name: string;
+ /**
+ * Returns the associated transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/transaction)
+ */
+ readonly transaction: IDBTransaction;
+ /**
+ * Adds or updates a record in store with the given value and key.
+ *
+ * If the store uses in-line keys and key is specified a "DataError" DOMException will be thrown.
+ *
+ * If put() is used, any existing record with the key will be replaced. If add() is used, and if a record with the key already exists the request will fail, with request's error set to a "ConstraintError" DOMException.
+ *
+ * If successful, request's result will be the record's key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/add)
+ */
+ add(value: any, key?: IDBValidKey): IDBRequest<IDBValidKey>;
+ /**
+ * Deletes all records in store.
+ *
+ * If successful, request's result will be undefined.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/clear)
+ */
+ clear(): IDBRequest<undefined>;
+ /**
+ * Retrieves the number of records matching the given key or key range in query.
+ *
+ * If successful, request's result will be the count.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/count)
+ */
+ count(query?: IDBValidKey | IDBKeyRange): IDBRequest<number>;
+ /**
+ * Creates a new index in store with the given name, keyPath and options and returns a new IDBIndex. If the keyPath and options define constraints that cannot be satisfied with the data already in store the upgrade transaction will abort with a "ConstraintError" DOMException.
+ *
+ * Throws an "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/createIndex)
+ */
+ createIndex(name: string, keyPath: string | string[], options?: IDBIndexParameters): IDBIndex;
+ /**
+ * Deletes records in store with the given key or in the given key range in query.
+ *
+ * If successful, request's result will be undefined.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/delete)
+ */
+ delete(query: IDBValidKey | IDBKeyRange): IDBRequest<undefined>;
+ /**
+ * Deletes the index in store with the given name.
+ *
+ * Throws an "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/deleteIndex)
+ */
+ deleteIndex(name: string): void;
+ /**
+ * Retrieves the value of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the value, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/get)
+ */
+ get(query: IDBValidKey | IDBKeyRange): IDBRequest<any>;
+ /**
+ * Retrieves the values of the records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the values.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getAll)
+ */
+ getAll(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<any[]>;
+ /**
+ * Retrieves the keys of records matching the given key or key range in query (up to count if given).
+ *
+ * If successful, request's result will be an Array of the keys.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getAllKeys)
+ */
+ getAllKeys(query?: IDBValidKey | IDBKeyRange | null, count?: number): IDBRequest<IDBValidKey[]>;
+ /**
+ * Retrieves the key of the first record matching the given key or key range in query.
+ *
+ * If successful, request's result will be the key, or undefined if there was no matching record.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/getKey)
+ */
+ getKey(query: IDBValidKey | IDBKeyRange): IDBRequest<IDBValidKey | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/index) */
+ index(name: string): IDBIndex;
+ /**
+ * Opens a cursor over the records matching query, ordered by direction. If query is null, all records in store are matched.
+ *
+ * If successful, request's result will be an IDBCursorWithValue pointing at the first matching record, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/openCursor)
+ */
+ openCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursorWithValue | null>;
+ /**
+ * Opens a cursor with key only flag set over the records matching query, ordered by direction. If query is null, all records in store are matched.
+ *
+ * If successful, request's result will be an IDBCursor pointing at the first matching record, or null if there were no matching records.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/openKeyCursor)
+ */
+ openKeyCursor(query?: IDBValidKey | IDBKeyRange | null, direction?: IDBCursorDirection): IDBRequest<IDBCursor | null>;
+ /**
+ * Adds or updates a record in store with the given value and key.
+ *
+ * If the store uses in-line keys and key is specified a "DataError" DOMException will be thrown.
+ *
+ * If put() is used, any existing record with the key will be replaced. If add() is used, and if a record with the key already exists the request will fail, with request's error set to a "ConstraintError" DOMException.
+ *
+ * If successful, request's result will be the record's key.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/put)
+ */
+ put(value: any, key?: IDBValidKey): IDBRequest<IDBValidKey>;
+}
+
+declare var IDBObjectStore: {
+ prototype: IDBObjectStore;
+ new(): IDBObjectStore;
+};
+
+interface IDBOpenDBRequestEventMap extends IDBRequestEventMap {
+ "blocked": IDBVersionChangeEvent;
+ "upgradeneeded": IDBVersionChangeEvent;
+}
+
+/**
+ * Also inherits methods from its parents IDBRequest and EventTarget.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest)
+ */
+interface IDBOpenDBRequest extends IDBRequest<IDBDatabase> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest/blocked_event) */
+ onblocked: ((this: IDBOpenDBRequest, ev: IDBVersionChangeEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBOpenDBRequest/upgradeneeded_event) */
+ onupgradeneeded: ((this: IDBOpenDBRequest, ev: IDBVersionChangeEvent) => any) | null;
+ addEventListener<K extends keyof IDBOpenDBRequestEventMap>(type: K, listener: (this: IDBOpenDBRequest, ev: IDBOpenDBRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBOpenDBRequestEventMap>(type: K, listener: (this: IDBOpenDBRequest, ev: IDBOpenDBRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBOpenDBRequest: {
+ prototype: IDBOpenDBRequest;
+ new(): IDBOpenDBRequest;
+};
+
+interface IDBRequestEventMap {
+ "error": Event;
+ "success": Event;
+}
+
+/**
+ * The request object does not initially contain any information about the result of the operation, but once information becomes available, an event is fired on the request, and the information becomes available through the properties of the IDBRequest instance.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest)
+ */
+interface IDBRequest<T = any> extends EventTarget {
+ /**
+ * When a request is completed, returns the error (a DOMException), or null if the request succeeded. Throws a "InvalidStateError" DOMException if the request is still pending.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/error)
+ */
+ readonly error: DOMException | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/error_event) */
+ onerror: ((this: IDBRequest<T>, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/success_event) */
+ onsuccess: ((this: IDBRequest<T>, ev: Event) => any) | null;
+ /**
+ * Returns "pending" until a request is complete, then returns "done".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/readyState)
+ */
+ readonly readyState: IDBRequestReadyState;
+ /**
+ * When a request is completed, returns the result, or undefined if the request failed. Throws a "InvalidStateError" DOMException if the request is still pending.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/result)
+ */
+ readonly result: T;
+ /**
+ * Returns the IDBObjectStore, IDBIndex, or IDBCursor the request was made against, or null if is was an open request.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/source)
+ */
+ readonly source: IDBObjectStore | IDBIndex | IDBCursor;
+ /**
+ * Returns the IDBTransaction the request was made within. If this as an open request, then it returns an upgrade transaction while it is running, or null otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBRequest/transaction)
+ */
+ readonly transaction: IDBTransaction | null;
+ addEventListener<K extends keyof IDBRequestEventMap>(type: K, listener: (this: IDBRequest<T>, ev: IDBRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBRequestEventMap>(type: K, listener: (this: IDBRequest<T>, ev: IDBRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBRequest: {
+ prototype: IDBRequest;
+ new(): IDBRequest;
+};
+
+interface IDBTransactionEventMap {
+ "abort": Event;
+ "complete": Event;
+ "error": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction) */
+interface IDBTransaction extends EventTarget {
+ /**
+ * Returns the transaction's connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/db)
+ */
+ readonly db: IDBDatabase;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/durability) */
+ readonly durability: IDBTransactionDurability;
+ /**
+ * If the transaction was aborted, returns the error (a DOMException) providing the reason.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/error)
+ */
+ readonly error: DOMException | null;
+ /**
+ * Returns the mode the transaction was created with ("readonly" or "readwrite"), or "versionchange" for an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/mode)
+ */
+ readonly mode: IDBTransactionMode;
+ /**
+ * Returns a list of the names of object stores in the transaction's scope. For an upgrade transaction this is all object stores in the database.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/objectStoreNames)
+ */
+ readonly objectStoreNames: DOMStringList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/abort_event) */
+ onabort: ((this: IDBTransaction, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/complete_event) */
+ oncomplete: ((this: IDBTransaction, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/error_event) */
+ onerror: ((this: IDBTransaction, ev: Event) => any) | null;
+ /**
+ * Aborts the transaction. All pending requests will fail with a "AbortError" DOMException and all changes made to the database will be reverted.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/abort)
+ */
+ abort(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/commit) */
+ commit(): void;
+ /**
+ * Returns an IDBObjectStore in the transaction's scope.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBTransaction/objectStore)
+ */
+ objectStore(name: string): IDBObjectStore;
+ addEventListener<K extends keyof IDBTransactionEventMap>(type: K, listener: (this: IDBTransaction, ev: IDBTransactionEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof IDBTransactionEventMap>(type: K, listener: (this: IDBTransaction, ev: IDBTransactionEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var IDBTransaction: {
+ prototype: IDBTransaction;
+ new(): IDBTransaction;
+};
+
+/**
+ * This IndexedDB API interface indicates that the version of the database has changed, as the result of an IDBOpenDBRequest.onupgradeneeded event handler function.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent)
+ */
+interface IDBVersionChangeEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent/newVersion) */
+ readonly newVersion: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBVersionChangeEvent/oldVersion) */
+ readonly oldVersion: number;
+}
+
+declare var IDBVersionChangeEvent: {
+ prototype: IDBVersionChangeEvent;
+ new(type: string, eventInitDict?: IDBVersionChangeEventInit): IDBVersionChangeEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap) */
+interface ImageBitmap {
+ /**
+ * Returns the intrinsic height of the image, in CSS pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/height)
+ */
+ readonly height: number;
+ /**
+ * Returns the intrinsic width of the image, in CSS pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/width)
+ */
+ readonly width: number;
+ /**
+ * Releases imageBitmap's underlying bitmap data.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmap/close)
+ */
+ close(): void;
+}
+
+declare var ImageBitmap: {
+ prototype: ImageBitmap;
+ new(): ImageBitmap;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmapRenderingContext) */
+interface ImageBitmapRenderingContext {
+ /**
+ * Transfers the underlying bitmap data from imageBitmap to context, and the bitmap becomes the contents of the canvas element to which context is bound.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageBitmapRenderingContext/transferFromImageBitmap)
+ */
+ transferFromImageBitmap(bitmap: ImageBitmap | null): void;
+}
+
+declare var ImageBitmapRenderingContext: {
+ prototype: ImageBitmapRenderingContext;
+ new(): ImageBitmapRenderingContext;
+};
+
+/**
+ * The underlying pixel data of an area of a <canvas> element. It is created using the ImageData() constructor or creator methods on the CanvasRenderingContext2D object associated with a canvas: createImageData() and getImageData(). It can also be used to set a part of the canvas by using putImageData().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData)
+ */
+interface ImageData {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/colorSpace) */
+ readonly colorSpace: PredefinedColorSpace;
+ /**
+ * Returns the one-dimensional array containing the data in RGBA order, as integers in the range 0 to 255.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/data)
+ */
+ readonly data: Uint8ClampedArray;
+ /**
+ * Returns the actual dimensions of the data in the ImageData object, in pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/height)
+ */
+ readonly height: number;
+ /**
+ * Returns the actual dimensions of the data in the ImageData object, in pixels.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ImageData/width)
+ */
+ readonly width: number;
+}
+
+declare var ImageData: {
+ prototype: ImageData;
+ new(sw: number, sh: number, settings?: ImageDataSettings): ImageData;
+ new(data: Uint8ClampedArray, sw: number, sh?: number, settings?: ImageDataSettings): ImageData;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/KHR_parallel_shader_compile) */
+interface KHR_parallel_shader_compile {
+ readonly COMPLETION_STATUS_KHR: 0x91B1;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock)
+ */
+interface Lock {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock/mode) */
+ readonly mode: LockMode;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Lock/name) */
+ readonly name: string;
+}
+
+declare var Lock: {
+ prototype: Lock;
+ new(): Lock;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager)
+ */
+interface LockManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager/query) */
+ query(): Promise<LockManagerSnapshot>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/LockManager/request) */
+ request(name: string, callback: LockGrantedCallback): Promise<any>;
+ request(name: string, options: LockOptions, callback: LockGrantedCallback): Promise<any>;
+}
+
+declare var LockManager: {
+ prototype: LockManager;
+ new(): LockManager;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities) */
+interface MediaCapabilities {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities/decodingInfo) */
+ decodingInfo(configuration: MediaDecodingConfiguration): Promise<MediaCapabilitiesDecodingInfo>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MediaCapabilities/encodingInfo) */
+ encodingInfo(configuration: MediaEncodingConfiguration): Promise<MediaCapabilitiesEncodingInfo>;
+}
+
+declare var MediaCapabilities: {
+ prototype: MediaCapabilities;
+ new(): MediaCapabilities;
+};
+
+/**
+ * This Channel Messaging API interface allows us to create a new message channel and send data through it via its two MessagePort properties.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel)
+ */
+interface MessageChannel {
+ /**
+ * Returns the first MessagePort object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port1)
+ */
+ readonly port1: MessagePort;
+ /**
+ * Returns the second MessagePort object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageChannel/port2)
+ */
+ readonly port2: MessagePort;
+}
+
+declare var MessageChannel: {
+ prototype: MessageChannel;
+ new(): MessageChannel;
+};
+
+/**
+ * A message received by a target object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent)
+ */
+interface MessageEvent<T = any> extends Event {
+ /**
+ * Returns the data of the message.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/data)
+ */
+ readonly data: T;
+ /**
+ * Returns the last event ID string, for server-sent events.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/lastEventId)
+ */
+ readonly lastEventId: string;
+ /**
+ * Returns the origin of the message, for server-sent events and cross-document messaging.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/origin)
+ */
+ readonly origin: string;
+ /**
+ * Returns the MessagePort array sent with the message, for cross-document messaging and channel messaging.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/ports)
+ */
+ readonly ports: ReadonlyArray<MessagePort>;
+ /**
+ * Returns the WindowProxy of the source window, for cross-document messaging, and the MessagePort being attached, in the connect event fired at SharedWorkerGlobalScope objects.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/source)
+ */
+ readonly source: MessageEventSource | null;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/initMessageEvent)
+ */
+ initMessageEvent(type: string, bubbles?: boolean, cancelable?: boolean, data?: any, origin?: string, lastEventId?: string, source?: MessageEventSource | null, ports?: MessagePort[]): void;
+}
+
+declare var MessageEvent: {
+ prototype: MessageEvent;
+ new<T>(type: string, eventInitDict?: MessageEventInit<T>): MessageEvent<T>;
+};
+
+interface MessagePortEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/**
+ * This Channel Messaging API interface represents one of the two ports of a MessageChannel, allowing messages to be sent from one port and listening out for them arriving at the other.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort)
+ */
+interface MessagePort extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/message_event) */
+ onmessage: ((this: MessagePort, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/messageerror_event) */
+ onmessageerror: ((this: MessagePort, ev: MessageEvent) => any) | null;
+ /**
+ * Disconnects the port, so that it is no longer active.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/close)
+ */
+ close(): void;
+ /**
+ * Posts a message through the channel. Objects listed in transfer are transferred, not just cloned, meaning that they are no longer usable on the sending side.
+ *
+ * Throws a "DataCloneError" DOMException if transfer contains duplicate objects or port, or if message could not be cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/postMessage)
+ */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+ /**
+ * Begins dispatching messages received on the port.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessagePort/start)
+ */
+ start(): void;
+ addEventListener<K extends keyof MessagePortEventMap>(type: K, listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof MessagePortEventMap>(type: K, listener: (this: MessagePort, ev: MessagePortEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var MessagePort: {
+ prototype: MessagePort;
+ new(): MessagePort;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager)
+ */
+interface NavigationPreloadManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/disable) */
+ disable(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/enable) */
+ enable(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/getState) */
+ getState(): Promise<NavigationPreloadState>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NavigationPreloadManager/setHeaderValue) */
+ setHeaderValue(value: string): Promise<void>;
+}
+
+declare var NavigationPreloadManager: {
+ prototype: NavigationPreloadManager;
+ new(): NavigationPreloadManager;
+};
+
+/** Available only in secure contexts. */
+interface NavigatorBadge {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/clearAppBadge) */
+ clearAppBadge(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/setAppBadge) */
+ setAppBadge(contents?: number): Promise<void>;
+}
+
+interface NavigatorConcurrentHardware {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/hardwareConcurrency) */
+ readonly hardwareConcurrency: number;
+}
+
+interface NavigatorID {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appCodeName)
+ */
+ readonly appCodeName: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appName)
+ */
+ readonly appName: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/appVersion)
+ */
+ readonly appVersion: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/platform)
+ */
+ readonly platform: string;
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/product)
+ */
+ readonly product: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/userAgent) */
+ readonly userAgent: string;
+}
+
+interface NavigatorLanguage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/language) */
+ readonly language: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/languages) */
+ readonly languages: ReadonlyArray<string>;
+}
+
+/** Available only in secure contexts. */
+interface NavigatorLocks {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/locks) */
+ readonly locks: LockManager;
+}
+
+interface NavigatorOnLine {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/onLine) */
+ readonly onLine: boolean;
+}
+
+/** Available only in secure contexts. */
+interface NavigatorStorage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Navigator/storage) */
+ readonly storage: StorageManager;
+}
+
+interface NotificationEventMap {
+ "click": Event;
+ "close": Event;
+ "error": Event;
+ "show": Event;
+}
+
+/**
+ * This Notifications API interface is used to configure and display desktop notifications to the user.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification)
+ */
+interface Notification extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/badge) */
+ readonly badge: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/body) */
+ readonly body: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/data) */
+ readonly data: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/dir) */
+ readonly dir: NotificationDirection;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/icon) */
+ readonly icon: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/lang) */
+ readonly lang: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/click_event) */
+ onclick: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/close_event) */
+ onclose: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/error_event) */
+ onerror: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/show_event) */
+ onshow: ((this: Notification, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/requireInteraction) */
+ readonly requireInteraction: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/silent) */
+ readonly silent: boolean | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/tag) */
+ readonly tag: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/title) */
+ readonly title: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/close) */
+ close(): void;
+ addEventListener<K extends keyof NotificationEventMap>(type: K, listener: (this: Notification, ev: NotificationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof NotificationEventMap>(type: K, listener: (this: Notification, ev: NotificationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Notification: {
+ prototype: Notification;
+ new(title: string, options?: NotificationOptions): Notification;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Notification/permission_static) */
+ readonly permission: NotificationPermission;
+};
+
+/**
+ * The parameter passed into the onnotificationclick handler, the NotificationEvent interface represents a notification click event that is dispatched on the ServiceWorkerGlobalScope of a ServiceWorker.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/NotificationEvent)
+ */
+interface NotificationEvent extends ExtendableEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NotificationEvent/action) */
+ readonly action: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/NotificationEvent/notification) */
+ readonly notification: Notification;
+}
+
+declare var NotificationEvent: {
+ prototype: NotificationEvent;
+ new(type: string, eventInitDict: NotificationEventInit): NotificationEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed) */
+interface OES_draw_buffers_indexed {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendEquationSeparateiOES) */
+ blendEquationSeparateiOES(buf: GLuint, modeRGB: GLenum, modeAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendEquationiOES) */
+ blendEquationiOES(buf: GLuint, mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendFuncSeparateiOES) */
+ blendFuncSeparateiOES(buf: GLuint, srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/blendFunciOES) */
+ blendFunciOES(buf: GLuint, src: GLenum, dst: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/colorMaskiOES) */
+ colorMaskiOES(buf: GLuint, r: GLboolean, g: GLboolean, b: GLboolean, a: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/disableiOES) */
+ disableiOES(target: GLenum, index: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_draw_buffers_indexed/enableiOES) */
+ enableiOES(target: GLenum, index: GLuint): void;
+}
+
+/**
+ * The OES_element_index_uint extension is part of the WebGL API and adds support for gl.UNSIGNED_INT types to WebGLRenderingContext.drawElements().
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_element_index_uint)
+ */
+interface OES_element_index_uint {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_fbo_render_mipmap) */
+interface OES_fbo_render_mipmap {
+}
+
+/**
+ * The OES_standard_derivatives extension is part of the WebGL API and adds the GLSL derivative functions dFdx, dFdy, and fwidth.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_standard_derivatives)
+ */
+interface OES_standard_derivatives {
+ readonly FRAGMENT_SHADER_DERIVATIVE_HINT_OES: 0x8B8B;
+}
+
+/**
+ * The OES_texture_float extension is part of the WebGL API and exposes floating-point pixel types for textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_float)
+ */
+interface OES_texture_float {
+}
+
+/**
+ * The OES_texture_float_linear extension is part of the WebGL API and allows linear filtering with floating-point pixel types for textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_float_linear)
+ */
+interface OES_texture_float_linear {
+}
+
+/**
+ * The OES_texture_half_float extension is part of the WebGL API and adds texture formats with 16- (aka half float) and 32-bit floating-point components.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_half_float)
+ */
+interface OES_texture_half_float {
+ readonly HALF_FLOAT_OES: 0x8D61;
+}
+
+/**
+ * The OES_texture_half_float_linear extension is part of the WebGL API and allows linear filtering with half floating-point pixel types for textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_texture_half_float_linear)
+ */
+interface OES_texture_half_float_linear {
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object) */
+interface OES_vertex_array_object {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/bindVertexArrayOES) */
+ bindVertexArrayOES(arrayObject: WebGLVertexArrayObjectOES | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/createVertexArrayOES) */
+ createVertexArrayOES(): WebGLVertexArrayObjectOES | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/deleteVertexArrayOES) */
+ deleteVertexArrayOES(arrayObject: WebGLVertexArrayObjectOES | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OES_vertex_array_object/isVertexArrayOES) */
+ isVertexArrayOES(arrayObject: WebGLVertexArrayObjectOES | null): GLboolean;
+ readonly VERTEX_ARRAY_BINDING_OES: 0x85B5;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OVR_multiview2) */
+interface OVR_multiview2 {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OVR_multiview2/framebufferTextureMultiviewOVR) */
+ framebufferTextureMultiviewOVR(target: GLenum, attachment: GLenum, texture: WebGLTexture | null, level: GLint, baseViewIndex: GLint, numViews: GLsizei): void;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_NUM_VIEWS_OVR: 0x9630;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_BASE_VIEW_INDEX_OVR: 0x9632;
+ readonly MAX_VIEWS_OVR: 0x9631;
+ readonly FRAMEBUFFER_INCOMPLETE_VIEW_TARGETS_OVR: 0x9633;
+}
+
+interface OffscreenCanvasEventMap {
+ "contextlost": Event;
+ "contextrestored": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas) */
+interface OffscreenCanvas extends EventTarget {
+ /**
+ * These attributes return the dimensions of the OffscreenCanvas object's bitmap.
+ *
+ * They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/height)
+ */
+ height: number;
+ oncontextlost: ((this: OffscreenCanvas, ev: Event) => any) | null;
+ oncontextrestored: ((this: OffscreenCanvas, ev: Event) => any) | null;
+ /**
+ * These attributes return the dimensions of the OffscreenCanvas object's bitmap.
+ *
+ * They can be set, to replace the bitmap with a new, transparent black bitmap of the specified dimensions (effectively resizing it).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/width)
+ */
+ width: number;
+ /**
+ * Returns a promise that will fulfill with a new Blob object representing a file containing the image in the OffscreenCanvas object.
+ *
+ * The argument, if provided, is a dictionary that controls the encoding options of the image file to be created. The type field specifies the file format and has a default value of "image/png"; that type is also used if the requested type isn't supported. If the image format supports variable quality (such as "image/jpeg"), then the quality field is a number in the range 0.0 to 1.0 inclusive indicating the desired quality level for the resulting image.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/convertToBlob)
+ */
+ convertToBlob(options?: ImageEncodeOptions): Promise<Blob>;
+ /**
+ * Returns an object that exposes an API for drawing on the OffscreenCanvas object. contextId specifies the desired API: "2d", "bitmaprenderer", "webgl", or "webgl2". options is handled by that API.
+ *
+ * This specification defines the "2d" context below, which is similar but distinct from the "2d" context that is created from a canvas element. The WebGL specifications define the "webgl" and "webgl2" contexts. [WEBGL]
+ *
+ * Returns null if the canvas has already been initialized with another context type (e.g., trying to get a "2d" context after getting a "webgl" context).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/getContext)
+ */
+ getContext(contextId: "2d", options?: any): OffscreenCanvasRenderingContext2D | null;
+ getContext(contextId: "bitmaprenderer", options?: any): ImageBitmapRenderingContext | null;
+ getContext(contextId: "webgl", options?: any): WebGLRenderingContext | null;
+ getContext(contextId: "webgl2", options?: any): WebGL2RenderingContext | null;
+ getContext(contextId: OffscreenRenderingContextId, options?: any): OffscreenRenderingContext | null;
+ /**
+ * Returns a newly created ImageBitmap object with the image in the OffscreenCanvas object. The image in the OffscreenCanvas object is replaced with a new blank image.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvas/transferToImageBitmap)
+ */
+ transferToImageBitmap(): ImageBitmap;
+ addEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof OffscreenCanvasEventMap>(type: K, listener: (this: OffscreenCanvas, ev: OffscreenCanvasEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var OffscreenCanvas: {
+ prototype: OffscreenCanvas;
+ new(width: number, height: number): OffscreenCanvas;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvasRenderingContext2D) */
+interface OffscreenCanvasRenderingContext2D extends CanvasCompositing, CanvasDrawImage, CanvasDrawPath, CanvasFillStrokeStyles, CanvasFilters, CanvasImageData, CanvasImageSmoothing, CanvasPath, CanvasPathDrawingStyles, CanvasRect, CanvasShadowStyles, CanvasState, CanvasText, CanvasTextDrawingStyles, CanvasTransform {
+ readonly canvas: OffscreenCanvas;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/OffscreenCanvasRenderingContext2D/commit) */
+ commit(): void;
+}
+
+declare var OffscreenCanvasRenderingContext2D: {
+ prototype: OffscreenCanvasRenderingContext2D;
+ new(): OffscreenCanvasRenderingContext2D;
+};
+
+/**
+ * This Canvas 2D API interface is used to declare a path that can then be used on a CanvasRenderingContext2D object. The path methods of the CanvasRenderingContext2D interface are also present on this interface, which gives you the convenience of being able to retain and replay your path whenever desired.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Path2D)
+ */
+interface Path2D extends CanvasPath {
+ /**
+ * Adds to the path the path given by the argument.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Path2D/addPath)
+ */
+ addPath(path: Path2D, transform?: DOMMatrix2DInit): void;
+}
+
+declare var Path2D: {
+ prototype: Path2D;
+ new(path?: Path2D | string): Path2D;
+};
+
+interface PerformanceEventMap {
+ "resourcetimingbufferfull": Event;
+}
+
+/**
+ * Provides access to performance-related information for the current page. It's part of the High Resolution Time API, but is enhanced by the Performance Timeline API, the Navigation Timing API, the User Timing API, and the Resource Timing API.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance)
+ */
+interface Performance extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/resourcetimingbufferfull_event) */
+ onresourcetimingbufferfull: ((this: Performance, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/timeOrigin) */
+ readonly timeOrigin: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearMarks) */
+ clearMarks(markName?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearMeasures) */
+ clearMeasures(measureName?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/clearResourceTimings) */
+ clearResourceTimings(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntries) */
+ getEntries(): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByName) */
+ getEntriesByName(name: string, type?: string): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/getEntriesByType) */
+ getEntriesByType(type: string): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/mark) */
+ mark(markName: string, markOptions?: PerformanceMarkOptions): PerformanceMark;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/measure) */
+ measure(measureName: string, startOrMeasureOptions?: string | PerformanceMeasureOptions, endMark?: string): PerformanceMeasure;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/now) */
+ now(): DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/setResourceTimingBufferSize) */
+ setResourceTimingBufferSize(maxSize: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Performance/toJSON) */
+ toJSON(): any;
+ addEventListener<K extends keyof PerformanceEventMap>(type: K, listener: (this: Performance, ev: PerformanceEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof PerformanceEventMap>(type: K, listener: (this: Performance, ev: PerformanceEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Performance: {
+ prototype: Performance;
+ new(): Performance;
+};
+
+/**
+ * Encapsulates a single performance metric that is part of the performance timeline. A performance entry can be directly created by making a performance mark or measure (for example by calling the mark() method) at an explicit point in an application. Performance entries are also created in indirect ways such as loading a resource (such as an image).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry)
+ */
+interface PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/duration) */
+ readonly duration: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/entryType) */
+ readonly entryType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/startTime) */
+ readonly startTime: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceEntry/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceEntry: {
+ prototype: PerformanceEntry;
+ new(): PerformanceEntry;
+};
+
+/**
+ * PerformanceMark is an abstract interface for PerformanceEntry objects with an entryType of "mark". Entries of this type are created by calling performance.mark() to add a named DOMHighResTimeStamp (the mark) to the browser's performance timeline.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMark)
+ */
+interface PerformanceMark extends PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMark/detail) */
+ readonly detail: any;
+}
+
+declare var PerformanceMark: {
+ prototype: PerformanceMark;
+ new(markName: string, markOptions?: PerformanceMarkOptions): PerformanceMark;
+};
+
+/**
+ * PerformanceMeasure is an abstract interface for PerformanceEntry objects with an entryType of "measure". Entries of this type are created by calling performance.measure() to add a named DOMHighResTimeStamp (the measure) between two marks to the browser's performance timeline.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMeasure)
+ */
+interface PerformanceMeasure extends PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceMeasure/detail) */
+ readonly detail: any;
+}
+
+declare var PerformanceMeasure: {
+ prototype: PerformanceMeasure;
+ new(): PerformanceMeasure;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver) */
+interface PerformanceObserver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/disconnect) */
+ disconnect(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/observe) */
+ observe(options?: PerformanceObserverInit): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/takeRecords) */
+ takeRecords(): PerformanceEntryList;
+}
+
+declare var PerformanceObserver: {
+ prototype: PerformanceObserver;
+ new(callback: PerformanceObserverCallback): PerformanceObserver;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserver/supportedEntryTypes_static) */
+ readonly supportedEntryTypes: ReadonlyArray<string>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList) */
+interface PerformanceObserverEntryList {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntries) */
+ getEntries(): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByName) */
+ getEntriesByName(name: string, type?: string): PerformanceEntryList;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceObserverEntryList/getEntriesByType) */
+ getEntriesByType(type: string): PerformanceEntryList;
+}
+
+declare var PerformanceObserverEntryList: {
+ prototype: PerformanceObserverEntryList;
+ new(): PerformanceObserverEntryList;
+};
+
+/**
+ * Enables retrieval and analysis of detailed network timing data regarding the loading of an application's resources. An application can use the timing metrics to determine, for example, the length of time it takes to fetch a specific resource, such as an XMLHttpRequest, <SVG>, image, or script.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming)
+ */
+interface PerformanceResourceTiming extends PerformanceEntry {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/connectEnd) */
+ readonly connectEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/connectStart) */
+ readonly connectStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/decodedBodySize) */
+ readonly decodedBodySize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/domainLookupEnd) */
+ readonly domainLookupEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/domainLookupStart) */
+ readonly domainLookupStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/encodedBodySize) */
+ readonly encodedBodySize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/fetchStart) */
+ readonly fetchStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/initiatorType) */
+ readonly initiatorType: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/nextHopProtocol) */
+ readonly nextHopProtocol: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/redirectEnd) */
+ readonly redirectEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/redirectStart) */
+ readonly redirectStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/requestStart) */
+ readonly requestStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/responseEnd) */
+ readonly responseEnd: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/responseStart) */
+ readonly responseStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/secureConnectionStart) */
+ readonly secureConnectionStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/serverTiming) */
+ readonly serverTiming: ReadonlyArray<PerformanceServerTiming>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/transferSize) */
+ readonly transferSize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/workerStart) */
+ readonly workerStart: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceResourceTiming/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceResourceTiming: {
+ prototype: PerformanceResourceTiming;
+ new(): PerformanceResourceTiming;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming) */
+interface PerformanceServerTiming {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/description) */
+ readonly description: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/duration) */
+ readonly duration: DOMHighResTimeStamp;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PerformanceServerTiming/toJSON) */
+ toJSON(): any;
+}
+
+declare var PerformanceServerTiming: {
+ prototype: PerformanceServerTiming;
+ new(): PerformanceServerTiming;
+};
+
+interface PermissionStatusEventMap {
+ "change": Event;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus) */
+interface PermissionStatus extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/change_event) */
+ onchange: ((this: PermissionStatus, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PermissionStatus/state) */
+ readonly state: PermissionState;
+ addEventListener<K extends keyof PermissionStatusEventMap>(type: K, listener: (this: PermissionStatus, ev: PermissionStatusEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof PermissionStatusEventMap>(type: K, listener: (this: PermissionStatus, ev: PermissionStatusEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var PermissionStatus: {
+ prototype: PermissionStatus;
+ new(): PermissionStatus;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Permissions) */
+interface Permissions {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Permissions/query) */
+ query(permissionDesc: PermissionDescriptor): Promise<PermissionStatus>;
+}
+
+declare var Permissions: {
+ prototype: Permissions;
+ new(): Permissions;
+};
+
+/**
+ * Events measuring progress of an underlying process, like an HTTP request (for an XMLHttpRequest, or the loading of the underlying resource of an <img>, <audio>, <video>, <style> or <link>).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent)
+ */
+interface ProgressEvent<T extends EventTarget = EventTarget> extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/lengthComputable) */
+ readonly lengthComputable: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/loaded) */
+ readonly loaded: number;
+ readonly target: T | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ProgressEvent/total) */
+ readonly total: number;
+}
+
+declare var ProgressEvent: {
+ prototype: ProgressEvent;
+ new(type: string, eventInitDict?: ProgressEventInit): ProgressEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent) */
+interface PromiseRejectionEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/promise) */
+ readonly promise: Promise<any>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PromiseRejectionEvent/reason) */
+ readonly reason: any;
+}
+
+declare var PromiseRejectionEvent: {
+ prototype: PromiseRejectionEvent;
+ new(type: string, eventInitDict: PromiseRejectionEventInit): PromiseRejectionEvent;
+};
+
+/**
+ * This Push API interface represents a push message that has been received. This event is sent to the global scope of a ServiceWorker. It contains the information sent from an application server to a PushSubscription.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushEvent)
+ */
+interface PushEvent extends ExtendableEvent {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushEvent/data) */
+ readonly data: PushMessageData | null;
+}
+
+declare var PushEvent: {
+ prototype: PushEvent;
+ new(type: string, eventInitDict?: PushEventInit): PushEvent;
+};
+
+/**
+ * This Push API interface provides a way to receive notifications from third-party servers as well as request URLs for push notifications.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager)
+ */
+interface PushManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/getSubscription) */
+ getSubscription(): Promise<PushSubscription | null>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/permissionState) */
+ permissionState(options?: PushSubscriptionOptionsInit): Promise<PermissionState>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/subscribe) */
+ subscribe(options?: PushSubscriptionOptionsInit): Promise<PushSubscription>;
+}
+
+declare var PushManager: {
+ prototype: PushManager;
+ new(): PushManager;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushManager/supportedContentEncodings_static) */
+ readonly supportedContentEncodings: ReadonlyArray<string>;
+};
+
+/**
+ * This Push API interface provides methods which let you retrieve the push data sent by a server in various formats.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData)
+ */
+interface PushMessageData {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/arrayBuffer) */
+ arrayBuffer(): ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/blob) */
+ blob(): Blob;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/json) */
+ json(): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushMessageData/text) */
+ text(): string;
+}
+
+declare var PushMessageData: {
+ prototype: PushMessageData;
+ new(): PushMessageData;
+};
+
+/**
+ * This Push API interface provides a subcription's URL endpoint and allows unsubscription from a push service.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription)
+ */
+interface PushSubscription {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/endpoint) */
+ readonly endpoint: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/expirationTime) */
+ readonly expirationTime: EpochTimeStamp | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/options) */
+ readonly options: PushSubscriptionOptions;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/getKey) */
+ getKey(name: PushEncryptionKeyName): ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/toJSON) */
+ toJSON(): PushSubscriptionJSON;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscription/unsubscribe) */
+ unsubscribe(): Promise<boolean>;
+}
+
+declare var PushSubscription: {
+ prototype: PushSubscription;
+ new(): PushSubscription;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions)
+ */
+interface PushSubscriptionOptions {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions/applicationServerKey) */
+ readonly applicationServerKey: ArrayBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/PushSubscriptionOptions/userVisibleOnly) */
+ readonly userVisibleOnly: boolean;
+}
+
+declare var PushSubscriptionOptions: {
+ prototype: PushSubscriptionOptions;
+ new(): PushSubscriptionOptions;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame) */
+interface RTCEncodedAudioFrame {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/data) */
+ data: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedAudioFrame/getMetadata) */
+ getMetadata(): RTCEncodedAudioFrameMetadata;
+}
+
+declare var RTCEncodedAudioFrame: {
+ prototype: RTCEncodedAudioFrame;
+ new(): RTCEncodedAudioFrame;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame) */
+interface RTCEncodedVideoFrame {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/data) */
+ data: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/type) */
+ readonly type: RTCEncodedVideoFrameType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCEncodedVideoFrame/getMetadata) */
+ getMetadata(): RTCEncodedVideoFrameMetadata;
+}
+
+declare var RTCEncodedVideoFrame: {
+ prototype: RTCEncodedVideoFrame;
+ new(): RTCEncodedVideoFrame;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer) */
+interface RTCRtpScriptTransformer extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/options) */
+ readonly options: any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/readable) */
+ readonly readable: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/writable) */
+ readonly writable: WritableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/generateKeyFrame) */
+ generateKeyFrame(rid?: string): Promise<number>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCRtpScriptTransformer/sendKeyFrameRequest) */
+ sendKeyFrameRequest(): Promise<void>;
+}
+
+declare var RTCRtpScriptTransformer: {
+ prototype: RTCRtpScriptTransformer;
+ new(): RTCRtpScriptTransformer;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTransformEvent) */
+interface RTCTransformEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/RTCTransformEvent/transformer) */
+ readonly transformer: RTCRtpScriptTransformer;
+}
+
+declare var RTCTransformEvent: {
+ prototype: RTCTransformEvent;
+ new(): RTCTransformEvent;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController) */
+interface ReadableByteStreamController {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/byobRequest) */
+ readonly byobRequest: ReadableStreamBYOBRequest | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/enqueue) */
+ enqueue(chunk: ArrayBufferView): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableByteStreamController/error) */
+ error(e?: any): void;
+}
+
+declare var ReadableByteStreamController: {
+ prototype: ReadableByteStreamController;
+ new(): ReadableByteStreamController;
+};
+
+/**
+ * This Streams API interface represents a readable stream of byte data. The Fetch API offers a concrete instance of a ReadableStream through the body property of a Response object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream)
+ */
+interface ReadableStream<R = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/locked) */
+ readonly locked: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/cancel) */
+ cancel(reason?: any): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/getReader) */
+ getReader(options: { mode: "byob" }): ReadableStreamBYOBReader;
+ getReader(): ReadableStreamDefaultReader<R>;
+ getReader(options?: ReadableStreamGetReaderOptions): ReadableStreamReader<R>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeThrough) */
+ pipeThrough<T>(transform: ReadableWritablePair<T, R>, options?: StreamPipeOptions): ReadableStream<T>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/pipeTo) */
+ pipeTo(destination: WritableStream<R>, options?: StreamPipeOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStream/tee) */
+ tee(): [ReadableStream<R>, ReadableStream<R>];
+}
+
+declare var ReadableStream: {
+ prototype: ReadableStream;
+ new(underlyingSource: UnderlyingByteSource, strategy?: { highWaterMark?: number }): ReadableStream<Uint8Array>;
+ new<R = any>(underlyingSource: UnderlyingDefaultSource<R>, strategy?: QueuingStrategy<R>): ReadableStream<R>;
+ new<R = any>(underlyingSource?: UnderlyingSource<R>, strategy?: QueuingStrategy<R>): ReadableStream<R>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader) */
+interface ReadableStreamBYOBReader extends ReadableStreamGenericReader {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/read) */
+ read<T extends ArrayBufferView>(view: T): Promise<ReadableStreamReadResult<T>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/releaseLock) */
+ releaseLock(): void;
+}
+
+declare var ReadableStreamBYOBReader: {
+ prototype: ReadableStreamBYOBReader;
+ new(stream: ReadableStream): ReadableStreamBYOBReader;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest) */
+interface ReadableStreamBYOBRequest {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/view) */
+ readonly view: ArrayBufferView | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respond) */
+ respond(bytesWritten: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBRequest/respondWithNewView) */
+ respondWithNewView(view: ArrayBufferView): void;
+}
+
+declare var ReadableStreamBYOBRequest: {
+ prototype: ReadableStreamBYOBRequest;
+ new(): ReadableStreamBYOBRequest;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController) */
+interface ReadableStreamDefaultController<R = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/enqueue) */
+ enqueue(chunk?: R): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultController/error) */
+ error(e?: any): void;
+}
+
+declare var ReadableStreamDefaultController: {
+ prototype: ReadableStreamDefaultController;
+ new(): ReadableStreamDefaultController;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader) */
+interface ReadableStreamDefaultReader<R = any> extends ReadableStreamGenericReader {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/read) */
+ read(): Promise<ReadableStreamReadResult<R>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamDefaultReader/releaseLock) */
+ releaseLock(): void;
+}
+
+declare var ReadableStreamDefaultReader: {
+ prototype: ReadableStreamDefaultReader;
+ new<R = any>(stream: ReadableStream<R>): ReadableStreamDefaultReader<R>;
+};
+
+interface ReadableStreamGenericReader {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/closed) */
+ readonly closed: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReadableStreamBYOBReader/cancel) */
+ cancel(reason?: any): Promise<void>;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report) */
+interface Report {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/body) */
+ readonly body: ReportBody | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/type) */
+ readonly type: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Report/url) */
+ readonly url: string;
+ toJSON(): any;
+}
+
+declare var Report: {
+ prototype: Report;
+ new(): Report;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportBody) */
+interface ReportBody {
+ toJSON(): any;
+}
+
+declare var ReportBody: {
+ prototype: ReportBody;
+ new(): ReportBody;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver) */
+interface ReportingObserver {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/disconnect) */
+ disconnect(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/observe) */
+ observe(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ReportingObserver/takeRecords) */
+ takeRecords(): ReportList;
+}
+
+declare var ReportingObserver: {
+ prototype: ReportingObserver;
+ new(callback: ReportingObserverCallback, options?: ReportingObserverOptions): ReportingObserver;
+};
+
+/**
+ * This Fetch API interface represents a resource request.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request)
+ */
+interface Request extends Body {
+ /**
+ * Returns the cache mode associated with request, which is a string indicating how the request will interact with the browser's cache when fetching.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/cache)
+ */
+ readonly cache: RequestCache;
+ /**
+ * Returns the credentials mode associated with request, which is a string indicating whether credentials will be sent with the request always, never, or only when sent to a same-origin URL.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/credentials)
+ */
+ readonly credentials: RequestCredentials;
+ /**
+ * Returns the kind of resource requested by request, e.g., "document" or "script".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/destination)
+ */
+ readonly destination: RequestDestination;
+ /**
+ * Returns a Headers object consisting of the headers associated with request. Note that headers added in the network layer by the user agent will not be accounted for in this object, e.g., the "Host" header.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/headers)
+ */
+ readonly headers: Headers;
+ /**
+ * Returns request's subresource integrity metadata, which is a cryptographic hash of the resource being fetched. Its value consists of multiple hashes separated by whitespace. [SRI]
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/integrity)
+ */
+ readonly integrity: string;
+ /**
+ * Returns a boolean indicating whether or not request can outlive the global in which it was created.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/keepalive)
+ */
+ readonly keepalive: boolean;
+ /**
+ * Returns request's HTTP method, which is "GET" by default.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/method)
+ */
+ readonly method: string;
+ /**
+ * Returns the mode associated with request, which is a string indicating whether the request will use CORS, or will be restricted to same-origin URLs.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/mode)
+ */
+ readonly mode: RequestMode;
+ /**
+ * Returns the redirect mode associated with request, which is a string indicating how redirects for the request will be handled during fetching. A request will follow redirects by default.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/redirect)
+ */
+ readonly redirect: RequestRedirect;
+ /**
+ * Returns the referrer of request. Its value can be a same-origin URL if explicitly set in init, the empty string to indicate no referrer, and "about:client" when defaulting to the global's default. This is used during fetching to determine the value of the \`Referer\` header of the request being made.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/referrer)
+ */
+ readonly referrer: string;
+ /**
+ * Returns the referrer policy associated with request. This is used during fetching to compute the value of the request's referrer.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/referrerPolicy)
+ */
+ readonly referrerPolicy: ReferrerPolicy;
+ /**
+ * Returns the signal associated with request, which is an AbortSignal object indicating whether or not request has been aborted, and its abort event handler.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/signal)
+ */
+ readonly signal: AbortSignal;
+ /**
+ * Returns the URL of request as a string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/url)
+ */
+ readonly url: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Request/clone) */
+ clone(): Request;
+}
+
+declare var Request: {
+ prototype: Request;
+ new(input: RequestInfo | URL, init?: RequestInit): Request;
+};
+
+/**
+ * This Fetch API interface represents the response to a request.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response)
+ */
+interface Response extends Body {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/headers) */
+ readonly headers: Headers;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/ok) */
+ readonly ok: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirected) */
+ readonly redirected: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/status) */
+ readonly status: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/statusText) */
+ readonly statusText: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/type) */
+ readonly type: ResponseType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/url) */
+ readonly url: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/clone) */
+ clone(): Response;
+}
+
+declare var Response: {
+ prototype: Response;
+ new(body?: BodyInit | null, init?: ResponseInit): Response;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/error_static) */
+ error(): Response;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/json_static) */
+ json(data: any, init?: ResponseInit): Response;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Response/redirect_static) */
+ redirect(url: string | URL, status?: number): Response;
+};
+
+/**
+ * Inherits from Event, and represents the event object of an event sent on a document or worker when its content security policy is violated.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent)
+ */
+interface SecurityPolicyViolationEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/blockedURI) */
+ readonly blockedURI: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/columnNumber) */
+ readonly columnNumber: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/disposition) */
+ readonly disposition: SecurityPolicyViolationEventDisposition;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/documentURI) */
+ readonly documentURI: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/effectiveDirective) */
+ readonly effectiveDirective: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/lineNumber) */
+ readonly lineNumber: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/originalPolicy) */
+ readonly originalPolicy: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/referrer) */
+ readonly referrer: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/sample) */
+ readonly sample: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/sourceFile) */
+ readonly sourceFile: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/statusCode) */
+ readonly statusCode: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SecurityPolicyViolationEvent/violatedDirective) */
+ readonly violatedDirective: string;
+}
+
+declare var SecurityPolicyViolationEvent: {
+ prototype: SecurityPolicyViolationEvent;
+ new(type: string, eventInitDict?: SecurityPolicyViolationEventInit): SecurityPolicyViolationEvent;
+};
+
+interface ServiceWorkerEventMap extends AbstractWorkerEventMap {
+ "statechange": Event;
+}
+
+/**
+ * This ServiceWorker API interface provides a reference to a service worker. Multiple browsing contexts (e.g. pages, workers, etc.) can be associated with the same service worker, each through a unique ServiceWorker object.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker)
+ */
+interface ServiceWorker extends EventTarget, AbstractWorker {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/statechange_event) */
+ onstatechange: ((this: ServiceWorker, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/scriptURL) */
+ readonly scriptURL: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/state) */
+ readonly state: ServiceWorkerState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorker/postMessage) */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+ addEventListener<K extends keyof ServiceWorkerEventMap>(type: K, listener: (this: ServiceWorker, ev: ServiceWorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ServiceWorkerEventMap>(type: K, listener: (this: ServiceWorker, ev: ServiceWorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ServiceWorker: {
+ prototype: ServiceWorker;
+ new(): ServiceWorker;
+};
+
+interface ServiceWorkerContainerEventMap {
+ "controllerchange": Event;
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/**
+ * The ServiceWorkerContainer interface of the ServiceWorker API provides an object representing the service worker as an overall unit in the network ecosystem, including facilities to register, unregister and update service workers, and access the state of service workers and their registrations.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer)
+ */
+interface ServiceWorkerContainer extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/controller) */
+ readonly controller: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/controllerchange_event) */
+ oncontrollerchange: ((this: ServiceWorkerContainer, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/message_event) */
+ onmessage: ((this: ServiceWorkerContainer, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/messageerror_event) */
+ onmessageerror: ((this: ServiceWorkerContainer, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/ready) */
+ readonly ready: Promise<ServiceWorkerRegistration>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistration) */
+ getRegistration(clientURL?: string | URL): Promise<ServiceWorkerRegistration | undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/getRegistrations) */
+ getRegistrations(): Promise<ReadonlyArray<ServiceWorkerRegistration>>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/register) */
+ register(scriptURL: string | URL, options?: RegistrationOptions): Promise<ServiceWorkerRegistration>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerContainer/startMessages) */
+ startMessages(): void;
+ addEventListener<K extends keyof ServiceWorkerContainerEventMap>(type: K, listener: (this: ServiceWorkerContainer, ev: ServiceWorkerContainerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ServiceWorkerContainerEventMap>(type: K, listener: (this: ServiceWorkerContainer, ev: ServiceWorkerContainerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ServiceWorkerContainer: {
+ prototype: ServiceWorkerContainer;
+ new(): ServiceWorkerContainer;
+};
+
+interface ServiceWorkerGlobalScopeEventMap extends WorkerGlobalScopeEventMap {
+ "activate": ExtendableEvent;
+ "fetch": FetchEvent;
+ "install": ExtendableEvent;
+ "message": ExtendableMessageEvent;
+ "messageerror": MessageEvent;
+ "notificationclick": NotificationEvent;
+ "notificationclose": NotificationEvent;
+ "push": PushEvent;
+ "pushsubscriptionchange": Event;
+}
+
+/**
+ * This ServiceWorker API interface represents the global execution context of a service worker.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope)
+ */
+interface ServiceWorkerGlobalScope extends WorkerGlobalScope {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/clients) */
+ readonly clients: Clients;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/activate_event) */
+ onactivate: ((this: ServiceWorkerGlobalScope, ev: ExtendableEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/fetch_event) */
+ onfetch: ((this: ServiceWorkerGlobalScope, ev: FetchEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/install_event) */
+ oninstall: ((this: ServiceWorkerGlobalScope, ev: ExtendableEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/message_event) */
+ onmessage: ((this: ServiceWorkerGlobalScope, ev: ExtendableMessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/messageerror_event) */
+ onmessageerror: ((this: ServiceWorkerGlobalScope, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/notificationclick_event) */
+ onnotificationclick: ((this: ServiceWorkerGlobalScope, ev: NotificationEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/notificationclose_event) */
+ onnotificationclose: ((this: ServiceWorkerGlobalScope, ev: NotificationEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/push_event) */
+ onpush: ((this: ServiceWorkerGlobalScope, ev: PushEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/pushsubscriptionchange_event) */
+ onpushsubscriptionchange: ((this: ServiceWorkerGlobalScope, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/registration) */
+ readonly registration: ServiceWorkerRegistration;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/serviceWorker) */
+ readonly serviceWorker: ServiceWorker;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerGlobalScope/skipWaiting) */
+ skipWaiting(): Promise<void>;
+ addEventListener<K extends keyof ServiceWorkerGlobalScopeEventMap>(type: K, listener: (this: ServiceWorkerGlobalScope, ev: ServiceWorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ServiceWorkerGlobalScopeEventMap>(type: K, listener: (this: ServiceWorkerGlobalScope, ev: ServiceWorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ServiceWorkerGlobalScope: {
+ prototype: ServiceWorkerGlobalScope;
+ new(): ServiceWorkerGlobalScope;
+};
+
+interface ServiceWorkerRegistrationEventMap {
+ "updatefound": Event;
+}
+
+/**
+ * This ServiceWorker API interface represents the service worker registration. You register a service worker to control one or more pages that share the same origin.
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration)
+ */
+interface ServiceWorkerRegistration extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/active) */
+ readonly active: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/installing) */
+ readonly installing: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/navigationPreload) */
+ readonly navigationPreload: NavigationPreloadManager;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/updatefound_event) */
+ onupdatefound: ((this: ServiceWorkerRegistration, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/pushManager) */
+ readonly pushManager: PushManager;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/scope) */
+ readonly scope: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/updateViaCache) */
+ readonly updateViaCache: ServiceWorkerUpdateViaCache;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/waiting) */
+ readonly waiting: ServiceWorker | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/getNotifications) */
+ getNotifications(filter?: GetNotificationOptions): Promise<Notification[]>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/showNotification) */
+ showNotification(title: string, options?: NotificationOptions): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/unregister) */
+ unregister(): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ServiceWorkerRegistration/update) */
+ update(): Promise<void>;
+ addEventListener<K extends keyof ServiceWorkerRegistrationEventMap>(type: K, listener: (this: ServiceWorkerRegistration, ev: ServiceWorkerRegistrationEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof ServiceWorkerRegistrationEventMap>(type: K, listener: (this: ServiceWorkerRegistration, ev: ServiceWorkerRegistrationEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var ServiceWorkerRegistration: {
+ prototype: ServiceWorkerRegistration;
+ new(): ServiceWorkerRegistration;
+};
+
+interface SharedWorkerGlobalScopeEventMap extends WorkerGlobalScopeEventMap {
+ "connect": MessageEvent;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope) */
+interface SharedWorkerGlobalScope extends WorkerGlobalScope {
+ /**
+ * Returns sharedWorkerGlobal's name, i.e. the value given to the SharedWorker constructor. Multiple SharedWorker objects can correspond to the same shared worker (and SharedWorkerGlobalScope), by reusing the same name.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope/name)
+ */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope/connect_event) */
+ onconnect: ((this: SharedWorkerGlobalScope, ev: MessageEvent) => any) | null;
+ /**
+ * Aborts sharedWorkerGlobal.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SharedWorkerGlobalScope/close)
+ */
+ close(): void;
+ addEventListener<K extends keyof SharedWorkerGlobalScopeEventMap>(type: K, listener: (this: SharedWorkerGlobalScope, ev: SharedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof SharedWorkerGlobalScopeEventMap>(type: K, listener: (this: SharedWorkerGlobalScope, ev: SharedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var SharedWorkerGlobalScope: {
+ prototype: SharedWorkerGlobalScope;
+ new(): SharedWorkerGlobalScope;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager)
+ */
+interface StorageManager {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/estimate) */
+ estimate(): Promise<StorageEstimate>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/getDirectory) */
+ getDirectory(): Promise<FileSystemDirectoryHandle>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StorageManager/persisted) */
+ persisted(): Promise<boolean>;
+}
+
+declare var StorageManager: {
+ prototype: StorageManager;
+ new(): StorageManager;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly) */
+interface StylePropertyMapReadOnly {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/size) */
+ readonly size: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/get) */
+ get(property: string): undefined | CSSStyleValue;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/getAll) */
+ getAll(property: string): CSSStyleValue[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/StylePropertyMapReadOnly/has) */
+ has(property: string): boolean;
+ forEach(callbackfn: (value: CSSStyleValue[], key: string, parent: StylePropertyMapReadOnly) => void, thisArg?: any): void;
+}
+
+declare var StylePropertyMapReadOnly: {
+ prototype: StylePropertyMapReadOnly;
+ new(): StylePropertyMapReadOnly;
+};
+
+/**
+ * This Web Crypto API interface provides a number of low-level cryptographic functions. It is accessed via the Crypto.subtle properties available in a window context (via Window.crypto).
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto)
+ */
+interface SubtleCrypto {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/decrypt) */
+ decrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveBits) */
+ deriveBits(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) */
+ deriveKey(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/digest) */
+ digest(algorithm: AlgorithmIdentifier, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/encrypt) */
+ encrypt(algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/exportKey) */
+ exportKey(format: "jwk", key: CryptoKey): Promise<JsonWebKey>;
+ exportKey(format: Exclude<KeyFormat, "jwk">, key: CryptoKey): Promise<ArrayBuffer>;
+ exportKey(format: KeyFormat, key: CryptoKey): Promise<ArrayBuffer | JsonWebKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) */
+ generateKey(algorithm: "Ed25519", extractable: boolean, keyUsages: ReadonlyArray<"sign" | "verify">): Promise<CryptoKeyPair>;
+ generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKeyPair>;
+ generateKey(algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ generateKey(algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKeyPair | CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) */
+ importKey(format: "jwk", keyData: JsonWebKey, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ importKey(format: Exclude<KeyFormat, "jwk">, keyData: BufferSource, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/sign) */
+ sign(algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams, key: CryptoKey, data: BufferSource): Promise<ArrayBuffer>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) */
+ unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/verify) */
+ verify(algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams, key: CryptoKey, signature: BufferSource, data: BufferSource): Promise<boolean>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/wrapKey) */
+ wrapKey(format: KeyFormat, key: CryptoKey, wrappingKey: CryptoKey, wrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams): Promise<ArrayBuffer>;
+}
+
+declare var SubtleCrypto: {
+ prototype: SubtleCrypto;
+ new(): SubtleCrypto;
+};
+
+/**
+ * A decoder for a specific method, that is a specific character encoding, like utf-8, iso-8859-2, koi8, cp1261, gbk, etc. A decoder takes a stream of bytes as input and emits a stream of code points. For a more scalable, non-native library, see StringView – a C-like representation of strings based on typed arrays.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder)
+ */
+interface TextDecoder extends TextDecoderCommon {
+ /**
+ * Returns the result of running encoding's decoder. The method can be invoked zero or more times with options's stream set to true, and then once without options's stream (or set to false), to process a fragmented input. If the invocation without options's stream (or set to false) has no input, it's clearest to omit both arguments.
+ *
+ * \`\`\`
+ * var string = "", decoder = new TextDecoder(encoding), buffer;
+ * while(buffer = next_chunk()) {
+ * string += decoder.decode(buffer, {stream:true});
+ * }
+ * string += decoder.decode(); // end-of-queue
+ * \`\`\`
+ *
+ * If the error mode is "fatal" and encoding's decoder returns error, throws a TypeError.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/decode)
+ */
+ decode(input?: AllowSharedBufferSource, options?: TextDecodeOptions): string;
+}
+
+declare var TextDecoder: {
+ prototype: TextDecoder;
+ new(label?: string, options?: TextDecoderOptions): TextDecoder;
+};
+
+interface TextDecoderCommon {
+ /**
+ * Returns encoding's name, lowercased.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/encoding)
+ */
+ readonly encoding: string;
+ /**
+ * Returns true if error mode is "fatal", otherwise false.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/fatal)
+ */
+ readonly fatal: boolean;
+ /**
+ * Returns the value of ignore BOM.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoder/ignoreBOM)
+ */
+ readonly ignoreBOM: boolean;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextDecoderStream) */
+interface TextDecoderStream extends GenericTransformStream, TextDecoderCommon {
+ readonly readable: ReadableStream<string>;
+ readonly writable: WritableStream<BufferSource>;
+}
+
+declare var TextDecoderStream: {
+ prototype: TextDecoderStream;
+ new(label?: string, options?: TextDecoderOptions): TextDecoderStream;
+};
+
+/**
+ * TextEncoder takes a stream of code points as input and emits a stream of bytes. For a more scalable, non-native library, see StringView – a C-like representation of strings based on typed arrays.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder)
+ */
+interface TextEncoder extends TextEncoderCommon {
+ /**
+ * Returns the result of running UTF-8's encoder.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encode)
+ */
+ encode(input?: string): Uint8Array;
+ /**
+ * Runs the UTF-8 encoder on source, stores the result of that operation into destination, and returns the progress made as an object wherein read is the number of converted code units of source and written is the number of bytes modified in destination.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encodeInto)
+ */
+ encodeInto(source: string, destination: Uint8Array): TextEncoderEncodeIntoResult;
+}
+
+declare var TextEncoder: {
+ prototype: TextEncoder;
+ new(): TextEncoder;
+};
+
+interface TextEncoderCommon {
+ /**
+ * Returns "utf-8".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoder/encoding)
+ */
+ readonly encoding: string;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextEncoderStream) */
+interface TextEncoderStream extends GenericTransformStream, TextEncoderCommon {
+ readonly readable: ReadableStream<Uint8Array>;
+ readonly writable: WritableStream<string>;
+}
+
+declare var TextEncoderStream: {
+ prototype: TextEncoderStream;
+ new(): TextEncoderStream;
+};
+
+/**
+ * The dimensions of a piece of text in the canvas, as created by the CanvasRenderingContext2D.measureText() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics)
+ */
+interface TextMetrics {
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxAscent)
+ */
+ readonly actualBoundingBoxAscent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxDescent)
+ */
+ readonly actualBoundingBoxDescent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxLeft)
+ */
+ readonly actualBoundingBoxLeft: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/actualBoundingBoxRight)
+ */
+ readonly actualBoundingBoxRight: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/alphabeticBaseline)
+ */
+ readonly alphabeticBaseline: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/emHeightAscent)
+ */
+ readonly emHeightAscent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/emHeightDescent)
+ */
+ readonly emHeightDescent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/fontBoundingBoxAscent)
+ */
+ readonly fontBoundingBoxAscent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/fontBoundingBoxDescent)
+ */
+ readonly fontBoundingBoxDescent: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/hangingBaseline)
+ */
+ readonly hangingBaseline: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/ideographicBaseline)
+ */
+ readonly ideographicBaseline: number;
+ /**
+ * Returns the measurement described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/TextMetrics/width)
+ */
+ readonly width: number;
+}
+
+declare var TextMetrics: {
+ prototype: TextMetrics;
+ new(): TextMetrics;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream) */
+interface TransformStream<I = any, O = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/readable) */
+ readonly readable: ReadableStream<O>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStream/writable) */
+ readonly writable: WritableStream<I>;
+}
+
+declare var TransformStream: {
+ prototype: TransformStream;
+ new<I = any, O = any>(transformer?: Transformer<I, O>, writableStrategy?: QueuingStrategy<I>, readableStrategy?: QueuingStrategy<O>): TransformStream<I, O>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController) */
+interface TransformStreamDefaultController<O = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/enqueue) */
+ enqueue(chunk?: O): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/error) */
+ error(reason?: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/TransformStreamDefaultController/terminate) */
+ terminate(): void;
+}
+
+declare var TransformStreamDefaultController: {
+ prototype: TransformStreamDefaultController;
+ new(): TransformStreamDefaultController;
+};
+
+/**
+ * The URL interface represents an object providing static methods used for creating object URLs.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL)
+ */
+interface URL {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hash) */
+ hash: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/host) */
+ host: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/hostname) */
+ hostname: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/href) */
+ href: string;
+ toString(): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/origin) */
+ readonly origin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/password) */
+ password: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/pathname) */
+ pathname: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/port) */
+ port: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/protocol) */
+ protocol: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/search) */
+ search: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/searchParams) */
+ readonly searchParams: URLSearchParams;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/username) */
+ username: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/toJSON) */
+ toJSON(): string;
+}
+
+declare var URL: {
+ prototype: URL;
+ new(url: string | URL, base?: string | URL): URL;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/canParse_static) */
+ canParse(url: string | URL, base?: string): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/createObjectURL_static) */
+ createObjectURL(obj: Blob): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URL/revokeObjectURL_static) */
+ revokeObjectURL(url: string): void;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams) */
+interface URLSearchParams {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/size) */
+ readonly size: number;
+ /**
+ * Appends a specified key/value pair as a new search parameter.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/append)
+ */
+ append(name: string, value: string): void;
+ /**
+ * Deletes the given search parameter, and its associated value, from the list of all search parameters.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/delete)
+ */
+ delete(name: string, value?: string): void;
+ /**
+ * Returns the first value associated to the given search parameter.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/get)
+ */
+ get(name: string): string | null;
+ /**
+ * Returns all the values association with a given search parameter.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/getAll)
+ */
+ getAll(name: string): string[];
+ /**
+ * Returns a Boolean indicating if such a search parameter exists.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/has)
+ */
+ has(name: string, value?: string): boolean;
+ /**
+ * Sets the value associated to a given search parameter to the given value. If there were several values, delete the others.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/set)
+ */
+ set(name: string, value: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/URLSearchParams/sort) */
+ sort(): void;
+ /** Returns a string containing a query string suitable for use in a URL. Does not include the question mark. */
+ toString(): string;
+ forEach(callbackfn: (value: string, key: string, parent: URLSearchParams) => void, thisArg?: any): void;
+}
+
+declare var URLSearchParams: {
+ prototype: URLSearchParams;
+ new(init?: string[][] | Record<string, string> | string | URLSearchParams): URLSearchParams;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace) */
+interface VideoColorSpace {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/fullRange) */
+ readonly fullRange: boolean | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/matrix) */
+ readonly matrix: VideoMatrixCoefficients | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/primaries) */
+ readonly primaries: VideoColorPrimaries | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/transfer) */
+ readonly transfer: VideoTransferCharacteristics | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoColorSpace/toJSON) */
+ toJSON(): VideoColorSpaceInit;
+}
+
+declare var VideoColorSpace: {
+ prototype: VideoColorSpace;
+ new(init?: VideoColorSpaceInit): VideoColorSpace;
+};
+
+interface VideoDecoderEventMap {
+ "dequeue": Event;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder)
+ */
+interface VideoDecoder extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/decodeQueueSize) */
+ readonly decodeQueueSize: number;
+ ondequeue: ((this: VideoDecoder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/state) */
+ readonly state: CodecState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/configure) */
+ configure(config: VideoDecoderConfig): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/decode) */
+ decode(chunk: EncodedVideoChunk): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/flush) */
+ flush(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoDecoder/reset) */
+ reset(): void;
+ addEventListener<K extends keyof VideoDecoderEventMap>(type: K, listener: (this: VideoDecoder, ev: VideoDecoderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof VideoDecoderEventMap>(type: K, listener: (this: VideoDecoder, ev: VideoDecoderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var VideoDecoder: {
+ prototype: VideoDecoder;
+ new(init: VideoDecoderInit): VideoDecoder;
+ isConfigSupported(config: VideoDecoderConfig): Promise<VideoDecoderSupport>;
+};
+
+interface VideoEncoderEventMap {
+ "dequeue": Event;
+}
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder)
+ */
+interface VideoEncoder extends EventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/encodeQueueSize) */
+ readonly encodeQueueSize: number;
+ ondequeue: ((this: VideoEncoder, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/state) */
+ readonly state: CodecState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/close) */
+ close(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/configure) */
+ configure(config: VideoEncoderConfig): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/encode) */
+ encode(frame: VideoFrame, options?: VideoEncoderEncodeOptions): void;
+ flush(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoEncoder/reset) */
+ reset(): void;
+ addEventListener<K extends keyof VideoEncoderEventMap>(type: K, listener: (this: VideoEncoder, ev: VideoEncoderEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof VideoEncoderEventMap>(type: K, listener: (this: VideoEncoder, ev: VideoEncoderEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var VideoEncoder: {
+ prototype: VideoEncoder;
+ new(init: VideoEncoderInit): VideoEncoder;
+ isConfigSupported(config: VideoEncoderConfig): Promise<VideoEncoderSupport>;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame) */
+interface VideoFrame {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedHeight) */
+ readonly codedHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedRect) */
+ readonly codedRect: DOMRectReadOnly | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/codedWidth) */
+ readonly codedWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/colorSpace) */
+ readonly colorSpace: VideoColorSpace;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayHeight) */
+ readonly displayHeight: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/displayWidth) */
+ readonly displayWidth: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/duration) */
+ readonly duration: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/format) */
+ readonly format: VideoPixelFormat | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/timestamp) */
+ readonly timestamp: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/visibleRect) */
+ readonly visibleRect: DOMRectReadOnly | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/allocationSize) */
+ allocationSize(options?: VideoFrameCopyToOptions): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/clone) */
+ clone(): VideoFrame;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/VideoFrame/close) */
+ close(): void;
+ copyTo(destination: AllowSharedBufferSource, options?: VideoFrameCopyToOptions): Promise<PlaneLayout[]>;
+}
+
+declare var VideoFrame: {
+ prototype: VideoFrame;
+ new(image: CanvasImageSource, init?: VideoFrameInit): VideoFrame;
+ new(data: AllowSharedBufferSource, init: VideoFrameBufferInit): VideoFrame;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_color_buffer_float) */
+interface WEBGL_color_buffer_float {
+ readonly RGBA32F_EXT: 0x8814;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT: 0x8211;
+ readonly UNSIGNED_NORMALIZED_EXT: 0x8C17;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_astc) */
+interface WEBGL_compressed_texture_astc {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_astc/getSupportedProfiles) */
+ getSupportedProfiles(): string[];
+ readonly COMPRESSED_RGBA_ASTC_4x4_KHR: 0x93B0;
+ readonly COMPRESSED_RGBA_ASTC_5x4_KHR: 0x93B1;
+ readonly COMPRESSED_RGBA_ASTC_5x5_KHR: 0x93B2;
+ readonly COMPRESSED_RGBA_ASTC_6x5_KHR: 0x93B3;
+ readonly COMPRESSED_RGBA_ASTC_6x6_KHR: 0x93B4;
+ readonly COMPRESSED_RGBA_ASTC_8x5_KHR: 0x93B5;
+ readonly COMPRESSED_RGBA_ASTC_8x6_KHR: 0x93B6;
+ readonly COMPRESSED_RGBA_ASTC_8x8_KHR: 0x93B7;
+ readonly COMPRESSED_RGBA_ASTC_10x5_KHR: 0x93B8;
+ readonly COMPRESSED_RGBA_ASTC_10x6_KHR: 0x93B9;
+ readonly COMPRESSED_RGBA_ASTC_10x8_KHR: 0x93BA;
+ readonly COMPRESSED_RGBA_ASTC_10x10_KHR: 0x93BB;
+ readonly COMPRESSED_RGBA_ASTC_12x10_KHR: 0x93BC;
+ readonly COMPRESSED_RGBA_ASTC_12x12_KHR: 0x93BD;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR: 0x93D0;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR: 0x93D1;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR: 0x93D2;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR: 0x93D3;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR: 0x93D4;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR: 0x93D5;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR: 0x93D6;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR: 0x93D7;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR: 0x93D8;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR: 0x93D9;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR: 0x93DA;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR: 0x93DB;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR: 0x93DC;
+ readonly COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR: 0x93DD;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_etc) */
+interface WEBGL_compressed_texture_etc {
+ readonly COMPRESSED_R11_EAC: 0x9270;
+ readonly COMPRESSED_SIGNED_R11_EAC: 0x9271;
+ readonly COMPRESSED_RG11_EAC: 0x9272;
+ readonly COMPRESSED_SIGNED_RG11_EAC: 0x9273;
+ readonly COMPRESSED_RGB8_ETC2: 0x9274;
+ readonly COMPRESSED_SRGB8_ETC2: 0x9275;
+ readonly COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9276;
+ readonly COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2: 0x9277;
+ readonly COMPRESSED_RGBA8_ETC2_EAC: 0x9278;
+ readonly COMPRESSED_SRGB8_ALPHA8_ETC2_EAC: 0x9279;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_etc1) */
+interface WEBGL_compressed_texture_etc1 {
+ readonly COMPRESSED_RGB_ETC1_WEBGL: 0x8D64;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_pvrtc) */
+interface WEBGL_compressed_texture_pvrtc {
+ readonly COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 0x8C00;
+ readonly COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 0x8C01;
+ readonly COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 0x8C02;
+ readonly COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 0x8C03;
+}
+
+/**
+ * The WEBGL_compressed_texture_s3tc extension is part of the WebGL API and exposes four S3TC compressed texture formats.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_s3tc)
+ */
+interface WEBGL_compressed_texture_s3tc {
+ readonly COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83F0;
+ readonly COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83F1;
+ readonly COMPRESSED_RGBA_S3TC_DXT3_EXT: 0x83F2;
+ readonly COMPRESSED_RGBA_S3TC_DXT5_EXT: 0x83F3;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_compressed_texture_s3tc_srgb) */
+interface WEBGL_compressed_texture_s3tc_srgb {
+ readonly COMPRESSED_SRGB_S3TC_DXT1_EXT: 0x8C4C;
+ readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT: 0x8C4D;
+ readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: 0x8C4E;
+ readonly COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: 0x8C4F;
+}
+
+/**
+ * The WEBGL_debug_renderer_info extension is part of the WebGL API and exposes two constants with information about the graphics driver for debugging purposes.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_renderer_info)
+ */
+interface WEBGL_debug_renderer_info {
+ readonly UNMASKED_VENDOR_WEBGL: 0x9245;
+ readonly UNMASKED_RENDERER_WEBGL: 0x9246;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_shaders) */
+interface WEBGL_debug_shaders {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_debug_shaders/getTranslatedShaderSource) */
+ getTranslatedShaderSource(shader: WebGLShader): string;
+}
+
+/**
+ * The WEBGL_depth_texture extension is part of the WebGL API and defines 2D depth and depth-stencil textures.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_depth_texture)
+ */
+interface WEBGL_depth_texture {
+ readonly UNSIGNED_INT_24_8_WEBGL: 0x84FA;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers) */
+interface WEBGL_draw_buffers {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers/drawBuffersWEBGL) */
+ drawBuffersWEBGL(buffers: GLenum[]): void;
+ readonly COLOR_ATTACHMENT0_WEBGL: 0x8CE0;
+ readonly COLOR_ATTACHMENT1_WEBGL: 0x8CE1;
+ readonly COLOR_ATTACHMENT2_WEBGL: 0x8CE2;
+ readonly COLOR_ATTACHMENT3_WEBGL: 0x8CE3;
+ readonly COLOR_ATTACHMENT4_WEBGL: 0x8CE4;
+ readonly COLOR_ATTACHMENT5_WEBGL: 0x8CE5;
+ readonly COLOR_ATTACHMENT6_WEBGL: 0x8CE6;
+ readonly COLOR_ATTACHMENT7_WEBGL: 0x8CE7;
+ readonly COLOR_ATTACHMENT8_WEBGL: 0x8CE8;
+ readonly COLOR_ATTACHMENT9_WEBGL: 0x8CE9;
+ readonly COLOR_ATTACHMENT10_WEBGL: 0x8CEA;
+ readonly COLOR_ATTACHMENT11_WEBGL: 0x8CEB;
+ readonly COLOR_ATTACHMENT12_WEBGL: 0x8CEC;
+ readonly COLOR_ATTACHMENT13_WEBGL: 0x8CED;
+ readonly COLOR_ATTACHMENT14_WEBGL: 0x8CEE;
+ readonly COLOR_ATTACHMENT15_WEBGL: 0x8CEF;
+ readonly DRAW_BUFFER0_WEBGL: 0x8825;
+ readonly DRAW_BUFFER1_WEBGL: 0x8826;
+ readonly DRAW_BUFFER2_WEBGL: 0x8827;
+ readonly DRAW_BUFFER3_WEBGL: 0x8828;
+ readonly DRAW_BUFFER4_WEBGL: 0x8829;
+ readonly DRAW_BUFFER5_WEBGL: 0x882A;
+ readonly DRAW_BUFFER6_WEBGL: 0x882B;
+ readonly DRAW_BUFFER7_WEBGL: 0x882C;
+ readonly DRAW_BUFFER8_WEBGL: 0x882D;
+ readonly DRAW_BUFFER9_WEBGL: 0x882E;
+ readonly DRAW_BUFFER10_WEBGL: 0x882F;
+ readonly DRAW_BUFFER11_WEBGL: 0x8830;
+ readonly DRAW_BUFFER12_WEBGL: 0x8831;
+ readonly DRAW_BUFFER13_WEBGL: 0x8832;
+ readonly DRAW_BUFFER14_WEBGL: 0x8833;
+ readonly DRAW_BUFFER15_WEBGL: 0x8834;
+ readonly MAX_COLOR_ATTACHMENTS_WEBGL: 0x8CDF;
+ readonly MAX_DRAW_BUFFERS_WEBGL: 0x8824;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context) */
+interface WEBGL_lose_context {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context/loseContext) */
+ loseContext(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_lose_context/restoreContext) */
+ restoreContext(): void;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw) */
+interface WEBGL_multi_draw {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysInstancedWEBGL) */
+ multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array | GLint[], firstsOffset: number, countsList: Int32Array | GLsizei[], countsOffset: number, instanceCountsList: Int32Array | GLsizei[], instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysWEBGL) */
+ multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array | GLint[], firstsOffset: number, countsList: Int32Array | GLsizei[], countsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsInstancedWEBGL) */
+ multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | GLsizei[], countsOffset: number, type: GLenum, offsetsList: Int32Array | GLsizei[], offsetsOffset: number, instanceCountsList: Int32Array | GLsizei[], instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsWEBGL) */
+ multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | GLsizei[], countsOffset: number, type: GLenum, offsetsList: Int32Array | GLsizei[], offsetsOffset: number, drawcount: GLsizei): void;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext) */
+interface WebGL2RenderingContext extends WebGL2RenderingContextBase, WebGL2RenderingContextOverloads, WebGLRenderingContextBase {
+}
+
+declare var WebGL2RenderingContext: {
+ prototype: WebGL2RenderingContext;
+ new(): WebGL2RenderingContext;
+ readonly READ_BUFFER: 0x0C02;
+ readonly UNPACK_ROW_LENGTH: 0x0CF2;
+ readonly UNPACK_SKIP_ROWS: 0x0CF3;
+ readonly UNPACK_SKIP_PIXELS: 0x0CF4;
+ readonly PACK_ROW_LENGTH: 0x0D02;
+ readonly PACK_SKIP_ROWS: 0x0D03;
+ readonly PACK_SKIP_PIXELS: 0x0D04;
+ readonly COLOR: 0x1800;
+ readonly DEPTH: 0x1801;
+ readonly STENCIL: 0x1802;
+ readonly RED: 0x1903;
+ readonly RGB8: 0x8051;
+ readonly RGB10_A2: 0x8059;
+ readonly TEXTURE_BINDING_3D: 0x806A;
+ readonly UNPACK_SKIP_IMAGES: 0x806D;
+ readonly UNPACK_IMAGE_HEIGHT: 0x806E;
+ readonly TEXTURE_3D: 0x806F;
+ readonly TEXTURE_WRAP_R: 0x8072;
+ readonly MAX_3D_TEXTURE_SIZE: 0x8073;
+ readonly UNSIGNED_INT_2_10_10_10_REV: 0x8368;
+ readonly MAX_ELEMENTS_VERTICES: 0x80E8;
+ readonly MAX_ELEMENTS_INDICES: 0x80E9;
+ readonly TEXTURE_MIN_LOD: 0x813A;
+ readonly TEXTURE_MAX_LOD: 0x813B;
+ readonly TEXTURE_BASE_LEVEL: 0x813C;
+ readonly TEXTURE_MAX_LEVEL: 0x813D;
+ readonly MIN: 0x8007;
+ readonly MAX: 0x8008;
+ readonly DEPTH_COMPONENT24: 0x81A6;
+ readonly MAX_TEXTURE_LOD_BIAS: 0x84FD;
+ readonly TEXTURE_COMPARE_MODE: 0x884C;
+ readonly TEXTURE_COMPARE_FUNC: 0x884D;
+ readonly CURRENT_QUERY: 0x8865;
+ readonly QUERY_RESULT: 0x8866;
+ readonly QUERY_RESULT_AVAILABLE: 0x8867;
+ readonly STREAM_READ: 0x88E1;
+ readonly STREAM_COPY: 0x88E2;
+ readonly STATIC_READ: 0x88E5;
+ readonly STATIC_COPY: 0x88E6;
+ readonly DYNAMIC_READ: 0x88E9;
+ readonly DYNAMIC_COPY: 0x88EA;
+ readonly MAX_DRAW_BUFFERS: 0x8824;
+ readonly DRAW_BUFFER0: 0x8825;
+ readonly DRAW_BUFFER1: 0x8826;
+ readonly DRAW_BUFFER2: 0x8827;
+ readonly DRAW_BUFFER3: 0x8828;
+ readonly DRAW_BUFFER4: 0x8829;
+ readonly DRAW_BUFFER5: 0x882A;
+ readonly DRAW_BUFFER6: 0x882B;
+ readonly DRAW_BUFFER7: 0x882C;
+ readonly DRAW_BUFFER8: 0x882D;
+ readonly DRAW_BUFFER9: 0x882E;
+ readonly DRAW_BUFFER10: 0x882F;
+ readonly DRAW_BUFFER11: 0x8830;
+ readonly DRAW_BUFFER12: 0x8831;
+ readonly DRAW_BUFFER13: 0x8832;
+ readonly DRAW_BUFFER14: 0x8833;
+ readonly DRAW_BUFFER15: 0x8834;
+ readonly MAX_FRAGMENT_UNIFORM_COMPONENTS: 0x8B49;
+ readonly MAX_VERTEX_UNIFORM_COMPONENTS: 0x8B4A;
+ readonly SAMPLER_3D: 0x8B5F;
+ readonly SAMPLER_2D_SHADOW: 0x8B62;
+ readonly FRAGMENT_SHADER_DERIVATIVE_HINT: 0x8B8B;
+ readonly PIXEL_PACK_BUFFER: 0x88EB;
+ readonly PIXEL_UNPACK_BUFFER: 0x88EC;
+ readonly PIXEL_PACK_BUFFER_BINDING: 0x88ED;
+ readonly PIXEL_UNPACK_BUFFER_BINDING: 0x88EF;
+ readonly FLOAT_MAT2x3: 0x8B65;
+ readonly FLOAT_MAT2x4: 0x8B66;
+ readonly FLOAT_MAT3x2: 0x8B67;
+ readonly FLOAT_MAT3x4: 0x8B68;
+ readonly FLOAT_MAT4x2: 0x8B69;
+ readonly FLOAT_MAT4x3: 0x8B6A;
+ readonly SRGB: 0x8C40;
+ readonly SRGB8: 0x8C41;
+ readonly SRGB8_ALPHA8: 0x8C43;
+ readonly COMPARE_REF_TO_TEXTURE: 0x884E;
+ readonly RGBA32F: 0x8814;
+ readonly RGB32F: 0x8815;
+ readonly RGBA16F: 0x881A;
+ readonly RGB16F: 0x881B;
+ readonly VERTEX_ATTRIB_ARRAY_INTEGER: 0x88FD;
+ readonly MAX_ARRAY_TEXTURE_LAYERS: 0x88FF;
+ readonly MIN_PROGRAM_TEXEL_OFFSET: 0x8904;
+ readonly MAX_PROGRAM_TEXEL_OFFSET: 0x8905;
+ readonly MAX_VARYING_COMPONENTS: 0x8B4B;
+ readonly TEXTURE_2D_ARRAY: 0x8C1A;
+ readonly TEXTURE_BINDING_2D_ARRAY: 0x8C1D;
+ readonly R11F_G11F_B10F: 0x8C3A;
+ readonly UNSIGNED_INT_10F_11F_11F_REV: 0x8C3B;
+ readonly RGB9_E5: 0x8C3D;
+ readonly UNSIGNED_INT_5_9_9_9_REV: 0x8C3E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_MODE: 0x8C7F;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: 0x8C80;
+ readonly TRANSFORM_FEEDBACK_VARYINGS: 0x8C83;
+ readonly TRANSFORM_FEEDBACK_BUFFER_START: 0x8C84;
+ readonly TRANSFORM_FEEDBACK_BUFFER_SIZE: 0x8C85;
+ readonly TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: 0x8C88;
+ readonly RASTERIZER_DISCARD: 0x8C89;
+ readonly MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: 0x8C8A;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: 0x8C8B;
+ readonly INTERLEAVED_ATTRIBS: 0x8C8C;
+ readonly SEPARATE_ATTRIBS: 0x8C8D;
+ readonly TRANSFORM_FEEDBACK_BUFFER: 0x8C8E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_BINDING: 0x8C8F;
+ readonly RGBA32UI: 0x8D70;
+ readonly RGB32UI: 0x8D71;
+ readonly RGBA16UI: 0x8D76;
+ readonly RGB16UI: 0x8D77;
+ readonly RGBA8UI: 0x8D7C;
+ readonly RGB8UI: 0x8D7D;
+ readonly RGBA32I: 0x8D82;
+ readonly RGB32I: 0x8D83;
+ readonly RGBA16I: 0x8D88;
+ readonly RGB16I: 0x8D89;
+ readonly RGBA8I: 0x8D8E;
+ readonly RGB8I: 0x8D8F;
+ readonly RED_INTEGER: 0x8D94;
+ readonly RGB_INTEGER: 0x8D98;
+ readonly RGBA_INTEGER: 0x8D99;
+ readonly SAMPLER_2D_ARRAY: 0x8DC1;
+ readonly SAMPLER_2D_ARRAY_SHADOW: 0x8DC4;
+ readonly SAMPLER_CUBE_SHADOW: 0x8DC5;
+ readonly UNSIGNED_INT_VEC2: 0x8DC6;
+ readonly UNSIGNED_INT_VEC3: 0x8DC7;
+ readonly UNSIGNED_INT_VEC4: 0x8DC8;
+ readonly INT_SAMPLER_2D: 0x8DCA;
+ readonly INT_SAMPLER_3D: 0x8DCB;
+ readonly INT_SAMPLER_CUBE: 0x8DCC;
+ readonly INT_SAMPLER_2D_ARRAY: 0x8DCF;
+ readonly UNSIGNED_INT_SAMPLER_2D: 0x8DD2;
+ readonly UNSIGNED_INT_SAMPLER_3D: 0x8DD3;
+ readonly UNSIGNED_INT_SAMPLER_CUBE: 0x8DD4;
+ readonly UNSIGNED_INT_SAMPLER_2D_ARRAY: 0x8DD7;
+ readonly DEPTH_COMPONENT32F: 0x8CAC;
+ readonly DEPTH32F_STENCIL8: 0x8CAD;
+ readonly FLOAT_32_UNSIGNED_INT_24_8_REV: 0x8DAD;
+ readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: 0x8210;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: 0x8211;
+ readonly FRAMEBUFFER_ATTACHMENT_RED_SIZE: 0x8212;
+ readonly FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: 0x8213;
+ readonly FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: 0x8214;
+ readonly FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: 0x8215;
+ readonly FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: 0x8216;
+ readonly FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: 0x8217;
+ readonly FRAMEBUFFER_DEFAULT: 0x8218;
+ readonly UNSIGNED_INT_24_8: 0x84FA;
+ readonly DEPTH24_STENCIL8: 0x88F0;
+ readonly UNSIGNED_NORMALIZED: 0x8C17;
+ readonly DRAW_FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly READ_FRAMEBUFFER: 0x8CA8;
+ readonly DRAW_FRAMEBUFFER: 0x8CA9;
+ readonly READ_FRAMEBUFFER_BINDING: 0x8CAA;
+ readonly RENDERBUFFER_SAMPLES: 0x8CAB;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: 0x8CD4;
+ readonly MAX_COLOR_ATTACHMENTS: 0x8CDF;
+ readonly COLOR_ATTACHMENT1: 0x8CE1;
+ readonly COLOR_ATTACHMENT2: 0x8CE2;
+ readonly COLOR_ATTACHMENT3: 0x8CE3;
+ readonly COLOR_ATTACHMENT4: 0x8CE4;
+ readonly COLOR_ATTACHMENT5: 0x8CE5;
+ readonly COLOR_ATTACHMENT6: 0x8CE6;
+ readonly COLOR_ATTACHMENT7: 0x8CE7;
+ readonly COLOR_ATTACHMENT8: 0x8CE8;
+ readonly COLOR_ATTACHMENT9: 0x8CE9;
+ readonly COLOR_ATTACHMENT10: 0x8CEA;
+ readonly COLOR_ATTACHMENT11: 0x8CEB;
+ readonly COLOR_ATTACHMENT12: 0x8CEC;
+ readonly COLOR_ATTACHMENT13: 0x8CED;
+ readonly COLOR_ATTACHMENT14: 0x8CEE;
+ readonly COLOR_ATTACHMENT15: 0x8CEF;
+ readonly FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: 0x8D56;
+ readonly MAX_SAMPLES: 0x8D57;
+ readonly HALF_FLOAT: 0x140B;
+ readonly RG: 0x8227;
+ readonly RG_INTEGER: 0x8228;
+ readonly R8: 0x8229;
+ readonly RG8: 0x822B;
+ readonly R16F: 0x822D;
+ readonly R32F: 0x822E;
+ readonly RG16F: 0x822F;
+ readonly RG32F: 0x8230;
+ readonly R8I: 0x8231;
+ readonly R8UI: 0x8232;
+ readonly R16I: 0x8233;
+ readonly R16UI: 0x8234;
+ readonly R32I: 0x8235;
+ readonly R32UI: 0x8236;
+ readonly RG8I: 0x8237;
+ readonly RG8UI: 0x8238;
+ readonly RG16I: 0x8239;
+ readonly RG16UI: 0x823A;
+ readonly RG32I: 0x823B;
+ readonly RG32UI: 0x823C;
+ readonly VERTEX_ARRAY_BINDING: 0x85B5;
+ readonly R8_SNORM: 0x8F94;
+ readonly RG8_SNORM: 0x8F95;
+ readonly RGB8_SNORM: 0x8F96;
+ readonly RGBA8_SNORM: 0x8F97;
+ readonly SIGNED_NORMALIZED: 0x8F9C;
+ readonly COPY_READ_BUFFER: 0x8F36;
+ readonly COPY_WRITE_BUFFER: 0x8F37;
+ readonly COPY_READ_BUFFER_BINDING: 0x8F36;
+ readonly COPY_WRITE_BUFFER_BINDING: 0x8F37;
+ readonly UNIFORM_BUFFER: 0x8A11;
+ readonly UNIFORM_BUFFER_BINDING: 0x8A28;
+ readonly UNIFORM_BUFFER_START: 0x8A29;
+ readonly UNIFORM_BUFFER_SIZE: 0x8A2A;
+ readonly MAX_VERTEX_UNIFORM_BLOCKS: 0x8A2B;
+ readonly MAX_FRAGMENT_UNIFORM_BLOCKS: 0x8A2D;
+ readonly MAX_COMBINED_UNIFORM_BLOCKS: 0x8A2E;
+ readonly MAX_UNIFORM_BUFFER_BINDINGS: 0x8A2F;
+ readonly MAX_UNIFORM_BLOCK_SIZE: 0x8A30;
+ readonly MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: 0x8A31;
+ readonly MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: 0x8A33;
+ readonly UNIFORM_BUFFER_OFFSET_ALIGNMENT: 0x8A34;
+ readonly ACTIVE_UNIFORM_BLOCKS: 0x8A36;
+ readonly UNIFORM_TYPE: 0x8A37;
+ readonly UNIFORM_SIZE: 0x8A38;
+ readonly UNIFORM_BLOCK_INDEX: 0x8A3A;
+ readonly UNIFORM_OFFSET: 0x8A3B;
+ readonly UNIFORM_ARRAY_STRIDE: 0x8A3C;
+ readonly UNIFORM_MATRIX_STRIDE: 0x8A3D;
+ readonly UNIFORM_IS_ROW_MAJOR: 0x8A3E;
+ readonly UNIFORM_BLOCK_BINDING: 0x8A3F;
+ readonly UNIFORM_BLOCK_DATA_SIZE: 0x8A40;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORMS: 0x8A42;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: 0x8A43;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: 0x8A44;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: 0x8A46;
+ readonly INVALID_INDEX: 0xFFFFFFFF;
+ readonly MAX_VERTEX_OUTPUT_COMPONENTS: 0x9122;
+ readonly MAX_FRAGMENT_INPUT_COMPONENTS: 0x9125;
+ readonly MAX_SERVER_WAIT_TIMEOUT: 0x9111;
+ readonly OBJECT_TYPE: 0x9112;
+ readonly SYNC_CONDITION: 0x9113;
+ readonly SYNC_STATUS: 0x9114;
+ readonly SYNC_FLAGS: 0x9115;
+ readonly SYNC_FENCE: 0x9116;
+ readonly SYNC_GPU_COMMANDS_COMPLETE: 0x9117;
+ readonly UNSIGNALED: 0x9118;
+ readonly SIGNALED: 0x9119;
+ readonly ALREADY_SIGNALED: 0x911A;
+ readonly TIMEOUT_EXPIRED: 0x911B;
+ readonly CONDITION_SATISFIED: 0x911C;
+ readonly WAIT_FAILED: 0x911D;
+ readonly SYNC_FLUSH_COMMANDS_BIT: 0x00000001;
+ readonly VERTEX_ATTRIB_ARRAY_DIVISOR: 0x88FE;
+ readonly ANY_SAMPLES_PASSED: 0x8C2F;
+ readonly ANY_SAMPLES_PASSED_CONSERVATIVE: 0x8D6A;
+ readonly SAMPLER_BINDING: 0x8919;
+ readonly RGB10_A2UI: 0x906F;
+ readonly INT_2_10_10_10_REV: 0x8D9F;
+ readonly TRANSFORM_FEEDBACK: 0x8E22;
+ readonly TRANSFORM_FEEDBACK_PAUSED: 0x8E23;
+ readonly TRANSFORM_FEEDBACK_ACTIVE: 0x8E24;
+ readonly TRANSFORM_FEEDBACK_BINDING: 0x8E25;
+ readonly TEXTURE_IMMUTABLE_FORMAT: 0x912F;
+ readonly MAX_ELEMENT_INDEX: 0x8D6B;
+ readonly TEXTURE_IMMUTABLE_LEVELS: 0x82DF;
+ readonly TIMEOUT_IGNORED: -1;
+ readonly MAX_CLIENT_WAIT_TIMEOUT_WEBGL: 0x9247;
+ readonly DEPTH_BUFFER_BIT: 0x00000100;
+ readonly STENCIL_BUFFER_BIT: 0x00000400;
+ readonly COLOR_BUFFER_BIT: 0x00004000;
+ readonly POINTS: 0x0000;
+ readonly LINES: 0x0001;
+ readonly LINE_LOOP: 0x0002;
+ readonly LINE_STRIP: 0x0003;
+ readonly TRIANGLES: 0x0004;
+ readonly TRIANGLE_STRIP: 0x0005;
+ readonly TRIANGLE_FAN: 0x0006;
+ readonly ZERO: 0;
+ readonly ONE: 1;
+ readonly SRC_COLOR: 0x0300;
+ readonly ONE_MINUS_SRC_COLOR: 0x0301;
+ readonly SRC_ALPHA: 0x0302;
+ readonly ONE_MINUS_SRC_ALPHA: 0x0303;
+ readonly DST_ALPHA: 0x0304;
+ readonly ONE_MINUS_DST_ALPHA: 0x0305;
+ readonly DST_COLOR: 0x0306;
+ readonly ONE_MINUS_DST_COLOR: 0x0307;
+ readonly SRC_ALPHA_SATURATE: 0x0308;
+ readonly FUNC_ADD: 0x8006;
+ readonly BLEND_EQUATION: 0x8009;
+ readonly BLEND_EQUATION_RGB: 0x8009;
+ readonly BLEND_EQUATION_ALPHA: 0x883D;
+ readonly FUNC_SUBTRACT: 0x800A;
+ readonly FUNC_REVERSE_SUBTRACT: 0x800B;
+ readonly BLEND_DST_RGB: 0x80C8;
+ readonly BLEND_SRC_RGB: 0x80C9;
+ readonly BLEND_DST_ALPHA: 0x80CA;
+ readonly BLEND_SRC_ALPHA: 0x80CB;
+ readonly CONSTANT_COLOR: 0x8001;
+ readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
+ readonly CONSTANT_ALPHA: 0x8003;
+ readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
+ readonly BLEND_COLOR: 0x8005;
+ readonly ARRAY_BUFFER: 0x8892;
+ readonly ELEMENT_ARRAY_BUFFER: 0x8893;
+ readonly ARRAY_BUFFER_BINDING: 0x8894;
+ readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
+ readonly STREAM_DRAW: 0x88E0;
+ readonly STATIC_DRAW: 0x88E4;
+ readonly DYNAMIC_DRAW: 0x88E8;
+ readonly BUFFER_SIZE: 0x8764;
+ readonly BUFFER_USAGE: 0x8765;
+ readonly CURRENT_VERTEX_ATTRIB: 0x8626;
+ readonly FRONT: 0x0404;
+ readonly BACK: 0x0405;
+ readonly FRONT_AND_BACK: 0x0408;
+ readonly CULL_FACE: 0x0B44;
+ readonly BLEND: 0x0BE2;
+ readonly DITHER: 0x0BD0;
+ readonly STENCIL_TEST: 0x0B90;
+ readonly DEPTH_TEST: 0x0B71;
+ readonly SCISSOR_TEST: 0x0C11;
+ readonly POLYGON_OFFSET_FILL: 0x8037;
+ readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
+ readonly SAMPLE_COVERAGE: 0x80A0;
+ readonly NO_ERROR: 0;
+ readonly INVALID_ENUM: 0x0500;
+ readonly INVALID_VALUE: 0x0501;
+ readonly INVALID_OPERATION: 0x0502;
+ readonly OUT_OF_MEMORY: 0x0505;
+ readonly CW: 0x0900;
+ readonly CCW: 0x0901;
+ readonly LINE_WIDTH: 0x0B21;
+ readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
+ readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
+ readonly CULL_FACE_MODE: 0x0B45;
+ readonly FRONT_FACE: 0x0B46;
+ readonly DEPTH_RANGE: 0x0B70;
+ readonly DEPTH_WRITEMASK: 0x0B72;
+ readonly DEPTH_CLEAR_VALUE: 0x0B73;
+ readonly DEPTH_FUNC: 0x0B74;
+ readonly STENCIL_CLEAR_VALUE: 0x0B91;
+ readonly STENCIL_FUNC: 0x0B92;
+ readonly STENCIL_FAIL: 0x0B94;
+ readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
+ readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
+ readonly STENCIL_REF: 0x0B97;
+ readonly STENCIL_VALUE_MASK: 0x0B93;
+ readonly STENCIL_WRITEMASK: 0x0B98;
+ readonly STENCIL_BACK_FUNC: 0x8800;
+ readonly STENCIL_BACK_FAIL: 0x8801;
+ readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
+ readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
+ readonly STENCIL_BACK_REF: 0x8CA3;
+ readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
+ readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
+ readonly VIEWPORT: 0x0BA2;
+ readonly SCISSOR_BOX: 0x0C10;
+ readonly COLOR_CLEAR_VALUE: 0x0C22;
+ readonly COLOR_WRITEMASK: 0x0C23;
+ readonly UNPACK_ALIGNMENT: 0x0CF5;
+ readonly PACK_ALIGNMENT: 0x0D05;
+ readonly MAX_TEXTURE_SIZE: 0x0D33;
+ readonly MAX_VIEWPORT_DIMS: 0x0D3A;
+ readonly SUBPIXEL_BITS: 0x0D50;
+ readonly RED_BITS: 0x0D52;
+ readonly GREEN_BITS: 0x0D53;
+ readonly BLUE_BITS: 0x0D54;
+ readonly ALPHA_BITS: 0x0D55;
+ readonly DEPTH_BITS: 0x0D56;
+ readonly STENCIL_BITS: 0x0D57;
+ readonly POLYGON_OFFSET_UNITS: 0x2A00;
+ readonly POLYGON_OFFSET_FACTOR: 0x8038;
+ readonly TEXTURE_BINDING_2D: 0x8069;
+ readonly SAMPLE_BUFFERS: 0x80A8;
+ readonly SAMPLES: 0x80A9;
+ readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
+ readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
+ readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
+ readonly DONT_CARE: 0x1100;
+ readonly FASTEST: 0x1101;
+ readonly NICEST: 0x1102;
+ readonly GENERATE_MIPMAP_HINT: 0x8192;
+ readonly BYTE: 0x1400;
+ readonly UNSIGNED_BYTE: 0x1401;
+ readonly SHORT: 0x1402;
+ readonly UNSIGNED_SHORT: 0x1403;
+ readonly INT: 0x1404;
+ readonly UNSIGNED_INT: 0x1405;
+ readonly FLOAT: 0x1406;
+ readonly DEPTH_COMPONENT: 0x1902;
+ readonly ALPHA: 0x1906;
+ readonly RGB: 0x1907;
+ readonly RGBA: 0x1908;
+ readonly LUMINANCE: 0x1909;
+ readonly LUMINANCE_ALPHA: 0x190A;
+ readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
+ readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
+ readonly UNSIGNED_SHORT_5_6_5: 0x8363;
+ readonly FRAGMENT_SHADER: 0x8B30;
+ readonly VERTEX_SHADER: 0x8B31;
+ readonly MAX_VERTEX_ATTRIBS: 0x8869;
+ readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
+ readonly MAX_VARYING_VECTORS: 0x8DFC;
+ readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
+ readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
+ readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
+ readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
+ readonly SHADER_TYPE: 0x8B4F;
+ readonly DELETE_STATUS: 0x8B80;
+ readonly LINK_STATUS: 0x8B82;
+ readonly VALIDATE_STATUS: 0x8B83;
+ readonly ATTACHED_SHADERS: 0x8B85;
+ readonly ACTIVE_UNIFORMS: 0x8B86;
+ readonly ACTIVE_ATTRIBUTES: 0x8B89;
+ readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
+ readonly CURRENT_PROGRAM: 0x8B8D;
+ readonly NEVER: 0x0200;
+ readonly LESS: 0x0201;
+ readonly EQUAL: 0x0202;
+ readonly LEQUAL: 0x0203;
+ readonly GREATER: 0x0204;
+ readonly NOTEQUAL: 0x0205;
+ readonly GEQUAL: 0x0206;
+ readonly ALWAYS: 0x0207;
+ readonly KEEP: 0x1E00;
+ readonly REPLACE: 0x1E01;
+ readonly INCR: 0x1E02;
+ readonly DECR: 0x1E03;
+ readonly INVERT: 0x150A;
+ readonly INCR_WRAP: 0x8507;
+ readonly DECR_WRAP: 0x8508;
+ readonly VENDOR: 0x1F00;
+ readonly RENDERER: 0x1F01;
+ readonly VERSION: 0x1F02;
+ readonly NEAREST: 0x2600;
+ readonly LINEAR: 0x2601;
+ readonly NEAREST_MIPMAP_NEAREST: 0x2700;
+ readonly LINEAR_MIPMAP_NEAREST: 0x2701;
+ readonly NEAREST_MIPMAP_LINEAR: 0x2702;
+ readonly LINEAR_MIPMAP_LINEAR: 0x2703;
+ readonly TEXTURE_MAG_FILTER: 0x2800;
+ readonly TEXTURE_MIN_FILTER: 0x2801;
+ readonly TEXTURE_WRAP_S: 0x2802;
+ readonly TEXTURE_WRAP_T: 0x2803;
+ readonly TEXTURE_2D: 0x0DE1;
+ readonly TEXTURE: 0x1702;
+ readonly TEXTURE_CUBE_MAP: 0x8513;
+ readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
+ readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
+ readonly TEXTURE0: 0x84C0;
+ readonly TEXTURE1: 0x84C1;
+ readonly TEXTURE2: 0x84C2;
+ readonly TEXTURE3: 0x84C3;
+ readonly TEXTURE4: 0x84C4;
+ readonly TEXTURE5: 0x84C5;
+ readonly TEXTURE6: 0x84C6;
+ readonly TEXTURE7: 0x84C7;
+ readonly TEXTURE8: 0x84C8;
+ readonly TEXTURE9: 0x84C9;
+ readonly TEXTURE10: 0x84CA;
+ readonly TEXTURE11: 0x84CB;
+ readonly TEXTURE12: 0x84CC;
+ readonly TEXTURE13: 0x84CD;
+ readonly TEXTURE14: 0x84CE;
+ readonly TEXTURE15: 0x84CF;
+ readonly TEXTURE16: 0x84D0;
+ readonly TEXTURE17: 0x84D1;
+ readonly TEXTURE18: 0x84D2;
+ readonly TEXTURE19: 0x84D3;
+ readonly TEXTURE20: 0x84D4;
+ readonly TEXTURE21: 0x84D5;
+ readonly TEXTURE22: 0x84D6;
+ readonly TEXTURE23: 0x84D7;
+ readonly TEXTURE24: 0x84D8;
+ readonly TEXTURE25: 0x84D9;
+ readonly TEXTURE26: 0x84DA;
+ readonly TEXTURE27: 0x84DB;
+ readonly TEXTURE28: 0x84DC;
+ readonly TEXTURE29: 0x84DD;
+ readonly TEXTURE30: 0x84DE;
+ readonly TEXTURE31: 0x84DF;
+ readonly ACTIVE_TEXTURE: 0x84E0;
+ readonly REPEAT: 0x2901;
+ readonly CLAMP_TO_EDGE: 0x812F;
+ readonly MIRRORED_REPEAT: 0x8370;
+ readonly FLOAT_VEC2: 0x8B50;
+ readonly FLOAT_VEC3: 0x8B51;
+ readonly FLOAT_VEC4: 0x8B52;
+ readonly INT_VEC2: 0x8B53;
+ readonly INT_VEC3: 0x8B54;
+ readonly INT_VEC4: 0x8B55;
+ readonly BOOL: 0x8B56;
+ readonly BOOL_VEC2: 0x8B57;
+ readonly BOOL_VEC3: 0x8B58;
+ readonly BOOL_VEC4: 0x8B59;
+ readonly FLOAT_MAT2: 0x8B5A;
+ readonly FLOAT_MAT3: 0x8B5B;
+ readonly FLOAT_MAT4: 0x8B5C;
+ readonly SAMPLER_2D: 0x8B5E;
+ readonly SAMPLER_CUBE: 0x8B60;
+ readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
+ readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
+ readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
+ readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
+ readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
+ readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
+ readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
+ readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
+ readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
+ readonly COMPILE_STATUS: 0x8B81;
+ readonly LOW_FLOAT: 0x8DF0;
+ readonly MEDIUM_FLOAT: 0x8DF1;
+ readonly HIGH_FLOAT: 0x8DF2;
+ readonly LOW_INT: 0x8DF3;
+ readonly MEDIUM_INT: 0x8DF4;
+ readonly HIGH_INT: 0x8DF5;
+ readonly FRAMEBUFFER: 0x8D40;
+ readonly RENDERBUFFER: 0x8D41;
+ readonly RGBA4: 0x8056;
+ readonly RGB5_A1: 0x8057;
+ readonly RGBA8: 0x8058;
+ readonly RGB565: 0x8D62;
+ readonly DEPTH_COMPONENT16: 0x81A5;
+ readonly STENCIL_INDEX8: 0x8D48;
+ readonly DEPTH_STENCIL: 0x84F9;
+ readonly RENDERBUFFER_WIDTH: 0x8D42;
+ readonly RENDERBUFFER_HEIGHT: 0x8D43;
+ readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
+ readonly RENDERBUFFER_RED_SIZE: 0x8D50;
+ readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
+ readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
+ readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
+ readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
+ readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
+ readonly COLOR_ATTACHMENT0: 0x8CE0;
+ readonly DEPTH_ATTACHMENT: 0x8D00;
+ readonly STENCIL_ATTACHMENT: 0x8D20;
+ readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
+ readonly NONE: 0;
+ readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
+ readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
+ readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
+ readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
+ readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
+ readonly FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly RENDERBUFFER_BINDING: 0x8CA7;
+ readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
+ readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
+ readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
+ readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
+ readonly CONTEXT_LOST_WEBGL: 0x9242;
+ readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
+ readonly BROWSER_DEFAULT_WEBGL: 0x9244;
+};
+
+interface WebGL2RenderingContextBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/beginQuery) */
+ beginQuery(target: GLenum, query: WebGLQuery): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/beginTransformFeedback) */
+ beginTransformFeedback(primitiveMode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindBufferBase) */
+ bindBufferBase(target: GLenum, index: GLuint, buffer: WebGLBuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindBufferRange) */
+ bindBufferRange(target: GLenum, index: GLuint, buffer: WebGLBuffer | null, offset: GLintptr, size: GLsizeiptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindSampler) */
+ bindSampler(unit: GLuint, sampler: WebGLSampler | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindTransformFeedback) */
+ bindTransformFeedback(target: GLenum, tf: WebGLTransformFeedback | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/bindVertexArray) */
+ bindVertexArray(array: WebGLVertexArrayObject | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/blitFramebuffer) */
+ blitFramebuffer(srcX0: GLint, srcY0: GLint, srcX1: GLint, srcY1: GLint, dstX0: GLint, dstY0: GLint, dstX1: GLint, dstY1: GLint, mask: GLbitfield, filter: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferfi(buffer: GLenum, drawbuffer: GLint, depth: GLfloat, stencil: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferfv(buffer: GLenum, drawbuffer: GLint, values: Float32List, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferiv(buffer: GLenum, drawbuffer: GLint, values: Int32List, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferuiv(buffer: GLenum, drawbuffer: GLint, values: Uint32List, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clientWaitSync) */
+ clientWaitSync(sync: WebGLSync, flags: GLbitfield, timeout: GLuint64): GLenum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/compressedTexImage3D) */
+ compressedTexImage3D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexImage3D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/compressedTexSubImage3D) */
+ compressedTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/copyBufferSubData) */
+ copyBufferSubData(readTarget: GLenum, writeTarget: GLenum, readOffset: GLintptr, writeOffset: GLintptr, size: GLsizeiptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/copyTexSubImage3D) */
+ copyTexSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createQuery) */
+ createQuery(): WebGLQuery | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createSampler) */
+ createSampler(): WebGLSampler | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createTransformFeedback) */
+ createTransformFeedback(): WebGLTransformFeedback | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/createVertexArray) */
+ createVertexArray(): WebGLVertexArrayObject | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteQuery) */
+ deleteQuery(query: WebGLQuery | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteSampler) */
+ deleteSampler(sampler: WebGLSampler | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteSync) */
+ deleteSync(sync: WebGLSync | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteTransformFeedback) */
+ deleteTransformFeedback(tf: WebGLTransformFeedback | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/deleteVertexArray) */
+ deleteVertexArray(vertexArray: WebGLVertexArrayObject | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawArraysInstanced) */
+ drawArraysInstanced(mode: GLenum, first: GLint, count: GLsizei, instanceCount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawBuffers) */
+ drawBuffers(buffers: GLenum[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawElementsInstanced) */
+ drawElementsInstanced(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr, instanceCount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawRangeElements) */
+ drawRangeElements(mode: GLenum, start: GLuint, end: GLuint, count: GLsizei, type: GLenum, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/endQuery) */
+ endQuery(target: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/endTransformFeedback) */
+ endTransformFeedback(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/fenceSync) */
+ fenceSync(condition: GLenum, flags: GLbitfield): WebGLSync | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/framebufferTextureLayer) */
+ framebufferTextureLayer(target: GLenum, attachment: GLenum, texture: WebGLTexture | null, level: GLint, layer: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniformBlockName) */
+ getActiveUniformBlockName(program: WebGLProgram, uniformBlockIndex: GLuint): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniformBlockParameter) */
+ getActiveUniformBlockParameter(program: WebGLProgram, uniformBlockIndex: GLuint, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniforms) */
+ getActiveUniforms(program: WebGLProgram, uniformIndices: GLuint[], pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getBufferSubData) */
+ getBufferSubData(target: GLenum, srcByteOffset: GLintptr, dstBuffer: ArrayBufferView, dstOffset?: number, length?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getFragDataLocation) */
+ getFragDataLocation(program: WebGLProgram, name: string): GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getIndexedParameter) */
+ getIndexedParameter(target: GLenum, index: GLuint): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getInternalformatParameter) */
+ getInternalformatParameter(target: GLenum, internalformat: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getQuery) */
+ getQuery(target: GLenum, pname: GLenum): WebGLQuery | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getQueryParameter) */
+ getQueryParameter(query: WebGLQuery, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getSamplerParameter) */
+ getSamplerParameter(sampler: WebGLSampler, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getSyncParameter) */
+ getSyncParameter(sync: WebGLSync, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getTransformFeedbackVarying) */
+ getTransformFeedbackVarying(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformBlockIndex) */
+ getUniformBlockIndex(program: WebGLProgram, uniformBlockName: string): GLuint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformIndices) */
+ getUniformIndices(program: WebGLProgram, uniformNames: string[]): GLuint[] | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateFramebuffer) */
+ invalidateFramebuffer(target: GLenum, attachments: GLenum[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateSubFramebuffer) */
+ invalidateSubFramebuffer(target: GLenum, attachments: GLenum[], x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isQuery) */
+ isQuery(query: WebGLQuery | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isSampler) */
+ isSampler(sampler: WebGLSampler | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isSync) */
+ isSync(sync: WebGLSync | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isTransformFeedback) */
+ isTransformFeedback(tf: WebGLTransformFeedback | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/isVertexArray) */
+ isVertexArray(vertexArray: WebGLVertexArrayObject | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/pauseTransformFeedback) */
+ pauseTransformFeedback(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/readBuffer) */
+ readBuffer(src: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/renderbufferStorageMultisample) */
+ renderbufferStorageMultisample(target: GLenum, samples: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/resumeTransformFeedback) */
+ resumeTransformFeedback(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/samplerParameter) */
+ samplerParameterf(sampler: WebGLSampler, pname: GLenum, param: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/samplerParameter) */
+ samplerParameteri(sampler: WebGLSampler, pname: GLenum, param: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texImage3D) */
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView | null): void;
+ texImage3D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texStorage2D) */
+ texStorage2D(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texStorage3D) */
+ texStorage3D(target: GLenum, levels: GLsizei, internalformat: GLenum, width: GLsizei, height: GLsizei, depth: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/texSubImage3D) */
+ texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texSubImage3D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, zoffset: GLint, width: GLsizei, height: GLsizei, depth: GLsizei, format: GLenum, type: GLenum, srcData: ArrayBufferView | null, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/transformFeedbackVaryings) */
+ transformFeedbackVaryings(program: WebGLProgram, varyings: string[], bufferMode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform1ui(location: WebGLUniformLocation | null, v0: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform1uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform2ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform2uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform3ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint, v2: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform3uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform4ui(location: WebGLUniformLocation | null, v0: GLuint, v1: GLuint, v2: GLuint, v3: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform4uiv(location: WebGLUniformLocation | null, data: Uint32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformBlockBinding) */
+ uniformBlockBinding(program: WebGLProgram, uniformBlockIndex: GLuint, uniformBlockBinding: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribDivisor) */
+ vertexAttribDivisor(index: GLuint, divisor: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4i(index: GLuint, x: GLint, y: GLint, z: GLint, w: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4iv(index: GLuint, values: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4ui(index: GLuint, x: GLuint, y: GLuint, z: GLuint, w: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4uiv(index: GLuint, values: Uint32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribIPointer) */
+ vertexAttribIPointer(index: GLuint, size: GLint, type: GLenum, stride: GLsizei, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/waitSync) */
+ waitSync(sync: WebGLSync, flags: GLbitfield, timeout: GLint64): void;
+ readonly READ_BUFFER: 0x0C02;
+ readonly UNPACK_ROW_LENGTH: 0x0CF2;
+ readonly UNPACK_SKIP_ROWS: 0x0CF3;
+ readonly UNPACK_SKIP_PIXELS: 0x0CF4;
+ readonly PACK_ROW_LENGTH: 0x0D02;
+ readonly PACK_SKIP_ROWS: 0x0D03;
+ readonly PACK_SKIP_PIXELS: 0x0D04;
+ readonly COLOR: 0x1800;
+ readonly DEPTH: 0x1801;
+ readonly STENCIL: 0x1802;
+ readonly RED: 0x1903;
+ readonly RGB8: 0x8051;
+ readonly RGB10_A2: 0x8059;
+ readonly TEXTURE_BINDING_3D: 0x806A;
+ readonly UNPACK_SKIP_IMAGES: 0x806D;
+ readonly UNPACK_IMAGE_HEIGHT: 0x806E;
+ readonly TEXTURE_3D: 0x806F;
+ readonly TEXTURE_WRAP_R: 0x8072;
+ readonly MAX_3D_TEXTURE_SIZE: 0x8073;
+ readonly UNSIGNED_INT_2_10_10_10_REV: 0x8368;
+ readonly MAX_ELEMENTS_VERTICES: 0x80E8;
+ readonly MAX_ELEMENTS_INDICES: 0x80E9;
+ readonly TEXTURE_MIN_LOD: 0x813A;
+ readonly TEXTURE_MAX_LOD: 0x813B;
+ readonly TEXTURE_BASE_LEVEL: 0x813C;
+ readonly TEXTURE_MAX_LEVEL: 0x813D;
+ readonly MIN: 0x8007;
+ readonly MAX: 0x8008;
+ readonly DEPTH_COMPONENT24: 0x81A6;
+ readonly MAX_TEXTURE_LOD_BIAS: 0x84FD;
+ readonly TEXTURE_COMPARE_MODE: 0x884C;
+ readonly TEXTURE_COMPARE_FUNC: 0x884D;
+ readonly CURRENT_QUERY: 0x8865;
+ readonly QUERY_RESULT: 0x8866;
+ readonly QUERY_RESULT_AVAILABLE: 0x8867;
+ readonly STREAM_READ: 0x88E1;
+ readonly STREAM_COPY: 0x88E2;
+ readonly STATIC_READ: 0x88E5;
+ readonly STATIC_COPY: 0x88E6;
+ readonly DYNAMIC_READ: 0x88E9;
+ readonly DYNAMIC_COPY: 0x88EA;
+ readonly MAX_DRAW_BUFFERS: 0x8824;
+ readonly DRAW_BUFFER0: 0x8825;
+ readonly DRAW_BUFFER1: 0x8826;
+ readonly DRAW_BUFFER2: 0x8827;
+ readonly DRAW_BUFFER3: 0x8828;
+ readonly DRAW_BUFFER4: 0x8829;
+ readonly DRAW_BUFFER5: 0x882A;
+ readonly DRAW_BUFFER6: 0x882B;
+ readonly DRAW_BUFFER7: 0x882C;
+ readonly DRAW_BUFFER8: 0x882D;
+ readonly DRAW_BUFFER9: 0x882E;
+ readonly DRAW_BUFFER10: 0x882F;
+ readonly DRAW_BUFFER11: 0x8830;
+ readonly DRAW_BUFFER12: 0x8831;
+ readonly DRAW_BUFFER13: 0x8832;
+ readonly DRAW_BUFFER14: 0x8833;
+ readonly DRAW_BUFFER15: 0x8834;
+ readonly MAX_FRAGMENT_UNIFORM_COMPONENTS: 0x8B49;
+ readonly MAX_VERTEX_UNIFORM_COMPONENTS: 0x8B4A;
+ readonly SAMPLER_3D: 0x8B5F;
+ readonly SAMPLER_2D_SHADOW: 0x8B62;
+ readonly FRAGMENT_SHADER_DERIVATIVE_HINT: 0x8B8B;
+ readonly PIXEL_PACK_BUFFER: 0x88EB;
+ readonly PIXEL_UNPACK_BUFFER: 0x88EC;
+ readonly PIXEL_PACK_BUFFER_BINDING: 0x88ED;
+ readonly PIXEL_UNPACK_BUFFER_BINDING: 0x88EF;
+ readonly FLOAT_MAT2x3: 0x8B65;
+ readonly FLOAT_MAT2x4: 0x8B66;
+ readonly FLOAT_MAT3x2: 0x8B67;
+ readonly FLOAT_MAT3x4: 0x8B68;
+ readonly FLOAT_MAT4x2: 0x8B69;
+ readonly FLOAT_MAT4x3: 0x8B6A;
+ readonly SRGB: 0x8C40;
+ readonly SRGB8: 0x8C41;
+ readonly SRGB8_ALPHA8: 0x8C43;
+ readonly COMPARE_REF_TO_TEXTURE: 0x884E;
+ readonly RGBA32F: 0x8814;
+ readonly RGB32F: 0x8815;
+ readonly RGBA16F: 0x881A;
+ readonly RGB16F: 0x881B;
+ readonly VERTEX_ATTRIB_ARRAY_INTEGER: 0x88FD;
+ readonly MAX_ARRAY_TEXTURE_LAYERS: 0x88FF;
+ readonly MIN_PROGRAM_TEXEL_OFFSET: 0x8904;
+ readonly MAX_PROGRAM_TEXEL_OFFSET: 0x8905;
+ readonly MAX_VARYING_COMPONENTS: 0x8B4B;
+ readonly TEXTURE_2D_ARRAY: 0x8C1A;
+ readonly TEXTURE_BINDING_2D_ARRAY: 0x8C1D;
+ readonly R11F_G11F_B10F: 0x8C3A;
+ readonly UNSIGNED_INT_10F_11F_11F_REV: 0x8C3B;
+ readonly RGB9_E5: 0x8C3D;
+ readonly UNSIGNED_INT_5_9_9_9_REV: 0x8C3E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_MODE: 0x8C7F;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS: 0x8C80;
+ readonly TRANSFORM_FEEDBACK_VARYINGS: 0x8C83;
+ readonly TRANSFORM_FEEDBACK_BUFFER_START: 0x8C84;
+ readonly TRANSFORM_FEEDBACK_BUFFER_SIZE: 0x8C85;
+ readonly TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN: 0x8C88;
+ readonly RASTERIZER_DISCARD: 0x8C89;
+ readonly MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS: 0x8C8A;
+ readonly MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS: 0x8C8B;
+ readonly INTERLEAVED_ATTRIBS: 0x8C8C;
+ readonly SEPARATE_ATTRIBS: 0x8C8D;
+ readonly TRANSFORM_FEEDBACK_BUFFER: 0x8C8E;
+ readonly TRANSFORM_FEEDBACK_BUFFER_BINDING: 0x8C8F;
+ readonly RGBA32UI: 0x8D70;
+ readonly RGB32UI: 0x8D71;
+ readonly RGBA16UI: 0x8D76;
+ readonly RGB16UI: 0x8D77;
+ readonly RGBA8UI: 0x8D7C;
+ readonly RGB8UI: 0x8D7D;
+ readonly RGBA32I: 0x8D82;
+ readonly RGB32I: 0x8D83;
+ readonly RGBA16I: 0x8D88;
+ readonly RGB16I: 0x8D89;
+ readonly RGBA8I: 0x8D8E;
+ readonly RGB8I: 0x8D8F;
+ readonly RED_INTEGER: 0x8D94;
+ readonly RGB_INTEGER: 0x8D98;
+ readonly RGBA_INTEGER: 0x8D99;
+ readonly SAMPLER_2D_ARRAY: 0x8DC1;
+ readonly SAMPLER_2D_ARRAY_SHADOW: 0x8DC4;
+ readonly SAMPLER_CUBE_SHADOW: 0x8DC5;
+ readonly UNSIGNED_INT_VEC2: 0x8DC6;
+ readonly UNSIGNED_INT_VEC3: 0x8DC7;
+ readonly UNSIGNED_INT_VEC4: 0x8DC8;
+ readonly INT_SAMPLER_2D: 0x8DCA;
+ readonly INT_SAMPLER_3D: 0x8DCB;
+ readonly INT_SAMPLER_CUBE: 0x8DCC;
+ readonly INT_SAMPLER_2D_ARRAY: 0x8DCF;
+ readonly UNSIGNED_INT_SAMPLER_2D: 0x8DD2;
+ readonly UNSIGNED_INT_SAMPLER_3D: 0x8DD3;
+ readonly UNSIGNED_INT_SAMPLER_CUBE: 0x8DD4;
+ readonly UNSIGNED_INT_SAMPLER_2D_ARRAY: 0x8DD7;
+ readonly DEPTH_COMPONENT32F: 0x8CAC;
+ readonly DEPTH32F_STENCIL8: 0x8CAD;
+ readonly FLOAT_32_UNSIGNED_INT_24_8_REV: 0x8DAD;
+ readonly FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING: 0x8210;
+ readonly FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE: 0x8211;
+ readonly FRAMEBUFFER_ATTACHMENT_RED_SIZE: 0x8212;
+ readonly FRAMEBUFFER_ATTACHMENT_GREEN_SIZE: 0x8213;
+ readonly FRAMEBUFFER_ATTACHMENT_BLUE_SIZE: 0x8214;
+ readonly FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE: 0x8215;
+ readonly FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE: 0x8216;
+ readonly FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE: 0x8217;
+ readonly FRAMEBUFFER_DEFAULT: 0x8218;
+ readonly UNSIGNED_INT_24_8: 0x84FA;
+ readonly DEPTH24_STENCIL8: 0x88F0;
+ readonly UNSIGNED_NORMALIZED: 0x8C17;
+ readonly DRAW_FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly READ_FRAMEBUFFER: 0x8CA8;
+ readonly DRAW_FRAMEBUFFER: 0x8CA9;
+ readonly READ_FRAMEBUFFER_BINDING: 0x8CAA;
+ readonly RENDERBUFFER_SAMPLES: 0x8CAB;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER: 0x8CD4;
+ readonly MAX_COLOR_ATTACHMENTS: 0x8CDF;
+ readonly COLOR_ATTACHMENT1: 0x8CE1;
+ readonly COLOR_ATTACHMENT2: 0x8CE2;
+ readonly COLOR_ATTACHMENT3: 0x8CE3;
+ readonly COLOR_ATTACHMENT4: 0x8CE4;
+ readonly COLOR_ATTACHMENT5: 0x8CE5;
+ readonly COLOR_ATTACHMENT6: 0x8CE6;
+ readonly COLOR_ATTACHMENT7: 0x8CE7;
+ readonly COLOR_ATTACHMENT8: 0x8CE8;
+ readonly COLOR_ATTACHMENT9: 0x8CE9;
+ readonly COLOR_ATTACHMENT10: 0x8CEA;
+ readonly COLOR_ATTACHMENT11: 0x8CEB;
+ readonly COLOR_ATTACHMENT12: 0x8CEC;
+ readonly COLOR_ATTACHMENT13: 0x8CED;
+ readonly COLOR_ATTACHMENT14: 0x8CEE;
+ readonly COLOR_ATTACHMENT15: 0x8CEF;
+ readonly FRAMEBUFFER_INCOMPLETE_MULTISAMPLE: 0x8D56;
+ readonly MAX_SAMPLES: 0x8D57;
+ readonly HALF_FLOAT: 0x140B;
+ readonly RG: 0x8227;
+ readonly RG_INTEGER: 0x8228;
+ readonly R8: 0x8229;
+ readonly RG8: 0x822B;
+ readonly R16F: 0x822D;
+ readonly R32F: 0x822E;
+ readonly RG16F: 0x822F;
+ readonly RG32F: 0x8230;
+ readonly R8I: 0x8231;
+ readonly R8UI: 0x8232;
+ readonly R16I: 0x8233;
+ readonly R16UI: 0x8234;
+ readonly R32I: 0x8235;
+ readonly R32UI: 0x8236;
+ readonly RG8I: 0x8237;
+ readonly RG8UI: 0x8238;
+ readonly RG16I: 0x8239;
+ readonly RG16UI: 0x823A;
+ readonly RG32I: 0x823B;
+ readonly RG32UI: 0x823C;
+ readonly VERTEX_ARRAY_BINDING: 0x85B5;
+ readonly R8_SNORM: 0x8F94;
+ readonly RG8_SNORM: 0x8F95;
+ readonly RGB8_SNORM: 0x8F96;
+ readonly RGBA8_SNORM: 0x8F97;
+ readonly SIGNED_NORMALIZED: 0x8F9C;
+ readonly COPY_READ_BUFFER: 0x8F36;
+ readonly COPY_WRITE_BUFFER: 0x8F37;
+ readonly COPY_READ_BUFFER_BINDING: 0x8F36;
+ readonly COPY_WRITE_BUFFER_BINDING: 0x8F37;
+ readonly UNIFORM_BUFFER: 0x8A11;
+ readonly UNIFORM_BUFFER_BINDING: 0x8A28;
+ readonly UNIFORM_BUFFER_START: 0x8A29;
+ readonly UNIFORM_BUFFER_SIZE: 0x8A2A;
+ readonly MAX_VERTEX_UNIFORM_BLOCKS: 0x8A2B;
+ readonly MAX_FRAGMENT_UNIFORM_BLOCKS: 0x8A2D;
+ readonly MAX_COMBINED_UNIFORM_BLOCKS: 0x8A2E;
+ readonly MAX_UNIFORM_BUFFER_BINDINGS: 0x8A2F;
+ readonly MAX_UNIFORM_BLOCK_SIZE: 0x8A30;
+ readonly MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS: 0x8A31;
+ readonly MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS: 0x8A33;
+ readonly UNIFORM_BUFFER_OFFSET_ALIGNMENT: 0x8A34;
+ readonly ACTIVE_UNIFORM_BLOCKS: 0x8A36;
+ readonly UNIFORM_TYPE: 0x8A37;
+ readonly UNIFORM_SIZE: 0x8A38;
+ readonly UNIFORM_BLOCK_INDEX: 0x8A3A;
+ readonly UNIFORM_OFFSET: 0x8A3B;
+ readonly UNIFORM_ARRAY_STRIDE: 0x8A3C;
+ readonly UNIFORM_MATRIX_STRIDE: 0x8A3D;
+ readonly UNIFORM_IS_ROW_MAJOR: 0x8A3E;
+ readonly UNIFORM_BLOCK_BINDING: 0x8A3F;
+ readonly UNIFORM_BLOCK_DATA_SIZE: 0x8A40;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORMS: 0x8A42;
+ readonly UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES: 0x8A43;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER: 0x8A44;
+ readonly UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER: 0x8A46;
+ readonly INVALID_INDEX: 0xFFFFFFFF;
+ readonly MAX_VERTEX_OUTPUT_COMPONENTS: 0x9122;
+ readonly MAX_FRAGMENT_INPUT_COMPONENTS: 0x9125;
+ readonly MAX_SERVER_WAIT_TIMEOUT: 0x9111;
+ readonly OBJECT_TYPE: 0x9112;
+ readonly SYNC_CONDITION: 0x9113;
+ readonly SYNC_STATUS: 0x9114;
+ readonly SYNC_FLAGS: 0x9115;
+ readonly SYNC_FENCE: 0x9116;
+ readonly SYNC_GPU_COMMANDS_COMPLETE: 0x9117;
+ readonly UNSIGNALED: 0x9118;
+ readonly SIGNALED: 0x9119;
+ readonly ALREADY_SIGNALED: 0x911A;
+ readonly TIMEOUT_EXPIRED: 0x911B;
+ readonly CONDITION_SATISFIED: 0x911C;
+ readonly WAIT_FAILED: 0x911D;
+ readonly SYNC_FLUSH_COMMANDS_BIT: 0x00000001;
+ readonly VERTEX_ATTRIB_ARRAY_DIVISOR: 0x88FE;
+ readonly ANY_SAMPLES_PASSED: 0x8C2F;
+ readonly ANY_SAMPLES_PASSED_CONSERVATIVE: 0x8D6A;
+ readonly SAMPLER_BINDING: 0x8919;
+ readonly RGB10_A2UI: 0x906F;
+ readonly INT_2_10_10_10_REV: 0x8D9F;
+ readonly TRANSFORM_FEEDBACK: 0x8E22;
+ readonly TRANSFORM_FEEDBACK_PAUSED: 0x8E23;
+ readonly TRANSFORM_FEEDBACK_ACTIVE: 0x8E24;
+ readonly TRANSFORM_FEEDBACK_BINDING: 0x8E25;
+ readonly TEXTURE_IMMUTABLE_FORMAT: 0x912F;
+ readonly MAX_ELEMENT_INDEX: 0x8D6B;
+ readonly TEXTURE_IMMUTABLE_LEVELS: 0x82DF;
+ readonly TIMEOUT_IGNORED: -1;
+ readonly MAX_CLIENT_WAIT_TIMEOUT_WEBGL: 0x9247;
+}
+
+interface WebGL2RenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferData) */
+ bufferData(target: GLenum, size: GLsizeiptr, usage: GLenum): void;
+ bufferData(target: GLenum, srcData: AllowSharedBufferSource | null, usage: GLenum): void;
+ bufferData(target: GLenum, srcData: ArrayBufferView, usage: GLenum, srcOffset: number, length?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferSubData) */
+ bufferSubData(target: GLenum, dstByteOffset: GLintptr, srcData: AllowSharedBufferSource): void;
+ bufferSubData(target: GLenum, dstByteOffset: GLintptr, srcData: ArrayBufferView, srcOffset: number, length?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexImage2D) */
+ compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexSubImage2D) */
+ compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, imageSize: GLsizei, offset: GLintptr): void;
+ compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, srcData: ArrayBufferView, srcOffset?: number, srcLengthOverride?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/readPixels) */
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, dstData: ArrayBufferView | null): void;
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, offset: GLintptr): void;
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, dstData: ArrayBufferView, dstOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texImage2D) */
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texSubImage2D) */
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pboOffset: GLintptr): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, source: TexImageSource): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, srcData: ArrayBufferView, srcOffset: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, data: Int32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Float32List, srcOffset?: number, srcLength?: GLuint): void;
+}
+
+/**
+ * Part of the WebGL API and represents the information returned by calling the WebGLRenderingContext.getActiveAttrib() and WebGLRenderingContext.getActiveUniform() methods.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo)
+ */
+interface WebGLActiveInfo {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/name) */
+ readonly name: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/size) */
+ readonly size: GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLActiveInfo/type) */
+ readonly type: GLenum;
+}
+
+declare var WebGLActiveInfo: {
+ prototype: WebGLActiveInfo;
+ new(): WebGLActiveInfo;
+};
+
+/**
+ * Part of the WebGL API and represents an opaque buffer object storing data such as vertices or colors.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLBuffer)
+ */
+interface WebGLBuffer {
+}
+
+declare var WebGLBuffer: {
+ prototype: WebGLBuffer;
+ new(): WebGLBuffer;
+};
+
+/**
+ * The WebContextEvent interface is part of the WebGL API and is an interface for an event that is generated in response to a status change to the WebGL rendering context.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLContextEvent)
+ */
+interface WebGLContextEvent extends Event {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLContextEvent/statusMessage) */
+ readonly statusMessage: string;
+}
+
+declare var WebGLContextEvent: {
+ prototype: WebGLContextEvent;
+ new(type: string, eventInit?: WebGLContextEventInit): WebGLContextEvent;
+};
+
+/**
+ * Part of the WebGL API and represents a collection of buffers that serve as a rendering destination.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLFramebuffer)
+ */
+interface WebGLFramebuffer {
+}
+
+declare var WebGLFramebuffer: {
+ prototype: WebGLFramebuffer;
+ new(): WebGLFramebuffer;
+};
+
+/**
+ * The WebGLProgram is part of the WebGL API and is a combination of two compiled WebGLShaders consisting of a vertex shader and a fragment shader (both written in GLSL).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLProgram)
+ */
+interface WebGLProgram {
+}
+
+declare var WebGLProgram: {
+ prototype: WebGLProgram;
+ new(): WebGLProgram;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLQuery) */
+interface WebGLQuery {
+}
+
+declare var WebGLQuery: {
+ prototype: WebGLQuery;
+ new(): WebGLQuery;
+};
+
+/**
+ * Part of the WebGL API and represents a buffer that can contain an image, or can be source or target of an rendering operation.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderbuffer)
+ */
+interface WebGLRenderbuffer {
+}
+
+declare var WebGLRenderbuffer: {
+ prototype: WebGLRenderbuffer;
+ new(): WebGLRenderbuffer;
+};
+
+/**
+ * Provides an interface to the OpenGL ES 2.0 graphics rendering context for the drawing surface of an HTML <canvas> element.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext)
+ */
+interface WebGLRenderingContext extends WebGLRenderingContextBase, WebGLRenderingContextOverloads {
+}
+
+declare var WebGLRenderingContext: {
+ prototype: WebGLRenderingContext;
+ new(): WebGLRenderingContext;
+ readonly DEPTH_BUFFER_BIT: 0x00000100;
+ readonly STENCIL_BUFFER_BIT: 0x00000400;
+ readonly COLOR_BUFFER_BIT: 0x00004000;
+ readonly POINTS: 0x0000;
+ readonly LINES: 0x0001;
+ readonly LINE_LOOP: 0x0002;
+ readonly LINE_STRIP: 0x0003;
+ readonly TRIANGLES: 0x0004;
+ readonly TRIANGLE_STRIP: 0x0005;
+ readonly TRIANGLE_FAN: 0x0006;
+ readonly ZERO: 0;
+ readonly ONE: 1;
+ readonly SRC_COLOR: 0x0300;
+ readonly ONE_MINUS_SRC_COLOR: 0x0301;
+ readonly SRC_ALPHA: 0x0302;
+ readonly ONE_MINUS_SRC_ALPHA: 0x0303;
+ readonly DST_ALPHA: 0x0304;
+ readonly ONE_MINUS_DST_ALPHA: 0x0305;
+ readonly DST_COLOR: 0x0306;
+ readonly ONE_MINUS_DST_COLOR: 0x0307;
+ readonly SRC_ALPHA_SATURATE: 0x0308;
+ readonly FUNC_ADD: 0x8006;
+ readonly BLEND_EQUATION: 0x8009;
+ readonly BLEND_EQUATION_RGB: 0x8009;
+ readonly BLEND_EQUATION_ALPHA: 0x883D;
+ readonly FUNC_SUBTRACT: 0x800A;
+ readonly FUNC_REVERSE_SUBTRACT: 0x800B;
+ readonly BLEND_DST_RGB: 0x80C8;
+ readonly BLEND_SRC_RGB: 0x80C9;
+ readonly BLEND_DST_ALPHA: 0x80CA;
+ readonly BLEND_SRC_ALPHA: 0x80CB;
+ readonly CONSTANT_COLOR: 0x8001;
+ readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
+ readonly CONSTANT_ALPHA: 0x8003;
+ readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
+ readonly BLEND_COLOR: 0x8005;
+ readonly ARRAY_BUFFER: 0x8892;
+ readonly ELEMENT_ARRAY_BUFFER: 0x8893;
+ readonly ARRAY_BUFFER_BINDING: 0x8894;
+ readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
+ readonly STREAM_DRAW: 0x88E0;
+ readonly STATIC_DRAW: 0x88E4;
+ readonly DYNAMIC_DRAW: 0x88E8;
+ readonly BUFFER_SIZE: 0x8764;
+ readonly BUFFER_USAGE: 0x8765;
+ readonly CURRENT_VERTEX_ATTRIB: 0x8626;
+ readonly FRONT: 0x0404;
+ readonly BACK: 0x0405;
+ readonly FRONT_AND_BACK: 0x0408;
+ readonly CULL_FACE: 0x0B44;
+ readonly BLEND: 0x0BE2;
+ readonly DITHER: 0x0BD0;
+ readonly STENCIL_TEST: 0x0B90;
+ readonly DEPTH_TEST: 0x0B71;
+ readonly SCISSOR_TEST: 0x0C11;
+ readonly POLYGON_OFFSET_FILL: 0x8037;
+ readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
+ readonly SAMPLE_COVERAGE: 0x80A0;
+ readonly NO_ERROR: 0;
+ readonly INVALID_ENUM: 0x0500;
+ readonly INVALID_VALUE: 0x0501;
+ readonly INVALID_OPERATION: 0x0502;
+ readonly OUT_OF_MEMORY: 0x0505;
+ readonly CW: 0x0900;
+ readonly CCW: 0x0901;
+ readonly LINE_WIDTH: 0x0B21;
+ readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
+ readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
+ readonly CULL_FACE_MODE: 0x0B45;
+ readonly FRONT_FACE: 0x0B46;
+ readonly DEPTH_RANGE: 0x0B70;
+ readonly DEPTH_WRITEMASK: 0x0B72;
+ readonly DEPTH_CLEAR_VALUE: 0x0B73;
+ readonly DEPTH_FUNC: 0x0B74;
+ readonly STENCIL_CLEAR_VALUE: 0x0B91;
+ readonly STENCIL_FUNC: 0x0B92;
+ readonly STENCIL_FAIL: 0x0B94;
+ readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
+ readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
+ readonly STENCIL_REF: 0x0B97;
+ readonly STENCIL_VALUE_MASK: 0x0B93;
+ readonly STENCIL_WRITEMASK: 0x0B98;
+ readonly STENCIL_BACK_FUNC: 0x8800;
+ readonly STENCIL_BACK_FAIL: 0x8801;
+ readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
+ readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
+ readonly STENCIL_BACK_REF: 0x8CA3;
+ readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
+ readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
+ readonly VIEWPORT: 0x0BA2;
+ readonly SCISSOR_BOX: 0x0C10;
+ readonly COLOR_CLEAR_VALUE: 0x0C22;
+ readonly COLOR_WRITEMASK: 0x0C23;
+ readonly UNPACK_ALIGNMENT: 0x0CF5;
+ readonly PACK_ALIGNMENT: 0x0D05;
+ readonly MAX_TEXTURE_SIZE: 0x0D33;
+ readonly MAX_VIEWPORT_DIMS: 0x0D3A;
+ readonly SUBPIXEL_BITS: 0x0D50;
+ readonly RED_BITS: 0x0D52;
+ readonly GREEN_BITS: 0x0D53;
+ readonly BLUE_BITS: 0x0D54;
+ readonly ALPHA_BITS: 0x0D55;
+ readonly DEPTH_BITS: 0x0D56;
+ readonly STENCIL_BITS: 0x0D57;
+ readonly POLYGON_OFFSET_UNITS: 0x2A00;
+ readonly POLYGON_OFFSET_FACTOR: 0x8038;
+ readonly TEXTURE_BINDING_2D: 0x8069;
+ readonly SAMPLE_BUFFERS: 0x80A8;
+ readonly SAMPLES: 0x80A9;
+ readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
+ readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
+ readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
+ readonly DONT_CARE: 0x1100;
+ readonly FASTEST: 0x1101;
+ readonly NICEST: 0x1102;
+ readonly GENERATE_MIPMAP_HINT: 0x8192;
+ readonly BYTE: 0x1400;
+ readonly UNSIGNED_BYTE: 0x1401;
+ readonly SHORT: 0x1402;
+ readonly UNSIGNED_SHORT: 0x1403;
+ readonly INT: 0x1404;
+ readonly UNSIGNED_INT: 0x1405;
+ readonly FLOAT: 0x1406;
+ readonly DEPTH_COMPONENT: 0x1902;
+ readonly ALPHA: 0x1906;
+ readonly RGB: 0x1907;
+ readonly RGBA: 0x1908;
+ readonly LUMINANCE: 0x1909;
+ readonly LUMINANCE_ALPHA: 0x190A;
+ readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
+ readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
+ readonly UNSIGNED_SHORT_5_6_5: 0x8363;
+ readonly FRAGMENT_SHADER: 0x8B30;
+ readonly VERTEX_SHADER: 0x8B31;
+ readonly MAX_VERTEX_ATTRIBS: 0x8869;
+ readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
+ readonly MAX_VARYING_VECTORS: 0x8DFC;
+ readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
+ readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
+ readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
+ readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
+ readonly SHADER_TYPE: 0x8B4F;
+ readonly DELETE_STATUS: 0x8B80;
+ readonly LINK_STATUS: 0x8B82;
+ readonly VALIDATE_STATUS: 0x8B83;
+ readonly ATTACHED_SHADERS: 0x8B85;
+ readonly ACTIVE_UNIFORMS: 0x8B86;
+ readonly ACTIVE_ATTRIBUTES: 0x8B89;
+ readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
+ readonly CURRENT_PROGRAM: 0x8B8D;
+ readonly NEVER: 0x0200;
+ readonly LESS: 0x0201;
+ readonly EQUAL: 0x0202;
+ readonly LEQUAL: 0x0203;
+ readonly GREATER: 0x0204;
+ readonly NOTEQUAL: 0x0205;
+ readonly GEQUAL: 0x0206;
+ readonly ALWAYS: 0x0207;
+ readonly KEEP: 0x1E00;
+ readonly REPLACE: 0x1E01;
+ readonly INCR: 0x1E02;
+ readonly DECR: 0x1E03;
+ readonly INVERT: 0x150A;
+ readonly INCR_WRAP: 0x8507;
+ readonly DECR_WRAP: 0x8508;
+ readonly VENDOR: 0x1F00;
+ readonly RENDERER: 0x1F01;
+ readonly VERSION: 0x1F02;
+ readonly NEAREST: 0x2600;
+ readonly LINEAR: 0x2601;
+ readonly NEAREST_MIPMAP_NEAREST: 0x2700;
+ readonly LINEAR_MIPMAP_NEAREST: 0x2701;
+ readonly NEAREST_MIPMAP_LINEAR: 0x2702;
+ readonly LINEAR_MIPMAP_LINEAR: 0x2703;
+ readonly TEXTURE_MAG_FILTER: 0x2800;
+ readonly TEXTURE_MIN_FILTER: 0x2801;
+ readonly TEXTURE_WRAP_S: 0x2802;
+ readonly TEXTURE_WRAP_T: 0x2803;
+ readonly TEXTURE_2D: 0x0DE1;
+ readonly TEXTURE: 0x1702;
+ readonly TEXTURE_CUBE_MAP: 0x8513;
+ readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
+ readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
+ readonly TEXTURE0: 0x84C0;
+ readonly TEXTURE1: 0x84C1;
+ readonly TEXTURE2: 0x84C2;
+ readonly TEXTURE3: 0x84C3;
+ readonly TEXTURE4: 0x84C4;
+ readonly TEXTURE5: 0x84C5;
+ readonly TEXTURE6: 0x84C6;
+ readonly TEXTURE7: 0x84C7;
+ readonly TEXTURE8: 0x84C8;
+ readonly TEXTURE9: 0x84C9;
+ readonly TEXTURE10: 0x84CA;
+ readonly TEXTURE11: 0x84CB;
+ readonly TEXTURE12: 0x84CC;
+ readonly TEXTURE13: 0x84CD;
+ readonly TEXTURE14: 0x84CE;
+ readonly TEXTURE15: 0x84CF;
+ readonly TEXTURE16: 0x84D0;
+ readonly TEXTURE17: 0x84D1;
+ readonly TEXTURE18: 0x84D2;
+ readonly TEXTURE19: 0x84D3;
+ readonly TEXTURE20: 0x84D4;
+ readonly TEXTURE21: 0x84D5;
+ readonly TEXTURE22: 0x84D6;
+ readonly TEXTURE23: 0x84D7;
+ readonly TEXTURE24: 0x84D8;
+ readonly TEXTURE25: 0x84D9;
+ readonly TEXTURE26: 0x84DA;
+ readonly TEXTURE27: 0x84DB;
+ readonly TEXTURE28: 0x84DC;
+ readonly TEXTURE29: 0x84DD;
+ readonly TEXTURE30: 0x84DE;
+ readonly TEXTURE31: 0x84DF;
+ readonly ACTIVE_TEXTURE: 0x84E0;
+ readonly REPEAT: 0x2901;
+ readonly CLAMP_TO_EDGE: 0x812F;
+ readonly MIRRORED_REPEAT: 0x8370;
+ readonly FLOAT_VEC2: 0x8B50;
+ readonly FLOAT_VEC3: 0x8B51;
+ readonly FLOAT_VEC4: 0x8B52;
+ readonly INT_VEC2: 0x8B53;
+ readonly INT_VEC3: 0x8B54;
+ readonly INT_VEC4: 0x8B55;
+ readonly BOOL: 0x8B56;
+ readonly BOOL_VEC2: 0x8B57;
+ readonly BOOL_VEC3: 0x8B58;
+ readonly BOOL_VEC4: 0x8B59;
+ readonly FLOAT_MAT2: 0x8B5A;
+ readonly FLOAT_MAT3: 0x8B5B;
+ readonly FLOAT_MAT4: 0x8B5C;
+ readonly SAMPLER_2D: 0x8B5E;
+ readonly SAMPLER_CUBE: 0x8B60;
+ readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
+ readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
+ readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
+ readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
+ readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
+ readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
+ readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
+ readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
+ readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
+ readonly COMPILE_STATUS: 0x8B81;
+ readonly LOW_FLOAT: 0x8DF0;
+ readonly MEDIUM_FLOAT: 0x8DF1;
+ readonly HIGH_FLOAT: 0x8DF2;
+ readonly LOW_INT: 0x8DF3;
+ readonly MEDIUM_INT: 0x8DF4;
+ readonly HIGH_INT: 0x8DF5;
+ readonly FRAMEBUFFER: 0x8D40;
+ readonly RENDERBUFFER: 0x8D41;
+ readonly RGBA4: 0x8056;
+ readonly RGB5_A1: 0x8057;
+ readonly RGBA8: 0x8058;
+ readonly RGB565: 0x8D62;
+ readonly DEPTH_COMPONENT16: 0x81A5;
+ readonly STENCIL_INDEX8: 0x8D48;
+ readonly DEPTH_STENCIL: 0x84F9;
+ readonly RENDERBUFFER_WIDTH: 0x8D42;
+ readonly RENDERBUFFER_HEIGHT: 0x8D43;
+ readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
+ readonly RENDERBUFFER_RED_SIZE: 0x8D50;
+ readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
+ readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
+ readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
+ readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
+ readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
+ readonly COLOR_ATTACHMENT0: 0x8CE0;
+ readonly DEPTH_ATTACHMENT: 0x8D00;
+ readonly STENCIL_ATTACHMENT: 0x8D20;
+ readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
+ readonly NONE: 0;
+ readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
+ readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
+ readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
+ readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
+ readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
+ readonly FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly RENDERBUFFER_BINDING: 0x8CA7;
+ readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
+ readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
+ readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
+ readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
+ readonly CONTEXT_LOST_WEBGL: 0x9242;
+ readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
+ readonly BROWSER_DEFAULT_WEBGL: 0x9244;
+};
+
+interface WebGLRenderingContextBase {
+ drawingBufferColorSpace: PredefinedColorSpace;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawingBufferHeight) */
+ readonly drawingBufferHeight: GLsizei;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawingBufferWidth) */
+ readonly drawingBufferWidth: GLsizei;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/activeTexture) */
+ activeTexture(texture: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/attachShader) */
+ attachShader(program: WebGLProgram, shader: WebGLShader): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindAttribLocation) */
+ bindAttribLocation(program: WebGLProgram, index: GLuint, name: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindBuffer) */
+ bindBuffer(target: GLenum, buffer: WebGLBuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindFramebuffer) */
+ bindFramebuffer(target: GLenum, framebuffer: WebGLFramebuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindRenderbuffer) */
+ bindRenderbuffer(target: GLenum, renderbuffer: WebGLRenderbuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bindTexture) */
+ bindTexture(target: GLenum, texture: WebGLTexture | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendColor) */
+ blendColor(red: GLclampf, green: GLclampf, blue: GLclampf, alpha: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendEquation) */
+ blendEquation(mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendEquationSeparate) */
+ blendEquationSeparate(modeRGB: GLenum, modeAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendFunc) */
+ blendFunc(sfactor: GLenum, dfactor: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/blendFuncSeparate) */
+ blendFuncSeparate(srcRGB: GLenum, dstRGB: GLenum, srcAlpha: GLenum, dstAlpha: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/checkFramebufferStatus) */
+ checkFramebufferStatus(target: GLenum): GLenum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clear) */
+ clear(mask: GLbitfield): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearColor) */
+ clearColor(red: GLclampf, green: GLclampf, blue: GLclampf, alpha: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearDepth) */
+ clearDepth(depth: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/clearStencil) */
+ clearStencil(s: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/colorMask) */
+ colorMask(red: GLboolean, green: GLboolean, blue: GLboolean, alpha: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compileShader) */
+ compileShader(shader: WebGLShader): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/copyTexImage2D) */
+ copyTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, x: GLint, y: GLint, width: GLsizei, height: GLsizei, border: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/copyTexSubImage2D) */
+ copyTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createBuffer) */
+ createBuffer(): WebGLBuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createFramebuffer) */
+ createFramebuffer(): WebGLFramebuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createProgram) */
+ createProgram(): WebGLProgram | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createRenderbuffer) */
+ createRenderbuffer(): WebGLRenderbuffer | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createShader) */
+ createShader(type: GLenum): WebGLShader | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/createTexture) */
+ createTexture(): WebGLTexture | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/cullFace) */
+ cullFace(mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteBuffer) */
+ deleteBuffer(buffer: WebGLBuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteFramebuffer) */
+ deleteFramebuffer(framebuffer: WebGLFramebuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteProgram) */
+ deleteProgram(program: WebGLProgram | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteRenderbuffer) */
+ deleteRenderbuffer(renderbuffer: WebGLRenderbuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteShader) */
+ deleteShader(shader: WebGLShader | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/deleteTexture) */
+ deleteTexture(texture: WebGLTexture | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthFunc) */
+ depthFunc(func: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthMask) */
+ depthMask(flag: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/depthRange) */
+ depthRange(zNear: GLclampf, zFar: GLclampf): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/detachShader) */
+ detachShader(program: WebGLProgram, shader: WebGLShader): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/disable) */
+ disable(cap: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/disableVertexAttribArray) */
+ disableVertexAttribArray(index: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawArrays) */
+ drawArrays(mode: GLenum, first: GLint, count: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/drawElements) */
+ drawElements(mode: GLenum, count: GLsizei, type: GLenum, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/enable) */
+ enable(cap: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/enableVertexAttribArray) */
+ enableVertexAttribArray(index: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/finish) */
+ finish(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/flush) */
+ flush(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/framebufferRenderbuffer) */
+ framebufferRenderbuffer(target: GLenum, attachment: GLenum, renderbuffertarget: GLenum, renderbuffer: WebGLRenderbuffer | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/framebufferTexture2D) */
+ framebufferTexture2D(target: GLenum, attachment: GLenum, textarget: GLenum, texture: WebGLTexture | null, level: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/frontFace) */
+ frontFace(mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/generateMipmap) */
+ generateMipmap(target: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getActiveAttrib) */
+ getActiveAttrib(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getActiveUniform) */
+ getActiveUniform(program: WebGLProgram, index: GLuint): WebGLActiveInfo | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getAttachedShaders) */
+ getAttachedShaders(program: WebGLProgram): WebGLShader[] | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getAttribLocation) */
+ getAttribLocation(program: WebGLProgram, name: string): GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getBufferParameter) */
+ getBufferParameter(target: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getContextAttributes) */
+ getContextAttributes(): WebGLContextAttributes | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getError) */
+ getError(): GLenum;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getExtension) */
+ getExtension(extensionName: "ANGLE_instanced_arrays"): ANGLE_instanced_arrays | null;
+ getExtension(extensionName: "EXT_blend_minmax"): EXT_blend_minmax | null;
+ getExtension(extensionName: "EXT_color_buffer_float"): EXT_color_buffer_float | null;
+ getExtension(extensionName: "EXT_color_buffer_half_float"): EXT_color_buffer_half_float | null;
+ getExtension(extensionName: "EXT_float_blend"): EXT_float_blend | null;
+ getExtension(extensionName: "EXT_frag_depth"): EXT_frag_depth | null;
+ getExtension(extensionName: "EXT_sRGB"): EXT_sRGB | null;
+ getExtension(extensionName: "EXT_shader_texture_lod"): EXT_shader_texture_lod | null;
+ getExtension(extensionName: "EXT_texture_compression_bptc"): EXT_texture_compression_bptc | null;
+ getExtension(extensionName: "EXT_texture_compression_rgtc"): EXT_texture_compression_rgtc | null;
+ getExtension(extensionName: "EXT_texture_filter_anisotropic"): EXT_texture_filter_anisotropic | null;
+ getExtension(extensionName: "KHR_parallel_shader_compile"): KHR_parallel_shader_compile | null;
+ getExtension(extensionName: "OES_element_index_uint"): OES_element_index_uint | null;
+ getExtension(extensionName: "OES_fbo_render_mipmap"): OES_fbo_render_mipmap | null;
+ getExtension(extensionName: "OES_standard_derivatives"): OES_standard_derivatives | null;
+ getExtension(extensionName: "OES_texture_float"): OES_texture_float | null;
+ getExtension(extensionName: "OES_texture_float_linear"): OES_texture_float_linear | null;
+ getExtension(extensionName: "OES_texture_half_float"): OES_texture_half_float | null;
+ getExtension(extensionName: "OES_texture_half_float_linear"): OES_texture_half_float_linear | null;
+ getExtension(extensionName: "OES_vertex_array_object"): OES_vertex_array_object | null;
+ getExtension(extensionName: "OVR_multiview2"): OVR_multiview2 | null;
+ getExtension(extensionName: "WEBGL_color_buffer_float"): WEBGL_color_buffer_float | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_astc"): WEBGL_compressed_texture_astc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_etc"): WEBGL_compressed_texture_etc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_etc1"): WEBGL_compressed_texture_etc1 | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_pvrtc"): WEBGL_compressed_texture_pvrtc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_s3tc"): WEBGL_compressed_texture_s3tc | null;
+ getExtension(extensionName: "WEBGL_compressed_texture_s3tc_srgb"): WEBGL_compressed_texture_s3tc_srgb | null;
+ getExtension(extensionName: "WEBGL_debug_renderer_info"): WEBGL_debug_renderer_info | null;
+ getExtension(extensionName: "WEBGL_debug_shaders"): WEBGL_debug_shaders | null;
+ getExtension(extensionName: "WEBGL_depth_texture"): WEBGL_depth_texture | null;
+ getExtension(extensionName: "WEBGL_draw_buffers"): WEBGL_draw_buffers | null;
+ getExtension(extensionName: "WEBGL_lose_context"): WEBGL_lose_context | null;
+ getExtension(extensionName: "WEBGL_multi_draw"): WEBGL_multi_draw | null;
+ getExtension(name: string): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getFramebufferAttachmentParameter) */
+ getFramebufferAttachmentParameter(target: GLenum, attachment: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getParameter) */
+ getParameter(pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getProgramInfoLog) */
+ getProgramInfoLog(program: WebGLProgram): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getProgramParameter) */
+ getProgramParameter(program: WebGLProgram, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getRenderbufferParameter) */
+ getRenderbufferParameter(target: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderInfoLog) */
+ getShaderInfoLog(shader: WebGLShader): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderParameter) */
+ getShaderParameter(shader: WebGLShader, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderPrecisionFormat) */
+ getShaderPrecisionFormat(shadertype: GLenum, precisiontype: GLenum): WebGLShaderPrecisionFormat | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getShaderSource) */
+ getShaderSource(shader: WebGLShader): string | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getSupportedExtensions) */
+ getSupportedExtensions(): string[] | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getTexParameter) */
+ getTexParameter(target: GLenum, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getUniform) */
+ getUniform(program: WebGLProgram, location: WebGLUniformLocation): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getUniformLocation) */
+ getUniformLocation(program: WebGLProgram, name: string): WebGLUniformLocation | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getVertexAttrib) */
+ getVertexAttrib(index: GLuint, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/getVertexAttribOffset) */
+ getVertexAttribOffset(index: GLuint, pname: GLenum): GLintptr;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/hint) */
+ hint(target: GLenum, mode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isBuffer) */
+ isBuffer(buffer: WebGLBuffer | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isContextLost) */
+ isContextLost(): boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isEnabled) */
+ isEnabled(cap: GLenum): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isFramebuffer) */
+ isFramebuffer(framebuffer: WebGLFramebuffer | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isProgram) */
+ isProgram(program: WebGLProgram | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isRenderbuffer) */
+ isRenderbuffer(renderbuffer: WebGLRenderbuffer | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isShader) */
+ isShader(shader: WebGLShader | null): GLboolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/isTexture) */
+ isTexture(texture: WebGLTexture | null): GLboolean;
+ lineWidth(width: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/linkProgram) */
+ linkProgram(program: WebGLProgram): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/pixelStorei) */
+ pixelStorei(pname: GLenum, param: GLint | GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/polygonOffset) */
+ polygonOffset(factor: GLfloat, units: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/renderbufferStorage) */
+ renderbufferStorage(target: GLenum, internalformat: GLenum, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/sampleCoverage) */
+ sampleCoverage(value: GLclampf, invert: GLboolean): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/scissor) */
+ scissor(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/shaderSource) */
+ shaderSource(shader: WebGLShader, source: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilFunc) */
+ stencilFunc(func: GLenum, ref: GLint, mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilFuncSeparate) */
+ stencilFuncSeparate(face: GLenum, func: GLenum, ref: GLint, mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilMask) */
+ stencilMask(mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilMaskSeparate) */
+ stencilMaskSeparate(face: GLenum, mask: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilOp) */
+ stencilOp(fail: GLenum, zfail: GLenum, zpass: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/stencilOpSeparate) */
+ stencilOpSeparate(face: GLenum, fail: GLenum, zfail: GLenum, zpass: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texParameter) */
+ texParameterf(target: GLenum, pname: GLenum, param: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texParameter) */
+ texParameteri(target: GLenum, pname: GLenum, param: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1f(location: WebGLUniformLocation | null, x: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1i(location: WebGLUniformLocation | null, x: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2i(location: WebGLUniformLocation | null, x: GLint, y: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat, z: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3i(location: WebGLUniformLocation | null, x: GLint, y: GLint, z: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4f(location: WebGLUniformLocation | null, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4i(location: WebGLUniformLocation | null, x: GLint, y: GLint, z: GLint, w: GLint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/useProgram) */
+ useProgram(program: WebGLProgram | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/validateProgram) */
+ validateProgram(program: WebGLProgram): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib1f(index: GLuint, x: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib1fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib2f(index: GLuint, x: GLfloat, y: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib2fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib3f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib3fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib4f(index: GLuint, x: GLfloat, y: GLfloat, z: GLfloat, w: GLfloat): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib4fv(index: GLuint, values: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttribPointer) */
+ vertexAttribPointer(index: GLuint, size: GLint, type: GLenum, normalized: GLboolean, stride: GLsizei, offset: GLintptr): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/viewport) */
+ viewport(x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ readonly DEPTH_BUFFER_BIT: 0x00000100;
+ readonly STENCIL_BUFFER_BIT: 0x00000400;
+ readonly COLOR_BUFFER_BIT: 0x00004000;
+ readonly POINTS: 0x0000;
+ readonly LINES: 0x0001;
+ readonly LINE_LOOP: 0x0002;
+ readonly LINE_STRIP: 0x0003;
+ readonly TRIANGLES: 0x0004;
+ readonly TRIANGLE_STRIP: 0x0005;
+ readonly TRIANGLE_FAN: 0x0006;
+ readonly ZERO: 0;
+ readonly ONE: 1;
+ readonly SRC_COLOR: 0x0300;
+ readonly ONE_MINUS_SRC_COLOR: 0x0301;
+ readonly SRC_ALPHA: 0x0302;
+ readonly ONE_MINUS_SRC_ALPHA: 0x0303;
+ readonly DST_ALPHA: 0x0304;
+ readonly ONE_MINUS_DST_ALPHA: 0x0305;
+ readonly DST_COLOR: 0x0306;
+ readonly ONE_MINUS_DST_COLOR: 0x0307;
+ readonly SRC_ALPHA_SATURATE: 0x0308;
+ readonly FUNC_ADD: 0x8006;
+ readonly BLEND_EQUATION: 0x8009;
+ readonly BLEND_EQUATION_RGB: 0x8009;
+ readonly BLEND_EQUATION_ALPHA: 0x883D;
+ readonly FUNC_SUBTRACT: 0x800A;
+ readonly FUNC_REVERSE_SUBTRACT: 0x800B;
+ readonly BLEND_DST_RGB: 0x80C8;
+ readonly BLEND_SRC_RGB: 0x80C9;
+ readonly BLEND_DST_ALPHA: 0x80CA;
+ readonly BLEND_SRC_ALPHA: 0x80CB;
+ readonly CONSTANT_COLOR: 0x8001;
+ readonly ONE_MINUS_CONSTANT_COLOR: 0x8002;
+ readonly CONSTANT_ALPHA: 0x8003;
+ readonly ONE_MINUS_CONSTANT_ALPHA: 0x8004;
+ readonly BLEND_COLOR: 0x8005;
+ readonly ARRAY_BUFFER: 0x8892;
+ readonly ELEMENT_ARRAY_BUFFER: 0x8893;
+ readonly ARRAY_BUFFER_BINDING: 0x8894;
+ readonly ELEMENT_ARRAY_BUFFER_BINDING: 0x8895;
+ readonly STREAM_DRAW: 0x88E0;
+ readonly STATIC_DRAW: 0x88E4;
+ readonly DYNAMIC_DRAW: 0x88E8;
+ readonly BUFFER_SIZE: 0x8764;
+ readonly BUFFER_USAGE: 0x8765;
+ readonly CURRENT_VERTEX_ATTRIB: 0x8626;
+ readonly FRONT: 0x0404;
+ readonly BACK: 0x0405;
+ readonly FRONT_AND_BACK: 0x0408;
+ readonly CULL_FACE: 0x0B44;
+ readonly BLEND: 0x0BE2;
+ readonly DITHER: 0x0BD0;
+ readonly STENCIL_TEST: 0x0B90;
+ readonly DEPTH_TEST: 0x0B71;
+ readonly SCISSOR_TEST: 0x0C11;
+ readonly POLYGON_OFFSET_FILL: 0x8037;
+ readonly SAMPLE_ALPHA_TO_COVERAGE: 0x809E;
+ readonly SAMPLE_COVERAGE: 0x80A0;
+ readonly NO_ERROR: 0;
+ readonly INVALID_ENUM: 0x0500;
+ readonly INVALID_VALUE: 0x0501;
+ readonly INVALID_OPERATION: 0x0502;
+ readonly OUT_OF_MEMORY: 0x0505;
+ readonly CW: 0x0900;
+ readonly CCW: 0x0901;
+ readonly LINE_WIDTH: 0x0B21;
+ readonly ALIASED_POINT_SIZE_RANGE: 0x846D;
+ readonly ALIASED_LINE_WIDTH_RANGE: 0x846E;
+ readonly CULL_FACE_MODE: 0x0B45;
+ readonly FRONT_FACE: 0x0B46;
+ readonly DEPTH_RANGE: 0x0B70;
+ readonly DEPTH_WRITEMASK: 0x0B72;
+ readonly DEPTH_CLEAR_VALUE: 0x0B73;
+ readonly DEPTH_FUNC: 0x0B74;
+ readonly STENCIL_CLEAR_VALUE: 0x0B91;
+ readonly STENCIL_FUNC: 0x0B92;
+ readonly STENCIL_FAIL: 0x0B94;
+ readonly STENCIL_PASS_DEPTH_FAIL: 0x0B95;
+ readonly STENCIL_PASS_DEPTH_PASS: 0x0B96;
+ readonly STENCIL_REF: 0x0B97;
+ readonly STENCIL_VALUE_MASK: 0x0B93;
+ readonly STENCIL_WRITEMASK: 0x0B98;
+ readonly STENCIL_BACK_FUNC: 0x8800;
+ readonly STENCIL_BACK_FAIL: 0x8801;
+ readonly STENCIL_BACK_PASS_DEPTH_FAIL: 0x8802;
+ readonly STENCIL_BACK_PASS_DEPTH_PASS: 0x8803;
+ readonly STENCIL_BACK_REF: 0x8CA3;
+ readonly STENCIL_BACK_VALUE_MASK: 0x8CA4;
+ readonly STENCIL_BACK_WRITEMASK: 0x8CA5;
+ readonly VIEWPORT: 0x0BA2;
+ readonly SCISSOR_BOX: 0x0C10;
+ readonly COLOR_CLEAR_VALUE: 0x0C22;
+ readonly COLOR_WRITEMASK: 0x0C23;
+ readonly UNPACK_ALIGNMENT: 0x0CF5;
+ readonly PACK_ALIGNMENT: 0x0D05;
+ readonly MAX_TEXTURE_SIZE: 0x0D33;
+ readonly MAX_VIEWPORT_DIMS: 0x0D3A;
+ readonly SUBPIXEL_BITS: 0x0D50;
+ readonly RED_BITS: 0x0D52;
+ readonly GREEN_BITS: 0x0D53;
+ readonly BLUE_BITS: 0x0D54;
+ readonly ALPHA_BITS: 0x0D55;
+ readonly DEPTH_BITS: 0x0D56;
+ readonly STENCIL_BITS: 0x0D57;
+ readonly POLYGON_OFFSET_UNITS: 0x2A00;
+ readonly POLYGON_OFFSET_FACTOR: 0x8038;
+ readonly TEXTURE_BINDING_2D: 0x8069;
+ readonly SAMPLE_BUFFERS: 0x80A8;
+ readonly SAMPLES: 0x80A9;
+ readonly SAMPLE_COVERAGE_VALUE: 0x80AA;
+ readonly SAMPLE_COVERAGE_INVERT: 0x80AB;
+ readonly COMPRESSED_TEXTURE_FORMATS: 0x86A3;
+ readonly DONT_CARE: 0x1100;
+ readonly FASTEST: 0x1101;
+ readonly NICEST: 0x1102;
+ readonly GENERATE_MIPMAP_HINT: 0x8192;
+ readonly BYTE: 0x1400;
+ readonly UNSIGNED_BYTE: 0x1401;
+ readonly SHORT: 0x1402;
+ readonly UNSIGNED_SHORT: 0x1403;
+ readonly INT: 0x1404;
+ readonly UNSIGNED_INT: 0x1405;
+ readonly FLOAT: 0x1406;
+ readonly DEPTH_COMPONENT: 0x1902;
+ readonly ALPHA: 0x1906;
+ readonly RGB: 0x1907;
+ readonly RGBA: 0x1908;
+ readonly LUMINANCE: 0x1909;
+ readonly LUMINANCE_ALPHA: 0x190A;
+ readonly UNSIGNED_SHORT_4_4_4_4: 0x8033;
+ readonly UNSIGNED_SHORT_5_5_5_1: 0x8034;
+ readonly UNSIGNED_SHORT_5_6_5: 0x8363;
+ readonly FRAGMENT_SHADER: 0x8B30;
+ readonly VERTEX_SHADER: 0x8B31;
+ readonly MAX_VERTEX_ATTRIBS: 0x8869;
+ readonly MAX_VERTEX_UNIFORM_VECTORS: 0x8DFB;
+ readonly MAX_VARYING_VECTORS: 0x8DFC;
+ readonly MAX_COMBINED_TEXTURE_IMAGE_UNITS: 0x8B4D;
+ readonly MAX_VERTEX_TEXTURE_IMAGE_UNITS: 0x8B4C;
+ readonly MAX_TEXTURE_IMAGE_UNITS: 0x8872;
+ readonly MAX_FRAGMENT_UNIFORM_VECTORS: 0x8DFD;
+ readonly SHADER_TYPE: 0x8B4F;
+ readonly DELETE_STATUS: 0x8B80;
+ readonly LINK_STATUS: 0x8B82;
+ readonly VALIDATE_STATUS: 0x8B83;
+ readonly ATTACHED_SHADERS: 0x8B85;
+ readonly ACTIVE_UNIFORMS: 0x8B86;
+ readonly ACTIVE_ATTRIBUTES: 0x8B89;
+ readonly SHADING_LANGUAGE_VERSION: 0x8B8C;
+ readonly CURRENT_PROGRAM: 0x8B8D;
+ readonly NEVER: 0x0200;
+ readonly LESS: 0x0201;
+ readonly EQUAL: 0x0202;
+ readonly LEQUAL: 0x0203;
+ readonly GREATER: 0x0204;
+ readonly NOTEQUAL: 0x0205;
+ readonly GEQUAL: 0x0206;
+ readonly ALWAYS: 0x0207;
+ readonly KEEP: 0x1E00;
+ readonly REPLACE: 0x1E01;
+ readonly INCR: 0x1E02;
+ readonly DECR: 0x1E03;
+ readonly INVERT: 0x150A;
+ readonly INCR_WRAP: 0x8507;
+ readonly DECR_WRAP: 0x8508;
+ readonly VENDOR: 0x1F00;
+ readonly RENDERER: 0x1F01;
+ readonly VERSION: 0x1F02;
+ readonly NEAREST: 0x2600;
+ readonly LINEAR: 0x2601;
+ readonly NEAREST_MIPMAP_NEAREST: 0x2700;
+ readonly LINEAR_MIPMAP_NEAREST: 0x2701;
+ readonly NEAREST_MIPMAP_LINEAR: 0x2702;
+ readonly LINEAR_MIPMAP_LINEAR: 0x2703;
+ readonly TEXTURE_MAG_FILTER: 0x2800;
+ readonly TEXTURE_MIN_FILTER: 0x2801;
+ readonly TEXTURE_WRAP_S: 0x2802;
+ readonly TEXTURE_WRAP_T: 0x2803;
+ readonly TEXTURE_2D: 0x0DE1;
+ readonly TEXTURE: 0x1702;
+ readonly TEXTURE_CUBE_MAP: 0x8513;
+ readonly TEXTURE_BINDING_CUBE_MAP: 0x8514;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_X: 0x8515;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_X: 0x8516;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Y: 0x8517;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Y: 0x8518;
+ readonly TEXTURE_CUBE_MAP_POSITIVE_Z: 0x8519;
+ readonly TEXTURE_CUBE_MAP_NEGATIVE_Z: 0x851A;
+ readonly MAX_CUBE_MAP_TEXTURE_SIZE: 0x851C;
+ readonly TEXTURE0: 0x84C0;
+ readonly TEXTURE1: 0x84C1;
+ readonly TEXTURE2: 0x84C2;
+ readonly TEXTURE3: 0x84C3;
+ readonly TEXTURE4: 0x84C4;
+ readonly TEXTURE5: 0x84C5;
+ readonly TEXTURE6: 0x84C6;
+ readonly TEXTURE7: 0x84C7;
+ readonly TEXTURE8: 0x84C8;
+ readonly TEXTURE9: 0x84C9;
+ readonly TEXTURE10: 0x84CA;
+ readonly TEXTURE11: 0x84CB;
+ readonly TEXTURE12: 0x84CC;
+ readonly TEXTURE13: 0x84CD;
+ readonly TEXTURE14: 0x84CE;
+ readonly TEXTURE15: 0x84CF;
+ readonly TEXTURE16: 0x84D0;
+ readonly TEXTURE17: 0x84D1;
+ readonly TEXTURE18: 0x84D2;
+ readonly TEXTURE19: 0x84D3;
+ readonly TEXTURE20: 0x84D4;
+ readonly TEXTURE21: 0x84D5;
+ readonly TEXTURE22: 0x84D6;
+ readonly TEXTURE23: 0x84D7;
+ readonly TEXTURE24: 0x84D8;
+ readonly TEXTURE25: 0x84D9;
+ readonly TEXTURE26: 0x84DA;
+ readonly TEXTURE27: 0x84DB;
+ readonly TEXTURE28: 0x84DC;
+ readonly TEXTURE29: 0x84DD;
+ readonly TEXTURE30: 0x84DE;
+ readonly TEXTURE31: 0x84DF;
+ readonly ACTIVE_TEXTURE: 0x84E0;
+ readonly REPEAT: 0x2901;
+ readonly CLAMP_TO_EDGE: 0x812F;
+ readonly MIRRORED_REPEAT: 0x8370;
+ readonly FLOAT_VEC2: 0x8B50;
+ readonly FLOAT_VEC3: 0x8B51;
+ readonly FLOAT_VEC4: 0x8B52;
+ readonly INT_VEC2: 0x8B53;
+ readonly INT_VEC3: 0x8B54;
+ readonly INT_VEC4: 0x8B55;
+ readonly BOOL: 0x8B56;
+ readonly BOOL_VEC2: 0x8B57;
+ readonly BOOL_VEC3: 0x8B58;
+ readonly BOOL_VEC4: 0x8B59;
+ readonly FLOAT_MAT2: 0x8B5A;
+ readonly FLOAT_MAT3: 0x8B5B;
+ readonly FLOAT_MAT4: 0x8B5C;
+ readonly SAMPLER_2D: 0x8B5E;
+ readonly SAMPLER_CUBE: 0x8B60;
+ readonly VERTEX_ATTRIB_ARRAY_ENABLED: 0x8622;
+ readonly VERTEX_ATTRIB_ARRAY_SIZE: 0x8623;
+ readonly VERTEX_ATTRIB_ARRAY_STRIDE: 0x8624;
+ readonly VERTEX_ATTRIB_ARRAY_TYPE: 0x8625;
+ readonly VERTEX_ATTRIB_ARRAY_NORMALIZED: 0x886A;
+ readonly VERTEX_ATTRIB_ARRAY_POINTER: 0x8645;
+ readonly VERTEX_ATTRIB_ARRAY_BUFFER_BINDING: 0x889F;
+ readonly IMPLEMENTATION_COLOR_READ_TYPE: 0x8B9A;
+ readonly IMPLEMENTATION_COLOR_READ_FORMAT: 0x8B9B;
+ readonly COMPILE_STATUS: 0x8B81;
+ readonly LOW_FLOAT: 0x8DF0;
+ readonly MEDIUM_FLOAT: 0x8DF1;
+ readonly HIGH_FLOAT: 0x8DF2;
+ readonly LOW_INT: 0x8DF3;
+ readonly MEDIUM_INT: 0x8DF4;
+ readonly HIGH_INT: 0x8DF5;
+ readonly FRAMEBUFFER: 0x8D40;
+ readonly RENDERBUFFER: 0x8D41;
+ readonly RGBA4: 0x8056;
+ readonly RGB5_A1: 0x8057;
+ readonly RGBA8: 0x8058;
+ readonly RGB565: 0x8D62;
+ readonly DEPTH_COMPONENT16: 0x81A5;
+ readonly STENCIL_INDEX8: 0x8D48;
+ readonly DEPTH_STENCIL: 0x84F9;
+ readonly RENDERBUFFER_WIDTH: 0x8D42;
+ readonly RENDERBUFFER_HEIGHT: 0x8D43;
+ readonly RENDERBUFFER_INTERNAL_FORMAT: 0x8D44;
+ readonly RENDERBUFFER_RED_SIZE: 0x8D50;
+ readonly RENDERBUFFER_GREEN_SIZE: 0x8D51;
+ readonly RENDERBUFFER_BLUE_SIZE: 0x8D52;
+ readonly RENDERBUFFER_ALPHA_SIZE: 0x8D53;
+ readonly RENDERBUFFER_DEPTH_SIZE: 0x8D54;
+ readonly RENDERBUFFER_STENCIL_SIZE: 0x8D55;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE: 0x8CD0;
+ readonly FRAMEBUFFER_ATTACHMENT_OBJECT_NAME: 0x8CD1;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL: 0x8CD2;
+ readonly FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE: 0x8CD3;
+ readonly COLOR_ATTACHMENT0: 0x8CE0;
+ readonly DEPTH_ATTACHMENT: 0x8D00;
+ readonly STENCIL_ATTACHMENT: 0x8D20;
+ readonly DEPTH_STENCIL_ATTACHMENT: 0x821A;
+ readonly NONE: 0;
+ readonly FRAMEBUFFER_COMPLETE: 0x8CD5;
+ readonly FRAMEBUFFER_INCOMPLETE_ATTACHMENT: 0x8CD6;
+ readonly FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT: 0x8CD7;
+ readonly FRAMEBUFFER_INCOMPLETE_DIMENSIONS: 0x8CD9;
+ readonly FRAMEBUFFER_UNSUPPORTED: 0x8CDD;
+ readonly FRAMEBUFFER_BINDING: 0x8CA6;
+ readonly RENDERBUFFER_BINDING: 0x8CA7;
+ readonly MAX_RENDERBUFFER_SIZE: 0x84E8;
+ readonly INVALID_FRAMEBUFFER_OPERATION: 0x0506;
+ readonly UNPACK_FLIP_Y_WEBGL: 0x9240;
+ readonly UNPACK_PREMULTIPLY_ALPHA_WEBGL: 0x9241;
+ readonly CONTEXT_LOST_WEBGL: 0x9242;
+ readonly UNPACK_COLORSPACE_CONVERSION_WEBGL: 0x9243;
+ readonly BROWSER_DEFAULT_WEBGL: 0x9244;
+}
+
+interface WebGLRenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferData) */
+ bufferData(target: GLenum, size: GLsizeiptr, usage: GLenum): void;
+ bufferData(target: GLenum, data: AllowSharedBufferSource | null, usage: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/bufferSubData) */
+ bufferSubData(target: GLenum, offset: GLintptr, data: AllowSharedBufferSource): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexImage2D) */
+ compressedTexImage2D(target: GLenum, level: GLint, internalformat: GLenum, width: GLsizei, height: GLsizei, border: GLint, data: ArrayBufferView): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/compressedTexSubImage2D) */
+ compressedTexSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, data: ArrayBufferView): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/readPixels) */
+ readPixels(x: GLint, y: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texImage2D) */
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, width: GLsizei, height: GLsizei, border: GLint, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texImage2D(target: GLenum, level: GLint, internalformat: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/texSubImage2D) */
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, width: GLsizei, height: GLsizei, format: GLenum, type: GLenum, pixels: ArrayBufferView | null): void;
+ texSubImage2D(target: GLenum, level: GLint, xoffset: GLint, yoffset: GLint, format: GLenum, type: GLenum, source: TexImageSource): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, v: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, v: Int32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Float32List): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Float32List): void;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLSampler) */
+interface WebGLSampler {
+}
+
+declare var WebGLSampler: {
+ prototype: WebGLSampler;
+ new(): WebGLSampler;
+};
+
+/**
+ * The WebGLShader is part of the WebGL API and can either be a vertex or a fragment shader. A WebGLProgram requires both types of shaders.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShader)
+ */
+interface WebGLShader {
+}
+
+declare var WebGLShader: {
+ prototype: WebGLShader;
+ new(): WebGLShader;
+};
+
+/**
+ * Part of the WebGL API and represents the information returned by calling the WebGLRenderingContext.getShaderPrecisionFormat() method.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat)
+ */
+interface WebGLShaderPrecisionFormat {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/precision) */
+ readonly precision: GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/rangeMax) */
+ readonly rangeMax: GLint;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLShaderPrecisionFormat/rangeMin) */
+ readonly rangeMin: GLint;
+}
+
+declare var WebGLShaderPrecisionFormat: {
+ prototype: WebGLShaderPrecisionFormat;
+ new(): WebGLShaderPrecisionFormat;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLSync) */
+interface WebGLSync {
+}
+
+declare var WebGLSync: {
+ prototype: WebGLSync;
+ new(): WebGLSync;
+};
+
+/**
+ * Part of the WebGL API and represents an opaque texture object providing storage and state for texturing operations.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLTexture)
+ */
+interface WebGLTexture {
+}
+
+declare var WebGLTexture: {
+ prototype: WebGLTexture;
+ new(): WebGLTexture;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLTransformFeedback) */
+interface WebGLTransformFeedback {
+}
+
+declare var WebGLTransformFeedback: {
+ prototype: WebGLTransformFeedback;
+ new(): WebGLTransformFeedback;
+};
+
+/**
+ * Part of the WebGL API and represents the location of a uniform variable in a shader program.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLUniformLocation)
+ */
+interface WebGLUniformLocation {
+}
+
+declare var WebGLUniformLocation: {
+ prototype: WebGLUniformLocation;
+ new(): WebGLUniformLocation;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLVertexArrayObject) */
+interface WebGLVertexArrayObject {
+}
+
+declare var WebGLVertexArrayObject: {
+ prototype: WebGLVertexArrayObject;
+ new(): WebGLVertexArrayObject;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLVertexArrayObjectOES) */
+interface WebGLVertexArrayObjectOES {
+}
+
+interface WebSocketEventMap {
+ "close": CloseEvent;
+ "error": Event;
+ "message": MessageEvent;
+ "open": Event;
+}
+
+/**
+ * Provides the API for creating and managing a WebSocket connection to a server, as well as for sending and receiving data on the connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket)
+ */
+interface WebSocket extends EventTarget {
+ /**
+ * Returns a string that indicates how binary data from the WebSocket object is exposed to scripts:
+ *
+ * Can be set, to change how binary data is returned. The default is "blob".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/binaryType)
+ */
+ binaryType: BinaryType;
+ /**
+ * Returns the number of bytes of application data (UTF-8 text and binary data) that have been queued using send() but not yet been transmitted to the network.
+ *
+ * If the WebSocket connection is closed, this attribute's value will only increase with each call to the send() method. (The number does not reset to zero once the connection closes.)
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/bufferedAmount)
+ */
+ readonly bufferedAmount: number;
+ /**
+ * Returns the extensions selected by the server, if any.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/extensions)
+ */
+ readonly extensions: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/close_event) */
+ onclose: ((this: WebSocket, ev: CloseEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/error_event) */
+ onerror: ((this: WebSocket, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/message_event) */
+ onmessage: ((this: WebSocket, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/open_event) */
+ onopen: ((this: WebSocket, ev: Event) => any) | null;
+ /**
+ * Returns the subprotocol selected by the server, if any. It can be used in conjunction with the array form of the constructor's second argument to perform subprotocol negotiation.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/protocol)
+ */
+ readonly protocol: string;
+ /**
+ * Returns the state of the WebSocket object's connection. It can have the values described below.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/readyState)
+ */
+ readonly readyState: number;
+ /**
+ * Returns the URL that was used to establish the WebSocket connection.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/url)
+ */
+ readonly url: string;
+ /**
+ * Closes the WebSocket connection, optionally using code as the the WebSocket connection close code and reason as the the WebSocket connection close reason.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/close)
+ */
+ close(code?: number, reason?: string): void;
+ /**
+ * Transmits data using the WebSocket connection. data can be a string, a Blob, an ArrayBuffer, or an ArrayBufferView.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebSocket/send)
+ */
+ send(data: string | ArrayBufferLike | Blob | ArrayBufferView): void;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSING: 2;
+ readonly CLOSED: 3;
+ addEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WebSocketEventMap>(type: K, listener: (this: WebSocket, ev: WebSocketEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var WebSocket: {
+ prototype: WebSocket;
+ new(url: string | URL, protocols?: string | string[]): WebSocket;
+ readonly CONNECTING: 0;
+ readonly OPEN: 1;
+ readonly CLOSING: 2;
+ readonly CLOSED: 3;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport)
+ */
+interface WebTransport {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/closed) */
+ readonly closed: Promise<WebTransportCloseInfo>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/datagrams) */
+ readonly datagrams: WebTransportDatagramDuplexStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingBidirectionalStreams) */
+ readonly incomingBidirectionalStreams: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/incomingUnidirectionalStreams) */
+ readonly incomingUnidirectionalStreams: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/ready) */
+ readonly ready: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/close) */
+ close(closeInfo?: WebTransportCloseInfo): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createBidirectionalStream) */
+ createBidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WebTransportBidirectionalStream>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransport/createUnidirectionalStream) */
+ createUnidirectionalStream(options?: WebTransportSendStreamOptions): Promise<WritableStream>;
+}
+
+declare var WebTransport: {
+ prototype: WebTransport;
+ new(url: string | URL, options?: WebTransportOptions): WebTransport;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream)
+ */
+interface WebTransportBidirectionalStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/readable) */
+ readonly readable: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportBidirectionalStream/writable) */
+ readonly writable: WritableStream;
+}
+
+declare var WebTransportBidirectionalStream: {
+ prototype: WebTransportBidirectionalStream;
+ new(): WebTransportBidirectionalStream;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream)
+ */
+interface WebTransportDatagramDuplexStream {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingHighWaterMark) */
+ incomingHighWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/incomingMaxAge) */
+ incomingMaxAge: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/maxDatagramSize) */
+ readonly maxDatagramSize: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingHighWaterMark) */
+ outgoingHighWaterMark: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/outgoingMaxAge) */
+ outgoingMaxAge: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/readable) */
+ readonly readable: ReadableStream;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportDatagramDuplexStream/writable) */
+ readonly writable: WritableStream;
+}
+
+declare var WebTransportDatagramDuplexStream: {
+ prototype: WebTransportDatagramDuplexStream;
+ new(): WebTransportDatagramDuplexStream;
+};
+
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError)
+ */
+interface WebTransportError extends DOMException {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/source) */
+ readonly source: WebTransportErrorSource;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebTransportError/streamErrorCode) */
+ readonly streamErrorCode: number | null;
+}
+
+declare var WebTransportError: {
+ prototype: WebTransportError;
+ new(message?: string, options?: WebTransportErrorOptions): WebTransportError;
+};
+
+/**
+ * This ServiceWorker API interface represents the scope of a service worker client that is a document in a browser context, controlled by an active worker. The service worker client independently selects and uses a service worker for its own loading and sub-resources.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient)
+ */
+interface WindowClient extends Client {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/focused) */
+ readonly focused: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/visibilityState) */
+ readonly visibilityState: DocumentVisibilityState;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/focus) */
+ focus(): Promise<WindowClient>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WindowClient/navigate) */
+ navigate(url: string | URL): Promise<WindowClient | null>;
+}
+
+declare var WindowClient: {
+ prototype: WindowClient;
+ new(): WindowClient;
+};
+
+interface WindowOrWorkerGlobalScope {
+ /**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/caches)
+ */
+ readonly caches: CacheStorage;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crossOriginIsolated) */
+ readonly crossOriginIsolated: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crypto_property) */
+ readonly crypto: Crypto;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/indexedDB) */
+ readonly indexedDB: IDBFactory;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/isSecureContext) */
+ readonly isSecureContext: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/origin) */
+ readonly origin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/performance_property) */
+ readonly performance: Performance;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/atob) */
+ atob(data: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/btoa) */
+ btoa(data: string): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearInterval) */
+ clearInterval(id: number | undefined): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearTimeout) */
+ clearTimeout(id: number | undefined): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/createImageBitmap) */
+ createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+ createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/fetch) */
+ fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/queueMicrotask) */
+ queueMicrotask(callback: VoidFunction): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/reportError) */
+ reportError(e: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setInterval) */
+ setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setTimeout) */
+ setTimeout(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/structuredClone) */
+ structuredClone<T = any>(value: T, options?: StructuredSerializeOptions): T;
+}
+
+interface WorkerEventMap extends AbstractWorkerEventMap {
+ "message": MessageEvent;
+ "messageerror": MessageEvent;
+}
+
+/**
+ * This Web Workers API interface represents a background task that can be easily created and can send messages back to its creator. Creating a worker is as simple as calling the Worker() constructor and specifying a script to be run in the worker thread.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker)
+ */
+interface Worker extends EventTarget, AbstractWorker {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/message_event) */
+ onmessage: ((this: Worker, ev: MessageEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/messageerror_event) */
+ onmessageerror: ((this: Worker, ev: MessageEvent) => any) | null;
+ /**
+ * Clones message and transmits it to worker's global environment. transfer can be passed as a list of objects that are to be transferred rather than cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/postMessage)
+ */
+ postMessage(message: any, transfer: Transferable[]): void;
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
+ /**
+ * Aborts worker's associated global environment.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/Worker/terminate)
+ */
+ terminate(): void;
+ addEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: Worker, ev: WorkerEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WorkerEventMap>(type: K, listener: (this: Worker, ev: WorkerEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var Worker: {
+ prototype: Worker;
+ new(scriptURL: string | URL, options?: WorkerOptions): Worker;
+};
+
+interface WorkerGlobalScopeEventMap {
+ "error": ErrorEvent;
+ "languagechange": Event;
+ "offline": Event;
+ "online": Event;
+ "rejectionhandled": PromiseRejectionEvent;
+ "unhandledrejection": PromiseRejectionEvent;
+}
+
+/**
+ * This Web Workers API interface is an interface representing the scope of any worker. Workers have no browsing context; this scope contains the information usually conveyed by Window objects — in this case event handlers, the console or the associated WorkerNavigator object. Each WorkerGlobalScope has its own event loop.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope)
+ */
+interface WorkerGlobalScope extends EventTarget, FontFaceSource, WindowOrWorkerGlobalScope {
+ /**
+ * Returns workerGlobal's WorkerLocation object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/location)
+ */
+ readonly location: WorkerLocation;
+ /**
+ * Returns workerGlobal's WorkerNavigator object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/navigator)
+ */
+ readonly navigator: WorkerNavigator;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/error_event) */
+ onerror: ((this: WorkerGlobalScope, ev: ErrorEvent) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/languagechange_event) */
+ onlanguagechange: ((this: WorkerGlobalScope, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/offline_event) */
+ onoffline: ((this: WorkerGlobalScope, ev: Event) => any) | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/online_event) */
+ ononline: ((this: WorkerGlobalScope, ev: Event) => any) | null;
+ onrejectionhandled: ((this: WorkerGlobalScope, ev: PromiseRejectionEvent) => any) | null;
+ onunhandledrejection: ((this: WorkerGlobalScope, ev: PromiseRejectionEvent) => any) | null;
+ /**
+ * Returns workerGlobal.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/self)
+ */
+ readonly self: WorkerGlobalScope & typeof globalThis;
+ /**
+ * Fetches each URL in urls, executes them one-by-one in the order they are passed, and then returns (or throws if something went amiss).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/importScripts)
+ */
+ importScripts(...urls: (string | URL)[]): void;
+ addEventListener<K extends keyof WorkerGlobalScopeEventMap>(type: K, listener: (this: WorkerGlobalScope, ev: WorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof WorkerGlobalScopeEventMap>(type: K, listener: (this: WorkerGlobalScope, ev: WorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var WorkerGlobalScope: {
+ prototype: WorkerGlobalScope;
+ new(): WorkerGlobalScope;
+};
+
+/**
+ * The absolute location of the script executed by the Worker. Such an object is initialized for each worker and is available via the WorkerGlobalScope.location property obtained by calling self.location.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation)
+ */
+interface WorkerLocation {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/hash) */
+ readonly hash: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/host) */
+ readonly host: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/hostname) */
+ readonly hostname: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/href) */
+ readonly href: string;
+ toString(): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/origin) */
+ readonly origin: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/pathname) */
+ readonly pathname: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/port) */
+ readonly port: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/protocol) */
+ readonly protocol: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerLocation/search) */
+ readonly search: string;
+}
+
+declare var WorkerLocation: {
+ prototype: WorkerLocation;
+ new(): WorkerLocation;
+};
+
+/**
+ * A subset of the Navigator interface allowed to be accessed from a Worker. Such an object is initialized for each worker and is available via the WorkerGlobalScope.navigator property obtained by calling window.self.navigator.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerNavigator)
+ */
+interface WorkerNavigator extends NavigatorBadge, NavigatorConcurrentHardware, NavigatorID, NavigatorLanguage, NavigatorLocks, NavigatorOnLine, NavigatorStorage {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerNavigator/mediaCapabilities) */
+ readonly mediaCapabilities: MediaCapabilities;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerNavigator/permissions) */
+ readonly permissions: Permissions;
+}
+
+declare var WorkerNavigator: {
+ prototype: WorkerNavigator;
+ new(): WorkerNavigator;
+};
+
+/**
+ * This Streams API interface provides a standard abstraction for writing streaming data to a destination, known as a sink. This object comes with built-in backpressure and queuing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream)
+ */
+interface WritableStream<W = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/locked) */
+ readonly locked: boolean;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/abort) */
+ abort(reason?: any): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/close) */
+ close(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStream/getWriter) */
+ getWriter(): WritableStreamDefaultWriter<W>;
+}
+
+declare var WritableStream: {
+ prototype: WritableStream;
+ new<W = any>(underlyingSink?: UnderlyingSink<W>, strategy?: QueuingStrategy<W>): WritableStream<W>;
+};
+
+/**
+ * This Streams API interface represents a controller allowing control of a WritableStream's state. When constructing a WritableStream, the underlying sink is given a corresponding WritableStreamDefaultController instance to manipulate.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController)
+ */
+interface WritableStreamDefaultController {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/signal) */
+ readonly signal: AbortSignal;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultController/error) */
+ error(e?: any): void;
+}
+
+declare var WritableStreamDefaultController: {
+ prototype: WritableStreamDefaultController;
+ new(): WritableStreamDefaultController;
+};
+
+/**
+ * This Streams API interface is the object returned by WritableStream.getWriter() and once created locks the < writer to the WritableStream ensuring that no other streams can write to the underlying sink.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter)
+ */
+interface WritableStreamDefaultWriter<W = any> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/closed) */
+ readonly closed: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/desiredSize) */
+ readonly desiredSize: number | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/ready) */
+ readonly ready: Promise<undefined>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/abort) */
+ abort(reason?: any): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/close) */
+ close(): Promise<void>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/releaseLock) */
+ releaseLock(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WritableStreamDefaultWriter/write) */
+ write(chunk?: W): Promise<void>;
+}
+
+declare var WritableStreamDefaultWriter: {
+ prototype: WritableStreamDefaultWriter;
+ new<W = any>(stream: WritableStream<W>): WritableStreamDefaultWriter<W>;
+};
+
+interface XMLHttpRequestEventMap extends XMLHttpRequestEventTargetEventMap {
+ "readystatechange": Event;
+}
+
+/**
+ * Use XMLHttpRequest (XHR) objects to interact with servers. You can retrieve data from a URL without having to do a full page refresh. This enables a Web page to update just part of a page without disrupting what the user is doing.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest)
+ */
+interface XMLHttpRequest extends XMLHttpRequestEventTarget {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/readystatechange_event) */
+ onreadystatechange: ((this: XMLHttpRequest, ev: Event) => any) | null;
+ /**
+ * Returns client's state.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/readyState)
+ */
+ readonly readyState: number;
+ /**
+ * Returns the response body.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/response)
+ */
+ readonly response: any;
+ /**
+ * Returns response as text.
+ *
+ * Throws an "InvalidStateError" DOMException if responseType is not the empty string or "text".
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseText)
+ */
+ readonly responseText: string;
+ /**
+ * Returns the response type.
+ *
+ * Can be set to change the response type. Values are: the empty string (default), "arraybuffer", "blob", "document", "json", and "text".
+ *
+ * When set: setting to "document" is ignored if current global object is not a Window object.
+ *
+ * When set: throws an "InvalidStateError" DOMException if state is loading or done.
+ *
+ * When set: throws an "InvalidAccessError" DOMException if the synchronous flag is set and current global object is a Window object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseType)
+ */
+ responseType: XMLHttpRequestResponseType;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/responseURL) */
+ readonly responseURL: string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/status) */
+ readonly status: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/statusText) */
+ readonly statusText: string;
+ /**
+ * Can be set to a time in milliseconds. When set to a non-zero value will cause fetching to terminate after the given time has passed. When the time has passed, the request has not yet completed, and this's synchronous flag is unset, a timeout event will then be dispatched, or a "TimeoutError" DOMException will be thrown otherwise (for the send() method).
+ *
+ * When set: throws an "InvalidAccessError" DOMException if the synchronous flag is set and current global object is a Window object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/timeout)
+ */
+ timeout: number;
+ /**
+ * Returns the associated XMLHttpRequestUpload object. It can be used to gather transmission information when data is transferred to a server.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/upload)
+ */
+ readonly upload: XMLHttpRequestUpload;
+ /**
+ * True when credentials are to be included in a cross-origin request. False when they are to be excluded in a cross-origin request and when cookies are to be ignored in its response. Initially false.
+ *
+ * When set: throws an "InvalidStateError" DOMException if state is not unsent or opened, or if the send() flag is set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/withCredentials)
+ */
+ withCredentials: boolean;
+ /**
+ * Cancels any network activity.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/abort)
+ */
+ abort(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/getAllResponseHeaders) */
+ getAllResponseHeaders(): string;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/getResponseHeader) */
+ getResponseHeader(name: string): string | null;
+ /**
+ * Sets the request method, request URL, and synchronous flag.
+ *
+ * Throws a "SyntaxError" DOMException if either method is not a valid method or url cannot be parsed.
+ *
+ * Throws a "SecurityError" DOMException if method is a case-insensitive match for \`CONNECT\`, \`TRACE\`, or \`TRACK\`.
+ *
+ * Throws an "InvalidAccessError" DOMException if async is false, current global object is a Window object, and the timeout attribute is not zero or the responseType attribute is not the empty string.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/open)
+ */
+ open(method: string, url: string | URL): void;
+ open(method: string, url: string | URL, async: boolean, username?: string | null, password?: string | null): void;
+ /**
+ * Acts as if the \`Content-Type\` header value for a response is mime. (It does not change the header.)
+ *
+ * Throws an "InvalidStateError" DOMException if state is loading or done.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/overrideMimeType)
+ */
+ overrideMimeType(mime: string): void;
+ /**
+ * Initiates the request. The body argument provides the request body, if any, and is ignored if the request method is GET or HEAD.
+ *
+ * Throws an "InvalidStateError" DOMException if either state is not opened or the send() flag is set.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/send)
+ */
+ send(body?: XMLHttpRequestBodyInit | null): void;
+ /**
+ * Combines a header in author request headers.
+ *
+ * Throws an "InvalidStateError" DOMException if either state is not opened or the send() flag is set.
+ *
+ * Throws a "SyntaxError" DOMException if name is not a header name or if value is not a header value.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequest/setRequestHeader)
+ */
+ setRequestHeader(name: string, value: string): void;
+ readonly UNSENT: 0;
+ readonly OPENED: 1;
+ readonly HEADERS_RECEIVED: 2;
+ readonly LOADING: 3;
+ readonly DONE: 4;
+ addEventListener<K extends keyof XMLHttpRequestEventMap>(type: K, listener: (this: XMLHttpRequest, ev: XMLHttpRequestEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof XMLHttpRequestEventMap>(type: K, listener: (this: XMLHttpRequest, ev: XMLHttpRequestEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var XMLHttpRequest: {
+ prototype: XMLHttpRequest;
+ new(): XMLHttpRequest;
+ readonly UNSENT: 0;
+ readonly OPENED: 1;
+ readonly HEADERS_RECEIVED: 2;
+ readonly LOADING: 3;
+ readonly DONE: 4;
+};
+
+interface XMLHttpRequestEventTargetEventMap {
+ "abort": ProgressEvent<XMLHttpRequestEventTarget>;
+ "error": ProgressEvent<XMLHttpRequestEventTarget>;
+ "load": ProgressEvent<XMLHttpRequestEventTarget>;
+ "loadend": ProgressEvent<XMLHttpRequestEventTarget>;
+ "loadstart": ProgressEvent<XMLHttpRequestEventTarget>;
+ "progress": ProgressEvent<XMLHttpRequestEventTarget>;
+ "timeout": ProgressEvent<XMLHttpRequestEventTarget>;
+}
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequestEventTarget) */
+interface XMLHttpRequestEventTarget extends EventTarget {
+ onabort: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onerror: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onload: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onloadend: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onloadstart: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ onprogress: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ ontimeout: ((this: XMLHttpRequest, ev: ProgressEvent) => any) | null;
+ addEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestEventTarget, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var XMLHttpRequestEventTarget: {
+ prototype: XMLHttpRequestEventTarget;
+ new(): XMLHttpRequestEventTarget;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/XMLHttpRequestUpload) */
+interface XMLHttpRequestUpload extends XMLHttpRequestEventTarget {
+ addEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestUpload, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+ removeEventListener<K extends keyof XMLHttpRequestEventTargetEventMap>(type: K, listener: (this: XMLHttpRequestUpload, ev: XMLHttpRequestEventTargetEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+}
+
+declare var XMLHttpRequestUpload: {
+ prototype: XMLHttpRequestUpload;
+ new(): XMLHttpRequestUpload;
+};
+
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console) */
+interface Console {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/assert_static) */
+ assert(condition?: boolean, ...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/clear_static) */
+ clear(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/count_static) */
+ count(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/countReset_static) */
+ countReset(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/debug_static) */
+ debug(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dir_static) */
+ dir(item?: any, options?: any): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/dirxml_static) */
+ dirxml(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/error_static) */
+ error(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/group_static) */
+ group(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupCollapsed_static) */
+ groupCollapsed(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/groupEnd_static) */
+ groupEnd(): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/info_static) */
+ info(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/log_static) */
+ log(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/table_static) */
+ table(tabularData?: any, properties?: string[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/time_static) */
+ time(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeEnd_static) */
+ timeEnd(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/timeLog_static) */
+ timeLog(label?: string, ...data: any[]): void;
+ timeStamp(label?: string): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/trace_static) */
+ trace(...data: any[]): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/console/warn_static) */
+ warn(...data: any[]): void;
+}
+
+declare var console: Console;
+
+declare namespace WebAssembly {
+ interface CompileError extends Error {
+ }
+
+ var CompileError: {
+ prototype: CompileError;
+ new(message?: string): CompileError;
+ (message?: string): CompileError;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Global) */
+ interface Global<T extends ValueType = ValueType> {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Global/value) */
+ value: ValueTypeMap[T];
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Global/valueOf) */
+ valueOf(): ValueTypeMap[T];
+ }
+
+ var Global: {
+ prototype: Global;
+ new<T extends ValueType = ValueType>(descriptor: GlobalDescriptor<T>, v?: ValueTypeMap[T]): Global<T>;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Instance) */
+ interface Instance {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Instance/exports) */
+ readonly exports: Exports;
+ }
+
+ var Instance: {
+ prototype: Instance;
+ new(module: Module, importObject?: Imports): Instance;
+ };
+
+ interface LinkError extends Error {
+ }
+
+ var LinkError: {
+ prototype: LinkError;
+ new(message?: string): LinkError;
+ (message?: string): LinkError;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Memory) */
+ interface Memory {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Memory/buffer) */
+ readonly buffer: ArrayBuffer;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Memory/grow) */
+ grow(delta: number): number;
+ }
+
+ var Memory: {
+ prototype: Memory;
+ new(descriptor: MemoryDescriptor): Memory;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module) */
+ interface Module {
+ }
+
+ var Module: {
+ prototype: Module;
+ new(bytes: BufferSource): Module;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module/customSections_static) */
+ customSections(moduleObject: Module, sectionName: string): ArrayBuffer[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module/exports_static) */
+ exports(moduleObject: Module): ModuleExportDescriptor[];
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Module/imports_static) */
+ imports(moduleObject: Module): ModuleImportDescriptor[];
+ };
+
+ interface RuntimeError extends Error {
+ }
+
+ var RuntimeError: {
+ prototype: RuntimeError;
+ new(message?: string): RuntimeError;
+ (message?: string): RuntimeError;
+ };
+
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table) */
+ interface Table {
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/length) */
+ readonly length: number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/get) */
+ get(index: number): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/grow) */
+ grow(delta: number, value?: any): number;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/Table/set) */
+ set(index: number, value?: any): void;
+ }
+
+ var Table: {
+ prototype: Table;
+ new(descriptor: TableDescriptor, value?: any): Table;
+ };
+
+ interface GlobalDescriptor<T extends ValueType = ValueType> {
+ mutable?: boolean;
+ value: T;
+ }
+
+ interface MemoryDescriptor {
+ initial: number;
+ maximum?: number;
+ shared?: boolean;
+ }
+
+ interface ModuleExportDescriptor {
+ kind: ImportExportKind;
+ name: string;
+ }
+
+ interface ModuleImportDescriptor {
+ kind: ImportExportKind;
+ module: string;
+ name: string;
+ }
+
+ interface TableDescriptor {
+ element: TableKind;
+ initial: number;
+ maximum?: number;
+ }
+
+ interface ValueTypeMap {
+ anyfunc: Function;
+ externref: any;
+ f32: number;
+ f64: number;
+ i32: number;
+ i64: bigint;
+ v128: never;
+ }
+
+ interface WebAssemblyInstantiatedSource {
+ instance: Instance;
+ module: Module;
+ }
+
+ type ImportExportKind = "function" | "global" | "memory" | "table";
+ type TableKind = "anyfunc" | "externref";
+ type ExportValue = Function | Global | Memory | Table;
+ type Exports = Record<string, ExportValue>;
+ type ImportValue = ExportValue | number;
+ type Imports = Record<string, ModuleImports>;
+ type ModuleImports = Record<string, ImportValue>;
+ type ValueType = keyof ValueTypeMap;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/compile_static) */
+ function compile(bytes: BufferSource): Promise<Module>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/compileStreaming_static) */
+ function compileStreaming(source: Response | PromiseLike<Response>): Promise<Module>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/instantiate_static) */
+ function instantiate(bytes: BufferSource, importObject?: Imports): Promise<WebAssemblyInstantiatedSource>;
+ function instantiate(moduleObject: Module, importObject?: Imports): Promise<Instance>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/instantiateStreaming_static) */
+ function instantiateStreaming(source: Response | PromiseLike<Response>, importObject?: Imports): Promise<WebAssemblyInstantiatedSource>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/WebAssembly/JavaScript_interface/validate_static) */
+ function validate(bytes: BufferSource): boolean;
+}
+
+interface EncodedVideoChunkOutputCallback {
+ (chunk: EncodedVideoChunk, metadata?: EncodedVideoChunkMetadata): void;
+}
+
+interface FrameRequestCallback {
+ (time: DOMHighResTimeStamp): void;
+}
+
+interface LockGrantedCallback {
+ (lock: Lock | null): any;
+}
+
+interface OnErrorEventHandlerNonNull {
+ (event: Event | string, source?: string, lineno?: number, colno?: number, error?: Error): any;
+}
+
+interface PerformanceObserverCallback {
+ (entries: PerformanceObserverEntryList, observer: PerformanceObserver): void;
+}
+
+interface QueuingStrategySize<T = any> {
+ (chunk: T): number;
+}
+
+interface ReportingObserverCallback {
+ (reports: Report[], observer: ReportingObserver): void;
+}
+
+interface TransformerFlushCallback<O> {
+ (controller: TransformStreamDefaultController<O>): void | PromiseLike<void>;
+}
+
+interface TransformerStartCallback<O> {
+ (controller: TransformStreamDefaultController<O>): any;
+}
+
+interface TransformerTransformCallback<I, O> {
+ (chunk: I, controller: TransformStreamDefaultController<O>): void | PromiseLike<void>;
+}
+
+interface UnderlyingSinkAbortCallback {
+ (reason?: any): void | PromiseLike<void>;
+}
+
+interface UnderlyingSinkCloseCallback {
+ (): void | PromiseLike<void>;
+}
+
+interface UnderlyingSinkStartCallback {
+ (controller: WritableStreamDefaultController): any;
+}
+
+interface UnderlyingSinkWriteCallback<W> {
+ (chunk: W, controller: WritableStreamDefaultController): void | PromiseLike<void>;
+}
+
+interface UnderlyingSourceCancelCallback {
+ (reason?: any): void | PromiseLike<void>;
+}
+
+interface UnderlyingSourcePullCallback<R> {
+ (controller: ReadableStreamController<R>): void | PromiseLike<void>;
+}
+
+interface UnderlyingSourceStartCallback<R> {
+ (controller: ReadableStreamController<R>): any;
+}
+
+interface VideoFrameOutputCallback {
+ (output: VideoFrame): void;
+}
+
+interface VoidFunction {
+ (): void;
+}
+
+interface WebCodecsErrorCallback {
+ (error: DOMException): void;
+}
+
+/**
+ * Returns dedicatedWorkerGlobal's name, i.e. the value given to the Worker constructor. Primarily useful for debugging.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/name)
+ */
+declare var name: string;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/message_event) */
+declare var onmessage: ((this: DedicatedWorkerGlobalScope, ev: MessageEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/messageerror_event) */
+declare var onmessageerror: ((this: DedicatedWorkerGlobalScope, ev: MessageEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/rtctransform_event) */
+declare var onrtctransform: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
+/**
+ * Aborts dedicatedWorkerGlobal.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/close)
+ */
+declare function close(): void;
+/**
+ * Clones message and transmits it to the Worker object associated with dedicatedWorkerGlobal. transfer can be passed as a list of objects that are to be transferred rather than cloned.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/postMessage)
+ */
+declare function postMessage(message: any, transfer: Transferable[]): void;
+declare function postMessage(message: any, options?: StructuredSerializeOptions): void;
+/**
+ * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent)
+ */
+declare function dispatchEvent(event: Event): boolean;
+/**
+ * Returns workerGlobal's WorkerLocation object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/location)
+ */
+declare var location: WorkerLocation;
+/**
+ * Returns workerGlobal's WorkerNavigator object.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/navigator)
+ */
+declare var navigator: WorkerNavigator;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/error_event) */
+declare var onerror: ((this: DedicatedWorkerGlobalScope, ev: ErrorEvent) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/languagechange_event) */
+declare var onlanguagechange: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/offline_event) */
+declare var onoffline: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/online_event) */
+declare var ononline: ((this: DedicatedWorkerGlobalScope, ev: Event) => any) | null;
+declare var onrejectionhandled: ((this: DedicatedWorkerGlobalScope, ev: PromiseRejectionEvent) => any) | null;
+declare var onunhandledrejection: ((this: DedicatedWorkerGlobalScope, ev: PromiseRejectionEvent) => any) | null;
+/**
+ * Returns workerGlobal.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/self)
+ */
+declare var self: WorkerGlobalScope & typeof globalThis;
+/**
+ * Fetches each URL in urls, executes them one-by-one in the order they are passed, and then returns (or throws if something went amiss).
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/WorkerGlobalScope/importScripts)
+ */
+declare function importScripts(...urls: (string | URL)[]): void;
+/**
+ * Dispatches a synthetic event event to target and returns true if either event's cancelable attribute value is false or its preventDefault() method was not invoked, and false otherwise.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/EventTarget/dispatchEvent)
+ */
+declare function dispatchEvent(event: Event): boolean;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Document/fonts) */
+declare var fonts: FontFaceSet;
+/**
+ * Available only in secure contexts.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/caches)
+ */
+declare var caches: CacheStorage;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crossOriginIsolated) */
+declare var crossOriginIsolated: boolean;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/crypto_property) */
+declare var crypto: Crypto;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/indexedDB) */
+declare var indexedDB: IDBFactory;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/isSecureContext) */
+declare var isSecureContext: boolean;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/origin) */
+declare var origin: string;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/performance_property) */
+declare var performance: Performance;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/atob) */
+declare function atob(data: string): string;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/btoa) */
+declare function btoa(data: string): string;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearInterval) */
+declare function clearInterval(id: number | undefined): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/clearTimeout) */
+declare function clearTimeout(id: number | undefined): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/createImageBitmap) */
+declare function createImageBitmap(image: ImageBitmapSource, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+declare function createImageBitmap(image: ImageBitmapSource, sx: number, sy: number, sw: number, sh: number, options?: ImageBitmapOptions): Promise<ImageBitmap>;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/fetch) */
+declare function fetch(input: RequestInfo | URL, init?: RequestInit): Promise<Response>;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/queueMicrotask) */
+declare function queueMicrotask(callback: VoidFunction): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/reportError) */
+declare function reportError(e: any): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setInterval) */
+declare function setInterval(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/setTimeout) */
+declare function setTimeout(handler: TimerHandler, timeout?: number, ...arguments: any[]): number;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/structuredClone) */
+declare function structuredClone<T = any>(value: T, options?: StructuredSerializeOptions): T;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/cancelAnimationFrame) */
+declare function cancelAnimationFrame(handle: number): void;
+/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/DedicatedWorkerGlobalScope/requestAnimationFrame) */
+declare function requestAnimationFrame(callback: FrameRequestCallback): number;
+declare function addEventListener<K extends keyof DedicatedWorkerGlobalScopeEventMap>(type: K, listener: (this: DedicatedWorkerGlobalScope, ev: DedicatedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
+declare function addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
+declare function removeEventListener<K extends keyof DedicatedWorkerGlobalScopeEventMap>(type: K, listener: (this: DedicatedWorkerGlobalScope, ev: DedicatedWorkerGlobalScopeEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
+declare function removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
+type AlgorithmIdentifier = Algorithm | string;
+type AllowSharedBufferSource = ArrayBuffer | ArrayBufferView;
+type BigInteger = Uint8Array;
+type BinaryData = ArrayBuffer | ArrayBufferView;
+type BlobPart = BufferSource | Blob | string;
+type BodyInit = ReadableStream | XMLHttpRequestBodyInit;
+type BufferSource = ArrayBufferView | ArrayBuffer;
+type CSSKeywordish = string | CSSKeywordValue;
+type CSSNumberish = number | CSSNumericValue;
+type CSSPerspectiveValue = CSSNumericValue | CSSKeywordish;
+type CSSUnparsedSegment = string | CSSVariableReferenceValue;
+type CanvasImageSource = ImageBitmap | OffscreenCanvas | VideoFrame;
+type DOMHighResTimeStamp = number;
+type EpochTimeStamp = number;
+type EventListenerOrEventListenerObject = EventListener | EventListenerObject;
+type FileSystemWriteChunkType = BufferSource | Blob | string | WriteParams;
+type Float32List = Float32Array | GLfloat[];
+type FormDataEntryValue = File | string;
+type GLbitfield = number;
+type GLboolean = boolean;
+type GLclampf = number;
+type GLenum = number;
+type GLfloat = number;
+type GLint = number;
+type GLint64 = number;
+type GLintptr = number;
+type GLsizei = number;
+type GLsizeiptr = number;
+type GLuint = number;
+type GLuint64 = number;
+type HashAlgorithmIdentifier = AlgorithmIdentifier;
+type HeadersInit = [string, string][] | Record<string, string> | Headers;
+type IDBValidKey = number | string | Date | BufferSource | IDBValidKey[];
+type ImageBitmapSource = CanvasImageSource | Blob | ImageData;
+type Int32List = Int32Array | GLint[];
+type MessageEventSource = MessagePort | ServiceWorker;
+type NamedCurve = string;
+type OffscreenRenderingContext = OffscreenCanvasRenderingContext2D | ImageBitmapRenderingContext | WebGLRenderingContext | WebGL2RenderingContext;
+type OnErrorEventHandler = OnErrorEventHandlerNonNull | null;
+type PerformanceEntryList = PerformanceEntry[];
+type PushMessageDataInit = BufferSource | string;
+type ReadableStreamController<T> = ReadableStreamDefaultController<T> | ReadableByteStreamController;
+type ReadableStreamReadResult<T> = ReadableStreamReadValueResult<T> | ReadableStreamReadDoneResult<T>;
+type ReadableStreamReader<T> = ReadableStreamDefaultReader<T> | ReadableStreamBYOBReader;
+type ReportList = Report[];
+type RequestInfo = Request | string;
+type TexImageSource = ImageBitmap | ImageData | OffscreenCanvas | VideoFrame;
+type TimerHandler = string | Function;
+type Transferable = OffscreenCanvas | ImageBitmap | MessagePort | ReadableStream | WritableStream | TransformStream | VideoFrame | ArrayBuffer;
+type Uint32List = Uint32Array | GLuint[];
+type XMLHttpRequestBodyInit = Blob | BufferSource | FormData | URLSearchParams | string;
+type AlphaOption = "discard" | "keep";
+type AvcBitstreamFormat = "annexb" | "avc";
+type BinaryType = "arraybuffer" | "blob";
+type CSSMathOperator = "clamp" | "invert" | "max" | "min" | "negate" | "product" | "sum";
+type CSSNumericBaseType = "angle" | "flex" | "frequency" | "length" | "percent" | "resolution" | "time";
+type CanvasDirection = "inherit" | "ltr" | "rtl";
+type CanvasFillRule = "evenodd" | "nonzero";
+type CanvasFontKerning = "auto" | "none" | "normal";
+type CanvasFontStretch = "condensed" | "expanded" | "extra-condensed" | "extra-expanded" | "normal" | "semi-condensed" | "semi-expanded" | "ultra-condensed" | "ultra-expanded";
+type CanvasFontVariantCaps = "all-petite-caps" | "all-small-caps" | "normal" | "petite-caps" | "small-caps" | "titling-caps" | "unicase";
+type CanvasLineCap = "butt" | "round" | "square";
+type CanvasLineJoin = "bevel" | "miter" | "round";
+type CanvasTextAlign = "center" | "end" | "left" | "right" | "start";
+type CanvasTextBaseline = "alphabetic" | "bottom" | "hanging" | "ideographic" | "middle" | "top";
+type CanvasTextRendering = "auto" | "geometricPrecision" | "optimizeLegibility" | "optimizeSpeed";
+type ClientTypes = "all" | "sharedworker" | "window" | "worker";
+type CodecState = "closed" | "configured" | "unconfigured";
+type ColorGamut = "p3" | "rec2020" | "srgb";
+type ColorSpaceConversion = "default" | "none";
+type CompressionFormat = "deflate" | "deflate-raw" | "gzip";
+type DocumentVisibilityState = "hidden" | "visible";
+type EncodedVideoChunkType = "delta" | "key";
+type EndingType = "native" | "transparent";
+type FileSystemHandleKind = "directory" | "file";
+type FontDisplay = "auto" | "block" | "fallback" | "optional" | "swap";
+type FontFaceLoadStatus = "error" | "loaded" | "loading" | "unloaded";
+type FontFaceSetLoadStatus = "loaded" | "loading";
+type FrameType = "auxiliary" | "nested" | "none" | "top-level";
+type GlobalCompositeOperation = "color" | "color-burn" | "color-dodge" | "copy" | "darken" | "destination-atop" | "destination-in" | "destination-out" | "destination-over" | "difference" | "exclusion" | "hard-light" | "hue" | "lighten" | "lighter" | "luminosity" | "multiply" | "overlay" | "saturation" | "screen" | "soft-light" | "source-atop" | "source-in" | "source-out" | "source-over" | "xor";
+type HardwareAcceleration = "no-preference" | "prefer-hardware" | "prefer-software";
+type HdrMetadataType = "smpteSt2086" | "smpteSt2094-10" | "smpteSt2094-40";
+type IDBCursorDirection = "next" | "nextunique" | "prev" | "prevunique";
+type IDBRequestReadyState = "done" | "pending";
+type IDBTransactionDurability = "default" | "relaxed" | "strict";
+type IDBTransactionMode = "readonly" | "readwrite" | "versionchange";
+type ImageOrientation = "flipY" | "from-image" | "none";
+type ImageSmoothingQuality = "high" | "low" | "medium";
+type KeyFormat = "jwk" | "pkcs8" | "raw" | "spki";
+type KeyType = "private" | "public" | "secret";
+type KeyUsage = "decrypt" | "deriveBits" | "deriveKey" | "encrypt" | "sign" | "unwrapKey" | "verify" | "wrapKey";
+type LatencyMode = "quality" | "realtime";
+type LockMode = "exclusive" | "shared";
+type MediaDecodingType = "file" | "media-source" | "webrtc";
+type MediaEncodingType = "record" | "webrtc";
+type NotificationDirection = "auto" | "ltr" | "rtl";
+type NotificationPermission = "default" | "denied" | "granted";
+type OffscreenRenderingContextId = "2d" | "bitmaprenderer" | "webgl" | "webgl2" | "webgpu";
+type PermissionName = "geolocation" | "notifications" | "persistent-storage" | "push" | "screen-wake-lock" | "xr-spatial-tracking";
+type PermissionState = "denied" | "granted" | "prompt";
+type PredefinedColorSpace = "display-p3" | "srgb";
+type PremultiplyAlpha = "default" | "none" | "premultiply";
+type PushEncryptionKeyName = "auth" | "p256dh";
+type RTCEncodedVideoFrameType = "delta" | "empty" | "key";
+type ReadableStreamReaderMode = "byob";
+type ReadableStreamType = "bytes";
+type ReferrerPolicy = "" | "no-referrer" | "no-referrer-when-downgrade" | "origin" | "origin-when-cross-origin" | "same-origin" | "strict-origin" | "strict-origin-when-cross-origin" | "unsafe-url";
+type RequestCache = "default" | "force-cache" | "no-cache" | "no-store" | "only-if-cached" | "reload";
+type RequestCredentials = "include" | "omit" | "same-origin";
+type RequestDestination = "" | "audio" | "audioworklet" | "document" | "embed" | "font" | "frame" | "iframe" | "image" | "manifest" | "object" | "paintworklet" | "report" | "script" | "sharedworker" | "style" | "track" | "video" | "worker" | "xslt";
+type RequestMode = "cors" | "navigate" | "no-cors" | "same-origin";
+type RequestPriority = "auto" | "high" | "low";
+type RequestRedirect = "error" | "follow" | "manual";
+type ResizeQuality = "high" | "low" | "medium" | "pixelated";
+type ResponseType = "basic" | "cors" | "default" | "error" | "opaque" | "opaqueredirect";
+type SecurityPolicyViolationEventDisposition = "enforce" | "report";
+type ServiceWorkerState = "activated" | "activating" | "installed" | "installing" | "parsed" | "redundant";
+type ServiceWorkerUpdateViaCache = "all" | "imports" | "none";
+type TransferFunction = "hlg" | "pq" | "srgb";
+type VideoColorPrimaries = "bt470bg" | "bt709" | "smpte170m";
+type VideoEncoderBitrateMode = "constant" | "quantizer" | "variable";
+type VideoMatrixCoefficients = "bt470bg" | "bt709" | "rgb" | "smpte170m";
+type VideoPixelFormat = "BGRA" | "BGRX" | "I420" | "I420A" | "I422" | "I444" | "NV12" | "RGBA" | "RGBX";
+type VideoTransferCharacteristics = "bt709" | "iec61966-2-1" | "smpte170m";
+type WebGLPowerPreference = "default" | "high-performance" | "low-power";
+type WebTransportCongestionControl = "default" | "low-latency" | "throughput";
+type WebTransportErrorSource = "session" | "stream";
+type WorkerType = "classic" | "module";
+type WriteCommandType = "seek" | "truncate" | "write";
+type XMLHttpRequestResponseType = "" | "arraybuffer" | "blob" | "document" | "json" | "text";
+`,lo["lib.webworker.importscripts.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// WorkerGlobalScope APIs
+/////////////////////////////
+// These are only available in a Web Worker
+declare function importScripts(...urls: string[]): void;
+`,lo["lib.webworker.iterable.d.ts"]=`/*! *****************************************************************************
+Copyright (c) Microsoft Corporation. All rights reserved.
+Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+this file except in compliance with the License. You may obtain a copy of the
+License at http://www.apache.org/licenses/LICENSE-2.0
+
+THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+MERCHANTABLITY OR NON-INFRINGEMENT.
+
+See the Apache Version 2.0 License for specific language governing permissions
+and limitations under the License.
+***************************************************************************** */
+
+
+/// <reference no-default-lib="true"/>
+
+/////////////////////////////
+/// Worker Iterable APIs
+/////////////////////////////
+
+interface CSSNumericArray {
+ [Symbol.iterator](): IterableIterator<CSSNumericValue>;
+ entries(): IterableIterator<[number, CSSNumericValue]>;
+ keys(): IterableIterator<number>;
+ values(): IterableIterator<CSSNumericValue>;
+}
+
+interface CSSTransformValue {
+ [Symbol.iterator](): IterableIterator<CSSTransformComponent>;
+ entries(): IterableIterator<[number, CSSTransformComponent]>;
+ keys(): IterableIterator<number>;
+ values(): IterableIterator<CSSTransformComponent>;
+}
+
+interface CSSUnparsedValue {
+ [Symbol.iterator](): IterableIterator<CSSUnparsedSegment>;
+ entries(): IterableIterator<[number, CSSUnparsedSegment]>;
+ keys(): IterableIterator<number>;
+ values(): IterableIterator<CSSUnparsedSegment>;
+}
+
+interface Cache {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/Cache/addAll) */
+ addAll(requests: Iterable<RequestInfo>): Promise<void>;
+}
+
+interface CanvasPath {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/roundRect) */
+ roundRect(x: number, y: number, w: number, h: number, radii?: number | DOMPointInit | Iterable<number | DOMPointInit>): void;
+}
+
+interface CanvasPathDrawingStyles {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/CanvasRenderingContext2D/setLineDash) */
+ setLineDash(segments: Iterable<number>): void;
+}
+
+interface DOMStringList {
+ [Symbol.iterator](): IterableIterator<string>;
+}
+
+interface FileList {
+ [Symbol.iterator](): IterableIterator<File>;
+}
+
+interface FontFaceSet extends Set<FontFace> {
+}
+
+interface FormData {
+ [Symbol.iterator](): IterableIterator<[string, FormDataEntryValue]>;
+ /** Returns an array of key, value pairs for every entry in the list. */
+ entries(): IterableIterator<[string, FormDataEntryValue]>;
+ /** Returns a list of keys in the list. */
+ keys(): IterableIterator<string>;
+ /** Returns a list of values in the list. */
+ values(): IterableIterator<FormDataEntryValue>;
+}
+
+interface Headers {
+ [Symbol.iterator](): IterableIterator<[string, string]>;
+ /** Returns an iterator allowing to go through all key/value pairs contained in this object. */
+ entries(): IterableIterator<[string, string]>;
+ /** Returns an iterator allowing to go through all keys of the key/value pairs contained in this object. */
+ keys(): IterableIterator<string>;
+ /** Returns an iterator allowing to go through all values of the key/value pairs contained in this object. */
+ values(): IterableIterator<string>;
+}
+
+interface IDBDatabase {
+ /**
+ * Returns a new transaction with the given mode ("readonly" or "readwrite") and scope which can be a single object store name or an array of names.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBDatabase/transaction)
+ */
+ transaction(storeNames: string | Iterable<string>, mode?: IDBTransactionMode, options?: IDBTransactionOptions): IDBTransaction;
+}
+
+interface IDBObjectStore {
+ /**
+ * Creates a new index in store with the given name, keyPath and options and returns a new IDBIndex. If the keyPath and options define constraints that cannot be satisfied with the data already in store the upgrade transaction will abort with a "ConstraintError" DOMException.
+ *
+ * Throws an "InvalidStateError" DOMException if not called within an upgrade transaction.
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/IDBObjectStore/createIndex)
+ */
+ createIndex(name: string, keyPath: string | Iterable<string>, options?: IDBIndexParameters): IDBIndex;
+}
+
+interface MessageEvent<T = any> {
+ /**
+ * @deprecated
+ *
+ * [MDN Reference](https://developer.mozilla.org/docs/Web/API/MessageEvent/initMessageEvent)
+ */
+ initMessageEvent(type: string, bubbles?: boolean, cancelable?: boolean, data?: any, origin?: string, lastEventId?: string, source?: MessageEventSource | null, ports?: Iterable<MessagePort>): void;
+}
+
+interface StylePropertyMapReadOnly {
+ [Symbol.iterator](): IterableIterator<[string, Iterable<CSSStyleValue>]>;
+ entries(): IterableIterator<[string, Iterable<CSSStyleValue>]>;
+ keys(): IterableIterator<string>;
+ values(): IterableIterator<Iterable<CSSStyleValue>>;
+}
+
+interface SubtleCrypto {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/deriveKey) */
+ deriveKey(algorithm: AlgorithmIdentifier | EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params, baseKey: CryptoKey, derivedKeyType: AlgorithmIdentifier | AesDerivedKeyParams | HmacImportParams | HkdfParams | Pbkdf2Params, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/generateKey) */
+ generateKey(algorithm: "Ed25519", extractable: boolean, keyUsages: ReadonlyArray<"sign" | "verify">): Promise<CryptoKeyPair>;
+ generateKey(algorithm: RsaHashedKeyGenParams | EcKeyGenParams, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKeyPair>;
+ generateKey(algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ generateKey(algorithm: AlgorithmIdentifier, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKeyPair | CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/importKey) */
+ importKey(format: "jwk", keyData: JsonWebKey, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: ReadonlyArray<KeyUsage>): Promise<CryptoKey>;
+ importKey(format: Exclude<KeyFormat, "jwk">, keyData: BufferSource, algorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/SubtleCrypto/unwrapKey) */
+ unwrapKey(format: KeyFormat, wrappedKey: BufferSource, unwrappingKey: CryptoKey, unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams, unwrappedKeyAlgorithm: AlgorithmIdentifier | RsaHashedImportParams | EcKeyImportParams | HmacImportParams | AesKeyAlgorithm, extractable: boolean, keyUsages: Iterable<KeyUsage>): Promise<CryptoKey>;
+}
+
+interface URLSearchParams {
+ [Symbol.iterator](): IterableIterator<[string, string]>;
+ /** Returns an array of key, value pairs for every entry in the search params. */
+ entries(): IterableIterator<[string, string]>;
+ /** Returns a list of keys in the search params. */
+ keys(): IterableIterator<string>;
+ /** Returns a list of values in the search params. */
+ values(): IterableIterator<string>;
+}
+
+interface WEBGL_draw_buffers {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_draw_buffers/drawBuffersWEBGL) */
+ drawBuffersWEBGL(buffers: Iterable<GLenum>): void;
+}
+
+interface WEBGL_multi_draw {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysInstancedWEBGL) */
+ multiDrawArraysInstancedWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: number, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawArraysWEBGL) */
+ multiDrawArraysWEBGL(mode: GLenum, firstsList: Int32Array | Iterable<GLint>, firstsOffset: number, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsInstancedWEBGL) */
+ multiDrawElementsInstancedWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: number, instanceCountsList: Int32Array | Iterable<GLsizei>, instanceCountsOffset: number, drawcount: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WEBGL_multi_draw/multiDrawElementsWEBGL) */
+ multiDrawElementsWEBGL(mode: GLenum, countsList: Int32Array | Iterable<GLsizei>, countsOffset: number, type: GLenum, offsetsList: Int32Array | Iterable<GLsizei>, offsetsOffset: number, drawcount: GLsizei): void;
+}
+
+interface WebGL2RenderingContextBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferfv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLfloat>, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLint>, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/clearBuffer) */
+ clearBufferuiv(buffer: GLenum, drawbuffer: GLint, values: Iterable<GLuint>, srcOffset?: number): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/drawBuffers) */
+ drawBuffers(buffers: Iterable<GLenum>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getActiveUniforms) */
+ getActiveUniforms(program: WebGLProgram, uniformIndices: Iterable<GLuint>, pname: GLenum): any;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/getUniformIndices) */
+ getUniformIndices(program: WebGLProgram, uniformNames: Iterable<string>): Iterable<GLuint> | null;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateFramebuffer) */
+ invalidateFramebuffer(target: GLenum, attachments: Iterable<GLenum>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/invalidateSubFramebuffer) */
+ invalidateSubFramebuffer(target: GLenum, attachments: Iterable<GLenum>, x: GLint, y: GLint, width: GLsizei, height: GLsizei): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/transformFeedbackVaryings) */
+ transformFeedbackVaryings(program: WebGLProgram, varyings: Iterable<string>, bufferMode: GLenum): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform1uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform2uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform3uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniform) */
+ uniform4uiv(location: WebGLUniformLocation | null, data: Iterable<GLuint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix2x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix3x4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/uniformMatrix) */
+ uniformMatrix4x3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4iv(index: GLuint, values: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGL2RenderingContext/vertexAttribI) */
+ vertexAttribI4uiv(index: GLuint, values: Iterable<GLuint>): void;
+}
+
+interface WebGL2RenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, data: Iterable<GLint>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, data: Iterable<GLfloat>, srcOffset?: number, srcLength?: GLuint): void;
+}
+
+interface WebGLRenderingContextBase {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib1fv(index: GLuint, values: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib2fv(index: GLuint, values: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib3fv(index: GLuint, values: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/vertexAttrib) */
+ vertexAttrib4fv(index: GLuint, values: Iterable<GLfloat>): void;
+}
+
+interface WebGLRenderingContextOverloads {
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform1iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform2iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform3iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4fv(location: WebGLUniformLocation | null, v: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniform) */
+ uniform4iv(location: WebGLUniformLocation | null, v: Iterable<GLint>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix2fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix3fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
+ /** [MDN Reference](https://developer.mozilla.org/docs/Web/API/WebGLRenderingContext/uniformMatrix) */
+ uniformMatrix4fv(location: WebGLUniformLocation | null, transpose: GLboolean, value: Iterable<GLfloat>): void;
+}
+`;function gm(g){return typeof g=="string"?/^file:\/\/\//.test(g)?!!lo[g.substr(8)]:!1:g.path.indexOf("/lib.")===0?!!lo[g.path.slice(1)]:!1}var f1e=class m6{constructor(v,T){this._extraLibs=Object.create(null),this._languageService=d1e(this),this._ctx=v,this._compilerOptions=T.compilerOptions,this._extraLibs=T.extraLibs,this._inlayHintsOptions=T.inlayHintsOptions}getCompilationSettings(){return this._compilerOptions}getLanguageService(){return this._languageService}getExtraLibs(){return this._extraLibs}getScriptFileNames(){return this._ctx.getMirrorModels().map(W=>W.uri).filter(W=>!gm(W)).map(W=>W.toString()).concat(Object.keys(this._extraLibs))}_getModel(v){let T=this._ctx.getMirrorModels();for(let W=0;W<T.length;W++){const X=T[W].uri;if(X.toString()===v||X.toString(!0)===v)return T[W]}return null}getScriptVersion(v){let T=this._getModel(v);return T?T.version.toString():this.isDefaultLibFileName(v)?"1":v in this._extraLibs?String(this._extraLibs[v].version):""}async getScriptText(v){return this._getScriptText(v)}_getScriptText(v){let T,W=this._getModel(v);const X="lib."+v+".d.ts";if(W)T=W.getValue();else if(v in lo)T=lo[v];else if(X in lo)T=lo[X];else if(v in this._extraLibs)T=this._extraLibs[v].content;else return;return T}getScriptSnapshot(v){const T=this._getScriptText(v);if(T!==void 0)return{getText:(W,X)=>T.substring(W,X),getLength:()=>T.length,getChangeRange:()=>{}}}getScriptKind(v){switch(v.substr(v.lastIndexOf(".")+1)){case"ts":return qN.TS;case"tsx":return qN.TSX;case"js":return qN.JS;case"jsx":return qN.JSX;default:return this.getCompilationSettings().allowJs?qN.JS:qN.TS}}getCurrentDirectory(){return""}getDefaultLibFileName(v){switch(v.target){case 99:const T="lib.esnext.full.d.ts";if(T in lo||T in this._extraLibs)return T;case 7:case 6:case 5:case 4:case 3:case 2:default:const W=`lib.es${2013+(v.target||99)}.full.d.ts`;return W in lo||W in this._extraLibs?W:"lib.es6.d.ts";case 1:case 0:return"lib.d.ts"}}isDefaultLibFileName(v){return v===this.getDefaultLibFileName(this._compilerOptions)}readFile(v){return this._getScriptText(v)}fileExists(v){return this._getScriptText(v)!==void 0}async getLibFiles(){return lo}static clearFiles(v){const T=[];for(const W of v){const X={...W};if(X.file=X.file?{fileName:X.file.fileName}:void 0,W.relatedInformation){X.relatedInformation=[];for(const ue of W.relatedInformation){const Re={...ue};Re.file=Re.file?{fileName:Re.file.fileName}:void 0,X.relatedInformation.push(Re)}}T.push(X)}return T}async getSyntacticDiagnostics(v){if(gm(v))return[];const T=this._languageService.getSyntacticDiagnostics(v);return m6.clearFiles(T)}async getSemanticDiagnostics(v){if(gm(v))return[];const T=this._languageService.getSemanticDiagnostics(v);return m6.clearFiles(T)}async getSuggestionDiagnostics(v){if(gm(v))return[];const T=this._languageService.getSuggestionDiagnostics(v);return m6.clearFiles(T)}async getCompilerOptionsDiagnostics(v){if(gm(v))return[];const T=this._languageService.getCompilerOptionsDiagnostics();return m6.clearFiles(T)}async getCompletionsAtPosition(v,T){if(!gm(v))return this._languageService.getCompletionsAtPosition(v,T,void 0)}async getCompletionEntryDetails(v,T,W){return this._languageService.getCompletionEntryDetails(v,T,W,void 0,void 0,void 0,void 0)}async getSignatureHelpItems(v,T,W){if(!gm(v))return this._languageService.getSignatureHelpItems(v,T,W)}async getQuickInfoAtPosition(v,T){if(!gm(v))return this._languageService.getQuickInfoAtPosition(v,T)}async getDocumentHighlights(v,T,W){if(!gm(v))return this._languageService.getDocumentHighlights(v,T,W)}async getDefinitionAtPosition(v,T){if(!gm(v))return this._languageService.getDefinitionAtPosition(v,T)}async getReferencesAtPosition(v,T){if(!gm(v))return this._languageService.getReferencesAtPosition(v,T)}async getNavigationTree(v){if(!gm(v))return this._languageService.getNavigationTree(v)}async getFormattingEditsForDocument(v,T){return gm(v)?[]:this._languageService.getFormattingEditsForDocument(v,T)}async getFormattingEditsForRange(v,T,W,X){return gm(v)?[]:this._languageService.getFormattingEditsForRange(v,T,W,X)}async getFormattingEditsAfterKeystroke(v,T,W,X){return gm(v)?[]:this._languageService.getFormattingEditsAfterKeystroke(v,T,W,X)}async findRenameLocations(v,T,W,X,ue){if(!gm(v))return this._languageService.findRenameLocations(v,T,W,X,ue)}async getRenameInfo(v,T,W){return gm(v)?{canRename:!1,localizedErrorMessage:"Cannot rename in lib file"}:this._languageService.getRenameInfo(v,T,W)}async getEmitOutput(v,T,W){if(gm(v))return{outputFiles:[],emitSkipped:!0};const X=this._languageService.getEmitOutput(v,T,W),ue=X.diagnostics?m6.clearFiles(X.diagnostics):void 0;return{...X,diagnostics:ue}}async getCodeFixesAtPosition(v,T,W,X,ue){if(gm(v))return[];const Re={};try{return this._languageService.getCodeFixesAtPosition(v,T,W,X,ue,Re)}catch{return[]}}async updateExtraLibs(v){this._extraLibs=v}async provideInlayHints(v,T,W){if(gm(v))return[];const X=this._inlayHintsOptions??{},ue={start:T,length:W-T};try{return this._languageService.provideInlayHints(v,ue,X)}catch{return[]}}};function I9e(g,v){let T=f1e;if(v.customWorkerPath)if(typeof importScripts>"u")console.warn("Monaco is not using webworkers for background tasks, and that is needed to support the customWorkerPath flag");else{self.importScripts(v.customWorkerPath);const W=self.customTSWorkerFactory;if(!W)throw new Error(`The script at ${v.customWorkerPath} does not add customTSWorkerFactory to self`);T=W(f1e,u1e,lo)}return new T(g,v)}globalThis.ts=p1e,self.onmessage=()=>{c1e((g,v)=>I9e(g,v))};/*! *****************************************************************************
+ Copyright (c) Microsoft Corporation. All rights reserved.
+ Licensed under the Apache License, Version 2.0 (the "License"); you may not use
+ this file except in compliance with the License. You may obtain a copy of the
+ License at http://www.apache.org/licenses/LICENSE-2.0
+
+ THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
+ WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
+ MERCHANTABLITY OR NON-INFRINGEMENT.
+
+ See the Apache Version 2.0 License for specific language governing permissions
+ and limitations under the License.
+ ***************************************************************************** */})();