@malloy-publisher/server 0.0.168 → 0.0.170

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-x9S1fsYn.js","assets/index-DNCvL_5f.js","assets/index.umd-CTYdFEHH.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-DJ4KYt-l.js","assets/index-LGQlLlFF.js","assets/index.umd-BCEVvpz1.js"])))=>i.map(i=>d[i]);
2
2
  function mU(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const a in r)if(a!=="default"&&!(a in e)){const o=Object.getOwnPropertyDescriptor(r,a);o&&Object.defineProperty(e,a,o.get?o:{enumerable:!0,get:()=>r[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))r(a);new MutationObserver(a=>{for(const o of a)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&r(s)}).observe(document,{childList:!0,subtree:!0});function n(a){const o={};return a.integrity&&(o.integrity=a.integrity),a.referrerPolicy&&(o.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?o.credentials="include":a.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function r(a){if(a.ep)return;a.ep=!0;const o=n(a);fetch(a.href,o)}})();var rPe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function C4(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function aPe(e){if(Object.prototype.hasOwnProperty.call(e,"__esModule"))return e;var t=e.default;if(typeof t=="function"){var n=function r(){return this instanceof r?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(r){var a=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,a.get?a:{enumerable:!0,get:function(){return e[r]}})}),n}var fC={exports:{}},eh={};/**
3
3
  * @license React
4
4
  * react-jsx-runtime.production.js
@@ -334,7 +334,7 @@ import {${t.sourceName}}" from '${t.modelPath}'"
334
334
  \f\r "&'<=>\``.split("")],[`\0
335
335
  \f\r "&'<=>\``.split(""),`\0
336
336
  \f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function lSe(e,t,n,r){const a=r.schema,o=a.space==="svg"?!1:r.settings.omitOptionalTags;let s=a.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase());const i=[];let c;a.space==="html"&&e.tagName==="svg"&&(r.schema=il);const u=cSe(r,e.properties),p=r.all(a.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=a,p&&(s=!1),(u||!o||!nSe(e,t,n))&&(i.push("<",e.tagName,u?" "+u:""),s&&(a.space==="svg"||r.settings.closeSelfClosing)&&(c=u.charAt(u.length-1),(!r.settings.tightSelfClosing||c==="/"||c&&c!=='"'&&c!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(p),!s&&(!o||!sA(e,t,n))&&i.push("</"+e.tagName+">"),i.join("")}function cSe(e,t){const n=[];let r=-1,a;if(t){for(a in t)if(t[a]!==null&&t[a]!==void 0){const o=uSe(e,a,t[a]);o&&n.push(o)}}for(;++r<n.length;){const o=e.settings.tightAttributes?n[r].charAt(n[r].length-1):void 0;r!==n.length-1&&o!=='"'&&o!=="'"&&(n[r]+=" ")}return n.join("")}function uSe(e,t,n){const r=Lg(e.schema,t),a=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,o=e.settings.allowDangerousCharacters?0:1;let s=e.quote,i;if(r.overloadedBoolean&&(n===r.attribute||n==="")?n=!0:(r.boolean||r.overloadedBoolean)&&(typeof n!="string"||n===r.attribute||n==="")&&(n=!!n),n==null||n===!1||typeof n=="number"&&Number.isNaN(n))return"";const c=dp(r.attribute,Object.assign({},e.settings.characterReferences,{subset:$b.name[a][o]}));return n===!0||(n=Array.isArray(n)?(r.commaSeparated?O1:I1)(n,{padLeft:!e.settings.tightCommaSeparatedLists}):String(n),e.settings.collapseEmptyAttributes&&!n)?c:(e.settings.preferUnquoted&&(i=dp(n,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:$b.unquoted[a][o]}))),i!==n&&(e.settings.quoteSmart&&av(n,s)>av(n,e.alternative)&&(s=e.alternative),i=s+dp(n,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?$b.single:$b.double)[a][o],attribute:!0}))+s),c+(i&&"="+i))}const dSe=["<","&"];function sB(e,t,n,r){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:dp(e.value,Object.assign({},r.settings.characterReferences,{subset:dSe}))}function pSe(e,t,n,r){return r.settings.allowDangerousHtml?e.value:sB(e,t,n,r)}function fSe(e,t,n,r){return r.all(e)}const hSe=B1("type",{invalid:mSe,unknown:gSe,handlers:{comment:Bxe,doctype:zxe,element:lSe,raw:pSe,root:fSe,text:sB}});function mSe(e){throw new Error("Expected node, not `"+e+"`")}function gSe(e){const t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}const ySe={},bSe={},vSe=[];function xSe(e,t){const n=ySe,r=n.quote||'"',a=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:SSe,all:CSe,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||Ij,characterReferences:n.characterReferences||bSe,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?il:Kp,quote:r,alternative:a}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function SSe(e,t,n){return hSe(e,t,n,this)}function CSe(e){const t=[],n=e&&e.children||vSe;let r=-1;for(;++r<n.length;)t[r]=this.one(n[r],r,e);return t.join("")}function ESe(e){return Array.isArray(e)?e:[e]}function G1(e,t=!1){const n=e.split(/(\r?\n)/g);let r=0;const a=[];for(let o=0;o<n.length;o+=2){const s=t?n[o]+(n[o+1]||""):n[o];a.push([s,r]),r+=n[o].length,r+=n[o+1]?.length||0}return a}function iA(e){return!e||["plaintext","txt","text","plain"].includes(e)}function TSe(e){return e==="ansi"||iA(e)}function lA(e){return e==="none"}function wSe(e){return lA(e)}function iB(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);const n=Array.isArray(t)?t:t.split(/\s+/g);for(const r of n)r&&!e.properties.class.includes(r)&&e.properties.class.push(r);return e}function kSe(e,t){let n=0;const r=[];for(const a of t)a>n&&r.push({...e,content:e.content.slice(n,a),offset:e.offset+n}),n=a;return n<e.content.length&&r.push({...e,content:e.content.slice(n),offset:e.offset+n}),r}function _Se(e,t){const n=Array.from(t instanceof Set?t:new Set(t)).sort((r,a)=>r-a);return n.length?e.map(r=>r.flatMap(a=>{const o=n.filter(s=>a.offset<s&&s<a.offset+a.content.length).map(s=>s-a.offset).sort((s,i)=>s-i);return o.length?kSe(a,o):a})):e}async function lB(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function gv(e,t){const n=typeof e=="string"?{}:{...e.colorReplacements},r=typeof e=="string"?e:e.name;for(const[a,o]of Object.entries(t?.colorReplacements||{}))typeof o=="string"?n[a]=o:a===r&&Object.assign(n,o);return n}function cu(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function cB(e){const t={};return e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle&&(e.fontStyle&Yi.Italic&&(t["font-style"]="italic"),e.fontStyle&Yi.Bold&&(t["font-weight"]="bold"),e.fontStyle&Yi.Underline&&(t["text-decoration"]="underline")),t}function ASe(e){return typeof e=="string"?e:Object.entries(e).map(([t,n])=>`${t}:${n}`).join(";")}function DSe(e){const t=G1(e,!0).map(([a])=>a);function n(a){if(a===e.length)return{line:t.length-1,character:t[t.length-1].length};let o=a,s=0;for(const i of t){if(o<i.length)break;o-=i.length,s++}return{line:s,character:o}}function r(a,o){let s=0;for(let i=0;i<a;i++)s+=t[i].length;return s+=o,s}return{lines:t,indexToPos:n,posToIndex:r}}class Ia extends Error{constructor(t){super(t),this.name="ShikiError"}}const uB=new WeakMap;function Y1(e,t){uB.set(e,t)}function rg(e){return uB.get(e)}class rf{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,n){return new rf(Object.fromEntries(ESe(n).map(r=>[r,Tw])),t)}constructor(...t){if(t.length===2){const[n,r]=t;this.lang=r,this._stacks=n}else{const[n,r,a]=t;this.lang=r,this._stacks={[a]:n}}}getInternalStack(t=this.theme){return this._stacks[t]}get scopes(){return Y3(this._stacks[this.theme])}getScopes(t=this.theme){return Y3(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.scopes}}}function Y3(e){const t=[],n=new Set;function r(a){if(n.has(a))return;n.add(a);const o=a?.nameScopesList?.scopeName;o&&t.push(o),a.parent&&r(a.parent)}return r(e),t}function RSe(e,t){if(!(e instanceof rf))throw new Ia("Invalid grammar state");return e.getInternalStack(t)}function MSe(){const e=new WeakMap;function t(n){if(!e.has(n.meta)){let r=function(s){if(typeof s=="number"){if(s<0||s>n.source.length)throw new Ia(`Invalid decoration offset: ${s}. Code length: ${n.source.length}`);return{...a.indexToPos(s),offset:s}}else{const i=a.lines[s.line];if(i===void 0)throw new Ia(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${a.lines.length}`);if(s.character<0||s.character>i.length)throw new Ia(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,offset:a.posToIndex(s.line,s.character)}}};const a=DSe(n.source),o=(n.options.decorations||[]).map(s=>({...s,start:r(s.start),end:r(s.end)}));OSe(o),e.set(n.meta,{decorations:o,converter:a,source:n.source})}return e.get(n.meta)}return{name:"shiki:decorations",tokens(n){if(!this.options.decorations?.length)return;const r=t(this).decorations.flatMap(a=>[a.start.offset,a.end.offset]);return _Se(n,r)},code(n){if(!this.options.decorations?.length)return;const r=t(this),a=Array.from(n.children).filter(p=>p.type==="element"&&p.tagName==="span");if(a.length!==r.converter.lines.length)throw new Ia(`Number of lines in code element (${a.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function o(p,f,g,m){const v=a[p];let C="",x=-1,S=-1;if(f===0&&(x=0),g===0&&(S=0),g===Number.POSITIVE_INFINITY&&(S=v.children.length),x===-1||S===-1)for(let E=0;E<v.children.length;E++)C+=dB(v.children[E]),x===-1&&C.length===f&&(x=E+1),S===-1&&C.length===g&&(S=E+1);if(x===-1)throw new Ia(`Failed to find start index for decoration ${JSON.stringify(m.start)}`);if(S===-1)throw new Ia(`Failed to find end index for decoration ${JSON.stringify(m.end)}`);const w=v.children.slice(x,S);if(!m.alwaysWrap&&w.length===v.children.length)i(v,m,"line");else if(!m.alwaysWrap&&w.length===1&&w[0].type==="element")i(w[0],m,"token");else{const E={type:"element",tagName:"span",properties:{},children:w};i(E,m,"wrapper"),v.children.splice(x,w.length,E)}}function s(p,f){a[p]=i(a[p],f,"line")}function i(p,f,g){const m=f.properties||{},v=f.transform||(C=>C);return p.tagName=f.tagName||"span",p.properties={...p.properties,...m,class:p.properties.class},f.properties?.class&&iB(p,f.properties.class),p=v(p,g)||p,p}const c=[],u=r.decorations.sort((p,f)=>f.start.offset-p.start.offset);for(const p of u){const{start:f,end:g}=p;if(f.line===g.line)o(f.line,f.character,g.character,p);else if(f.line<g.line){o(f.line,f.character,Number.POSITIVE_INFINITY,p);for(let m=f.line+1;m<g.line;m++)c.unshift(()=>s(m,p));o(g.line,0,g.character,p)}}c.forEach(p=>p())}}}function OSe(e){for(let t=0;t<e.length;t++){const n=e[t];if(n.start.offset>n.end.offset)throw new Ia(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);for(let r=t+1;r<e.length;r++){const a=e[r],o=n.start.offset<a.start.offset&&a.start.offset<n.end.offset,s=n.start.offset<a.end.offset&&a.end.offset<n.end.offset,i=a.start.offset<n.start.offset&&n.start.offset<a.end.offset,c=a.start.offset<n.end.offset&&n.end.offset<a.end.offset;if(o||s||i||c){if(s&&s||i&&c)continue;throw new Ia(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(a.start)} intersect.`)}}}}function dB(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(dB).join(""):""}const ISe=[MSe()];function yv(e){return[...e.transformers||[],...ISe]}var uu=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],$E={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",9:"strikethrough"};function NSe(e,t){const n=e.indexOf("\x1B[",t);if(n!==-1){const r=e.indexOf("m",n);return{sequence:e.substring(n+2,r).split(";"),startPosition:n,position:r+1}}return{position:e.length}}function K3(e,t){let n=1;const r=e[t+n++];let a;if(r==="2"){const o=[e[t+n++],e[t+n++],e[t+n]].map(s=>Number.parseInt(s));o.length===3&&!o.some(s=>Number.isNaN(s))&&(a={type:"rgb",rgb:o})}else if(r==="5"){const o=Number.parseInt(e[t+n]);Number.isNaN(o)||(a={type:"table",index:Number(o)})}return[n,a]}function PSe(e){const t=[];for(let n=0;n<e.length;n++){const r=e[n],a=Number.parseInt(r);if(!Number.isNaN(a))if(a===0)t.push({type:"resetAll"});else if(a<=9)$E[a]&&t.push({type:"setDecoration",value:$E[a]});else if(a<=29){const o=$E[a-20];o&&t.push({type:"resetDecoration",value:o})}else if(a<=37)t.push({type:"setForegroundColor",value:{type:"named",name:uu[a-30]}});else if(a===38){const[o,s]=K3(e,n);s&&t.push({type:"setForegroundColor",value:s}),n+=o}else if(a===39)t.push({type:"resetForegroundColor"});else if(a<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:uu[a-40]}});else if(a===48){const[o,s]=K3(e,n);s&&t.push({type:"setBackgroundColor",value:s}),n+=o}else a===49?t.push({type:"resetBackgroundColor"}):a>=90&&a<=97?t.push({type:"setForegroundColor",value:{type:"named",name:uu[a-90+8]}}):a>=100&&a<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:uu[a-100+8]}})}return t}function LSe(){let e=null,t=null,n=new Set;return{parse(r){const a=[];let o=0;do{const s=NSe(r,o),i=s.sequence?r.substring(o,s.startPosition):r.substring(o);if(i.length>0&&a.push({value:i,foreground:e,background:t,decorations:new Set(n)}),s.sequence){const c=PSe(s.sequence);for(const u of c)u.type==="resetAll"?(e=null,t=null,n.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&n.delete(u.value);for(const u of c)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&n.add(u.value)}o=s.position}while(o<r.length);return a}}}var $Se={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function FSe(e=$Se){function t(i){return e[i]}function n(i){return`#${i.map(c=>Math.max(0,Math.min(c,255)).toString(16).padStart(2,"0")).join("")}`}let r;function a(){if(r)return r;r=[];for(let u=0;u<uu.length;u++)r.push(t(uu[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let p=0;p<6;p++)for(let f=0;f<6;f++)r.push(n([i[u],i[p],i[f]]));let c=8;for(let u=0;u<24;u++,c+=10)r.push(n([c,c,c]));return r}function o(i){return a()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return n(i.rgb);case"table":return o(i.index)}}return{value:s}}function jSe(e,t,n){const r=gv(e,n),a=G1(t),o=FSe(Object.fromEntries(uu.map(i=>[i,e.colors?.[`terminal.ansi${i[0].toUpperCase()}${i.substring(1)}`]]))),s=LSe();return a.map(i=>s.parse(i[0]).map(c=>{let u,p;c.decorations.has("reverse")?(u=c.background?o.value(c.background):e.bg,p=c.foreground?o.value(c.foreground):e.fg):(u=c.foreground?o.value(c.foreground):e.fg,p=c.background?o.value(c.background):void 0),u=cu(u,r),p=cu(p,r),c.decorations.has("dim")&&(u=BSe(u));let f=Yi.None;return c.decorations.has("bold")&&(f|=Yi.Bold),c.decorations.has("italic")&&(f|=Yi.Italic),c.decorations.has("underline")&&(f|=Yi.Underline),{content:c.value,offset:i[1],color:u,bgColor:p,fontStyle:f}}))}function BSe(e){const t=e.match(/#([0-9a-f]{3})([0-9a-f]{3})?([0-9a-f]{2})?/);if(t)if(t[3]){const r=Math.round(Number.parseInt(t[3],16)/2).toString(16).padStart(2,"0");return`#${t[1]}${t[2]}${r}`}else return t[2]?`#${t[1]}${t[2]}80`:`#${Array.from(t[1]).map(r=>`${r}${r}`).join("")}80`;const n=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return n?`var(${n[1]}-dim)`:e}function cA(e,t,n={}){const{lang:r="text",theme:a=e.getLoadedThemes()[0]}=n;if(iA(r)||lA(a))return G1(t).map(c=>[{content:c[0],offset:c[1]}]);const{theme:o,colorMap:s}=e.setTheme(a);if(r==="ansi")return jSe(o,t,n);const i=e.getLanguage(r);if(n.grammarState){if(n.grammarState.lang!==i.name)throw new yu(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${i.name}"`);if(!n.grammarState.themes.includes(o.name))throw new yu(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${o.name}"`)}return USe(t,i,o,s,n)}function zSe(...e){if(e.length===2)return rg(e[1]);const[t,n,r={}]=e,{lang:a="text",theme:o=t.getLoadedThemes()[0]}=r;if(iA(a)||lA(o))throw new yu("Plain language does not have grammar state");if(a==="ansi")throw new yu("ANSI language does not have grammar state");const{theme:s,colorMap:i}=t.setTheme(o),c=t.getLanguage(a);return new rf(bv(n,c,s,i,r).stateStack,c.name,s.name)}function USe(e,t,n,r,a){const o=bv(e,t,n,r,a),s=new rf(bv(e,t,n,r,a).stateStack,t.name,n.name);return Y1(o.tokens,s),o.tokens}function bv(e,t,n,r,a){const o=gv(n,a),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=a,c=G1(e);let u=a.grammarState?RSe(a.grammarState,n.name)??Tw:a.grammarContextCode!=null?bv(a.grammarContextCode,t,n,r,{...a,grammarState:void 0,grammarContextCode:void 0}).stateStack:Tw,p=[];const f=[];for(let g=0,m=c.length;g<m;g++){const[v,C]=c[g];if(v===""){p=[],f.push([]);continue}if(s>0&&v.length>=s){p=[],f.push([{content:v,offset:C,color:"",fontStyle:0}]);continue}let x,S,w;a.includeExplanation&&(x=t.tokenizeLine(v,u),S=x.tokens,w=0);const E=t.tokenizeLine2(v,u,i),D=E.tokens.length/2;for(let A=0;A<D;A++){const R=E.tokens[2*A],$=A+1<D?E.tokens[2*A+2]:v.length;if(R===$)continue;const j=E.tokens[2*A+1],H=cu(r[Rp.getForeground(j)],o),F=Rp.getFontStyle(j),z={content:v.substring(R,$),offset:C+R,color:H,fontStyle:F};if(a.includeExplanation){const k=[];if(a.includeExplanation!=="scopeName")for(const N of n.settings){let B;switch(typeof N.scope){case"string":B=N.scope.split(/,/).map(L=>L.trim());break;case"object":B=N.scope;break;default:continue}k.push({settings:N,selectors:B.map(L=>L.split(/ /))})}z.explanation=[];let P=0;for(;R+P<$;){const N=S[w],B=v.substring(N.startIndex,N.endIndex);P+=B.length,z.explanation.push({content:B,scopes:a.includeExplanation==="scopeName"?HSe(N.scopes):qSe(k,N.scopes)}),w+=1}}p.push(z)}f.push(p),p=[],u=E.ruleStack}return{tokens:f,stateStack:u}}function HSe(e){return e.map(t=>({scopeName:t}))}function qSe(e,t){const n=[];for(let r=0,a=t.length;r<a;r++){const o=t[r];n[r]={scopeName:o,themeMatches:WSe(e,o,t.slice(0,r))}}return n}function Q3(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function VSe(e,t,n){if(!Q3(e[e.length-1],t))return!1;let r=e.length-2,a=n.length-1;for(;r>=0&&a>=0;)Q3(e[r],n[a])&&(r-=1),a-=1;return r===-1}function WSe(e,t,n){const r=[];for(const{selectors:a,settings:o}of e)for(const s of a)if(VSe(s,t,n)){r.push(o);break}return r}function pB(e,t,n){const r=Object.entries(n.themes).filter(c=>c[1]).map(c=>({color:c[0],theme:c[1]})),a=r.map(c=>{const u=cA(e,t,{...n,theme:c.theme}),p=rg(u),f=typeof c.theme=="string"?c.theme:c.theme.name;return{tokens:u,state:p,theme:f}}),o=GSe(...a.map(c=>c.tokens)),s=o[0].map((c,u)=>c.map((p,f)=>{const g={content:p.content,variants:{},offset:p.offset};return"includeExplanation"in n&&n.includeExplanation&&(g.explanation=p.explanation),o.forEach((m,v)=>{const{content:C,explanation:x,offset:S,...w}=m[u][f];g.variants[r[v].color]=w}),g})),i=a[0].state?new rf(Object.fromEntries(a.map(c=>[c.theme,c.state?.getInternalStack(c.theme)])),a[0].state.lang):void 0;return i&&Y1(s,i),s}function GSe(...e){const t=e.map(()=>[]),n=e.length;for(let r=0;r<e[0].length;r++){const a=e.map(c=>c[r]),o=t.map(()=>[]);t.forEach((c,u)=>c.push(o[u]));const s=a.map(()=>0),i=a.map(c=>c[0]);for(;i.every(c=>c);){const c=Math.min(...i.map(u=>u.content.length));for(let u=0;u<n;u++){const p=i[u];p.content.length===c?(o[u].push(p),s[u]+=1,i[u]=a[u][s[u]]):(o[u].push({...p,content:p.content.slice(0,c)}),i[u]={...p,content:p.content.slice(c),offset:p.offset+c})}}}return t}function vv(e,t,n){let r,a,o,s,i,c;if("themes"in n){const{defaultColor:u="light",cssVariablePrefix:p="--shiki-"}=n,f=Object.entries(n.themes).filter(x=>x[1]).map(x=>({color:x[0],theme:x[1]})).sort((x,S)=>x.color===u?-1:S.color===u?1:0);if(f.length===0)throw new yu("`themes` option must not be empty");const g=pB(e,t,n);if(c=rg(g),u&&!f.find(x=>x.color===u))throw new yu(`\`themes\` option must contain the defaultColor key \`${u}\``);const m=f.map(x=>e.getTheme(x.theme)),v=f.map(x=>x.color);o=g.map(x=>x.map(S=>YSe(S,v,p,u))),c&&Y1(o,c);const C=f.map(x=>gv(x.theme,n));a=f.map((x,S)=>(S===0&&u?"":`${p+x.color}:`)+(cu(m[S].fg,C[S])||"inherit")).join(";"),r=f.map((x,S)=>(S===0&&u?"":`${p+x.color}-bg:`)+(cu(m[S].bg,C[S])||"inherit")).join(";"),s=`shiki-themes ${m.map(x=>x.name).join(" ")}`,i=u?void 0:[a,r].join(";")}else if("theme"in n){const u=gv(n.theme,n);o=cA(e,t,n);const p=e.getTheme(n.theme);r=cu(p.bg,u),a=cu(p.fg,u),s=p.name,c=rg(o)}else throw new yu("Invalid options, either `theme` or `themes` must be provided");return{tokens:o,fg:a,bg:r,themeName:s,rootStyle:i,grammarState:c}}function YSe(e,t,n,r){const a={content:e.content,explanation:e.explanation,offset:e.offset},o=t.map(c=>cB(e.variants[c])),s=new Set(o.flatMap(c=>Object.keys(c))),i={};return o.forEach((c,u)=>{for(const p of s){const f=c[p]||"inherit";if(u===0&&r)i[p]=f;else{const g=p==="color"?"":p==="background-color"?"-bg":`-${p}`,m=n+t[u]+(p==="color"?"":g);i[m]=f}}}),a.htmlStyle=i,a}function xv(e,t,n,r={meta:{},options:n,codeToHast:(a,o)=>xv(e,a,o),codeToTokens:(a,o)=>vv(e,a,o)}){let a=t;for(const m of yv(n))a=m.preprocess?.call(r,a,n)||a;let{tokens:o,fg:s,bg:i,themeName:c,rootStyle:u,grammarState:p}=vv(e,a,n);const{mergeWhitespaces:f=!0}=n;f===!0?o=QSe(o):f==="never"&&(o=XSe(o));const g={...r,get source(){return a}};for(const m of yv(n))o=m.tokens?.call(g,o)||o;return KSe(o,{...n,fg:s,bg:i,themeName:c,rootStyle:u},g,p)}function KSe(e,t,n,r=rg(e)){const a=yv(t),o=[],s={type:"root",children:[]},{structure:i="classic",tabindex:c="0"}=t;let u={type:"element",tagName:"pre",properties:{class:`shiki ${t.themeName||""}`,style:t.rootStyle||`background-color:${t.bg};color:${t.fg}`,...c!==!1&&c!=null?{tabindex:c.toString()}:{},...Object.fromEntries(Array.from(Object.entries(t.meta||{})).filter(([v])=>!v.startsWith("_")))},children:[]},p={type:"element",tagName:"code",properties:{},children:o};const f=[],g={...n,structure:i,addClassToHast:iB,get source(){return n.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return u},get code(){return p},get lines(){return f}};if(e.forEach((v,C)=>{C&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&o.push({type:"text",value:`
337
- `}));let x={type:"element",tagName:"span",properties:{class:"line"},children:[]},S=0;for(const w of v){let E={type:"element",tagName:"span",properties:{...w.htmlAttrs},children:[{type:"text",value:w.content}]};w.htmlStyle;const D=ASe(w.htmlStyle||cB(w));D&&(E.properties.style=D);for(const A of a)E=A?.span?.call(g,E,C+1,S,x,w)||E;i==="inline"?s.children.push(E):i==="classic"&&x.children.push(E),S+=w.content.length}if(i==="classic"){for(const w of a)x=w?.line?.call(g,x,C+1)||x;f.push(x),o.push(x)}}),i==="classic"){for(const v of a)p=v?.code?.call(g,p)||p;u.children.push(p);for(const v of a)u=v?.pre?.call(g,u)||u;s.children.push(u)}let m=s;for(const v of a)m=v?.root?.call(g,m)||m;return r&&Y1(m,r),m}function QSe(e){return e.map(t=>{const n=[];let r="",a=0;return t.forEach((o,s)=>{const i=!(o.fontStyle&&o.fontStyle&Yi.Underline);i&&o.content.match(/^\s+$/)&&t[s+1]?(a||(a=o.offset),r+=o.content):r?(i?n.push({...o,offset:a,content:r+o.content}):n.push({content:r,offset:a},o),a=0,r=""):n.push(o)}),n})}function XSe(e){return e.map(t=>t.flatMap(n=>{if(n.content.match(/^\s+$/))return n;const r=n.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return n;const[,a,o,s]=r;if(!a&&!s)return n;const i=[{...n,offset:n.offset+a.length,content:o}];return a&&i.unshift({content:a,offset:n.offset}),s&&i.push({content:s,offset:n.offset+a.length+o.length}),i}))}function ZSe(e,t,n){const r={meta:{},options:n,codeToHast:(o,s)=>xv(e,o,s),codeToTokens:(o,s)=>vv(e,o,s)};let a=xSe(xv(e,t,n,r));for(const o of yv(n))a=o.postprocess?.call(r,a,n)||a;return a}const X3={light:"#333333",dark:"#bbbbbb"},Z3={light:"#fffffe",dark:"#1e1e1e"},J3="__shiki_resolved";function uA(e){if(e?.[J3])return e;const t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:n,fg:r}=t;if(!n||!r){const i=t.settings?t.settings.find(c=>!c.name&&!c.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(n=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!n&&t?.colors?.["editor.background"]&&(n=t.colors["editor.background"]),r||(r=t.type==="light"?X3.light:X3.dark),n||(n=t.type==="light"?Z3.light:Z3.dark),t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let a=0;const o=new Map;function s(i){if(o.has(i))return o.get(i);a+=1;const c=`#${a.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${c}`]?s(i):(o.set(i,c),c)}t.settings=t.settings.map(i=>{const c=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!c&&!u)return i;const p={...i,settings:{...i.settings}};if(c){const f=s(i.settings.foreground);t.colorReplacements[f]=i.settings.foreground,p.settings.foreground=f}if(u){const f=s(i.settings.background);t.colorReplacements[f]=i.settings.background,p.settings.background=f}return p});for(const i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){const c=s(t.colors[i]);t.colorReplacements[c]=t.colors[i],t.colors[i]=c}return Object.defineProperty(t,J3,{enumerable:!1,writable:!1,value:!0}),t}async function fB(e){return Array.from(new Set((await Promise.all(e.filter(t=>!TSe(t)).map(async t=>await lB(t).then(n=>Array.isArray(n)?n:[n])))).flat()))}async function hB(e){return(await Promise.all(e.map(async t=>wSe(t)?null:uA(await lB(t))))).filter(t=>!!t)}class JSe extends xxe{constructor(t,n,r,a={}){super(t),this._resolver=t,this._themes=n,this._langs=r,this._alias=a,this._themes.map(o=>this.loadTheme(o)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){const n=uA(t);return n.name&&(this._resolvedThemes.set(n.name,n),this._loadedThemesCache=null),n}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let n=this._textmateThemeCache.get(t);n||(n=dv.createFromRawTheme(t),this._textmateThemeCache.set(t,n)),this._syncRegistry.setTheme(n)}getGrammar(t){if(this._alias[t]){const n=new Set([t]);for(;this._alias[t];){if(t=this._alias[t],n.has(t))throw new Ia(`Circular alias \`${Array.from(n).join(" -> ")} -> ${t}\``);n.add(t)}}return this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;const n=new Set([...this._langMap.values()].filter(o=>o.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);const r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);const a=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(a.name=t.name,this._resolvedGrammars.set(t.name,a),t.aliases&&t.aliases.forEach(o=>{this._alias[o]=t.name}),this._loadedLanguagesCache=null,n.size)for(const o of n)this._resolvedGrammars.delete(o.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(o.scopeName),this._syncRegistry?._grammars?.delete(o.scopeName),this.loadLanguage(this._langMap.get(o.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(const a of t)this.resolveEmbeddedLanguages(a);const n=Array.from(this._langGraph.entries()),r=n.filter(([a,o])=>!o);if(r.length){const a=n.filter(([o,s])=>s&&s.embeddedLangs?.some(i=>r.map(([c])=>c).includes(i))).filter(o=>!r.includes(o));throw new Ia(`Missing languages ${r.map(([o])=>`\`${o}\``).join(", ")}, required by ${a.map(([o])=>`\`${o}\``).join(", ")}`)}for(const[a,o]of n)this._resolver.addLanguage(o);for(const[a,o]of n)this.loadLanguage(o)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){if(this._langMap.set(t.name,t),this._langGraph.set(t.name,t),t.embeddedLangs)for(const n of t.embeddedLangs)this._langGraph.set(n,this._langMap.get(n))}}class eCe{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,n){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},n.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(n=>{this._langs.set(n,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(n=>{this._injections.get(n)||this._injections.set(n,[]),this._injections.get(n).push(t.scopeName)})}getInjections(t){const n=t.split(".");let r=[];for(let a=1;a<=n.length;a++){const o=n.slice(0,a).join(".");r=[...r,...this._injections.get(o)||[]]}return r}}let Dh=0;function tCe(e){Dh+=1,e.warnings!==!1&&Dh>=10&&Dh%10===0&&console.warn(`[Shiki] ${Dh} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new Ia("`engine` option is required for synchronous mode");const n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(uA),a=new eCe(e.engine,n),o=new JSe(a,r,n,e.langAlias);let s;function i(w){x();const E=o.getGrammar(typeof w=="string"?w:w.name);if(!E)throw new Ia(`Language \`${w}\` not found, you may need to load it first`);return E}function c(w){if(w==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();const E=o.getTheme(w);if(!E)throw new Ia(`Theme \`${w}\` not found, you may need to load it first`);return E}function u(w){x();const E=c(w);s!==w&&(o.setTheme(E),s=w);const D=o.getColorMap();return{theme:E,colorMap:D}}function p(){return x(),o.getLoadedThemes()}function f(){return x(),o.getLoadedLanguages()}function g(...w){x(),o.loadLanguages(w.flat(1))}async function m(...w){return g(await fB(w))}function v(...w){x();for(const E of w.flat(1))o.loadTheme(E)}async function C(...w){return x(),v(await hB(w))}function x(){if(t)throw new Ia("Shiki instance has been disposed")}function S(){t||(t=!0,o.dispose(),Dh-=1)}return{setTheme:u,getTheme:c,getLanguage:i,getLoadedThemes:p,getLoadedLanguages:f,loadLanguage:m,loadLanguageSync:g,loadTheme:C,loadThemeSync:v,dispose:S,[Symbol.dispose]:S}}async function nCe(e={}){e.loadWasm;const[t,n,r]=await Promise.all([hB(e.themes||[]),fB(e.langs||[]),e.engine||B9(e.loadWasm||N1e())]);return tCe({...e,themes:t,langs:n,engine:r})}async function rCe(e={}){const t=await nCe(e);return{getLastGrammarState:(...n)=>zSe(t,...n),codeToTokensBase:(n,r)=>cA(t,n,r),codeToTokensWithThemes:(n,r)=>pB(t,n,r),codeToTokens:(n,r)=>vv(t,n,r),codeToHast:(n,r)=>xv(t,n,r),codeToHtml:(n,r)=>ZSe(t,n,r),...t,getInternalContext:()=>t}}const aCe=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"comment":"the JSON object key","include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"comment":"the JSON object value","include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^\\\\s\\\\}]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),oCe=[aCe],sCe=Object.freeze(JSON.parse('{"displayName":"SQL","name":"sql","patterns":[{"match":"((?<!@)@)\\\\b(\\\\w+)\\\\b","name":"text.variable"},{"match":"(\\\\[)[^\\\\]]*(\\\\])","name":"text.bracketed"},{"include":"#comments"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"},"5":{"name":"entity.name.function.sql"}},"match":"(?i:^\\\\s*(create(?:\\\\s+or\\\\s+replace)?)\\\\s+(aggregate|conversion|database|domain|function|group|(unique\\\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)([\'\\"`]?)(\\\\w+)\\\\4","name":"meta.create.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"}},"match":"(?i:^\\\\s*(drop)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"},"3":{"name":"entity.name.function.sql"},"4":{"name":"keyword.other.cascade.sql"}},"match":"(?i:\\\\s*(drop)\\\\s+(table)\\\\s+(\\\\w+)(\\\\s+cascade)?\\\\b)","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"}},"match":"(?i:^\\\\s*(alter)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)","name":"meta.alter.sql"},{"captures":{"1":{"name":"storage.type.sql"},"2":{"name":"storage.type.sql"},"3":{"name":"constant.numeric.sql"},"4":{"name":"storage.type.sql"},"5":{"name":"constant.numeric.sql"},"6":{"name":"storage.type.sql"},"7":{"name":"constant.numeric.sql"},"8":{"name":"constant.numeric.sql"},"9":{"name":"storage.type.sql"},"10":{"name":"constant.numeric.sql"},"11":{"name":"storage.type.sql"},"12":{"name":"storage.type.sql"},"13":{"name":"storage.type.sql"},"14":{"name":"constant.numeric.sql"},"15":{"name":"storage.type.sql"}},"match":"(?xi)\\n\\n\\t\\t\\t\\t# normal stuff, capture 1\\n\\t\\t\\t\\t \\\\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\\\b\\n\\n\\t\\t\\t\\t# numeric suffix, capture 2 + 3i\\n\\t\\t\\t\\t|\\\\b(bit\\\\svarying|character\\\\s(?:varying)?|tinyint|var\\\\schar|float|interval)\\\\((\\\\d+)\\\\)\\n\\n\\t\\t\\t\\t# optional numeric suffix, capture 4 + 5i\\n\\t\\t\\t\\t|\\\\b(char|number|varchar\\\\d?)\\\\b(?:\\\\((\\\\d+)\\\\))?\\n\\n\\t\\t\\t\\t# special case, capture 6 + 7i + 8i\\n\\t\\t\\t\\t|\\\\b(numeric|decimal)\\\\b(?:\\\\((\\\\d+),(\\\\d+)\\\\))?\\n\\n\\t\\t\\t\\t# special case, captures 9, 10i, 11\\n\\t\\t\\t\\t|\\\\b(times?)\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\swith(?:out)?\\\\stime\\\\szone\\\\b)?\\n\\n\\t\\t\\t\\t# special case, captures 12, 13, 14i, 15\\n\\t\\t\\t\\t|\\\\b(timestamp)(?:(s|tz))?\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\s(with|without)\\\\stime\\\\szone\\\\b)?\\n\\n\\t\\t\\t"},{"match":"(?i:\\\\b((?:primary|foreign)\\\\s+key|references|on\\\\sdelete(\\\\s+cascade)?|nocheck|check|constraint|collate|default)\\\\b)","name":"storage.modifier.sql"},{"match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.sql"},{"match":"(?i:\\\\b(select(\\\\s+(all|distinct))?|insert\\\\s+(ignore\\\\s+)?into|update|delete|from|set|where|group\\\\s+by|or|like|and|union(\\\\s+all)?|having|order\\\\s+by|limit|cross\\\\s+join|join|straight_join|(inner|(left|right|full)(\\\\s+outer)?)\\\\s+join|natural(\\\\s+(inner|(left|right|full)(\\\\s+outer)?))?\\\\s+join)\\\\b)","name":"keyword.other.DML.sql"},{"match":"(?i:\\\\b(on|off|((is\\\\s+)?not\\\\s+)?null)\\\\b)","name":"keyword.other.DDL.create.II.sql"},{"match":"(?i:\\\\bvalues\\\\b)","name":"keyword.other.DML.II.sql"},{"match":"(?i:\\\\b(begin(\\\\s+work)?|start\\\\s+transaction|commit(\\\\s+work)?|rollback(\\\\s+work)?)\\\\b)","name":"keyword.other.LUW.sql"},{"match":"(?i:\\\\b(grant(\\\\swith\\\\sgrant\\\\soption)?|revoke)\\\\b)","name":"keyword.other.authorization.sql"},{"match":"(?i:\\\\bin\\\\b)","name":"keyword.other.data-integrity.sql"},{"match":"(?i:^\\\\s*(comment\\\\s+on\\\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\\\s+.*?\\\\s+(is)\\\\s+)","name":"keyword.other.object-comments.sql"},{"match":"(?i)\\\\bAS\\\\b","name":"keyword.other.alias.sql"},{"match":"(?i)\\\\b(DESC|ASC)\\\\b","name":"keyword.other.order.sql"},{"match":"\\\\*","name":"keyword.operator.star.sql"},{"match":"[!<>]?=|<>|<|>","name":"keyword.operator.comparison.sql"},{"match":"-|\\\\+|/","name":"keyword.operator.math.sql"},{"match":"\\\\|\\\\|","name":"keyword.operator.concatenator.sql"},{"captures":{"1":{"name":"support.function.aggregate.sql"}},"match":"(?i)\\\\b(approx_count_distinct|approx_percentile_cont|approx_percentile_disc|avg|checksum_agg|count|count_big|group|grouping|grouping_id|max|min|sum|stdev|stdevp|var|varp)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.analytic.sql"}},"match":"(?i)\\\\b(cume_dist|first_value|lag|last_value|lead|percent_rank|percentile_cont|percentile_disc)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.bitmanipulation.sql"}},"match":"(?i)\\\\b(bit_count|get_bit|left_shift|right_shift|set_bit)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.conversion.sql"}},"match":"(?i)\\\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.collation.sql"}},"match":"(?i)\\\\b(collationproperty|tertiary_weights)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cryptographic.sql"}},"match":"(?i)\\\\b(asymkey_id|asymkeyproperty|certproperty|cert_id|crypt_gen_random|decryptbyasymkey|decryptbycert|decryptbykey|decryptbykeyautoasymkey|decryptbykeyautocert|decryptbypassphrase|encryptbyasymkey|encryptbycert|encryptbykey|encryptbypassphrase|hashbytes|is_objectsigned|key_guid|key_id|key_name|signbyasymkey|signbycert|symkeyproperty|verifysignedbycert|verifysignedbyasymkey)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cursor.sql"}},"match":"(?i)\\\\b(cursor_status)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datetime.sql"}},"match":"(?i)\\\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|datetrunc|eomonth|switchoffset|todatetimeoffset|isdate|date_bucket)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datatype.sql"}},"match":"(?i)\\\\b(datalength|ident_current|ident_incr|ident_seed|identity|sql_variant_property)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.expression.sql"}},"match":"(?i)\\\\b(coalesce|nullif)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.globalvar.sql"}},"match":"(?<!@)@@(?i)\\\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.json.sql"}},"match":"(?i)\\\\b(json|isjson|json_object|json_array|json_value|json_query|json_modify|json_path_exists)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.logical.sql"}},"match":"(?i)\\\\b(choose|iif|greatest|least)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.mathematical.sql"}},"match":"(?i)\\\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.metadata.sql"}},"match":"(?i)\\\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.ranking.sql"}},"match":"(?i)\\\\b(rank|dense_rank|ntile|row_number)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.rowset.sql"}},"match":"(?i)\\\\b(generate_series|opendatasource|openjson|openrowset|openquery|openxml|predict|string_split)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.security.sql"}},"match":"(?i)\\\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.string.sql"}},"match":"(?i)\\\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|nodes|patindex|quotename|replace|replicate|reverse|right|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.system.sql"}},"match":"(?i)\\\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.textimage.sql"}},"match":"(?i)\\\\b(patindex|textptr|textvalid)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"constant.other.database-name.sql"},"2":{"name":"constant.other.table-name.sql"}},"match":"(\\\\w+?)\\\\.(\\\\w+)"},{"include":"#strings"},{"include":"#regexps"},{"match":"\\\\b(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|add|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|array|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_drop|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blockers|blocksize|bmk|both|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|checksum|cleanup_policy|clear|clear_port|close|clustered|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|connection|containment|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\\\\\\\s+or\\\\\\\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime|datetime2|datetimeoffset|day(s)?|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare|decrypt|decrypt_a|decryption|default_database|default_fulltext_language|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filegrowth|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|for|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hour(s)?|http|identity|identity_value|if|ifnull|ignore|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|incremental|index|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|leading|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|log|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|match|matched|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minute(s)?|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|month|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|nested_triggers|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nonclustered|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|nulls|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|quarter|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replace|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|respect|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|scalar|schema|schemabinding|scoped|scroll|scroll_locks|sddl|second|secexpr|seconds|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|session|sessions|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|shortest_path|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablock|tablockx|take|tape|target|target_index|target_partition|target_recovery_time|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|to|top|torn_page_detection|track_columns_updated|trailing|tran|transaction|transfer|transform_noise_words|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|two_digit_year_cutoff|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|unique|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|value|values|varbinary|varchar|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|wait_at_low_priority|waitfor|webmethod|week|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|window|windows|with|within|within group|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|year|zone)\\\\b","name":"keyword.other.sql"},{"captures":{"1":{"name":"punctuation.section.scope.begin.sql"},"2":{"name":"punctuation.section.scope.end.sql"}},"comment":"Allow for special ↩ behavior","match":"(\\\\()(\\\\))","name":"meta.block.sql"}],"repository":{"comment-block":{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\*/","name":"comment.block","patterns":[{"include":"#comment-block"}]},"comments":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=--)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[{"begin":"--","beginCaptures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\n","name":"comment.line.double-dash.sql"}]},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[]},{"include":"#comment-block"}]},"regexps":{"patterns":[{"begin":"/(?=\\\\S.*/)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"/","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.sql","patterns":[{"include":"#string_interpolation"},{"match":"\\\\\\\\/","name":"constant.character.escape.slash.sql"}]},{"begin":"%r\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"comment":"We should probably handle nested bracket pairs!?! -- Allan","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.modr.sql","patterns":[{"include":"#string_interpolation"}]}]},"string_escape":{"match":"\\\\\\\\.","name":"constant.character.escape.sql"},"string_interpolation":{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"match":"(#\\\\{)([^\\\\}]*)(\\\\})","name":"string.interpolated.sql"},"strings":{"patterns":[{"captures":{"2":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"comment":"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.","match":"(N)?(\')[^\']*(\')","name":"string.quoted.single.sql"},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.single.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"comment":"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.","match":"(`)[^`\\\\\\\\]*(`)","name":"string.quoted.other.backtick.sql"},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.other.backtick.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"comment":"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.","match":"(\\")[^\\"#]*(\\")","name":"string.quoted.double.sql"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.double.sql","patterns":[{"include":"#string_interpolation"}]},{"begin":"%\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.other.quoted.brackets.sql","patterns":[{"include":"#string_interpolation"}]}]}},"scopeName":"source.sql"}')),iCe=[sCe],lCe=Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[:=(,\\\\[?+!>]|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^yield|[^\\\\._$[:alnum:]]yield|^throw|[^\\\\._$[:alnum:]]throw|^in|[^\\\\._$[:alnum:]]in|^of|[^\\\\._$[:alnum:]]of|^typeof|[^\\\\._$[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync)\\\\s+)?([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?==>)","name":"meta.arrow.ts"},{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync))?((?<![})!\\\\]])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=\\\\}|\\\\S)(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.ts"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.ts"}]},"brackets":{"patterns":[{"begin":"{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"\\\\]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"captures":{"1":{"name":"meta.brace.angle.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.angle.ts"}},"match":"\\\\s*(<)\\\\s*(const)\\\\s*(>)","name":"cast.expr.ts"},{"begin":"(?:(?<!\\\\+\\\\+|--)(?<=^return|[^\\\\._$[:alnum:]]return|^throw|[^\\\\._$[:alnum:]]throw|^yield|[^\\\\._$[:alnum:]]yield|^await|[^\\\\._$[:alnum:]]await|^default|[^\\\\._$[:alnum:]]default|[=(,:>*?\\\\&\\\\|\\\\^]|[^_$[:alnum:]](?:\\\\+\\\\+|\\\\-\\\\-)|[^\\\\+]\\\\+|[^\\\\-]\\\\-))\\\\s*(<)(?!<?\\\\=)(?!\\\\s*$)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(\\\\>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?:(?<=^))\\\\s*(<)(?=[_$[:alpha:]][_$[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(\\\\>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.class.ts"}},"end":"(?<=\\\\})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.ts"}},"match":"[_$[:alpha:]][_$[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|\\\\/[\\\\/*])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.type.class.ts"}},"end":"(?<=\\\\})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=\\\\s|[;),}\\\\]:\\\\-\\\\+]|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(extends|implements)\\\\b)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))(?=\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\s*\\\\??\\\\.\\\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.documentation.ts","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"},"2":{"name":"storage.type.internaldeclaration.ts"},"3":{"name":"punctuation.decorator.internaldeclaration.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.ts"},{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.ts"},{"captures":{"1":{"name":"keyword.control.loop.ts"},"2":{"name":"entity.name.label.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.ts"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.ts"}},"end":"(?=[;}]|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.ts"},{"include":"#if-statement"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.ts"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"}]},"decorator":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\@","beginCaptures":{"0":{"name":"punctuation.decorator.ts"}},"end":"(?=\\\\s)","name":"meta.decorator.ts","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"name":"meta.parameter.object-binding-pattern.ts","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"name":"meta.paramter.array-binding-pattern.ts","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|\'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\'))|[^*\\\\\\\\])*?\'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\'\'\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.enum.ts"},"5":{"name":"entity.name.type.enum.ts"}},"end":"(?<=\\\\})","name":"meta.enum.declaration.ts","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)","beginCaptures":{"0":{"name":"variable.other.enummember.ts"}},"end":"(?=,|\\\\}|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\])))","end":"(?=,|\\\\}|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.as.ts"},"3":{"name":"storage.type.namespace.ts"},"4":{"name":"entity.name.type.module.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:(?:\\\\s*(=))|(?:\\\\s+(default)(?=\\\\s+)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"},"3":{"name":"keyword.operator.assignment.ts"},"4":{"name":"keyword.control.default.ts"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.export.default.ts","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[\\\\{*])|((?=\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\s|,))(?!\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.export.ts","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[:,]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.ts"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.ts"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.ts"},"2":{"name":"keyword.generator.asterisk.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.ts"},{"include":"#typeof-operator"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[;,:})\\\\]]))"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=^|[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+\\\\<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.ts"},{"match":"\\\\*=|(?<!\\\\()/=|%=|\\\\+=|\\\\-=","name":"keyword.operator.assignment.compound.ts"},{"match":"\\\\&=|\\\\^=|<<=|>>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ts"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ts"},{"match":"\\\\=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(\\\\!))\\\\s*)?(=|:|;|,|\\\\}|$))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\}|;|,|$|(^(?!\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(\\\\!))\\\\s*)?(=|:|;|,|$))))|(?<=\\\\})","name":"meta.field.declaration.ts","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.ts entity.name.function.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"keyword.operator.definiteassignment.ts"}},"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)(?:(\\\\?)|(\\\\!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"\\\\!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*))await)?\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.ts"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.ts"}]},"function-call":{"patterns":[{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","end":"(?<=\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"\\\\!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.async.ts"},"4":{"name":"storage.type.function.ts"},"5":{"name":"keyword.generator.asterisk.ts"},"6":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|(?<=\\\\})","name":"meta.function.ts","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.function.ts"},"3":{"name":"keyword.generator.asterisk.ts"},"4":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;)|(?<=\\\\})","name":"meta.function.expression.ts","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.function.ts entity.name.function.ts"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"entity.name.function.ts"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|\\\\})","patterns":[{"include":"#comment"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[:\\\\(])(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"}},"end":"(?<!^import|[^\\\\._$[:alnum:]]import)(?=;|$|^)","name":"meta.import.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=^import|[^\\\\._$[:alnum:]]import)(?!\\\\s*[\\"\'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.ts"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"},"7":{"name":"keyword.control.require.ts"},"8":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.import-equals.external.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"variable.other.readwrite.ts"}]}]},"import-export-assert-clause":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.ts"},"2":{"name":"keyword.control.assert.ts"},"3":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object-literal.key.ts"},{"match":":","name":"punctuation.separator.key-value.ts"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"keyword.control.default.ts"},"3":{"name":"constant.language.import-export-all.ts"},"4":{"name":"variable.other.readwrite.ts"},"5":{"name":"string.quoted.alias.ts"},"12":{"name":"keyword.control.as.ts"},"13":{"name":"keyword.control.default.ts"},"14":{"name":"variable.other.readwrite.alias.ts"},"15":{"name":"string.quoted.alias.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(?:(\\\\btype)\\\\s+)?(?:(\\\\bdefault)|(\\\\*)|(\\\\b[_$[:alpha:]][_$[:alnum:]]*)|((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))))\\\\s+(as)\\\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.ts"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.ts"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"variable.other.readwrite.alias.ts"},"3":{"name":"string.quoted.alias.ts"}},"match":"(?:(\\\\btype)\\\\s+)?(?:([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)))"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.ts"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"meta.brace.square.ts"},"3":{"name":"variable.parameter.ts"}},"end":"(\\\\])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.declaration.ts","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([+-])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.square.ts"},"4":{"name":"entity.name.type.ts"},"5":{"name":"keyword.operator.expression.in.ts"}},"end":"(\\\\])([+-])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.type.modifier.ts"},"3":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.mappedtype.declaration.ts","patterns":[{"captures":{"1":{"name":"keyword.control.as.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^\\\\]]+(\\\\])(?={@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"({)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^|}\\\\s*]|\\\\*[/])+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^{}@\\\\s|*]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.ts"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\s*[\\\\(]))))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.interface.ts"}},"end":"(?<=\\\\})","name":"meta.interface.ts","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.ts"}},"match":"[_$[:alpha:]][_$[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G({)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"label":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??)\\\\s*[\\\\(\\\\<])","end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.method.ts entity.name.function.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"}]},"namespace-declaration":{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[_$[:alpha:]\\"\'`]))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.namespace.ts"}},"end":"(?<=\\\\})|(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.namespace.declaration.ts","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.type.module.ts"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.ts"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\s*[\\\\(]))))","name":"new.expr.ts","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.ts"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"storage.type.numeric.bigint.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"storage.type.numeric.bigint.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"storage.type.numeric.bigint.ts"},"7":{"name":"storage.type.numeric.bigint.ts"},"8":{"name":"meta.delimiter.decimal.period.ts"},"9":{"name":"storage.type.numeric.bigint.ts"},"10":{"name":"meta.delimiter.decimal.period.ts"},"11":{"name":"storage.type.numeric.bigint.ts"},"12":{"name":"meta.delimiter.decimal.period.ts"},"13":{"name":"storage.type.numeric.bigint.ts"},"14":{"name":"storage.type.numeric.bigint.ts"}},"match":"(?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.ts"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.ts"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"variable.object.property.ts"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.object.property.ts"},"4":{"name":"variable.other.object.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(?:(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)|(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.constant.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\\'\\\\\\"\\\\`])","end":"(?=:)|((?<=[\\\\\'\\\\\\"\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([\\\\(\\\\<,}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[\\\\]\\\\\'\\\\\\"\\\\`])(?=\\\\s*[\\\\(\\\\<])","end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"constant.numeric.decimal.ts"}},"match":"(?![_$[:alpha:]])([[:digit:]]+)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"entity.name.function.ts"}},"match":"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=,|\\\\})","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.ts"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.ts","patterns":[{"include":"#type"}]},{"begin":"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\s*=)","end":"(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=,|\\\\})","name":"meta.object.member.ts","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=\\\\<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=\\\\>)\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=[,)])|(?==[^>])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.ts"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\\\\')|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[=(:,\\\\[?+!]|^return|[^\\\\._$[:alnum:]]return|^case|[^\\\\._$[:alnum:]]case|=>|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?<![_$[:alnum:])\\\\]]|\\\\+\\\\+|--|}|\\\\*\\\\/)|((?<=^return|[^\\\\._$[:alnum:]]return|^case|[^\\\\._$[:alnum:]]case))\\\\s*)\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdDtrnvf]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[bB]|\\\\^|\\\\$","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\[1-9]\\\\d*|\\\\\\\\k<([a-zA-Z_$][\\\\w$]*)>"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|(?:\\\\?<([a-zA-Z_$][\\\\w$]*)>))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])(?=$|^|[{};,]|//)","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])((?=[{};,]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[:|&])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.ts"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.ts"},"single-line-comment-consuming-line-ending":{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\{[0-9A-Fa-f]+\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"super-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.ts"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*[\\\\(]\\\\s*[\\\\\\"\\\\\'\\\\`]))","name":"keyword.operator.expression.import.ts"}]},"support-objects":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.ts"},{"captures":{"1":{"name":"keyword.control.import.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.importmeta.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.target.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"support.variable.property.ts"},"4":{"name":"support.constant.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"switch-statement.expr.ts","patterns":[{"include":"#comment"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"switch-expression.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"(?=\\\\})","name":"switch-block.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.ts"}},"end":"(?=:)","name":"case-clause.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"},"2":{"name":"meta.block.ts punctuation.definition.block.ts"}},"contentName":"meta.block.ts","end":"\\\\}","endCaptures":{"0":{"name":"meta.block.ts punctuation.definition.block.ts"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^[:digit:]])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.type.ts"},"4":{"name":"entity.name.type.alias.ts"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.type.declaration.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"},"2":{"name":"keyword.control.intrinsic.ts"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])(?!\\\\s*[|&]\\\\s+)((?=^|[,);\\\\}\\\\]]|//)|(?==[^>])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])((?=[,);\\\\}\\\\]]|\\\\/\\\\/)|(?==[^>])|(?=^\\\\s*$)|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.ts"},"type-conditional":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*\\\\<)","beginCaptures":{"1":{"name":"meta.type.constructor.ts storage.modifier.ts"},"2":{"name":"meta.type.constructor.ts keyword.control.new.ts"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=[(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![|&])(?=[,\\\\]\\\\)\\\\{\\\\}=;>:\\\\?]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![|&])((?=[,\\\\]\\\\)\\\\{\\\\}=;:\\\\?>]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.ts"}]},"type-name":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.ts"},{"match":"(\\\\?|\\\\:)","name":"keyword.operator.ternary.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.ts"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"},"4":{"name":"keyword.operator.expression.is.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\s(is)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.ts"}]},"type-primitive":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.ts"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.ts"},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"punctuation.separator.label.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.ts"}},"end":"(?=[,);}\\\\]=>:&|{\\\\?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.ts"},"var-expr":{"patterns":[{"begin":"(?=(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|((?<!^let|[^\\\\._$[:alnum:]]let|^var|[^\\\\._$[:alnum:]]var)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|((?<!^const|[^\\\\._$[:alnum:]]const)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|((?<!^using|[^\\\\._$[:alnum:]]using|^await\\\\s+using|[^\\\\._$[:alnum:]]await\\\\s+using)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=\\\\/\\\\/))","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)(\\\\!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])(\\\\!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)(\\\\!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<!=|!)(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[,);}\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<!=|!)(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[,);}\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![\\\\|\\\\&\\\\+\\\\-\\\\*\\\\/])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.ts","aliases":["ts"]}')),cCe=[lCe],uCe=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#fff","activityBar.border":"#e1e4e8","activityBar.foreground":"#2f363d","activityBar.inactiveForeground":"#959da5","activityBarBadge.background":"#2188ff","activityBarBadge.foreground":"#fff","badge.background":"#dbedff","badge.foreground":"#005cc5","breadcrumb.activeSelectionForeground":"#586069","breadcrumb.focusForeground":"#2f363d","breadcrumb.foreground":"#6a737d","breadcrumbPicker.background":"#fafbfc","button.background":"#159739","button.foreground":"#fff","button.hoverBackground":"#138934","button.secondaryBackground":"#e1e4e8","button.secondaryForeground":"#1b1f23","button.secondaryHoverBackground":"#d1d5da","checkbox.background":"#fafbfc","checkbox.border":"#d1d5da","debugToolBar.background":"#fff","descriptionForeground":"#6a737d","diffEditor.insertedTextBackground":"#34d05822","diffEditor.removedTextBackground":"#d73a4922","dropdown.background":"#fafbfc","dropdown.border":"#e1e4e8","dropdown.foreground":"#2f363d","dropdown.listBackground":"#fff","editor.background":"#fff","editor.findMatchBackground":"#ffdf5d","editor.findMatchHighlightBackground":"#ffdf5d66","editor.focusedStackFrameHighlightBackground":"#28a74525","editor.foldBackground":"#d1d5da11","editor.foreground":"#24292e","editor.inactiveSelectionBackground":"#0366d611","editor.lineHighlightBackground":"#f6f8fa","editor.linkedEditingBackground":"#0366d611","editor.selectionBackground":"#0366d625","editor.selectionHighlightBackground":"#34d05840","editor.selectionHighlightBorder":"#34d05800","editor.stackFrameHighlightBackground":"#ffd33d33","editor.wordHighlightBackground":"#34d05800","editor.wordHighlightBorder":"#24943e99","editor.wordHighlightStrongBackground":"#34d05800","editor.wordHighlightStrongBorder":"#24943e50","editorBracketHighlight.foreground1":"#005cc5","editorBracketHighlight.foreground2":"#e36209","editorBracketHighlight.foreground3":"#5a32a3","editorBracketHighlight.foreground4":"#005cc5","editorBracketHighlight.foreground5":"#e36209","editorBracketHighlight.foreground6":"#5a32a3","editorBracketMatch.background":"#34d05840","editorBracketMatch.border":"#34d05800","editorCursor.foreground":"#044289","editorError.foreground":"#cb2431","editorGroup.border":"#e1e4e8","editorGroupHeader.tabsBackground":"#f6f8fa","editorGroupHeader.tabsBorder":"#e1e4e8","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#d73a49","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#d7dbe0","editorIndentGuide.background":"#eff2f6","editorLineNumber.activeForeground":"#24292e","editorLineNumber.foreground":"#1b1f234d","editorOverviewRuler.border":"#fff","editorWarning.foreground":"#f9c513","editorWhitespace.foreground":"#d1d5da","editorWidget.background":"#f6f8fa","errorForeground":"#cb2431","focusBorder":"#2188ff","foreground":"#444d56","gitDecoration.addedResourceForeground":"#28a745","gitDecoration.conflictingResourceForeground":"#e36209","gitDecoration.deletedResourceForeground":"#d73a49","gitDecoration.ignoredResourceForeground":"#959da5","gitDecoration.modifiedResourceForeground":"#005cc5","gitDecoration.submoduleResourceForeground":"#959da5","gitDecoration.untrackedResourceForeground":"#28a745","input.background":"#fafbfc","input.border":"#e1e4e8","input.foreground":"#2f363d","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#e2e5e9","list.activeSelectionForeground":"#2f363d","list.focusBackground":"#cce5ff","list.hoverBackground":"#ebf0f4","list.hoverForeground":"#2f363d","list.inactiveFocusBackground":"#dbedff","list.inactiveSelectionBackground":"#e8eaed","list.inactiveSelectionForeground":"#2f363d","notificationCenterHeader.background":"#e1e4e8","notificationCenterHeader.foreground":"#6a737d","notifications.background":"#fafbfc","notifications.border":"#e1e4e8","notifications.foreground":"#2f363d","notificationsErrorIcon.foreground":"#d73a49","notificationsInfoIcon.foreground":"#005cc5","notificationsWarningIcon.foreground":"#e36209","panel.background":"#f6f8fa","panel.border":"#e1e4e8","panelInput.border":"#e1e4e8","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#2f363d","panelTitle.inactiveForeground":"#6a737d","pickerGroup.border":"#e1e4e8","pickerGroup.foreground":"#2f363d","progressBar.background":"#2188ff","quickInput.background":"#fafbfc","quickInput.foreground":"#2f363d","scrollbar.shadow":"#6a737d33","scrollbarSlider.activeBackground":"#959da588","scrollbarSlider.background":"#959da533","scrollbarSlider.hoverBackground":"#959da544","settings.headerForeground":"#2f363d","settings.modifiedItemIndicator":"#2188ff","sideBar.background":"#f6f8fa","sideBar.border":"#e1e4e8","sideBar.foreground":"#586069","sideBarSectionHeader.background":"#f6f8fa","sideBarSectionHeader.border":"#e1e4e8","sideBarSectionHeader.foreground":"#2f363d","sideBarTitle.foreground":"#2f363d","statusBar.background":"#fff","statusBar.border":"#e1e4e8","statusBar.debuggingBackground":"#f9826c","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#586069","statusBar.noFolderBackground":"#fff","statusBarItem.prominentBackground":"#e8eaed","statusBarItem.remoteBackground":"#fff","statusBarItem.remoteForeground":"#586069","tab.activeBackground":"#fff","tab.activeBorder":"#fff","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#2f363d","tab.border":"#e1e4e8","tab.hoverBackground":"#fff","tab.inactiveBackground":"#f6f8fa","tab.inactiveForeground":"#6a737d","tab.unfocusedActiveBorder":"#fff","tab.unfocusedActiveBorderTop":"#e1e4e8","tab.unfocusedHoverBackground":"#fff","terminal.ansiBlack":"#24292e","terminal.ansiBlue":"#0366d6","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#005cc5","terminal.ansiBrightCyan":"#3192aa","terminal.ansiBrightGreen":"#22863a","terminal.ansiBrightMagenta":"#5a32a3","terminal.ansiBrightRed":"#cb2431","terminal.ansiBrightWhite":"#d1d5da","terminal.ansiBrightYellow":"#b08800","terminal.ansiCyan":"#1b7c83","terminal.ansiGreen":"#28a745","terminal.ansiMagenta":"#5a32a3","terminal.ansiRed":"#d73a49","terminal.ansiWhite":"#6a737d","terminal.ansiYellow":"#dbab09","terminal.foreground":"#586069","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#d1d5da","terminalCursor.foreground":"#005cc5","textBlockQuote.background":"#fafbfc","textBlockQuote.border":"#e1e4e8","textCodeBlock.background":"#f6f8fa","textLink.activeForeground":"#005cc5","textLink.foreground":"#0366d6","textPreformat.foreground":"#586069","textSeparator.foreground":"#d1d5da","titleBar.activeBackground":"#fff","titleBar.activeForeground":"#2f363d","titleBar.border":"#e1e4e8","titleBar.inactiveBackground":"#f6f8fa","titleBar.inactiveForeground":"#6a737d","tree.indentGuidesStroke":"#e1e4e8","welcomePage.buttonBackground":"#f6f8fa","welcomePage.buttonHoverBackground":"#e1e4e8"},"displayName":"GitHub Light","name":"github-light","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#005cc5"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#6f42c1"}},{"scope":"variable.parameter.function","settings":{"foreground":"#24292e"}},{"scope":"entity.name.tag","settings":{"foreground":"#22863a"}},{"scope":"keyword","settings":{"foreground":"#d73a49"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#d73a49"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#24292e"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#032f62"}},{"scope":"support","settings":{"foreground":"#005cc5"}},{"scope":"meta.property-name","settings":{"foreground":"#005cc5"}},{"scope":"variable","settings":{"foreground":"#e36209"}},{"scope":"variable.other","settings":{"foreground":"#24292e"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"carriage-return","settings":{"background":"#d73a49","content":"^M","fontStyle":"italic underline","foreground":"#fafbfc"}},{"scope":"message.error","settings":{"foreground":"#b31d28"}},{"scope":"string variable","settings":{"foreground":"#005cc5"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#032f62"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#032f62"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#22863a"}},{"scope":"support.constant","settings":{"foreground":"#005cc5"}},{"scope":"support.variable","settings":{"foreground":"#005cc5"}},{"scope":"meta.module-reference","settings":{"foreground":"#005cc5"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#e36209"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"markup.quote","settings":{"foreground":"#22863a"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#24292e"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#24292e"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#005cc5"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ffeef0","foreground":"#b31d28"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#f0fff4","foreground":"#22863a"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffebda","foreground":"#e36209"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#005cc5","foreground":"#f6f8fa"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#6f42c1"}},{"scope":"meta.diff.header","settings":{"foreground":"#005cc5"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"meta.output","settings":{"foreground":"#005cc5"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#586069"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#b31d28"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#032f62"}}],"type":"light"}')),FE={scopeName:"source.malloy",patterns:[{include:"#malloy-language"}],repository:{"malloy-language":{patterns:[{include:"#sql-string"},{include:"#comments"},{include:"#tags"},{include:"#strings"},{include:"#numbers"},{include:"#keywords"},{include:"#properties"},{include:"#functions"},{include:"#datetimes"},{include:"#identifiers-quoted"},{include:"#types"},{include:"#constants"},{include:"#timeframes"},{include:"#identifiers-unquoted"}]},"malloy-matched":{begin:"{",end:"}",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"malloy-in-sql":{begin:"%{",name:"source.malloy-in-sql",end:"}%?",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"sql-string":{patterns:[{begin:'(\\b[A-Za-z_][A-Za-z_0-9]*)(\\s*\\.\\s*)(sql)(\\s*\\(\\s*)(""")',end:'"""',beginCaptures:{1:{name:"variable.other"},3:{name:"keyword.control.sql"},5:{name:"punctuation.sql-block.open"}},endCaptures:{0:{name:"punctuation.sql-block.close"}},name:"source.sql",patterns:[{include:"#malloy-in-sql"},{include:"source.sql"}]}]},functions:{patterns:[{match:"(?i)\\b(count)(\\s*\\()(distinct)",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.function.modifier"}}},{match:"(?i)\\b(AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE|UNGROUPED)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(!)(timestamp|number|string|boolean|date)?(\\s*\\()",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.type"}}}]},datetimes:{patterns:[{match:"(?i)@[0-9]{4}-[0-9]{2}-[0-9]{2}[ T][0-9]{2}:[0-9]{2}((:[0-9]{2})(([\\.,][0-9]+)(\\[[A-Za-z_/]+\\])?)?)?",name:"constant.numeric.timestamp"},{match:"(?i)@[0-9]{4}(-Q[1-4]|-[0-9]{2}(-[0-9]{2}(-WK)?)?)?",name:"constant.numeric.date"}]},"identifiers-quoted":{patterns:[{match:"`[^`]*`",name:"variable.other.quoted"}]},"identifiers-unquoted":{patterns:[{match:"(?i)\\b[A-Za-z_][A-Za-z_0-9]*\\b",name:"variable.other"}]},timeframes:{patterns:[{match:"(?i)\\b((year|quarter|month|week|day|hour|minute|second)s?)\\b",name:"keyword.other.timeframe"},{match:"(?i)\\b(day_of_year|day_of_month)\\b",name:"keyword.other.timeframe"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]},tags:{patterns:[{match:"##\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:'#"',end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{match:"#\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:"#\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"##\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"#",end:"\\n",beginCaptures:{0:{name:"string.quoted"}},name:"string.quoted"}],repository:{"tag-values":{name:"support.type.property-name.json",match:'(-)?((?:[^\\s=#]+)|(?:"[^#]+"))(?:\\s*(=)\\s*((?:[^\\s=#]+)|(?:"[^#]+")))?',captures:{1:{name:"keyword.control.negate"},2:{name:"support.type.property-name.json"},3:{name:"keyword.operator.comparison.ts"},4:{name:"string.quoted"}}}}},strings:{patterns:[{begin:"'",end:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.single",patterns:[{include:"#escapes"}]},{begin:'"',end:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.double",patterns:[{include:"#escapes"}]},{begin:'"""',end:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.triple"},{begin:"(?i)[r|/]'",end:"'",name:"string.regexp",patterns:[{include:"#regex-escapes"}]}],repository:{escapes:{name:"constant.character.escape",match:"\\\\(u[A-Fa-f0-9]{4}|.)",captures:{0:{name:"constant.character.escape"}}},"regex-escapes":{name:"constant.character.escape",match:"\\\\.",captures:{0:{name:"constant.character.escape"}}}}},numbers:{match:"(?i)(\\b((0|[1-9][0-9]*)(E[+-]?[0-9]+|\\.[0-9]*)?)|\\.[0-9]+)",name:"constant.numeric"},constants:{patterns:[{match:"(?i)\\bnull\\b",name:"constant.language.null"},{match:"(?i)\\btrue\\b",name:"constant.language.true"},{match:"(?i)\\bfalse\\b",name:"constant.language.false"}]},types:{patterns:[{match:"(?i)\\bstring\\b",name:"entity.name.type.string"},{match:"(?i)\\bnumber\\b",name:"entity.name.type.number"},{match:"(?i)\\bdate\\b",name:"entity.name.type.date"},{match:"(?i)\\btimestamp\\b",name:"entity.name.type.timestamp"},{match:"(?i)\\bboolean\\b",name:"entity.name.type.boolean"}]},properties:{patterns:[{match:"(?i)\\baccept\\b",name:"keyword.control.accept"},{match:"(?i)\\bselect\\b",name:"keyword.control.select"},{match:"(?i)\\bconnection\\b",name:"keyword.control.connection"},{match:"(?i)\\brun\\b",name:"keyword.control.run"},{match:"(?i)\\bextend\\b",name:"keyword.control.extend"},{match:"(?i)\\brefine\\b",name:"keyword.control.refine"},{match:"(?i)\\baggregate\\b",name:"keyword.control.aggregate"},{match:"(?i)\\bsample\\b",name:"keyword.control.sample"},{match:"(?i)\\bcalculate\\b",name:"keyword.control.calculate"},{match:"(?i)\\btimezone\\b",name:"keyword.control.timezone"},{match:"(?i)\\bdimension\\b",name:"keyword.control.dimension"},{match:"(?i)\\bexcept\\b",name:"keyword.control.except"},{match:"(?i)\\bsource\\b",name:"keyword.control.source"},{match:"(?i)\\bgroup_by\\b",name:"keyword.control.group_by"},{match:"(?i)\\bhaving\\b",name:"keyword.control.having"},{match:"(?i)\\bindex\\b",name:"keyword.control.index"},{match:"(?i)\\bjoin_one\\b",name:"keyword.control.join_one"},{match:"(?i)\\bwith\\b",name:"keyword.control.with"},{match:"(?i)\\bjoin_many\\b",name:"keyword.control.join_many"},{match:"(?i)\\bjoin_cross\\b",name:"keyword.control.join_cross"},{match:"(?i)\\blimit\\b",name:"keyword.control.limit"},{match:"(?i)\\bmeasure\\b",name:"keyword.control.measure"},{match:"(?i)\\bnest\\b",name:"keyword.control.nest"},{match:"(?i)\\border_by\\b",name:"keyword.control.order_by"},{match:"(?i)\\bpartition_by\\b",name:"keyword.control.partition_by"},{match:"(?i)\\bprimary_key\\b",name:"keyword.control.primary_key"},{match:"(?i)\\bproject\\b",name:"keyword.control.project"},{match:"(?i)\\bquery\\b",name:"keyword.control.query"},{match:"(?i)\\brename\\b",name:"keyword.control.rename"},{match:"(?i)\\btop\\b",name:"keyword.control.top"},{match:"(?i)\\bview\\b",name:"keyword.control.view"},{match:"(?i)\\bwhere\\b",name:"keyword.control.where"},{match:"(?i)\\bdeclare\\b",name:"keyword.control.declare"}]},keywords:{patterns:[{match:"(?i)\\bis\\b",name:"keyword.control.is"},{match:"(?i)\\bon\\b",name:"keyword.control.on"},{match:"(?i)\\bnot\\b",name:"keyword.other.not"},{match:"(?i)\\bor\\b",name:"keyword.other.or"},{match:"(?i)\\bdesc\\b",name:"keyword.control.desc"},{match:"(?i)\\bby\\b",name:"keyword.control.by"},{match:"(?i)\\band\\b",name:"keyword.other.and"},{match:"(?i)\\basc\\b",name:"keyword.control.asc"},{match:"(?i)\\bfor\\b",name:"keyword.other.for"},{match:"(?i)\\belse\\b",name:"keyword.other.else"},{match:"(?i)\\bto\\b",name:"keyword.other.to"},{match:"(?i)\\bwhen\\b",name:"keyword.other.when"},{match:"(?i)\\bpick\\b",name:"keyword.other.pick"},{match:"(?i)\\bimport\\b",name:"keyword.control.import"}]}}},dCe={...FE,patterns:[...FE.patterns,{include:"#docvar"}],repository:{...FE.repository,docvar:{patterns:[{match:"\\<\\<[^(\\>\\>)]*\\>\\>",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"markup.italic.markdown"}]}}},pCe={name:"Malloy SQL",scopeName:"source.malloy-sql",patterns:[{include:"#malloysql-sql"}],repository:{"malloysql-sql":{beginCaptures:{0:{name:"entity.other.attribute.malloy-sql"},1:{name:"entity.other.attribute.malloy-sql"},3:{name:"comment.line.double-slash"}},name:"meta.embedded.block.malloysql.sql",patterns:[{include:"#comments"},{begin:"%{",end:"}%",beginCaptures:{0:{name:"punctuation.definition.malloy-sql"}},endCaptures:{0:{name:"punctuation.definition.malloy-sql"}},name:"meta.embedded.block.malloy",patterns:[{include:"source.malloy"}]},{include:"source.sql"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]}}},fCe="github-light",hCe=rCe({engine:B9(As(()=>import("./wasm-DQxwEHae.es-CG6Dc4jp.js"),[])),themes:[uCe],langs:[iCe,oCe,cCe,{name:"malloy",scopeName:"source.malloy",embeddedLangs:["sql"],...dCe},{name:"malloysql",scopeName:"source.malloy-sql",embeddedLangs:["sql"],...pCe}]});async function Sv(e,t){return(await hCe).codeToHtml(e,{lang:t,theme:fCe})}function Ba(e){const{server:t}=rr(),n={...e,queryKey:[...e.queryKey,t],queryFn:async()=>{try{return await e.queryFn()}catch(r){if(r&&typeof r=="object"&&"response"in r){const a=r;if(a.response?.data){const o=new Error(a.response.data.message||a.message);throw o.status=a.response.status,o.data=a.response.data,o}}throw r}},retry:!1,throwOnError:!1};return Wte(n,e_)}function ci(e){const t={...e,mutationFn:async n=>{try{return await e.mutationFn(n)}catch(r){if(r&&typeof r=="object"&&"response"in r){const a=r;if(a.response?.data){const o=new Error(a.response.data.message||a.message);throw o.status=a.response.status,o.data=a.response.data,o}}throw r}},retry:!1,throwOnError:!1};return Gte(t,e_)}const Ar=e=>{const t=new URL(e),n={};if(t.protocol!=="publisher:")throw new Error(`Failed to parse resource URI: ${e}`);const r=(t.hostname+t.pathname).split("/");for(let a=0;a<r.length;a+=2){const o=r[a];o==="projects"?n.projectName=decodeURI(r[a+1])||void 0:o==="packages"?n.packageName=decodeURI(r[a+1])||void 0:o==="connections"?n.connectionName=decodeURI(r[a+1])||void 0:o==="models"&&(n.modelPath=decodeURI(r.slice(a+1).join("/"))||void 0)}if(n.versionId=t.searchParams.get("versionId")||void 0,!n.projectName)throw new Error(`Failed to parse resource URI: ${e}`);return n},dA=e=>{if(!e.projectName)throw new Error(`Failed to encode resource URI, missing project name: ${e}`);let t=`publisher://projects/${e.projectName}`;return e.packageName&&(t+=`/packages/${e.packageName}`),e.connectionName&&(t+=`/connections/${e.connectionName}`),e.modelPath&&(t+=`/models/${e.modelPath}`),e.packageName&&e.versionId&&(t+=`?versionId=${e.versionId}`),t};function mB({sourceAndPaths:e,selectedSourceIndex:t,existingQuery:n,onQueryChange:r,onSourceChange:a,resourceUri:o}){return Je.useEffect(()=>{a&&a(t)},[t,a]),y.jsx(__,{children:y.jsxs(QG,{spacing:2,component:"section",children:[y.jsx(gCe,{sourceAndPath:e[t],existingQuery:n,onChange:s=>{r&&r(s)},resourceUri:o}),y.jsx(zW,{height:"5px"})]})})}function x0(){return{query:void 0,malloyQuery:void 0,malloyResult:void 0}}function mCe({sourceAndPath:e,onChange:t,existingQuery:n,explorerComponents:r,QueryBuilder:a,resourceUri:o}){const[s,i]=Je.useState(n||x0()),[c,u]=Je.useState(void 0);Je.useEffect(()=>{n&&i(n)},[n]);const[p,f]=Je.useState([]),{MalloyExplorerProvider:g,QueryPanel:m,ResizableCollapsiblePanel:v,ResultPanel:C,SourcePanel:x}=r;Je.useEffect(()=>{t&&t(s)},[t,s]);const{projectName:S,packageName:w,versionId:E}=Ar(o),{apiClients:D}=rr(),A=ci({mutationFn:()=>{const H=typeof s?.malloyQuery=="string"?s.malloyQuery:new a.ASTQuery({source:e.sourceInfo,query:s?.malloyQuery}).toMalloy();return u({executionState:"running",query:s?.malloyQuery,queryResolutionStartMillis:Date.now(),onCancel:()=>{A.reset(),u(void 0)},response:{result:{}}}),i({...s,query:H}),D.models.executeQueryModel(S,w,e.modelPath,{query:H,sourceName:void 0,queryName:void 0,versionId:E})},onSuccess:H=>{if(H){const F=JSON.parse(H.data.result);i({...s,malloyResult:F}),u(z=>z?{...z,executionState:"finished",response:{result:F}}:void 0)}},onError:H=>{u(void 0),console.error("Query execution error:",H)}}),[R,$]=Je.useState(e.sourceInfo.name);Je.useEffect(()=>{R!==e.sourceInfo.name&&($(e.sourceInfo.name),i(x0()),u(void 0))},[e,R]);const j=Je.useCallback(H=>{i({...s,malloyQuery:H,malloyResult:void 0})},[s]);return R!==e.sourceInfo.name?y.jsx("div",{children:"Loading..."}):y.jsx(mF,{sx:{border:"1px solid #e0e0e0",borderRadius:"8px",overflow:"hidden"},children:y.jsx(g,{source:e.sourceInfo,query:s?.malloyQuery,topValues:[],onFocusedNestViewPathChange:f,focusedNestViewPath:p,onQueryChange:j,children:y.jsxs("div",{style:{display:"flex",height:"100%",overflowY:"auto"},children:[y.jsx(v,{isInitiallyExpanded:!0,initialWidth:180,minWidth:180,icon:"database",title:e.sourceInfo.name,children:y.jsx(x,{onRefresh:()=>i(x0())})}),y.jsx(v,{isInitiallyExpanded:!0,initialWidth:280,minWidth:280,icon:"filterSliders",title:"Query",children:y.jsx(m,{runQuery:()=>{console.log(`running query with: ${s?.malloyQuery}`);try{A.mutate()}catch(H){console.error("Error running query:",H)}}})}),y.jsx(C,{source:e.sourceInfo,draftQuery:s?.malloyQuery,setDraftQuery:H=>i({...s,malloyQuery:H}),submittedQuery:c,options:{showRawQuery:!0}})]})})},e.sourceInfo.name)}function gCe(e){const[t,n]=T.useState(null),[r,a]=T.useState(null),[o,s]=T.useState(!0);return T.useEffect(()=>{let i=!0;return Promise.all([As(()=>import("./index-x9S1fsYn.js"),__vite__mapDeps([0,1,2])),As(()=>import("./index-DNCvL_5f.js").then(c=>c.i),[])]).then(([c,u])=>{i&&(n(c),a(u),s(!1))}).catch(c=>{console.error("Failed to load Malloy components:",c),i&&s(!1)}),()=>{i=!1}},[]),o||!t||!r?y.jsx(Gle,{children:y.jsx(mF,{children:y.jsx("div",{style:{alignItems:"center",justifyContent:"center",height:"200px",color:"#666"},children:"Loading explorer..."})})}):y.jsx(mCe,{...e,explorerComponents:t,QueryBuilder:r,resourceUri:e.resourceUri})}function io({text:e,size:t=20,color:n="primary",thickness:r=3.6,centered:a=!0,spacing:o=2,textVariant:s="body2"}){const i=y.jsxs(jt,{sx:{display:"flex",flexDirection:"column",alignItems:"center",gap:o},children:[y.jsx(Xv,{size:t,color:n,thickness:r}),e&&y.jsx(gt,{variant:s,color:"text.secondary",children:e})]});return a?y.jsx(jt,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",width:"100%"},children:i}):i}const yCe=T.lazy(()=>Promise.resolve().then(()=>WNe));function K1({result:e,maxHeight:t,maxResultSize:n=0}){const r=T.useRef(null),[a,o]=T.useState(t),[s,i]=T.useState(!1);if(!e)return null;if(n>0&&e.length>n&&!s)return y.jsxs(jt,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2,p:4,backgroundColor:"#fafafa",border:"1px solid",borderColor:"#e0e0e0",borderRadius:1},children:[y.jsx(Wre,{sx:{fontSize:48,color:"#757575"}}),y.jsx(gt,{variant:"h6",color:"text.secondary",align:"center",children:"Processing large results may cause browser performance issues. Proceed?"}),y.jsx(wo,{variant:"contained",color:"primary",onClick:()=>i(!0),children:"Proceed"})]});const c=y.jsx(io,{text:"Loading...",centered:!0,size:32}),u=Math.min(t,a);return y.jsx(jt,{ref:r,sx:{position:"relative",height:"auto",border:"0px",borderRadius:0,overflow:"hidden"},children:e&&y.jsx(T.Suspense,{fallback:c,children:y.jsx(yCe,{result:e,height:u,onSizeChange:o})})})}function bCe({cell:e,sourceAndPaths:t,resourceUri:n,onQueryChange:r,onSourceChange:a}){const o={query:e.value,malloyResult:e.result?JSON.parse(e.result):void 0,malloyQuery:e.queryInfo?JSON.parse(e.queryInfo):void 0},s=t.findIndex(i=>i.sourceInfo.name===e.sourceName);return y.jsx(mB,{resourceUri:n,sourceAndPaths:t,selectedSourceIndex:s>=0?s:0,existingQuery:o,onQueryChange:r,onSourceChange:a})}function vCe({cell:e,editingMalloy:t,editingMarkdown:n,sourceAndPaths:r,resourceUri:a,onCellChange:o,onClose:s,onEdit:i,onDelete:c,addButtonCallback:u}){const[p,f]=T.useState(e.value),[g,m]=Je.useState(!1),[v,C]=Je.useState(!1),[x,S]=Je.useState(),[w]=Je.useState(),[E,D]=Je.useState(x0()),[A,R]=Je.useState(!1),[$,j]=Je.useState(e.sourceName?r.findIndex(G=>G.sourceInfo.name===e.sourceName):0);T.useEffect(()=>{e.isMarkdown||Sv(e.value,"malloy").then(G=>{S(G)})},[e]),Je.useEffect(()=>{document.documentElement.setAttribute("data-color-mode","light")});const[H,F]=T.useState(!1),z=()=>{c(),F(!1)},k=r.length===0,P=Je.useCallback(()=>{const G=r[$],K=G?.modelPath||e.modelPath||"",U=G?.sourceInfo.name||e.sourceName||"";o({...e,value:e.isMarkdown?p:E.query,result:E.malloyResult?JSON.stringify(E.malloyResult):void 0,queryInfo:E.malloyQuery?JSON.stringify(E.malloyQuery):void 0,sourceName:U,modelPath:K})},[e,p,E,o,$,r]),N=y.jsx(vo,{title:"Delete Cell",children:y.jsx(kr,{size:"small",onClick:()=>F(!0),children:y.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:y.jsx("path",{d:"M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2m2 0v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14zM10 11v6M14 11v6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}),B=y.jsxs(sc,{open:H,onClose:()=>F(!1),children:[y.jsx(lc,{children:"Confirm Delete"}),y.jsx(ic,{children:y.jsx(gt,{children:"Are you sure you want to delete this cell?"})}),y.jsxs(lL,{children:[y.jsx(wo,{onClick:()=>F(!1),children:"Cancel"}),y.jsx(wo,{onClick:z,color:"error",children:"Delete"})]})]}),L=()=>{P(),s()},V=e.isMarkdown?y.jsxs(y.Fragment,{children:[n?y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}):y.jsx(vo,{title:"Edit",children:y.jsx(kr,{size:"small",onClick:i,children:y.jsx(aP,{})})}),!n&&N]}):y.jsxs(y.Fragment,{children:[!t&&y.jsx(vo,{title:g?"Hide Code":"View Code",children:y.jsx(kr,{size:"small",onClick:()=>{m(!g)},children:y.jsx(gF,{})})}),!t&&e.result&&y.jsx(vo,{title:v?"Hide Embedding":"View Embedding",children:y.jsx(kr,{size:"small",onClick:()=>{C(!v)},children:y.jsx(A_,{})})}),t&&y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}),!t&&y.jsx(vo,{title:"Edit",children:y.jsx(kr,{size:"small",onClick:i,children:y.jsx(aP,{})})}),!t&&N]}),q=t||n,Y=n?y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}):t?y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}):null,I=A&&y.jsx(jt,{sx:{position:"absolute",top:"4px",right:"4px",display:"flex",gap:"8px",backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",borderRadius:"8px",padding:"2px 4px",boxShadow:1,zIndex:10},children:!q&&y.jsxs(y.Fragment,{children:[u(!0),u(!1),V]})||Y});return y.jsxs(ev,{sx:{position:"relative",marginTop:"5px",marginBottom:"5px",borderWidth:"1.5px",backgroundColor:"#fff",minHeight:"50px"},onMouseEnter:()=>R(!0),onMouseLeave:()=>{R(!1)},children:[I,e.isMarkdown?y.jsx(y.Fragment,{children:n?y.jsx(j9,{value:p,preview:"edit",autoFocus:!0,onChange:G=>{f(G),o({...e,value:G})},onBlur:()=>{P(),A||L()}}):y.jsx(jt,{sx:{px:.5,pt:0,mt:0,"& h1, & h2, & h3, & h4, & h5, & h6":{mt:.5,mb:.5},"& p":{mt:.5,mb:.5},"& ul, & ol":{mt:.5,mb:.5},"& li":{mt:0,mb:0},"& pre, & code":{mt:.5,mb:.5},"& blockquote":{mt:.5,mb:.5}},children:e.value?y.jsx(jt,{onClick:i,sx:{cursor:"pointer"},children:y.jsx(W0,{children:e.value})}):y.jsxs(jt,{onClick:i,sx:{cursor:"pointer"},children:[y.jsx(gt,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Markdown is empty"}),y.jsx(gt,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})})}):y.jsxs(y.Fragment,{children:[y.jsx(P0,{in:v,timeout:"auto",unmountOnExit:!0,children:y.jsx(ca,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:y.jsx(gt,{component:"div",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:w}})})}),y.jsx(P0,{in:g,timeout:"auto",unmountOnExit:!0,children:y.jsx(ca,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:y.jsx(gt,{component:"div",className:"content",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:x}})})}),t&&(k?y.jsxs(y.Fragment,{children:[y.jsx(gt,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"No Model Imports"}),y.jsx(gt,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Please add a model import above."})]}):y.jsx(bCe,{sourceAndPaths:r,resourceUri:a,onQueryChange:G=>{D(G)},onSourceChange:G=>{j(G)},cell:e})),!t&&e.result&&y.jsx(ev,{variant:"outlined",sx:{borderRadius:0},children:y.jsx(K1,{result:e.result,maxHeight:800})}),!t&&!e.result&&y.jsxs(jt,{onClick:i,sx:{cursor:"pointer"},children:[y.jsx(gt,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Explore is empty"}),y.jsx(gt,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})]}),H&&B]})}const gB=T.createContext(void 0);function xCe({children:e,workbookStorage:t}){const n=T.useMemo(()=>({workbookStorage:t}),[t]);return y.jsx(gB.Provider,{value:n,children:e})}function SCe(){const e=T.useContext(gB);if(!e)throw new Error("useWorkbookStorage must be used within a WorkbookStorageProvider");return e}const dc=dn(y.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})),CCe=dn(y.jsx("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zM7 9l1.41 1.41L11 7.83V16h2V7.83l2.59 2.58L17 9l-5-5z"}));function $a({error:e,context:t}){const n=e.data?.message||"Unknown Error";return y.jsxs(y.Fragment,{children:[t&&y.jsx(gt,{variant:"body2",sx:{p:"10px",m:"auto"},children:t}),y.jsx("pre",{style:{whiteSpace:"pre-wrap",color:"red",padding:"10px",margin:"auto"},children:n})]})}function ECe({initialSelectedModels:e,onModelChange:t,resourceUri:n}){const{projectName:r,packageName:a,versionId:o}=Ar(n),{apiClients:s}=rr(),{data:i,isLoading:c,isSuccess:u,isError:p,error:f}=Ba({queryKey:["models",r,a,o],queryFn:()=>s.models.listModels(r,a,o)}),[g,m]=Je.useState(e||[]),[v,C]=Je.useState(null);Je.useEffect(()=>{m(e||[])},[e]);const x=E=>{const D=g.filter(A=>A!==E);m(D),t(D)},S=E=>{const D=[...g,E];m(D),t(D),C(null)};let w=[];return u&&i?.data&&(w=i.data.filter(E=>!g.includes(E.path)).map(E=>E.path)),p?y.jsx($a,{error:f,context:`${r} > ${a} > Model Picker`}):y.jsxs(y.Fragment,{children:[y.jsxs(cL,{fullWidth:!0,children:[c&&y.jsx(gt,{children:"Loading..."}),y.jsxs(ca,{direction:"row",spacing:1,children:[g.map(E=>y.jsx(Jb,{label:E,onDelete:()=>x(E),deleteIcon:y.jsx(dc,{}),sx:{marginBottom:"5px"}},E)),y.jsx(wo,{size:"small",startIcon:y.jsx(CCe,{}),onClick:E=>C(E.currentTarget),disabled:c||p||w.length===0,children:"Add Model"})]})]}),y.jsxs(Tg,{anchorEl:v,open:!!v,onClose:()=>C(null),children:[y.jsx(gt,{variant:"subtitle2",sx:{ml:1},children:"Models"}),y.jsx(pi,{}),w.length===0?y.jsx(cc,{disabled:!0,children:"No models available"}):w.map(E=>y.jsx(cc,{onClick:()=>S(E),children:y.jsx(gt,{variant:"body2",children:E})},E))]})]})}function TCe(){const e=U4();return(t,n)=>{if(!n||!n.metaKey&&!n.ctrlKey&&!n.shiftKey&&n.button!==1){e(t);return}const r=new URL(t,window.location.href).href;(n.metaKey||n.ctrlKey||n.button===1||n.shiftKey)&&window.open(r,"_blank")}}function $Pe({workbookPath:e,resourceUri:t}){const n=TCe(),{server:r,getAccessToken:a}=rr(),{apiClients:o}=rr(),{workbookStorage:s}=SCe(),{projectName:i,packageName:c}=Ar(t),[u,p]=Je.useState(void 0),[f,g]=Je.useState(void 0);if(!s)throw new Error("Workbook storage be provided via WorkbookStorageProvider");const[m,v]=Je.useState(),[C,x]=Je.useState(),[S,w]=Je.useState(),[E,D]=Je.useState([]),[A,R]=Je.useState(null),[$,j]=Je.useState(null),H=!!A,F=()=>{R(null),j(null)},z=(G,K)=>{m&&(v(m.insertCell(K,{isMarkdown:G,value:""})),G?w(K):x(K),F(),console.log("handleAddCell",G,K))},[k,P]=Je.useState(!1),N=()=>{P(!0)},B=async()=>{e&&s&&await s.deleteWorkbook(e).then(()=>{g(void 0),p(void 0)}).catch(G=>{g(`Error deleting workbook: ${G.message}`),p(void 0)}),P(!1),n(`/${i}/${c}`)},L=()=>{P(!1)},V=Je.useCallback(async()=>{if(!m){console.log("No workbook data ref");return}try{v(await m.saveWorkbook()),g(void 0),p("Workbook saved")}catch(G){g(`Error saving workbook: ${G.message}`),p(void 0)}},[m]);if(Je.useEffect(()=>{m&&(async()=>{const G=new Map(E.map(({modelPath:J,sourceInfos:Z})=>[J,Z])),K=[],U=[];for(const J of m.getModels())G.has(J)?K.push({modelPath:J,sourceInfos:G.get(J)}):(console.log("Fetching model from Publisher",J),U.push(o.models.getModel(i,c,J,void 0).then(Z=>({modelPath:J,sourceInfos:Z.data.sourceInfos.map(Q=>JSON.parse(Q))}))));if(U.length>0){const J=await Promise.all(U);D([...K,...J])}else D(K)})()},[a,m,c,i,r]),Je.useEffect(()=>{e&&cm.loadWorkbook(s,e).then(G=>{v(G)})},[e,s]),!m)return y.jsx("div",{children:"Loading..."});const q=G=>{const K=[];for(const U of G)for(const J of U.sourceInfos)K.push({modelPath:U.modelPath,sourceInfo:J});return K},Y=(G,K)=>y.jsx(wo,{size:"small",startIcon:y.jsx(k_,{}),onClick:()=>z(G,K),variant:"contained",sx:{backgroundColor:"#fff",color:U=>U.palette.mode==="dark"?U.palette.grey[100]:U.palette.grey[700],boxShadow:"none","&:hover":{backgroundColor:U=>U.palette.mode==="dark"?U.palette.grey[500]:U.palette.grey[300],boxShadow:"none"}},children:G?"Markdown":"Explore"}),I=y.jsxs(jt,{sx:{display:"flex",gap:1,justifyContent:"center",flex:2},children:[Y(!1,m.getCells().length),Y(!0,m.getCells().length)]});return y.jsxs(ev,{variant:"outlined",children:[y.jsxs(hF,{children:[y.jsx(jt,{sx:{mb:2},children:y.jsx(jt,{sx:{minHeight:"24px"},children:f?y.jsx(gt,{color:"error",variant:"body2",children:f}):u?y.jsx(gt,{color:"success",variant:"body2",children:u}):y.jsx("span",{children:" "})})}),y.jsxs(Fd,{sx:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},children:[y.jsxs(Fd,{direction:"row",spacing:1,alignItems:"center",children:[y.jsx(gt,{variant:"overline",sx:{fontSize:"13px",fontWeight:"bold",verticalAlign:"middle"},children:"Workbook"}),y.jsx(gt,{variant:"subtitle2",sx:{fontSize:"13px",fontWeight:"normal",verticalAlign:"middle",ml:1},children:`${e.workspace} > ${e.path}`})]}),y.jsxs(Fd,{sx:{display:"flex",flexDirection:"row",gap:1},children:[y.jsx(jt,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:y.jsx(wCe,{workbookData:m})}),y.jsxs(jt,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:[y.jsx(wo,{color:"error",onClick:N,size:"small",children:"Delete"}),y.jsxs(sc,{open:k,onClose:L,children:[y.jsx(lc,{children:"Delete Workbook"}),y.jsx(ic,{children:y.jsxs(RZ,{children:['Are you sure you want to delete the workbook "',e.path,'"? This action cannot be undone.']})}),y.jsxs(lL,{children:[y.jsx(wo,{onClick:L,color:"primary",size:"small",children:"Cancel"}),y.jsx(wo,{onClick:B,color:"error",autoFocus:!0,size:"small",children:"Delete"})]})]})]})]})]}),y.jsx(pi,{}),y.jsxs(Fd,{sx:{display:"flex",flexDirection:"row",width:"100%",mt:2},children:[y.jsx(jt,{sx:{flex:1},children:y.jsx(ECe,{initialSelectedModels:m.getModels(),onModelChange:G=>{v(m.setModels(G)),V()},resourceUri:t})}),y.jsx(jt,{sx:{flex:1}})]})]}),y.jsx(__,{children:y.jsxs(Fd,{children:[m.getCells().length===0&&y.jsxs(y.Fragment,{children:[y.jsx(gt,{sx:{textAlign:"center",p:2,variant:"subtitle2",fontWeight:"medium"},children:"Workbook is empty"}),y.jsx(gt,{variant:"body2",sx:{textAlign:"center",mb:2,variant:"body2"},children:"Click the + buttons to add a markdown or code cell."})]}),m.getCells().map((G,K)=>y.jsx(Je.Fragment,{children:y.jsx(vCe,{cell:G,resourceUri:t,addButtonCallback:U=>Y(U,K),sourceAndPaths:q(E),editingMarkdown:S===K,editingMalloy:C===K,onDelete:()=>{v(m.deleteCell(K)),V()},onCellChange:U=>{v(m.setCell(K,U))},onEdit:()=>{G.isMarkdown?w(K):x(K)},onClose:()=>{G.isMarkdown?w(void 0):x(void 0),V()}},`${K}-${G.isMarkdown}-${e.workspace}-${e.path}`)},`${K}-${m.getCells().length}`)),I,y.jsxs(Tg,{anchorEl:A,open:H,onClose:F,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:[y.jsx(cc,{onClick:()=>z(!0,$??0),children:"Add Markdown"}),y.jsx(cc,{onClick:()=>z(!1,$??0),children:"Add Malloy"})]}),y.jsx(Fd,{sx:{flexDirection:"row",justifyContent:"flex-end",p:1}})]})})]})}function wCe({workbookData:e}){const[t,n]=Je.useState(!1);return y.jsx(wo,{color:"primary",onClick:async()=>{if(!e)return;const r=e.toMalloyWorkbook();try{await navigator.clipboard.writeText(r),n(!0),setTimeout(()=>n(!1),1500)}catch{n(!1),alert("Failed to copy to clipboard")}},size:"small",children:t?"Copied!":"Export"})}const e5="Local";class kCe{async listWorkspaces(t){return Promise.resolve([{name:e5,description:"Stored locally- only accessible to this browser",writeable:!0}])}async listWorkbooks(t){const n=[];for(let r=0;r<localStorage.length;r++){const a=localStorage.key(r);n.push({path:a,workspace:e5})}return n}async getWorkbook(t){const n=localStorage.getItem(t.path);if(n===null)throw new Error(`Notebook not found at path: ${t}`);return n}async deleteWorkbook(t){if(localStorage.getItem(t.path)===null)throw new Error(`Notebook not found at path: ${t}`);localStorage.removeItem(t.path)}async saveWorkbook(t,n){localStorage.setItem(t.path,n)}async moveWorkbook(t,n){const r=localStorage.getItem(t.path);if(r===null)throw new Error(`Notebook not found at path: ${t.path}`);localStorage.setItem(n.path,r),localStorage.removeItem(t.path)}}const _Ce=e=>{const t=T.useRef({});return T.useEffect(()=>{t.current=e}),t.current};function t5({array1:e,array2:t,parser:n=r=>r}){return e&&t&&e.length===t.length&&e.every((r,a)=>n(r)===n(t[a]))}function n5(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function ACe(e={}){const{ignoreAccents:t=!0,ignoreCase:n=!0,limit:r,matchFrom:a="any",stringify:o,trim:s=!1}=e;return(i,{inputValue:c,getOptionLabel:u})=>{let p=s?c.trim():c;n&&(p=p.toLowerCase()),t&&(p=n5(p));const f=p?i.filter(g=>{let m=(o||u)(g);return n&&(m=m.toLowerCase()),t&&(m=n5(m)),a==="start"?m.startsWith(p):m.includes(p)}):i;return typeof r=="number"?f.slice(0,r):f}}const DCe=ACe(),r5=5,RCe=e=>e.current!==null&&e.current.parentElement?.contains(document.activeElement),MCe=[];function a5(e,t,n,r){if(t||e==null||r)return"";const a=n(e);return typeof a=="string"?a:""}function OCe(e){const{unstable_isActiveElementInListbox:t=RCe,unstable_classNamePrefix:n="Mui",autoComplete:r=!1,autoHighlight:a=!1,autoSelect:o=!1,blurOnSelect:s=!1,clearOnBlur:i=!e.freeSolo,clearOnEscape:c=!1,componentName:u="useAutocomplete",defaultValue:p=e.multiple?MCe:null,disableClearable:f=!1,disableCloseOnSelect:g=!1,disabled:m,disabledItemsFocusable:v=!1,disableListWrap:C=!1,filterOptions:x=DCe,filterSelectedOptions:S=!1,freeSolo:w=!1,getOptionDisabled:E,getOptionKey:D,getOptionLabel:A=De=>De.label??De,groupBy:R,handleHomeEndKeys:$=!e.freeSolo,id:j,includeInputInList:H=!1,inputValue:F,isOptionEqualToValue:z=(De,Oe)=>De===Oe,multiple:k=!1,onChange:P,onClose:N,onHighlightChange:B,onInputChange:L,onOpen:V,open:q,openOnFocus:Y=!1,options:I,readOnly:G=!1,renderValue:K,selectOnFocus:U=!e.freeSolo,value:J}=e,Z=Ps(j);let Q=A;Q=De=>{const Oe=A(De);return typeof Oe!="string"?String(Oe):Oe};const re=T.useRef(!1),te=T.useRef(!0),se=T.useRef(null),pe=T.useRef(null),[de,be]=T.useState(null),[oe,le]=T.useState(-1),Fe=a?0:-1,Ae=T.useRef(Fe),me=T.useRef(a5(p??J,k,Q)).current,[xe,Xe]=Ao({controlled:J,default:p,name:u}),[je,Ue]=Ao({controlled:F,default:me,name:u,state:"inputValue"}),[He,Dt]=T.useState(!1),Rt=T.useCallback((De,Oe,ut)=>{if(!(k?xe.length<Oe.length:Oe!==null)&&!i)return;const It=a5(Oe,k,Q,K);je!==It&&(Ue(It),L&&L(De,It,ut))},[Q,je,k,L,Ue,i,xe,K]),[bt,ge]=Ao({controlled:q,default:!1,name:u,state:"open"}),[Ce,Ge]=T.useState(!0),it=!k&&xe!=null&&je===Q(xe),at=bt&&!G,Ye=at?x(I.filter(De=>!(S&&(k?xe:[xe]).some(Oe=>Oe!==null&&z(De,Oe)))),{inputValue:it&&Ce?"":je,getOptionLabel:Q}):[],zt=_Ce({filteredOptions:Ye,value:xe,inputValue:je});T.useEffect(()=>{const De=xe!==zt.value;He&&!De||w&&!De||Rt(null,xe,"reset")},[xe,Rt,He,zt.value,w]);const Gt=bt&&Ye.length>0&&!G,rt=dt(De=>{if(De===-1)se.current.focus();else{const Oe=K?"data-item-index":"data-tag-index";de.querySelector(`[${Oe}="${De}"]`).focus()}});T.useEffect(()=>{k&&oe>xe.length-1&&(le(-1),rt(-1))},[xe,k,oe,rt]);function he(De,Oe){if(!pe.current||De<0||De>=Ye.length)return-1;let ut=De;for(;;){const It=pe.current.querySelector(`[data-option-index="${ut}"]`),Bt=v?!1:!It||It.disabled||It.getAttribute("aria-disabled")==="true";if(It&&It.hasAttribute("tabindex")&&!Bt)return ut;if(Oe==="next"?ut=(ut+1)%Ye.length:ut=(ut-1+Ye.length)%Ye.length,ut===De)return-1}}const Se=dt(({event:De,index:Oe,reason:ut})=>{if(Ae.current=Oe,Oe===-1?se.current.removeAttribute("aria-activedescendant"):se.current.setAttribute("aria-activedescendant",`${Z}-option-${Oe}`),B&&["mouse","keyboard","touch"].includes(ut)&&B(De,Oe===-1?null:Ye[Oe],ut),!pe.current)return;const It=pe.current.querySelector(`[role="option"].${n}-focused`);It&&(It.classList.remove(`${n}-focused`),It.classList.remove(`${n}-focusVisible`));let Bt=pe.current;if(pe.current.getAttribute("role")!=="listbox"&&(Bt=pe.current.parentElement.querySelector('[role="listbox"]')),!Bt)return;if(Oe===-1){Bt.scrollTop=0;return}const In=pe.current.querySelector(`[data-option-index="${Oe}"]`);if(In&&(In.classList.add(`${n}-focused`),ut==="keyboard"&&In.classList.add(`${n}-focusVisible`),Bt.scrollHeight>Bt.clientHeight&&ut!=="mouse"&&ut!=="touch")){const ar=In,ya=Bt.clientHeight+Bt.scrollTop,Qt=ar.offsetTop+ar.offsetHeight;Qt>ya?Bt.scrollTop=Qt-Bt.clientHeight:ar.offsetTop-ar.offsetHeight*(R?1.3:0)<Bt.scrollTop&&(Bt.scrollTop=ar.offsetTop-ar.offsetHeight*(R?1.3:0))}}),lt=dt(({event:De,diff:Oe,direction:ut="next",reason:It})=>{if(!at)return;const Bt=he((()=>{const In=Ye.length-1;if(Oe==="reset")return Fe;if(Oe==="start")return 0;if(Oe==="end")return In;const ar=Ae.current+Oe;return ar<0?ar===-1&&H?-1:C&&Ae.current!==-1||Math.abs(Oe)>1?0:In:ar>In?ar===In+1&&H?-1:C||Math.abs(Oe)>1?In:0:ar})(),ut);if(Se({index:Bt,reason:It,event:De}),r&&Oe!=="reset")if(Bt===-1)se.current.value=je;else{const In=Q(Ye[Bt]);se.current.value=In,In.toLowerCase().indexOf(je.toLowerCase())===0&&je.length>0&&se.current.setSelectionRange(je.length,In.length)}}),nt=!t5({array1:zt.filteredOptions,array2:Ye,parser:Q}),tn=()=>{const De=(Oe,ut)=>{const It=Oe?Q(Oe):"",Bt=ut?Q(ut):"";return It===Bt};if(Ae.current!==-1&&!t5({array1:zt.filteredOptions,array2:Ye,parser:Q})&&zt.inputValue===je&&(k?xe.length===zt.value.length&&zt.value.every((Oe,ut)=>Q(xe[ut])===Q(Oe)):De(zt.value,xe))){const Oe=zt.filteredOptions[Ae.current];if(Oe)return Ye.findIndex(ut=>Q(ut)===Q(Oe))}return-1},Pn=T.useCallback(()=>{if(!at)return;const De=tn();if(De!==-1){Ae.current=De;return}const Oe=k?xe[0]:xe;if(Ye.length===0||Oe==null){lt({diff:"reset"});return}if(pe.current){if(Oe!=null){const ut=Ye[Ae.current];if(k&&ut&&xe.findIndex(Bt=>z(ut,Bt))!==-1)return;const It=Ye.findIndex(Bt=>z(Bt,Oe));It===-1?lt({diff:"reset"}):Se({index:It});return}if(Ae.current>=Ye.length-1){Se({index:Ye.length-1});return}Se({index:Ae.current})}},[Ye.length,k?!1:xe,S,lt,Se,at,je,k]),Bn=dt(De=>{YT(pe,De),De&&Pn()});T.useEffect(()=>{nt&&Pn()},[Pn,nt]);const Yn=De=>{bt||(ge(!0),Ge(!0),V&&V(De))},lr=(De,Oe)=>{bt&&(ge(!1),N&&N(De,Oe))},mr=(De,Oe,ut,It)=>{if(k){if(xe.length===Oe.length&&xe.every((Bt,In)=>Bt===Oe[In]))return}else if(xe===Oe)return;P&&P(De,Oe,ut,It),Xe(Oe)},On=T.useRef(!1),Er=(De,Oe,ut="selectOption",It="options")=>{let Bt=ut,In=Oe;if(k){In=Array.isArray(xe)?xe.slice():[];const ar=In.findIndex(ya=>z(Oe,ya));ar===-1?In.push(Oe):It!=="freeSolo"&&(In.splice(ar,1),Bt="removeOption")}Rt(De,In,Bt),mr(De,In,Bt,{option:Oe}),!g&&(!De||!De.ctrlKey&&!De.metaKey)&&lr(De,Bt),(s===!0||s==="touch"&&On.current||s==="mouse"&&!On.current)&&se.current.blur()};function Mt(De,Oe){if(De===-1)return-1;let ut=De;for(;;){if(Oe==="next"&&ut===xe.length||Oe==="previous"&&ut===-1)return-1;const It=K?"data-item-index":"data-tag-index",Bt=de.querySelector(`[${It}="${ut}"]`);if(!Bt||!Bt.hasAttribute("tabindex")||Bt.disabled||Bt.getAttribute("aria-disabled")==="true")ut+=Oe==="next"?1:-1;else return ut}}const ce=(De,Oe)=>{if(!k)return;je===""&&lr(De,"toggleInput");let ut=oe;oe===-1?je===""&&Oe==="previous"&&(ut=xe.length-1):(ut+=Oe==="next"?1:-1,ut<0&&(ut=0),ut===xe.length&&(ut=-1)),ut=Mt(ut,Oe),le(ut),rt(ut)},ve=De=>{re.current=!0,Ue(""),L&&L(De,"","clear"),mr(De,k?[]:null,"clear")},_e=De=>Oe=>{if(De.onKeyDown&&De.onKeyDown(Oe),!Oe.defaultMuiPrevented&&(oe!==-1&&!["ArrowLeft","ArrowRight"].includes(Oe.key)&&(le(-1),rt(-1)),Oe.which!==229))switch(Oe.key){case"Home":at&&$&&(Oe.preventDefault(),lt({diff:"start",direction:"next",reason:"keyboard",event:Oe}));break;case"End":at&&$&&(Oe.preventDefault(),lt({diff:"end",direction:"previous",reason:"keyboard",event:Oe}));break;case"PageUp":Oe.preventDefault(),lt({diff:-r5,direction:"previous",reason:"keyboard",event:Oe}),Yn(Oe);break;case"PageDown":Oe.preventDefault(),lt({diff:r5,direction:"next",reason:"keyboard",event:Oe}),Yn(Oe);break;case"ArrowDown":Oe.preventDefault(),lt({diff:1,direction:"next",reason:"keyboard",event:Oe}),Yn(Oe);break;case"ArrowUp":Oe.preventDefault(),lt({diff:-1,direction:"previous",reason:"keyboard",event:Oe}),Yn(Oe);break;case"ArrowLeft":!k&&K?rt(0):ce(Oe,"previous");break;case"ArrowRight":!k&&K?rt(-1):ce(Oe,"next");break;case"Enter":if(Ae.current!==-1&&at){const ut=Ye[Ae.current],It=E?E(ut):!1;if(Oe.preventDefault(),It)return;Er(Oe,ut,"selectOption"),r&&se.current.setSelectionRange(se.current.value.length,se.current.value.length)}else w&&je!==""&&it===!1&&(k&&Oe.preventDefault(),Er(Oe,je,"createOption","freeSolo"));break;case"Escape":at?(Oe.preventDefault(),Oe.stopPropagation(),lr(Oe,"escape")):c&&(je!==""||k&&xe.length>0||K)&&(Oe.preventDefault(),Oe.stopPropagation(),ve(Oe));break;case"Backspace":if(k&&!G&&je===""&&xe.length>0){const ut=oe===-1?xe.length-1:oe,It=xe.slice();It.splice(ut,1),mr(Oe,It,"removeOption",{option:xe[ut]})}!k&&K&&!G&&(Xe(null),rt(-1));break;case"Delete":if(k&&!G&&je===""&&xe.length>0&&oe!==-1){const ut=oe,It=xe.slice();It.splice(ut,1),mr(Oe,It,"removeOption",{option:xe[ut]})}!k&&K&&!G&&(Xe(null),rt(-1));break}},qe=De=>{Dt(!0),Y&&!re.current&&Yn(De)},Ze=De=>{if(t(pe)){se.current.focus();return}Dt(!1),te.current=!0,re.current=!1,o&&Ae.current!==-1&&at?Er(De,Ye[Ae.current],"blur"):o&&w&&je!==""?Er(De,je,"blur","freeSolo"):i&&Rt(De,xe,"blur"),lr(De,"blur")},St=De=>{const Oe=De.target.value;je!==Oe&&(Ue(Oe),Ge(!1),L&&L(De,Oe,"input")),Oe===""?!f&&!k&&mr(De,null,"clear"):Yn(De)},kt=De=>{const Oe=Number(De.currentTarget.getAttribute("data-option-index"));Ae.current!==Oe&&Se({event:De,index:Oe,reason:"mouse"})},Et=De=>{Se({event:De,index:Number(De.currentTarget.getAttribute("data-option-index")),reason:"touch"}),On.current=!0},_t=De=>{const Oe=Number(De.currentTarget.getAttribute("data-option-index"));Er(De,Ye[Oe],"selectOption"),On.current=!1},yt=De=>Oe=>{const ut=xe.slice();ut.splice(De,1),mr(Oe,ut,"removeOption",{option:xe[De]})},ft=De=>{mr(De,null,"removeOption",{option:xe})},vt=De=>{bt?lr(De,"toggleInput"):Yn(De)},Xt=De=>{De.currentTarget.contains(De.target)&&De.target.getAttribute("id")!==Z&&De.preventDefault()},An=De=>{De.currentTarget.contains(De.target)&&(se.current.focus(),U&&te.current&&se.current.selectionEnd-se.current.selectionStart===0&&se.current.select(),te.current=!1)},Kn=De=>{!m&&(je===""||!bt)&&vt(De)};let Qn=w&&je.length>0;Qn=Qn||(k?xe.length>0:xe!==null);let Yt=Ye;return R&&(Yt=Ye.reduce((De,Oe,ut)=>{const It=R(Oe);return De.length>0&&De[De.length-1].group===It?De[De.length-1].options.push(Oe):De.push({key:ut,index:ut,group:It,options:[Oe]}),De},[])),m&&He&&Ze(),{getRootProps:(De={})=>({...De,onKeyDown:_e(De),onMouseDown:Xt,onClick:An}),getInputLabelProps:()=>({id:`${Z}-label`,htmlFor:Z}),getInputProps:()=>({id:Z,value:je,onBlur:Ze,onFocus:qe,onChange:St,onMouseDown:Kn,"aria-activedescendant":at?"":null,"aria-autocomplete":r?"both":"list","aria-controls":Gt?`${Z}-listbox`:void 0,"aria-expanded":Gt,autoComplete:"off",ref:se,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:m}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:ve}),getItemProps:({index:De=0}={})=>({...k&&{key:De},...K?{"data-item-index":De}:{"data-tag-index":De},tabIndex:-1,...!G&&{onDelete:k?yt(De):ft}}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:vt}),getTagProps:({index:De})=>({key:De,"data-tag-index":De,tabIndex:-1,...!G&&{onDelete:yt(De)}}),getListboxProps:()=>({role:"listbox",id:`${Z}-listbox`,"aria-labelledby":`${Z}-label`,ref:Bn,onMouseDown:De=>{De.preventDefault()}}),getOptionProps:({index:De,option:Oe})=>{const ut=(k?xe:[xe]).some(Bt=>Bt!=null&&z(Oe,Bt)),It=E?E(Oe):!1;return{key:D?.(Oe)??Q(Oe),tabIndex:-1,role:"option",id:`${Z}-option-${De}`,onMouseMove:kt,onClick:_t,onTouchStart:Et,"data-option-index":De,"aria-disabled":It,"aria-selected":ut}},id:Z,inputValue:je,value:xe,dirty:Qn,expanded:at&&de,popupOpen:at,focused:He||oe!==-1,anchorEl:de,setAnchorEl:be,focusedItem:oe,focusedTag:oe,groupedOptions:Yt}}const yB=Ne.oneOfType([Ne.func,Ne.object]);var ro="top",ds="bottom",ps="right",ao="left",pA="auto",qg=[ro,ds,ps,ao],Mp="start",ag="end",ICe="clippingParents",bB="viewport",Rh="popper",NCe="reference",o5=qg.reduce(function(e,t){return e.concat([t+"-"+Mp,t+"-"+ag])},[]),vB=[].concat(qg,[pA]).reduce(function(e,t){return e.concat([t,t+"-"+Mp,t+"-"+ag])},[]),PCe="beforeRead",LCe="read",$Ce="afterRead",FCe="beforeMain",jCe="main",BCe="afterMain",zCe="beforeWrite",UCe="write",HCe="afterWrite",qCe=[PCe,LCe,$Ce,FCe,jCe,BCe,zCe,UCe,HCe];function hi(e){return e?(e.nodeName||"").toLowerCase():null}function Oo(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Mu(e){var t=Oo(e).Element;return e instanceof t||e instanceof Element}function ss(e){var t=Oo(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function fA(e){if(typeof ShadowRoot>"u")return!1;var t=Oo(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function VCe(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},a=t.attributes[n]||{},o=t.elements[n];!ss(o)||!hi(o)||(Object.assign(o.style,r),Object.keys(a).forEach(function(s){var i=a[s];i===!1?o.removeAttribute(s):o.setAttribute(s,i===!0?"":i)}))})}function WCe(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var a=t.elements[r],o=t.attributes[r]||{},s=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),i=s.reduce(function(c,u){return c[u]="",c},{});!ss(a)||!hi(a)||(Object.assign(a.style,i),Object.keys(o).forEach(function(c){a.removeAttribute(c)}))})}}const GCe={name:"applyStyles",enabled:!0,phase:"write",fn:VCe,effect:WCe,requires:["computeStyles"]};function ui(e){return e.split("-")[0]}var bu=Math.max,Cv=Math.min,Op=Math.round;function kw(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function xB(){return!/^((?!chrome|android).)*safari/i.test(kw())}function Ip(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),a=1,o=1;t&&ss(e)&&(a=e.offsetWidth>0&&Op(r.width)/e.offsetWidth||1,o=e.offsetHeight>0&&Op(r.height)/e.offsetHeight||1);var s=Mu(e)?Oo(e):window,i=s.visualViewport,c=!xB()&&n,u=(r.left+(c&&i?i.offsetLeft:0))/a,p=(r.top+(c&&i?i.offsetTop:0))/o,f=r.width/a,g=r.height/o;return{width:f,height:g,top:p,right:u+f,bottom:p+g,left:u,x:u,y:p}}function hA(e){var t=Ip(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function SB(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&fA(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function al(e){return Oo(e).getComputedStyle(e)}function YCe(e){return["table","td","th"].indexOf(hi(e))>=0}function Ec(e){return((Mu(e)?e.ownerDocument:e.document)||window.document).documentElement}function Q1(e){return hi(e)==="html"?e:e.assignedSlot||e.parentNode||(fA(e)?e.host:null)||Ec(e)}function s5(e){return!ss(e)||al(e).position==="fixed"?null:e.offsetParent}function KCe(e){var t=/firefox/i.test(kw()),n=/Trident/i.test(kw());if(n&&ss(e)){var r=al(e);if(r.position==="fixed")return null}var a=Q1(e);for(fA(a)&&(a=a.host);ss(a)&&["html","body"].indexOf(hi(a))<0;){var o=al(a);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||t&&o.willChange==="filter"||t&&o.filter&&o.filter!=="none")return a;a=a.parentNode}return null}function Vg(e){for(var t=Oo(e),n=s5(e);n&&YCe(n)&&al(n).position==="static";)n=s5(n);return n&&(hi(n)==="html"||hi(n)==="body"&&al(n).position==="static")?t:n||KCe(e)||t}function mA(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function Sm(e,t,n){return bu(e,Cv(t,n))}function QCe(e,t,n){var r=Sm(e,t,n);return r>n?n:r}function CB(){return{top:0,right:0,bottom:0,left:0}}function EB(e){return Object.assign({},CB(),e)}function TB(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var XCe=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,EB(typeof e!="number"?e:TB(e,qg))};function ZCe(e){var t,n=e.state,r=e.name,a=e.options,o=n.elements.arrow,s=n.modifiersData.popperOffsets,i=ui(n.placement),c=mA(i),u=[ao,ps].indexOf(i)>=0,p=u?"height":"width";if(!(!o||!s)){var f=XCe(a.padding,n),g=hA(o),m=c==="y"?ro:ao,v=c==="y"?ds:ps,C=n.rects.reference[p]+n.rects.reference[c]-s[c]-n.rects.popper[p],x=s[c]-n.rects.reference[c],S=Vg(o),w=S?c==="y"?S.clientHeight||0:S.clientWidth||0:0,E=C/2-x/2,D=f[m],A=w-g[p]-f[v],R=w/2-g[p]/2+E,$=Sm(D,R,A),j=c;n.modifiersData[r]=(t={},t[j]=$,t.centerOffset=$-R,t)}}function JCe(e){var t=e.state,n=e.options,r=n.element,a=r===void 0?"[data-popper-arrow]":r;a!=null&&(typeof a=="string"&&(a=t.elements.popper.querySelector(a),!a)||SB(t.elements.popper,a)&&(t.elements.arrow=a))}const eEe={name:"arrow",enabled:!0,phase:"main",fn:ZCe,effect:JCe,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Np(e){return e.split("-")[1]}var tEe={top:"auto",right:"auto",bottom:"auto",left:"auto"};function nEe(e,t){var n=e.x,r=e.y,a=t.devicePixelRatio||1;return{x:Op(n*a)/a||0,y:Op(r*a)/a||0}}function i5(e){var t,n=e.popper,r=e.popperRect,a=e.placement,o=e.variation,s=e.offsets,i=e.position,c=e.gpuAcceleration,u=e.adaptive,p=e.roundOffsets,f=e.isFixed,g=s.x,m=g===void 0?0:g,v=s.y,C=v===void 0?0:v,x=typeof p=="function"?p({x:m,y:C}):{x:m,y:C};m=x.x,C=x.y;var S=s.hasOwnProperty("x"),w=s.hasOwnProperty("y"),E=ao,D=ro,A=window;if(u){var R=Vg(n),$="clientHeight",j="clientWidth";if(R===Oo(n)&&(R=Ec(n),al(R).position!=="static"&&i==="absolute"&&($="scrollHeight",j="scrollWidth")),R=R,a===ro||(a===ao||a===ps)&&o===ag){D=ds;var H=f&&R===A&&A.visualViewport?A.visualViewport.height:R[$];C-=H-r.height,C*=c?1:-1}if(a===ao||(a===ro||a===ds)&&o===ag){E=ps;var F=f&&R===A&&A.visualViewport?A.visualViewport.width:R[j];m-=F-r.width,m*=c?1:-1}}var z=Object.assign({position:i},u&&tEe),k=p===!0?nEe({x:m,y:C},Oo(n)):{x:m,y:C};if(m=k.x,C=k.y,c){var P;return Object.assign({},z,(P={},P[D]=w?"0":"",P[E]=S?"0":"",P.transform=(A.devicePixelRatio||1)<=1?"translate("+m+"px, "+C+"px)":"translate3d("+m+"px, "+C+"px, 0)",P))}return Object.assign({},z,(t={},t[D]=w?C+"px":"",t[E]=S?m+"px":"",t.transform="",t))}function rEe(e){var t=e.state,n=e.options,r=n.gpuAcceleration,a=r===void 0?!0:r,o=n.adaptive,s=o===void 0?!0:o,i=n.roundOffsets,c=i===void 0?!0:i,u={placement:ui(t.placement),variation:Np(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,i5(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,i5(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const aEe={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:rEe,data:{}};var Fb={passive:!0};function oEe(e){var t=e.state,n=e.instance,r=e.options,a=r.scroll,o=a===void 0?!0:a,s=r.resize,i=s===void 0?!0:s,c=Oo(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&u.forEach(function(p){p.addEventListener("scroll",n.update,Fb)}),i&&c.addEventListener("resize",n.update,Fb),function(){o&&u.forEach(function(p){p.removeEventListener("scroll",n.update,Fb)}),i&&c.removeEventListener("resize",n.update,Fb)}}const sEe={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:oEe,data:{}};var iEe={left:"right",right:"left",bottom:"top",top:"bottom"};function S0(e){return e.replace(/left|right|bottom|top/g,function(t){return iEe[t]})}var lEe={start:"end",end:"start"};function l5(e){return e.replace(/start|end/g,function(t){return lEe[t]})}function gA(e){var t=Oo(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function yA(e){return Ip(Ec(e)).left+gA(e).scrollLeft}function cEe(e,t){var n=Oo(e),r=Ec(e),a=n.visualViewport,o=r.clientWidth,s=r.clientHeight,i=0,c=0;if(a){o=a.width,s=a.height;var u=xB();(u||!u&&t==="fixed")&&(i=a.offsetLeft,c=a.offsetTop)}return{width:o,height:s,x:i+yA(e),y:c}}function uEe(e){var t,n=Ec(e),r=gA(e),a=(t=e.ownerDocument)==null?void 0:t.body,o=bu(n.scrollWidth,n.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),s=bu(n.scrollHeight,n.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),i=-r.scrollLeft+yA(e),c=-r.scrollTop;return al(a||n).direction==="rtl"&&(i+=bu(n.clientWidth,a?a.clientWidth:0)-o),{width:o,height:s,x:i,y:c}}function bA(e){var t=al(e),n=t.overflow,r=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+r)}function wB(e){return["html","body","#document"].indexOf(hi(e))>=0?e.ownerDocument.body:ss(e)&&bA(e)?e:wB(Q1(e))}function Cm(e,t){var n;t===void 0&&(t=[]);var r=wB(e),a=r===((n=e.ownerDocument)==null?void 0:n.body),o=Oo(r),s=a?[o].concat(o.visualViewport||[],bA(r)?r:[]):r,i=t.concat(s);return a?i:i.concat(Cm(Q1(s)))}function _w(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function dEe(e,t){var n=Ip(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function c5(e,t,n){return t===bB?_w(cEe(e,n)):Mu(t)?dEe(t,n):_w(uEe(Ec(e)))}function pEe(e){var t=Cm(Q1(e)),n=["absolute","fixed"].indexOf(al(e).position)>=0,r=n&&ss(e)?Vg(e):e;return Mu(r)?t.filter(function(a){return Mu(a)&&SB(a,r)&&hi(a)!=="body"}):[]}function fEe(e,t,n,r){var a=t==="clippingParents"?pEe(e):[].concat(t),o=[].concat(a,[n]),s=o[0],i=o.reduce(function(c,u){var p=c5(e,u,r);return c.top=bu(p.top,c.top),c.right=Cv(p.right,c.right),c.bottom=Cv(p.bottom,c.bottom),c.left=bu(p.left,c.left),c},c5(e,s,r));return i.width=i.right-i.left,i.height=i.bottom-i.top,i.x=i.left,i.y=i.top,i}function kB(e){var t=e.reference,n=e.element,r=e.placement,a=r?ui(r):null,o=r?Np(r):null,s=t.x+t.width/2-n.width/2,i=t.y+t.height/2-n.height/2,c;switch(a){case ro:c={x:s,y:t.y-n.height};break;case ds:c={x:s,y:t.y+t.height};break;case ps:c={x:t.x+t.width,y:i};break;case ao:c={x:t.x-n.width,y:i};break;default:c={x:t.x,y:t.y}}var u=a?mA(a):null;if(u!=null){var p=u==="y"?"height":"width";switch(o){case Mp:c[u]=c[u]-(t[p]/2-n[p]/2);break;case ag:c[u]=c[u]+(t[p]/2-n[p]/2);break}}return c}function og(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=r===void 0?e.placement:r,o=n.strategy,s=o===void 0?e.strategy:o,i=n.boundary,c=i===void 0?ICe:i,u=n.rootBoundary,p=u===void 0?bB:u,f=n.elementContext,g=f===void 0?Rh:f,m=n.altBoundary,v=m===void 0?!1:m,C=n.padding,x=C===void 0?0:C,S=EB(typeof x!="number"?x:TB(x,qg)),w=g===Rh?NCe:Rh,E=e.rects.popper,D=e.elements[v?w:g],A=fEe(Mu(D)?D:D.contextElement||Ec(e.elements.popper),c,p,s),R=Ip(e.elements.reference),$=kB({reference:R,element:E,placement:a}),j=_w(Object.assign({},E,$)),H=g===Rh?j:R,F={top:A.top-H.top+S.top,bottom:H.bottom-A.bottom+S.bottom,left:A.left-H.left+S.left,right:H.right-A.right+S.right},z=e.modifiersData.offset;if(g===Rh&&z){var k=z[a];Object.keys(F).forEach(function(P){var N=[ps,ds].indexOf(P)>=0?1:-1,B=[ro,ds].indexOf(P)>=0?"y":"x";F[P]+=k[B]*N})}return F}function hEe(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=n.boundary,o=n.rootBoundary,s=n.padding,i=n.flipVariations,c=n.allowedAutoPlacements,u=c===void 0?vB:c,p=Np(r),f=p?i?o5:o5.filter(function(v){return Np(v)===p}):qg,g=f.filter(function(v){return u.indexOf(v)>=0});g.length===0&&(g=f);var m=g.reduce(function(v,C){return v[C]=og(e,{placement:C,boundary:a,rootBoundary:o,padding:s})[ui(C)],v},{});return Object.keys(m).sort(function(v,C){return m[v]-m[C]})}function mEe(e){if(ui(e)===pA)return[];var t=S0(e);return[l5(e),t,l5(t)]}function gEe(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var a=n.mainAxis,o=a===void 0?!0:a,s=n.altAxis,i=s===void 0?!0:s,c=n.fallbackPlacements,u=n.padding,p=n.boundary,f=n.rootBoundary,g=n.altBoundary,m=n.flipVariations,v=m===void 0?!0:m,C=n.allowedAutoPlacements,x=t.options.placement,S=ui(x),w=S===x,E=c||(w||!v?[S0(x)]:mEe(x)),D=[x].concat(E).reduce(function(J,Z){return J.concat(ui(Z)===pA?hEe(t,{placement:Z,boundary:p,rootBoundary:f,padding:u,flipVariations:v,allowedAutoPlacements:C}):Z)},[]),A=t.rects.reference,R=t.rects.popper,$=new Map,j=!0,H=D[0],F=0;F<D.length;F++){var z=D[F],k=ui(z),P=Np(z)===Mp,N=[ro,ds].indexOf(k)>=0,B=N?"width":"height",L=og(t,{placement:z,boundary:p,rootBoundary:f,altBoundary:g,padding:u}),V=N?P?ps:ao:P?ds:ro;A[B]>R[B]&&(V=S0(V));var q=S0(V),Y=[];if(o&&Y.push(L[k]<=0),i&&Y.push(L[V]<=0,L[q]<=0),Y.every(function(J){return J})){H=z,j=!1;break}$.set(z,Y)}if(j)for(var I=v?3:1,G=function(J){var Z=D.find(function(Q){var re=$.get(Q);if(re)return re.slice(0,J).every(function(te){return te})});if(Z)return H=Z,"break"},K=I;K>0;K--){var U=G(K);if(U==="break")break}t.placement!==H&&(t.modifiersData[r]._skip=!0,t.placement=H,t.reset=!0)}}const yEe={name:"flip",enabled:!0,phase:"main",fn:gEe,requiresIfExists:["offset"],data:{_skip:!1}};function u5(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function d5(e){return[ro,ps,ds,ao].some(function(t){return e[t]>=0})}function bEe(e){var t=e.state,n=e.name,r=t.rects.reference,a=t.rects.popper,o=t.modifiersData.preventOverflow,s=og(t,{elementContext:"reference"}),i=og(t,{altBoundary:!0}),c=u5(s,r),u=u5(i,a,o),p=d5(c),f=d5(u);t.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:u,isReferenceHidden:p,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":f})}const vEe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:bEe};function xEe(e,t,n){var r=ui(e),a=[ao,ro].indexOf(r)>=0?-1:1,o=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,s=o[0],i=o[1];return s=s||0,i=(i||0)*a,[ao,ps].indexOf(r)>=0?{x:i,y:s}:{x:s,y:i}}function SEe(e){var t=e.state,n=e.options,r=e.name,a=n.offset,o=a===void 0?[0,0]:a,s=vB.reduce(function(p,f){return p[f]=xEe(f,t.rects,o),p},{}),i=s[t.placement],c=i.x,u=i.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=s}const CEe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:SEe};function EEe(e){var t=e.state,n=e.name;t.modifiersData[n]=kB({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}const TEe={name:"popperOffsets",enabled:!0,phase:"read",fn:EEe,data:{}};function wEe(e){return e==="x"?"y":"x"}function kEe(e){var t=e.state,n=e.options,r=e.name,a=n.mainAxis,o=a===void 0?!0:a,s=n.altAxis,i=s===void 0?!1:s,c=n.boundary,u=n.rootBoundary,p=n.altBoundary,f=n.padding,g=n.tether,m=g===void 0?!0:g,v=n.tetherOffset,C=v===void 0?0:v,x=og(t,{boundary:c,rootBoundary:u,padding:f,altBoundary:p}),S=ui(t.placement),w=Np(t.placement),E=!w,D=mA(S),A=wEe(D),R=t.modifiersData.popperOffsets,$=t.rects.reference,j=t.rects.popper,H=typeof C=="function"?C(Object.assign({},t.rects,{placement:t.placement})):C,F=typeof H=="number"?{mainAxis:H,altAxis:H}:Object.assign({mainAxis:0,altAxis:0},H),z=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,k={x:0,y:0};if(R){if(o){var P,N=D==="y"?ro:ao,B=D==="y"?ds:ps,L=D==="y"?"height":"width",V=R[D],q=V+x[N],Y=V-x[B],I=m?-j[L]/2:0,G=w===Mp?$[L]:j[L],K=w===Mp?-j[L]:-$[L],U=t.elements.arrow,J=m&&U?hA(U):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:CB(),Q=Z[N],re=Z[B],te=Sm(0,$[L],J[L]),se=E?$[L]/2-I-te-Q-F.mainAxis:G-te-Q-F.mainAxis,pe=E?-$[L]/2+I+te+re+F.mainAxis:K+te+re+F.mainAxis,de=t.elements.arrow&&Vg(t.elements.arrow),be=de?D==="y"?de.clientTop||0:de.clientLeft||0:0,oe=(P=z?.[D])!=null?P:0,le=V+se-oe-be,Fe=V+pe-oe,Ae=Sm(m?Cv(q,le):q,V,m?bu(Y,Fe):Y);R[D]=Ae,k[D]=Ae-V}if(i){var me,xe=D==="x"?ro:ao,Xe=D==="x"?ds:ps,je=R[A],Ue=A==="y"?"height":"width",He=je+x[xe],Dt=je-x[Xe],Rt=[ro,ao].indexOf(S)!==-1,bt=(me=z?.[A])!=null?me:0,ge=Rt?He:je-$[Ue]-j[Ue]-bt+F.altAxis,Ce=Rt?je+$[Ue]+j[Ue]-bt-F.altAxis:Dt,Ge=m&&Rt?QCe(ge,je,Ce):Sm(m?ge:He,je,m?Ce:Dt);R[A]=Ge,k[A]=Ge-je}t.modifiersData[r]=k}}const _Ee={name:"preventOverflow",enabled:!0,phase:"main",fn:kEe,requiresIfExists:["offset"]};function AEe(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function DEe(e){return e===Oo(e)||!ss(e)?gA(e):AEe(e)}function REe(e){var t=e.getBoundingClientRect(),n=Op(t.width)/e.offsetWidth||1,r=Op(t.height)/e.offsetHeight||1;return n!==1||r!==1}function MEe(e,t,n){n===void 0&&(n=!1);var r=ss(t),a=ss(t)&&REe(t),o=Ec(t),s=Ip(e,a,n),i={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(r||!r&&!n)&&((hi(t)!=="body"||bA(o))&&(i=DEe(t)),ss(t)?(c=Ip(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=yA(o))),{x:s.left+i.scrollLeft-c.x,y:s.top+i.scrollTop-c.y,width:s.width,height:s.height}}function OEe(e){var t=new Map,n=new Set,r=[];e.forEach(function(o){t.set(o.name,o)});function a(o){n.add(o.name);var s=[].concat(o.requires||[],o.requiresIfExists||[]);s.forEach(function(i){if(!n.has(i)){var c=t.get(i);c&&a(c)}}),r.push(o)}return e.forEach(function(o){n.has(o.name)||a(o)}),r}function IEe(e){var t=OEe(e);return qCe.reduce(function(n,r){return n.concat(t.filter(function(a){return a.phase===r}))},[])}function NEe(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function PEe(e){var t=e.reduce(function(n,r){var a=n[r.name];return n[r.name]=a?Object.assign({},a,r,{options:Object.assign({},a.options,r.options),data:Object.assign({},a.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var p5={placement:"bottom",modifiers:[],strategy:"absolute"};function f5(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function LEe(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,a=t.defaultOptions,o=a===void 0?p5:a;return function(s,i,c){c===void 0&&(c=o);var u={placement:"bottom",orderedModifiers:[],options:Object.assign({},p5,o),modifiersData:{},elements:{reference:s,popper:i},attributes:{},styles:{}},p=[],f=!1,g={state:u,setOptions:function(C){var x=typeof C=="function"?C(u.options):C;v(),u.options=Object.assign({},o,u.options,x),u.scrollParents={reference:Mu(s)?Cm(s):s.contextElement?Cm(s.contextElement):[],popper:Cm(i)};var S=IEe(PEe([].concat(r,u.options.modifiers)));return u.orderedModifiers=S.filter(function(w){return w.enabled}),m(),g.update()},forceUpdate:function(){if(!f){var C=u.elements,x=C.reference,S=C.popper;if(f5(x,S)){u.rects={reference:MEe(x,Vg(S),u.options.strategy==="fixed"),popper:hA(S)},u.reset=!1,u.placement=u.options.placement,u.orderedModifiers.forEach(function(j){return u.modifiersData[j.name]=Object.assign({},j.data)});for(var w=0;w<u.orderedModifiers.length;w++){if(u.reset===!0){u.reset=!1,w=-1;continue}var E=u.orderedModifiers[w],D=E.fn,A=E.options,R=A===void 0?{}:A,$=E.name;typeof D=="function"&&(u=D({state:u,options:R,name:$,instance:g})||u)}}}},update:NEe(function(){return new Promise(function(C){g.forceUpdate(),C(u)})}),destroy:function(){v(),f=!0}};if(!f5(s,i))return g;g.setOptions(c).then(function(C){!f&&c.onFirstUpdate&&c.onFirstUpdate(C)});function m(){u.orderedModifiers.forEach(function(C){var x=C.name,S=C.options,w=S===void 0?{}:S,E=C.effect;if(typeof E=="function"){var D=E({state:u,name:x,instance:g,options:w}),A=function(){};p.push(D||A)}})}function v(){p.forEach(function(C){return C()}),p=[]}return g}}var $Ee=[sEe,TEe,aEe,GCe,CEe,yEe,_Ee,eEe,vEe],FEe=LEe({defaultModifiers:$Ee});function Pp(e){return typeof e=="string"}function _B(e,t,n){return e===void 0||Pp(e)?t:{...t,ownerState:{...t.ownerState,...n}}}function Ma(e,t=[]){if(e===void 0)return{};const n={};return Object.keys(e).filter(r=>r.match(/^on[A-Z]/)&&typeof e[r]=="function"&&!t.includes(r)).forEach(r=>{n[r]=e[r]}),n}function h5(e){if(e===void 0)return{};const t={};return Object.keys(e).filter(n=>!(n.match(/^on[A-Z]/)&&typeof e[n]=="function")).forEach(n=>{t[n]=e[n]}),t}function AB(e){const{getSlotProps:t,additionalProps:n,externalSlotProps:r,externalForwardedProps:a,className:o}=e;if(!t){const m=pt(n?.className,o,a?.className,r?.className),v={...n?.style,...a?.style,...r?.style},C={...n,...a,...r};return m.length>0&&(C.className=m),Object.keys(v).length>0&&(C.style=v),{props:C,internalRef:void 0}}const s=Ma({...a,...r}),i=h5(r),c=h5(a),u=t(s),p=pt(u?.className,n?.className,o,a?.className,r?.className),f={...u?.style,...n?.style,...a?.style,...r?.style},g={...u,...n,...c,...i};return p.length>0&&(g.className=p),Object.keys(f).length>0&&(g.style=f),{props:g,internalRef:u.ref}}function ts(e,t,n){return typeof e=="function"?e(t,n):e}function mn(e){const{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:a=!1,...o}=e,s=a?{}:ts(n,r),{props:i,internalRef:c}=AB({...o,externalSlotProps:s}),u=gn(c,s?.ref,e.additionalProps?.ref);return _B(t,{...i,ref:u},r)}function af(e){return parseInt(T.version,10)>=19?e?.props?.ref||null:e?.ref||null}function jEe(e){return typeof e=="function"?e():e}const DB=T.forwardRef(function(e,t){const{children:n,container:r,disablePortal:a=!1}=e,[o,s]=T.useState(null),i=gn(T.isValidElement(n)?af(n):null,t);if(ea(()=>{a||s(jEe(r)||document.body)},[r,a]),ea(()=>{if(o&&!a)return YT(t,o),()=>{YT(t,null)}},[t,o,a]),a){if(T.isValidElement(n)){const c={ref:i};return T.cloneElement(n,c)}return n}return o&&gg.createPortal(n,o)});function BEe(e){return Tt("MuiPopper",e)}xt("MuiPopper",["root"]);function zEe(e,t){if(t==="ltr")return e;switch(e){case"bottom-end":return"bottom-start";case"bottom-start":return"bottom-end";case"top-end":return"top-start";case"top-start":return"top-end";default:return e}}function Aw(e){return typeof e=="function"?e():e}function UEe(e){return e.nodeType!==void 0}const HEe=e=>{const{classes:t}=e;return Ct({root:["root"]},BEe,t)},qEe={},VEe=T.forwardRef(function(e,t){const{anchorEl:n,children:r,direction:a,disablePortal:o,modifiers:s,open:i,placement:c,popperOptions:u,popperRef:p,slotProps:f={},slots:g={},TransitionProps:m,ownerState:v,...C}=e,x=T.useRef(null),S=gn(x,t),w=T.useRef(null),E=gn(w,p),D=T.useRef(E);ea(()=>{D.current=E},[E]),T.useImperativeHandle(p,()=>w.current,[]);const A=zEe(c,a),[R,$]=T.useState(A),[j,H]=T.useState(Aw(n));T.useEffect(()=>{w.current&&w.current.forceUpdate()}),T.useEffect(()=>{n&&H(Aw(n))},[n]),ea(()=>{if(!j||!i)return;const N=V=>{$(V.placement)};let B=[{name:"preventOverflow",options:{altBoundary:o}},{name:"flip",options:{altBoundary:o}},{name:"onUpdate",enabled:!0,phase:"afterWrite",fn:({state:V})=>{N(V)}}];s!=null&&(B=B.concat(s)),u&&u.modifiers!=null&&(B=B.concat(u.modifiers));const L=FEe(j,x.current,{placement:A,...u,modifiers:B});return D.current(L),()=>{L.destroy(),D.current(null)}},[j,o,s,i,u,A]);const F={placement:R};m!==null&&(F.TransitionProps=m);const z=HEe(e),k=g.root??"div",P=mn({elementType:k,externalSlotProps:f.root,externalForwardedProps:C,additionalProps:{role:"tooltip",ref:S},ownerState:e,className:z.root});return y.jsx(k,{...P,children:typeof r=="function"?r(F):r})}),WEe=T.forwardRef(function(e,t){const{anchorEl:n,children:r,container:a,direction:o="ltr",disablePortal:s=!1,keepMounted:i=!1,modifiers:c,open:u,placement:p="bottom",popperOptions:f=qEe,popperRef:g,style:m,transition:v=!1,slotProps:C={},slots:x={},...S}=e,[w,E]=T.useState(!0),D=()=>{E(!1)},A=()=>{E(!0)};if(!i&&!u&&(!v||w))return null;let R;if(a)R=a;else if(n){const H=Aw(n);R=H&&UEe(H)?Yr(H).body:Yr(null).body}const $=!u&&i&&(!v||w)?"none":void 0,j=v?{in:u,onEnter:D,onExited:A}:void 0;return y.jsx(DB,{disablePortal:s,container:R,children:y.jsx(VEe,{anchorEl:n,direction:o,disablePortal:s,modifiers:c,ref:t,open:v?!w:u,placement:p,popperOptions:f,popperRef:g,slotProps:C,slots:x,...S,style:{position:"fixed",top:0,left:0,display:$,...m},TransitionProps:j,children:r})})}),GEe=we(WEe,{name:"MuiPopper",slot:"Root"})({}),vA=T.forwardRef(function(e,t){const n=gs(),r=on({props:e,name:"MuiPopper"}),{anchorEl:a,component:o,components:s,componentsProps:i,container:c,disablePortal:u,keepMounted:p,modifiers:f,open:g,placement:m,popperOptions:v,popperRef:C,transition:x,slots:S,slotProps:w,...E}=r,D=S?.root??s?.Root,A={anchorEl:a,container:c,disablePortal:u,keepMounted:p,modifiers:f,open:g,placement:m,popperOptions:v,popperRef:C,transition:x,...E};return y.jsx(GEe,{as:o,direction:n?"rtl":"ltr",slots:{root:D},slotProps:w??i,...A,ref:t})});function YEe(e){return Tt("MuiListSubheader",e)}xt("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);const KEe=e=>{const{classes:t,color:n,disableGutters:r,inset:a,disableSticky:o}=e,s={root:["root",n!=="default"&&`color${tt(n)}`,!r&&"gutters",a&&"inset",!o&&"sticky"]};return Ct(s,YEe,t)},QEe=we("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.color!=="default"&&t[`color${tt(n.color)}`],!n.disableGutters&&t.gutters,n.inset&&t.inset,!n.disableSticky&&t.sticky]}})(un(({theme:e})=>({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(e.vars||e).palette.text.secondary,fontFamily:e.typography.fontFamily,fontWeight:e.typography.fontWeightMedium,fontSize:e.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(e.vars||e).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:({ownerState:t})=>!t.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:t})=>t.inset,style:{paddingLeft:72}},{props:({ownerState:t})=>!t.disableSticky,style:{position:"sticky",top:0,zIndex:1,backgroundColor:(e.vars||e).palette.background.paper}}]}))),Dw=T.forwardRef(function(e,t){const n=on({props:e,name:"MuiListSubheader"}),{className:r,color:a="default",component:o="li",disableGutters:s=!1,disableSticky:i=!1,inset:c=!1,...u}=n,p={...n,color:a,component:o,disableGutters:s,disableSticky:i,inset:c},f=KEe(p);return y.jsx(QEe,{as:o,className:pt(f.root,r),ref:t,ownerState:p,...u})});Dw&&(Dw.muiSkipListHighlight=!0);function XEe(e){return Tt("MuiPaper",e)}xt("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"]);const ZEe=e=>{const{square:t,elevation:n,variant:r,classes:a}=e,o={root:["root",r,!t&&"rounded",r==="elevation"&&`elevation${n}`]};return Ct(o,XEe,a)},JEe=we("div",{name:"MuiPaper",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[n.variant],!n.square&&t.rounded,n.variant==="elevation"&&t[`elevation${n.elevation}`]]}})(un(({theme:e})=>({backgroundColor:(e.vars||e).palette.background.paper,color:(e.vars||e).palette.text.primary,transition:e.transitions.create("box-shadow"),variants:[{props:({ownerState:t})=>!t.square,style:{borderRadius:e.shape.borderRadius}},{props:{variant:"outlined"},style:{border:`1px solid ${(e.vars||e).palette.divider}`}},{props:{variant:"elevation"},style:{boxShadow:"var(--Paper-shadow)",backgroundImage:"var(--Paper-overlay)"}}]}))),qu=T.forwardRef(function(e,t){const n=on({props:e,name:"MuiPaper"}),r=vc(),{className:a,component:o="div",elevation:s=1,square:i=!1,variant:c="elevation",...u}=n,p={...n,component:o,elevation:s,square:i,variant:c},f=ZEe(p);return y.jsx(JEe,{as:o,ownerState:p,className:pt(f.root,a),ref:t,...u,style:{...c==="elevation"&&{"--Paper-shadow":(r.vars||r).shadows[s],...r.vars&&{"--Paper-overlay":r.vars.overlays?.[s]},...!r.vars&&r.palette.mode==="dark"&&{"--Paper-overlay":`linear-gradient(${Z0("#fff",WT(s))}, ${Z0("#fff",WT(s))})`}},...u.style}})});function eTe(e){return typeof e.main=="string"}function tTe(e,t=[]){if(!eTe(e))return!1;for(const n of t)if(!e.hasOwnProperty(n)||typeof e[n]!="string")return!1;return!0}function Pa(e=[]){return([,t])=>t&&tTe(t,e)}function m5(e){try{return e.matches(":focus-visible")}catch{}return!1}const g5={};function RB(e,t){const n=T.useRef(g5);return n.current===g5&&(n.current=e(t)),n}class Ev{static create(){return new Ev}static use(){const t=RB(Ev.create).current,[n,r]=T.useState(!1);return t.shouldMount=n,t.setShouldMount=r,T.useEffect(t.mountEffect,[n]),t}constructor(){this.ref={current:null},this.mounted=null,this.didMount=!1,this.shouldMount=!1,this.setShouldMount=null}mount(){return this.mounted||(this.mounted=rTe(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}mountEffect=()=>{this.shouldMount&&!this.didMount&&this.ref.current!==null&&(this.didMount=!0,this.mounted.resolve())};start(...t){this.mount().then(()=>this.ref.current?.start(...t))}stop(...t){this.mount().then(()=>this.ref.current?.stop(...t))}pulsate(...t){this.mount().then(()=>this.ref.current?.pulsate(...t))}}function nTe(){return Ev.use()}function rTe(){let e,t;const n=new Promise((r,a)=>{e=r,t=a});return n.resolve=e,n.reject=t,n}function Rw(e,t){return Rw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,r){return n.__proto__=r,n},Rw(e,t)}function xA(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Rw(e,t)}function aTe(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function oTe(e,t){e.classList?e.classList.add(t):aTe(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function y5(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function sTe(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=y5(e.className,t):e.setAttribute("class",y5(e.className&&e.className.baseVal||"",t))}const b5={disabled:!1},Tv=Je.createContext(null);var MB=function(e){return e.scrollTop},Kh="unmounted",Zc="exited",Jc="entering",Yd="entered",Mw="exiting",bs=(function(e){xA(t,e);function t(r,a){var o;o=e.call(this,r,a)||this;var s=a,i=s&&!s.isMounting?r.enter:r.appear,c;return o.appearStatus=null,r.in?i?(c=Zc,o.appearStatus=Jc):c=Yd:r.unmountOnExit||r.mountOnEnter?c=Kh:c=Zc,o.state={status:c},o.nextCallback=null,o}t.getDerivedStateFromProps=function(r,a){var o=r.in;return o&&a.status===Kh?{status:Zc}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(r){var a=null;if(r!==this.props){var o=this.state.status;this.props.in?o!==Jc&&o!==Yd&&(a=Jc):(o===Jc||o===Yd)&&(a=Mw)}this.updateStatus(!1,a)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var r=this.props.timeout,a,o,s;return a=o=s=r,r!=null&&typeof r!="number"&&(a=r.exit,o=r.enter,s=r.appear!==void 0?r.appear:o),{exit:a,enter:o,appear:s}},n.updateStatus=function(r,a){if(r===void 0&&(r=!1),a!==null)if(this.cancelNextCallback(),a===Jc){if(this.props.unmountOnExit||this.props.mountOnEnter){var o=this.props.nodeRef?this.props.nodeRef.current:Wl.findDOMNode(this);o&&MB(o)}this.performEnter(r)}else this.performExit();else this.props.unmountOnExit&&this.state.status===Zc&&this.setState({status:Kh})},n.performEnter=function(r){var a=this,o=this.props.enter,s=this.context?this.context.isMounting:r,i=this.props.nodeRef?[s]:[Wl.findDOMNode(this),s],c=i[0],u=i[1],p=this.getTimeouts(),f=s?p.appear:p.enter;if(!r&&!o||b5.disabled){this.safeSetState({status:Yd},function(){a.props.onEntered(c)});return}this.props.onEnter(c,u),this.safeSetState({status:Jc},function(){a.props.onEntering(c,u),a.onTransitionEnd(f,function(){a.safeSetState({status:Yd},function(){a.props.onEntered(c,u)})})})},n.performExit=function(){var r=this,a=this.props.exit,o=this.getTimeouts(),s=this.props.nodeRef?void 0:Wl.findDOMNode(this);if(!a||b5.disabled){this.safeSetState({status:Zc},function(){r.props.onExited(s)});return}this.props.onExit(s),this.safeSetState({status:Mw},function(){r.props.onExiting(s),r.onTransitionEnd(o.exit,function(){r.safeSetState({status:Zc},function(){r.props.onExited(s)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(r,a){a=this.setNextCallback(a),this.setState(r,a)},n.setNextCallback=function(r){var a=this,o=!0;return this.nextCallback=function(s){o&&(o=!1,a.nextCallback=null,r(s))},this.nextCallback.cancel=function(){o=!1},this.nextCallback},n.onTransitionEnd=function(r,a){this.setNextCallback(a);var o=this.props.nodeRef?this.props.nodeRef.current:Wl.findDOMNode(this),s=r==null&&!this.props.addEndListener;if(!o||s){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var i=this.props.nodeRef?[this.nextCallback]:[o,this.nextCallback],c=i[0],u=i[1];this.props.addEndListener(c,u)}r!=null&&setTimeout(this.nextCallback,r)},n.render=function(){var r=this.state.status;if(r===Kh)return null;var a=this.props,o=a.children;a.in,a.mountOnEnter,a.unmountOnExit,a.appear,a.enter,a.exit,a.timeout,a.addEndListener,a.onEnter,a.onEntering,a.onEntered,a.onExit,a.onExiting,a.onExited,a.nodeRef;var s=Ot(a,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return Je.createElement(Tv.Provider,{value:null},typeof o=="function"?o(r,s):Je.cloneElement(Je.Children.only(o),s))},t})(Je.Component);bs.contextType=Tv;bs.propTypes={};function Ud(){}bs.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Ud,onEntering:Ud,onEntered:Ud,onExit:Ud,onExiting:Ud,onExited:Ud};bs.UNMOUNTED=Kh;bs.EXITED=Zc;bs.ENTERING=Jc;bs.ENTERED=Yd;bs.EXITING=Mw;var iTe=function(e,t){return e&&t&&t.split(" ").forEach(function(n){return oTe(e,n)})},jE=function(e,t){return e&&t&&t.split(" ").forEach(function(n){return sTe(e,n)})},SA=(function(e){xA(t,e);function t(){for(var r,a=arguments.length,o=new Array(a),s=0;s<a;s++)o[s]=arguments[s];return r=e.call.apply(e,[this].concat(o))||this,r.appliedClasses={appear:{},enter:{},exit:{}},r.onEnter=function(i,c){var u=r.resolveArguments(i,c),p=u[0],f=u[1];r.removeClasses(p,"exit"),r.addClass(p,f?"appear":"enter","base"),r.props.onEnter&&r.props.onEnter(i,c)},r.onEntering=function(i,c){var u=r.resolveArguments(i,c),p=u[0],f=u[1],g=f?"appear":"enter";r.addClass(p,g,"active"),r.props.onEntering&&r.props.onEntering(i,c)},r.onEntered=function(i,c){var u=r.resolveArguments(i,c),p=u[0],f=u[1],g=f?"appear":"enter";r.removeClasses(p,g),r.addClass(p,g,"done"),r.props.onEntered&&r.props.onEntered(i,c)},r.onExit=function(i){var c=r.resolveArguments(i),u=c[0];r.removeClasses(u,"appear"),r.removeClasses(u,"enter"),r.addClass(u,"exit","base"),r.props.onExit&&r.props.onExit(i)},r.onExiting=function(i){var c=r.resolveArguments(i),u=c[0];r.addClass(u,"exit","active"),r.props.onExiting&&r.props.onExiting(i)},r.onExited=function(i){var c=r.resolveArguments(i),u=c[0];r.removeClasses(u,"exit"),r.addClass(u,"exit","done"),r.props.onExited&&r.props.onExited(i)},r.resolveArguments=function(i,c){return r.props.nodeRef?[r.props.nodeRef.current,i]:[i,c]},r.getClassNames=function(i){var c=r.props.classNames,u=typeof c=="string",p=u&&c?c+"-":"",f=u?""+p+i:c[i],g=u?f+"-active":c[i+"Active"],m=u?f+"-done":c[i+"Done"];return{baseClassName:f,activeClassName:g,doneClassName:m}},r}var n=t.prototype;return n.addClass=function(r,a,o){var s=this.getClassNames(a)[o+"ClassName"],i=this.getClassNames("enter"),c=i.doneClassName;a==="appear"&&o==="done"&&c&&(s+=" "+c),o==="active"&&r&&MB(r),s&&(this.appliedClasses[a][o]=s,iTe(r,s))},n.removeClasses=function(r,a){var o=this.appliedClasses[a],s=o.base,i=o.active,c=o.done;this.appliedClasses[a]={},s&&jE(r,s),i&&jE(r,i),c&&jE(r,c)},n.render=function(){var r=this.props;r.classNames;var a=Ot(r,["classNames"]);return Je.createElement(bs,ne({},a,{onEnter:this.onEnter,onEntered:this.onEntered,onEntering:this.onEntering,onExit:this.onExit,onExiting:this.onExiting,onExited:this.onExited}))},t})(Je.Component);SA.defaultProps={classNames:""};SA.propTypes={};function lTe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function CA(e,t){var n=function(a){return t&&T.isValidElement(a)?t(a):a},r=Object.create(null);return e&&T.Children.map(e,function(a){return a}).forEach(function(a){r[a.key]=n(a)}),r}function cTe(e,t){e=e||{},t=t||{};function n(p){return p in t?t[p]:e[p]}var r=Object.create(null),a=[];for(var o in e)o in t?a.length&&(r[o]=a,a=[]):a.push(o);var s,i={};for(var c in t){if(r[c])for(s=0;s<r[c].length;s++){var u=r[c][s];i[r[c][s]]=n(u)}i[c]=n(c)}for(s=0;s<a.length;s++)i[a[s]]=n(a[s]);return i}function du(e,t,n){return n[t]!=null?n[t]:e.props[t]}function uTe(e,t){return CA(e.children,function(n){return T.cloneElement(n,{onExited:t.bind(null,n),in:!0,appear:du(n,"appear",e),enter:du(n,"enter",e),exit:du(n,"exit",e)})})}function dTe(e,t,n){var r=CA(e.children),a=cTe(t,r);return Object.keys(a).forEach(function(o){var s=a[o];if(T.isValidElement(s)){var i=o in t,c=o in r,u=t[o],p=T.isValidElement(u)&&!u.props.in;c&&(!i||p)?a[o]=T.cloneElement(s,{onExited:n.bind(null,s),in:!0,exit:du(s,"exit",e),enter:du(s,"enter",e)}):!c&&i&&!p?a[o]=T.cloneElement(s,{in:!1}):c&&i&&T.isValidElement(u)&&(a[o]=T.cloneElement(s,{onExited:n.bind(null,s),in:u.props.in,exit:du(s,"exit",e),enter:du(s,"enter",e)}))}}),a}var pTe=Object.values||function(e){return Object.keys(e).map(function(t){return e[t]})},fTe={component:"div",childFactory:function(e){return e}},Wg=(function(e){xA(t,e);function t(r,a){var o;o=e.call(this,r,a)||this;var s=o.handleExited.bind(lTe(o));return o.state={contextValue:{isMounting:!0},handleExited:s,firstRender:!0},o}var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(r,a){var o=a.children,s=a.handleExited,i=a.firstRender;return{children:i?uTe(r,s):dTe(r,o,s),firstRender:!1}},n.handleExited=function(r,a){var o=CA(this.props.children);r.key in o||(r.props.onExited&&r.props.onExited(a),this.mounted&&this.setState(function(s){var i=ne({},s.children);return delete i[r.key],{children:i}}))},n.render=function(){var r=this.props,a=r.component,o=r.childFactory,s=Ot(r,["component","childFactory"]),i=this.state.contextValue,c=pTe(this.state.children).map(o);return delete s.appear,delete s.enter,delete s.exit,a===null?Je.createElement(Tv.Provider,{value:i},c):Je.createElement(Tv.Provider,{value:i},Je.createElement(a,s,c))},t})(Je.Component);Wg.propTypes={};Wg.defaultProps=fTe;const hTe=[];function mTe(e){T.useEffect(e,hTe)}class EA{static create(){return new EA}currentId=null;start(t,n){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,n()},t)}clear=()=>{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)};disposeEffect=()=>this.clear}function X1(){const e=RB(EA.create).current;return mTe(e.disposeEffect),e}function gTe(e){const{className:t,classes:n,pulsate:r=!1,rippleX:a,rippleY:o,rippleSize:s,in:i,onExited:c,timeout:u}=e,[p,f]=T.useState(!1),g=pt(t,n.ripple,n.rippleVisible,r&&n.ripplePulsate),m={width:s,height:s,top:-(s/2)+o,left:-(s/2)+a},v=pt(n.child,p&&n.childLeaving,r&&n.childPulsate);return!i&&!p&&f(!0),T.useEffect(()=>{if(!i&&c!=null){const C=setTimeout(c,u);return()=>{clearTimeout(C)}}},[c,i,u]),y.jsx("span",{className:g,style:m,children:y.jsx("span",{className:v})})}const Ko=xt("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),Ow=550,yTe=80,bTe=yi`
337
+ `}));let x={type:"element",tagName:"span",properties:{class:"line"},children:[]},S=0;for(const w of v){let E={type:"element",tagName:"span",properties:{...w.htmlAttrs},children:[{type:"text",value:w.content}]};w.htmlStyle;const D=ASe(w.htmlStyle||cB(w));D&&(E.properties.style=D);for(const A of a)E=A?.span?.call(g,E,C+1,S,x,w)||E;i==="inline"?s.children.push(E):i==="classic"&&x.children.push(E),S+=w.content.length}if(i==="classic"){for(const w of a)x=w?.line?.call(g,x,C+1)||x;f.push(x),o.push(x)}}),i==="classic"){for(const v of a)p=v?.code?.call(g,p)||p;u.children.push(p);for(const v of a)u=v?.pre?.call(g,u)||u;s.children.push(u)}let m=s;for(const v of a)m=v?.root?.call(g,m)||m;return r&&Y1(m,r),m}function QSe(e){return e.map(t=>{const n=[];let r="",a=0;return t.forEach((o,s)=>{const i=!(o.fontStyle&&o.fontStyle&Yi.Underline);i&&o.content.match(/^\s+$/)&&t[s+1]?(a||(a=o.offset),r+=o.content):r?(i?n.push({...o,offset:a,content:r+o.content}):n.push({content:r,offset:a},o),a=0,r=""):n.push(o)}),n})}function XSe(e){return e.map(t=>t.flatMap(n=>{if(n.content.match(/^\s+$/))return n;const r=n.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return n;const[,a,o,s]=r;if(!a&&!s)return n;const i=[{...n,offset:n.offset+a.length,content:o}];return a&&i.unshift({content:a,offset:n.offset}),s&&i.push({content:s,offset:n.offset+a.length+o.length}),i}))}function ZSe(e,t,n){const r={meta:{},options:n,codeToHast:(o,s)=>xv(e,o,s),codeToTokens:(o,s)=>vv(e,o,s)};let a=xSe(xv(e,t,n,r));for(const o of yv(n))a=o.postprocess?.call(r,a,n)||a;return a}const X3={light:"#333333",dark:"#bbbbbb"},Z3={light:"#fffffe",dark:"#1e1e1e"},J3="__shiki_resolved";function uA(e){if(e?.[J3])return e;const t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:n,fg:r}=t;if(!n||!r){const i=t.settings?t.settings.find(c=>!c.name&&!c.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(n=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!n&&t?.colors?.["editor.background"]&&(n=t.colors["editor.background"]),r||(r=t.type==="light"?X3.light:X3.dark),n||(n=t.type==="light"?Z3.light:Z3.dark),t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let a=0;const o=new Map;function s(i){if(o.has(i))return o.get(i);a+=1;const c=`#${a.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${c}`]?s(i):(o.set(i,c),c)}t.settings=t.settings.map(i=>{const c=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!c&&!u)return i;const p={...i,settings:{...i.settings}};if(c){const f=s(i.settings.foreground);t.colorReplacements[f]=i.settings.foreground,p.settings.foreground=f}if(u){const f=s(i.settings.background);t.colorReplacements[f]=i.settings.background,p.settings.background=f}return p});for(const i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){const c=s(t.colors[i]);t.colorReplacements[c]=t.colors[i],t.colors[i]=c}return Object.defineProperty(t,J3,{enumerable:!1,writable:!1,value:!0}),t}async function fB(e){return Array.from(new Set((await Promise.all(e.filter(t=>!TSe(t)).map(async t=>await lB(t).then(n=>Array.isArray(n)?n:[n])))).flat()))}async function hB(e){return(await Promise.all(e.map(async t=>wSe(t)?null:uA(await lB(t))))).filter(t=>!!t)}class JSe extends xxe{constructor(t,n,r,a={}){super(t),this._resolver=t,this._themes=n,this._langs=r,this._alias=a,this._themes.map(o=>this.loadTheme(o)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){const n=uA(t);return n.name&&(this._resolvedThemes.set(n.name,n),this._loadedThemesCache=null),n}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let n=this._textmateThemeCache.get(t);n||(n=dv.createFromRawTheme(t),this._textmateThemeCache.set(t,n)),this._syncRegistry.setTheme(n)}getGrammar(t){if(this._alias[t]){const n=new Set([t]);for(;this._alias[t];){if(t=this._alias[t],n.has(t))throw new Ia(`Circular alias \`${Array.from(n).join(" -> ")} -> ${t}\``);n.add(t)}}return this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;const n=new Set([...this._langMap.values()].filter(o=>o.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);const r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);const a=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(a.name=t.name,this._resolvedGrammars.set(t.name,a),t.aliases&&t.aliases.forEach(o=>{this._alias[o]=t.name}),this._loadedLanguagesCache=null,n.size)for(const o of n)this._resolvedGrammars.delete(o.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(o.scopeName),this._syncRegistry?._grammars?.delete(o.scopeName),this.loadLanguage(this._langMap.get(o.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(const a of t)this.resolveEmbeddedLanguages(a);const n=Array.from(this._langGraph.entries()),r=n.filter(([a,o])=>!o);if(r.length){const a=n.filter(([o,s])=>s&&s.embeddedLangs?.some(i=>r.map(([c])=>c).includes(i))).filter(o=>!r.includes(o));throw new Ia(`Missing languages ${r.map(([o])=>`\`${o}\``).join(", ")}, required by ${a.map(([o])=>`\`${o}\``).join(", ")}`)}for(const[a,o]of n)this._resolver.addLanguage(o);for(const[a,o]of n)this.loadLanguage(o)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){if(this._langMap.set(t.name,t),this._langGraph.set(t.name,t),t.embeddedLangs)for(const n of t.embeddedLangs)this._langGraph.set(n,this._langMap.get(n))}}class eCe{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,n){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},n.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(n=>{this._langs.set(n,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(n=>{this._injections.get(n)||this._injections.set(n,[]),this._injections.get(n).push(t.scopeName)})}getInjections(t){const n=t.split(".");let r=[];for(let a=1;a<=n.length;a++){const o=n.slice(0,a).join(".");r=[...r,...this._injections.get(o)||[]]}return r}}let Dh=0;function tCe(e){Dh+=1,e.warnings!==!1&&Dh>=10&&Dh%10===0&&console.warn(`[Shiki] ${Dh} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new Ia("`engine` option is required for synchronous mode");const n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(uA),a=new eCe(e.engine,n),o=new JSe(a,r,n,e.langAlias);let s;function i(w){x();const E=o.getGrammar(typeof w=="string"?w:w.name);if(!E)throw new Ia(`Language \`${w}\` not found, you may need to load it first`);return E}function c(w){if(w==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};x();const E=o.getTheme(w);if(!E)throw new Ia(`Theme \`${w}\` not found, you may need to load it first`);return E}function u(w){x();const E=c(w);s!==w&&(o.setTheme(E),s=w);const D=o.getColorMap();return{theme:E,colorMap:D}}function p(){return x(),o.getLoadedThemes()}function f(){return x(),o.getLoadedLanguages()}function g(...w){x(),o.loadLanguages(w.flat(1))}async function m(...w){return g(await fB(w))}function v(...w){x();for(const E of w.flat(1))o.loadTheme(E)}async function C(...w){return x(),v(await hB(w))}function x(){if(t)throw new Ia("Shiki instance has been disposed")}function S(){t||(t=!0,o.dispose(),Dh-=1)}return{setTheme:u,getTheme:c,getLanguage:i,getLoadedThemes:p,getLoadedLanguages:f,loadLanguage:m,loadLanguageSync:g,loadTheme:C,loadThemeSync:v,dispose:S,[Symbol.dispose]:S}}async function nCe(e={}){e.loadWasm;const[t,n,r]=await Promise.all([hB(e.themes||[]),fB(e.langs||[]),e.engine||B9(e.loadWasm||N1e())]);return tCe({...e,themes:t,langs:n,engine:r})}async function rCe(e={}){const t=await nCe(e);return{getLastGrammarState:(...n)=>zSe(t,...n),codeToTokensBase:(n,r)=>cA(t,n,r),codeToTokensWithThemes:(n,r)=>pB(t,n,r),codeToTokens:(n,r)=>vv(t,n,r),codeToHast:(n,r)=>xv(t,n,r),codeToHtml:(n,r)=>ZSe(t,n,r),...t,getInternalContext:()=>t}}const aCe=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+-]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"comment":"the JSON object key","include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=\\\\})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"comment":"the JSON object value","include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^\\\\s\\\\}]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u[0-9a-fA-F]{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),oCe=[aCe],sCe=Object.freeze(JSON.parse('{"displayName":"SQL","name":"sql","patterns":[{"match":"((?<!@)@)\\\\b(\\\\w+)\\\\b","name":"text.variable"},{"match":"(\\\\[)[^\\\\]]*(\\\\])","name":"text.bracketed"},{"include":"#comments"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"},"5":{"name":"entity.name.function.sql"}},"match":"(?i:^\\\\s*(create(?:\\\\s+or\\\\s+replace)?)\\\\s+(aggregate|conversion|database|domain|function|group|(unique\\\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)([\'\\"`]?)(\\\\w+)\\\\4","name":"meta.create.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"}},"match":"(?i:^\\\\s*(drop)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"},"3":{"name":"entity.name.function.sql"},"4":{"name":"keyword.other.cascade.sql"}},"match":"(?i:\\\\s*(drop)\\\\s+(table)\\\\s+(\\\\w+)(\\\\s+cascade)?\\\\b)","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"}},"match":"(?i:^\\\\s*(alter)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)","name":"meta.alter.sql"},{"captures":{"1":{"name":"storage.type.sql"},"2":{"name":"storage.type.sql"},"3":{"name":"constant.numeric.sql"},"4":{"name":"storage.type.sql"},"5":{"name":"constant.numeric.sql"},"6":{"name":"storage.type.sql"},"7":{"name":"constant.numeric.sql"},"8":{"name":"constant.numeric.sql"},"9":{"name":"storage.type.sql"},"10":{"name":"constant.numeric.sql"},"11":{"name":"storage.type.sql"},"12":{"name":"storage.type.sql"},"13":{"name":"storage.type.sql"},"14":{"name":"constant.numeric.sql"},"15":{"name":"storage.type.sql"}},"match":"(?xi)\\n\\n\\t\\t\\t\\t# normal stuff, capture 1\\n\\t\\t\\t\\t \\\\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\\\b\\n\\n\\t\\t\\t\\t# numeric suffix, capture 2 + 3i\\n\\t\\t\\t\\t|\\\\b(bit\\\\svarying|character\\\\s(?:varying)?|tinyint|var\\\\schar|float|interval)\\\\((\\\\d+)\\\\)\\n\\n\\t\\t\\t\\t# optional numeric suffix, capture 4 + 5i\\n\\t\\t\\t\\t|\\\\b(char|number|varchar\\\\d?)\\\\b(?:\\\\((\\\\d+)\\\\))?\\n\\n\\t\\t\\t\\t# special case, capture 6 + 7i + 8i\\n\\t\\t\\t\\t|\\\\b(numeric|decimal)\\\\b(?:\\\\((\\\\d+),(\\\\d+)\\\\))?\\n\\n\\t\\t\\t\\t# special case, captures 9, 10i, 11\\n\\t\\t\\t\\t|\\\\b(times?)\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\swith(?:out)?\\\\stime\\\\szone\\\\b)?\\n\\n\\t\\t\\t\\t# special case, captures 12, 13, 14i, 15\\n\\t\\t\\t\\t|\\\\b(timestamp)(?:(s|tz))?\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\s(with|without)\\\\stime\\\\szone\\\\b)?\\n\\n\\t\\t\\t"},{"match":"(?i:\\\\b((?:primary|foreign)\\\\s+key|references|on\\\\sdelete(\\\\s+cascade)?|nocheck|check|constraint|collate|default)\\\\b)","name":"storage.modifier.sql"},{"match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.sql"},{"match":"(?i:\\\\b(select(\\\\s+(all|distinct))?|insert\\\\s+(ignore\\\\s+)?into|update|delete|from|set|where|group\\\\s+by|or|like|and|union(\\\\s+all)?|having|order\\\\s+by|limit|cross\\\\s+join|join|straight_join|(inner|(left|right|full)(\\\\s+outer)?)\\\\s+join|natural(\\\\s+(inner|(left|right|full)(\\\\s+outer)?))?\\\\s+join)\\\\b)","name":"keyword.other.DML.sql"},{"match":"(?i:\\\\b(on|off|((is\\\\s+)?not\\\\s+)?null)\\\\b)","name":"keyword.other.DDL.create.II.sql"},{"match":"(?i:\\\\bvalues\\\\b)","name":"keyword.other.DML.II.sql"},{"match":"(?i:\\\\b(begin(\\\\s+work)?|start\\\\s+transaction|commit(\\\\s+work)?|rollback(\\\\s+work)?)\\\\b)","name":"keyword.other.LUW.sql"},{"match":"(?i:\\\\b(grant(\\\\swith\\\\sgrant\\\\soption)?|revoke)\\\\b)","name":"keyword.other.authorization.sql"},{"match":"(?i:\\\\bin\\\\b)","name":"keyword.other.data-integrity.sql"},{"match":"(?i:^\\\\s*(comment\\\\s+on\\\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\\\s+.*?\\\\s+(is)\\\\s+)","name":"keyword.other.object-comments.sql"},{"match":"(?i)\\\\bAS\\\\b","name":"keyword.other.alias.sql"},{"match":"(?i)\\\\b(DESC|ASC)\\\\b","name":"keyword.other.order.sql"},{"match":"\\\\*","name":"keyword.operator.star.sql"},{"match":"[!<>]?=|<>|<|>","name":"keyword.operator.comparison.sql"},{"match":"-|\\\\+|/","name":"keyword.operator.math.sql"},{"match":"\\\\|\\\\|","name":"keyword.operator.concatenator.sql"},{"captures":{"1":{"name":"support.function.aggregate.sql"}},"match":"(?i)\\\\b(approx_count_distinct|approx_percentile_cont|approx_percentile_disc|avg|checksum_agg|count|count_big|group|grouping|grouping_id|max|min|sum|stdev|stdevp|var|varp)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.analytic.sql"}},"match":"(?i)\\\\b(cume_dist|first_value|lag|last_value|lead|percent_rank|percentile_cont|percentile_disc)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.bitmanipulation.sql"}},"match":"(?i)\\\\b(bit_count|get_bit|left_shift|right_shift|set_bit)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.conversion.sql"}},"match":"(?i)\\\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.collation.sql"}},"match":"(?i)\\\\b(collationproperty|tertiary_weights)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cryptographic.sql"}},"match":"(?i)\\\\b(asymkey_id|asymkeyproperty|certproperty|cert_id|crypt_gen_random|decryptbyasymkey|decryptbycert|decryptbykey|decryptbykeyautoasymkey|decryptbykeyautocert|decryptbypassphrase|encryptbyasymkey|encryptbycert|encryptbykey|encryptbypassphrase|hashbytes|is_objectsigned|key_guid|key_id|key_name|signbyasymkey|signbycert|symkeyproperty|verifysignedbycert|verifysignedbyasymkey)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cursor.sql"}},"match":"(?i)\\\\b(cursor_status)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datetime.sql"}},"match":"(?i)\\\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|datetrunc|eomonth|switchoffset|todatetimeoffset|isdate|date_bucket)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datatype.sql"}},"match":"(?i)\\\\b(datalength|ident_current|ident_incr|ident_seed|identity|sql_variant_property)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.expression.sql"}},"match":"(?i)\\\\b(coalesce|nullif)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.globalvar.sql"}},"match":"(?<!@)@@(?i)\\\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.json.sql"}},"match":"(?i)\\\\b(json|isjson|json_object|json_array|json_value|json_query|json_modify|json_path_exists)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.logical.sql"}},"match":"(?i)\\\\b(choose|iif|greatest|least)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.mathematical.sql"}},"match":"(?i)\\\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.metadata.sql"}},"match":"(?i)\\\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.ranking.sql"}},"match":"(?i)\\\\b(rank|dense_rank|ntile|row_number)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.rowset.sql"}},"match":"(?i)\\\\b(generate_series|opendatasource|openjson|openrowset|openquery|openxml|predict|string_split)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.security.sql"}},"match":"(?i)\\\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.string.sql"}},"match":"(?i)\\\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|nodes|patindex|quotename|replace|replicate|reverse|right|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.system.sql"}},"match":"(?i)\\\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.textimage.sql"}},"match":"(?i)\\\\b(patindex|textptr|textvalid)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"constant.other.database-name.sql"},"2":{"name":"constant.other.table-name.sql"}},"match":"(\\\\w+?)\\\\.(\\\\w+)"},{"include":"#strings"},{"include":"#regexps"},{"match":"\\\\b(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|add|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|array|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_drop|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blockers|blocksize|bmk|both|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|checksum|cleanup_policy|clear|clear_port|close|clustered|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|connection|containment|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\\\\\\\s+or\\\\\\\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime|datetime2|datetimeoffset|day(s)?|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare|decrypt|decrypt_a|decryption|default_database|default_fulltext_language|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filegrowth|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|for|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hour(s)?|http|identity|identity_value|if|ifnull|ignore|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|incremental|index|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|leading|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|log|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|match|matched|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minute(s)?|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|month|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|nested_triggers|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nonclustered|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|nulls|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|quarter|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replace|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|respect|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|scalar|schema|schemabinding|scoped|scroll|scroll_locks|sddl|second|secexpr|seconds|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|session|sessions|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|shortest_path|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablock|tablockx|take|tape|target|target_index|target_partition|target_recovery_time|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|to|top|torn_page_detection|track_columns_updated|trailing|tran|transaction|transfer|transform_noise_words|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|two_digit_year_cutoff|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|unique|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|value|values|varbinary|varchar|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|wait_at_low_priority|waitfor|webmethod|week|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|window|windows|with|within|within group|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|year|zone)\\\\b","name":"keyword.other.sql"},{"captures":{"1":{"name":"punctuation.section.scope.begin.sql"},"2":{"name":"punctuation.section.scope.end.sql"}},"comment":"Allow for special ↩ behavior","match":"(\\\\()(\\\\))","name":"meta.block.sql"}],"repository":{"comment-block":{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\*/","name":"comment.block","patterns":[{"include":"#comment-block"}]},"comments":{"patterns":[{"begin":"(^[ \\\\t]+)?(?=--)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[{"begin":"--","beginCaptures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\n","name":"comment.line.double-dash.sql"}]},{"begin":"(^[ \\\\t]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[]},{"include":"#comment-block"}]},"regexps":{"patterns":[{"begin":"/(?=\\\\S.*/)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"/","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.sql","patterns":[{"include":"#string_interpolation"},{"match":"\\\\\\\\/","name":"constant.character.escape.slash.sql"}]},{"begin":"%r\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"comment":"We should probably handle nested bracket pairs!?! -- Allan","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.modr.sql","patterns":[{"include":"#string_interpolation"}]}]},"string_escape":{"match":"\\\\\\\\.","name":"constant.character.escape.sql"},"string_interpolation":{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"match":"(#\\\\{)([^\\\\}]*)(\\\\})","name":"string.interpolated.sql"},"strings":{"patterns":[{"captures":{"2":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"comment":"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.","match":"(N)?(\')[^\']*(\')","name":"string.quoted.single.sql"},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.single.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"comment":"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.","match":"(`)[^`\\\\\\\\]*(`)","name":"string.quoted.other.backtick.sql"},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.other.backtick.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"comment":"this is faster than the next begin/end rule since sub-pattern will match till end-of-line and SQL files tend to have very long lines.","match":"(\\")[^\\"#]*(\\")","name":"string.quoted.double.sql"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.double.sql","patterns":[{"include":"#string_interpolation"}]},{"begin":"%\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.other.quoted.brackets.sql","patterns":[{"include":"#string_interpolation"}]}]}},"scopeName":"source.sql"}')),iCe=[sCe],lCe=Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[:=(,\\\\[?+!>]|^await|[^\\\\._$[:alnum:]]await|^return|[^\\\\._$[:alnum:]]return|^yield|[^\\\\._$[:alnum:]]yield|^throw|[^\\\\._$[:alnum:]]throw|^in|[^\\\\._$[:alnum:]]in|^of|[^\\\\._$[:alnum:]]of|^typeof|[^\\\\._$[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync)\\\\s+)?([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?==>)","name":"meta.arrow.ts"},{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(\\\\basync))?((?<![})!\\\\]])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=\\\\}|\\\\S)(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!\\\\/[\\\\/\\\\*])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=[:])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.ts"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.ts"}]},"brackets":{"patterns":[{"begin":"{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"\\\\]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"captures":{"1":{"name":"meta.brace.angle.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.angle.ts"}},"match":"\\\\s*(<)\\\\s*(const)\\\\s*(>)","name":"cast.expr.ts"},{"begin":"(?:(?<!\\\\+\\\\+|--)(?<=^return|[^\\\\._$[:alnum:]]return|^throw|[^\\\\._$[:alnum:]]throw|^yield|[^\\\\._$[:alnum:]]yield|^await|[^\\\\._$[:alnum:]]await|^default|[^\\\\._$[:alnum:]]default|[=(,:>*?\\\\&\\\\|\\\\^]|[^_$[:alnum:]](?:\\\\+\\\\+|\\\\-\\\\-)|[^\\\\+]\\\\+|[^\\\\-]\\\\-))\\\\s*(<)(?!<?\\\\=)(?!\\\\s*$)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(\\\\>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?:(?<=^))\\\\s*(<)(?=[_$[:alpha:]][_$[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(\\\\>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.class.ts"}},"end":"(?<=\\\\})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.ts"}},"match":"[_$[:alpha:]][_$[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|\\\\/[\\\\/*])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.type.class.ts"}},"end":"(?<=\\\\})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=\\\\s|[;),}\\\\]:\\\\-\\\\+]|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(extends|implements)\\\\b)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))(?=\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\s*\\\\??\\\\.\\\\s*[_$[:alpha:]][_$[:alnum:]]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.documentation.ts","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"},"2":{"name":"storage.type.internaldeclaration.ts"},"3":{"name":"punctuation.decorator.internaldeclaration.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.ts"},{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.ts"},{"captures":{"1":{"name":"keyword.control.loop.ts"},"2":{"name":"entity.name.label.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.ts"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.ts"}},"end":"(?=[;}]|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#expression"}]},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.ts"},{"include":"#if-statement"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.ts"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"}]},"decorator":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\@","beginCaptures":{"0":{"name":"punctuation.decorator.ts"}},"end":"(?=\\\\s)","name":"meta.decorator.ts","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"name":"meta.parameter.object-binding-pattern.ts","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<!=|:)\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"name":"meta.paramter.array-binding-pattern.ts","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<!=|:|^of|[^\\\\._$[:alnum:]]of|^in|[^\\\\._$[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)(?:access|api))\\\\s+(private|protected|public)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^@\\\\s<>*/](?:[^@<>*/]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^@\\\\s*/]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^\\\\s@*](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^\\\\s*]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^\\\\[\\\\]]*\\\\])?{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^@\\\\s*/]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*(?:\\\\s*,\\\\s*[A-Za-z_$][\\\\w$.\\\\[\\\\]]*)*)"},{"begin":"((@)template)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)"},{"begin":"((@)typedef)\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^@\\\\s*/]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"},{"match":"([A-Za-z_$][\\\\w$.\\\\[\\\\]]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[\\\\w$]+(?:(?:\\\\[\\\\])?\\\\.[\\\\w$]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\\"))|[^*\\\\\\\\])*?\\"|\'(?:(?:\\\\*(?!/))|(?:\\\\\\\\(?!\'))|[^*\\\\\\\\])*?\'|\\\\[(?:(?:\\\\*(?!/))|[^*])*?\\\\]|(?:(?:\\\\*(?!/))|\\\\s(?!\\\\s*\\\\])|\\\\[.*?(?:\\\\]|(?=\\\\*/))|[^*\\\\s\\\\[\\\\]])*)*))?\\\\s*(?:(\\\\])((?:[^*\\\\s]|\\\\*[^\\\\s/])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?={)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^{}\\\\[\\\\]A-Za-z_$])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^{}@\\\\s*]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\'\'\\"]))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^\\\\s*]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)(?:[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.enum.ts"},"5":{"name":"entity.name.type.enum.ts"}},"end":"(?<=\\\\})","name":"meta.enum.declaration.ts","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)","beginCaptures":{"0":{"name":"variable.other.enummember.ts"}},"end":"(?=,|\\\\}|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\])))","end":"(?=,|\\\\}|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.as.ts"},"3":{"name":"storage.type.namespace.ts"},"4":{"name":"entity.name.type.module.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:(?:\\\\s*(=))|(?:\\\\s+(default)(?=\\\\s+)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"},"3":{"name":"keyword.operator.assignment.ts"},"4":{"name":"keyword.control.default.ts"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.export.default.ts","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[\\\\{*])|((?=\\\\s*[_$[:alpha:]][_$[:alnum:]]*(\\\\s|,))(?!\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"}},"end":"(?=$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.export.ts","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[:,]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.ts"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.ts"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.ts"},"2":{"name":"keyword.generator.asterisk.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.ts"},{"include":"#typeof-operator"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[;,:})\\\\]]))"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=^|[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+\\\\<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.ts"},{"match":"\\\\*=|(?<!\\\\()/=|%=|\\\\+=|\\\\-=","name":"keyword.operator.assignment.compound.ts"},{"match":"\\\\&=|\\\\^=|<<=|>>=|>>>=|\\\\|=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>|>>","name":"keyword.operator.bitwise.shift.ts"},{"match":"===|!==|==|!=","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|<|>","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:]])(\\\\!)\\\\s*(?:(/=)|(?:(/)(?![/*])))"},{"match":"\\\\!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"\\\\&|~|\\\\^|\\\\|","name":"keyword.operator.bitwise.ts"},{"match":"\\\\=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"%|\\\\*|/|-|\\\\+","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)+(?:(/=)|(?:(/)(?![/*]))))","end":"(?:(/=)|(?:(/)(?!\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)))","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[_$[:alnum:])\\\\]])\\\\s*(?:(/=)|(?:(/)(?![/*])))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(\\\\!))\\\\s*)?(=|:|;|,|\\\\}|$))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\}|;|,|$|(^(?!\\\\s*((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(?:(?:(\\\\?)|(\\\\!))\\\\s*)?(=|:|;|,|$))))|(?<=\\\\})","name":"meta.field.declaration.ts","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.ts entity.name.function.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"keyword.operator.definiteassignment.ts"}},"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)(?:(\\\\?)|(\\\\!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"match":"\\\\#?[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"\\\\!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*))await)?\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.ts"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.ts"}]},"function-call":{"patterns":[{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(\\\\!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","end":"(?<=\\\\>)(?!(((([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))|(?<=[\\\\)]))(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*[\\\\{\\\\[\\\\(]\\\\s*$))","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"\\\\!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.async.ts"},"4":{"name":"storage.type.function.ts"},"5":{"name":"keyword.generator.asterisk.ts"},"6":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|(?<=\\\\})","name":"meta.function.ts","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function\\\\b)(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([_$[:alpha:]][_$[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.function.ts"},"3":{"name":"keyword.generator.asterisk.ts"},"4":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;)|(?<=\\\\})","name":"meta.function.expression.ts","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.function.ts entity.name.function.ts"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"entity.name.function.ts"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*)?([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"match":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|\\\\})","patterns":[{"include":"#comment"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[:\\\\(])(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"}},"end":"(?<!^import|[^\\\\._$[:alnum:]]import)(?=;|$|^)","name":"meta.import.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=^import|[^\\\\._$[:alnum:]]import)(?!\\\\s*[\\"\'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.ts"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"},"7":{"name":"keyword.control.require.ts"},"8":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.import-equals.external.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"variable.other.readwrite.ts"}]}]},"import-export-assert-clause":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.ts"},"2":{"name":"keyword.control.assert.ts"},"3":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object-literal.key.ts"},{"match":":","name":"punctuation.separator.key-value.ts"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"keyword.control.default.ts"},"3":{"name":"constant.language.import-export-all.ts"},"4":{"name":"variable.other.readwrite.ts"},"5":{"name":"string.quoted.alias.ts"},"12":{"name":"keyword.control.as.ts"},"13":{"name":"keyword.control.default.ts"},"14":{"name":"variable.other.readwrite.alias.ts"},"15":{"name":"string.quoted.alias.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(?:(\\\\btype)\\\\s+)?(?:(\\\\bdefault)|(\\\\*)|(\\\\b[_$[:alpha:]][_$[:alnum:]]*)|((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))))\\\\s+(as)\\\\s+(?:(default(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.ts"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.ts"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"variable.other.readwrite.alias.ts"},"3":{"name":"string.quoted.alias.ts"}},"match":"(?:(\\\\btype)\\\\s+)?(?:([_$[:alpha:]][_$[:alnum:]]*)|((\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)))"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.ts"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"meta.brace.square.ts"},"3":{"name":"variable.parameter.ts"}},"end":"(\\\\])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.declaration.ts","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([+-])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([_$[:alpha:]][_$[:alnum:]]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.square.ts"},"4":{"name":"entity.name.type.ts"},"5":{"name":"keyword.operator.expression.in.ts"}},"end":"(\\\\])([+-])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.type.modifier.ts"},"3":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.mappedtype.declaration.ts","patterns":[{"captures":{"1":{"name":"keyword.control.as.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^\\\\]]+(\\\\])(?={@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"({)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^|}\\\\s*]|\\\\*[/])+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^{}@\\\\s|*]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.ts"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|(===|!==|==|!=)|(([\\\\&\\\\~\\\\^\\\\|]\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s+instanceof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\s*[\\\\(]))))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[/*])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.interface.ts"}},"end":"(?<=\\\\})","name":"meta.interface.ts","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.ts"}},"match":"[_$[:alpha:]][_$[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G({)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"label":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"end":"(?<=\\\\})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(public|private|protected)\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??)\\\\s*[\\\\(\\\\<])","end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"meta.definition.method.ts entity.name.function.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"}]},"namespace-declaration":{"begin":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[_$[:alpha:]\\"\'`]))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.namespace.ts"}},"end":"(?<=\\\\})|(?=;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.namespace.declaration.ts","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.type.module.ts"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.ts"}},"end":"(?<=\\\\))|(?=[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[_$[:alpha:]][_$[:alnum:]]*)|(\\\\s*[\\\\(]))))","name":"new.expr.ts","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.ts"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"storage.type.numeric.bigint.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"storage.type.numeric.bigint.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"storage.type.numeric.bigint.ts"},"7":{"name":"storage.type.numeric.bigint.ts"},"8":{"name":"meta.delimiter.decimal.period.ts"},"9":{"name":"storage.type.numeric.bigint.ts"},"10":{"name":"meta.delimiter.decimal.period.ts"},"11":{"name":"storage.type.numeric.bigint.ts"},"12":{"name":"meta.delimiter.decimal.period.ts"},"13":{"name":"storage.type.numeric.bigint.ts"},"14":{"name":"storage.type.numeric.bigint.ts"}},"match":"(?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.ts"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.ts"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"variable.object.property.ts"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.object.property.ts"},"4":{"name":"variable.other.object.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(?:(\\\\#?[[:upper:]][_$[:digit:][:upper:]]*)|(\\\\#?[_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.constant.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:([[:upper:]][_$[:digit:][:upper:]]*)|([_$[:alpha:]][_$[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*\\\\#?[_$[:alpha:]][_$[:alnum:]]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b(get|set)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*(((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?[\\\\(])","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=\\\\(|\\\\<)","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=[\\\\]])(?=\\\\s*[\\\\(\\\\<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\\\\'\\\\\\"\\\\`])","end":"(?=:)|((?<=[\\\\\'\\\\\\"\\\\`])(?=((\\\\s*[\\\\(\\\\<,}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=(\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([\\\\(\\\\<,}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[\\\\]\\\\\'\\\\\\"\\\\`])(?=\\\\s*[\\\\(\\\\<])","end":"(?=\\\\}|;|,)|(?<=\\\\})","name":"meta.method.declaration.ts","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"constant.numeric.decimal.ts"}},"match":"(?![_$[:alpha:]])([[:digit:]]+)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"entity.name.function.ts"}},"match":"(?:([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:(\\\\s*\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"(?:[_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=,|\\\\})","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.ts"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=[;),}\\\\]:?\\\\-\\\\+\\\\>]|\\\\|\\\\||\\\\&\\\\&|\\\\!\\\\=\\\\=|$|^|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.ts","patterns":[{"include":"#type"}]},{"begin":"(?=[_$[:alpha:]][_$[:alnum:]]*\\\\s*=)","end":"(?=,|\\\\}|$|\\\\/\\\\/|\\\\/\\\\*)","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=,|\\\\})","name":"meta.object.member.ts","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=\\\\<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=\\\\>)\\\\s*(\\\\()(?=\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=((\\\\b(?<!\\\\$)0(?:x|X)[0-9a-fA-F][0-9a-fA-F_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:b|B)[01][01_]*(n)?\\\\b(?!\\\\$))|(\\\\b(?<!\\\\$)0(?:o|O)?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\B(\\\\.)[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*[eE][+-]?[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B)|(?:\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b)|(?:\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.)))(?!\\\\$))|([_$[:alpha:]][_$[:alnum:]]*)|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`)|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])+\\\\]))\\\\s*(:))","end":"(?=,|\\\\})","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=[,)])|(?==[^>])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(=,])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\(\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(=,]|=>|^return|[^\\\\._$[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|(^\\\\s*(export|function|class|interface|let|var|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.ts"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\\\\')|((?:[^\\\\\\\\\\\\n])$)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[=(:,\\\\[?+!]|^return|[^\\\\._$[:alnum:]]return|^case|[^\\\\._$[:alnum:]]case|=>|&&|\\\\|\\\\||\\\\*\\\\/)\\\\s*(\\\\/)(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[\\\\()]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)+\\\\]|\\\\(([^\\\\)\\\\\\\\]|\\\\\\\\.)+\\\\))+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?<![_$[:alnum:])\\\\]]|\\\\+\\\\+|--|}|\\\\*\\\\/)|((?<=^return|[^\\\\._$[:alnum:]]return|^case|[^\\\\._$[:alnum:]]case))\\\\s*)\\\\/(?![\\\\/*])(?=(?:[^\\\\/\\\\\\\\\\\\[]|\\\\\\\\.|\\\\[([^\\\\]\\\\\\\\]|\\\\\\\\.)*\\\\])+\\\\/([dgimsuvy]+|(?![\\\\/\\\\*])|(?=\\\\/\\\\*))(?!\\\\s*[a-zA-Z0-9_$]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[wWsSdDtrnvf]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[bB]|\\\\^|\\\\$","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\[1-9]\\\\d*|\\\\\\\\k<([a-zA-Z_$][\\\\w$]*)>"},{"match":"[?+*]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)\\\\}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|(?:\\\\?<([a-zA-Z_$][\\\\w$]*)>))?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(\\\\])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))\\\\-(?:[^\\\\]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])(?=$|^|[{};,]|//)","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])((?=[{};,]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[:|&])(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.ts"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.ts"},"single-line-comment-consuming-line-ending":{"begin":"(^[ \\\\t]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4}|u\\\\{[0-9A-Fa-f]+\\\\}|[0-2][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"super-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.ts"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*[\\\\(]\\\\s*[\\\\\\"\\\\\'\\\\`]))","name":"keyword.operator.expression.import.ts"}]},"support-objects":{"patterns":[{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.ts"},{"captures":{"1":{"name":"keyword.control.import.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.importmeta.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.target.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"support.variable.property.ts"},"4":{"name":"support.constant.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(?:(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\())|(?:(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$)))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"switch-statement.expr.ts","patterns":[{"include":"#comment"},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"switch-expression.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"(?=\\\\})","name":"switch-block.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.ts"}},"end":"(?=:)","name":"case-clause.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"},"2":{"name":"meta.block.ts punctuation.definition.block.ts"}},"contentName":"meta.block.ts","end":"\\\\}","endCaptures":{"0":{"name":"meta.block.ts punctuation.definition.block.ts"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([_$[:alpha:]][_$[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([_$[:alpha:]][_$[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([_$[:alpha:]][_$[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>|\\\\<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([_$[:alpha:]][_$[:alnum:]]*|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))(?=\\\\s*([\\\\<\\\\>\\\\,\\\\.\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^<>\\\\(]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(?<==)\\\\>)*(?<!=)\\\\>))*(?<!=)\\\\>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*[^[:digit:]])(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([_$[:alpha:]][_$[:alnum:]]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.type.ts"},"4":{"name":"entity.name.type.alias.ts"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","name":"meta.type.declaration.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"},"2":{"name":"keyword.control.intrinsic.ts"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=\\\\}|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])(?!\\\\s*[|&]\\\\s+)((?=^|[,);\\\\}\\\\]]|//)|(?==[^>])|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![:|&])((?=[,);\\\\}\\\\]]|\\\\/\\\\/)|(?==[^>])|(?=^\\\\s*$)|((?<=[\\\\}>\\\\]\\\\)]|[_$[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"\\\\<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"\\\\>","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.ts"},"type-conditional":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*\\\\<)","beginCaptures":{"1":{"name":"meta.type.constructor.ts storage.modifier.ts"},"2":{"name":"meta.type.constructor.ts keyword.control.new.ts"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=[(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![|&])(?=[,\\\\]\\\\)\\\\{\\\\}=;>:\\\\?]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![|&])((?=[,\\\\]\\\\)\\\\{\\\\}=;:\\\\?>]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([_$[:alpha:]][_$[:alnum:]]*)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.ts"}]},"type-name":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*[[:digit:]])))"},{"match":"[_$[:alpha:]][_$[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"\\\\}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=\\\\}|;|,|$)|(?<=\\\\})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=\\\\})","patterns":[{"include":"#type-object"}]},{"begin":"[&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.ts"},{"match":"(\\\\?|\\\\:)","name":"keyword.operator.ternary.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.ts"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<!=|:)(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"},"4":{"name":"keyword.operator.expression.is.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))\\\\s(is)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([_$[:alpha:]][_$[:alnum:]]*))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.ts"},{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.ts"}]},"type-primitive":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.ts"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"\\\\]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.ts"},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"punctuation.separator.label.ts"}},"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([_$[:alpha:]][_$[:alnum:]]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.ts"}},"end":"(?=[,);}\\\\]=>:&|{\\\\?]|(extends\\\\s+)|$|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.ts"},"var-expr":{"patterns":[{"begin":"(?=(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|((?<!^let|[^\\\\._$[:alnum:]]let|^var|[^\\\\._$[:alnum:]]var)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(var|let)(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|((?<!^const|[^\\\\._$[:alnum:]]const)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|\\\\/\\\\/)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b))|((?<!^using|[^\\\\._$[:alnum:]]using|^await\\\\s+using|[^\\\\._$[:alnum:]]await\\\\s+using)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(\\\\bexport)\\\\s+)?(?:(\\\\bdeclare)\\\\s+)?\\\\b((?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b))(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=\\\\/\\\\/))","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?==|;|}|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([_$[:alpha:]][_$[:alnum:]]*)(\\\\!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>)))))|(:\\\\s*((<)|([(]\\\\s*(([)])|(\\\\.\\\\.\\\\.)|([_$[:alnum:]]+\\\\s*(([:,?=])|([)]\\\\s*=>)))))))|(:\\\\s*(?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![_$[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^<>(),=])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(<*])|(function\\\\s+)|([_$[:alpha:]][_$[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*$)|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[\\\\(]\\\\s*((([\\\\{\\\\[]\\\\s*)?$)|((\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})\\\\s*((:\\\\s*\\\\{?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*)))|((\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])\\\\s*((:\\\\s*\\\\[?$)|((\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?[(]\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([)]\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[_$[:alpha:]][_$[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<]|\\\\<\\\\s*(((const\\\\s+)?[_$[:alpha:]])|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\]))([^=<>]|=[^<])*\\\\>)*\\\\>)*>\\\\s*)?\\\\(\\\\s*(\\\\/\\\\*([^\\\\*]|(\\\\*[^\\\\/]))*\\\\*\\\\/\\\\s*)*(([_$[:alpha:]]|(\\\\{([^\\\\{\\\\}]|(\\\\{([^\\\\{\\\\}]|\\\\{[^\\\\{\\\\}]*\\\\})*\\\\}))*\\\\})|(\\\\[([^\\\\[\\\\]]|(\\\\[([^\\\\[\\\\]]|\\\\[[^\\\\[\\\\]]*\\\\])*\\\\]))*\\\\])|(\\\\.\\\\.\\\\.\\\\s*[_$[:alpha:]]))([^()\\\\\'\\\\\\"\\\\`]|(\\\\(([^\\\\(\\\\)]|(\\\\(([^\\\\(\\\\)]|\\\\([^\\\\(\\\\)]*\\\\))*\\\\)))*\\\\))|(\\\\\'([^\\\\\'\\\\\\\\]|\\\\\\\\.)*\\\\\')|(\\\\\\"([^\\\\\\"\\\\\\\\]|\\\\\\\\.)*\\\\\\")|(\\\\`([^\\\\`\\\\\\\\]|\\\\\\\\.)*\\\\`))*)?\\\\)(\\\\s*:\\\\s*([^<>\\\\(\\\\)\\\\{\\\\}]|\\\\<([^<>]|\\\\<([^<>]|\\\\<[^<>]+\\\\>)+\\\\>)+\\\\>|\\\\([^\\\\(\\\\)]+\\\\)|\\\\{[^\\\\{\\\\}]+\\\\})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([[:upper:]][_$[:digit:][:upper:]]*)(?![_$[:alnum:]])(\\\\!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([_$[:alpha:]][_$[:alnum:]]*)(\\\\!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[;,=}]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|(?:^\\\\s*(?:abstract|async|(?:\\\\bawait\\\\s+(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)\\\\b)|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|(?:\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[_$[:alpha:]])\\\\b)|var|while)\\\\b)))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<!=|!)(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[,);}\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<!=|!)(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[,);}\\\\]]|((?<![_$[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![\\\\|\\\\&\\\\+\\\\-\\\\*\\\\/])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.ts","aliases":["ts"]}')),cCe=[lCe],uCe=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#fff","activityBar.border":"#e1e4e8","activityBar.foreground":"#2f363d","activityBar.inactiveForeground":"#959da5","activityBarBadge.background":"#2188ff","activityBarBadge.foreground":"#fff","badge.background":"#dbedff","badge.foreground":"#005cc5","breadcrumb.activeSelectionForeground":"#586069","breadcrumb.focusForeground":"#2f363d","breadcrumb.foreground":"#6a737d","breadcrumbPicker.background":"#fafbfc","button.background":"#159739","button.foreground":"#fff","button.hoverBackground":"#138934","button.secondaryBackground":"#e1e4e8","button.secondaryForeground":"#1b1f23","button.secondaryHoverBackground":"#d1d5da","checkbox.background":"#fafbfc","checkbox.border":"#d1d5da","debugToolBar.background":"#fff","descriptionForeground":"#6a737d","diffEditor.insertedTextBackground":"#34d05822","diffEditor.removedTextBackground":"#d73a4922","dropdown.background":"#fafbfc","dropdown.border":"#e1e4e8","dropdown.foreground":"#2f363d","dropdown.listBackground":"#fff","editor.background":"#fff","editor.findMatchBackground":"#ffdf5d","editor.findMatchHighlightBackground":"#ffdf5d66","editor.focusedStackFrameHighlightBackground":"#28a74525","editor.foldBackground":"#d1d5da11","editor.foreground":"#24292e","editor.inactiveSelectionBackground":"#0366d611","editor.lineHighlightBackground":"#f6f8fa","editor.linkedEditingBackground":"#0366d611","editor.selectionBackground":"#0366d625","editor.selectionHighlightBackground":"#34d05840","editor.selectionHighlightBorder":"#34d05800","editor.stackFrameHighlightBackground":"#ffd33d33","editor.wordHighlightBackground":"#34d05800","editor.wordHighlightBorder":"#24943e99","editor.wordHighlightStrongBackground":"#34d05800","editor.wordHighlightStrongBorder":"#24943e50","editorBracketHighlight.foreground1":"#005cc5","editorBracketHighlight.foreground2":"#e36209","editorBracketHighlight.foreground3":"#5a32a3","editorBracketHighlight.foreground4":"#005cc5","editorBracketHighlight.foreground5":"#e36209","editorBracketHighlight.foreground6":"#5a32a3","editorBracketMatch.background":"#34d05840","editorBracketMatch.border":"#34d05800","editorCursor.foreground":"#044289","editorError.foreground":"#cb2431","editorGroup.border":"#e1e4e8","editorGroupHeader.tabsBackground":"#f6f8fa","editorGroupHeader.tabsBorder":"#e1e4e8","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#d73a49","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#d7dbe0","editorIndentGuide.background":"#eff2f6","editorLineNumber.activeForeground":"#24292e","editorLineNumber.foreground":"#1b1f234d","editorOverviewRuler.border":"#fff","editorWarning.foreground":"#f9c513","editorWhitespace.foreground":"#d1d5da","editorWidget.background":"#f6f8fa","errorForeground":"#cb2431","focusBorder":"#2188ff","foreground":"#444d56","gitDecoration.addedResourceForeground":"#28a745","gitDecoration.conflictingResourceForeground":"#e36209","gitDecoration.deletedResourceForeground":"#d73a49","gitDecoration.ignoredResourceForeground":"#959da5","gitDecoration.modifiedResourceForeground":"#005cc5","gitDecoration.submoduleResourceForeground":"#959da5","gitDecoration.untrackedResourceForeground":"#28a745","input.background":"#fafbfc","input.border":"#e1e4e8","input.foreground":"#2f363d","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#e2e5e9","list.activeSelectionForeground":"#2f363d","list.focusBackground":"#cce5ff","list.hoverBackground":"#ebf0f4","list.hoverForeground":"#2f363d","list.inactiveFocusBackground":"#dbedff","list.inactiveSelectionBackground":"#e8eaed","list.inactiveSelectionForeground":"#2f363d","notificationCenterHeader.background":"#e1e4e8","notificationCenterHeader.foreground":"#6a737d","notifications.background":"#fafbfc","notifications.border":"#e1e4e8","notifications.foreground":"#2f363d","notificationsErrorIcon.foreground":"#d73a49","notificationsInfoIcon.foreground":"#005cc5","notificationsWarningIcon.foreground":"#e36209","panel.background":"#f6f8fa","panel.border":"#e1e4e8","panelInput.border":"#e1e4e8","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#2f363d","panelTitle.inactiveForeground":"#6a737d","pickerGroup.border":"#e1e4e8","pickerGroup.foreground":"#2f363d","progressBar.background":"#2188ff","quickInput.background":"#fafbfc","quickInput.foreground":"#2f363d","scrollbar.shadow":"#6a737d33","scrollbarSlider.activeBackground":"#959da588","scrollbarSlider.background":"#959da533","scrollbarSlider.hoverBackground":"#959da544","settings.headerForeground":"#2f363d","settings.modifiedItemIndicator":"#2188ff","sideBar.background":"#f6f8fa","sideBar.border":"#e1e4e8","sideBar.foreground":"#586069","sideBarSectionHeader.background":"#f6f8fa","sideBarSectionHeader.border":"#e1e4e8","sideBarSectionHeader.foreground":"#2f363d","sideBarTitle.foreground":"#2f363d","statusBar.background":"#fff","statusBar.border":"#e1e4e8","statusBar.debuggingBackground":"#f9826c","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#586069","statusBar.noFolderBackground":"#fff","statusBarItem.prominentBackground":"#e8eaed","statusBarItem.remoteBackground":"#fff","statusBarItem.remoteForeground":"#586069","tab.activeBackground":"#fff","tab.activeBorder":"#fff","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#2f363d","tab.border":"#e1e4e8","tab.hoverBackground":"#fff","tab.inactiveBackground":"#f6f8fa","tab.inactiveForeground":"#6a737d","tab.unfocusedActiveBorder":"#fff","tab.unfocusedActiveBorderTop":"#e1e4e8","tab.unfocusedHoverBackground":"#fff","terminal.ansiBlack":"#24292e","terminal.ansiBlue":"#0366d6","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#005cc5","terminal.ansiBrightCyan":"#3192aa","terminal.ansiBrightGreen":"#22863a","terminal.ansiBrightMagenta":"#5a32a3","terminal.ansiBrightRed":"#cb2431","terminal.ansiBrightWhite":"#d1d5da","terminal.ansiBrightYellow":"#b08800","terminal.ansiCyan":"#1b7c83","terminal.ansiGreen":"#28a745","terminal.ansiMagenta":"#5a32a3","terminal.ansiRed":"#d73a49","terminal.ansiWhite":"#6a737d","terminal.ansiYellow":"#dbab09","terminal.foreground":"#586069","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#d1d5da","terminalCursor.foreground":"#005cc5","textBlockQuote.background":"#fafbfc","textBlockQuote.border":"#e1e4e8","textCodeBlock.background":"#f6f8fa","textLink.activeForeground":"#005cc5","textLink.foreground":"#0366d6","textPreformat.foreground":"#586069","textSeparator.foreground":"#d1d5da","titleBar.activeBackground":"#fff","titleBar.activeForeground":"#2f363d","titleBar.border":"#e1e4e8","titleBar.inactiveBackground":"#f6f8fa","titleBar.inactiveForeground":"#6a737d","tree.indentGuidesStroke":"#e1e4e8","welcomePage.buttonBackground":"#f6f8fa","welcomePage.buttonHoverBackground":"#e1e4e8"},"displayName":"GitHub Light","name":"github-light","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#005cc5"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#6f42c1"}},{"scope":"variable.parameter.function","settings":{"foreground":"#24292e"}},{"scope":"entity.name.tag","settings":{"foreground":"#22863a"}},{"scope":"keyword","settings":{"foreground":"#d73a49"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#d73a49"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#24292e"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#032f62"}},{"scope":"support","settings":{"foreground":"#005cc5"}},{"scope":"meta.property-name","settings":{"foreground":"#005cc5"}},{"scope":"variable","settings":{"foreground":"#e36209"}},{"scope":"variable.other","settings":{"foreground":"#24292e"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"carriage-return","settings":{"background":"#d73a49","content":"^M","fontStyle":"italic underline","foreground":"#fafbfc"}},{"scope":"message.error","settings":{"foreground":"#b31d28"}},{"scope":"string variable","settings":{"foreground":"#005cc5"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#032f62"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#032f62"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#22863a"}},{"scope":"support.constant","settings":{"foreground":"#005cc5"}},{"scope":"support.variable","settings":{"foreground":"#005cc5"}},{"scope":"meta.module-reference","settings":{"foreground":"#005cc5"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#e36209"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"markup.quote","settings":{"foreground":"#22863a"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#24292e"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#24292e"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#005cc5"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ffeef0","foreground":"#b31d28"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#f0fff4","foreground":"#22863a"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffebda","foreground":"#e36209"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#005cc5","foreground":"#f6f8fa"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#6f42c1"}},{"scope":"meta.diff.header","settings":{"foreground":"#005cc5"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"meta.output","settings":{"foreground":"#005cc5"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#586069"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#b31d28"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#032f62"}}],"type":"light"}')),FE={scopeName:"source.malloy",patterns:[{include:"#malloy-language"}],repository:{"malloy-language":{patterns:[{include:"#sql-string"},{include:"#comments"},{include:"#tags"},{include:"#strings"},{include:"#numbers"},{include:"#keywords"},{include:"#properties"},{include:"#functions"},{include:"#datetimes"},{include:"#identifiers-quoted"},{include:"#types"},{include:"#constants"},{include:"#timeframes"},{include:"#identifiers-unquoted"}]},"malloy-matched":{begin:"{",end:"}",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"malloy-in-sql":{begin:"%{",name:"source.malloy-in-sql",end:"}%?",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"sql-string":{patterns:[{begin:'(\\b[A-Za-z_][A-Za-z_0-9]*)(\\s*\\.\\s*)(sql)(\\s*\\(\\s*)(""")',end:'"""',beginCaptures:{1:{name:"variable.other"},3:{name:"keyword.control.sql"},5:{name:"punctuation.sql-block.open"}},endCaptures:{0:{name:"punctuation.sql-block.close"}},name:"source.sql",patterns:[{include:"#malloy-in-sql"},{include:"source.sql"}]}]},functions:{patterns:[{match:"(?i)\\b(count)(\\s*\\()(distinct)",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.function.modifier"}}},{match:"(?i)\\b(AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE|UNGROUPED)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(!)(timestamp|number|string|boolean|date)?(\\s*\\()",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.type"}}}]},datetimes:{patterns:[{match:"(?i)@[0-9]{4}-[0-9]{2}-[0-9]{2}[ T][0-9]{2}:[0-9]{2}((:[0-9]{2})(([\\.,][0-9]+)(\\[[A-Za-z_/]+\\])?)?)?",name:"constant.numeric.timestamp"},{match:"(?i)@[0-9]{4}(-Q[1-4]|-[0-9]{2}(-[0-9]{2}(-WK)?)?)?",name:"constant.numeric.date"}]},"identifiers-quoted":{patterns:[{match:"`[^`]*`",name:"variable.other.quoted"}]},"identifiers-unquoted":{patterns:[{match:"(?i)\\b[A-Za-z_][A-Za-z_0-9]*\\b",name:"variable.other"}]},timeframes:{patterns:[{match:"(?i)\\b((year|quarter|month|week|day|hour|minute|second)s?)\\b",name:"keyword.other.timeframe"},{match:"(?i)\\b(day_of_year|day_of_month)\\b",name:"keyword.other.timeframe"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]},tags:{patterns:[{match:"##\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:'#"',end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{match:"#\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:"#\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"##\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"#",end:"\\n",beginCaptures:{0:{name:"string.quoted"}},name:"string.quoted"}],repository:{"tag-values":{name:"support.type.property-name.json",match:'(-)?((?:[^\\s=#]+)|(?:"[^#]+"))(?:\\s*(=)\\s*((?:[^\\s=#]+)|(?:"[^#]+")))?',captures:{1:{name:"keyword.control.negate"},2:{name:"support.type.property-name.json"},3:{name:"keyword.operator.comparison.ts"},4:{name:"string.quoted"}}}}},strings:{patterns:[{begin:"'",end:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.single",patterns:[{include:"#escapes"}]},{begin:'"',end:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.double",patterns:[{include:"#escapes"}]},{begin:'"""',end:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.triple"},{begin:"(?i)[r|/]'",end:"'",name:"string.regexp",patterns:[{include:"#regex-escapes"}]}],repository:{escapes:{name:"constant.character.escape",match:"\\\\(u[A-Fa-f0-9]{4}|.)",captures:{0:{name:"constant.character.escape"}}},"regex-escapes":{name:"constant.character.escape",match:"\\\\.",captures:{0:{name:"constant.character.escape"}}}}},numbers:{match:"(?i)(\\b((0|[1-9][0-9]*)(E[+-]?[0-9]+|\\.[0-9]*)?)|\\.[0-9]+)",name:"constant.numeric"},constants:{patterns:[{match:"(?i)\\bnull\\b",name:"constant.language.null"},{match:"(?i)\\btrue\\b",name:"constant.language.true"},{match:"(?i)\\bfalse\\b",name:"constant.language.false"}]},types:{patterns:[{match:"(?i)\\bstring\\b",name:"entity.name.type.string"},{match:"(?i)\\bnumber\\b",name:"entity.name.type.number"},{match:"(?i)\\bdate\\b",name:"entity.name.type.date"},{match:"(?i)\\btimestamp\\b",name:"entity.name.type.timestamp"},{match:"(?i)\\bboolean\\b",name:"entity.name.type.boolean"}]},properties:{patterns:[{match:"(?i)\\baccept\\b",name:"keyword.control.accept"},{match:"(?i)\\bselect\\b",name:"keyword.control.select"},{match:"(?i)\\bconnection\\b",name:"keyword.control.connection"},{match:"(?i)\\brun\\b",name:"keyword.control.run"},{match:"(?i)\\bextend\\b",name:"keyword.control.extend"},{match:"(?i)\\brefine\\b",name:"keyword.control.refine"},{match:"(?i)\\baggregate\\b",name:"keyword.control.aggregate"},{match:"(?i)\\bsample\\b",name:"keyword.control.sample"},{match:"(?i)\\bcalculate\\b",name:"keyword.control.calculate"},{match:"(?i)\\btimezone\\b",name:"keyword.control.timezone"},{match:"(?i)\\bdimension\\b",name:"keyword.control.dimension"},{match:"(?i)\\bexcept\\b",name:"keyword.control.except"},{match:"(?i)\\bsource\\b",name:"keyword.control.source"},{match:"(?i)\\bgroup_by\\b",name:"keyword.control.group_by"},{match:"(?i)\\bhaving\\b",name:"keyword.control.having"},{match:"(?i)\\bindex\\b",name:"keyword.control.index"},{match:"(?i)\\bjoin_one\\b",name:"keyword.control.join_one"},{match:"(?i)\\bwith\\b",name:"keyword.control.with"},{match:"(?i)\\bjoin_many\\b",name:"keyword.control.join_many"},{match:"(?i)\\bjoin_cross\\b",name:"keyword.control.join_cross"},{match:"(?i)\\blimit\\b",name:"keyword.control.limit"},{match:"(?i)\\bmeasure\\b",name:"keyword.control.measure"},{match:"(?i)\\bnest\\b",name:"keyword.control.nest"},{match:"(?i)\\border_by\\b",name:"keyword.control.order_by"},{match:"(?i)\\bpartition_by\\b",name:"keyword.control.partition_by"},{match:"(?i)\\bprimary_key\\b",name:"keyword.control.primary_key"},{match:"(?i)\\bproject\\b",name:"keyword.control.project"},{match:"(?i)\\bquery\\b",name:"keyword.control.query"},{match:"(?i)\\brename\\b",name:"keyword.control.rename"},{match:"(?i)\\btop\\b",name:"keyword.control.top"},{match:"(?i)\\bview\\b",name:"keyword.control.view"},{match:"(?i)\\bwhere\\b",name:"keyword.control.where"},{match:"(?i)\\bdeclare\\b",name:"keyword.control.declare"}]},keywords:{patterns:[{match:"(?i)\\bis\\b",name:"keyword.control.is"},{match:"(?i)\\bon\\b",name:"keyword.control.on"},{match:"(?i)\\bnot\\b",name:"keyword.other.not"},{match:"(?i)\\bor\\b",name:"keyword.other.or"},{match:"(?i)\\bdesc\\b",name:"keyword.control.desc"},{match:"(?i)\\bby\\b",name:"keyword.control.by"},{match:"(?i)\\band\\b",name:"keyword.other.and"},{match:"(?i)\\basc\\b",name:"keyword.control.asc"},{match:"(?i)\\bfor\\b",name:"keyword.other.for"},{match:"(?i)\\belse\\b",name:"keyword.other.else"},{match:"(?i)\\bto\\b",name:"keyword.other.to"},{match:"(?i)\\bwhen\\b",name:"keyword.other.when"},{match:"(?i)\\bpick\\b",name:"keyword.other.pick"},{match:"(?i)\\bimport\\b",name:"keyword.control.import"}]}}},dCe={...FE,patterns:[...FE.patterns,{include:"#docvar"}],repository:{...FE.repository,docvar:{patterns:[{match:"\\<\\<[^(\\>\\>)]*\\>\\>",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"markup.italic.markdown"}]}}},pCe={name:"Malloy SQL",scopeName:"source.malloy-sql",patterns:[{include:"#malloysql-sql"}],repository:{"malloysql-sql":{beginCaptures:{0:{name:"entity.other.attribute.malloy-sql"},1:{name:"entity.other.attribute.malloy-sql"},3:{name:"comment.line.double-slash"}},name:"meta.embedded.block.malloysql.sql",patterns:[{include:"#comments"},{begin:"%{",end:"}%",beginCaptures:{0:{name:"punctuation.definition.malloy-sql"}},endCaptures:{0:{name:"punctuation.definition.malloy-sql"}},name:"meta.embedded.block.malloy",patterns:[{include:"source.malloy"}]},{include:"source.sql"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]}}},fCe="github-light",hCe=rCe({engine:B9(As(()=>import("./wasm-DQxwEHae.es-CG6Dc4jp.js"),[])),themes:[uCe],langs:[iCe,oCe,cCe,{name:"malloy",scopeName:"source.malloy",embeddedLangs:["sql"],...dCe},{name:"malloysql",scopeName:"source.malloy-sql",embeddedLangs:["sql"],...pCe}]});async function Sv(e,t){return(await hCe).codeToHtml(e,{lang:t,theme:fCe})}function Ba(e){const{server:t}=rr(),n={...e,queryKey:[...e.queryKey,t],queryFn:async()=>{try{return await e.queryFn()}catch(r){if(r&&typeof r=="object"&&"response"in r){const a=r;if(a.response?.data){const o=new Error(a.response.data.message||a.message);throw o.status=a.response.status,o.data=a.response.data,o}}throw r}},retry:!1,throwOnError:!1};return Wte(n,e_)}function ci(e){const t={...e,mutationFn:async n=>{try{return await e.mutationFn(n)}catch(r){if(r&&typeof r=="object"&&"response"in r){const a=r;if(a.response?.data){const o=new Error(a.response.data.message||a.message);throw o.status=a.response.status,o.data=a.response.data,o}}throw r}},retry:!1,throwOnError:!1};return Gte(t,e_)}const Ar=e=>{const t=new URL(e),n={};if(t.protocol!=="publisher:")throw new Error(`Failed to parse resource URI: ${e}`);const r=(t.hostname+t.pathname).split("/");for(let a=0;a<r.length;a+=2){const o=r[a];o==="projects"?n.projectName=decodeURI(r[a+1])||void 0:o==="packages"?n.packageName=decodeURI(r[a+1])||void 0:o==="connections"?n.connectionName=decodeURI(r[a+1])||void 0:o==="models"&&(n.modelPath=decodeURI(r.slice(a+1).join("/"))||void 0)}if(n.versionId=t.searchParams.get("versionId")||void 0,!n.projectName)throw new Error(`Failed to parse resource URI: ${e}`);return n},dA=e=>{if(!e.projectName)throw new Error(`Failed to encode resource URI, missing project name: ${e}`);let t=`publisher://projects/${e.projectName}`;return e.packageName&&(t+=`/packages/${e.packageName}`),e.connectionName&&(t+=`/connections/${e.connectionName}`),e.modelPath&&(t+=`/models/${e.modelPath}`),e.packageName&&e.versionId&&(t+=`?versionId=${e.versionId}`),t};function mB({sourceAndPaths:e,selectedSourceIndex:t,existingQuery:n,onQueryChange:r,onSourceChange:a,resourceUri:o}){return Je.useEffect(()=>{a&&a(t)},[t,a]),y.jsx(__,{children:y.jsxs(QG,{spacing:2,component:"section",children:[y.jsx(gCe,{sourceAndPath:e[t],existingQuery:n,onChange:s=>{r&&r(s)},resourceUri:o}),y.jsx(zW,{height:"5px"})]})})}function x0(){return{query:void 0,malloyQuery:void 0,malloyResult:void 0}}function mCe({sourceAndPath:e,onChange:t,existingQuery:n,explorerComponents:r,QueryBuilder:a,resourceUri:o}){const[s,i]=Je.useState(n||x0()),[c,u]=Je.useState(void 0);Je.useEffect(()=>{n&&i(n)},[n]);const[p,f]=Je.useState([]),{MalloyExplorerProvider:g,QueryPanel:m,ResizableCollapsiblePanel:v,ResultPanel:C,SourcePanel:x}=r;Je.useEffect(()=>{t&&t(s)},[t,s]);const{projectName:S,packageName:w,versionId:E}=Ar(o),{apiClients:D}=rr(),A=ci({mutationFn:()=>{const H=typeof s?.malloyQuery=="string"?s.malloyQuery:new a.ASTQuery({source:e.sourceInfo,query:s?.malloyQuery}).toMalloy();return u({executionState:"running",query:s?.malloyQuery,queryResolutionStartMillis:Date.now(),onCancel:()=>{A.reset(),u(void 0)},response:{result:{}}}),i({...s,query:H}),D.models.executeQueryModel(S,w,e.modelPath,{query:H,sourceName:void 0,queryName:void 0,versionId:E})},onSuccess:H=>{if(H){const F=JSON.parse(H.data.result);i({...s,malloyResult:F}),u(z=>z?{...z,executionState:"finished",response:{result:F}}:void 0)}},onError:H=>{u(void 0),console.error("Query execution error:",H)}}),[R,$]=Je.useState(e.sourceInfo.name);Je.useEffect(()=>{R!==e.sourceInfo.name&&($(e.sourceInfo.name),i(x0()),u(void 0))},[e,R]);const j=Je.useCallback(H=>{i({...s,malloyQuery:H,malloyResult:void 0})},[s]);return R!==e.sourceInfo.name?y.jsx("div",{children:"Loading..."}):y.jsx(mF,{sx:{border:"1px solid #e0e0e0",borderRadius:"8px",overflow:"hidden"},children:y.jsx(g,{source:e.sourceInfo,query:s?.malloyQuery,topValues:[],onFocusedNestViewPathChange:f,focusedNestViewPath:p,onQueryChange:j,children:y.jsxs("div",{style:{display:"flex",height:"100%",overflowY:"auto"},children:[y.jsx(v,{isInitiallyExpanded:!0,initialWidth:180,minWidth:180,icon:"database",title:e.sourceInfo.name,children:y.jsx(x,{onRefresh:()=>i(x0())})}),y.jsx(v,{isInitiallyExpanded:!0,initialWidth:280,minWidth:280,icon:"filterSliders",title:"Query",children:y.jsx(m,{runQuery:()=>{console.log(`running query with: ${s?.malloyQuery}`);try{A.mutate()}catch(H){console.error("Error running query:",H)}}})}),y.jsx(C,{source:e.sourceInfo,draftQuery:s?.malloyQuery,setDraftQuery:H=>i({...s,malloyQuery:H}),submittedQuery:c,options:{showRawQuery:!0}})]})})},e.sourceInfo.name)}function gCe(e){const[t,n]=T.useState(null),[r,a]=T.useState(null),[o,s]=T.useState(!0);return T.useEffect(()=>{let i=!0;return Promise.all([As(()=>import("./index-DJ4KYt-l.js"),__vite__mapDeps([0,1,2])),As(()=>import("./index-LGQlLlFF.js").then(c=>c.i),[])]).then(([c,u])=>{i&&(n(c),a(u),s(!1))}).catch(c=>{console.error("Failed to load Malloy components:",c),i&&s(!1)}),()=>{i=!1}},[]),o||!t||!r?y.jsx(Gle,{children:y.jsx(mF,{children:y.jsx("div",{style:{alignItems:"center",justifyContent:"center",height:"200px",color:"#666"},children:"Loading explorer..."})})}):y.jsx(mCe,{...e,explorerComponents:t,QueryBuilder:r,resourceUri:e.resourceUri})}function io({text:e,size:t=20,color:n="primary",thickness:r=3.6,centered:a=!0,spacing:o=2,textVariant:s="body2"}){const i=y.jsxs(jt,{sx:{display:"flex",flexDirection:"column",alignItems:"center",gap:o},children:[y.jsx(Xv,{size:t,color:n,thickness:r}),e&&y.jsx(gt,{variant:s,color:"text.secondary",children:e})]});return a?y.jsx(jt,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",width:"100%"},children:i}):i}const yCe=T.lazy(()=>Promise.resolve().then(()=>WNe));function K1({result:e,maxHeight:t,maxResultSize:n=0}){const r=T.useRef(null),[a,o]=T.useState(t),[s,i]=T.useState(!1);if(!e)return null;if(n>0&&e.length>n&&!s)return y.jsxs(jt,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2,p:4,backgroundColor:"#fafafa",border:"1px solid",borderColor:"#e0e0e0",borderRadius:1},children:[y.jsx(Wre,{sx:{fontSize:48,color:"#757575"}}),y.jsx(gt,{variant:"h6",color:"text.secondary",align:"center",children:"Processing large results may cause browser performance issues. Proceed?"}),y.jsx(wo,{variant:"contained",color:"primary",onClick:()=>i(!0),children:"Proceed"})]});const c=y.jsx(io,{text:"Loading...",centered:!0,size:32}),u=Math.min(t,a);return y.jsx(jt,{ref:r,sx:{position:"relative",height:"auto",border:"0px",borderRadius:0,overflow:"hidden"},children:e&&y.jsx(T.Suspense,{fallback:c,children:y.jsx(yCe,{result:e,height:u,onSizeChange:o})})})}function bCe({cell:e,sourceAndPaths:t,resourceUri:n,onQueryChange:r,onSourceChange:a}){const o={query:e.value,malloyResult:e.result?JSON.parse(e.result):void 0,malloyQuery:e.queryInfo?JSON.parse(e.queryInfo):void 0},s=t.findIndex(i=>i.sourceInfo.name===e.sourceName);return y.jsx(mB,{resourceUri:n,sourceAndPaths:t,selectedSourceIndex:s>=0?s:0,existingQuery:o,onQueryChange:r,onSourceChange:a})}function vCe({cell:e,editingMalloy:t,editingMarkdown:n,sourceAndPaths:r,resourceUri:a,onCellChange:o,onClose:s,onEdit:i,onDelete:c,addButtonCallback:u}){const[p,f]=T.useState(e.value),[g,m]=Je.useState(!1),[v,C]=Je.useState(!1),[x,S]=Je.useState(),[w]=Je.useState(),[E,D]=Je.useState(x0()),[A,R]=Je.useState(!1),[$,j]=Je.useState(e.sourceName?r.findIndex(G=>G.sourceInfo.name===e.sourceName):0);T.useEffect(()=>{e.isMarkdown||Sv(e.value,"malloy").then(G=>{S(G)})},[e]),Je.useEffect(()=>{document.documentElement.setAttribute("data-color-mode","light")});const[H,F]=T.useState(!1),z=()=>{c(),F(!1)},k=r.length===0,P=Je.useCallback(()=>{const G=r[$],K=G?.modelPath||e.modelPath||"",U=G?.sourceInfo.name||e.sourceName||"";o({...e,value:e.isMarkdown?p:E.query,result:E.malloyResult?JSON.stringify(E.malloyResult):void 0,queryInfo:E.malloyQuery?JSON.stringify(E.malloyQuery):void 0,sourceName:U,modelPath:K})},[e,p,E,o,$,r]),N=y.jsx(vo,{title:"Delete Cell",children:y.jsx(kr,{size:"small",onClick:()=>F(!0),children:y.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:y.jsx("path",{d:"M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2m2 0v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14zM10 11v6M14 11v6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}),B=y.jsxs(sc,{open:H,onClose:()=>F(!1),children:[y.jsx(lc,{children:"Confirm Delete"}),y.jsx(ic,{children:y.jsx(gt,{children:"Are you sure you want to delete this cell?"})}),y.jsxs(lL,{children:[y.jsx(wo,{onClick:()=>F(!1),children:"Cancel"}),y.jsx(wo,{onClick:z,color:"error",children:"Delete"})]})]}),L=()=>{P(),s()},V=e.isMarkdown?y.jsxs(y.Fragment,{children:[n?y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}):y.jsx(vo,{title:"Edit",children:y.jsx(kr,{size:"small",onClick:i,children:y.jsx(aP,{})})}),!n&&N]}):y.jsxs(y.Fragment,{children:[!t&&y.jsx(vo,{title:g?"Hide Code":"View Code",children:y.jsx(kr,{size:"small",onClick:()=>{m(!g)},children:y.jsx(gF,{})})}),!t&&e.result&&y.jsx(vo,{title:v?"Hide Embedding":"View Embedding",children:y.jsx(kr,{size:"small",onClick:()=>{C(!v)},children:y.jsx(A_,{})})}),t&&y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}),!t&&y.jsx(vo,{title:"Edit",children:y.jsx(kr,{size:"small",onClick:i,children:y.jsx(aP,{})})}),!t&&N]}),q=t||n,Y=n?y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}):t?y.jsx(vo,{title:"Save",children:y.jsx(kr,{size:"small",onClick:L,children:y.jsx(wb,{})})}):null,I=A&&y.jsx(jt,{sx:{position:"absolute",top:"4px",right:"4px",display:"flex",gap:"8px",backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",borderRadius:"8px",padding:"2px 4px",boxShadow:1,zIndex:10},children:!q&&y.jsxs(y.Fragment,{children:[u(!0),u(!1),V]})||Y});return y.jsxs(ev,{sx:{position:"relative",marginTop:"5px",marginBottom:"5px",borderWidth:"1.5px",backgroundColor:"#fff",minHeight:"50px"},onMouseEnter:()=>R(!0),onMouseLeave:()=>{R(!1)},children:[I,e.isMarkdown?y.jsx(y.Fragment,{children:n?y.jsx(j9,{value:p,preview:"edit",autoFocus:!0,onChange:G=>{f(G),o({...e,value:G})},onBlur:()=>{P(),A||L()}}):y.jsx(jt,{sx:{px:.5,pt:0,mt:0,"& h1, & h2, & h3, & h4, & h5, & h6":{mt:.5,mb:.5},"& p":{mt:.5,mb:.5},"& ul, & ol":{mt:.5,mb:.5},"& li":{mt:0,mb:0},"& pre, & code":{mt:.5,mb:.5},"& blockquote":{mt:.5,mb:.5}},children:e.value?y.jsx(jt,{onClick:i,sx:{cursor:"pointer"},children:y.jsx(W0,{children:e.value})}):y.jsxs(jt,{onClick:i,sx:{cursor:"pointer"},children:[y.jsx(gt,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Markdown is empty"}),y.jsx(gt,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})})}):y.jsxs(y.Fragment,{children:[y.jsx(P0,{in:v,timeout:"auto",unmountOnExit:!0,children:y.jsx(ca,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:y.jsx(gt,{component:"div",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:w}})})}),y.jsx(P0,{in:g,timeout:"auto",unmountOnExit:!0,children:y.jsx(ca,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:y.jsx(gt,{component:"div",className:"content",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:x}})})}),t&&(k?y.jsxs(y.Fragment,{children:[y.jsx(gt,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"No Model Imports"}),y.jsx(gt,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Please add a model import above."})]}):y.jsx(bCe,{sourceAndPaths:r,resourceUri:a,onQueryChange:G=>{D(G)},onSourceChange:G=>{j(G)},cell:e})),!t&&e.result&&y.jsx(ev,{variant:"outlined",sx:{borderRadius:0},children:y.jsx(K1,{result:e.result,maxHeight:800})}),!t&&!e.result&&y.jsxs(jt,{onClick:i,sx:{cursor:"pointer"},children:[y.jsx(gt,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Explore is empty"}),y.jsx(gt,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})]}),H&&B]})}const gB=T.createContext(void 0);function xCe({children:e,workbookStorage:t}){const n=T.useMemo(()=>({workbookStorage:t}),[t]);return y.jsx(gB.Provider,{value:n,children:e})}function SCe(){const e=T.useContext(gB);if(!e)throw new Error("useWorkbookStorage must be used within a WorkbookStorageProvider");return e}const dc=dn(y.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})),CCe=dn(y.jsx("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zM7 9l1.41 1.41L11 7.83V16h2V7.83l2.59 2.58L17 9l-5-5z"}));function $a({error:e,context:t}){const n=e.data?.message||"Unknown Error";return y.jsxs(y.Fragment,{children:[t&&y.jsx(gt,{variant:"body2",sx:{p:"10px",m:"auto"},children:t}),y.jsx("pre",{style:{whiteSpace:"pre-wrap",color:"red",padding:"10px",margin:"auto"},children:n})]})}function ECe({initialSelectedModels:e,onModelChange:t,resourceUri:n}){const{projectName:r,packageName:a,versionId:o}=Ar(n),{apiClients:s}=rr(),{data:i,isLoading:c,isSuccess:u,isError:p,error:f}=Ba({queryKey:["models",r,a,o],queryFn:()=>s.models.listModels(r,a,o)}),[g,m]=Je.useState(e||[]),[v,C]=Je.useState(null);Je.useEffect(()=>{m(e||[])},[e]);const x=E=>{const D=g.filter(A=>A!==E);m(D),t(D)},S=E=>{const D=[...g,E];m(D),t(D),C(null)};let w=[];return u&&i?.data&&(w=i.data.filter(E=>!g.includes(E.path)).map(E=>E.path)),p?y.jsx($a,{error:f,context:`${r} > ${a} > Model Picker`}):y.jsxs(y.Fragment,{children:[y.jsxs(cL,{fullWidth:!0,children:[c&&y.jsx(gt,{children:"Loading..."}),y.jsxs(ca,{direction:"row",spacing:1,children:[g.map(E=>y.jsx(Jb,{label:E,onDelete:()=>x(E),deleteIcon:y.jsx(dc,{}),sx:{marginBottom:"5px"}},E)),y.jsx(wo,{size:"small",startIcon:y.jsx(CCe,{}),onClick:E=>C(E.currentTarget),disabled:c||p||w.length===0,children:"Add Model"})]})]}),y.jsxs(Tg,{anchorEl:v,open:!!v,onClose:()=>C(null),children:[y.jsx(gt,{variant:"subtitle2",sx:{ml:1},children:"Models"}),y.jsx(pi,{}),w.length===0?y.jsx(cc,{disabled:!0,children:"No models available"}):w.map(E=>y.jsx(cc,{onClick:()=>S(E),children:y.jsx(gt,{variant:"body2",children:E})},E))]})]})}function TCe(){const e=U4();return(t,n)=>{if(!n||!n.metaKey&&!n.ctrlKey&&!n.shiftKey&&n.button!==1){e(t);return}const r=new URL(t,window.location.href).href;(n.metaKey||n.ctrlKey||n.button===1||n.shiftKey)&&window.open(r,"_blank")}}function $Pe({workbookPath:e,resourceUri:t}){const n=TCe(),{server:r,getAccessToken:a}=rr(),{apiClients:o}=rr(),{workbookStorage:s}=SCe(),{projectName:i,packageName:c}=Ar(t),[u,p]=Je.useState(void 0),[f,g]=Je.useState(void 0);if(!s)throw new Error("Workbook storage be provided via WorkbookStorageProvider");const[m,v]=Je.useState(),[C,x]=Je.useState(),[S,w]=Je.useState(),[E,D]=Je.useState([]),[A,R]=Je.useState(null),[$,j]=Je.useState(null),H=!!A,F=()=>{R(null),j(null)},z=(G,K)=>{m&&(v(m.insertCell(K,{isMarkdown:G,value:""})),G?w(K):x(K),F(),console.log("handleAddCell",G,K))},[k,P]=Je.useState(!1),N=()=>{P(!0)},B=async()=>{e&&s&&await s.deleteWorkbook(e).then(()=>{g(void 0),p(void 0)}).catch(G=>{g(`Error deleting workbook: ${G.message}`),p(void 0)}),P(!1),n(`/${i}/${c}`)},L=()=>{P(!1)},V=Je.useCallback(async()=>{if(!m){console.log("No workbook data ref");return}try{v(await m.saveWorkbook()),g(void 0),p("Workbook saved")}catch(G){g(`Error saving workbook: ${G.message}`),p(void 0)}},[m]);if(Je.useEffect(()=>{m&&(async()=>{const G=new Map(E.map(({modelPath:J,sourceInfos:Z})=>[J,Z])),K=[],U=[];for(const J of m.getModels())G.has(J)?K.push({modelPath:J,sourceInfos:G.get(J)}):(console.log("Fetching model from Publisher",J),U.push(o.models.getModel(i,c,J,void 0).then(Z=>({modelPath:J,sourceInfos:Z.data.sourceInfos.map(Q=>JSON.parse(Q))}))));if(U.length>0){const J=await Promise.all(U);D([...K,...J])}else D(K)})()},[a,m,c,i,r]),Je.useEffect(()=>{e&&cm.loadWorkbook(s,e).then(G=>{v(G)})},[e,s]),!m)return y.jsx("div",{children:"Loading..."});const q=G=>{const K=[];for(const U of G)for(const J of U.sourceInfos)K.push({modelPath:U.modelPath,sourceInfo:J});return K},Y=(G,K)=>y.jsx(wo,{size:"small",startIcon:y.jsx(k_,{}),onClick:()=>z(G,K),variant:"contained",sx:{backgroundColor:"#fff",color:U=>U.palette.mode==="dark"?U.palette.grey[100]:U.palette.grey[700],boxShadow:"none","&:hover":{backgroundColor:U=>U.palette.mode==="dark"?U.palette.grey[500]:U.palette.grey[300],boxShadow:"none"}},children:G?"Markdown":"Explore"}),I=y.jsxs(jt,{sx:{display:"flex",gap:1,justifyContent:"center",flex:2},children:[Y(!1,m.getCells().length),Y(!0,m.getCells().length)]});return y.jsxs(ev,{variant:"outlined",children:[y.jsxs(hF,{children:[y.jsx(jt,{sx:{mb:2},children:y.jsx(jt,{sx:{minHeight:"24px"},children:f?y.jsx(gt,{color:"error",variant:"body2",children:f}):u?y.jsx(gt,{color:"success",variant:"body2",children:u}):y.jsx("span",{children:" "})})}),y.jsxs(Fd,{sx:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},children:[y.jsxs(Fd,{direction:"row",spacing:1,alignItems:"center",children:[y.jsx(gt,{variant:"overline",sx:{fontSize:"13px",fontWeight:"bold",verticalAlign:"middle"},children:"Workbook"}),y.jsx(gt,{variant:"subtitle2",sx:{fontSize:"13px",fontWeight:"normal",verticalAlign:"middle",ml:1},children:`${e.workspace} > ${e.path}`})]}),y.jsxs(Fd,{sx:{display:"flex",flexDirection:"row",gap:1},children:[y.jsx(jt,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:y.jsx(wCe,{workbookData:m})}),y.jsxs(jt,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:[y.jsx(wo,{color:"error",onClick:N,size:"small",children:"Delete"}),y.jsxs(sc,{open:k,onClose:L,children:[y.jsx(lc,{children:"Delete Workbook"}),y.jsx(ic,{children:y.jsxs(RZ,{children:['Are you sure you want to delete the workbook "',e.path,'"? This action cannot be undone.']})}),y.jsxs(lL,{children:[y.jsx(wo,{onClick:L,color:"primary",size:"small",children:"Cancel"}),y.jsx(wo,{onClick:B,color:"error",autoFocus:!0,size:"small",children:"Delete"})]})]})]})]})]}),y.jsx(pi,{}),y.jsxs(Fd,{sx:{display:"flex",flexDirection:"row",width:"100%",mt:2},children:[y.jsx(jt,{sx:{flex:1},children:y.jsx(ECe,{initialSelectedModels:m.getModels(),onModelChange:G=>{v(m.setModels(G)),V()},resourceUri:t})}),y.jsx(jt,{sx:{flex:1}})]})]}),y.jsx(__,{children:y.jsxs(Fd,{children:[m.getCells().length===0&&y.jsxs(y.Fragment,{children:[y.jsx(gt,{sx:{textAlign:"center",p:2,variant:"subtitle2",fontWeight:"medium"},children:"Workbook is empty"}),y.jsx(gt,{variant:"body2",sx:{textAlign:"center",mb:2,variant:"body2"},children:"Click the + buttons to add a markdown or code cell."})]}),m.getCells().map((G,K)=>y.jsx(Je.Fragment,{children:y.jsx(vCe,{cell:G,resourceUri:t,addButtonCallback:U=>Y(U,K),sourceAndPaths:q(E),editingMarkdown:S===K,editingMalloy:C===K,onDelete:()=>{v(m.deleteCell(K)),V()},onCellChange:U=>{v(m.setCell(K,U))},onEdit:()=>{G.isMarkdown?w(K):x(K)},onClose:()=>{G.isMarkdown?w(void 0):x(void 0),V()}},`${K}-${G.isMarkdown}-${e.workspace}-${e.path}`)},`${K}-${m.getCells().length}`)),I,y.jsxs(Tg,{anchorEl:A,open:H,onClose:F,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:[y.jsx(cc,{onClick:()=>z(!0,$??0),children:"Add Markdown"}),y.jsx(cc,{onClick:()=>z(!1,$??0),children:"Add Malloy"})]}),y.jsx(Fd,{sx:{flexDirection:"row",justifyContent:"flex-end",p:1}})]})})]})}function wCe({workbookData:e}){const[t,n]=Je.useState(!1);return y.jsx(wo,{color:"primary",onClick:async()=>{if(!e)return;const r=e.toMalloyWorkbook();try{await navigator.clipboard.writeText(r),n(!0),setTimeout(()=>n(!1),1500)}catch{n(!1),alert("Failed to copy to clipboard")}},size:"small",children:t?"Copied!":"Export"})}const e5="Local";class kCe{async listWorkspaces(t){return Promise.resolve([{name:e5,description:"Stored locally- only accessible to this browser",writeable:!0}])}async listWorkbooks(t){const n=[];for(let r=0;r<localStorage.length;r++){const a=localStorage.key(r);n.push({path:a,workspace:e5})}return n}async getWorkbook(t){const n=localStorage.getItem(t.path);if(n===null)throw new Error(`Notebook not found at path: ${t}`);return n}async deleteWorkbook(t){if(localStorage.getItem(t.path)===null)throw new Error(`Notebook not found at path: ${t}`);localStorage.removeItem(t.path)}async saveWorkbook(t,n){localStorage.setItem(t.path,n)}async moveWorkbook(t,n){const r=localStorage.getItem(t.path);if(r===null)throw new Error(`Notebook not found at path: ${t.path}`);localStorage.setItem(n.path,r),localStorage.removeItem(t.path)}}const _Ce=e=>{const t=T.useRef({});return T.useEffect(()=>{t.current=e}),t.current};function t5({array1:e,array2:t,parser:n=r=>r}){return e&&t&&e.length===t.length&&e.every((r,a)=>n(r)===n(t[a]))}function n5(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function ACe(e={}){const{ignoreAccents:t=!0,ignoreCase:n=!0,limit:r,matchFrom:a="any",stringify:o,trim:s=!1}=e;return(i,{inputValue:c,getOptionLabel:u})=>{let p=s?c.trim():c;n&&(p=p.toLowerCase()),t&&(p=n5(p));const f=p?i.filter(g=>{let m=(o||u)(g);return n&&(m=m.toLowerCase()),t&&(m=n5(m)),a==="start"?m.startsWith(p):m.includes(p)}):i;return typeof r=="number"?f.slice(0,r):f}}const DCe=ACe(),r5=5,RCe=e=>e.current!==null&&e.current.parentElement?.contains(document.activeElement),MCe=[];function a5(e,t,n,r){if(t||e==null||r)return"";const a=n(e);return typeof a=="string"?a:""}function OCe(e){const{unstable_isActiveElementInListbox:t=RCe,unstable_classNamePrefix:n="Mui",autoComplete:r=!1,autoHighlight:a=!1,autoSelect:o=!1,blurOnSelect:s=!1,clearOnBlur:i=!e.freeSolo,clearOnEscape:c=!1,componentName:u="useAutocomplete",defaultValue:p=e.multiple?MCe:null,disableClearable:f=!1,disableCloseOnSelect:g=!1,disabled:m,disabledItemsFocusable:v=!1,disableListWrap:C=!1,filterOptions:x=DCe,filterSelectedOptions:S=!1,freeSolo:w=!1,getOptionDisabled:E,getOptionKey:D,getOptionLabel:A=De=>De.label??De,groupBy:R,handleHomeEndKeys:$=!e.freeSolo,id:j,includeInputInList:H=!1,inputValue:F,isOptionEqualToValue:z=(De,Oe)=>De===Oe,multiple:k=!1,onChange:P,onClose:N,onHighlightChange:B,onInputChange:L,onOpen:V,open:q,openOnFocus:Y=!1,options:I,readOnly:G=!1,renderValue:K,selectOnFocus:U=!e.freeSolo,value:J}=e,Z=Ps(j);let Q=A;Q=De=>{const Oe=A(De);return typeof Oe!="string"?String(Oe):Oe};const re=T.useRef(!1),te=T.useRef(!0),se=T.useRef(null),pe=T.useRef(null),[de,be]=T.useState(null),[oe,le]=T.useState(-1),Fe=a?0:-1,Ae=T.useRef(Fe),me=T.useRef(a5(p??J,k,Q)).current,[xe,Xe]=Ao({controlled:J,default:p,name:u}),[je,Ue]=Ao({controlled:F,default:me,name:u,state:"inputValue"}),[He,Dt]=T.useState(!1),Rt=T.useCallback((De,Oe,ut)=>{if(!(k?xe.length<Oe.length:Oe!==null)&&!i)return;const It=a5(Oe,k,Q,K);je!==It&&(Ue(It),L&&L(De,It,ut))},[Q,je,k,L,Ue,i,xe,K]),[bt,ge]=Ao({controlled:q,default:!1,name:u,state:"open"}),[Ce,Ge]=T.useState(!0),it=!k&&xe!=null&&je===Q(xe),at=bt&&!G,Ye=at?x(I.filter(De=>!(S&&(k?xe:[xe]).some(Oe=>Oe!==null&&z(De,Oe)))),{inputValue:it&&Ce?"":je,getOptionLabel:Q}):[],zt=_Ce({filteredOptions:Ye,value:xe,inputValue:je});T.useEffect(()=>{const De=xe!==zt.value;He&&!De||w&&!De||Rt(null,xe,"reset")},[xe,Rt,He,zt.value,w]);const Gt=bt&&Ye.length>0&&!G,rt=dt(De=>{if(De===-1)se.current.focus();else{const Oe=K?"data-item-index":"data-tag-index";de.querySelector(`[${Oe}="${De}"]`).focus()}});T.useEffect(()=>{k&&oe>xe.length-1&&(le(-1),rt(-1))},[xe,k,oe,rt]);function he(De,Oe){if(!pe.current||De<0||De>=Ye.length)return-1;let ut=De;for(;;){const It=pe.current.querySelector(`[data-option-index="${ut}"]`),Bt=v?!1:!It||It.disabled||It.getAttribute("aria-disabled")==="true";if(It&&It.hasAttribute("tabindex")&&!Bt)return ut;if(Oe==="next"?ut=(ut+1)%Ye.length:ut=(ut-1+Ye.length)%Ye.length,ut===De)return-1}}const Se=dt(({event:De,index:Oe,reason:ut})=>{if(Ae.current=Oe,Oe===-1?se.current.removeAttribute("aria-activedescendant"):se.current.setAttribute("aria-activedescendant",`${Z}-option-${Oe}`),B&&["mouse","keyboard","touch"].includes(ut)&&B(De,Oe===-1?null:Ye[Oe],ut),!pe.current)return;const It=pe.current.querySelector(`[role="option"].${n}-focused`);It&&(It.classList.remove(`${n}-focused`),It.classList.remove(`${n}-focusVisible`));let Bt=pe.current;if(pe.current.getAttribute("role")!=="listbox"&&(Bt=pe.current.parentElement.querySelector('[role="listbox"]')),!Bt)return;if(Oe===-1){Bt.scrollTop=0;return}const In=pe.current.querySelector(`[data-option-index="${Oe}"]`);if(In&&(In.classList.add(`${n}-focused`),ut==="keyboard"&&In.classList.add(`${n}-focusVisible`),Bt.scrollHeight>Bt.clientHeight&&ut!=="mouse"&&ut!=="touch")){const ar=In,ya=Bt.clientHeight+Bt.scrollTop,Qt=ar.offsetTop+ar.offsetHeight;Qt>ya?Bt.scrollTop=Qt-Bt.clientHeight:ar.offsetTop-ar.offsetHeight*(R?1.3:0)<Bt.scrollTop&&(Bt.scrollTop=ar.offsetTop-ar.offsetHeight*(R?1.3:0))}}),lt=dt(({event:De,diff:Oe,direction:ut="next",reason:It})=>{if(!at)return;const Bt=he((()=>{const In=Ye.length-1;if(Oe==="reset")return Fe;if(Oe==="start")return 0;if(Oe==="end")return In;const ar=Ae.current+Oe;return ar<0?ar===-1&&H?-1:C&&Ae.current!==-1||Math.abs(Oe)>1?0:In:ar>In?ar===In+1&&H?-1:C||Math.abs(Oe)>1?In:0:ar})(),ut);if(Se({index:Bt,reason:It,event:De}),r&&Oe!=="reset")if(Bt===-1)se.current.value=je;else{const In=Q(Ye[Bt]);se.current.value=In,In.toLowerCase().indexOf(je.toLowerCase())===0&&je.length>0&&se.current.setSelectionRange(je.length,In.length)}}),nt=!t5({array1:zt.filteredOptions,array2:Ye,parser:Q}),tn=()=>{const De=(Oe,ut)=>{const It=Oe?Q(Oe):"",Bt=ut?Q(ut):"";return It===Bt};if(Ae.current!==-1&&!t5({array1:zt.filteredOptions,array2:Ye,parser:Q})&&zt.inputValue===je&&(k?xe.length===zt.value.length&&zt.value.every((Oe,ut)=>Q(xe[ut])===Q(Oe)):De(zt.value,xe))){const Oe=zt.filteredOptions[Ae.current];if(Oe)return Ye.findIndex(ut=>Q(ut)===Q(Oe))}return-1},Pn=T.useCallback(()=>{if(!at)return;const De=tn();if(De!==-1){Ae.current=De;return}const Oe=k?xe[0]:xe;if(Ye.length===0||Oe==null){lt({diff:"reset"});return}if(pe.current){if(Oe!=null){const ut=Ye[Ae.current];if(k&&ut&&xe.findIndex(Bt=>z(ut,Bt))!==-1)return;const It=Ye.findIndex(Bt=>z(Bt,Oe));It===-1?lt({diff:"reset"}):Se({index:It});return}if(Ae.current>=Ye.length-1){Se({index:Ye.length-1});return}Se({index:Ae.current})}},[Ye.length,k?!1:xe,S,lt,Se,at,je,k]),Bn=dt(De=>{YT(pe,De),De&&Pn()});T.useEffect(()=>{nt&&Pn()},[Pn,nt]);const Yn=De=>{bt||(ge(!0),Ge(!0),V&&V(De))},lr=(De,Oe)=>{bt&&(ge(!1),N&&N(De,Oe))},mr=(De,Oe,ut,It)=>{if(k){if(xe.length===Oe.length&&xe.every((Bt,In)=>Bt===Oe[In]))return}else if(xe===Oe)return;P&&P(De,Oe,ut,It),Xe(Oe)},On=T.useRef(!1),Er=(De,Oe,ut="selectOption",It="options")=>{let Bt=ut,In=Oe;if(k){In=Array.isArray(xe)?xe.slice():[];const ar=In.findIndex(ya=>z(Oe,ya));ar===-1?In.push(Oe):It!=="freeSolo"&&(In.splice(ar,1),Bt="removeOption")}Rt(De,In,Bt),mr(De,In,Bt,{option:Oe}),!g&&(!De||!De.ctrlKey&&!De.metaKey)&&lr(De,Bt),(s===!0||s==="touch"&&On.current||s==="mouse"&&!On.current)&&se.current.blur()};function Mt(De,Oe){if(De===-1)return-1;let ut=De;for(;;){if(Oe==="next"&&ut===xe.length||Oe==="previous"&&ut===-1)return-1;const It=K?"data-item-index":"data-tag-index",Bt=de.querySelector(`[${It}="${ut}"]`);if(!Bt||!Bt.hasAttribute("tabindex")||Bt.disabled||Bt.getAttribute("aria-disabled")==="true")ut+=Oe==="next"?1:-1;else return ut}}const ce=(De,Oe)=>{if(!k)return;je===""&&lr(De,"toggleInput");let ut=oe;oe===-1?je===""&&Oe==="previous"&&(ut=xe.length-1):(ut+=Oe==="next"?1:-1,ut<0&&(ut=0),ut===xe.length&&(ut=-1)),ut=Mt(ut,Oe),le(ut),rt(ut)},ve=De=>{re.current=!0,Ue(""),L&&L(De,"","clear"),mr(De,k?[]:null,"clear")},_e=De=>Oe=>{if(De.onKeyDown&&De.onKeyDown(Oe),!Oe.defaultMuiPrevented&&(oe!==-1&&!["ArrowLeft","ArrowRight"].includes(Oe.key)&&(le(-1),rt(-1)),Oe.which!==229))switch(Oe.key){case"Home":at&&$&&(Oe.preventDefault(),lt({diff:"start",direction:"next",reason:"keyboard",event:Oe}));break;case"End":at&&$&&(Oe.preventDefault(),lt({diff:"end",direction:"previous",reason:"keyboard",event:Oe}));break;case"PageUp":Oe.preventDefault(),lt({diff:-r5,direction:"previous",reason:"keyboard",event:Oe}),Yn(Oe);break;case"PageDown":Oe.preventDefault(),lt({diff:r5,direction:"next",reason:"keyboard",event:Oe}),Yn(Oe);break;case"ArrowDown":Oe.preventDefault(),lt({diff:1,direction:"next",reason:"keyboard",event:Oe}),Yn(Oe);break;case"ArrowUp":Oe.preventDefault(),lt({diff:-1,direction:"previous",reason:"keyboard",event:Oe}),Yn(Oe);break;case"ArrowLeft":!k&&K?rt(0):ce(Oe,"previous");break;case"ArrowRight":!k&&K?rt(-1):ce(Oe,"next");break;case"Enter":if(Ae.current!==-1&&at){const ut=Ye[Ae.current],It=E?E(ut):!1;if(Oe.preventDefault(),It)return;Er(Oe,ut,"selectOption"),r&&se.current.setSelectionRange(se.current.value.length,se.current.value.length)}else w&&je!==""&&it===!1&&(k&&Oe.preventDefault(),Er(Oe,je,"createOption","freeSolo"));break;case"Escape":at?(Oe.preventDefault(),Oe.stopPropagation(),lr(Oe,"escape")):c&&(je!==""||k&&xe.length>0||K)&&(Oe.preventDefault(),Oe.stopPropagation(),ve(Oe));break;case"Backspace":if(k&&!G&&je===""&&xe.length>0){const ut=oe===-1?xe.length-1:oe,It=xe.slice();It.splice(ut,1),mr(Oe,It,"removeOption",{option:xe[ut]})}!k&&K&&!G&&(Xe(null),rt(-1));break;case"Delete":if(k&&!G&&je===""&&xe.length>0&&oe!==-1){const ut=oe,It=xe.slice();It.splice(ut,1),mr(Oe,It,"removeOption",{option:xe[ut]})}!k&&K&&!G&&(Xe(null),rt(-1));break}},qe=De=>{Dt(!0),Y&&!re.current&&Yn(De)},Ze=De=>{if(t(pe)){se.current.focus();return}Dt(!1),te.current=!0,re.current=!1,o&&Ae.current!==-1&&at?Er(De,Ye[Ae.current],"blur"):o&&w&&je!==""?Er(De,je,"blur","freeSolo"):i&&Rt(De,xe,"blur"),lr(De,"blur")},St=De=>{const Oe=De.target.value;je!==Oe&&(Ue(Oe),Ge(!1),L&&L(De,Oe,"input")),Oe===""?!f&&!k&&mr(De,null,"clear"):Yn(De)},kt=De=>{const Oe=Number(De.currentTarget.getAttribute("data-option-index"));Ae.current!==Oe&&Se({event:De,index:Oe,reason:"mouse"})},Et=De=>{Se({event:De,index:Number(De.currentTarget.getAttribute("data-option-index")),reason:"touch"}),On.current=!0},_t=De=>{const Oe=Number(De.currentTarget.getAttribute("data-option-index"));Er(De,Ye[Oe],"selectOption"),On.current=!1},yt=De=>Oe=>{const ut=xe.slice();ut.splice(De,1),mr(Oe,ut,"removeOption",{option:xe[De]})},ft=De=>{mr(De,null,"removeOption",{option:xe})},vt=De=>{bt?lr(De,"toggleInput"):Yn(De)},Xt=De=>{De.currentTarget.contains(De.target)&&De.target.getAttribute("id")!==Z&&De.preventDefault()},An=De=>{De.currentTarget.contains(De.target)&&(se.current.focus(),U&&te.current&&se.current.selectionEnd-se.current.selectionStart===0&&se.current.select(),te.current=!1)},Kn=De=>{!m&&(je===""||!bt)&&vt(De)};let Qn=w&&je.length>0;Qn=Qn||(k?xe.length>0:xe!==null);let Yt=Ye;return R&&(Yt=Ye.reduce((De,Oe,ut)=>{const It=R(Oe);return De.length>0&&De[De.length-1].group===It?De[De.length-1].options.push(Oe):De.push({key:ut,index:ut,group:It,options:[Oe]}),De},[])),m&&He&&Ze(),{getRootProps:(De={})=>({...De,onKeyDown:_e(De),onMouseDown:Xt,onClick:An}),getInputLabelProps:()=>({id:`${Z}-label`,htmlFor:Z}),getInputProps:()=>({id:Z,value:je,onBlur:Ze,onFocus:qe,onChange:St,onMouseDown:Kn,"aria-activedescendant":at?"":null,"aria-autocomplete":r?"both":"list","aria-controls":Gt?`${Z}-listbox`:void 0,"aria-expanded":Gt,autoComplete:"off",ref:se,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:m}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:ve}),getItemProps:({index:De=0}={})=>({...k&&{key:De},...K?{"data-item-index":De}:{"data-tag-index":De},tabIndex:-1,...!G&&{onDelete:k?yt(De):ft}}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:vt}),getTagProps:({index:De})=>({key:De,"data-tag-index":De,tabIndex:-1,...!G&&{onDelete:yt(De)}}),getListboxProps:()=>({role:"listbox",id:`${Z}-listbox`,"aria-labelledby":`${Z}-label`,ref:Bn,onMouseDown:De=>{De.preventDefault()}}),getOptionProps:({index:De,option:Oe})=>{const ut=(k?xe:[xe]).some(Bt=>Bt!=null&&z(Oe,Bt)),It=E?E(Oe):!1;return{key:D?.(Oe)??Q(Oe),tabIndex:-1,role:"option",id:`${Z}-option-${De}`,onMouseMove:kt,onClick:_t,onTouchStart:Et,"data-option-index":De,"aria-disabled":It,"aria-selected":ut}},id:Z,inputValue:je,value:xe,dirty:Qn,expanded:at&&de,popupOpen:at,focused:He||oe!==-1,anchorEl:de,setAnchorEl:be,focusedItem:oe,focusedTag:oe,groupedOptions:Yt}}const yB=Ne.oneOfType([Ne.func,Ne.object]);var ro="top",ds="bottom",ps="right",ao="left",pA="auto",qg=[ro,ds,ps,ao],Mp="start",ag="end",ICe="clippingParents",bB="viewport",Rh="popper",NCe="reference",o5=qg.reduce(function(e,t){return e.concat([t+"-"+Mp,t+"-"+ag])},[]),vB=[].concat(qg,[pA]).reduce(function(e,t){return e.concat([t,t+"-"+Mp,t+"-"+ag])},[]),PCe="beforeRead",LCe="read",$Ce="afterRead",FCe="beforeMain",jCe="main",BCe="afterMain",zCe="beforeWrite",UCe="write",HCe="afterWrite",qCe=[PCe,LCe,$Ce,FCe,jCe,BCe,zCe,UCe,HCe];function hi(e){return e?(e.nodeName||"").toLowerCase():null}function Oo(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Mu(e){var t=Oo(e).Element;return e instanceof t||e instanceof Element}function ss(e){var t=Oo(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function fA(e){if(typeof ShadowRoot>"u")return!1;var t=Oo(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function VCe(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},a=t.attributes[n]||{},o=t.elements[n];!ss(o)||!hi(o)||(Object.assign(o.style,r),Object.keys(a).forEach(function(s){var i=a[s];i===!1?o.removeAttribute(s):o.setAttribute(s,i===!0?"":i)}))})}function WCe(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var a=t.elements[r],o=t.attributes[r]||{},s=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),i=s.reduce(function(c,u){return c[u]="",c},{});!ss(a)||!hi(a)||(Object.assign(a.style,i),Object.keys(o).forEach(function(c){a.removeAttribute(c)}))})}}const GCe={name:"applyStyles",enabled:!0,phase:"write",fn:VCe,effect:WCe,requires:["computeStyles"]};function ui(e){return e.split("-")[0]}var bu=Math.max,Cv=Math.min,Op=Math.round;function kw(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function xB(){return!/^((?!chrome|android).)*safari/i.test(kw())}function Ip(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),a=1,o=1;t&&ss(e)&&(a=e.offsetWidth>0&&Op(r.width)/e.offsetWidth||1,o=e.offsetHeight>0&&Op(r.height)/e.offsetHeight||1);var s=Mu(e)?Oo(e):window,i=s.visualViewport,c=!xB()&&n,u=(r.left+(c&&i?i.offsetLeft:0))/a,p=(r.top+(c&&i?i.offsetTop:0))/o,f=r.width/a,g=r.height/o;return{width:f,height:g,top:p,right:u+f,bottom:p+g,left:u,x:u,y:p}}function hA(e){var t=Ip(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function SB(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&fA(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function al(e){return Oo(e).getComputedStyle(e)}function YCe(e){return["table","td","th"].indexOf(hi(e))>=0}function Ec(e){return((Mu(e)?e.ownerDocument:e.document)||window.document).documentElement}function Q1(e){return hi(e)==="html"?e:e.assignedSlot||e.parentNode||(fA(e)?e.host:null)||Ec(e)}function s5(e){return!ss(e)||al(e).position==="fixed"?null:e.offsetParent}function KCe(e){var t=/firefox/i.test(kw()),n=/Trident/i.test(kw());if(n&&ss(e)){var r=al(e);if(r.position==="fixed")return null}var a=Q1(e);for(fA(a)&&(a=a.host);ss(a)&&["html","body"].indexOf(hi(a))<0;){var o=al(a);if(o.transform!=="none"||o.perspective!=="none"||o.contain==="paint"||["transform","perspective"].indexOf(o.willChange)!==-1||t&&o.willChange==="filter"||t&&o.filter&&o.filter!=="none")return a;a=a.parentNode}return null}function Vg(e){for(var t=Oo(e),n=s5(e);n&&YCe(n)&&al(n).position==="static";)n=s5(n);return n&&(hi(n)==="html"||hi(n)==="body"&&al(n).position==="static")?t:n||KCe(e)||t}function mA(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function Sm(e,t,n){return bu(e,Cv(t,n))}function QCe(e,t,n){var r=Sm(e,t,n);return r>n?n:r}function CB(){return{top:0,right:0,bottom:0,left:0}}function EB(e){return Object.assign({},CB(),e)}function TB(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var XCe=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,EB(typeof e!="number"?e:TB(e,qg))};function ZCe(e){var t,n=e.state,r=e.name,a=e.options,o=n.elements.arrow,s=n.modifiersData.popperOffsets,i=ui(n.placement),c=mA(i),u=[ao,ps].indexOf(i)>=0,p=u?"height":"width";if(!(!o||!s)){var f=XCe(a.padding,n),g=hA(o),m=c==="y"?ro:ao,v=c==="y"?ds:ps,C=n.rects.reference[p]+n.rects.reference[c]-s[c]-n.rects.popper[p],x=s[c]-n.rects.reference[c],S=Vg(o),w=S?c==="y"?S.clientHeight||0:S.clientWidth||0:0,E=C/2-x/2,D=f[m],A=w-g[p]-f[v],R=w/2-g[p]/2+E,$=Sm(D,R,A),j=c;n.modifiersData[r]=(t={},t[j]=$,t.centerOffset=$-R,t)}}function JCe(e){var t=e.state,n=e.options,r=n.element,a=r===void 0?"[data-popper-arrow]":r;a!=null&&(typeof a=="string"&&(a=t.elements.popper.querySelector(a),!a)||SB(t.elements.popper,a)&&(t.elements.arrow=a))}const eEe={name:"arrow",enabled:!0,phase:"main",fn:ZCe,effect:JCe,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Np(e){return e.split("-")[1]}var tEe={top:"auto",right:"auto",bottom:"auto",left:"auto"};function nEe(e,t){var n=e.x,r=e.y,a=t.devicePixelRatio||1;return{x:Op(n*a)/a||0,y:Op(r*a)/a||0}}function i5(e){var t,n=e.popper,r=e.popperRect,a=e.placement,o=e.variation,s=e.offsets,i=e.position,c=e.gpuAcceleration,u=e.adaptive,p=e.roundOffsets,f=e.isFixed,g=s.x,m=g===void 0?0:g,v=s.y,C=v===void 0?0:v,x=typeof p=="function"?p({x:m,y:C}):{x:m,y:C};m=x.x,C=x.y;var S=s.hasOwnProperty("x"),w=s.hasOwnProperty("y"),E=ao,D=ro,A=window;if(u){var R=Vg(n),$="clientHeight",j="clientWidth";if(R===Oo(n)&&(R=Ec(n),al(R).position!=="static"&&i==="absolute"&&($="scrollHeight",j="scrollWidth")),R=R,a===ro||(a===ao||a===ps)&&o===ag){D=ds;var H=f&&R===A&&A.visualViewport?A.visualViewport.height:R[$];C-=H-r.height,C*=c?1:-1}if(a===ao||(a===ro||a===ds)&&o===ag){E=ps;var F=f&&R===A&&A.visualViewport?A.visualViewport.width:R[j];m-=F-r.width,m*=c?1:-1}}var z=Object.assign({position:i},u&&tEe),k=p===!0?nEe({x:m,y:C},Oo(n)):{x:m,y:C};if(m=k.x,C=k.y,c){var P;return Object.assign({},z,(P={},P[D]=w?"0":"",P[E]=S?"0":"",P.transform=(A.devicePixelRatio||1)<=1?"translate("+m+"px, "+C+"px)":"translate3d("+m+"px, "+C+"px, 0)",P))}return Object.assign({},z,(t={},t[D]=w?C+"px":"",t[E]=S?m+"px":"",t.transform="",t))}function rEe(e){var t=e.state,n=e.options,r=n.gpuAcceleration,a=r===void 0?!0:r,o=n.adaptive,s=o===void 0?!0:o,i=n.roundOffsets,c=i===void 0?!0:i,u={placement:ui(t.placement),variation:Np(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,i5(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:c})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,i5(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:c})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const aEe={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:rEe,data:{}};var Fb={passive:!0};function oEe(e){var t=e.state,n=e.instance,r=e.options,a=r.scroll,o=a===void 0?!0:a,s=r.resize,i=s===void 0?!0:s,c=Oo(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return o&&u.forEach(function(p){p.addEventListener("scroll",n.update,Fb)}),i&&c.addEventListener("resize",n.update,Fb),function(){o&&u.forEach(function(p){p.removeEventListener("scroll",n.update,Fb)}),i&&c.removeEventListener("resize",n.update,Fb)}}const sEe={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:oEe,data:{}};var iEe={left:"right",right:"left",bottom:"top",top:"bottom"};function S0(e){return e.replace(/left|right|bottom|top/g,function(t){return iEe[t]})}var lEe={start:"end",end:"start"};function l5(e){return e.replace(/start|end/g,function(t){return lEe[t]})}function gA(e){var t=Oo(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function yA(e){return Ip(Ec(e)).left+gA(e).scrollLeft}function cEe(e,t){var n=Oo(e),r=Ec(e),a=n.visualViewport,o=r.clientWidth,s=r.clientHeight,i=0,c=0;if(a){o=a.width,s=a.height;var u=xB();(u||!u&&t==="fixed")&&(i=a.offsetLeft,c=a.offsetTop)}return{width:o,height:s,x:i+yA(e),y:c}}function uEe(e){var t,n=Ec(e),r=gA(e),a=(t=e.ownerDocument)==null?void 0:t.body,o=bu(n.scrollWidth,n.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),s=bu(n.scrollHeight,n.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),i=-r.scrollLeft+yA(e),c=-r.scrollTop;return al(a||n).direction==="rtl"&&(i+=bu(n.clientWidth,a?a.clientWidth:0)-o),{width:o,height:s,x:i,y:c}}function bA(e){var t=al(e),n=t.overflow,r=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+r)}function wB(e){return["html","body","#document"].indexOf(hi(e))>=0?e.ownerDocument.body:ss(e)&&bA(e)?e:wB(Q1(e))}function Cm(e,t){var n;t===void 0&&(t=[]);var r=wB(e),a=r===((n=e.ownerDocument)==null?void 0:n.body),o=Oo(r),s=a?[o].concat(o.visualViewport||[],bA(r)?r:[]):r,i=t.concat(s);return a?i:i.concat(Cm(Q1(s)))}function _w(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function dEe(e,t){var n=Ip(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function c5(e,t,n){return t===bB?_w(cEe(e,n)):Mu(t)?dEe(t,n):_w(uEe(Ec(e)))}function pEe(e){var t=Cm(Q1(e)),n=["absolute","fixed"].indexOf(al(e).position)>=0,r=n&&ss(e)?Vg(e):e;return Mu(r)?t.filter(function(a){return Mu(a)&&SB(a,r)&&hi(a)!=="body"}):[]}function fEe(e,t,n,r){var a=t==="clippingParents"?pEe(e):[].concat(t),o=[].concat(a,[n]),s=o[0],i=o.reduce(function(c,u){var p=c5(e,u,r);return c.top=bu(p.top,c.top),c.right=Cv(p.right,c.right),c.bottom=Cv(p.bottom,c.bottom),c.left=bu(p.left,c.left),c},c5(e,s,r));return i.width=i.right-i.left,i.height=i.bottom-i.top,i.x=i.left,i.y=i.top,i}function kB(e){var t=e.reference,n=e.element,r=e.placement,a=r?ui(r):null,o=r?Np(r):null,s=t.x+t.width/2-n.width/2,i=t.y+t.height/2-n.height/2,c;switch(a){case ro:c={x:s,y:t.y-n.height};break;case ds:c={x:s,y:t.y+t.height};break;case ps:c={x:t.x+t.width,y:i};break;case ao:c={x:t.x-n.width,y:i};break;default:c={x:t.x,y:t.y}}var u=a?mA(a):null;if(u!=null){var p=u==="y"?"height":"width";switch(o){case Mp:c[u]=c[u]-(t[p]/2-n[p]/2);break;case ag:c[u]=c[u]+(t[p]/2-n[p]/2);break}}return c}function og(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=r===void 0?e.placement:r,o=n.strategy,s=o===void 0?e.strategy:o,i=n.boundary,c=i===void 0?ICe:i,u=n.rootBoundary,p=u===void 0?bB:u,f=n.elementContext,g=f===void 0?Rh:f,m=n.altBoundary,v=m===void 0?!1:m,C=n.padding,x=C===void 0?0:C,S=EB(typeof x!="number"?x:TB(x,qg)),w=g===Rh?NCe:Rh,E=e.rects.popper,D=e.elements[v?w:g],A=fEe(Mu(D)?D:D.contextElement||Ec(e.elements.popper),c,p,s),R=Ip(e.elements.reference),$=kB({reference:R,element:E,placement:a}),j=_w(Object.assign({},E,$)),H=g===Rh?j:R,F={top:A.top-H.top+S.top,bottom:H.bottom-A.bottom+S.bottom,left:A.left-H.left+S.left,right:H.right-A.right+S.right},z=e.modifiersData.offset;if(g===Rh&&z){var k=z[a];Object.keys(F).forEach(function(P){var N=[ps,ds].indexOf(P)>=0?1:-1,B=[ro,ds].indexOf(P)>=0?"y":"x";F[P]+=k[B]*N})}return F}function hEe(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=n.boundary,o=n.rootBoundary,s=n.padding,i=n.flipVariations,c=n.allowedAutoPlacements,u=c===void 0?vB:c,p=Np(r),f=p?i?o5:o5.filter(function(v){return Np(v)===p}):qg,g=f.filter(function(v){return u.indexOf(v)>=0});g.length===0&&(g=f);var m=g.reduce(function(v,C){return v[C]=og(e,{placement:C,boundary:a,rootBoundary:o,padding:s})[ui(C)],v},{});return Object.keys(m).sort(function(v,C){return m[v]-m[C]})}function mEe(e){if(ui(e)===pA)return[];var t=S0(e);return[l5(e),t,l5(t)]}function gEe(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var a=n.mainAxis,o=a===void 0?!0:a,s=n.altAxis,i=s===void 0?!0:s,c=n.fallbackPlacements,u=n.padding,p=n.boundary,f=n.rootBoundary,g=n.altBoundary,m=n.flipVariations,v=m===void 0?!0:m,C=n.allowedAutoPlacements,x=t.options.placement,S=ui(x),w=S===x,E=c||(w||!v?[S0(x)]:mEe(x)),D=[x].concat(E).reduce(function(J,Z){return J.concat(ui(Z)===pA?hEe(t,{placement:Z,boundary:p,rootBoundary:f,padding:u,flipVariations:v,allowedAutoPlacements:C}):Z)},[]),A=t.rects.reference,R=t.rects.popper,$=new Map,j=!0,H=D[0],F=0;F<D.length;F++){var z=D[F],k=ui(z),P=Np(z)===Mp,N=[ro,ds].indexOf(k)>=0,B=N?"width":"height",L=og(t,{placement:z,boundary:p,rootBoundary:f,altBoundary:g,padding:u}),V=N?P?ps:ao:P?ds:ro;A[B]>R[B]&&(V=S0(V));var q=S0(V),Y=[];if(o&&Y.push(L[k]<=0),i&&Y.push(L[V]<=0,L[q]<=0),Y.every(function(J){return J})){H=z,j=!1;break}$.set(z,Y)}if(j)for(var I=v?3:1,G=function(J){var Z=D.find(function(Q){var re=$.get(Q);if(re)return re.slice(0,J).every(function(te){return te})});if(Z)return H=Z,"break"},K=I;K>0;K--){var U=G(K);if(U==="break")break}t.placement!==H&&(t.modifiersData[r]._skip=!0,t.placement=H,t.reset=!0)}}const yEe={name:"flip",enabled:!0,phase:"main",fn:gEe,requiresIfExists:["offset"],data:{_skip:!1}};function u5(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function d5(e){return[ro,ps,ds,ao].some(function(t){return e[t]>=0})}function bEe(e){var t=e.state,n=e.name,r=t.rects.reference,a=t.rects.popper,o=t.modifiersData.preventOverflow,s=og(t,{elementContext:"reference"}),i=og(t,{altBoundary:!0}),c=u5(s,r),u=u5(i,a,o),p=d5(c),f=d5(u);t.modifiersData[n]={referenceClippingOffsets:c,popperEscapeOffsets:u,isReferenceHidden:p,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":f})}const vEe={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:bEe};function xEe(e,t,n){var r=ui(e),a=[ao,ro].indexOf(r)>=0?-1:1,o=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,s=o[0],i=o[1];return s=s||0,i=(i||0)*a,[ao,ps].indexOf(r)>=0?{x:i,y:s}:{x:s,y:i}}function SEe(e){var t=e.state,n=e.options,r=e.name,a=n.offset,o=a===void 0?[0,0]:a,s=vB.reduce(function(p,f){return p[f]=xEe(f,t.rects,o),p},{}),i=s[t.placement],c=i.x,u=i.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=c,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=s}const CEe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:SEe};function EEe(e){var t=e.state,n=e.name;t.modifiersData[n]=kB({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}const TEe={name:"popperOffsets",enabled:!0,phase:"read",fn:EEe,data:{}};function wEe(e){return e==="x"?"y":"x"}function kEe(e){var t=e.state,n=e.options,r=e.name,a=n.mainAxis,o=a===void 0?!0:a,s=n.altAxis,i=s===void 0?!1:s,c=n.boundary,u=n.rootBoundary,p=n.altBoundary,f=n.padding,g=n.tether,m=g===void 0?!0:g,v=n.tetherOffset,C=v===void 0?0:v,x=og(t,{boundary:c,rootBoundary:u,padding:f,altBoundary:p}),S=ui(t.placement),w=Np(t.placement),E=!w,D=mA(S),A=wEe(D),R=t.modifiersData.popperOffsets,$=t.rects.reference,j=t.rects.popper,H=typeof C=="function"?C(Object.assign({},t.rects,{placement:t.placement})):C,F=typeof H=="number"?{mainAxis:H,altAxis:H}:Object.assign({mainAxis:0,altAxis:0},H),z=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,k={x:0,y:0};if(R){if(o){var P,N=D==="y"?ro:ao,B=D==="y"?ds:ps,L=D==="y"?"height":"width",V=R[D],q=V+x[N],Y=V-x[B],I=m?-j[L]/2:0,G=w===Mp?$[L]:j[L],K=w===Mp?-j[L]:-$[L],U=t.elements.arrow,J=m&&U?hA(U):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:CB(),Q=Z[N],re=Z[B],te=Sm(0,$[L],J[L]),se=E?$[L]/2-I-te-Q-F.mainAxis:G-te-Q-F.mainAxis,pe=E?-$[L]/2+I+te+re+F.mainAxis:K+te+re+F.mainAxis,de=t.elements.arrow&&Vg(t.elements.arrow),be=de?D==="y"?de.clientTop||0:de.clientLeft||0:0,oe=(P=z?.[D])!=null?P:0,le=V+se-oe-be,Fe=V+pe-oe,Ae=Sm(m?Cv(q,le):q,V,m?bu(Y,Fe):Y);R[D]=Ae,k[D]=Ae-V}if(i){var me,xe=D==="x"?ro:ao,Xe=D==="x"?ds:ps,je=R[A],Ue=A==="y"?"height":"width",He=je+x[xe],Dt=je-x[Xe],Rt=[ro,ao].indexOf(S)!==-1,bt=(me=z?.[A])!=null?me:0,ge=Rt?He:je-$[Ue]-j[Ue]-bt+F.altAxis,Ce=Rt?je+$[Ue]+j[Ue]-bt-F.altAxis:Dt,Ge=m&&Rt?QCe(ge,je,Ce):Sm(m?ge:He,je,m?Ce:Dt);R[A]=Ge,k[A]=Ge-je}t.modifiersData[r]=k}}const _Ee={name:"preventOverflow",enabled:!0,phase:"main",fn:kEe,requiresIfExists:["offset"]};function AEe(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function DEe(e){return e===Oo(e)||!ss(e)?gA(e):AEe(e)}function REe(e){var t=e.getBoundingClientRect(),n=Op(t.width)/e.offsetWidth||1,r=Op(t.height)/e.offsetHeight||1;return n!==1||r!==1}function MEe(e,t,n){n===void 0&&(n=!1);var r=ss(t),a=ss(t)&&REe(t),o=Ec(t),s=Ip(e,a,n),i={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(r||!r&&!n)&&((hi(t)!=="body"||bA(o))&&(i=DEe(t)),ss(t)?(c=Ip(t,!0),c.x+=t.clientLeft,c.y+=t.clientTop):o&&(c.x=yA(o))),{x:s.left+i.scrollLeft-c.x,y:s.top+i.scrollTop-c.y,width:s.width,height:s.height}}function OEe(e){var t=new Map,n=new Set,r=[];e.forEach(function(o){t.set(o.name,o)});function a(o){n.add(o.name);var s=[].concat(o.requires||[],o.requiresIfExists||[]);s.forEach(function(i){if(!n.has(i)){var c=t.get(i);c&&a(c)}}),r.push(o)}return e.forEach(function(o){n.has(o.name)||a(o)}),r}function IEe(e){var t=OEe(e);return qCe.reduce(function(n,r){return n.concat(t.filter(function(a){return a.phase===r}))},[])}function NEe(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function PEe(e){var t=e.reduce(function(n,r){var a=n[r.name];return n[r.name]=a?Object.assign({},a,r,{options:Object.assign({},a.options,r.options),data:Object.assign({},a.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var p5={placement:"bottom",modifiers:[],strategy:"absolute"};function f5(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function LEe(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,a=t.defaultOptions,o=a===void 0?p5:a;return function(s,i,c){c===void 0&&(c=o);var u={placement:"bottom",orderedModifiers:[],options:Object.assign({},p5,o),modifiersData:{},elements:{reference:s,popper:i},attributes:{},styles:{}},p=[],f=!1,g={state:u,setOptions:function(C){var x=typeof C=="function"?C(u.options):C;v(),u.options=Object.assign({},o,u.options,x),u.scrollParents={reference:Mu(s)?Cm(s):s.contextElement?Cm(s.contextElement):[],popper:Cm(i)};var S=IEe(PEe([].concat(r,u.options.modifiers)));return u.orderedModifiers=S.filter(function(w){return w.enabled}),m(),g.update()},forceUpdate:function(){if(!f){var C=u.elements,x=C.reference,S=C.popper;if(f5(x,S)){u.rects={reference:MEe(x,Vg(S),u.options.strategy==="fixed"),popper:hA(S)},u.reset=!1,u.placement=u.options.placement,u.orderedModifiers.forEach(function(j){return u.modifiersData[j.name]=Object.assign({},j.data)});for(var w=0;w<u.orderedModifiers.length;w++){if(u.reset===!0){u.reset=!1,w=-1;continue}var E=u.orderedModifiers[w],D=E.fn,A=E.options,R=A===void 0?{}:A,$=E.name;typeof D=="function"&&(u=D({state:u,options:R,name:$,instance:g})||u)}}}},update:NEe(function(){return new Promise(function(C){g.forceUpdate(),C(u)})}),destroy:function(){v(),f=!0}};if(!f5(s,i))return g;g.setOptions(c).then(function(C){!f&&c.onFirstUpdate&&c.onFirstUpdate(C)});function m(){u.orderedModifiers.forEach(function(C){var x=C.name,S=C.options,w=S===void 0?{}:S,E=C.effect;if(typeof E=="function"){var D=E({state:u,name:x,instance:g,options:w}),A=function(){};p.push(D||A)}})}function v(){p.forEach(function(C){return C()}),p=[]}return g}}var $Ee=[sEe,TEe,aEe,GCe,CEe,yEe,_Ee,eEe,vEe],FEe=LEe({defaultModifiers:$Ee});function Pp(e){return typeof e=="string"}function _B(e,t,n){return e===void 0||Pp(e)?t:{...t,ownerState:{...t.ownerState,...n}}}function Ma(e,t=[]){if(e===void 0)return{};const n={};return Object.keys(e).filter(r=>r.match(/^on[A-Z]/)&&typeof e[r]=="function"&&!t.includes(r)).forEach(r=>{n[r]=e[r]}),n}function h5(e){if(e===void 0)return{};const t={};return Object.keys(e).filter(n=>!(n.match(/^on[A-Z]/)&&typeof e[n]=="function")).forEach(n=>{t[n]=e[n]}),t}function AB(e){const{getSlotProps:t,additionalProps:n,externalSlotProps:r,externalForwardedProps:a,className:o}=e;if(!t){const m=pt(n?.className,o,a?.className,r?.className),v={...n?.style,...a?.style,...r?.style},C={...n,...a,...r};return m.length>0&&(C.className=m),Object.keys(v).length>0&&(C.style=v),{props:C,internalRef:void 0}}const s=Ma({...a,...r}),i=h5(r),c=h5(a),u=t(s),p=pt(u?.className,n?.className,o,a?.className,r?.className),f={...u?.style,...n?.style,...a?.style,...r?.style},g={...u,...n,...c,...i};return p.length>0&&(g.className=p),Object.keys(f).length>0&&(g.style=f),{props:g,internalRef:u.ref}}function ts(e,t,n){return typeof e=="function"?e(t,n):e}function mn(e){const{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:a=!1,...o}=e,s=a?{}:ts(n,r),{props:i,internalRef:c}=AB({...o,externalSlotProps:s}),u=gn(c,s?.ref,e.additionalProps?.ref);return _B(t,{...i,ref:u},r)}function af(e){return parseInt(T.version,10)>=19?e?.props?.ref||null:e?.ref||null}function jEe(e){return typeof e=="function"?e():e}const DB=T.forwardRef(function(e,t){const{children:n,container:r,disablePortal:a=!1}=e,[o,s]=T.useState(null),i=gn(T.isValidElement(n)?af(n):null,t);if(ea(()=>{a||s(jEe(r)||document.body)},[r,a]),ea(()=>{if(o&&!a)return YT(t,o),()=>{YT(t,null)}},[t,o,a]),a){if(T.isValidElement(n)){const c={ref:i};return T.cloneElement(n,c)}return n}return o&&gg.createPortal(n,o)});function BEe(e){return Tt("MuiPopper",e)}xt("MuiPopper",["root"]);function zEe(e,t){if(t==="ltr")return e;switch(e){case"bottom-end":return"bottom-start";case"bottom-start":return"bottom-end";case"top-end":return"top-start";case"top-start":return"top-end";default:return e}}function Aw(e){return typeof e=="function"?e():e}function UEe(e){return e.nodeType!==void 0}const HEe=e=>{const{classes:t}=e;return Ct({root:["root"]},BEe,t)},qEe={},VEe=T.forwardRef(function(e,t){const{anchorEl:n,children:r,direction:a,disablePortal:o,modifiers:s,open:i,placement:c,popperOptions:u,popperRef:p,slotProps:f={},slots:g={},TransitionProps:m,ownerState:v,...C}=e,x=T.useRef(null),S=gn(x,t),w=T.useRef(null),E=gn(w,p),D=T.useRef(E);ea(()=>{D.current=E},[E]),T.useImperativeHandle(p,()=>w.current,[]);const A=zEe(c,a),[R,$]=T.useState(A),[j,H]=T.useState(Aw(n));T.useEffect(()=>{w.current&&w.current.forceUpdate()}),T.useEffect(()=>{n&&H(Aw(n))},[n]),ea(()=>{if(!j||!i)return;const N=V=>{$(V.placement)};let B=[{name:"preventOverflow",options:{altBoundary:o}},{name:"flip",options:{altBoundary:o}},{name:"onUpdate",enabled:!0,phase:"afterWrite",fn:({state:V})=>{N(V)}}];s!=null&&(B=B.concat(s)),u&&u.modifiers!=null&&(B=B.concat(u.modifiers));const L=FEe(j,x.current,{placement:A,...u,modifiers:B});return D.current(L),()=>{L.destroy(),D.current(null)}},[j,o,s,i,u,A]);const F={placement:R};m!==null&&(F.TransitionProps=m);const z=HEe(e),k=g.root??"div",P=mn({elementType:k,externalSlotProps:f.root,externalForwardedProps:C,additionalProps:{role:"tooltip",ref:S},ownerState:e,className:z.root});return y.jsx(k,{...P,children:typeof r=="function"?r(F):r})}),WEe=T.forwardRef(function(e,t){const{anchorEl:n,children:r,container:a,direction:o="ltr",disablePortal:s=!1,keepMounted:i=!1,modifiers:c,open:u,placement:p="bottom",popperOptions:f=qEe,popperRef:g,style:m,transition:v=!1,slotProps:C={},slots:x={},...S}=e,[w,E]=T.useState(!0),D=()=>{E(!1)},A=()=>{E(!0)};if(!i&&!u&&(!v||w))return null;let R;if(a)R=a;else if(n){const H=Aw(n);R=H&&UEe(H)?Yr(H).body:Yr(null).body}const $=!u&&i&&(!v||w)?"none":void 0,j=v?{in:u,onEnter:D,onExited:A}:void 0;return y.jsx(DB,{disablePortal:s,container:R,children:y.jsx(VEe,{anchorEl:n,direction:o,disablePortal:s,modifiers:c,ref:t,open:v?!w:u,placement:p,popperOptions:f,popperRef:g,slotProps:C,slots:x,...S,style:{position:"fixed",top:0,left:0,display:$,...m},TransitionProps:j,children:r})})}),GEe=we(WEe,{name:"MuiPopper",slot:"Root"})({}),vA=T.forwardRef(function(e,t){const n=gs(),r=on({props:e,name:"MuiPopper"}),{anchorEl:a,component:o,components:s,componentsProps:i,container:c,disablePortal:u,keepMounted:p,modifiers:f,open:g,placement:m,popperOptions:v,popperRef:C,transition:x,slots:S,slotProps:w,...E}=r,D=S?.root??s?.Root,A={anchorEl:a,container:c,disablePortal:u,keepMounted:p,modifiers:f,open:g,placement:m,popperOptions:v,popperRef:C,transition:x,...E};return y.jsx(GEe,{as:o,direction:n?"rtl":"ltr",slots:{root:D},slotProps:w??i,...A,ref:t})});function YEe(e){return Tt("MuiListSubheader",e)}xt("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);const KEe=e=>{const{classes:t,color:n,disableGutters:r,inset:a,disableSticky:o}=e,s={root:["root",n!=="default"&&`color${tt(n)}`,!r&&"gutters",a&&"inset",!o&&"sticky"]};return Ct(s,YEe,t)},QEe=we("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.color!=="default"&&t[`color${tt(n.color)}`],!n.disableGutters&&t.gutters,n.inset&&t.inset,!n.disableSticky&&t.sticky]}})(un(({theme:e})=>({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(e.vars||e).palette.text.secondary,fontFamily:e.typography.fontFamily,fontWeight:e.typography.fontWeightMedium,fontSize:e.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(e.vars||e).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:({ownerState:t})=>!t.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:t})=>t.inset,style:{paddingLeft:72}},{props:({ownerState:t})=>!t.disableSticky,style:{position:"sticky",top:0,zIndex:1,backgroundColor:(e.vars||e).palette.background.paper}}]}))),Dw=T.forwardRef(function(e,t){const n=on({props:e,name:"MuiListSubheader"}),{className:r,color:a="default",component:o="li",disableGutters:s=!1,disableSticky:i=!1,inset:c=!1,...u}=n,p={...n,color:a,component:o,disableGutters:s,disableSticky:i,inset:c},f=KEe(p);return y.jsx(QEe,{as:o,className:pt(f.root,r),ref:t,ownerState:p,...u})});Dw&&(Dw.muiSkipListHighlight=!0);function XEe(e){return Tt("MuiPaper",e)}xt("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"]);const ZEe=e=>{const{square:t,elevation:n,variant:r,classes:a}=e,o={root:["root",r,!t&&"rounded",r==="elevation"&&`elevation${n}`]};return Ct(o,XEe,a)},JEe=we("div",{name:"MuiPaper",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[n.variant],!n.square&&t.rounded,n.variant==="elevation"&&t[`elevation${n.elevation}`]]}})(un(({theme:e})=>({backgroundColor:(e.vars||e).palette.background.paper,color:(e.vars||e).palette.text.primary,transition:e.transitions.create("box-shadow"),variants:[{props:({ownerState:t})=>!t.square,style:{borderRadius:e.shape.borderRadius}},{props:{variant:"outlined"},style:{border:`1px solid ${(e.vars||e).palette.divider}`}},{props:{variant:"elevation"},style:{boxShadow:"var(--Paper-shadow)",backgroundImage:"var(--Paper-overlay)"}}]}))),qu=T.forwardRef(function(e,t){const n=on({props:e,name:"MuiPaper"}),r=vc(),{className:a,component:o="div",elevation:s=1,square:i=!1,variant:c="elevation",...u}=n,p={...n,component:o,elevation:s,square:i,variant:c},f=ZEe(p);return y.jsx(JEe,{as:o,ownerState:p,className:pt(f.root,a),ref:t,...u,style:{...c==="elevation"&&{"--Paper-shadow":(r.vars||r).shadows[s],...r.vars&&{"--Paper-overlay":r.vars.overlays?.[s]},...!r.vars&&r.palette.mode==="dark"&&{"--Paper-overlay":`linear-gradient(${Z0("#fff",WT(s))}, ${Z0("#fff",WT(s))})`}},...u.style}})});function eTe(e){return typeof e.main=="string"}function tTe(e,t=[]){if(!eTe(e))return!1;for(const n of t)if(!e.hasOwnProperty(n)||typeof e[n]!="string")return!1;return!0}function Pa(e=[]){return([,t])=>t&&tTe(t,e)}function m5(e){try{return e.matches(":focus-visible")}catch{}return!1}const g5={};function RB(e,t){const n=T.useRef(g5);return n.current===g5&&(n.current=e(t)),n}class Ev{static create(){return new Ev}static use(){const t=RB(Ev.create).current,[n,r]=T.useState(!1);return t.shouldMount=n,t.setShouldMount=r,T.useEffect(t.mountEffect,[n]),t}constructor(){this.ref={current:null},this.mounted=null,this.didMount=!1,this.shouldMount=!1,this.setShouldMount=null}mount(){return this.mounted||(this.mounted=rTe(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}mountEffect=()=>{this.shouldMount&&!this.didMount&&this.ref.current!==null&&(this.didMount=!0,this.mounted.resolve())};start(...t){this.mount().then(()=>this.ref.current?.start(...t))}stop(...t){this.mount().then(()=>this.ref.current?.stop(...t))}pulsate(...t){this.mount().then(()=>this.ref.current?.pulsate(...t))}}function nTe(){return Ev.use()}function rTe(){let e,t;const n=new Promise((r,a)=>{e=r,t=a});return n.resolve=e,n.reject=t,n}function Rw(e,t){return Rw=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,r){return n.__proto__=r,n},Rw(e,t)}function xA(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,Rw(e,t)}function aTe(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function oTe(e,t){e.classList?e.classList.add(t):aTe(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function y5(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function sTe(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=y5(e.className,t):e.setAttribute("class",y5(e.className&&e.className.baseVal||"",t))}const b5={disabled:!1},Tv=Je.createContext(null);var MB=function(e){return e.scrollTop},Kh="unmounted",Zc="exited",Jc="entering",Yd="entered",Mw="exiting",bs=(function(e){xA(t,e);function t(r,a){var o;o=e.call(this,r,a)||this;var s=a,i=s&&!s.isMounting?r.enter:r.appear,c;return o.appearStatus=null,r.in?i?(c=Zc,o.appearStatus=Jc):c=Yd:r.unmountOnExit||r.mountOnEnter?c=Kh:c=Zc,o.state={status:c},o.nextCallback=null,o}t.getDerivedStateFromProps=function(r,a){var o=r.in;return o&&a.status===Kh?{status:Zc}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(r){var a=null;if(r!==this.props){var o=this.state.status;this.props.in?o!==Jc&&o!==Yd&&(a=Jc):(o===Jc||o===Yd)&&(a=Mw)}this.updateStatus(!1,a)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var r=this.props.timeout,a,o,s;return a=o=s=r,r!=null&&typeof r!="number"&&(a=r.exit,o=r.enter,s=r.appear!==void 0?r.appear:o),{exit:a,enter:o,appear:s}},n.updateStatus=function(r,a){if(r===void 0&&(r=!1),a!==null)if(this.cancelNextCallback(),a===Jc){if(this.props.unmountOnExit||this.props.mountOnEnter){var o=this.props.nodeRef?this.props.nodeRef.current:Wl.findDOMNode(this);o&&MB(o)}this.performEnter(r)}else this.performExit();else this.props.unmountOnExit&&this.state.status===Zc&&this.setState({status:Kh})},n.performEnter=function(r){var a=this,o=this.props.enter,s=this.context?this.context.isMounting:r,i=this.props.nodeRef?[s]:[Wl.findDOMNode(this),s],c=i[0],u=i[1],p=this.getTimeouts(),f=s?p.appear:p.enter;if(!r&&!o||b5.disabled){this.safeSetState({status:Yd},function(){a.props.onEntered(c)});return}this.props.onEnter(c,u),this.safeSetState({status:Jc},function(){a.props.onEntering(c,u),a.onTransitionEnd(f,function(){a.safeSetState({status:Yd},function(){a.props.onEntered(c,u)})})})},n.performExit=function(){var r=this,a=this.props.exit,o=this.getTimeouts(),s=this.props.nodeRef?void 0:Wl.findDOMNode(this);if(!a||b5.disabled){this.safeSetState({status:Zc},function(){r.props.onExited(s)});return}this.props.onExit(s),this.safeSetState({status:Mw},function(){r.props.onExiting(s),r.onTransitionEnd(o.exit,function(){r.safeSetState({status:Zc},function(){r.props.onExited(s)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(r,a){a=this.setNextCallback(a),this.setState(r,a)},n.setNextCallback=function(r){var a=this,o=!0;return this.nextCallback=function(s){o&&(o=!1,a.nextCallback=null,r(s))},this.nextCallback.cancel=function(){o=!1},this.nextCallback},n.onTransitionEnd=function(r,a){this.setNextCallback(a);var o=this.props.nodeRef?this.props.nodeRef.current:Wl.findDOMNode(this),s=r==null&&!this.props.addEndListener;if(!o||s){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var i=this.props.nodeRef?[this.nextCallback]:[o,this.nextCallback],c=i[0],u=i[1];this.props.addEndListener(c,u)}r!=null&&setTimeout(this.nextCallback,r)},n.render=function(){var r=this.state.status;if(r===Kh)return null;var a=this.props,o=a.children;a.in,a.mountOnEnter,a.unmountOnExit,a.appear,a.enter,a.exit,a.timeout,a.addEndListener,a.onEnter,a.onEntering,a.onEntered,a.onExit,a.onExiting,a.onExited,a.nodeRef;var s=Ot(a,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return Je.createElement(Tv.Provider,{value:null},typeof o=="function"?o(r,s):Je.cloneElement(Je.Children.only(o),s))},t})(Je.Component);bs.contextType=Tv;bs.propTypes={};function Ud(){}bs.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:Ud,onEntering:Ud,onEntered:Ud,onExit:Ud,onExiting:Ud,onExited:Ud};bs.UNMOUNTED=Kh;bs.EXITED=Zc;bs.ENTERING=Jc;bs.ENTERED=Yd;bs.EXITING=Mw;var iTe=function(e,t){return e&&t&&t.split(" ").forEach(function(n){return oTe(e,n)})},jE=function(e,t){return e&&t&&t.split(" ").forEach(function(n){return sTe(e,n)})},SA=(function(e){xA(t,e);function t(){for(var r,a=arguments.length,o=new Array(a),s=0;s<a;s++)o[s]=arguments[s];return r=e.call.apply(e,[this].concat(o))||this,r.appliedClasses={appear:{},enter:{},exit:{}},r.onEnter=function(i,c){var u=r.resolveArguments(i,c),p=u[0],f=u[1];r.removeClasses(p,"exit"),r.addClass(p,f?"appear":"enter","base"),r.props.onEnter&&r.props.onEnter(i,c)},r.onEntering=function(i,c){var u=r.resolveArguments(i,c),p=u[0],f=u[1],g=f?"appear":"enter";r.addClass(p,g,"active"),r.props.onEntering&&r.props.onEntering(i,c)},r.onEntered=function(i,c){var u=r.resolveArguments(i,c),p=u[0],f=u[1],g=f?"appear":"enter";r.removeClasses(p,g),r.addClass(p,g,"done"),r.props.onEntered&&r.props.onEntered(i,c)},r.onExit=function(i){var c=r.resolveArguments(i),u=c[0];r.removeClasses(u,"appear"),r.removeClasses(u,"enter"),r.addClass(u,"exit","base"),r.props.onExit&&r.props.onExit(i)},r.onExiting=function(i){var c=r.resolveArguments(i),u=c[0];r.addClass(u,"exit","active"),r.props.onExiting&&r.props.onExiting(i)},r.onExited=function(i){var c=r.resolveArguments(i),u=c[0];r.removeClasses(u,"exit"),r.addClass(u,"exit","done"),r.props.onExited&&r.props.onExited(i)},r.resolveArguments=function(i,c){return r.props.nodeRef?[r.props.nodeRef.current,i]:[i,c]},r.getClassNames=function(i){var c=r.props.classNames,u=typeof c=="string",p=u&&c?c+"-":"",f=u?""+p+i:c[i],g=u?f+"-active":c[i+"Active"],m=u?f+"-done":c[i+"Done"];return{baseClassName:f,activeClassName:g,doneClassName:m}},r}var n=t.prototype;return n.addClass=function(r,a,o){var s=this.getClassNames(a)[o+"ClassName"],i=this.getClassNames("enter"),c=i.doneClassName;a==="appear"&&o==="done"&&c&&(s+=" "+c),o==="active"&&r&&MB(r),s&&(this.appliedClasses[a][o]=s,iTe(r,s))},n.removeClasses=function(r,a){var o=this.appliedClasses[a],s=o.base,i=o.active,c=o.done;this.appliedClasses[a]={},s&&jE(r,s),i&&jE(r,i),c&&jE(r,c)},n.render=function(){var r=this.props;r.classNames;var a=Ot(r,["classNames"]);return Je.createElement(bs,ne({},a,{onEnter:this.onEnter,onEntered:this.onEntered,onEntering:this.onEntering,onExit:this.onExit,onExiting:this.onExiting,onExited:this.onExited}))},t})(Je.Component);SA.defaultProps={classNames:""};SA.propTypes={};function lTe(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function CA(e,t){var n=function(a){return t&&T.isValidElement(a)?t(a):a},r=Object.create(null);return e&&T.Children.map(e,function(a){return a}).forEach(function(a){r[a.key]=n(a)}),r}function cTe(e,t){e=e||{},t=t||{};function n(p){return p in t?t[p]:e[p]}var r=Object.create(null),a=[];for(var o in e)o in t?a.length&&(r[o]=a,a=[]):a.push(o);var s,i={};for(var c in t){if(r[c])for(s=0;s<r[c].length;s++){var u=r[c][s];i[r[c][s]]=n(u)}i[c]=n(c)}for(s=0;s<a.length;s++)i[a[s]]=n(a[s]);return i}function du(e,t,n){return n[t]!=null?n[t]:e.props[t]}function uTe(e,t){return CA(e.children,function(n){return T.cloneElement(n,{onExited:t.bind(null,n),in:!0,appear:du(n,"appear",e),enter:du(n,"enter",e),exit:du(n,"exit",e)})})}function dTe(e,t,n){var r=CA(e.children),a=cTe(t,r);return Object.keys(a).forEach(function(o){var s=a[o];if(T.isValidElement(s)){var i=o in t,c=o in r,u=t[o],p=T.isValidElement(u)&&!u.props.in;c&&(!i||p)?a[o]=T.cloneElement(s,{onExited:n.bind(null,s),in:!0,exit:du(s,"exit",e),enter:du(s,"enter",e)}):!c&&i&&!p?a[o]=T.cloneElement(s,{in:!1}):c&&i&&T.isValidElement(u)&&(a[o]=T.cloneElement(s,{onExited:n.bind(null,s),in:u.props.in,exit:du(s,"exit",e),enter:du(s,"enter",e)}))}}),a}var pTe=Object.values||function(e){return Object.keys(e).map(function(t){return e[t]})},fTe={component:"div",childFactory:function(e){return e}},Wg=(function(e){xA(t,e);function t(r,a){var o;o=e.call(this,r,a)||this;var s=o.handleExited.bind(lTe(o));return o.state={contextValue:{isMounting:!0},handleExited:s,firstRender:!0},o}var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(r,a){var o=a.children,s=a.handleExited,i=a.firstRender;return{children:i?uTe(r,s):dTe(r,o,s),firstRender:!1}},n.handleExited=function(r,a){var o=CA(this.props.children);r.key in o||(r.props.onExited&&r.props.onExited(a),this.mounted&&this.setState(function(s){var i=ne({},s.children);return delete i[r.key],{children:i}}))},n.render=function(){var r=this.props,a=r.component,o=r.childFactory,s=Ot(r,["component","childFactory"]),i=this.state.contextValue,c=pTe(this.state.children).map(o);return delete s.appear,delete s.enter,delete s.exit,a===null?Je.createElement(Tv.Provider,{value:i},c):Je.createElement(Tv.Provider,{value:i},Je.createElement(a,s,c))},t})(Je.Component);Wg.propTypes={};Wg.defaultProps=fTe;const hTe=[];function mTe(e){T.useEffect(e,hTe)}class EA{static create(){return new EA}currentId=null;start(t,n){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,n()},t)}clear=()=>{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)};disposeEffect=()=>this.clear}function X1(){const e=RB(EA.create).current;return mTe(e.disposeEffect),e}function gTe(e){const{className:t,classes:n,pulsate:r=!1,rippleX:a,rippleY:o,rippleSize:s,in:i,onExited:c,timeout:u}=e,[p,f]=T.useState(!1),g=pt(t,n.ripple,n.rippleVisible,r&&n.ripplePulsate),m={width:s,height:s,top:-(s/2)+o,left:-(s/2)+a},v=pt(n.child,p&&n.childLeaving,r&&n.childPulsate);return!i&&!p&&f(!0),T.useEffect(()=>{if(!i&&c!=null){const C=setTimeout(c,u);return()=>{clearTimeout(C)}}},[c,i,u]),y.jsx("span",{className:g,style:m,children:y.jsx("span",{className:v})})}const Ko=xt("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),Ow=550,yTe=80,bTe=yi`
338
338
  0% {
339
339
  transform: scale(0);
340
340
  opacity: 0.1;
@@ -464,4 +464,4 @@ import {${t.sourceName}}" from '${t.modelPath}'"
464
464
  `));n(m=>{const v=m.items.itemMetaMap[f];return v.label!==g?ne({},m,{items:ne({},m.items,{itemMetaMap:ne({},m.items.itemMetaMap,{[f]:ne({},v,{label:g})})})}):m}),r.onItemLabelChange&&r.onItemLabelChange(f,g)};return{instance:{setEditedItemId:s,isItemBeingEdited:i,updateItemLabel:p,isItemEditable:u,isTreeViewEditable:c,isItemBeingEditedRef:o},publicAPI:{updateItemLabel:p}}};is.itemPlugin=vIe;is.getDefaultizedParams=({params:e,experimentalFeatures:t})=>{const n=t?.labelEditing;return ne({},e,{isItemEditable:n?e.isItemEditable??!1:!1})};is.getInitialState=()=>({editedItemId:null});is.params={onItemLabelChange:!0,isItemEditable:!0};const xu=(e,t)=>e.getAvailablePlugins().has(t),W8=e=>Array.isArray(e)?e.length>0&&e.some(W8):!!e,xIe=({itemId:e,children:t})=>{const{instance:n,selection:{multiSelect:r},publicAPI:a}=Wu(),o={expandable:W8(t),expanded:n.isItemExpanded(e),focused:n.isItemFocused(e),selected:n.isItemSelected(e),disabled:n.isItemDisabled(e),editing:n?.isItemBeingEdited?n?.isItemBeingEdited(e):!1,editable:n.isItemEditable?n.isItemEditable(e):!1},s=p=>{if(o.disabled)return;o.focused||n.focusItem(p,e);const f=r&&(p.shiftKey||p.ctrlKey||p.metaKey);o.expandable&&!(f&&n.isItemExpanded(e))&&n.toggleItemExpansion(p,e)},i=p=>{o.disabled||(!o.focused&&!o.editing&&n.focusItem(p,e),r&&(p.shiftKey||p.ctrlKey||p.metaKey)?p.shiftKey?n.expandSelectionRange(p,e):n.selectItem({event:p,itemId:e,keepExistingSelection:!0}):n.selectItem({event:p,itemId:e,shouldBeSelected:!0}))},c=p=>{const f=p.nativeEvent.shiftKey;r&&f?n.expandSelectionRange(p,e):n.selectItem({event:p,itemId:e,keepExistingSelection:r,shouldBeSelected:p.target.checked})},u=()=>{xu(n,is)&&n.isItemEditable(e)&&(n.isItemBeingEdited(e)?n.setEditedItemId(null):n.setEditedItemId(e))};return{interactions:{handleExpansion:s,handleSelection:i,handleCheckboxSelection:c,toggleItemEditing:u,handleSaveItemLabel:(p,f)=>{xu(n,is)&&n.isItemBeingEditedRef(e)&&(n.updateItemLabel(e,f),u(),n.focusItem(p,e))},handleCancelItemLabelEditing:p=>{xu(n,is)&&n.isItemBeingEditedRef(e)&&(u(),n.focusItem(p,e))}},status:o,publicAPI:a}},BA=T.createContext(()=>-1),G8=(e,t)=>{let n=t.length-1;for(;n>=0&&!e.isItemNavigable(t[n]);)n-=1;if(n!==-1)return t[n]},Y8=(e,t)=>{const n=e.getItemMeta(t),r=e.getItemOrderedChildrenIds(n.parentId),a=e.getItemIndex(t);if(a===0)return n.parentId;let o=a-1;for(;!e.isItemNavigable(r[o])&&o>=0;)o-=1;if(o===-1)return n.parentId==null?null:Y8(e,n.parentId);let s=r[o],i=G8(e,e.getItemOrderedChildrenIds(s));for(;e.isItemExpanded(s)&&i!=null;)s=i,i=e.getItemOrderedChildrenIds(s).find(e.isItemNavigable);return s},E0=(e,t)=>{if(e.isItemExpanded(t)){const r=e.getItemOrderedChildrenIds(t).find(e.isItemNavigable);if(r!=null)return r}let n=e.getItemMeta(t);for(;n!=null;){const r=e.getItemOrderedChildrenIds(n.parentId),a=e.getItemIndex(n.id);if(a<r.length-1){let o=a+1;for(;!e.isItemNavigable(r[o])&&o<r.length-1;)o+=1;if(e.isItemNavigable(r[o]))return r[o]}n=e.getItemMeta(n.parentId)}return null},K8=e=>{let t=null;for(;t==null||e.isItemExpanded(t);){const n=e.getItemOrderedChildrenIds(t),r=G8(e,n);if(r==null)return t;t=r}return t},dg=e=>e.getItemOrderedChildrenIds(null).find(e.isItemNavigable),Q8=(e,t,n)=>{if(t===n)return[t,n];const r=e.getItemMeta(t),a=e.getItemMeta(n);if(r.parentId===a.id||a.parentId===r.id)return a.parentId===r.id?[r.id,a.id]:[a.id,r.id];const o=[r.id],s=[a.id];let i=r.parentId,c=a.parentId,u=s.indexOf(i)!==-1,p=o.indexOf(c)!==-1,f=!0,g=!0;for(;!p&&!u;)f&&(o.push(i),u=s.indexOf(i)!==-1,f=i!==null,!u&&f&&(i=e.getItemMeta(i).parentId)),g&&!u&&(s.push(c),p=o.indexOf(c)!==-1,g=c!==null,!p&&g&&(c=e.getItemMeta(c).parentId));const m=u?i:c,v=e.getItemOrderedChildrenIds(m),C=o[o.indexOf(m)-1],x=s[s.indexOf(m)-1];return v.indexOf(C)<v.indexOf(x)?[t,n]:[n,t]},SIe=(e,t,n)=>{const r=c=>{if(e.isItemExpandable(c)&&e.isItemExpanded(c))return e.getItemOrderedChildrenIds(c)[0];let u=e.getItemMeta(c);for(;u!=null;){const p=e.getItemOrderedChildrenIds(u.parentId),f=e.getItemIndex(u.id);if(f<p.length-1)return p[f+1];u=e.getItemMeta(u.parentId)}throw new Error("Invalid range")},[a,o]=Q8(e,t,n),s=[a];let i=a;for(;i!==o;)i=r(i),e.isItemDisabled(i)||s.push(i);return s},CIe=e=>{let t=dg(e);const n=[];for(;t!=null;)n.push(t),t=E0(e,t);return n},pg=(e,t)=>t!==e.closest('*[role="treeitem"]');let x4=0;const EIe=()=>(x4+=1,`mui-tree-view-${x4}`),zA=({id:e,treeId:t="",itemId:n})=>e??`${t}-${n}`,TIe=e=>{const{runItemPlugins:t,items:{onItemClick:n,disabledItemsFocusable:r,indentationAtItemLevel:a},selection:{disableSelection:o,checkboxSelection:s},expansion:{expansionTrigger:i},treeId:c,instance:u,publicAPI:p}=Wu(),f=T.useContext(BA),{id:g,itemId:m,label:v,children:C,rootRef:x}=e,{rootRef:S,contentRef:w,propsEnhancers:E}=t(e),{interactions:D,status:A}=xIe({itemId:m,children:C}),R=T.useRef(null),$=T.useRef(null),j=gn(x,S,R),H=gn(w,$),F=T.useRef(null),z=zA({itemId:m,treeId:c,id:g}),k=u.canItemBeTabbed(m)?0:-1,P={rootRefObject:R,contentRefObject:$,interactions:D},N=K=>U=>{if(K.onFocus?.(U),U.defaultMuiPrevented)return;const J=!A.disabled||r;!A.focused&&J&&U.currentTarget===U.target&&u.focusItem(U,m)},B=K=>U=>{if(K.onBlur?.(U),U.defaultMuiPrevented)return;const J=u.getItemDOMElement(m);A.editing||U.relatedTarget&&pg(U.relatedTarget,J)&&(U.target&&U.target?.dataset?.element==="labelInput"&&pg(U.target,J)||U.relatedTarget?.dataset?.element==="labelInput")||u.removeFocusedItem()},L=K=>U=>{K.onKeyDown?.(U),!(U.defaultMuiPrevented||U.target?.dataset?.element==="labelInput")&&u.handleItemKeyDown(U,m)},V=K=>U=>{K.onDoubleClick?.(U),!U.defaultMuiPrevented&&D.toggleItemEditing()},q=K=>U=>{K.onClick?.(U),n?.(U,m),!(U.defaultMuiPrevented||F.current?.contains(U.target))&&(i==="content"&&D.handleExpansion(U),s||D.handleSelection(U))},Y=K=>U=>{K.onMouseDown?.(U),!U.defaultMuiPrevented&&(U.shiftKey||U.ctrlKey||U.metaKey||A.disabled)&&U.preventDefault()},I=K=>U=>{K.onChange?.(U),!U.defaultMuiPrevented&&(o||A.disabled||D.handleCheckboxSelection(U))},G=K=>U=>{K.onClick?.(U),!U.defaultMuiPrevented&&i==="iconContainer"&&D.handleExpansion(U)};return{getRootProps:(K={})=>{const U=ne({},Ma(e),Ma(K));let J;A.selected?J=!0:o||A.disabled?J=void 0:J=!1;const Z=ne({},U,{ref:j,role:"treeitem",tabIndex:k,id:z,"aria-expanded":A.expandable?A.expanded:void 0,"aria-selected":J,"aria-disabled":A.disabled||void 0},K,{onFocus:N(U),onBlur:B(U),onKeyDown:L(U)});a&&(Z.style={"--TreeView-itemDepth":typeof f=="function"?f(m):f});const Q=E.root?.(ne({},P,{externalEventHandlers:U}))??{};return ne({},Z,Q)},getContentProps:(K={})=>{const U=Ma(K),J=ne({},U,K,{ref:H,onClick:q(U),onMouseDown:Y(U),status:A});a&&(J.indentationAtItemLevel=!0);const Z=E.content?.(ne({},P,{externalEventHandlers:U}))??{};return ne({},J,Z)},getGroupTransitionProps:(K={})=>{const U=Ma(K),J=ne({},U,{unmountOnExit:!0,component:"ul",role:"group",in:A.expanded,children:C},K);return a&&(J.indentationAtItemLevel=!0),J},getIconContainerProps:(K={})=>{const U=Ma(K);return ne({},U,K,{onClick:G(U)})},getCheckboxProps:(K={})=>{const U=Ma(K);return ne({},U,{visible:s,ref:F,checked:A.selected,disabled:o||A.disabled,tabIndex:-1},K,{onChange:I(U)})},getLabelProps:(K={})=>{const U=ne({},Ma(K)),J=ne({},U,{children:v},K,{onDoubleClick:V(U)});return u.isTreeViewEditable&&(J.editable=A.editable),J},getLabelInputProps:(K={})=>{const U=Ma(K),J=E.labelInput?.({rootRefObject:R,contentRefObject:$,externalEventHandlers:U,interactions:D})??{};return ne({},K,J)},getDragAndDropOverlayProps:(K={})=>{const U=Ma(K),J=E.dragAndDropOverlay?.(ne({},P,{externalEventHandlers:U}))??{};return ne({},K,J)},rootRef:j,status:A,publicAPI:p}},wIe=TIe;function X8(e){const{instance:t,items:{onItemClick:n},selection:{multiSelect:r,checkboxSelection:a,disableSelection:o},expansion:{expansionTrigger:s}}=Wu(),i=t.isItemExpandable(e),c=t.isItemExpanded(e),u=t.isItemFocused(e),p=t.isItemSelected(e),f=t.isItemDisabled(e),g=t?.isItemBeingEdited?t?.isItemBeingEdited(e):!1,m=t.isItemEditable?t.isItemEditable(e):!1,v=E=>{if(!f){u||t.focusItem(E,e);const D=r&&(E.shiftKey||E.ctrlKey||E.metaKey);i&&!(D&&t.isItemExpanded(e))&&t.toggleItemExpansion(E,e)}},C=E=>{f||(!u&&!g&&t.focusItem(E,e),r&&(E.shiftKey||E.ctrlKey||E.metaKey)?E.shiftKey?t.expandSelectionRange(E,e):t.selectItem({event:E,itemId:e,keepExistingSelection:!0}):t.selectItem({event:E,itemId:e,shouldBeSelected:!0}))},x=E=>{if(o||f)return;const D=E.nativeEvent.shiftKey;r&&D?t.expandSelectionRange(E,e):t.selectItem({event:E,itemId:e,keepExistingSelection:r,shouldBeSelected:E.target.checked})},S=E=>{(E.shiftKey||E.ctrlKey||E.metaKey||f)&&E.preventDefault()},w=()=>{xu(t,is)&&t.isItemEditable(e)&&(t.isItemBeingEdited(e)?t.setEditedItemId(null):t.setEditedItemId(e))};return{disabled:f,expanded:c,selected:p,focused:u,editable:m,editing:g,disableSelection:o,checkboxSelection:a,handleExpansion:v,handleSelection:C,handleCheckboxSelection:x,handleContentClick:n,preventSelection:S,expansionTrigger:s,toggleItemEditing:w,handleSaveItemLabel:(E,D)=>{xu(t,is)&&t.isItemBeingEditedRef(e)&&(t.updateItemLabel(e,D),w(),t.focusItem(E,e))},handleCancelItemLabelEditing:E=>{xu(t,is)&&t.isItemBeingEditedRef(e)&&(w(),t.focusItem(E,e))}}}const kIe=we("div",{name:"MuiTreeItem2DragAndDropOverlay",slot:"Root",overridesResolver:(e,t)=>t.root,shouldForwardProp:e=>Xh(e)&&e!=="action"})(({theme:e})=>({position:"absolute",left:0,display:"flex",top:0,bottom:0,right:0,pointerEvents:"none",variants:[{props:{action:"make-child"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderRadius:e.shape.borderRadius,backgroundColor:e.vars?`rgba(${e.vars.palette.primary.darkChannel} / ${e.vars.palette.action.focusOpacity})`:Jr(e.palette.primary.dark,e.palette.action.focusOpacity)}},{props:{action:"reorder-above"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderTop:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"reorder-below"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"move-to-parent"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * calc(var(--TreeView-itemDepth) - 1))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}}]}));function _Ie(e){return e.action==null?null:y.jsx(kIe,ne({},e))}const AIe=we("input",{name:"MuiTreeItem2",slot:"LabelInput",overridesResolver:(e,t)=>t.labelInput})(({theme:e})=>ne({},e.typography.body1,{width:"100%",backgroundColor:e.palette.background.paper,borderRadius:e.shape.borderRadius,border:"none",padding:"0 2px",boxSizing:"border-box","&:focus":{outline:`1px solid ${e.palette.primary.main}`}})),DIe=["classes","className","displayIcon","expansionIcon","icon","label","itemId","onClick","onMouseDown","dragAndDropOverlayProps","labelInputProps"],Z8=T.forwardRef(function(e,t){const{classes:n,className:r,displayIcon:a,expansionIcon:o,icon:s,label:i,itemId:c,onClick:u,onMouseDown:p,dragAndDropOverlayProps:f,labelInputProps:g}=e,m=Ot(e,DIe),{disabled:v,expanded:C,selected:x,focused:S,editing:w,editable:E,disableSelection:D,checkboxSelection:A,handleExpansion:R,handleSelection:$,handleCheckboxSelection:j,handleContentClick:H,preventSelection:F,expansionTrigger:z,toggleItemEditing:k}=X8(c),P=s||o||a,N=T.useRef(null),B=q=>{F(q),p&&p(q)},L=q=>{H?.(q,c),!N.current?.contains(q.target)&&(z==="content"&&R(q),A||$(q),u&&u(q))},V=q=>{q.defaultMuiPrevented||k()};return y.jsxs("div",ne({},m,{className:pt(n.root,r,C&&n.expanded,x&&n.selected,S&&n.focused,v&&n.disabled,w&&n.editing,E&&n.editable),onClick:L,onMouseDown:B,ref:t,children:[y.jsx("div",{className:n.iconContainer,children:P}),A&&y.jsx(H8,{className:n.checkbox,checked:x,onChange:j,disabled:v||D,ref:N,tabIndex:-1}),w?y.jsx(AIe,ne({},g,{className:n.labelInput})):y.jsx("div",ne({className:n.label},E&&{onDoubleClick:V},{children:i})),f&&y.jsx(_Ie,ne({},f))]}))});function RIe(e){return Tt("MuiTreeItem",e)}const Vi=xt("MuiTreeItem",["root","groupTransition","content","expanded","selected","focused","disabled","iconContainer","label","checkbox","labelInput","editable","editing","dragAndDropOverlay"]),J8=dn(y.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"})),e7=dn(y.jsx("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}));function UA(e){const{children:t,itemId:n}=e,{wrapItem:r,instance:a}=Wu();return r({children:t,itemId:n,instance:a})}UA.propTypes={children:Ne.node,itemId:Ne.string.isRequired};const MIe=["children","className","slots","slotProps","ContentComponent","ContentProps","itemId","id","label","onClick","onMouseDown","onFocus","onBlur","onKeyDown"],OIe=["ownerState"],IIe=["ownerState"],NIe=["ownerState"],PIe=q8(),LIe=e=>{const{classes:t}=e;return Ct({root:["root"],content:["content"],expanded:["expanded"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],labelInput:["labelInput"],editing:["editing"],editable:["editable"],groupTransition:["groupTransition"]},RIe,t)},$Ie=we("li",{name:"MuiTreeItem",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),FIe=we(Z8,{name:"MuiTreeItem",slot:"Content",overridesResolver:(e,t)=>[t.content,t.iconContainer&&{[`& .${Vi.iconContainer}`]:t.iconContainer},t.label&&{[`& .${Vi.label}`]:t.label}],shouldForwardProp:e=>nc(e)&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${Vi.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"},[`&.${Vi.focused}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`&.${Vi.selected}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity)}},[`&.${Vi.focused}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}},[`& .${Vi.iconContainer}`]:{width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}},[`& .${Vi.label}`]:ne({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative"},e.typography.body1),[`& .${Vi.checkbox}`]:{padding:0},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}}]})),jIe=we(ug,{name:"MuiTreeItem",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>nc(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]}),BIe=T.forwardRef(function(e,t){const{icons:n,runItemPlugins:r,items:{disabledItemsFocusable:a,indentationAtItemLevel:o},selection:{disableSelection:s},expansion:{expansionTrigger:i},treeId:c,instance:u}=Wu(),p=T.useContext(BA),f=PIe({props:e,name:"MuiTreeItem"}),{children:g,className:m,slots:v,slotProps:C,ContentComponent:x=Z8,ContentProps:S,itemId:w,id:E,label:D,onClick:A,onMouseDown:R,onBlur:$,onKeyDown:j}=f,H=Ot(f,MIe),{expanded:F,focused:z,selected:k,disabled:P,editing:N,handleExpansion:B,handleCancelItemLabelEditing:L,handleSaveItemLabel:V}=X8(w),{contentRef:q,rootRef:Y,propsEnhancers:I}=r(f),G=T.useRef(null),K=T.useRef(null),U=gn(t,Y,G),J=gn(S?.ref,q,K),Z={expandIcon:v?.expandIcon??n.slots.expandIcon??J8,collapseIcon:v?.collapseIcon??n.slots.collapseIcon??e7,endIcon:v?.endIcon??n.slots.endIcon,icon:v?.icon,groupTransition:v?.groupTransition},Q=Se=>Array.isArray(Se)?Se.length>0&&Se.some(Q):!!Se,re=Q(g),te=ne({},f,{expanded:F,focused:z,selected:k,disabled:P,indentationAtItemLevel:o}),se=LIe(te),pe=Z.groupTransition??void 0,de=mn({elementType:pe,ownerState:{},externalSlotProps:C?.groupTransition,additionalProps:ne({unmountOnExit:!0,in:F,component:"ul",role:"group"},o?{indentationAtItemLevel:!0}:{}),className:se.groupTransition}),be=Se=>{i==="iconContainer"&&B(Se)},oe=F?Z.collapseIcon:Z.expandIcon,le=mn({elementType:oe,ownerState:{},externalSlotProps:Se=>F?ne({},ts(n.slotProps.collapseIcon,Se),ts(C?.collapseIcon,Se)):ne({},ts(n.slotProps.expandIcon,Se),ts(C?.expandIcon,Se)),additionalProps:{onClick:be}}),Fe=Ot(le,OIe),Ae=re&&oe?y.jsx(oe,ne({},Fe)):null,me=re?void 0:Z.endIcon,xe=mn({elementType:me,ownerState:{},externalSlotProps:Se=>re?{}:ne({},ts(n.slotProps.endIcon,Se),ts(C?.endIcon,Se))}),Xe=Ot(xe,IIe),je=me?y.jsx(me,ne({},Xe)):null,Ue=Z.icon,He=mn({elementType:Ue,ownerState:{},externalSlotProps:C?.icon}),Dt=Ot(He,NIe),Rt=Ue?y.jsx(Ue,ne({},Dt)):null;let bt;k?bt=!0:s||P?bt=void 0:bt=!1;function ge(Se){!z&&(!P||a)&&Se.currentTarget===Se.target&&u.focusItem(Se,w)}function Ce(Se){$?.(Se),!(N||Se.relatedTarget&&pg(Se.relatedTarget,G.current)&&(Se.target&&Se.target?.dataset?.element==="labelInput"&&pg(Se.target,G.current)||Se.relatedTarget?.dataset?.element==="labelInput"))&&u.removeFocusedItem()}const Ge=Se=>{j?.(Se),Se.target?.dataset?.element!=="labelInput"&&u.handleItemKeyDown(Se,w)},it=zA({itemId:w,treeId:c,id:E}),at=u.canItemBeTabbed(w)?0:-1,Ye={rootRefObject:G,contentRefObject:K,interactions:{handleSaveItemLabel:V,handleCancelItemLabelEditing:L}},zt=I.root?.(ne({},Ye,{externalEventHandlers:Ma(H)}))??{},Gt=I.content?.(ne({},Ye,{externalEventHandlers:Ma(S)}))??{},rt=I.dragAndDropOverlay?.(ne({},Ye,{externalEventHandlers:{}}))??{},he=I.labelInput?.(ne({},Ye,{externalEventHandlers:{}}))??{};return y.jsx(UA,{itemId:w,children:y.jsxs($Ie,ne({className:pt(se.root,m),role:"treeitem","aria-expanded":re?F:void 0,"aria-selected":bt,"aria-disabled":P||void 0,id:it,tabIndex:at},H,{ownerState:te,onFocus:ge,onBlur:Ce,onKeyDown:Ge,ref:U,style:o?ne({},H.style,{"--TreeView-itemDepth":typeof p=="function"?p(w):p}):H.style},zt,{children:[y.jsx(FIe,ne({as:x,classes:{root:se.content,expanded:se.expanded,selected:se.selected,focused:se.focused,disabled:se.disabled,editable:se.editable,editing:se.editing,iconContainer:se.iconContainer,label:se.label,labelInput:se.labelInput,checkbox:se.checkbox},label:D,itemId:w,onClick:A,onMouseDown:R,icon:Rt,expansionIcon:Ae,displayIcon:je,ownerState:te},S,Gt,rt.action==null?{}:{dragAndDropOverlayProps:rt},he.value==null?{}:{labelInputProps:he},{ref:J})),g&&y.jsx(jIe,ne({as:pe},de,{children:g}))]}))})});function zIe(e){const{slots:t,slotProps:n,status:r}=e,a=Wu(),o=ne({},a.icons.slots,{expandIcon:a.icons.slots.expandIcon??J8,collapseIcon:a.icons.slots.collapseIcon??e7}),s=a.icons.slotProps;let i;t?.icon?i="icon":r.expandable?r.expanded?i="collapseIcon":i="expandIcon":i="endIcon";const c=t?.[i]??o[i],u=mn({elementType:c,externalSlotProps:p=>ne({},ts(s[i],p),ts(n?.[i],p)),ownerState:{}});return c?y.jsx(c,ne({},u)):null}const UIe=["visible"],HIe=we("li",{name:"MuiTreeItem2",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),qIe=we("div",{name:"MuiTreeItem2",slot:"Content",overridesResolver:(e,t)=>t.content,shouldForwardProp:e=>nc(e)&&e!=="status"&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}},{props:({status:t})=>t.disabled,style:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"}},{props:({status:t})=>t.focused,style:{backgroundColor:(e.vars||e).palette.action.focus}},{props:({status:t})=>t.selected,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity)}}}},{props:({status:t})=>t.selected&&t.focused,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:Jr(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}}]})),VIe=we("div",{name:"MuiTreeItem2",slot:"Label",overridesResolver:(e,t)=>t.label,shouldForwardProp:e=>nc(e)&&e!=="editable"})(({theme:e})=>ne({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative",overflow:"hidden"},e.typography.body1,{variants:[{props:({editable:t})=>t,style:{paddingLeft:"2px"}}]})),WIe=we("div",{name:"MuiTreeItem2",slot:"IconContainer",overridesResolver:(e,t)=>t.iconContainer})({width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}});we(ug,{name:"MuiTreeItem2",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>nc(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]});we(T.forwardRef((e,t)=>{const{visible:n}=e,r=Ot(e,UIe);return n?y.jsx(H8,ne({},r,{ref:t})):null}),{name:"MuiTreeItem2",slot:"Checkbox",overridesResolver:(e,t)=>t.checkbox})({padding:0});function GIe(e){return Tt("MuiRichTreeView",e)}xt("MuiRichTreeView",["root"]);const YIe=(e,t)=>{const n=T.useRef({}),[r,a]=T.useState(()=>{const o={};return e.forEach(s=>{s.models&&Object.entries(s.models).forEach(([i,c])=>{n.current[i]={isControlled:t[i]!==void 0,getDefaultValue:c.getDefaultValue},o[i]=c.getDefaultValue(t)})}),o});return Object.fromEntries(Object.entries(n.current).map(([o,s])=>{const i=t[o]??r[o];return[o,{value:i,setControlledValue:c=>{s.isControlled||a(u=>ne({},u,{[o]:c}))}}]}))};class KIe{constructor(){this.maxListeners=20,this.warnOnce=!1,this.events={}}on(t,n,r={}){let a=this.events[t];a||(a={highPriority:new Map,regular:new Map},this.events[t]=a),r.isFirst?a.highPriority.set(n,!0):a.regular.set(n,!0)}removeListener(t,n){this.events[t]&&(this.events[t].regular.delete(n),this.events[t].highPriority.delete(n))}removeAllListeners(){this.events={}}emit(t,...n){const r=this.events[t];if(!r)return;const a=Array.from(r.highPriority.keys()),o=Array.from(r.regular.keys());for(let s=a.length-1;s>=0;s-=1){const i=a[s];r.highPriority.has(i)&&i.apply(this,n)}for(let s=0;s<o.length;s+=1){const i=o[s];r.regular.has(i)&&i.apply(this,n)}}once(t,n){const r=this;this.on(t,function a(...o){r.removeListener(t,a),n.apply(r,o)})}}const QIe=e=>e.isPropagationStopped!==void 0,t7=()=>{const[e]=T.useState(()=>new KIe),t=T.useCallback((...r)=>{const[a,o,s={}]=r;s.defaultMuiPrevented=!1,!(QIe(s)&&s.isPropagationStopped())&&e.emit(a,o,s)},[e]),n=T.useCallback((r,a)=>(e.on(r,a),()=>{e.removeListener(r,a)}),[e]);return{instance:{$$publishEvent:t,$$subscribeEvent:n}}};t7.params={};const n7=({plugins:e})=>{const t=new Set(e);return{instance:{getAvailablePlugins:()=>t}}};n7.params={};const HA=({params:e,state:t,setState:n})=>{T.useEffect(()=>{n(a=>a.id.treeId===e.id&&a.id.treeId!==void 0?a:ne({},a,{id:ne({},a.id,{treeId:e.id??EIe()})}))},[n,e.id]);const r=e.id??t.id.treeId;return{getRootProps:()=>({id:r}),contextValue:{treeId:r}}};HA.params={id:!0};HA.getInitialState=({id:e})=>({id:{treeId:e??void 0}});const XIe=[t7,n7,HA],ZIe=["slots","slotProps","apiRef","experimentalFeatures"],JIe=e=>{let{props:{slots:t,slotProps:n,apiRef:r,experimentalFeatures:a},plugins:o}=e,s=Ot(e.props,ZIe);const i={};o.forEach(g=>{Object.assign(i,g.params)});const c={},u={};Object.keys(s).forEach(g=>{const m=s[g];i[g]?c[g]=m:u[g]=m});const p=a??{},f=o.reduce((g,m)=>m.getDefaultizedParams?m.getDefaultizedParams({params:g,experimentalFeatures:p}):g,c);return{apiRef:r,forwardedProps:u,pluginParams:f,slots:t??{},slotProps:n??{},experimentalFeatures:p}},eNe=({plugins:e,instance:t,publicAPI:n,rootRef:r})=>({runItemPlugins:a=>{let o=null,s=null;const i=[],c={};e.forEach(f=>{if(!f.itemPlugin)return;const g=f.itemPlugin({props:a,rootRef:o,contentRef:s});g?.rootRef&&(o=g.rootRef),g?.contentRef&&(s=g.contentRef),g?.propsEnhancers&&(i.push(g.propsEnhancers),Object.keys(g.propsEnhancers).forEach(m=>{c[m]=!0}))});const u=f=>g=>{const m={};return i.forEach(v=>{const C=v[f];C!=null&&Object.assign(m,C(g))}),m},p=Object.fromEntries(Object.keys(c).map(f=>[f,u(f)]));return{contentRef:s,rootRef:o,propsEnhancers:p}},wrapItem:({itemId:a,children:o})=>{let s=o;for(let i=e.length-1;i>=0;i-=1){const c=e[i];c.wrapItem&&(s=c.wrapItem({itemId:a,children:s,instance:t}))}return s},wrapRoot:({children:a})=>{let o=a;for(let s=e.length-1;s>=0;s-=1){const i=e[s];i.wrapRoot&&(o=i.wrapRoot({children:o,instance:t}))}return o},instance:t,rootRef:r,publicAPI:n});function tNe(e){const t=T.useRef({});return e?(e.current==null&&(e.current={}),e.current):t.current}const nNe=({plugins:e,rootRef:t,props:n})=>{const r=[...XIe,...e],{pluginParams:a,forwardedProps:o,apiRef:s,experimentalFeatures:i,slots:c,slotProps:u}=JIe({plugins:r,props:n}),p=YIe(r,a),f=T.useRef({}).current,g=tNe(s),m=T.useRef(null),v=gn(m,t),C=eNe({plugins:r,instance:f,publicAPI:g,rootRef:m}),[x,S]=T.useState(()=>{const D={};return r.forEach(A=>{A.getInitialState&&Object.assign(D,A.getInitialState(a))}),D}),w=[],E=D=>{const A=D({instance:f,params:a,slots:c,slotProps:u,experimentalFeatures:i,state:x,setState:S,rootRef:m,models:p,plugins:r});A.getRootProps&&w.push(A.getRootProps),A.publicAPI&&Object.assign(g,A.publicAPI),A.instance&&Object.assign(f,A.instance),A.contextValue&&Object.assign(C,A.contextValue)};return r.forEach(E),{getRootProps:(D={})=>{const A=ne({role:"tree"},o,D,{ref:v});return w.forEach(R=>{Object.assign(A,R(D))}),A},rootRef:v,contextValue:C,instance:f}},rNe=(e,t,n)=>{e.$$publishEvent(t,n)},Zd="__TREE_VIEW_ROOT_PARENT_ID__",aNe=e=>{const t={};return e.forEach((n,r)=>{t[n]=r}),t},oNe=["children"],r7=({items:e,isItemDisabled:t,getItemLabel:n,getItemId:r})=>{const a={},o={},s={[Zd]:[]},i=(u,p,f)=>{const g=r?r(u):u.id;if(g==null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.","An item was provided without id in the `items` prop:",JSON.stringify(u)].join(`
465
465
  `));if(a[g]!=null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.",`Two items were provided with the same id in the \`items\` prop: "${g}"`].join(`
466
466
  `));const m=n?n(u):u.label;if(m==null)throw new Error(["MUI X: The Tree View component requires all items to have a `label` property.","Alternatively, you can use the `getItemLabel` prop to specify a custom label for each item.","An item was provided without label in the `items` prop:",JSON.stringify(u)].join(`
467
- `));a[g]={id:g,label:m,parentId:f,idAttribute:void 0,expandable:!!u.children?.length,disabled:t?t(u):!1,depth:p},o[g]=u;const v=f??Zd;s[v]||(s[v]=[]),s[v].push(g),u.children?.forEach(C=>i(C,p+1,g))};e.forEach(u=>i(u,0,null));const c={};return Object.keys(s).forEach(u=>{c[u]=aNe(s[u])}),{itemMetaMap:a,itemMap:o,itemOrderedChildrenIds:s,itemChildrenIndexes:c}},Kg=({instance:e,params:t,state:n,setState:r,experimentalFeatures:a})=>{const o=T.useCallback(x=>n.items.itemMetaMap[x],[n.items.itemMetaMap]),s=T.useCallback(x=>n.items.itemMap[x],[n.items.itemMap]),i=T.useCallback(()=>{const x=S=>{const w=n.items.itemMap[S],E=Ot(w,oNe),D=n.items.itemOrderedChildrenIds[S];return D&&(E.children=D.map(x)),E};return n.items.itemOrderedChildrenIds[Zd].map(x)},[n.items.itemMap,n.items.itemOrderedChildrenIds]),c=T.useCallback(x=>{if(x==null)return!1;let S=e.getItemMeta(x);if(!S)return!1;if(S.disabled)return!0;for(;S.parentId!=null;)if(S=e.getItemMeta(S.parentId),S.disabled)return!0;return!1},[e]),u=T.useCallback(x=>{const S=e.getItemMeta(x).parentId??Zd;return n.items.itemChildrenIndexes[S][x]},[e,n.items.itemChildrenIndexes]),p=T.useCallback(x=>n.items.itemOrderedChildrenIds[x??Zd]??[],[n.items.itemOrderedChildrenIds]),f=x=>{const S=e.getItemMeta(x);return S==null?null:document.getElementById(zA({treeId:n.id.treeId,itemId:x,id:S.idAttribute}))},g=x=>t.disabledItemsFocusable?!0:!e.isItemDisabled(x),m=T.useRef(!1),v=T.useCallback(()=>{m.current=!0},[]),C=T.useCallback(()=>m.current,[]);return T.useEffect(()=>{e.areItemUpdatesPrevented()||r(x=>{const S=r7({items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel});return Object.values(x.items.itemMetaMap).forEach(w=>{S.itemMetaMap[w.id]||rNe(e,"removeItem",{id:w.id})}),ne({},x,{items:S})})},[e,r,t.items,t.isItemDisabled,t.getItemId,t.getItemLabel]),{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof t.itemChildrenIndentation=="number"?`${t.itemChildrenIndentation}px`:t.itemChildrenIndentation}}),publicAPI:{getItem:s,getItemDOMElement:f,getItemTree:i,getItemOrderedChildrenIds:p},instance:{getItemMeta:o,getItem:s,getItemTree:i,getItemsToRender:()=>{const x=S=>{const w=n.items.itemMetaMap[S];return{label:w.label,itemId:w.id,id:w.idAttribute,children:n.items.itemOrderedChildrenIds[S]?.map(x)}};return n.items.itemOrderedChildrenIds[Zd].map(x)},getItemIndex:u,getItemDOMElement:f,getItemOrderedChildrenIds:p,isItemDisabled:c,isItemNavigable:g,preventItemUpdates:v,areItemUpdatesPrevented:C},contextValue:{items:{onItemClick:t.onItemClick,disabledItemsFocusable:t.disabledItemsFocusable,indentationAtItemLevel:a.indentationAtItemLevel??!1}}}};Kg.getInitialState=e=>({items:r7({items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel})});Kg.getDefaultizedParams=({params:e})=>ne({},e,{disabledItemsFocusable:e.disabledItemsFocusable??!1,itemChildrenIndentation:e.itemChildrenIndentation??"12px"});Kg.wrapRoot=({children:e,instance:t})=>y.jsx(BA.Provider,{value:n=>t.getItemMeta(n)?.depth??0,children:e});Kg.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};const lx=({instance:e,params:t,models:n})=>{const r=T.useMemo(()=>{const f=new Map;return n.expandedItems.value.forEach(g=>{f.set(g,!0)}),f},[n.expandedItems.value]),a=(f,g)=>{t.onExpandedItemsChange?.(f,g),n.expandedItems.setControlledValue(g)},o=T.useCallback(f=>r.has(f),[r]),s=T.useCallback(f=>!!e.getItemMeta(f)?.expandable,[e]),i=dt((f,g)=>{const m=e.isItemExpanded(g);e.setItemExpansion(f,g,!m)}),c=dt((f,g,m)=>{if(e.isItemExpanded(g)===m)return;let v;m?v=[g].concat(n.expandedItems.value):v=n.expandedItems.value.filter(C=>C!==g),t.onItemExpansionToggle&&t.onItemExpansionToggle(f,g,m),a(f,v)}),u=(f,g)=>{const m=e.getItemMeta(g),v=e.getItemOrderedChildrenIds(m.parentId).filter(x=>e.isItemExpandable(x)&&!e.isItemExpanded(x)),C=n.expandedItems.value.concat(v);v.length>0&&(t.onItemExpansionToggle&&v.forEach(x=>{t.onItemExpansionToggle(f,x,!0)}),a(f,C))},p=T.useMemo(()=>t.expansionTrigger?t.expansionTrigger:e.isTreeViewEditable?"iconContainer":"content",[t.expansionTrigger,e.isTreeViewEditable]);return{publicAPI:{setItemExpansion:c},instance:{isItemExpanded:o,isItemExpandable:s,setItemExpansion:c,toggleItemExpansion:i,expandAllSiblings:u},contextValue:{expansion:{expansionTrigger:p}}}};lx.models={expandedItems:{getDefaultValue:e=>e.defaultExpandedItems}};const sNe=[];lx.getDefaultizedParams=({params:e})=>ne({},e,{defaultExpandedItems:e.defaultExpandedItems??sNe});lx.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const T0=e=>Array.isArray(e)?e:e!=null?[e]:[],YE=e=>{const t={};return e.forEach(n=>{t[n]=!0}),t},cx=({instance:e,params:t,models:n})=>{const r=T.useRef(null),a=T.useRef({}),o=T.useMemo(()=>{const p=new Map;return Array.isArray(n.selectedItems.value)?n.selectedItems.value.forEach(f=>{p.set(f,!0)}):n.selectedItems.value!=null&&p.set(n.selectedItems.value,!0),p},[n.selectedItems.value]),s=(p,f)=>{if(t.onItemSelectionToggle)if(t.multiSelect){const g=f.filter(v=>!e.isItemSelected(v)),m=n.selectedItems.value.filter(v=>!f.includes(v));g.forEach(v=>{t.onItemSelectionToggle(p,v,!0)}),m.forEach(v=>{t.onItemSelectionToggle(p,v,!1)})}else f!==n.selectedItems.value&&(n.selectedItems.value!=null&&t.onItemSelectionToggle(p,n.selectedItems.value,!1),f!=null&&t.onItemSelectionToggle(p,f,!0));t.onSelectedItemsChange&&t.onSelectedItemsChange(p,f),n.selectedItems.setControlledValue(f)},i=p=>o.has(p),c=({event:p,itemId:f,keepExistingSelection:g=!1,shouldBeSelected:m})=>{if(t.disableSelection)return;let v;if(g){const C=T0(n.selectedItems.value),x=e.isItemSelected(f);x&&(m===!1||m==null)?v=C.filter(S=>S!==f):!x&&(m===!0||m==null)?v=[f].concat(C):v=C}else m===!1||m==null&&e.isItemSelected(f)?v=t.multiSelect?[]:null:v=t.multiSelect?[f]:f;s(p,v),r.current=f,a.current={}},u=(p,[f,g])=>{if(t.disableSelection||!t.multiSelect)return;let m=T0(n.selectedItems.value).slice();Object.keys(a.current).length>0&&(m=m.filter(S=>!a.current[S]));const v=YE(m),C=SIe(e,f,g),x=C.filter(S=>!v[S]);m=m.concat(x),s(p,m),a.current=YE(C)};return{getRootProps:()=>({"aria-multiselectable":t.multiSelect}),publicAPI:{selectItem:c},instance:{isItemSelected:i,selectItem:c,selectAllNavigableItems:p=>{if(t.disableSelection||!t.multiSelect)return;const f=CIe(e);s(p,f),a.current=YE(f)},expandSelectionRange:(p,f)=>{if(r.current!=null){const[g,m]=Q8(e,f,r.current);u(p,[g,m])}},selectRangeFromStartToItem:(p,f)=>{u(p,[dg(e),f])},selectRangeFromItemToEnd:(p,f)=>{u(p,[f,K8(e)])},selectItemFromArrowNavigation:(p,f,g)=>{if(t.disableSelection||!t.multiSelect)return;let m=T0(n.selectedItems.value).slice();Object.keys(a.current).length===0?(m.push(g),a.current={[f]:!0,[g]:!0}):(a.current[f]||(a.current={}),a.current[g]?(m=m.filter(v=>v!==f),delete a.current[f]):(m.push(g),a.current[g]=!0)),s(p,m)}},contextValue:{selection:{multiSelect:t.multiSelect,checkboxSelection:t.checkboxSelection,disableSelection:t.disableSelection}}}};cx.models={selectedItems:{getDefaultValue:e=>e.defaultSelectedItems}};const iNe=[];cx.getDefaultizedParams=({params:e})=>ne({},e,{disableSelection:e.disableSelection??!1,multiSelect:e.multiSelect??!1,checkboxSelection:e.checkboxSelection??!1,defaultSelectedItems:e.defaultSelectedItems??(e.multiSelect?iNe:null)});cx.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0};const S4=1e3;class lNe{constructor(t=S4){this.timeouts=new Map,this.cleanupTimeout=S4,this.cleanupTimeout=t}register(t,n,r){this.timeouts||(this.timeouts=new Map);const a=setTimeout(()=>{typeof n=="function"&&n(),this.timeouts.delete(r.cleanupToken)},this.cleanupTimeout);this.timeouts.set(r.cleanupToken,a)}unregister(t){const n=this.timeouts.get(t.cleanupToken);n&&(this.timeouts.delete(t.cleanupToken),clearTimeout(n))}reset(){this.timeouts&&(this.timeouts.forEach((t,n)=>{this.unregister({cleanupToken:n})}),this.timeouts=void 0)}}class cNe{constructor(){this.registry=new FinalizationRegistry(t=>{typeof t=="function"&&t()})}register(t,n,r){this.registry.register(t,n,r)}unregister(t){this.registry.unregister(t)}reset(){}}class uNe{}function dNe(e){let t=0;return function(n,r,a){e.registry===null&&(e.registry=typeof FinalizationRegistry<"u"?new cNe:new lNe);const[o]=T.useState(new uNe),s=T.useRef(null),i=T.useRef(void 0);i.current=a;const c=T.useRef(null);if(!s.current&&i.current){const u=(p,f)=>{f.defaultMuiPrevented||i.current?.(p,f)};s.current=n.$$subscribeEvent(r,u),t+=1,c.current={cleanupToken:t},e.registry.register(o,()=>{s.current?.(),s.current=null,c.current=null},c.current)}else!i.current&&s.current&&(s.current(),s.current=null,c.current&&(e.registry.unregister(c.current),c.current=null));T.useEffect(()=>{if(!s.current&&i.current){const u=(p,f)=>{f.defaultMuiPrevented||i.current?.(p,f)};s.current=n.$$subscribeEvent(r,u)}return c.current&&e.registry&&(e.registry.unregister(c.current),c.current=null),()=>{s.current?.(),s.current=null}},[n,r])}}const pNe={registry:null},fNe=dNe(pNe),a7=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?a7(t.shadowRoot):t:null},hNe=(e,t)=>{let n=T0(t).find(r=>{if(!e.isItemNavigable(r))return!1;const a=e.getItemMeta(r);return a&&(a.parentId==null||e.isItemExpanded(a.parentId))});return n==null&&(n=dg(e)),n},qA=({instance:e,params:t,state:n,setState:r,models:a,rootRef:o})=>{const s=hNe(e,a.selectedItems.value),i=dt(x=>{const S=typeof x=="function"?x(n.focusedItemId):x;n.focusedItemId!==S&&r(w=>ne({},w,{focusedItemId:S}))}),c=T.useCallback(()=>!!o.current&&o.current.contains(a7(Yr(o.current))),[o]),u=T.useCallback(x=>n.focusedItemId===x&&c(),[n.focusedItemId,c]),p=x=>{const S=e.getItemMeta(x);return S&&(S.parentId==null||e.isItemExpanded(S.parentId))},f=(x,S)=>{const w=e.getItemDOMElement(S);w&&w.focus(),i(S),t.onItemFocus&&t.onItemFocus(x,S)},g=dt((x,S)=>{p(S)&&f(x,S)}),m=dt(()=>{if(n.focusedItemId!=null){if(e.getItemMeta(n.focusedItemId)){const x=e.getItemDOMElement(n.focusedItemId);x&&x.blur()}i(null)}}),v=x=>x===s;fNe(e,"removeItem",({id:x})=>{n.focusedItemId===x&&f(null,s)});const C=x=>S=>{x.onFocus?.(S),!S.defaultMuiPrevented&&S.target===S.currentTarget&&f(S,s)};return{getRootProps:x=>({onFocus:C(x)}),publicAPI:{focusItem:g},instance:{isItemFocused:u,canItemBeTabbed:v,focusItem:g,removeFocusedItem:m}}};qA.getInitialState=()=>({focusedItemId:null});qA.params={onItemFocus:!0};function mNe(e){return!!e&&e.length===1&&!!e.match(/\S/)}const o7=({instance:e,params:t,state:n})=>{const r=gs(),a=T.useRef({}),o=dt(u=>{a.current=u(a.current)});T.useEffect(()=>{if(e.areItemUpdatesPrevented())return;const u={},p=f=>{u[f.id]=f.label.substring(0,1).toLowerCase()};Object.values(n.items.itemMetaMap).forEach(p),a.current=u},[n.items.itemMetaMap,t.getItemId,e]);const s=(u,p)=>{const f=p.toLowerCase(),g=x=>{const S=E0(e,x);return S===null?dg(e):S};let m=null,v=g(u);const C={};for(;m==null&&!C[v];)a.current[v]===f?m=v:(C[v]=!0,v=g(v));return m},i=u=>!t.disableSelection&&!e.isItemDisabled(u),c=u=>!e.isItemDisabled(u)&&e.isItemExpandable(u);return{instance:{updateFirstCharMap:o,handleItemKeyDown:(u,p)=>{if(u.defaultMuiPrevented||u.altKey||pg(u.target,u.currentTarget))return;const f=u.ctrlKey||u.metaKey,g=u.key;switch(!0){case(g===" "&&i(p)):{u.preventDefault(),t.multiSelect&&u.shiftKey?e.expandSelectionRange(u,p):e.selectItem({event:u,itemId:p,keepExistingSelection:t.multiSelect,shouldBeSelected:t.multiSelect?void 0:!0});break}case g==="Enter":{xu(e,is)&&e.isItemEditable(p)&&!e.isItemBeingEdited(p)?e.setEditedItemId(p):c(p)?(e.toggleItemExpansion(u,p),u.preventDefault()):i(p)&&(t.multiSelect?(u.preventDefault(),e.selectItem({event:u,itemId:p,keepExistingSelection:!0})):e.isItemSelected(p)||(e.selectItem({event:u,itemId:p}),u.preventDefault()));break}case g==="ArrowDown":{const m=E0(e,p);m&&(u.preventDefault(),e.focusItem(u,m),t.multiSelect&&u.shiftKey&&i(m)&&e.selectItemFromArrowNavigation(u,p,m));break}case g==="ArrowUp":{const m=Y8(e,p);m&&(u.preventDefault(),e.focusItem(u,m),t.multiSelect&&u.shiftKey&&i(m)&&e.selectItemFromArrowNavigation(u,p,m));break}case(g==="ArrowRight"&&!r||g==="ArrowLeft"&&r):{if(f)return;if(e.isItemExpanded(p)){const m=E0(e,p);m&&(e.focusItem(u,m),u.preventDefault())}else c(p)&&(e.toggleItemExpansion(u,p),u.preventDefault());break}case(g==="ArrowLeft"&&!r||g==="ArrowRight"&&r):{if(f)return;if(c(p)&&e.isItemExpanded(p))e.toggleItemExpansion(u,p),u.preventDefault();else{const m=e.getItemMeta(p).parentId;m&&(e.focusItem(u,m),u.preventDefault())}break}case g==="Home":{i(p)&&t.multiSelect&&f&&u.shiftKey?e.selectRangeFromStartToItem(u,p):e.focusItem(u,dg(e)),u.preventDefault();break}case g==="End":{i(p)&&t.multiSelect&&f&&u.shiftKey?e.selectRangeFromItemToEnd(u,p):e.focusItem(u,K8(e)),u.preventDefault();break}case g==="*":{e.expandAllSiblings(u,p),u.preventDefault();break}case(String.fromCharCode(u.keyCode)==="A"&&f&&t.multiSelect&&!t.disableSelection):{e.selectAllNavigableItems(u),u.preventDefault();break}case(!f&&!u.shiftKey&&mNe(g)):{const m=s(p,g);m!=null&&(e.focusItem(u,m),u.preventDefault());break}}}}}};o7.params={};const s7=({slots:e,slotProps:t})=>({contextValue:{icons:{slots:{collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,endIcon:e.endIcon},slotProps:{collapseIcon:t.collapseIcon,expandIcon:t.expandIcon,endIcon:t.endIcon}}}});s7.params={};const gNe=[Kg,lx,cx,qA,o7,s7,is],yNe=["ownerState"];function bNe({slots:e,slotProps:t,label:n,id:r,itemId:a,itemsToRender:o}){const s=e?.item??BIe,i=mn({elementType:s,externalSlotProps:t?.item,additionalProps:{itemId:a,id:r,label:n},ownerState:{itemId:a,label:n}}),c=Ot(i,yNe),u=T.useMemo(()=>o?y.jsx(i7,{itemsToRender:o,slots:e,slotProps:t}):null,[o,e,t]);return y.jsx(s,ne({},c,{children:u}))}function i7(e){const{itemsToRender:t,slots:n,slotProps:r}=e;return y.jsx(T.Fragment,{children:t.map(a=>y.jsx(bNe,{slots:n,slotProps:r,label:a.label,id:a.id,itemId:a.itemId,itemsToRender:a.children},a.itemId))})}const vNe=q8(),xNe=e=>{const{classes:t}=e;return Ct({root:["root"]},GIe,t)},SNe=we("ul",{name:"MuiRichTreeView",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),CNe=T.forwardRef(function(e,t){const n=vNe({props:e,name:"MuiRichTreeView"}),{getRootProps:r,contextValue:a,instance:o}=nNe({plugins:gNe,rootRef:t,props:n}),{slots:s,slotProps:i}=n,c=xNe(n),u=s?.root??SNe,p=mn({elementType:u,externalSlotProps:i?.root,className:c.root,getSlotProps:r,ownerState:n});return y.jsx(bIe,{value:a,children:y.jsx(u,ne({},p,{children:y.jsx(i7,{slots:s,slotProps:i,itemsToRender:o.getItemsToRender()})}))})}),ENe=dn(y.jsx("path",{d:"m9.17 6 2 2H20v10H4V6zM10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"})),TNe=dn([y.jsx("path",{d:"M19 5v14H5V5zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2"},"0"),y.jsx("path",{d:"M14 17H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"},"1")]),wNe=dn(y.jsx("path",{d:"M19 15v4H5v-4zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-6c0-.55-.45-1-1-1M7 18.5c-.82 0-1.5-.67-1.5-1.5s.68-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5M19 5v4H5V5zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1M7 8.5c-.82 0-1.5-.67-1.5-1.5S6.18 5.5 7 5.5s1.5.68 1.5 1.5S7.83 8.5 7 8.5"})),kNe=dn(y.jsx("path",{d:"M15 4v2h3v12h-3v2h5V4zM4 20h5v-2H6V6h3V4H4z"}));function l7({items:e,defaultExpandedItems:t,onClickTreeNode:n}){return y.jsx(CNe,{items:MNe(e,n),defaultExpandedItems:t,slots:{item:RNe}})}const _Ne=xse(ug);function ANe(e){const t=sse({to:{opacity:e.in?1:0,transform:`translate3d(0,${e.in?0:20}px,0)`}});return y.jsx(_Ne,{style:t,...e})}function DNe({item:e,...t}){const n=y.jsxs(VIe,{...t,sx:{display:"flex",alignItems:"center",color:e.error?"error.main":"grey.600"},children:[e.fileType==="directory"&&y.jsx(ENe,{})||e.fileType==="notebook"&&y.jsx(TNe,{})||e.fileType==="model"&&y.jsx(kNe,{})||e.fileType=="database"&&y.jsx(wNe,{})||y.jsx(z8,{}),y.jsx(gt,{variant:"body2",sx:{marginLeft:"5px"},color:e.error?"error.main":e.link?"primary.main":"grey.600",children:e.label})]});return e.error?y.jsx(vo,{title:e.error,placement:"right",children:n}):n}const RNe=T.forwardRef(function(e,t){const{id:n,itemId:r,label:a,children:o,disabled:s,...i}=e,{getRootProps:c,getContentProps:u,getLabelProps:p,getIconContainerProps:f,getGroupTransitionProps:g,status:m,publicAPI:v}=wIe({id:n,itemId:r,children:o,label:a,disabled:s,rootRef:t}),C=v.getItem(r);return m.selected=!1,m.focused=!1,y.jsx(UA,{itemId:r,children:y.jsxs(HIe,{...c(i),children:[y.jsxs(qIe,{...u(),...C.link&&{onClick:x=>C.link(x)},sx:{pointerEvents:!C.selectable&&"none"},children:[y.jsx(WIe,{...f(),children:y.jsx(zIe,{status:m})}),y.jsx(DNe,{...p({item:C})})]}),o&&y.jsx(ANe,{...g()})]})})});function MNe(e,t){const n=new Map;return e.map(r=>{let a=n;const o=r.path.split("/");o.forEach((s,i)=>{i===o.length-1?a.set(s,r):(a.has(s)||a.set(s,new Map),a=a.get(s))})}),c7(n,"",t)}function c7(e,t,n){const r=[];return e.forEach((a,o)=>{const s=o.endsWith(".malloy")&&"model"||o.endsWith(".malloynb")&&"notebook"||o.endsWith(".parquet")&&"database"||"unknown";if(s!=="unknown"){const i=a;r.push({id:t+o,label:o,fileType:s,link:s==="model"||s==="notebook"?c=>n(t+o,c):void 0,selectable:s==="model"||s==="notebook",error:"error"in i?i.error:void 0})}else{const i=t+o+"/";r.push({id:i,label:o,fileType:"directory",selectable:!0,link:void 0,children:c7(a,i,n)})}}),r}const ONe=["notebooks/","models/"];function INe({onClickModelFile:e,resourceUri:t}){const{projectName:n,packageName:r,versionId:a}=Ar(t),{apiClients:o}=rr(),{data:s,isError:i,error:c,isSuccess:u}=Ba({queryKey:["models",n,r,a],queryFn:()=>o.models.listModels(n,r,a)});return y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"Semantic Models"}),y.jsxs(jt,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&y.jsx(io,{text:"Fetching Models..."}),i&&y.jsx($a,{error:c,context:`${n} > ${r} > Models`}),u&&s.data.length>0&&y.jsx(l7,{items:s.data.sort((p,f)=>p.path.localeCompare(f.path)),onClickTreeNode:e,defaultExpandedItems:ONe}),u&&s.data.length===0&&y.jsx(gt,{variant:"body2",children:"No models found"})]})]})})}const NNe=["notebooks/"];function PNe({onClickNotebookFile:e,resourceUri:t}){const{apiClients:n}=rr(),{projectName:r,packageName:a,versionId:o}=Ar(t),{data:s,isError:i,error:c,isSuccess:u}=Ba({queryKey:["notebooks",r,a,o],queryFn:()=>n.notebooks.listNotebooks(r,a,o)});return y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"Notebooks"}),y.jsxs(jt,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&y.jsx(io,{text:"Fetching Notebooks..."}),i&&y.jsx($a,{error:c,context:`${r} > ${a} > Notebooks`}),u&&s.data.length>0&&y.jsx(l7,{items:s.data.sort((p,f)=>p.path.localeCompare(f.path)),defaultExpandedItems:NNe,onClickTreeNode:e}),u&&s.data.length===0&&y.jsx(gt,{variant:"body2",children:"No notebooks found"})]})]})})}const LNe="README.malloynb";function BPe({onClickPackageFile:e,resourceUri:t,retrievalFn:n}){e||(e=a=>{window.location.href=a});const r=dA({...Ar(t),modelPath:LNe});return y.jsx(y.Fragment,{children:y.jsxs(Lr,{container:!0,spacing:3,columns:12,children:[y.jsx(Lr,{size:{xs:12,md:4},children:y.jsx(HOe,{resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:4},children:y.jsx(PNe,{onClickNotebookFile:e,resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:4},children:y.jsx(INe,{onClickModelFile:e,resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:6},children:y.jsx(ZOe,{resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:6},children:y.jsx(XOe,{resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:12},children:y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"README"}),y.jsx(jt,{sx:{mt:1},children:y.jsx(UOe,{resourceUri:r,retrievalFn:n})})]})})})]})})}function $Ne({resourceUri:e}){const{projectName:t}=Ar(e),{apiClients:n}=rr(),[r,a]=T.useState(!1),o=90,{data:s,isSuccess:i,isError:c,error:u}=Ba({queryKey:["about",t],queryFn:()=>n.projects.getProject(t,!1)}),p=s?.data?.readme||"",f=p.split(/\s+/),g=f.length>o,m=f.slice(0,o).join(" ");return y.jsxs(y.Fragment,{children:[!i&&!c&&y.jsx(io,{text:"Fetching About..."}),i&&p&&y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"Readme"}),y.jsxs(jt,{sx:{mt:1,fontSize:"0.875rem",lineHeight:1.6},children:[y.jsx(W0,{options:{overrides:{h1:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h2:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h3:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}}}},children:r||!g?p:m}),g&&y.jsxs(jt,{sx:{mt:1},children:[" ",y.jsx(wo,{variant:"text",size:"small",onClick:()=>a(!r),children:r?"Read less":"Read more"})]})]})]})}),c&&y.jsx($a,{error:u,context:`${t} > About`})]})}function FNe({resourceUri:e}){const[t,n]=T.useState(!1),{apiClients:r}=rr(),a=sl(),[o,s]=T.useState(""),i=()=>{n(!0)},c=()=>{n(!1)},{projectName:u}=Ar(e),p=ci({async mutationFn(g){return r.packages.createPackage(u,{name:g.name,description:g.description,location:g.location})},onSuccess(){c(),s("Package created successfully"),a.invalidateQueries({queryKey:["packages",u]})},onError(g){s(g instanceof Error?g.message:"An unknown error occurred")}}),f=g=>{g.preventDefault();const m=new FormData(g.currentTarget),v=m.get("name")?.toString(),C=m.get("description")?.toString(),x=m.get("location")?.toString();p.mutate({name:v,description:C,location:x})};return y.jsxs(Je.Fragment,{children:[y.jsx(fr,{onClick:i,variant:"contained",color:"primary",startIcon:y.jsx(qre,{}),sx:{color:"white"},children:"Add Package"}),y.jsxs(Ei,{open:t,onClose:c,children:[y.jsx(ul,{children:"Create New Package"}),y.jsxs(Ci,{children:[y.jsxs(sf,{children:["Create a new malloy package to start exploring your data.",y.jsx("br",{}),y.jsx("br",{}),"The location can be a GitHub/S3/GCP URL containing a package (Zipped or unzipped), or an absolute path to a directory that the publisher server has access to.",y.jsx("br",{}),y.jsx("br",{}),"Make sure to conform the"," ",y.jsx("a",{href:"https://github.com/malloydata/publisher/blob/main/README.md#architecture-overview",target:"_blank",rel:"noopener noreferrer",children:"Malloy Package Format"}),"."]}),y.jsxs("form",{onSubmit:f,id:"package-form",children:[y.jsx(an,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",type:"text",fullWidth:!0,variant:"standard"}),y.jsx(an,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,variant:"standard"}),y.jsx(an,{id:"location",name:"location",label:"Location",type:"text",placeholder:"E.g. s3://my-bucket/my-package.zip",fullWidth:!0,variant:"standard"})]})]}),y.jsxs(Si,{children:[y.jsx(fr,{disabled:p.isPending,onClick:c,children:"Cancel"}),y.jsx(fr,{type:"submit",form:"package-form",loading:p.isPending,children:"Save Changes"})]})]}),y.jsx(ol,{open:o!=="",autoHideDuration:6e3,onClose:()=>s(""),message:o})]})}function jNe({resourceUri:e,onCloseDialog:t}){const[n,r]=T.useState(!1),{apiClients:a}=rr(),o=sl(),[s,i]=T.useState(""),c=()=>{r(!0)},u=()=>{r(!1),t()},{projectName:p,packageName:f}=Ar(e),g=ci({mutationFn:()=>a.packages.deletePackage(p,f),onSuccess(){u(),o.invalidateQueries({queryKey:["packages"]}),i("Package deleted successfully")},onError(m){i(m instanceof Error?m.message:"An unknown error occurred")}});return y.jsxs(Je.Fragment,{children:[y.jsxs(cc,{onClick:c,children:[y.jsx(a1,{children:y.jsx(t_,{fontSize:"small"})}),y.jsx(Xi,{children:"Delete"})]}),y.jsxs(Ei,{onClose:u,"aria-labelledby":"customized-dialog-title",open:n,children:[y.jsx(ul,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Package"}),y.jsx(Io,{"aria-label":"close",onClick:u,sx:m=>({position:"absolute",right:8,top:8,color:m.palette.grey[500]}),children:y.jsx(dc,{})}),y.jsx(Ci,{dividers:!0,children:y.jsxs(nr,{gutterBottom:!0,children:['Are you sure you want to delete "',f,'"? This action cannot be undone.']})}),y.jsxs(Si,{children:[y.jsx(fr,{variant:"outlined",onClick:u,style:{borderColor:"#14b3cb",color:"#14b3cb"},children:"Cancel"}),y.jsx(fr,{variant:"contained",autoFocus:!0,onClick:()=>g.mutate(),color:"error",loading:g.isPending,children:"Delete"})]}),y.jsx(ol,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function BNe({package:e,resourceUri:t,onCloseDialog:n}){const[r,a]=T.useState(!1),{apiClients:o}=rr(),s=sl(),[i,c]=T.useState(""),u=()=>{a(!0)},p=()=>{a(!1),n()},{packageName:f,projectName:g}=Ar(t),m=ci({async mutationFn(C){return o.packages.updatePackage(g,f,{name:f,description:C.description})},onSuccess(){p(),c("Package updated successfully"),s.invalidateQueries({queryKey:["packages",g]})},onError(C){c(C instanceof Error?C.message:"An unknown error occurred")}}),v=C=>{C.preventDefault();const x=new FormData(C.currentTarget).get("description")?.toString();m.mutate({description:x})};return y.jsxs(Je.Fragment,{children:[y.jsxs(cc,{onClick:u,children:[y.jsx(a1,{children:y.jsx(n_,{fontSize:"small"})}),y.jsx(Xi,{children:"Edit"})]}),y.jsxs(Ei,{open:r,onClose:p,children:[y.jsx(ul,{children:"Edit Package"}),y.jsxs(Ci,{children:[y.jsxs(sf,{children:['Update the details for "',e.name,'".']}),y.jsxs("form",{onSubmit:v,id:"package-form",children:[y.jsx(an,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",disabled:!0,type:"text",fullWidth:!0,variant:"standard",defaultValue:e.name}),y.jsx(an,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,defaultValue:e.description,variant:"standard"})]})]}),y.jsxs(Si,{children:[y.jsx(fr,{disabled:m.isPending,onClick:p,children:"Cancel"}),y.jsx(fr,{type:"submit",form:"package-form",loading:m.isPending,children:"Save Changes"})]})]}),y.jsx(ol,{open:i!=="",autoHideDuration:6e3,onClose:()=>c(""),message:i})]})}const zNe=({package:e,resourceUri:t})=>{const{mutable:n}=rr(),[r,a]=T.useState(null),o=!!r,s=c=>{a(c.currentTarget)},i=()=>{a(null)};return y.jsx(y.Fragment,{children:n&&y.jsxs(y.Fragment,{children:[y.jsx(kr,{onClick:c=>{c.stopPropagation(),s(c)},"aria-controls":o?"package-menu":void 0,"aria-haspopup":"true","aria-expanded":o?"true":void 0,children:y.jsx(o$,{fontSize:"small"})}),y.jsxs(Tg,{id:"package-menu","aria-haspopup":"true","aria-expanded":o?"true":void 0,open:o,anchorEl:r,onClose:i,disableRestoreFocus:!0,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},onClick:c=>{c.stopPropagation()},children:[y.jsx(BNe,{package:e,resourceUri:t,onCloseDialog:i}),y.jsx(jNe,{resourceUri:t,onCloseDialog:i})]})]})})};function UNe({onSelectPackage:e,resourceUri:t}){const{apiClients:n}=rr(),{projectName:r}=Ar(t),{data:a,isSuccess:o,isError:s,error:i}=Ba({queryKey:["packages",r],queryFn:()=>n.packages.listPackages(r)});return y.jsxs(y.Fragment,{children:[!o&&!s&&y.jsx(io,{text:"Fetching Packages..."}),o&&y.jsx(Lr,{container:!0,spacing:3,columns:12,children:a.data.sort((c,u)=>c.name.localeCompare(u.name)).map(c=>{const u=dA({projectName:r,packageName:c.name});return y.jsx(Lr,{size:{xs:12,sm:12,md:12,lg:4},children:y.jsx(xc,{sx:{cursor:"pointer",transition:"all 0.2s ease-in-out",paddingTop:"8px","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)",transform:"translateY(-1px)"}},onClick:p=>{e(c.name,p)},children:y.jsxs(Sc,{children:[y.jsxs(jt,{display:"flex",alignItems:"center",justifyContent:"space-between",sx:{marginBottom:"8px"},children:[y.jsx(gt,{variant:"overline",sx:{fontSize:"12px",fontWeight:"600",color:"primary.main",textTransform:"uppercase",letterSpacing:"0.5px"},children:c.name}),y.jsx(zNe,{package:c,resourceUri:u})]}),y.jsx(pi,{sx:{mb:2}}),y.jsx(jt,{sx:{maxHeight:"120px",overflowY:"auto",mt:2},children:y.jsx(gt,{variant:"body2",children:c.description})})]})})},c.name)})}),s&&y.jsx($a,{error:i,context:`${r} > Packages`})]})}function zPe({onSelectPackage:e,resourceUri:t}){const{mutable:n}=rr(),{projectName:r}=Ar(t);return T.useEffect(()=>{window.scrollTo({top:0,behavior:"auto"})},[]),y.jsx(y.Fragment,{children:y.jsxs(Yle,{children:[y.jsxs(jt,{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2,children:[y.jsxs(gt,{variant:"h6",children:[r," packages"]}),n&&y.jsx(FNe,{resourceUri:t})]}),y.jsxs(Lr,{container:!0,spacing:3,columns:12,children:[y.jsx(Lr,{size:{xs:12,md:12},children:y.jsx(UNe,{onSelectPackage:e,resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:12},children:y.jsx($Ne,{resourceUri:t})})]})]})})}const HNe=async e=>{if(typeof window>"u")throw new Error("MalloyRenderer can only be used in browser environment");const{MalloyRenderer:t}=await As(async()=>{const{MalloyRenderer:n}=await import("./index.umd-CTYdFEHH.js").then(r=>r.i);return{MalloyRenderer:n}},[]);return new t({onClick:e,onError:n=>{console.error("Error rendering visualization:",typeof n,n)}}).createViz()};function qNe({result:e,height:t,onDrill:n,onSizeChange:r}){const a=T.useRef(null),o=T.useRef(!1);return T.useLayoutEffect(()=>{if(!a.current||!e)return;let s=!0;const i=a.current;for(;i.firstChild;)i.removeChild(i.firstChild);o.current=!1;let c=null,u=null;const p=()=>{if(o.current||!s||!i.firstElementChild)return;const f=i.firstElementChild.firstElementChild;if(!f)return;const g=f.firstElementChild;let m=f.scrollHeight||f.offsetHeight||0;g&&f.classList.contains("malloy-dashboard")&&(m=g.scrollHeight||g.offsetHeight||0),m>0&&(o.current=!0,r&&r(m))};return HNe(n).then(f=>{if(s){c=new MutationObserver(()=>{u&&clearTimeout(u),u=setTimeout(()=>{p(),c?.disconnect()},100)}),c.observe(i,{childList:!0,subtree:!0,attributes:!0});try{f.setResult(JSON.parse(e)),f.render(i)}catch(g){console.error("Error rendering visualization:",g),c?.disconnect()}}}).catch(f=>{console.error("Failed to create renderer:",f)}),()=>{s=!1,c?.disconnect(),u&&clearTimeout(u)}},[e,n,r]),y.jsx("div",{ref:a,style:{width:"100%",height:t?`${t}px`:"400px"}})}function VNe(e){return typeof window>"u"?y.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading..."}):y.jsx(T.Suspense,{fallback:y.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading visualization..."}),children:y.jsx(qNe,{...e})})}const WNe=Object.freeze(Object.defineProperty({__proto__:null,default:VNe},Symbol.toStringTag,{value:"Module"}));At.defaults.baseURL="IfYouAreSeeingThis_baseURL_IsNotSet";const xr={primary:{main:"#14b3cb",light:"#22d3ee",dark:"#0e7490",50:"#ecfeff",100:"#cffafe",500:"#14b3cb",600:"#0891b2",700:"#0e7490"},secondary:{main:"#fbbb04",light:"#fde047",dark:"#eab308",50:"#fefce8",100:"#fef3c7",500:"#fbbb04",600:"#eab308",700:"#ca8a04"},grey:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},success:{main:"#059669",light:"#10b981",dark:"#047857"},warning:{main:"#d97706",light:"#f59e0b",dark:"#b45309"},error:{main:"#dc2626",light:"#ef4444",dark:"#b91c1c"},info:{main:"#0891b2",light:"#06b6d4",dark:"#0e7490"}},GNe=Kv({palette:{mode:"light",primary:xr.primary,secondary:xr.secondary,grey:xr.grey,success:xr.success,warning:xr.warning,error:xr.error,info:xr.info,background:{default:"#ffffff",paper:"#ffffff"},text:{primary:xr.grey[900],secondary:xr.grey[600]},divider:xr.grey[200]},typography:{fontFamily:'"Inter", "Roboto", "Helvetica", "Arial", sans-serif',h1:{fontWeight:700,letterSpacing:"-0.025em"},h2:{fontWeight:700,letterSpacing:"-0.025em"},h3:{fontWeight:600,letterSpacing:"-0.025em"},h4:{fontWeight:600,letterSpacing:"-0.025em"},h5:{fontWeight:600,letterSpacing:"-0.025em"},h6:{fontWeight:600,letterSpacing:"-0.025em"},subtitle1:{fontWeight:500,letterSpacing:"-0.025em"},subtitle2:{fontWeight:500,letterSpacing:"-0.025em"},body1:{letterSpacing:"-0.025em"},body2:{letterSpacing:"-0.025em"},button:{fontWeight:500,letterSpacing:"-0.025em",textTransform:"none"}},shape:{borderRadius:4},components:{MuiCssBaseline:{styleOverrides:{body:{scrollbarWidth:"thin",scrollbarColor:`${xr.grey[300]} ${xr.grey[100]}`,"&::-webkit-scrollbar":{width:"8px",height:"8px"},"&::-webkit-scrollbar-track":{background:xr.grey[100],borderRadius:"4px"},"&::-webkit-scrollbar-thumb":{background:xr.grey[300],borderRadius:"4px","&:hover":{background:xr.grey[400]}},"&::-webkit-scrollbar-corner":{background:xr.grey[100]}},"*":{scrollbarWidth:"thin",scrollbarColor:`${xr.grey[300]} ${xr.grey[100]}`,"&::-webkit-scrollbar":{width:"8px",height:"8px"},"&::-webkit-scrollbar-track":{background:xr.grey[100],borderRadius:"4px"},"&::-webkit-scrollbar-thumb":{background:xr.grey[300],borderRadius:"4px","&:hover":{background:xr.grey[400]}},"&::-webkit-scrollbar-corner":{background:xr.grey[100]}},"div[data-radix-popper-content-wrapper]":{zIndex:"1300 !important"}}},MuiButton:{styleOverrides:{root:{borderRadius:4,textTransform:"none",fontWeight:500,boxShadow:"none","&:hover":{boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"}},contained:{"&:hover":{boxShadow:"0 2px 4px rgba(0, 0, 0, 0.1)"}}}},MuiCard:{styleOverrides:{root:{borderRadius:4,boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)",border:"1px solid",borderColor:"rgba(0, 0, 0, 0.05)"}}},MuiChip:{styleOverrides:{root:{borderRadius:4,fontWeight:500}}},MuiTextField:{styleOverrides:{root:{"& .MuiOutlinedInput-root":{borderRadius:4}}}},MuiDialog:{styleOverrides:{paper:{borderRadius:4,boxShadow:"0px 20px 25px -5px rgba(0, 0, 0, 0.1), 0px 10px 10px -5px rgba(0, 0, 0, 0.04)"}}},MuiMenu:{styleOverrides:{paper:{borderRadius:4,boxShadow:"0px 10px 15px -3px rgba(0, 0, 0, 0.1), 0px 4px 6px -2px rgba(0, 0, 0, 0.05)",border:"1px solid rgba(0, 0, 0, 0.05)"}}},MuiBreadcrumbs:{styleOverrides:{root:{"& .MuiBreadcrumbs-separator":{margin:"0 6px",color:xr.grey[400]}}}},MuiDivider:{styleOverrides:{root:{margin:"4px 0",borderColor:xr.grey[200]}},defaultProps:{sx:{my:1}}}}}),YNe=T.lazy(()=>As(()=>import("./HomePage-D2tUw_9U.js"),[])),KNe=T.lazy(()=>As(()=>import("./MainPage-DBQW76L7.js"),[])),QNe=T.lazy(()=>As(()=>import("./ModelPage-BnfOKuhQ.js"),[])),XNe=T.lazy(()=>As(()=>import("./PackagePage-zPhE-rDg.js"),[])),ZNe=T.lazy(()=>As(()=>import("./ProjectPage-BpSTvuW6.js"),[])),JNe=T.lazy(()=>As(()=>import("./RouteError-Cp9-yCK5.js"),[])),ePe=T.lazy(()=>As(()=>import("./WorkbookPage-FD_gmxeE.js"),[])),tPe=(e="/",t,n)=>Eq([{path:e,element:y.jsx(Hre,{children:y.jsx(xCe,{workbookStorage:t,children:y.jsxs(RY,{theme:GNe,children:[y.jsx(GX,{}),y.jsx(KNe,{headerProps:n})]})})}),errorElement:y.jsx(JNe,{}),children:[{path:"",element:y.jsx(YNe,{})},{path:":projectName",element:y.jsx(ZNe,{})},{path:":projectName/:packageName",element:y.jsx(XNe,{})},{path:":projectName/:packageName/*",element:y.jsx(QNe,{})},{path:":projectName/:packageName/workbook/:workspace/:workbookPath",element:y.jsx(ePe,{})}]}]),nPe=tPe("/",new kCe,void 0);TU.createRoot(document.getElementById("root")).render(y.jsx(T.StrictMode,{children:y.jsx(Pq,{router:nPe})}));export{UX as A,Cu as B,Jb as C,dA as D,jPe as E,UOe as F,BPe as G,zPe as H,kr as I,WH as J,$Pe as K,aPe as L,Tg as M,Je as N,sPe as O,Qi as P,Wl as Q,_m as R,ca as S,gt as T,gg as U,rPe as V,C4 as W,T as a,Ro as b,Pt as c,$t as d,Ft as e,ht as f,KW as g,Ke as h,Lt as i,y as j,Za as k,TCe as l,Kt as m,mc as n,aT as o,J6 as p,si as q,FPe as r,ze as s,oPe as t,gk as u,jt as v,U4 as w,hc as x,cc as y,wo as z};
467
+ `));a[g]={id:g,label:m,parentId:f,idAttribute:void 0,expandable:!!u.children?.length,disabled:t?t(u):!1,depth:p},o[g]=u;const v=f??Zd;s[v]||(s[v]=[]),s[v].push(g),u.children?.forEach(C=>i(C,p+1,g))};e.forEach(u=>i(u,0,null));const c={};return Object.keys(s).forEach(u=>{c[u]=aNe(s[u])}),{itemMetaMap:a,itemMap:o,itemOrderedChildrenIds:s,itemChildrenIndexes:c}},Kg=({instance:e,params:t,state:n,setState:r,experimentalFeatures:a})=>{const o=T.useCallback(x=>n.items.itemMetaMap[x],[n.items.itemMetaMap]),s=T.useCallback(x=>n.items.itemMap[x],[n.items.itemMap]),i=T.useCallback(()=>{const x=S=>{const w=n.items.itemMap[S],E=Ot(w,oNe),D=n.items.itemOrderedChildrenIds[S];return D&&(E.children=D.map(x)),E};return n.items.itemOrderedChildrenIds[Zd].map(x)},[n.items.itemMap,n.items.itemOrderedChildrenIds]),c=T.useCallback(x=>{if(x==null)return!1;let S=e.getItemMeta(x);if(!S)return!1;if(S.disabled)return!0;for(;S.parentId!=null;)if(S=e.getItemMeta(S.parentId),S.disabled)return!0;return!1},[e]),u=T.useCallback(x=>{const S=e.getItemMeta(x).parentId??Zd;return n.items.itemChildrenIndexes[S][x]},[e,n.items.itemChildrenIndexes]),p=T.useCallback(x=>n.items.itemOrderedChildrenIds[x??Zd]??[],[n.items.itemOrderedChildrenIds]),f=x=>{const S=e.getItemMeta(x);return S==null?null:document.getElementById(zA({treeId:n.id.treeId,itemId:x,id:S.idAttribute}))},g=x=>t.disabledItemsFocusable?!0:!e.isItemDisabled(x),m=T.useRef(!1),v=T.useCallback(()=>{m.current=!0},[]),C=T.useCallback(()=>m.current,[]);return T.useEffect(()=>{e.areItemUpdatesPrevented()||r(x=>{const S=r7({items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel});return Object.values(x.items.itemMetaMap).forEach(w=>{S.itemMetaMap[w.id]||rNe(e,"removeItem",{id:w.id})}),ne({},x,{items:S})})},[e,r,t.items,t.isItemDisabled,t.getItemId,t.getItemLabel]),{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof t.itemChildrenIndentation=="number"?`${t.itemChildrenIndentation}px`:t.itemChildrenIndentation}}),publicAPI:{getItem:s,getItemDOMElement:f,getItemTree:i,getItemOrderedChildrenIds:p},instance:{getItemMeta:o,getItem:s,getItemTree:i,getItemsToRender:()=>{const x=S=>{const w=n.items.itemMetaMap[S];return{label:w.label,itemId:w.id,id:w.idAttribute,children:n.items.itemOrderedChildrenIds[S]?.map(x)}};return n.items.itemOrderedChildrenIds[Zd].map(x)},getItemIndex:u,getItemDOMElement:f,getItemOrderedChildrenIds:p,isItemDisabled:c,isItemNavigable:g,preventItemUpdates:v,areItemUpdatesPrevented:C},contextValue:{items:{onItemClick:t.onItemClick,disabledItemsFocusable:t.disabledItemsFocusable,indentationAtItemLevel:a.indentationAtItemLevel??!1}}}};Kg.getInitialState=e=>({items:r7({items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel})});Kg.getDefaultizedParams=({params:e})=>ne({},e,{disabledItemsFocusable:e.disabledItemsFocusable??!1,itemChildrenIndentation:e.itemChildrenIndentation??"12px"});Kg.wrapRoot=({children:e,instance:t})=>y.jsx(BA.Provider,{value:n=>t.getItemMeta(n)?.depth??0,children:e});Kg.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};const lx=({instance:e,params:t,models:n})=>{const r=T.useMemo(()=>{const f=new Map;return n.expandedItems.value.forEach(g=>{f.set(g,!0)}),f},[n.expandedItems.value]),a=(f,g)=>{t.onExpandedItemsChange?.(f,g),n.expandedItems.setControlledValue(g)},o=T.useCallback(f=>r.has(f),[r]),s=T.useCallback(f=>!!e.getItemMeta(f)?.expandable,[e]),i=dt((f,g)=>{const m=e.isItemExpanded(g);e.setItemExpansion(f,g,!m)}),c=dt((f,g,m)=>{if(e.isItemExpanded(g)===m)return;let v;m?v=[g].concat(n.expandedItems.value):v=n.expandedItems.value.filter(C=>C!==g),t.onItemExpansionToggle&&t.onItemExpansionToggle(f,g,m),a(f,v)}),u=(f,g)=>{const m=e.getItemMeta(g),v=e.getItemOrderedChildrenIds(m.parentId).filter(x=>e.isItemExpandable(x)&&!e.isItemExpanded(x)),C=n.expandedItems.value.concat(v);v.length>0&&(t.onItemExpansionToggle&&v.forEach(x=>{t.onItemExpansionToggle(f,x,!0)}),a(f,C))},p=T.useMemo(()=>t.expansionTrigger?t.expansionTrigger:e.isTreeViewEditable?"iconContainer":"content",[t.expansionTrigger,e.isTreeViewEditable]);return{publicAPI:{setItemExpansion:c},instance:{isItemExpanded:o,isItemExpandable:s,setItemExpansion:c,toggleItemExpansion:i,expandAllSiblings:u},contextValue:{expansion:{expansionTrigger:p}}}};lx.models={expandedItems:{getDefaultValue:e=>e.defaultExpandedItems}};const sNe=[];lx.getDefaultizedParams=({params:e})=>ne({},e,{defaultExpandedItems:e.defaultExpandedItems??sNe});lx.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const T0=e=>Array.isArray(e)?e:e!=null?[e]:[],YE=e=>{const t={};return e.forEach(n=>{t[n]=!0}),t},cx=({instance:e,params:t,models:n})=>{const r=T.useRef(null),a=T.useRef({}),o=T.useMemo(()=>{const p=new Map;return Array.isArray(n.selectedItems.value)?n.selectedItems.value.forEach(f=>{p.set(f,!0)}):n.selectedItems.value!=null&&p.set(n.selectedItems.value,!0),p},[n.selectedItems.value]),s=(p,f)=>{if(t.onItemSelectionToggle)if(t.multiSelect){const g=f.filter(v=>!e.isItemSelected(v)),m=n.selectedItems.value.filter(v=>!f.includes(v));g.forEach(v=>{t.onItemSelectionToggle(p,v,!0)}),m.forEach(v=>{t.onItemSelectionToggle(p,v,!1)})}else f!==n.selectedItems.value&&(n.selectedItems.value!=null&&t.onItemSelectionToggle(p,n.selectedItems.value,!1),f!=null&&t.onItemSelectionToggle(p,f,!0));t.onSelectedItemsChange&&t.onSelectedItemsChange(p,f),n.selectedItems.setControlledValue(f)},i=p=>o.has(p),c=({event:p,itemId:f,keepExistingSelection:g=!1,shouldBeSelected:m})=>{if(t.disableSelection)return;let v;if(g){const C=T0(n.selectedItems.value),x=e.isItemSelected(f);x&&(m===!1||m==null)?v=C.filter(S=>S!==f):!x&&(m===!0||m==null)?v=[f].concat(C):v=C}else m===!1||m==null&&e.isItemSelected(f)?v=t.multiSelect?[]:null:v=t.multiSelect?[f]:f;s(p,v),r.current=f,a.current={}},u=(p,[f,g])=>{if(t.disableSelection||!t.multiSelect)return;let m=T0(n.selectedItems.value).slice();Object.keys(a.current).length>0&&(m=m.filter(S=>!a.current[S]));const v=YE(m),C=SIe(e,f,g),x=C.filter(S=>!v[S]);m=m.concat(x),s(p,m),a.current=YE(C)};return{getRootProps:()=>({"aria-multiselectable":t.multiSelect}),publicAPI:{selectItem:c},instance:{isItemSelected:i,selectItem:c,selectAllNavigableItems:p=>{if(t.disableSelection||!t.multiSelect)return;const f=CIe(e);s(p,f),a.current=YE(f)},expandSelectionRange:(p,f)=>{if(r.current!=null){const[g,m]=Q8(e,f,r.current);u(p,[g,m])}},selectRangeFromStartToItem:(p,f)=>{u(p,[dg(e),f])},selectRangeFromItemToEnd:(p,f)=>{u(p,[f,K8(e)])},selectItemFromArrowNavigation:(p,f,g)=>{if(t.disableSelection||!t.multiSelect)return;let m=T0(n.selectedItems.value).slice();Object.keys(a.current).length===0?(m.push(g),a.current={[f]:!0,[g]:!0}):(a.current[f]||(a.current={}),a.current[g]?(m=m.filter(v=>v!==f),delete a.current[f]):(m.push(g),a.current[g]=!0)),s(p,m)}},contextValue:{selection:{multiSelect:t.multiSelect,checkboxSelection:t.checkboxSelection,disableSelection:t.disableSelection}}}};cx.models={selectedItems:{getDefaultValue:e=>e.defaultSelectedItems}};const iNe=[];cx.getDefaultizedParams=({params:e})=>ne({},e,{disableSelection:e.disableSelection??!1,multiSelect:e.multiSelect??!1,checkboxSelection:e.checkboxSelection??!1,defaultSelectedItems:e.defaultSelectedItems??(e.multiSelect?iNe:null)});cx.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0};const S4=1e3;class lNe{constructor(t=S4){this.timeouts=new Map,this.cleanupTimeout=S4,this.cleanupTimeout=t}register(t,n,r){this.timeouts||(this.timeouts=new Map);const a=setTimeout(()=>{typeof n=="function"&&n(),this.timeouts.delete(r.cleanupToken)},this.cleanupTimeout);this.timeouts.set(r.cleanupToken,a)}unregister(t){const n=this.timeouts.get(t.cleanupToken);n&&(this.timeouts.delete(t.cleanupToken),clearTimeout(n))}reset(){this.timeouts&&(this.timeouts.forEach((t,n)=>{this.unregister({cleanupToken:n})}),this.timeouts=void 0)}}class cNe{constructor(){this.registry=new FinalizationRegistry(t=>{typeof t=="function"&&t()})}register(t,n,r){this.registry.register(t,n,r)}unregister(t){this.registry.unregister(t)}reset(){}}class uNe{}function dNe(e){let t=0;return function(n,r,a){e.registry===null&&(e.registry=typeof FinalizationRegistry<"u"?new cNe:new lNe);const[o]=T.useState(new uNe),s=T.useRef(null),i=T.useRef(void 0);i.current=a;const c=T.useRef(null);if(!s.current&&i.current){const u=(p,f)=>{f.defaultMuiPrevented||i.current?.(p,f)};s.current=n.$$subscribeEvent(r,u),t+=1,c.current={cleanupToken:t},e.registry.register(o,()=>{s.current?.(),s.current=null,c.current=null},c.current)}else!i.current&&s.current&&(s.current(),s.current=null,c.current&&(e.registry.unregister(c.current),c.current=null));T.useEffect(()=>{if(!s.current&&i.current){const u=(p,f)=>{f.defaultMuiPrevented||i.current?.(p,f)};s.current=n.$$subscribeEvent(r,u)}return c.current&&e.registry&&(e.registry.unregister(c.current),c.current=null),()=>{s.current?.(),s.current=null}},[n,r])}}const pNe={registry:null},fNe=dNe(pNe),a7=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?a7(t.shadowRoot):t:null},hNe=(e,t)=>{let n=T0(t).find(r=>{if(!e.isItemNavigable(r))return!1;const a=e.getItemMeta(r);return a&&(a.parentId==null||e.isItemExpanded(a.parentId))});return n==null&&(n=dg(e)),n},qA=({instance:e,params:t,state:n,setState:r,models:a,rootRef:o})=>{const s=hNe(e,a.selectedItems.value),i=dt(x=>{const S=typeof x=="function"?x(n.focusedItemId):x;n.focusedItemId!==S&&r(w=>ne({},w,{focusedItemId:S}))}),c=T.useCallback(()=>!!o.current&&o.current.contains(a7(Yr(o.current))),[o]),u=T.useCallback(x=>n.focusedItemId===x&&c(),[n.focusedItemId,c]),p=x=>{const S=e.getItemMeta(x);return S&&(S.parentId==null||e.isItemExpanded(S.parentId))},f=(x,S)=>{const w=e.getItemDOMElement(S);w&&w.focus(),i(S),t.onItemFocus&&t.onItemFocus(x,S)},g=dt((x,S)=>{p(S)&&f(x,S)}),m=dt(()=>{if(n.focusedItemId!=null){if(e.getItemMeta(n.focusedItemId)){const x=e.getItemDOMElement(n.focusedItemId);x&&x.blur()}i(null)}}),v=x=>x===s;fNe(e,"removeItem",({id:x})=>{n.focusedItemId===x&&f(null,s)});const C=x=>S=>{x.onFocus?.(S),!S.defaultMuiPrevented&&S.target===S.currentTarget&&f(S,s)};return{getRootProps:x=>({onFocus:C(x)}),publicAPI:{focusItem:g},instance:{isItemFocused:u,canItemBeTabbed:v,focusItem:g,removeFocusedItem:m}}};qA.getInitialState=()=>({focusedItemId:null});qA.params={onItemFocus:!0};function mNe(e){return!!e&&e.length===1&&!!e.match(/\S/)}const o7=({instance:e,params:t,state:n})=>{const r=gs(),a=T.useRef({}),o=dt(u=>{a.current=u(a.current)});T.useEffect(()=>{if(e.areItemUpdatesPrevented())return;const u={},p=f=>{u[f.id]=f.label.substring(0,1).toLowerCase()};Object.values(n.items.itemMetaMap).forEach(p),a.current=u},[n.items.itemMetaMap,t.getItemId,e]);const s=(u,p)=>{const f=p.toLowerCase(),g=x=>{const S=E0(e,x);return S===null?dg(e):S};let m=null,v=g(u);const C={};for(;m==null&&!C[v];)a.current[v]===f?m=v:(C[v]=!0,v=g(v));return m},i=u=>!t.disableSelection&&!e.isItemDisabled(u),c=u=>!e.isItemDisabled(u)&&e.isItemExpandable(u);return{instance:{updateFirstCharMap:o,handleItemKeyDown:(u,p)=>{if(u.defaultMuiPrevented||u.altKey||pg(u.target,u.currentTarget))return;const f=u.ctrlKey||u.metaKey,g=u.key;switch(!0){case(g===" "&&i(p)):{u.preventDefault(),t.multiSelect&&u.shiftKey?e.expandSelectionRange(u,p):e.selectItem({event:u,itemId:p,keepExistingSelection:t.multiSelect,shouldBeSelected:t.multiSelect?void 0:!0});break}case g==="Enter":{xu(e,is)&&e.isItemEditable(p)&&!e.isItemBeingEdited(p)?e.setEditedItemId(p):c(p)?(e.toggleItemExpansion(u,p),u.preventDefault()):i(p)&&(t.multiSelect?(u.preventDefault(),e.selectItem({event:u,itemId:p,keepExistingSelection:!0})):e.isItemSelected(p)||(e.selectItem({event:u,itemId:p}),u.preventDefault()));break}case g==="ArrowDown":{const m=E0(e,p);m&&(u.preventDefault(),e.focusItem(u,m),t.multiSelect&&u.shiftKey&&i(m)&&e.selectItemFromArrowNavigation(u,p,m));break}case g==="ArrowUp":{const m=Y8(e,p);m&&(u.preventDefault(),e.focusItem(u,m),t.multiSelect&&u.shiftKey&&i(m)&&e.selectItemFromArrowNavigation(u,p,m));break}case(g==="ArrowRight"&&!r||g==="ArrowLeft"&&r):{if(f)return;if(e.isItemExpanded(p)){const m=E0(e,p);m&&(e.focusItem(u,m),u.preventDefault())}else c(p)&&(e.toggleItemExpansion(u,p),u.preventDefault());break}case(g==="ArrowLeft"&&!r||g==="ArrowRight"&&r):{if(f)return;if(c(p)&&e.isItemExpanded(p))e.toggleItemExpansion(u,p),u.preventDefault();else{const m=e.getItemMeta(p).parentId;m&&(e.focusItem(u,m),u.preventDefault())}break}case g==="Home":{i(p)&&t.multiSelect&&f&&u.shiftKey?e.selectRangeFromStartToItem(u,p):e.focusItem(u,dg(e)),u.preventDefault();break}case g==="End":{i(p)&&t.multiSelect&&f&&u.shiftKey?e.selectRangeFromItemToEnd(u,p):e.focusItem(u,K8(e)),u.preventDefault();break}case g==="*":{e.expandAllSiblings(u,p),u.preventDefault();break}case(String.fromCharCode(u.keyCode)==="A"&&f&&t.multiSelect&&!t.disableSelection):{e.selectAllNavigableItems(u),u.preventDefault();break}case(!f&&!u.shiftKey&&mNe(g)):{const m=s(p,g);m!=null&&(e.focusItem(u,m),u.preventDefault());break}}}}}};o7.params={};const s7=({slots:e,slotProps:t})=>({contextValue:{icons:{slots:{collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,endIcon:e.endIcon},slotProps:{collapseIcon:t.collapseIcon,expandIcon:t.expandIcon,endIcon:t.endIcon}}}});s7.params={};const gNe=[Kg,lx,cx,qA,o7,s7,is],yNe=["ownerState"];function bNe({slots:e,slotProps:t,label:n,id:r,itemId:a,itemsToRender:o}){const s=e?.item??BIe,i=mn({elementType:s,externalSlotProps:t?.item,additionalProps:{itemId:a,id:r,label:n},ownerState:{itemId:a,label:n}}),c=Ot(i,yNe),u=T.useMemo(()=>o?y.jsx(i7,{itemsToRender:o,slots:e,slotProps:t}):null,[o,e,t]);return y.jsx(s,ne({},c,{children:u}))}function i7(e){const{itemsToRender:t,slots:n,slotProps:r}=e;return y.jsx(T.Fragment,{children:t.map(a=>y.jsx(bNe,{slots:n,slotProps:r,label:a.label,id:a.id,itemId:a.itemId,itemsToRender:a.children},a.itemId))})}const vNe=q8(),xNe=e=>{const{classes:t}=e;return Ct({root:["root"]},GIe,t)},SNe=we("ul",{name:"MuiRichTreeView",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),CNe=T.forwardRef(function(e,t){const n=vNe({props:e,name:"MuiRichTreeView"}),{getRootProps:r,contextValue:a,instance:o}=nNe({plugins:gNe,rootRef:t,props:n}),{slots:s,slotProps:i}=n,c=xNe(n),u=s?.root??SNe,p=mn({elementType:u,externalSlotProps:i?.root,className:c.root,getSlotProps:r,ownerState:n});return y.jsx(bIe,{value:a,children:y.jsx(u,ne({},p,{children:y.jsx(i7,{slots:s,slotProps:i,itemsToRender:o.getItemsToRender()})}))})}),ENe=dn(y.jsx("path",{d:"m9.17 6 2 2H20v10H4V6zM10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"})),TNe=dn([y.jsx("path",{d:"M19 5v14H5V5zm0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2"},"0"),y.jsx("path",{d:"M14 17H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"},"1")]),wNe=dn(y.jsx("path",{d:"M19 15v4H5v-4zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-6c0-.55-.45-1-1-1M7 18.5c-.82 0-1.5-.67-1.5-1.5s.68-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5M19 5v4H5V5zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1M7 8.5c-.82 0-1.5-.67-1.5-1.5S6.18 5.5 7 5.5s1.5.68 1.5 1.5S7.83 8.5 7 8.5"})),kNe=dn(y.jsx("path",{d:"M15 4v2h3v12h-3v2h5V4zM4 20h5v-2H6V6h3V4H4z"}));function l7({items:e,defaultExpandedItems:t,onClickTreeNode:n}){return y.jsx(CNe,{items:MNe(e,n),defaultExpandedItems:t,slots:{item:RNe}})}const _Ne=xse(ug);function ANe(e){const t=sse({to:{opacity:e.in?1:0,transform:`translate3d(0,${e.in?0:20}px,0)`}});return y.jsx(_Ne,{style:t,...e})}function DNe({item:e,...t}){const n=y.jsxs(VIe,{...t,sx:{display:"flex",alignItems:"center",color:e.error?"error.main":"grey.600"},children:[e.fileType==="directory"&&y.jsx(ENe,{})||e.fileType==="notebook"&&y.jsx(TNe,{})||e.fileType==="model"&&y.jsx(kNe,{})||e.fileType=="database"&&y.jsx(wNe,{})||y.jsx(z8,{}),y.jsx(gt,{variant:"body2",sx:{marginLeft:"5px"},color:e.error?"error.main":e.link?"primary.main":"grey.600",children:e.label})]});return e.error?y.jsx(vo,{title:e.error,placement:"right",children:n}):n}const RNe=T.forwardRef(function(e,t){const{id:n,itemId:r,label:a,children:o,disabled:s,...i}=e,{getRootProps:c,getContentProps:u,getLabelProps:p,getIconContainerProps:f,getGroupTransitionProps:g,status:m,publicAPI:v}=wIe({id:n,itemId:r,children:o,label:a,disabled:s,rootRef:t}),C=v.getItem(r);return m.selected=!1,m.focused=!1,y.jsx(UA,{itemId:r,children:y.jsxs(HIe,{...c(i),children:[y.jsxs(qIe,{...u(),...C.link&&{onClick:x=>C.link(x)},sx:{pointerEvents:!C.selectable&&"none"},children:[y.jsx(WIe,{...f(),children:y.jsx(zIe,{status:m})}),y.jsx(DNe,{...p({item:C})})]}),o&&y.jsx(ANe,{...g()})]})})});function MNe(e,t){const n=new Map;return e.map(r=>{let a=n;const o=r.path.split("/");o.forEach((s,i)=>{i===o.length-1?a.set(s,r):(a.has(s)||a.set(s,new Map),a=a.get(s))})}),c7(n,"",t)}function c7(e,t,n){const r=[];return e.forEach((a,o)=>{const s=o.endsWith(".malloy")&&"model"||o.endsWith(".malloynb")&&"notebook"||o.endsWith(".parquet")&&"database"||"unknown";if(s!=="unknown"){const i=a;r.push({id:t+o,label:o,fileType:s,link:s==="model"||s==="notebook"?c=>n(t+o,c):void 0,selectable:s==="model"||s==="notebook",error:"error"in i?i.error:void 0})}else{const i=t+o+"/";r.push({id:i,label:o,fileType:"directory",selectable:!0,link:void 0,children:c7(a,i,n)})}}),r}const ONe=["notebooks/","models/"];function INe({onClickModelFile:e,resourceUri:t}){const{projectName:n,packageName:r,versionId:a}=Ar(t),{apiClients:o}=rr(),{data:s,isError:i,error:c,isSuccess:u}=Ba({queryKey:["models",n,r,a],queryFn:()=>o.models.listModels(n,r,a)});return y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"Semantic Models"}),y.jsxs(jt,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&y.jsx(io,{text:"Fetching Models..."}),i&&y.jsx($a,{error:c,context:`${n} > ${r} > Models`}),u&&s.data.length>0&&y.jsx(l7,{items:s.data.sort((p,f)=>p.path.localeCompare(f.path)),onClickTreeNode:e,defaultExpandedItems:ONe}),u&&s.data.length===0&&y.jsx(gt,{variant:"body2",children:"No models found"})]})]})})}const NNe=["notebooks/"];function PNe({onClickNotebookFile:e,resourceUri:t}){const{apiClients:n}=rr(),{projectName:r,packageName:a,versionId:o}=Ar(t),{data:s,isError:i,error:c,isSuccess:u}=Ba({queryKey:["notebooks",r,a,o],queryFn:()=>n.notebooks.listNotebooks(r,a,o)});return y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"Notebooks"}),y.jsxs(jt,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&y.jsx(io,{text:"Fetching Notebooks..."}),i&&y.jsx($a,{error:c,context:`${r} > ${a} > Notebooks`}),u&&s.data.length>0&&y.jsx(l7,{items:s.data.sort((p,f)=>p.path.localeCompare(f.path)),defaultExpandedItems:NNe,onClickTreeNode:e}),u&&s.data.length===0&&y.jsx(gt,{variant:"body2",children:"No notebooks found"})]})]})})}const LNe="README.malloynb";function BPe({onClickPackageFile:e,resourceUri:t,retrievalFn:n}){e||(e=a=>{window.location.href=a});const r=dA({...Ar(t),modelPath:LNe});return y.jsx(y.Fragment,{children:y.jsxs(Lr,{container:!0,spacing:3,columns:12,children:[y.jsx(Lr,{size:{xs:12,md:4},children:y.jsx(HOe,{resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:4},children:y.jsx(PNe,{onClickNotebookFile:e,resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:4},children:y.jsx(INe,{onClickModelFile:e,resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:6},children:y.jsx(ZOe,{resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:6},children:y.jsx(XOe,{resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:12},children:y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"README"}),y.jsx(jt,{sx:{mt:1},children:y.jsx(UOe,{resourceUri:r,retrievalFn:n})})]})})})]})})}function $Ne({resourceUri:e}){const{projectName:t}=Ar(e),{apiClients:n}=rr(),[r,a]=T.useState(!1),o=90,{data:s,isSuccess:i,isError:c,error:u}=Ba({queryKey:["about",t],queryFn:()=>n.projects.getProject(t,!1)}),p=s?.data?.readme||"",f=p.split(/\s+/),g=f.length>o,m=f.slice(0,o).join(" ");return y.jsxs(y.Fragment,{children:[!i&&!c&&y.jsx(io,{text:"Fetching About..."}),i&&p&&y.jsx(xc,{children:y.jsxs(Sc,{children:[y.jsx(Bu,{children:"Readme"}),y.jsxs(jt,{sx:{mt:1,fontSize:"0.875rem",lineHeight:1.6},children:[y.jsx(W0,{options:{overrides:{h1:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h2:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h3:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}}}},children:r||!g?p:m}),g&&y.jsxs(jt,{sx:{mt:1},children:[" ",y.jsx(wo,{variant:"text",size:"small",onClick:()=>a(!r),children:r?"Read less":"Read more"})]})]})]})}),c&&y.jsx($a,{error:u,context:`${t} > About`})]})}function FNe({resourceUri:e}){const[t,n]=T.useState(!1),{apiClients:r}=rr(),a=sl(),[o,s]=T.useState(""),i=()=>{n(!0)},c=()=>{n(!1)},{projectName:u}=Ar(e),p=ci({async mutationFn(g){return r.packages.createPackage(u,{name:g.name,description:g.description,location:g.location})},onSuccess(){c(),s("Package created successfully"),a.invalidateQueries({queryKey:["packages",u]})},onError(g){s(g instanceof Error?g.message:"An unknown error occurred")}}),f=g=>{g.preventDefault();const m=new FormData(g.currentTarget),v=m.get("name")?.toString(),C=m.get("description")?.toString(),x=m.get("location")?.toString();p.mutate({name:v,description:C,location:x})};return y.jsxs(Je.Fragment,{children:[y.jsx(fr,{onClick:i,variant:"contained",color:"primary",startIcon:y.jsx(qre,{}),sx:{color:"white"},children:"Add Package"}),y.jsxs(Ei,{open:t,onClose:c,children:[y.jsx(ul,{children:"Create New Package"}),y.jsxs(Ci,{children:[y.jsxs(sf,{children:["Create a new malloy package to start exploring your data.",y.jsx("br",{}),y.jsx("br",{}),"The location can be a GitHub/S3/GCP URL containing a package (Zipped or unzipped), or an absolute path to a directory that the publisher server has access to.",y.jsx("br",{}),y.jsx("br",{}),"Make sure to conform the"," ",y.jsx("a",{href:"https://github.com/malloydata/publisher/blob/main/README.md#architecture-overview",target:"_blank",rel:"noopener noreferrer",children:"Malloy Package Format"}),"."]}),y.jsxs("form",{onSubmit:f,id:"package-form",children:[y.jsx(an,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",type:"text",fullWidth:!0,variant:"standard"}),y.jsx(an,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,variant:"standard"}),y.jsx(an,{id:"location",name:"location",label:"Location",type:"text",placeholder:"E.g. s3://my-bucket/my-package.zip",fullWidth:!0,variant:"standard"})]})]}),y.jsxs(Si,{children:[y.jsx(fr,{disabled:p.isPending,onClick:c,children:"Cancel"}),y.jsx(fr,{type:"submit",form:"package-form",loading:p.isPending,children:"Save Changes"})]})]}),y.jsx(ol,{open:o!=="",autoHideDuration:6e3,onClose:()=>s(""),message:o})]})}function jNe({resourceUri:e,onCloseDialog:t}){const[n,r]=T.useState(!1),{apiClients:a}=rr(),o=sl(),[s,i]=T.useState(""),c=()=>{r(!0)},u=()=>{r(!1),t()},{projectName:p,packageName:f}=Ar(e),g=ci({mutationFn:()=>a.packages.deletePackage(p,f),onSuccess(){u(),o.invalidateQueries({queryKey:["packages"]}),i("Package deleted successfully")},onError(m){i(m instanceof Error?m.message:"An unknown error occurred")}});return y.jsxs(Je.Fragment,{children:[y.jsxs(cc,{onClick:c,children:[y.jsx(a1,{children:y.jsx(t_,{fontSize:"small"})}),y.jsx(Xi,{children:"Delete"})]}),y.jsxs(Ei,{onClose:u,"aria-labelledby":"customized-dialog-title",open:n,children:[y.jsx(ul,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Package"}),y.jsx(Io,{"aria-label":"close",onClick:u,sx:m=>({position:"absolute",right:8,top:8,color:m.palette.grey[500]}),children:y.jsx(dc,{})}),y.jsx(Ci,{dividers:!0,children:y.jsxs(nr,{gutterBottom:!0,children:['Are you sure you want to delete "',f,'"? This action cannot be undone.']})}),y.jsxs(Si,{children:[y.jsx(fr,{variant:"outlined",onClick:u,style:{borderColor:"#14b3cb",color:"#14b3cb"},children:"Cancel"}),y.jsx(fr,{variant:"contained",autoFocus:!0,onClick:()=>g.mutate(),color:"error",loading:g.isPending,children:"Delete"})]}),y.jsx(ol,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function BNe({package:e,resourceUri:t,onCloseDialog:n}){const[r,a]=T.useState(!1),{apiClients:o}=rr(),s=sl(),[i,c]=T.useState(""),u=()=>{a(!0)},p=()=>{a(!1),n()},{packageName:f,projectName:g}=Ar(t),m=ci({async mutationFn(C){return o.packages.updatePackage(g,f,{name:f,description:C.description})},onSuccess(){p(),c("Package updated successfully"),s.invalidateQueries({queryKey:["packages",g]})},onError(C){c(C instanceof Error?C.message:"An unknown error occurred")}}),v=C=>{C.preventDefault();const x=new FormData(C.currentTarget).get("description")?.toString();m.mutate({description:x})};return y.jsxs(Je.Fragment,{children:[y.jsxs(cc,{onClick:u,children:[y.jsx(a1,{children:y.jsx(n_,{fontSize:"small"})}),y.jsx(Xi,{children:"Edit"})]}),y.jsxs(Ei,{open:r,onClose:p,children:[y.jsx(ul,{children:"Edit Package"}),y.jsxs(Ci,{children:[y.jsxs(sf,{children:['Update the details for "',e.name,'".']}),y.jsxs("form",{onSubmit:v,id:"package-form",children:[y.jsx(an,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",disabled:!0,type:"text",fullWidth:!0,variant:"standard",defaultValue:e.name}),y.jsx(an,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,defaultValue:e.description,variant:"standard"})]})]}),y.jsxs(Si,{children:[y.jsx(fr,{disabled:m.isPending,onClick:p,children:"Cancel"}),y.jsx(fr,{type:"submit",form:"package-form",loading:m.isPending,children:"Save Changes"})]})]}),y.jsx(ol,{open:i!=="",autoHideDuration:6e3,onClose:()=>c(""),message:i})]})}const zNe=({package:e,resourceUri:t})=>{const{mutable:n}=rr(),[r,a]=T.useState(null),o=!!r,s=c=>{a(c.currentTarget)},i=()=>{a(null)};return y.jsx(y.Fragment,{children:n&&y.jsxs(y.Fragment,{children:[y.jsx(kr,{onClick:c=>{c.stopPropagation(),s(c)},"aria-controls":o?"package-menu":void 0,"aria-haspopup":"true","aria-expanded":o?"true":void 0,children:y.jsx(o$,{fontSize:"small"})}),y.jsxs(Tg,{id:"package-menu","aria-haspopup":"true","aria-expanded":o?"true":void 0,open:o,anchorEl:r,onClose:i,disableRestoreFocus:!0,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},onClick:c=>{c.stopPropagation()},children:[y.jsx(BNe,{package:e,resourceUri:t,onCloseDialog:i}),y.jsx(jNe,{resourceUri:t,onCloseDialog:i})]})]})})};function UNe({onSelectPackage:e,resourceUri:t}){const{apiClients:n}=rr(),{projectName:r}=Ar(t),{data:a,isSuccess:o,isError:s,error:i}=Ba({queryKey:["packages",r],queryFn:()=>n.packages.listPackages(r)});return y.jsxs(y.Fragment,{children:[!o&&!s&&y.jsx(io,{text:"Fetching Packages..."}),o&&y.jsx(Lr,{container:!0,spacing:3,columns:12,children:a.data.sort((c,u)=>c.name.localeCompare(u.name)).map(c=>{const u=dA({projectName:r,packageName:c.name});return y.jsx(Lr,{size:{xs:12,sm:12,md:12,lg:4},children:y.jsx(xc,{sx:{cursor:"pointer",transition:"all 0.2s ease-in-out",paddingTop:"8px","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)",transform:"translateY(-1px)"}},onClick:p=>{e(c.name,p)},children:y.jsxs(Sc,{children:[y.jsxs(jt,{display:"flex",alignItems:"center",justifyContent:"space-between",sx:{marginBottom:"8px"},children:[y.jsx(gt,{variant:"overline",sx:{fontSize:"12px",fontWeight:"600",color:"primary.main",textTransform:"uppercase",letterSpacing:"0.5px"},children:c.name}),y.jsx(zNe,{package:c,resourceUri:u})]}),y.jsx(pi,{sx:{mb:2}}),y.jsx(jt,{sx:{maxHeight:"120px",overflowY:"auto",mt:2},children:y.jsx(gt,{variant:"body2",children:c.description})})]})})},c.name)})}),s&&y.jsx($a,{error:i,context:`${r} > Packages`})]})}function zPe({onSelectPackage:e,resourceUri:t}){const{mutable:n}=rr(),{projectName:r}=Ar(t);return T.useEffect(()=>{window.scrollTo({top:0,behavior:"auto"})},[]),y.jsx(y.Fragment,{children:y.jsxs(Yle,{children:[y.jsxs(jt,{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2,children:[y.jsxs(gt,{variant:"h6",children:[r," packages"]}),n&&y.jsx(FNe,{resourceUri:t})]}),y.jsxs(Lr,{container:!0,spacing:3,columns:12,children:[y.jsx(Lr,{size:{xs:12,md:12},children:y.jsx(UNe,{onSelectPackage:e,resourceUri:t})}),y.jsx(Lr,{size:{xs:12,md:12},children:y.jsx($Ne,{resourceUri:t})})]})]})})}const HNe=async e=>{if(typeof window>"u")throw new Error("MalloyRenderer can only be used in browser environment");const{MalloyRenderer:t}=await As(async()=>{const{MalloyRenderer:n}=await import("./index.umd-BCEVvpz1.js").then(r=>r.i);return{MalloyRenderer:n}},[]);return new t({onClick:e,onError:n=>{console.error("Error rendering visualization:",typeof n,n)}}).createViz()};function qNe({result:e,height:t,onDrill:n,onSizeChange:r}){const a=T.useRef(null),o=T.useRef(!1);return T.useLayoutEffect(()=>{if(!a.current||!e)return;let s=!0;const i=a.current;for(;i.firstChild;)i.removeChild(i.firstChild);o.current=!1;let c=null,u=null;const p=()=>{if(o.current||!s||!i.firstElementChild)return;const f=i.firstElementChild.firstElementChild;if(!f)return;const g=f.firstElementChild;let m=f.scrollHeight||f.offsetHeight||0;g&&f.classList.contains("malloy-dashboard")&&(m=g.scrollHeight||g.offsetHeight||0),m>0&&(o.current=!0,r&&r(m))};return HNe(n).then(f=>{if(s){c=new MutationObserver(()=>{u&&clearTimeout(u),u=setTimeout(()=>{p(),c?.disconnect()},100)}),c.observe(i,{childList:!0,subtree:!0,attributes:!0});try{f.setResult(JSON.parse(e)),f.render(i)}catch(g){console.error("Error rendering visualization:",g),c?.disconnect()}}}).catch(f=>{console.error("Failed to create renderer:",f)}),()=>{s=!1,c?.disconnect(),u&&clearTimeout(u)}},[e,n,r]),y.jsx("div",{ref:a,style:{width:"100%",height:t?`${t}px`:"400px"}})}function VNe(e){return typeof window>"u"?y.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading..."}):y.jsx(T.Suspense,{fallback:y.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading visualization..."}),children:y.jsx(qNe,{...e})})}const WNe=Object.freeze(Object.defineProperty({__proto__:null,default:VNe},Symbol.toStringTag,{value:"Module"}));At.defaults.baseURL="IfYouAreSeeingThis_baseURL_IsNotSet";const xr={primary:{main:"#14b3cb",light:"#22d3ee",dark:"#0e7490",50:"#ecfeff",100:"#cffafe",500:"#14b3cb",600:"#0891b2",700:"#0e7490"},secondary:{main:"#fbbb04",light:"#fde047",dark:"#eab308",50:"#fefce8",100:"#fef3c7",500:"#fbbb04",600:"#eab308",700:"#ca8a04"},grey:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827"},success:{main:"#059669",light:"#10b981",dark:"#047857"},warning:{main:"#d97706",light:"#f59e0b",dark:"#b45309"},error:{main:"#dc2626",light:"#ef4444",dark:"#b91c1c"},info:{main:"#0891b2",light:"#06b6d4",dark:"#0e7490"}},GNe=Kv({palette:{mode:"light",primary:xr.primary,secondary:xr.secondary,grey:xr.grey,success:xr.success,warning:xr.warning,error:xr.error,info:xr.info,background:{default:"#ffffff",paper:"#ffffff"},text:{primary:xr.grey[900],secondary:xr.grey[600]},divider:xr.grey[200]},typography:{fontFamily:'"Inter", "Roboto", "Helvetica", "Arial", sans-serif',h1:{fontWeight:700,letterSpacing:"-0.025em"},h2:{fontWeight:700,letterSpacing:"-0.025em"},h3:{fontWeight:600,letterSpacing:"-0.025em"},h4:{fontWeight:600,letterSpacing:"-0.025em"},h5:{fontWeight:600,letterSpacing:"-0.025em"},h6:{fontWeight:600,letterSpacing:"-0.025em"},subtitle1:{fontWeight:500,letterSpacing:"-0.025em"},subtitle2:{fontWeight:500,letterSpacing:"-0.025em"},body1:{letterSpacing:"-0.025em"},body2:{letterSpacing:"-0.025em"},button:{fontWeight:500,letterSpacing:"-0.025em",textTransform:"none"}},shape:{borderRadius:4},components:{MuiCssBaseline:{styleOverrides:{body:{scrollbarWidth:"thin",scrollbarColor:`${xr.grey[300]} ${xr.grey[100]}`,"&::-webkit-scrollbar":{width:"8px",height:"8px"},"&::-webkit-scrollbar-track":{background:xr.grey[100],borderRadius:"4px"},"&::-webkit-scrollbar-thumb":{background:xr.grey[300],borderRadius:"4px","&:hover":{background:xr.grey[400]}},"&::-webkit-scrollbar-corner":{background:xr.grey[100]}},"*":{scrollbarWidth:"thin",scrollbarColor:`${xr.grey[300]} ${xr.grey[100]}`,"&::-webkit-scrollbar":{width:"8px",height:"8px"},"&::-webkit-scrollbar-track":{background:xr.grey[100],borderRadius:"4px"},"&::-webkit-scrollbar-thumb":{background:xr.grey[300],borderRadius:"4px","&:hover":{background:xr.grey[400]}},"&::-webkit-scrollbar-corner":{background:xr.grey[100]}},"div[data-radix-popper-content-wrapper]":{zIndex:"1300 !important"}}},MuiButton:{styleOverrides:{root:{borderRadius:4,textTransform:"none",fontWeight:500,boxShadow:"none","&:hover":{boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)"}},contained:{"&:hover":{boxShadow:"0 2px 4px rgba(0, 0, 0, 0.1)"}}}},MuiCard:{styleOverrides:{root:{borderRadius:4,boxShadow:"0 1px 3px rgba(0, 0, 0, 0.1)",border:"1px solid",borderColor:"rgba(0, 0, 0, 0.05)"}}},MuiChip:{styleOverrides:{root:{borderRadius:4,fontWeight:500}}},MuiTextField:{styleOverrides:{root:{"& .MuiOutlinedInput-root":{borderRadius:4}}}},MuiDialog:{styleOverrides:{paper:{borderRadius:4,boxShadow:"0px 20px 25px -5px rgba(0, 0, 0, 0.1), 0px 10px 10px -5px rgba(0, 0, 0, 0.04)"}}},MuiMenu:{styleOverrides:{paper:{borderRadius:4,boxShadow:"0px 10px 15px -3px rgba(0, 0, 0, 0.1), 0px 4px 6px -2px rgba(0, 0, 0, 0.05)",border:"1px solid rgba(0, 0, 0, 0.05)"}}},MuiBreadcrumbs:{styleOverrides:{root:{"& .MuiBreadcrumbs-separator":{margin:"0 6px",color:xr.grey[400]}}}},MuiDivider:{styleOverrides:{root:{margin:"4px 0",borderColor:xr.grey[200]}},defaultProps:{sx:{my:1}}}}}),YNe=T.lazy(()=>As(()=>import("./HomePage-oXJcPThQ.js"),[])),KNe=T.lazy(()=>As(()=>import("./MainPage-rmI25cDG.js"),[])),QNe=T.lazy(()=>As(()=>import("./ModelPage-DtywEBbr.js"),[])),XNe=T.lazy(()=>As(()=>import("./PackagePage-C3oW8KXe.js"),[])),ZNe=T.lazy(()=>As(()=>import("./ProjectPage-CvmjaWsE.js"),[])),JNe=T.lazy(()=>As(()=>import("./RouteError-BKfQ9y-k.js"),[])),ePe=T.lazy(()=>As(()=>import("./WorkbookPage-NNNUEWM5.js"),[])),tPe=(e="/",t,n)=>Eq([{path:e,element:y.jsx(Hre,{children:y.jsx(xCe,{workbookStorage:t,children:y.jsxs(RY,{theme:GNe,children:[y.jsx(GX,{}),y.jsx(KNe,{headerProps:n})]})})}),errorElement:y.jsx(JNe,{}),children:[{path:"",element:y.jsx(YNe,{})},{path:":projectName",element:y.jsx(ZNe,{})},{path:":projectName/:packageName",element:y.jsx(XNe,{})},{path:":projectName/:packageName/*",element:y.jsx(QNe,{})},{path:":projectName/:packageName/workbook/:workspace/:workbookPath",element:y.jsx(ePe,{})}]}]),nPe=tPe("/",new kCe,void 0);TU.createRoot(document.getElementById("root")).render(y.jsx(T.StrictMode,{children:y.jsx(Pq,{router:nPe})}));export{UX as A,Cu as B,Jb as C,dA as D,jPe as E,UOe as F,BPe as G,zPe as H,kr as I,WH as J,$Pe as K,aPe as L,Tg as M,Je as N,sPe as O,Qi as P,Wl as Q,_m as R,ca as S,gt as T,gg as U,rPe as V,C4 as W,T as a,Ro as b,Pt as c,$t as d,Ft as e,ht as f,KW as g,Ke as h,Lt as i,y as j,Za as k,TCe as l,Kt as m,mc as n,aT as o,J6 as p,si as q,FPe as r,ze as s,oPe as t,gk as u,jt as v,U4 as w,hc as x,cc as y,wo as z};