@eslint/config-inspector
Version:
A visual tool for inspecting and understanding your ESLint flat configs
1 lines • 195 kB
JavaScript
import{E as e}from"./CpdG7ysU.js";const p=Object.freeze({displayName:"JavaScript",name:"javascript",patterns:[{include:"#directives"},{include:"#statements"},{include:"#shebang"}],repository:{"access-modifier":{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"storage.modifier.js"},"after-operator-block-as-object-literal":{begin:new RegExp("(?<!\\+\\+|--)(?<=[\\!\\(\\+\\,\\:\\=\\>\\?\\[]|^await|[^\\$\\._\\p{Alpha}\\p{Nd}]await|^return|[^\\$\\._\\p{Alpha}\\p{Nd}]return|^yield|[^\\$\\._\\p{Alpha}\\p{Nd}]yield|^throw|[^\\$\\._\\p{Alpha}\\p{Nd}]throw|^in|[^\\$\\._\\p{Alpha}\\p{Nd}]in|^of|[^\\$\\._\\p{Alpha}\\p{Nd}]of|^typeof|[^\\$\\._\\p{Alpha}\\p{Nd}]typeof|&&|\\|\\||\\*)\\p{space}*(\\{)","dgv"),beginCaptures:{1:{name:"punctuation.definition.block.js"}},end:new RegExp("\\}","dgv"),endCaptures:{0:{name:"punctuation.definition.block.js"}},name:"meta.objectliteral.js",patterns:[{include:"#object-member"}]},"array-binding-pattern":{begin:new RegExp("(?:(\\.\\.\\.)\\p{space}*)?(\\[)","dgv"),beginCaptures:{1:{name:"keyword.operator.rest.js"},2:{name:"punctuation.definition.binding-pattern.array.js"}},end:new RegExp("\\]","dgv"),endCaptures:{0:{name:"punctuation.definition.binding-pattern.array.js"}},patterns:[{include:"#binding-element"},{include:"#punctuation-comma"}]},"array-binding-pattern-const":{begin:new RegExp("(?:(\\.\\.\\.)\\p{space}*)?(\\[)","dgv"),beginCaptures:{1:{name:"keyword.operator.rest.js"},2:{name:"punctuation.definition.binding-pattern.array.js"}},end:new RegExp("\\]","dgv"),endCaptures:{0:{name:"punctuation.definition.binding-pattern.array.js"}},patterns:[{include:"#binding-element-const"},{include:"#punctuation-comma"}]},"array-literal":{begin:new RegExp("\\p{space}*(\\[)","dgv"),beginCaptures:{1:{name:"meta.brace.square.js"}},end:new RegExp("\\]","dgv"),endCaptures:{0:{name:"meta.brace.square.js"}},name:"meta.array.literal.js",patterns:[{include:"#expression"},{include:"#punctuation-comma"}]},"arrow-function":{patterns:[{captures:{1:{name:"storage.modifier.async.js"},2:{name:"variable.parameter.js"}},match:new RegExp("(?:(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))\\b(async)\\p{space}+)?([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?==>)","dgv"),name:"meta.arrow.js"},{begin:new RegExp("(?:(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))\\b(async))?((?<![\\]\\!\\)\\}])\\p{space}*(?=((<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<])*>)*>)*>\\p{space}*)?\\(\\p{space}*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\p{space}*)*((\\)\\p{space}*:)|((\\.\\.\\.\\p{space}*)?[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}*:)))|(<\\p{space}*[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}+extends\\p{space}*[^\\=\\>])|((<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<])*>)*>)*>\\p{space}*)?\\(\\p{space}*(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\p{space}*)*(([\\$_\\p{Alpha}]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\])|(\\.\\.\\.\\p{space}*[\\$_\\p{Alpha}]))([^\"'\\(\\)\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|('([^'\\\\]|\\\\[^\\n])*')|(\"([^\"\\\\]|\\\\[^\\n])*\")|(`([^\\\\\\`]|\\\\[^\\n])*`))*)?\\)(\\p{space}*:\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\p{space}*=>)))","dgv"),beginCaptures:{1:{name:"storage.modifier.async.js"}},end:new RegExp("(?==>|\\{|^(\\p{space}*(export|function|class|interface|let|var|\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b|\\bawait\\p{space}+\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b\\b|const|import|enum|namespace|module|type|abstract|declare)\\p{space}+))","dgv"),name:"meta.arrow.js",patterns:[{include:"#comment"},{include:"#type-parameters"},{include:"#function-parameters"},{include:"#arrow-return-type"},{include:"#possibly-arrow-return-type"}]},{begin:new RegExp("=>","dgv"),beginCaptures:{0:{name:"storage.type.function.arrow.js"}},end:new RegExp("((?<=[\\}\\P{space}])(?<!=>)|((?!\\{)(?=\\P{space})))(?!\\/[\\*\\/])","dgv"),name:"meta.arrow.js",patterns:[{include:"#single-line-comment-consuming-line-ending"},{include:"#decl-block"},{include:"#expression"}]}]},"arrow-return-type":{begin:new RegExp("(?<=\\))\\p{space}*(:)","dgv"),beginCaptures:{1:{name:"keyword.operator.type.annotation.js"}},end:new RegExp("(?==>|\\{|^(\\p{space}*(export|function|class|interface|let|var|\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b|\\bawait\\p{space}+\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b\\b|const|import|enum|namespace|module|type|abstract|declare)\\p{space}+))","dgv"),name:"meta.return.type.arrow.js",patterns:[{include:"#arrow-return-type-body"}]},"arrow-return-type-body":{patterns:[{begin:new RegExp("(?<=:)(?=\\p{space}*\\{)","dgv"),end:new RegExp("(?<=\\})","dgv"),patterns:[{include:"#type-object"}]},{include:"#type-predicate-operator"},{include:"#type"}]},"async-modifier":{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(async)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"storage.modifier.async.js"},"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:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))true(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"constant.language.boolean.true.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))false(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"constant.language.boolean.false.js"}]},brackets:{patterns:[{begin:new RegExp("\\{","dgv"),end:new RegExp("\\}|(?=\\*\\/)","dgv"),patterns:[{include:"#brackets"}]},{begin:new RegExp("\\[","dgv"),end:new RegExp("\\]|(?=\\*\\/)","dgv"),patterns:[{include:"#brackets"}]}]},cast:{patterns:[{include:"#jsx"}]},"class-declaration":{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(export)\\p{space}+)?(?:\\b(declare)\\p{space}+)?\\b(?:(abstract)\\p{space}+)?\\b(class)\\b(?=\\p{space}+|\\/[\\*\\/])","dgv"),beginCaptures:{1:{name:"keyword.control.export.js"},2:{name:"storage.modifier.js"},3:{name:"storage.modifier.js"},4:{name:"storage.type.class.js"}},end:new RegExp("(?<=\\})","dgv"),name:"meta.class.js",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.js"}},match:new RegExp("[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*","dgv")},{include:"#type-parameters"},{include:"#class-or-interface-body"}]},"class-expression":{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(abstract)\\p{space}+)?(class)\\b(?=\\p{space}+|[\\<\\{]|\\/[\\*\\/])","dgv"),beginCaptures:{1:{name:"storage.modifier.js"},2:{name:"storage.type.class.js"}},end:new RegExp("(?<=\\})","dgv"),name:"meta.class.js",patterns:[{include:"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{begin:new RegExp("\\{","dgv"),beginCaptures:{0:{name:"punctuation.definition.block.js"}},end:new RegExp("\\}","dgv"),endCaptures:{0:{name:"punctuation.definition.block.js"}},patterns:[{include:"#comment"},{include:"#decorator"},{begin:new RegExp("(?<=:)\\p{space}*","dgv"),end:new RegExp("(?=[\\-\\]\\)\\+\\,\\:\\;\\}\\p{space}]|^\\p{space}*(?=\\n?$)|^\\p{space}*(?:abstract|async|\\bawait\\p{space}+\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{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(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b|var|while)\\b)","dgv"),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:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))\\b(extends|implements)\\b(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),beginCaptures:{1:{name:"storage.modifier.js"}},end:new RegExp("(?=\\{)","dgv"),patterns:[{include:"#comment"},{include:"#class-or-interface-heritage"},{include:"#type-parameters"},{include:"#expressionWithoutIdentifiers"},{captures:{1:{name:"entity.name.type.module.js"},2:{name:"punctuation.accessor.js"},3:{name:"punctuation.accessor.optional.js"}},match:new RegExp("([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)\\p{space}*(?:(\\.)|(\\?\\.(?!\\p{space}*\\p{Nd})))(?=\\p{space}*[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*(\\p{space}*\\??\\.\\p{space}*[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)*\\p{space}*)","dgv")},{captures:{1:{name:"entity.other.inherited-class.js"}},match:new RegExp("([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)","dgv")},{include:"#expressionPunctuations"}]},comment:{patterns:[{begin:new RegExp("\\/\\*\\*(?!\\/)","dgv"),beginCaptures:{0:{name:"punctuation.definition.comment.js"}},end:new RegExp("\\*\\/","dgv"),endCaptures:{0:{name:"punctuation.definition.comment.js"}},name:"comment.block.documentation.js",patterns:[{include:"#docblock"}]},{begin:new RegExp("(\\/\\*)(?:\\p{space}*((@)internal)(?=\\p{space}|(\\*\\/)))?","dgv"),beginCaptures:{1:{name:"punctuation.definition.comment.js"},2:{name:"storage.type.internaldeclaration.js"},3:{name:"punctuation.decorator.internaldeclaration.js"}},end:new RegExp("\\*\\/","dgv"),endCaptures:{0:{name:"punctuation.definition.comment.js"}},name:"comment.block.js"},{begin:new RegExp("(^[\\t ]+)?((\\/\\/)(?:\\p{space}*((@)internal)(?=\\p{space}|(?=\\n?$)))?)","dgv"),beginCaptures:{1:{name:"punctuation.whitespace.comment.leading.js"},2:{name:"comment.line.double-slash.js"},3:{name:"punctuation.definition.comment.js"},4:{name:"storage.type.internaldeclaration.js"},5:{name:"punctuation.decorator.internaldeclaration.js"}},contentName:"comment.line.double-slash.js",end:new RegExp("(?=(?=\\n?$))","dgv")}]},"control-statement":{patterns:[{include:"#switch-statement"},{include:"#for-loop"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(catch|finally|throw|try)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.control.trycatch.js"},{captures:{1:{name:"keyword.control.loop.js"},2:{name:"entity.name.label.js"}},match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(break|continue|goto)\\p{space}+([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv")},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(break|continue|do|goto|while)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.control.loop.js"},{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(return)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),beginCaptures:{0:{name:"keyword.control.flow.js"}},end:new RegExp("(?=[\\;\\}]|(?=\\n?$)|;|^\\p{space}*(?=\\n?$)|^\\p{space}*(?:abstract|async|\\bawait\\p{space}+\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{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(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b|var|while)\\b)","dgv"),patterns:[{include:"#expression"}]},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(case|default|switch)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.control.switch.js"},{include:"#if-statement"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(else|if)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.control.conditional.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(with)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.control.with.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(package)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.control.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(debugger)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.other.debugger.js"}]},"decl-block":{begin:new RegExp("\\{","dgv"),beginCaptures:{0:{name:"punctuation.definition.block.js"}},end:new RegExp("\\}","dgv"),endCaptures:{0:{name:"punctuation.definition.block.js"}},name:"meta.block.js",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:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(declare|export)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"storage.modifier.js"}]},decorator:{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))@","dgv"),beginCaptures:{0:{name:"punctuation.decorator.js"}},end:new RegExp("(?=\\p{space})","dgv"),name:"meta.decorator.js",patterns:[{include:"#expression"}]},"destructuring-const":{patterns:[{begin:new RegExp("(?<![\\:\\=]|^of|[^\\$\\._\\p{Alpha}\\p{Nd}]of|^in|[^\\$\\._\\p{Alpha}\\p{Nd}]in)\\p{space}*(?=\\{)","dgv"),end:new RegExp("(?=(?=\\n?$)|^|[\\,\\;\\=\\}]|((?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(of|in)\\p{space}+))","dgv"),name:"meta.object-binding-pattern-variable.js",patterns:[{include:"#object-binding-pattern-const"},{include:"#type-annotation"},{include:"#comment"}]},{begin:new RegExp("(?<![\\:\\=]|^of|[^\\$\\._\\p{Alpha}\\p{Nd}]of|^in|[^\\$\\._\\p{Alpha}\\p{Nd}]in)\\p{space}*(?=\\[)","dgv"),end:new RegExp("(?=(?=\\n?$)|^|[\\,\\;\\=\\}]|((?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(of|in)\\p{space}+))","dgv"),name:"meta.array-binding-pattern-variable.js",patterns:[{include:"#array-binding-pattern-const"},{include:"#type-annotation"},{include:"#comment"}]}]},"destructuring-parameter":{patterns:[{begin:new RegExp("(?<![\\:\\=])\\p{space}*(?:(\\.\\.\\.)\\p{space}*)?(\\{)","dgv"),beginCaptures:{1:{name:"keyword.operator.rest.js"},2:{name:"punctuation.definition.binding-pattern.object.js"}},end:new RegExp("\\}","dgv"),endCaptures:{0:{name:"punctuation.definition.binding-pattern.object.js"}},name:"meta.parameter.object-binding-pattern.js",patterns:[{include:"#parameter-object-binding-element"}]},{begin:new RegExp("(?<![\\:\\=])\\p{space}*(?:(\\.\\.\\.)\\p{space}*)?(\\[)","dgv"),beginCaptures:{1:{name:"keyword.operator.rest.js"},2:{name:"punctuation.definition.binding-pattern.array.js"}},end:new RegExp("\\]","dgv"),endCaptures:{0:{name:"punctuation.definition.binding-pattern.array.js"}},name:"meta.paramter.array-binding-pattern.js",patterns:[{include:"#parameter-binding-element"},{include:"#punctuation-comma"}]}]},"destructuring-parameter-rest":{captures:{1:{name:"keyword.operator.rest.js"},2:{name:"variable.parameter.js"}},match:new RegExp("(?:(\\.\\.\\.)\\p{space}*)?([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)","dgv")},"destructuring-variable":{patterns:[{begin:new RegExp("(?<![\\:\\=]|^of|[^\\$\\._\\p{Alpha}\\p{Nd}]of|^in|[^\\$\\._\\p{Alpha}\\p{Nd}]in)\\p{space}*(?=\\{)","dgv"),end:new RegExp("(?=(?=\\n?$)|^|[\\,\\;\\=\\}]|((?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(of|in)\\p{space}+))","dgv"),name:"meta.object-binding-pattern-variable.js",patterns:[{include:"#object-binding-pattern"},{include:"#type-annotation"},{include:"#comment"}]},{begin:new RegExp("(?<![\\:\\=]|^of|[^\\$\\._\\p{Alpha}\\p{Nd}]of|^in|[^\\$\\._\\p{Alpha}\\p{Nd}]in)\\p{space}*(?=\\[)","dgv"),end:new RegExp("(?=(?=\\n?$)|^|[\\,\\;\\=\\}]|((?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(of|in)\\p{space}+))","dgv"),name:"meta.array-binding-pattern-variable.js",patterns:[{include:"#array-binding-pattern"},{include:"#type-annotation"},{include:"#comment"}]}]},"destructuring-variable-rest":{captures:{1:{name:"keyword.operator.rest.js"},2:{name:"meta.definition.variable.js variable.other.readwrite.js"}},match:new RegExp("(?:(\\.\\.\\.)\\p{space}*)?([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)","dgv")},"destructuring-variable-rest-const":{captures:{1:{name:"keyword.operator.rest.js"},2:{name:"meta.definition.variable.js variable.other.constant.js"}},match:new RegExp("(?:(\\.\\.\\.)\\p{space}*)?([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)","dgv")},directives:{begin:new RegExp("^(\\/\\/\\/)\\p{space}*(?=<(reference|amd-dependency|amd-module)(\\p{space}+(path|types|no-default-lib|lib|name|resolution-mode)\\p{space}*=\\p{space}*(('([^'\\\\]|\\\\[^\\n])*')|(\"([^\"\\\\]|\\\\[^\\n])*\")|(`([^\\\\\\`]|\\\\[^\\n])*`)))+\\p{space}*\\/>\\p{space}*(?=\\n?$))","dgv"),beginCaptures:{1:{name:"punctuation.definition.comment.js"}},end:new RegExp("(?=(?=\\n?$))","dgv"),name:"comment.line.triple-slash.directive.js",patterns:[{begin:new RegExp("(<)(reference|amd-dependency|amd-module)","dgv"),beginCaptures:{1:{name:"punctuation.definition.tag.directive.js"},2:{name:"entity.name.tag.directive.js"}},end:new RegExp("\\/>","dgv"),endCaptures:{0:{name:"punctuation.definition.tag.directive.js"}},name:"meta.tag.js",patterns:[{match:new RegExp("path|types|no-default-lib|lib|name|resolution-mode","dgv"),name:"entity.other.attribute-name.directive.js"},{match:new RegExp("=","dgv"),name:"keyword.operator.assignment.js"},{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:new RegExp("((@)a(?:ccess|pi))\\p{space}+(p(?:rivate|rotected|ublic))\\b","dgv")},{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:new RegExp("((@)author)\\p{space}+([^\\*\\/\\<\\>\\@\\p{space}](?:[^\\*\\/\\<\\>\\@]|\\*[^\\/])*)(?:\\p{space}*(<)([^\\>\\p{space}]+)(>))?","dgv")},{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:new RegExp("((@)borrows)\\p{space}+((?:[^\\*\\/\\@\\p{space}]|\\*[^\\/])+)\\p{space}+(as)\\p{space}+((?:[^\\*\\/\\@\\p{space}]|\\*[^\\/])+)","dgv")},{begin:new RegExp("((@)example)\\p{space}+","dgv"),beginCaptures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"}},end:new RegExp("(?=@|\\*\\/)","dgv"),name:"meta.example.jsdoc",patterns:[{match:new RegExp("^\\p{space}\\*\\p{space}+","dgv")},{begin:new RegExp("(<)caption(>)","dgvy"),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:new RegExp("(<\\/)caption(>)|(?=\\*\\/)","dgv"),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.js"}},match:new RegExp("[^\\*\\@\\p{space}](?:[^\\*]|\\*[^\\/])*","dgv")}]},{captures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"},3:{name:"constant.language.symbol-type.jsdoc"}},match:new RegExp("((@)kind)\\p{space}+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\b","dgv")},{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:new RegExp("((@)see)\\p{space}+(?:((?=https?:\\/\\/)(?:[^\\*\\p{space}]|\\*[^\\/])+)|((?!https?:\\/\\/|(?:\\[[^\\]\\[]*\\])?\\{@(?:link|linkcode|linkplain|tutorial)\\b)(?:[^\\*\\/\\@\\p{space}]|\\*[^\\/])+))","dgv")},{captures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"},3:{name:"variable.other.jsdoc"}},match:new RegExp("((@)template)\\p{space}+([\\$A-Z_a-z][\\]\\$\\.\\[\\p{L}\\p{M}\\p{N}\\p{Pc}]*(?:\\p{space}*,\\p{space}*[\\$A-Z_a-z][\\]\\$\\.\\[\\p{L}\\p{M}\\p{N}\\p{Pc}]*)*)","dgv")},{begin:new RegExp("((@)template)\\p{space}+(?=\\{)","dgv"),beginCaptures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"}},end:new RegExp("(?=\\p{space}|\\*\\/|[^\\]\\$A-\\[_a-\\{\\}])","dgv"),patterns:[{include:"#jsdoctype"},{match:new RegExp("([\\$A-Z_a-z][\\]\\$\\.\\[\\p{L}\\p{M}\\p{N}\\p{Pc}]*)","dgv"),name:"variable.other.jsdoc"}]},{captures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"},3:{name:"variable.other.jsdoc"}},match:new RegExp("((@)(?:arg|argument|const|constant|member|namespace|param|var))\\p{space}+([\\$A-Z_a-z][\\]\\$\\.\\[\\p{L}\\p{M}\\p{N}\\p{Pc}]*)","dgv")},{begin:new RegExp("((@)typedef)\\p{space}+(?=\\{)","dgv"),beginCaptures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"}},end:new RegExp("(?=\\p{space}|\\*\\/|[^\\]\\$A-\\[_a-\\{\\}])","dgv"),patterns:[{include:"#jsdoctype"},{match:new RegExp("(?:[^\\*\\/\\@\\p{space}]|\\*[^\\/])+","dgv"),name:"entity.name.type.instance.jsdoc"}]},{begin:new RegExp("((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\p{space}+(?=\\{)","dgv"),beginCaptures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"}},end:new RegExp("(?=\\p{space}|\\*\\/|[^\\]\\$A-\\[_a-\\{\\}])","dgv"),patterns:[{include:"#jsdoctype"},{match:new RegExp("([\\$A-Z_a-z][\\]\\$\\.\\[\\p{L}\\p{M}\\p{N}\\p{Pc}]*)","dgv"),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.js"},4:{name:"punctuation.definition.optional-value.end.bracket.square.jsdoc"},5:{name:"invalid.illegal.syntax.jsdoc"}},match:new e(`(\\[)\\p{space}*[\\$\\p{L}\\p{M}\\p{N}\\p{Pc}]+(?:(?:\\[\\])?\\.[\\$\\p{L}\\p{M}\\p{N}\\p{Pc}]+)*(?:\\p{space}*(=)\\p{space}*((?:(?=("(?:\\*(?!/)|\\\\(?!")|[^\\*\\\\])*?"|'(?:\\*(?!/)|\\\\(?!')|[^\\*\\\\])*?'|\\[(?:\\*(?!/)|[^\\*])*?\\]|(?:\\*(?!/)|\\p{space}(?!\\p{space}*\\])|\\[[^\\n]*?(?:\\]|(?=\\*/))|[^\\]\\*\\[\\p{space}])*))\\4)*))?\\p{space}*(?:(\\])((?:[^\\*\\p{space}]|\\*[^\\/\\p{space}])+)?|(?=\\*/))`,"dgv",{hiddenCaptures:[4]}),name:"variable.other.jsdoc"}]},{begin:new RegExp("((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\p{space}+(?=\\{)","dgv"),beginCaptures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"}},end:new RegExp("(?=\\p{space}|\\*\\/|[^\\]\\$A-\\[_a-\\{\\}])","dgv"),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:new RegExp("((@)(?: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))\\p{space}+((?:[^\\*\\@\\{\\}\\p{space}]|\\*[^\\/])+)","dgv")},{begin:new RegExp(`((@)(?:default(?:value)?|license|version))\\p{space}+((["']))`,"dgv"),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:new RegExp("(\\3)|(?=(?=\\n?$)|\\*\\/)()()","dgv"),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:new RegExp("((@)(?:default(?:value)?|license|tutorial|variation|version))\\p{space}+([^\\*\\p{space}]+)","dgv")},{captures:{1:{name:"punctuation.definition.block.tag.jsdoc"}},match:new RegExp("(@)(?: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","dgv"),name:"storage.type.class.jsdoc"},{include:"#inline-tags"},{captures:{1:{name:"storage.type.class.jsdoc"},2:{name:"punctuation.definition.block.tag.jsdoc"}},match:new RegExp("((@)[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)(?=\\p{space}+)","dgv")}]},"enum-declaration":{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:\\b(export)\\p{space}+)?(?:\\b(declare)\\p{space}+)?(?:\\b(const)\\p{space}+)?\\b(enum)\\p{space}+([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)","dgv"),beginCaptures:{1:{name:"keyword.control.export.js"},2:{name:"storage.modifier.js"},3:{name:"storage.modifier.js"},4:{name:"storage.type.enum.js"},5:{name:"entity.name.type.enum.js"}},end:new RegExp("(?<=\\})","dgv"),name:"meta.enum.declaration.js",patterns:[{include:"#comment"},{begin:new RegExp("\\{","dgv"),beginCaptures:{0:{name:"punctuation.definition.block.js"}},end:new RegExp("\\}","dgv"),endCaptures:{0:{name:"punctuation.definition.block.js"}},patterns:[{include:"#comment"},{begin:new RegExp("([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)","dgv"),beginCaptures:{0:{name:"variable.other.enummember.js"}},end:new RegExp("(?=[\\,\\}]|(?=\\n?$))","dgv"),patterns:[{include:"#comment"},{include:"#variable-initializer"}]},{begin:new RegExp("(?=(('([^'\\\\]|\\\\[^\\n])*')|(\"([^\"\\\\]|\\\\[^\\n])*\")|(`([^\\\\\\`]|\\\\[^\\n])*`)|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])+\\])))","dgv"),end:new RegExp("(?=[\\,\\}]|(?=\\n?$))","dgv"),patterns:[{include:"#string"},{include:"#array-literal"},{include:"#comment"},{include:"#variable-initializer"}]},{include:"#punctuation-comma"}]}]},"export-declaration":{patterns:[{captures:{1:{name:"keyword.control.export.js"},2:{name:"keyword.control.as.js"},3:{name:"storage.type.namespace.js"},4:{name:"entity.name.type.module.js"}},match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(export)\\p{space}+(as)\\p{space}+(namespace)\\p{space}+([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)","dgv")},{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(export)(?:\\p{space}+(type))?(?:\\p{space}*(=)|\\p{space}+(default)(?=\\p{space}+))","dgv"),beginCaptures:{1:{name:"keyword.control.export.js"},2:{name:"keyword.control.type.js"},3:{name:"keyword.operator.assignment.js"},4:{name:"keyword.control.default.js"}},end:new RegExp("(?=(?=\\n?$)|;|^\\p{space}*(?=\\n?$)|^\\p{space}*(?:abstract|async|\\bawait\\p{space}+\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{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(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b|var|while)\\b)","dgv"),name:"meta.export.default.js",patterns:[{include:"#interface-declaration"},{include:"#expression"}]},{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(export)(?:\\p{space}+(type))?\\b(?!(\\$)|(\\p{space}*:))((?=\\p{space}*[\\*\\{])|((?=\\p{space}*[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*([\\,\\p{space}]))(?!\\p{space}*(?:abstract|async|\\bawait\\p{space}+\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{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(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b|var|while)\\b)))","dgv"),beginCaptures:{1:{name:"keyword.control.export.js"},2:{name:"keyword.control.type.js"}},end:new RegExp("(?=(?=\\n?$)|;|^\\p{space}*(?=\\n?$)|^\\p{space}*(?:abstract|async|\\bawait\\p{space}+\\busing(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{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(?=\\p{space}+(?!in\\b|of\\b(?!\\p{space}*(?:of\\b|=)))[\\$_\\p{Alpha}])\\b|var|while)\\b)","dgv"),name:"meta.export.js",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.js"}},match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(override|public|protected|private|readonly)\\p{space}+(?=(override|public|protected|private|readonly)\\p{space}+)","dgv")},{captures:{1:{name:"storage.modifier.js"},2:{name:"keyword.operator.rest.js"},3:{name:"entity.name.function.js variable.language.this.js"},4:{name:"entity.name.function.js"},5:{name:"keyword.operator.optional.js"}},match:new e("(?:(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(override|public|private|protected|readonly)\\p{space}+)?(?:(\\.\\.\\.)\\p{space}*)?(?<![\\:\\=])(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(this)|([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*))(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))\\p{space}*(\\??)(?=\\p{space}*(=\\p{space}*(((async\\p{space}+)?((function\\p{space}*[\\(\\*\\<])|(function\\p{space}+)|([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}*=>)))|((async\\p{space}*)?(((<\\p{space}*)(?=\\n?$)|(\\(\\p{space}*((([\\[\\{]\\p{space}*)?)(?=\\n?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\p{space}*((:\\p{space}*\\{?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*)))|((\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\])\\p{space}*((:\\p{space}*\\[?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*))))))|((<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<])*>)*>)*>\\p{space}*)?\\(\\p{space}*(/\\*([^\\*]|(\\*[^\\/]))*\\*/\\p{space}*)*((\\)\\p{space}*:)|((\\.\\.\\.\\p{space}*)?[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}*:)))|(<\\p{space}*[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}+extends\\p{space}*[^\\=\\>])|((<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<])*>)*>)*>\\p{space}*)?\\(\\p{space}*(/\\*([^\\*]|(\\*[^\\/]))*\\*/\\p{space}*)*(([\\$_\\p{Alpha}]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\])|(\\.\\.\\.\\p{space}*[\\$_\\p{Alpha}]))([^\"'\\(\\)\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|('([^'\\\\]|\\\\[^\\n])*')|(\"([^\"\\\\]|\\\\[^\\n])*\")|(`([^\\\\\\`]|\\\\[^\\n])*`))*)?\\)(\\p{space}*:\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\p{space}*=>)))))|(:\\p{space}*((<)|(\\(\\p{space}*((\\))|(\\.\\.\\.)|([\\$_\\p{Alpha}\\p{Nd}]+\\p{space}*(([\\,\\:\\=\\?])|(\\)\\p{space}*=>)))))))|(:\\p{space}*(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))Function(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.)))|(:\\p{space}*((<\\p{space}*)(?=\\n?$)|(\\(\\p{space}*((([\\[\\{]\\p{space}*)?)(?=\\n?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\p{space}*((:\\p{space}*\\{?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*)))|((\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\])\\p{space}*((:\\p{space}*\\[?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*)))))))|(:\\p{space}*(=>|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(<[^\\<\\>]*>)|[^\\(\\)\\,\\<\\=\\>])+=\\p{space}*(((async\\p{space}+)?((function\\p{space}*[\\(\\*\\<])|(function\\p{space}+)|([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}*=>)))|((async\\p{space}*)?(((<\\p{space}*)(?=\\n?$)|(\\(\\p{space}*((([\\[\\{]\\p{space}*)?)(?=\\n?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\p{space}*((:\\p{space}*\\{?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*)))|((\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\])\\p{space}*((:\\p{space}*\\[?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*))))))|((<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<])*>)*>)*>\\p{space}*)?\\(\\p{space}*(/\\*([^\\*]|(\\*[^\\/]))*\\*/\\p{space}*)*((\\)\\p{space}*:)|((\\.\\.\\.\\p{space}*)?[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}*:)))|(<\\p{space}*[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}+extends\\p{space}*[^\\=\\>])|((<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<])*>)*>)*>\\p{space}*)?\\(\\p{space}*(/\\*([^\\*]|(\\*[^\\/]))*\\*/\\p{space}*)*(([\\$_\\p{Alpha}]|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\])|(\\.\\.\\.\\p{space}*[\\$_\\p{Alpha}]))([^\"'\\(\\)\\`]|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|('([^'\\\\]|\\\\[^\\n])*')|(\"([^\"\\\\]|\\\\[^\\n])*\")|(`([^\\\\\\`]|\\\\[^\\n])*`))*)?\\)(\\p{space}*:\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+)?\\p{space}*=>))))))","dgv",{lazyCompile:!0})},{captures:{1:{name:"storage.modifier.js"},2:{name:"keyword.operator.rest.js"},3:{name:"variable.parameter.js variable.language.this.js"},4:{name:"variable.parameter.js"},5:{name:"keyword.operator.optional.js"}},match:new RegExp("(?:(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(override|public|private|protected|readonly)\\p{space}+)?(?:(\\.\\.\\.)\\p{space}*)?(?<![\\:\\=])(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(this)|([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*))(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))\\p{space}*(\\??)(?=\\p{space}*[\\,\\:]|(?=\\n?$))","dgv")},{include:"#type-annotation"},{include:"#variable-initializer"},{match:new RegExp(",","dgv"),name:"punctuation.separator.parameter.js"},{include:"#identifiers"},{include:"#expressionPunctuations"}]},"expression-operators":{patterns:[{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(await)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.control.flow.js"},{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(yield)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))(?=\\p{space}*\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\p{space}*\\*)","dgv"),beginCaptures:{1:{name:"keyword.control.flow.js"}},end:new RegExp("\\*","dgv"),endCaptures:{0:{name:"keyword.generator.asterisk.js"}},patterns:[{include:"#comment"}]},{captures:{1:{name:"keyword.control.flow.js"},2:{name:"keyword.generator.asterisk.js"}},match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(yield)(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))(?:\\p{space}*(\\*))?","dgv")},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))delete(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.operator.expression.delete.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))in(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))(?!\\()","dgv"),name:"keyword.operator.expression.in.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))of(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))(?!\\()","dgv"),name:"keyword.operator.expression.of.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))instanceof(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.operator.expression.instanceof.js"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))new(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.operator.new.js"},{include:"#typeof-operator"},{match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))void(?![\\$_\\p{Alpha}\\p{Nd}])(?:(?=\\.\\.\\.)|(?!\\.))","dgv"),name:"keyword.operator.expression.void.js"},{captures:{1:{name:"keyword.control.as.js"},2:{name:"storage.modifier.js"}},match:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(as)\\p{space}+(const)(?=\\p{space}*((?=\\n?$)|[\\]\\)\\,\\:\\;\\}]))","dgv")},{begin:new RegExp("(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(?:(as)|(satisfies))\\p{space}+","dgv"),beginCaptures:{1:{name:"keyword.control.as.js"},2:{name:"keyword.control.satisfies.js"}},end:new RegExp("(?=^|[\\-\\]\\)\\+\\,\\:\\;\\>\\?\\}]|\\|\\||&&|!==|(?=\\n?$)|((?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(as|satisfies)\\p{space}+)|(\\p{space}+<))","dgv"),patterns:[{include:"#type"}]},{match:new RegExp("\\.\\.\\.","dgv"),name:"keyword.operator.spread.js"},{match:new RegExp("(?:\\*|(?<!\\()\\/|[\\-\\%\\+])=","dgv"),name:"keyword.operator.assignment.compound.js"},{match:new RegExp("(?:[\\&\\^]|<<|>>>??|\\|)=","dgv"),name:"keyword.operator.assignment.compound.bitwise.js"},{match:new RegExp("<<|>>>?","dgv"),name:"keyword.operator.bitwise.shift.js"},{match:new RegExp("[\\!\\=]==?","dgv"),name:"keyword.operator.comparison.js"},{match:new RegExp("<=|>=|<>|[\\<\\>]","dgv"),name:"keyword.operator.relational.js"},{captures:{1:{name:"keyword.operator.logical.js"},2:{name:"keyword.operator.assignment.compound.js"},3:{name:"keyword.operator.arithmetic.js"}},match:new RegExp("(?<=[\\$_\\p{Alpha}\\p{Nd}])(!)\\p{space}*(?:(\\/=)|(\\/)(?![\\*\\/]))","dgv")},{match:new RegExp("!|&&|\\|\\||\\?\\?","dgv"),name:"keyword.operator.logical.js"},{match:new RegExp("[\\&\\^\\|\\~]","dgv"),name:"keyword.operator.bitwise.js"},{match:new RegExp("=","dgv"),name:"keyword.operator.assignment.js"},{match:new RegExp("--","dgv"),name:"keyword.operator.decrement.js"},{match:new RegExp("\\+\\+","dgv"),name:"keyword.operator.increment.js"},{match:new RegExp("[\\-\\%\\*\\+\\/]","dgv"),name:"keyword.operator.arithmetic.js"},{begin:new RegExp("(?<=[\\]\\$\\)_\\p{Alpha}\\p{Nd}])\\p{space}*(?=(\\/\\*([^\\*]|(\\*[^\\/]))*\\*\\/\\p{space}*)+(?:(\\/=)|(\\/)(?![\\*\\/])))","dgv"),end:new RegExp("(\\/=)|(\\/)(?!\\*([^\\*]|(\\*[^\\/]))*\\*\\/)","dgv"),endCaptures:{1:{name:"keyword.operator.assignment.compound.js"},2:{name:"keyword.operator.arithmetic.js"}},patterns:[{include:"#comment"}]},{captures:{1:{name:"keyword.operator.assignment.compound.js"},2:{name:"keyword.operator.arithmetic.js"}},match:new RegExp("(?<=[\\]\\$\\)_\\p{Alpha}\\p{Nd}])\\p{space}*(?:(\\/=)|(\\/)(?![\\*\\/]))","dgv")}]},expressionPunctuations:{patterns:[{include:"#punctuation-comma"},{include:"#punctuation-accessor"}]},expressionWithoutIdentifiers:{patterns:[{include:"#jsx"},{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:new RegExp("(?<!\\()(?:(?<![\\$_\\p{Alpha}\\p{Nd}])(?:(?<=\\.\\.\\.)|(?<!\\.))(readonly)\\p{space}+)?(?=\\p{space}*(\\b((?<!\\$)0[Xx]\\p{AHex}[_\\p{AHex}]*(n)?\\b(?!\\$))|\\b((?<!\\$)0[Bb][01][01_]*(n)?\\b(?!\\$))|\\b((?<!\\$)0[Oo]?[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(?!\\.))(?!\\$))|(#?[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)|('([^'\\\\]|\\\\[^\\n])*')|(\"([^\"\\\\]|\\\\[^\\n])*\")|(`([^\\\\\\`]|\\\\[^\\n])*`)|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])+\\]))\\p{space}*(?:(?:(\\?)|(!))\\p{space}*)?([\\,\\:\\;\\=\\}]|(?=\\n?$)))","dgv"),beginCaptures:{1:{name:"storage.modifier.js"}},end:new RegExp("(?=[\\,\\;\\}]|(?=\\n?$)|^((?!\\p{space}*(\\b((?<!\\$)0[Xx]\\p{AHex}[_\\p{AHex}]*(n)?\\b(?!\\$))|\\b((?<!\\$)0[Bb][01][01_]*(n)?\\b(?!\\$))|\\b((?<!\\$)0[Oo]?[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(?!\\.))(?!\\$))|(#?[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)|('([^'\\\\]|\\\\[^\\n])*')|(\"([^\"\\\\]|\\\\[^\\n])*\")|(`([^\\\\\\`]|\\\\[^\\n])*`)|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])+\\]))\\p{space}*(?:(?:(\\?)|(!))\\p{space}*)?([\\,\\:\\;\\=]|(?=\\n?$)))))|(?<=\\})","dgv"),name:"meta.field.declaration.js",patterns:[{include:"#variable-initializer"},{include:"#type-annotation"},{include:"#string"},{include:"#array-literal"},{include:"#numeric-literal"},{include:"#comment"},{captures:{1:{name:"meta.definition.property.js entity.name.function.js"},2:{name:"keyword.operator.optional.js"},3:{name:"keyword.operator.definiteassignment.js"}},match:new e("(#?[\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*)(?:(\\?)|(!))?(?=\\p{space}*\\p{space}*(=\\p{space}*(((async\\p{space}+)?((function\\p{space}*[\\(\\*\\<])|(function\\p{space}+)|([\\$_\\p{Alpha}][\\$_\\p{Alpha}\\p{Nd}]*\\p{space}*=>)))|((async\\p{space}*)?(((<\\p{space}*)(?=\\n?$)|(\\(\\p{space}*((([\\[\\{]\\p{space}*)?)(?=\\n?$)|((\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})\\p{space}*((:\\p{space}*\\{?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*)))|((\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\])\\p{space}*((:\\p{space}*\\[?)(?=\\n?$)|((\\p{space}*([^\\(\\)\\<\\>\\{\\}]|<([^\\<\\>]|<([^\\<\\>]|<[^\\<\\>]+>)+>)+>|\\([^\\(\\)]+\\)|\\{[^\\{\\}]+\\})+\\p{space}*)?=\\p{space}*))))))|((<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<]|<\\p{space}*(((const\\p{space}+)?[\\$_\\p{Alpha}])|(\\{([^\\{\\}]|(\\{([^\\{\\}]|\\{[^\\{\\}]*\\})*\\}))*\\})|(\\(([^\\(\\)]|(\\(([^\\(\\)]|\\([^\\(\\)]*\\))*\\)))*\\))|(\\[([^\\]\\[]|(\\[([^\\]\\[]|\\[[^\\]\\[]*\\])*\\]))*\\]))([^\\<\\=\\>]|=[^\\<])*>)*>)*>\\p{space}*)?\\(\\p{space}*(/\\*([^\\*]|(\\*[^\\/]))*\\*/\\p{space}*)*((\\)\\p{space}*:)|((\\.\\.\\.\\p{space}*)?[\\$_\\p{Alpha}][\\$_\\p{Alph