109c6f265SBram Moolenaar" Vim syntax file 209c6f265SBram Moolenaar" Language: TypeScript and TypeScriptReact 391359014SBram Moolenaar" Maintainer: Bram Moolenaar, Herrington Darkholme 4*6e649224SBram Moolenaar" Last Change: 2021 Sep 22 509c6f265SBram Moolenaar" Based On: Herrington Darkholme's yats.vim 609c6f265SBram Moolenaar" Changes: See https:github.com/HerringtonDarkholme/yats.vim 709c6f265SBram Moolenaar" Credits: See yats.vim on github 809c6f265SBram Moolenaar 909c6f265SBram Moolenaarif &cpo =~ 'C' 1009c6f265SBram Moolenaar let s:cpo_save = &cpo 1109c6f265SBram Moolenaar set cpo&vim 1209c6f265SBram Moolenaarendif 1309c6f265SBram Moolenaar 1409c6f265SBram Moolenaar 1509c6f265SBram Moolenaar" NOTE: this results in accurate highlighting, but can be slow. 1609c6f265SBram Moolenaarsyntax sync fromstart 1709c6f265SBram Moolenaar 1809c6f265SBram Moolenaar"Dollar sign is permitted anywhere in an identifier 1909c6f265SBram Moolenaarsetlocal iskeyword-=$ 2091359014SBram Moolenaarif main_syntax == 'typescript' || main_syntax == 'typescriptreact' 2109c6f265SBram Moolenaar setlocal iskeyword+=$ 2209c6f265SBram Moolenaar " syntax cluster htmlJavaScript contains=TOP 2309c6f265SBram Moolenaarendif 243132cdddSBram Moolenaar" For private field added from TypeScript 3.8 253132cdddSBram Moolenaarsetlocal iskeyword+=# 2609c6f265SBram Moolenaar 2709c6f265SBram Moolenaar" lowest priority on least used feature 2809c6f265SBram Moolenaarsyntax match typescriptLabel /[a-zA-Z_$]\k*:/he=e-1 contains=typescriptReserved nextgroup=@typescriptStatement skipwhite skipempty 2909c6f265SBram Moolenaar 3009c6f265SBram Moolenaar" other keywords like return,case,yield uses containedin 3109c6f265SBram Moolenaarsyntax region typescriptBlock matchgroup=typescriptBraces start=/{/ end=/}/ contains=@typescriptStatement,@typescriptComments fold 3209c6f265SBram Moolenaarsyntax cluster afterIdentifier contains= 3309c6f265SBram Moolenaar \ typescriptDotNotation, 3409c6f265SBram Moolenaar \ typescriptFuncCallArg, 3509c6f265SBram Moolenaar \ typescriptTemplate, 3609c6f265SBram Moolenaar \ typescriptIndexExpr, 3709c6f265SBram Moolenaar \ @typescriptSymbols, 3809c6f265SBram Moolenaar \ typescriptTypeArguments 3909c6f265SBram Moolenaar 4009c6f265SBram Moolenaarsyntax match typescriptIdentifierName /\<\K\k*/ 4109c6f265SBram Moolenaar \ nextgroup=@afterIdentifier 4209c6f265SBram Moolenaar \ transparent 4309c6f265SBram Moolenaar \ contains=@_semantic 4409c6f265SBram Moolenaar \ skipnl skipwhite 4509c6f265SBram Moolenaar 4609c6f265SBram Moolenaarsyntax match typescriptProp contained /\K\k*!\?/ 4709c6f265SBram Moolenaar \ transparent 4809c6f265SBram Moolenaar \ contains=@props 4909c6f265SBram Moolenaar \ nextgroup=@afterIdentifier 5009c6f265SBram Moolenaar \ skipwhite skipempty 5109c6f265SBram Moolenaar 5209c6f265SBram Moolenaarsyntax region typescriptIndexExpr contained matchgroup=typescriptProperty start=/\[/rs=s+1 end=/]/he=e-1 contains=@typescriptValue nextgroup=@typescriptSymbols,typescriptDotNotation,typescriptFuncCallArg skipwhite skipempty 5309c6f265SBram Moolenaar 5491359014SBram Moolenaarsyntax match typescriptDotNotation /\.\|?\.\|!\./ nextgroup=typescriptProp skipnl 5509c6f265SBram Moolenaarsyntax match typescriptDotStyleNotation /\.style\./ nextgroup=typescriptDOMStyle transparent 5609c6f265SBram Moolenaar" syntax match typescriptFuncCall contained /[a-zA-Z]\k*\ze(/ nextgroup=typescriptFuncCallArg 5709c6f265SBram Moolenaarsyntax region typescriptParenExp matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptComments,@typescriptValue,typescriptCastKeyword nextgroup=@typescriptSymbols skipwhite skipempty 5809c6f265SBram Moolenaarsyntax region typescriptFuncCallArg contained matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptValue,@typescriptComments nextgroup=@typescriptSymbols,typescriptDotNotation skipwhite skipempty skipnl 5909c6f265SBram Moolenaarsyntax region typescriptEventFuncCallArg contained matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptEventExpression 6009c6f265SBram Moolenaarsyntax region typescriptEventString contained start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1\|$/ contains=typescriptASCII,@events 6109c6f265SBram Moolenaar 623132cdddSBram Moolenaarsyntax region typescriptDestructureString 633132cdddSBram Moolenaar \ start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1\|$/ 643132cdddSBram Moolenaar \ contains=typescriptASCII 653132cdddSBram Moolenaar \ nextgroup=typescriptDestructureAs 663132cdddSBram Moolenaar \ contained skipwhite skipempty 673132cdddSBram Moolenaar 683132cdddSBram Moolenaarsyntax cluster typescriptVariableDeclarations 693132cdddSBram Moolenaar \ contains=typescriptVariableDeclaration,@typescriptDestructures 703132cdddSBram Moolenaar 713132cdddSBram Moolenaarsyntax match typescriptVariableDeclaration /[A-Za-z_$]\k*/ 723132cdddSBram Moolenaar \ nextgroup=typescriptTypeAnnotation,typescriptAssign 733132cdddSBram Moolenaar \ contained skipwhite skipempty 743132cdddSBram Moolenaar 753132cdddSBram Moolenaarsyntax cluster typescriptDestructureVariables contains= 763132cdddSBram Moolenaar \ typescriptRestOrSpread, 773132cdddSBram Moolenaar \ typescriptDestructureComma, 783132cdddSBram Moolenaar \ typescriptDestructureLabel, 793132cdddSBram Moolenaar \ typescriptDestructureVariable, 803132cdddSBram Moolenaar \ @typescriptDestructures 813132cdddSBram Moolenaar 823132cdddSBram Moolenaarsyntax match typescriptDestructureVariable /[A-Za-z_$]\k*/ contained 833132cdddSBram Moolenaar \ nextgroup=typescriptDefaultParam 843132cdddSBram Moolenaar \ contained skipwhite skipempty 853132cdddSBram Moolenaar 863132cdddSBram Moolenaarsyntax match typescriptDestructureLabel /[A-Za-z_$]\k*\ze\_s*:/ 873132cdddSBram Moolenaar \ nextgroup=typescriptDestructureAs 883132cdddSBram Moolenaar \ contained skipwhite skipempty 893132cdddSBram Moolenaar 903132cdddSBram Moolenaarsyntax match typescriptDestructureAs /:/ 913132cdddSBram Moolenaar \ nextgroup=typescriptDestructureVariable,@typescriptDestructures 923132cdddSBram Moolenaar \ contained skipwhite skipempty 933132cdddSBram Moolenaar 943132cdddSBram Moolenaarsyntax match typescriptDestructureComma /,/ contained 953132cdddSBram Moolenaar 963132cdddSBram Moolenaarsyntax cluster typescriptDestructures contains= 973132cdddSBram Moolenaar \ typescriptArrayDestructure, 983132cdddSBram Moolenaar \ typescriptObjectDestructure 993132cdddSBram Moolenaar 1003132cdddSBram Moolenaarsyntax region typescriptArrayDestructure matchgroup=typescriptBraces 1013132cdddSBram Moolenaar \ start=/\[/ end=/]/ 1023132cdddSBram Moolenaar \ contains=@typescriptDestructureVariables,@typescriptComments 1033132cdddSBram Moolenaar \ nextgroup=typescriptTypeAnnotation,typescriptAssign 1043132cdddSBram Moolenaar \ transparent contained skipwhite skipempty fold 1053132cdddSBram Moolenaar 1063132cdddSBram Moolenaarsyntax region typescriptObjectDestructure matchgroup=typescriptBraces 1073132cdddSBram Moolenaar \ start=/{/ end=/}/ 1083132cdddSBram Moolenaar \ contains=typescriptDestructureString,@typescriptDestructureVariables,@typescriptComments 1093132cdddSBram Moolenaar \ nextgroup=typescriptTypeAnnotation,typescriptAssign 1103132cdddSBram Moolenaar \ transparent contained skipwhite skipempty fold 1113132cdddSBram Moolenaar 11209c6f265SBram Moolenaar"Syntax in the JavaScript code 11309c6f265SBram Moolenaar 11409c6f265SBram Moolenaar" String 11509c6f265SBram Moolenaarsyntax match typescriptASCII contained /\\\d\d\d/ 11609c6f265SBram Moolenaar 11709c6f265SBram Moolenaarsyntax region typescriptTemplateSubstitution matchgroup=typescriptTemplateSB 11809c6f265SBram Moolenaar \ start=/\${/ end=/}/ 11909c6f265SBram Moolenaar \ contains=@typescriptValue 12009c6f265SBram Moolenaar \ contained 12109c6f265SBram Moolenaar 12209c6f265SBram Moolenaar 12309c6f265SBram Moolenaarsyntax region typescriptString 12409c6f265SBram Moolenaar \ start=+\z(["']\)+ skip=+\\\%(\z1\|$\)+ end=+\z1+ end=+$+ 12509c6f265SBram Moolenaar \ contains=typescriptSpecial,@Spell 12609c6f265SBram Moolenaar \ extend 12709c6f265SBram Moolenaar 1283132cdddSBram Moolenaarsyntax match typescriptSpecial contained "\v\\%(x\x\x|u%(\x{4}|\{\x{1,6}})|c\u|.)" 12909c6f265SBram Moolenaar 13009c6f265SBram Moolenaar" From vim runtime 13109c6f265SBram Moolenaar" <https://github.com/vim/vim/blob/master/runtime/syntax/javascript.vim#L48> 1323132cdddSBram Moolenaarsyntax region typescriptRegexpString start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gimuy]\{0,5\}\s*$+ end=+/[gimuy]\{0,5\}\s*[;.,)\]}:]+me=e-1 nextgroup=typescriptDotNotation oneline 13309c6f265SBram Moolenaar 13409c6f265SBram Moolenaarsyntax region typescriptTemplate 13509c6f265SBram Moolenaar \ start=/`/ skip=/\\\\\|\\`\|\n/ end=/`\|$/ 1363132cdddSBram Moolenaar \ contains=typescriptTemplateSubstitution,typescriptSpecial,@Spell 13709c6f265SBram Moolenaar \ nextgroup=@typescriptSymbols 13809c6f265SBram Moolenaar \ skipwhite skipempty 13909c6f265SBram Moolenaar 14009c6f265SBram Moolenaar"Array 14109c6f265SBram Moolenaarsyntax region typescriptArray matchgroup=typescriptBraces 14209c6f265SBram Moolenaar \ start=/\[/ end=/]/ 14309c6f265SBram Moolenaar \ contains=@typescriptValue,@typescriptComments 14409c6f265SBram Moolenaar \ nextgroup=@typescriptSymbols,typescriptDotNotation 14509c6f265SBram Moolenaar \ skipwhite skipempty fold 14609c6f265SBram Moolenaar 14709c6f265SBram Moolenaar" Number 14809c6f265SBram Moolenaarsyntax match typescriptNumber /\<0[bB][01][01_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty 14909c6f265SBram Moolenaarsyntax match typescriptNumber /\<0[oO][0-7][0-7_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty 15009c6f265SBram Moolenaarsyntax match typescriptNumber /\<0[xX][0-9a-fA-F][0-9a-fA-F_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty 1513132cdddSBram Moolenaarsyntax match typescriptNumber /\<\%(\d[0-9_]*\%(\.\d[0-9_]*\)\=\|\.\d[0-9_]*\)\%([eE][+-]\=\d[0-9_]*\)\=\>/ 1523132cdddSBram Moolenaar \ nextgroup=typescriptSymbols skipwhite skipempty 15309c6f265SBram Moolenaar 15409c6f265SBram Moolenaarsyntax region typescriptObjectLiteral matchgroup=typescriptBraces 15509c6f265SBram Moolenaar \ start=/{/ end=/}/ 1563132cdddSBram Moolenaar \ contains=@typescriptComments,typescriptObjectLabel,typescriptStringProperty,typescriptComputedPropertyName,typescriptObjectAsyncKeyword 15709c6f265SBram Moolenaar \ fold contained 15809c6f265SBram Moolenaar 1593132cdddSBram Moolenaarsyntax keyword typescriptObjectAsyncKeyword async contained 1603132cdddSBram Moolenaar 16109c6f265SBram Moolenaarsyntax match typescriptObjectLabel contained /\k\+\_s*/ 16209c6f265SBram Moolenaar \ nextgroup=typescriptObjectColon,@typescriptCallImpl 16309c6f265SBram Moolenaar \ skipwhite skipempty 16409c6f265SBram Moolenaar 16509c6f265SBram Moolenaarsyntax region typescriptStringProperty contained 16609c6f265SBram Moolenaar \ start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1/ 16709c6f265SBram Moolenaar \ nextgroup=typescriptObjectColon,@typescriptCallImpl 16809c6f265SBram Moolenaar \ skipwhite skipempty 16909c6f265SBram Moolenaar 17009c6f265SBram Moolenaar" syntax region typescriptPropertyName contained start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1(/me=e-1 nextgroup=@typescriptCallSignature skipwhite skipempty oneline 17109c6f265SBram Moolenaarsyntax region typescriptComputedPropertyName contained matchgroup=typescriptBraces 17209c6f265SBram Moolenaar \ start=/\[/rs=s+1 end=/]/ 17309c6f265SBram Moolenaar \ contains=@typescriptValue 17409c6f265SBram Moolenaar \ nextgroup=typescriptObjectColon,@typescriptCallImpl 17509c6f265SBram Moolenaar \ skipwhite skipempty 17609c6f265SBram Moolenaar 17709c6f265SBram Moolenaar" syntax region typescriptComputedPropertyName contained matchgroup=typescriptPropertyName start=/\[/rs=s+1 end=/]\_s*:/he=e-1 contains=@typescriptValue nextgroup=@typescriptValue skipwhite skipempty 17809c6f265SBram Moolenaar" syntax region typescriptComputedPropertyName contained matchgroup=typescriptPropertyName start=/\[/rs=s+1 end=/]\_s*(/me=e-1 contains=@typescriptValue nextgroup=@typescriptCallSignature skipwhite skipempty 17909c6f265SBram Moolenaar" Value for object, statement for label statement 18009c6f265SBram Moolenaarsyntax match typescriptRestOrSpread /\.\.\./ contained 18109c6f265SBram Moolenaarsyntax match typescriptObjectSpread /\.\.\./ contained containedin=typescriptObjectLiteral,typescriptArray nextgroup=@typescriptValue 18209c6f265SBram Moolenaar 18309c6f265SBram Moolenaarsyntax match typescriptObjectColon contained /:/ nextgroup=@typescriptValue skipwhite skipempty 18409c6f265SBram Moolenaar 18509c6f265SBram Moolenaar" + - ^ ~ 18609c6f265SBram Moolenaarsyntax match typescriptUnaryOp /[+\-~!]/ 18709c6f265SBram Moolenaar \ nextgroup=@typescriptValue 18809c6f265SBram Moolenaar \ skipwhite 18909c6f265SBram Moolenaar 19091359014SBram Moolenaarsyntax region typescriptTernary matchgroup=typescriptTernaryOp start=/?[.?]\@!/ end=/:/ contained contains=@typescriptValue,@typescriptComments nextgroup=@typescriptValue skipwhite skipempty 19109c6f265SBram Moolenaar 19209c6f265SBram Moolenaarsyntax match typescriptAssign /=/ nextgroup=@typescriptValue 19309c6f265SBram Moolenaar \ skipwhite skipempty 19409c6f265SBram Moolenaar 19509c6f265SBram Moolenaar" 2: ==, === 19609c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /===\?/ nextgroup=@typescriptValue skipwhite skipempty 19709c6f265SBram Moolenaar" 6: >>>=, >>>, >>=, >>, >=, > 19809c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained />\(>>=\|>>\|>=\|>\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty 19909c6f265SBram Moolenaar" 4: <<=, <<, <=, < 20009c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /<\(<=\|<\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty 2013132cdddSBram Moolenaar" 3: ||, |=, |, ||= 2023132cdddSBram Moolenaarsyntax match typescriptBinaryOp contained /||\?=\?/ nextgroup=@typescriptValue skipwhite skipempty 2033132cdddSBram Moolenaar" 4: &&, &=, &, &&= 2043132cdddSBram Moolenaarsyntax match typescriptBinaryOp contained /&&\?=\?/ nextgroup=@typescriptValue skipwhite skipempty 2053132cdddSBram Moolenaar" 2: ??, ??= 2063132cdddSBram Moolenaarsyntax match typescriptBinaryOp contained /??=\?/ nextgroup=@typescriptValue skipwhite skipempty 20709c6f265SBram Moolenaar" 2: *=, * 20809c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /\*=\?/ nextgroup=@typescriptValue skipwhite skipempty 20909c6f265SBram Moolenaar" 2: %=, % 21009c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /%=\?/ nextgroup=@typescriptValue skipwhite skipempty 21109c6f265SBram Moolenaar" 2: /=, / 21209c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained +/\(=\|[^\*/]\@=\)+ nextgroup=@typescriptValue skipwhite skipempty 21309c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /!==\?/ nextgroup=@typescriptValue skipwhite skipempty 21409c6f265SBram Moolenaar" 2: !=, !== 21509c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /+\(+\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty 21609c6f265SBram Moolenaar" 3: +, ++, += 21709c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /-\(-\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty 21809c6f265SBram Moolenaar" 3: -, --, -= 21909c6f265SBram Moolenaar 22009c6f265SBram Moolenaar" exponentiation operator 22109c6f265SBram Moolenaar" 2: **, **= 22209c6f265SBram Moolenaarsyntax match typescriptBinaryOp contained /\*\*=\?/ nextgroup=@typescriptValue 22309c6f265SBram Moolenaar 22409c6f265SBram Moolenaarsyntax cluster typescriptSymbols contains=typescriptBinaryOp,typescriptKeywordOp,typescriptTernary,typescriptAssign,typescriptCastKeyword 22509c6f265SBram Moolenaar 22691359014SBram Moolenaar" runtime syntax/basic/reserved.vim 22709c6f265SBram Moolenaar"Import 2283132cdddSBram Moolenaarsyntax keyword typescriptImport from as 2293132cdddSBram Moolenaarsyntax keyword typescriptImport import 2303132cdddSBram Moolenaar \ nextgroup=typescriptImportType 2313132cdddSBram Moolenaar \ skipwhite 2323132cdddSBram Moolenaarsyntax keyword typescriptImportType type 2333132cdddSBram Moolenaar \ contained 23409c6f265SBram Moolenaarsyntax keyword typescriptExport export 2353132cdddSBram Moolenaar \ nextgroup=typescriptExportType 2363132cdddSBram Moolenaar \ skipwhite 2373132cdddSBram Moolenaarsyntax match typescriptExportType /\<type\s*{\@=/ 2383132cdddSBram Moolenaar \ contained skipwhite skipempty skipnl 23909c6f265SBram Moolenaarsyntax keyword typescriptModule namespace module 24009c6f265SBram Moolenaar 24109c6f265SBram Moolenaar"this 24209c6f265SBram Moolenaar 24309c6f265SBram Moolenaar"JavaScript Prototype 24409c6f265SBram Moolenaarsyntax keyword typescriptPrototype prototype 24509c6f265SBram Moolenaar \ nextgroup=@afterIdentifier 24609c6f265SBram Moolenaar 24709c6f265SBram Moolenaarsyntax keyword typescriptCastKeyword as 24809c6f265SBram Moolenaar \ nextgroup=@typescriptType 24909c6f265SBram Moolenaar \ skipwhite 25009c6f265SBram Moolenaar 25109c6f265SBram Moolenaar"Program Keywords 25209c6f265SBram Moolenaarsyntax keyword typescriptIdentifier arguments this super 25309c6f265SBram Moolenaar \ nextgroup=@afterIdentifier 25409c6f265SBram Moolenaar 25509c6f265SBram Moolenaarsyntax keyword typescriptVariable let var 2563132cdddSBram Moolenaar \ nextgroup=@typescriptVariableDeclarations 2573132cdddSBram Moolenaar \ skipwhite skipempty 25809c6f265SBram Moolenaar 25909c6f265SBram Moolenaarsyntax keyword typescriptVariable const 2603132cdddSBram Moolenaar \ nextgroup=typescriptEnum,@typescriptVariableDeclarations 2613132cdddSBram Moolenaar \ skipwhite skipempty 26209c6f265SBram Moolenaar 26309c6f265SBram Moolenaarsyntax region typescriptEnum matchgroup=typescriptEnumKeyword start=/enum / end=/\ze{/ 26409c6f265SBram Moolenaar \ nextgroup=typescriptBlock 26509c6f265SBram Moolenaar \ skipwhite 26609c6f265SBram Moolenaar 26709c6f265SBram Moolenaarsyntax keyword typescriptKeywordOp 26809c6f265SBram Moolenaar \ contained in instanceof nextgroup=@typescriptValue 26909c6f265SBram Moolenaarsyntax keyword typescriptOperator delete new typeof void 27009c6f265SBram Moolenaar \ nextgroup=@typescriptValue 27109c6f265SBram Moolenaar \ skipwhite skipempty 27209c6f265SBram Moolenaar 27309c6f265SBram Moolenaarsyntax keyword typescriptForOperator contained in of 27409c6f265SBram Moolenaarsyntax keyword typescriptBoolean true false nextgroup=@typescriptSymbols skipwhite skipempty 27509c6f265SBram Moolenaarsyntax keyword typescriptNull null undefined nextgroup=@typescriptSymbols skipwhite skipempty 27609c6f265SBram Moolenaarsyntax keyword typescriptMessage alert confirm prompt status 27709c6f265SBram Moolenaar \ nextgroup=typescriptDotNotation,typescriptFuncCallArg 27809c6f265SBram Moolenaarsyntax keyword typescriptGlobal self top parent 27909c6f265SBram Moolenaar \ nextgroup=@afterIdentifier 28009c6f265SBram Moolenaar 28109c6f265SBram Moolenaar"Statement Keywords 28209c6f265SBram Moolenaarsyntax keyword typescriptConditional if else switch 28309c6f265SBram Moolenaar \ nextgroup=typescriptConditionalParen 28409c6f265SBram Moolenaar \ skipwhite skipempty skipnl 28509c6f265SBram Moolenaarsyntax keyword typescriptConditionalElse else 28609c6f265SBram Moolenaarsyntax keyword typescriptRepeat do while for nextgroup=typescriptLoopParen skipwhite skipempty 28709c6f265SBram Moolenaarsyntax keyword typescriptRepeat for nextgroup=typescriptLoopParen,typescriptAsyncFor skipwhite skipempty 28809c6f265SBram Moolenaarsyntax keyword typescriptBranch break continue containedin=typescriptBlock 28909c6f265SBram Moolenaarsyntax keyword typescriptCase case nextgroup=@typescriptPrimitive skipwhite containedin=typescriptBlock 29009c6f265SBram Moolenaarsyntax keyword typescriptDefault default containedin=typescriptBlock nextgroup=@typescriptValue,typescriptClassKeyword,typescriptInterfaceKeyword skipwhite oneline 29109c6f265SBram Moolenaarsyntax keyword typescriptStatementKeyword with 29209c6f265SBram Moolenaarsyntax keyword typescriptStatementKeyword yield skipwhite nextgroup=@typescriptValue containedin=typescriptBlock 29309c6f265SBram Moolenaarsyntax keyword typescriptStatementKeyword return skipwhite contained nextgroup=@typescriptValue containedin=typescriptBlock 29409c6f265SBram Moolenaar 29509c6f265SBram Moolenaarsyntax keyword typescriptTry try 29609c6f265SBram Moolenaarsyntax keyword typescriptExceptions catch throw finally 29709c6f265SBram Moolenaarsyntax keyword typescriptDebugger debugger 29809c6f265SBram Moolenaar 29909c6f265SBram Moolenaarsyntax keyword typescriptAsyncFor await nextgroup=typescriptLoopParen skipwhite skipempty contained 30009c6f265SBram Moolenaar 30109c6f265SBram Moolenaarsyntax region typescriptLoopParen contained matchgroup=typescriptParens 30209c6f265SBram Moolenaar \ start=/(/ end=/)/ 30309c6f265SBram Moolenaar \ contains=typescriptVariable,typescriptForOperator,typescriptEndColons,@typescriptValue,@typescriptComments 30409c6f265SBram Moolenaar \ nextgroup=typescriptBlock 30509c6f265SBram Moolenaar \ skipwhite skipempty 30609c6f265SBram Moolenaarsyntax region typescriptConditionalParen contained matchgroup=typescriptParens 30709c6f265SBram Moolenaar \ start=/(/ end=/)/ 30809c6f265SBram Moolenaar \ contains=@typescriptValue,@typescriptComments 30909c6f265SBram Moolenaar \ nextgroup=typescriptBlock 31009c6f265SBram Moolenaar \ skipwhite skipempty 31109c6f265SBram Moolenaarsyntax match typescriptEndColons /[;,]/ contained 31209c6f265SBram Moolenaar 31309c6f265SBram Moolenaarsyntax keyword typescriptAmbientDeclaration declare nextgroup=@typescriptAmbients 31409c6f265SBram Moolenaar \ skipwhite skipempty 31509c6f265SBram Moolenaar 31609c6f265SBram Moolenaarsyntax cluster typescriptAmbients contains= 31709c6f265SBram Moolenaar \ typescriptVariable, 31809c6f265SBram Moolenaar \ typescriptFuncKeyword, 31909c6f265SBram Moolenaar \ typescriptClassKeyword, 32009c6f265SBram Moolenaar \ typescriptAbstract, 32109c6f265SBram Moolenaar \ typescriptEnumKeyword,typescriptEnum, 32209c6f265SBram Moolenaar \ typescriptModule 32309c6f265SBram Moolenaar 32409c6f265SBram Moolenaar"Syntax coloring for Node.js shebang line 32509c6f265SBram Moolenaarsyntax match shellbang "^#!.*node\>" 32609c6f265SBram Moolenaarsyntax match shellbang "^#!.*iojs\>" 32709c6f265SBram Moolenaar 32809c6f265SBram Moolenaar 32909c6f265SBram Moolenaar"JavaScript comments 33009c6f265SBram Moolenaarsyntax keyword typescriptCommentTodo TODO FIXME XXX TBD 3313132cdddSBram Moolenaarsyntax match typescriptMagicComment "@ts-\%(ignore\|expect-error\)\>" 33209c6f265SBram Moolenaarsyntax match typescriptLineComment "//.*" 3333132cdddSBram Moolenaar \ contains=@Spell,typescriptCommentTodo,typescriptRef,typescriptMagicComment 33409c6f265SBram Moolenaarsyntax region typescriptComment 33509c6f265SBram Moolenaar \ start="/\*" end="\*/" 33609c6f265SBram Moolenaar \ contains=@Spell,typescriptCommentTodo extend 33709c6f265SBram Moolenaarsyntax cluster typescriptComments 33809c6f265SBram Moolenaar \ contains=typescriptDocComment,typescriptComment,typescriptLineComment 33909c6f265SBram Moolenaar 34009c6f265SBram Moolenaarsyntax match typescriptRef +///\s*<reference\s\+.*\/>$+ 34109c6f265SBram Moolenaar \ contains=typescriptString 34209c6f265SBram Moolenaarsyntax match typescriptRef +///\s*<amd-dependency\s\+.*\/>$+ 34309c6f265SBram Moolenaar \ contains=typescriptString 34409c6f265SBram Moolenaarsyntax match typescriptRef +///\s*<amd-module\s\+.*\/>$+ 34509c6f265SBram Moolenaar \ contains=typescriptString 34609c6f265SBram Moolenaar 34709c6f265SBram Moolenaar"JSDoc 34809c6f265SBram Moolenaarsyntax case ignore 34909c6f265SBram Moolenaar 35009c6f265SBram Moolenaarsyntax region typescriptDocComment matchgroup=typescriptComment 35109c6f265SBram Moolenaar \ start="/\*\*" end="\*/" 35209c6f265SBram Moolenaar \ contains=typescriptDocNotation,typescriptCommentTodo,@Spell 35309c6f265SBram Moolenaar \ fold keepend 35409c6f265SBram Moolenaarsyntax match typescriptDocNotation contained /@/ nextgroup=typescriptDocTags 35509c6f265SBram Moolenaar 35609c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained constant constructor constructs function ignore inner private public readonly static 35709c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained const dict expose inheritDoc interface nosideeffects override protected struct internal 35809c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained example global 35991359014SBram Moolenaarsyntax keyword typescriptDocTags contained alpha beta defaultValue eventProperty experimental label 36091359014SBram Moolenaarsyntax keyword typescriptDocTags contained packageDocumentation privateRemarks remarks sealed typeParam 36109c6f265SBram Moolenaar 36209c6f265SBram Moolenaar" syntax keyword typescriptDocTags contained ngdoc nextgroup=typescriptDocNGDirective 36309c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained ngdoc scope priority animations 36409c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained ngdoc restrict methodOf propertyOf eventOf eventType nextgroup=typescriptDocParam skipwhite 36509c6f265SBram Moolenaarsyntax keyword typescriptDocNGDirective contained overview service object function method property event directive filter inputType error 36609c6f265SBram Moolenaar 36709c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained abstract virtual access augments 36809c6f265SBram Moolenaar 36909c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained arguments callback lends memberOf name type kind link mixes mixin tutorial nextgroup=typescriptDocParam skipwhite 37009c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained variation nextgroup=typescriptDocNumParam skipwhite 37109c6f265SBram Moolenaar 37209c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained author class classdesc copyright default defaultvalue nextgroup=typescriptDocDesc skipwhite 37309c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained deprecated description external host nextgroup=typescriptDocDesc skipwhite 37409c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained file fileOverview overview namespace requires since version nextgroup=typescriptDocDesc skipwhite 37509c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained summary todo license preserve nextgroup=typescriptDocDesc skipwhite 37609c6f265SBram Moolenaar 37709c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained borrows exports nextgroup=typescriptDocA skipwhite 37809c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained param arg argument property prop module nextgroup=typescriptDocNamedParamType,typescriptDocParamName skipwhite 37909c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained define enum extends implements this typedef nextgroup=typescriptDocParamType skipwhite 38009c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained return returns throws exception nextgroup=typescriptDocParamType,typescriptDocParamName skipwhite 38109c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained see nextgroup=typescriptDocRef skipwhite 38209c6f265SBram Moolenaar 38309c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained function func method nextgroup=typescriptDocName skipwhite 38409c6f265SBram Moolenaarsyntax match typescriptDocName contained /\h\w*/ 38509c6f265SBram Moolenaar 38609c6f265SBram Moolenaarsyntax keyword typescriptDocTags contained fires event nextgroup=typescriptDocEventRef skipwhite 38709c6f265SBram Moolenaarsyntax match typescriptDocEventRef contained /\h\w*#\(\h\w*\:\)\?\h\w*/ 38809c6f265SBram Moolenaar 38909c6f265SBram Moolenaarsyntax match typescriptDocNamedParamType contained /{.\+}/ nextgroup=typescriptDocParamName skipwhite 39009c6f265SBram Moolenaarsyntax match typescriptDocParamName contained /\[\?0-9a-zA-Z_\.]\+\]\?/ nextgroup=typescriptDocDesc skipwhite 39109c6f265SBram Moolenaarsyntax match typescriptDocParamType contained /{.\+}/ nextgroup=typescriptDocDesc skipwhite 39209c6f265SBram Moolenaarsyntax match typescriptDocA contained /\%(#\|\w\|\.\|:\|\/\)\+/ nextgroup=typescriptDocAs skipwhite 39309c6f265SBram Moolenaarsyntax match typescriptDocAs contained /\s*as\s*/ nextgroup=typescriptDocB skipwhite 39409c6f265SBram Moolenaarsyntax match typescriptDocB contained /\%(#\|\w\|\.\|:\|\/\)\+/ 39509c6f265SBram Moolenaarsyntax match typescriptDocParam contained /\%(#\|\w\|\.\|:\|\/\|-\)\+/ 39609c6f265SBram Moolenaarsyntax match typescriptDocNumParam contained /\d\+/ 39709c6f265SBram Moolenaarsyntax match typescriptDocRef contained /\%(#\|\w\|\.\|:\|\/\)\+/ 39809c6f265SBram Moolenaarsyntax region typescriptDocLinkTag contained matchgroup=typescriptDocLinkTag start=/{/ end=/}/ contains=typescriptDocTags 39909c6f265SBram Moolenaar 40009c6f265SBram Moolenaarsyntax cluster typescriptDocs contains=typescriptDocParamType,typescriptDocNamedParamType,typescriptDocParam 40109c6f265SBram Moolenaar 4023132cdddSBram Moolenaarif exists("main_syntax") && main_syntax == "typescript" 40309c6f265SBram Moolenaar syntax sync clear 40409c6f265SBram Moolenaar syntax sync ccomment typescriptComment minlines=200 40509c6f265SBram Moolenaarendif 40609c6f265SBram Moolenaar 40709c6f265SBram Moolenaarsyntax case match 40809c6f265SBram Moolenaar 40909c6f265SBram Moolenaar" Types 41009c6f265SBram Moolenaarsyntax match typescriptOptionalMark /?/ contained 41109c6f265SBram Moolenaar 4123132cdddSBram Moolenaarsyntax cluster typescriptTypeParameterCluster contains= 4133132cdddSBram Moolenaar \ typescriptTypeParameter, 4143132cdddSBram Moolenaar \ typescriptGenericDefault 4153132cdddSBram Moolenaar 41609c6f265SBram Moolenaarsyntax region typescriptTypeParameters matchgroup=typescriptTypeBrackets 41709c6f265SBram Moolenaar \ start=/</ end=/>/ 4183132cdddSBram Moolenaar \ contains=@typescriptTypeParameterCluster 41909c6f265SBram Moolenaar \ contained 42009c6f265SBram Moolenaar 42109c6f265SBram Moolenaarsyntax match typescriptTypeParameter /\K\k*/ 4223132cdddSBram Moolenaar \ nextgroup=typescriptConstraint 42309c6f265SBram Moolenaar \ contained skipwhite skipnl 42409c6f265SBram Moolenaar 42509c6f265SBram Moolenaarsyntax keyword typescriptConstraint extends 42609c6f265SBram Moolenaar \ nextgroup=@typescriptType 42709c6f265SBram Moolenaar \ contained skipwhite skipnl 42809c6f265SBram Moolenaar 42909c6f265SBram Moolenaarsyntax match typescriptGenericDefault /=/ 43009c6f265SBram Moolenaar \ nextgroup=@typescriptType 43109c6f265SBram Moolenaar \ contained skipwhite 43209c6f265SBram Moolenaar 43309c6f265SBram Moolenaar">< 43409c6f265SBram Moolenaar" class A extend B<T> {} // ClassBlock 43509c6f265SBram Moolenaar" func<T>() // FuncCallArg 43609c6f265SBram Moolenaarsyntax region typescriptTypeArguments matchgroup=typescriptTypeBrackets 43709c6f265SBram Moolenaar \ start=/\></ end=/>/ 43809c6f265SBram Moolenaar \ contains=@typescriptType 43909c6f265SBram Moolenaar \ nextgroup=typescriptFuncCallArg,@typescriptTypeOperator 44009c6f265SBram Moolenaar \ contained skipwhite 44109c6f265SBram Moolenaar 44209c6f265SBram Moolenaar 44309c6f265SBram Moolenaarsyntax cluster typescriptType contains= 44409c6f265SBram Moolenaar \ @typescriptPrimaryType, 44509c6f265SBram Moolenaar \ typescriptUnion, 44609c6f265SBram Moolenaar \ @typescriptFunctionType, 44709c6f265SBram Moolenaar \ typescriptConstructorType 44809c6f265SBram Moolenaar 44909c6f265SBram Moolenaar" array type: A[] 45009c6f265SBram Moolenaar" type indexing A['key'] 45109c6f265SBram Moolenaarsyntax region typescriptTypeBracket contained 45209c6f265SBram Moolenaar \ start=/\[/ end=/\]/ 45309c6f265SBram Moolenaar \ contains=typescriptString,typescriptNumber 45409c6f265SBram Moolenaar \ nextgroup=@typescriptTypeOperator 45509c6f265SBram Moolenaar \ skipwhite skipempty 45609c6f265SBram Moolenaar 45709c6f265SBram Moolenaarsyntax cluster typescriptPrimaryType contains= 45809c6f265SBram Moolenaar \ typescriptParenthesizedType, 45909c6f265SBram Moolenaar \ typescriptPredefinedType, 46009c6f265SBram Moolenaar \ typescriptTypeReference, 46109c6f265SBram Moolenaar \ typescriptObjectType, 46209c6f265SBram Moolenaar \ typescriptTupleType, 46309c6f265SBram Moolenaar \ typescriptTypeQuery, 46409c6f265SBram Moolenaar \ typescriptStringLiteralType, 4653132cdddSBram Moolenaar \ typescriptTemplateLiteralType, 46691359014SBram Moolenaar \ typescriptReadonlyArrayKeyword, 46791359014SBram Moolenaar \ typescriptAssertType 46809c6f265SBram Moolenaar 46909c6f265SBram Moolenaarsyntax region typescriptStringLiteralType contained 47009c6f265SBram Moolenaar \ start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1\|$/ 47109c6f265SBram Moolenaar \ nextgroup=typescriptUnion 47209c6f265SBram Moolenaar \ skipwhite skipempty 47309c6f265SBram Moolenaar 4743132cdddSBram Moolenaarsyntax region typescriptTemplateLiteralType contained 4753132cdddSBram Moolenaar \ start=/`/ skip=/\\\\\|\\`\|\n/ end=/`\|$/ 4763132cdddSBram Moolenaar \ contains=typescriptTemplateSubstitutionType 4773132cdddSBram Moolenaar \ nextgroup=typescriptTypeOperator 4783132cdddSBram Moolenaar \ skipwhite skipempty 4793132cdddSBram Moolenaar 4803132cdddSBram Moolenaarsyntax region typescriptTemplateSubstitutionType matchgroup=typescriptTemplateSB 4813132cdddSBram Moolenaar \ start=/\${/ end=/}/ 4823132cdddSBram Moolenaar \ contains=@typescriptType 4833132cdddSBram Moolenaar \ contained 4843132cdddSBram Moolenaar 48509c6f265SBram Moolenaarsyntax region typescriptParenthesizedType matchgroup=typescriptParens 48609c6f265SBram Moolenaar \ start=/(/ end=/)/ 48709c6f265SBram Moolenaar \ contains=@typescriptType 48809c6f265SBram Moolenaar \ nextgroup=@typescriptTypeOperator 48909c6f265SBram Moolenaar \ contained skipwhite skipempty fold 49009c6f265SBram Moolenaar 49109c6f265SBram Moolenaarsyntax match typescriptTypeReference /\K\k*\(\.\K\k*\)*/ 49209c6f265SBram Moolenaar \ nextgroup=typescriptTypeArguments,@typescriptTypeOperator,typescriptUserDefinedType 49309c6f265SBram Moolenaar \ skipwhite contained skipempty 49409c6f265SBram Moolenaar 49509c6f265SBram Moolenaarsyntax keyword typescriptPredefinedType any number boolean string void never undefined null object unknown 49609c6f265SBram Moolenaar \ nextgroup=@typescriptTypeOperator 49709c6f265SBram Moolenaar \ contained skipwhite skipempty 49809c6f265SBram Moolenaar 49909c6f265SBram Moolenaarsyntax match typescriptPredefinedType /unique symbol/ 50009c6f265SBram Moolenaar \ nextgroup=@typescriptTypeOperator 50109c6f265SBram Moolenaar \ contained skipwhite skipempty 50209c6f265SBram Moolenaar 50309c6f265SBram Moolenaarsyntax region typescriptObjectType matchgroup=typescriptBraces 50409c6f265SBram Moolenaar \ start=/{/ end=/}/ 50509c6f265SBram Moolenaar \ contains=@typescriptTypeMember,typescriptEndColons,@typescriptComments,typescriptAccessibilityModifier,typescriptReadonlyModifier 50609c6f265SBram Moolenaar \ nextgroup=@typescriptTypeOperator 5073132cdddSBram Moolenaar \ contained skipwhite skipnl fold 50809c6f265SBram Moolenaar 50909c6f265SBram Moolenaarsyntax cluster typescriptTypeMember contains= 51009c6f265SBram Moolenaar \ @typescriptCallSignature, 51109c6f265SBram Moolenaar \ typescriptConstructSignature, 51209c6f265SBram Moolenaar \ typescriptIndexSignature, 51309c6f265SBram Moolenaar \ @typescriptMembers 51409c6f265SBram Moolenaar 5153132cdddSBram Moolenaarsyntax match typescriptTupleLable /\K\k*?\?:/ 5163132cdddSBram Moolenaar \ contained 5173132cdddSBram Moolenaar 51809c6f265SBram Moolenaarsyntax region typescriptTupleType matchgroup=typescriptBraces 51909c6f265SBram Moolenaar \ start=/\[/ end=/\]/ 5203132cdddSBram Moolenaar \ contains=@typescriptType,@typescriptComments,typescriptRestOrSpread,typescriptTupleLable 52191359014SBram Moolenaar \ contained skipwhite 52209c6f265SBram Moolenaar 52309c6f265SBram Moolenaarsyntax cluster typescriptTypeOperator 5243132cdddSBram Moolenaar \ contains=typescriptUnion,typescriptTypeBracket,typescriptConstraint,typescriptConditionalType 52509c6f265SBram Moolenaar 52609c6f265SBram Moolenaarsyntax match typescriptUnion /|\|&/ contained nextgroup=@typescriptPrimaryType skipwhite skipempty 52709c6f265SBram Moolenaar 5283132cdddSBram Moolenaarsyntax match typescriptConditionalType /?\|:/ contained nextgroup=@typescriptPrimaryType skipwhite skipempty 5293132cdddSBram Moolenaar 53009c6f265SBram Moolenaarsyntax cluster typescriptFunctionType contains=typescriptGenericFunc,typescriptFuncType 53109c6f265SBram Moolenaarsyntax region typescriptGenericFunc matchgroup=typescriptTypeBrackets 53209c6f265SBram Moolenaar \ start=/</ end=/>/ 53309c6f265SBram Moolenaar \ contains=typescriptTypeParameter 53409c6f265SBram Moolenaar \ nextgroup=typescriptFuncType 53509c6f265SBram Moolenaar \ containedin=typescriptFunctionType 53609c6f265SBram Moolenaar \ contained skipwhite skipnl 53709c6f265SBram Moolenaar 53809c6f265SBram Moolenaarsyntax region typescriptFuncType matchgroup=typescriptParens 53909c6f265SBram Moolenaar \ start=/(/ end=/)\s*=>/me=e-2 54009c6f265SBram Moolenaar \ contains=@typescriptParameterList 54109c6f265SBram Moolenaar \ nextgroup=typescriptFuncTypeArrow 54209c6f265SBram Moolenaar \ contained skipwhite skipnl oneline 54309c6f265SBram Moolenaar 54409c6f265SBram Moolenaarsyntax match typescriptFuncTypeArrow /=>/ 54509c6f265SBram Moolenaar \ nextgroup=@typescriptType 54609c6f265SBram Moolenaar \ containedin=typescriptFuncType 54709c6f265SBram Moolenaar \ contained skipwhite skipnl 54809c6f265SBram Moolenaar 54909c6f265SBram Moolenaar 55009c6f265SBram Moolenaarsyntax keyword typescriptConstructorType new 55109c6f265SBram Moolenaar \ nextgroup=@typescriptFunctionType 55209c6f265SBram Moolenaar \ contained skipwhite skipnl 55309c6f265SBram Moolenaar 55409c6f265SBram Moolenaarsyntax keyword typescriptUserDefinedType is 55509c6f265SBram Moolenaar \ contained nextgroup=@typescriptType skipwhite skipempty 55609c6f265SBram Moolenaar 55709c6f265SBram Moolenaarsyntax keyword typescriptTypeQuery typeof keyof 55809c6f265SBram Moolenaar \ nextgroup=typescriptTypeReference 55909c6f265SBram Moolenaar \ contained skipwhite skipnl 56009c6f265SBram Moolenaar 56191359014SBram Moolenaarsyntax keyword typescriptAssertType asserts 56291359014SBram Moolenaar \ nextgroup=typescriptTypeReference 56391359014SBram Moolenaar \ contained skipwhite skipnl 56491359014SBram Moolenaar 56509c6f265SBram Moolenaarsyntax cluster typescriptCallSignature contains=typescriptGenericCall,typescriptCall 56609c6f265SBram Moolenaarsyntax region typescriptGenericCall matchgroup=typescriptTypeBrackets 56709c6f265SBram Moolenaar \ start=/</ end=/>/ 56809c6f265SBram Moolenaar \ contains=typescriptTypeParameter 56909c6f265SBram Moolenaar \ nextgroup=typescriptCall 57009c6f265SBram Moolenaar \ contained skipwhite skipnl 57109c6f265SBram Moolenaarsyntax region typescriptCall matchgroup=typescriptParens 57209c6f265SBram Moolenaar \ start=/(/ end=/)/ 57309c6f265SBram Moolenaar \ contains=typescriptDecorator,@typescriptParameterList,@typescriptComments 57409c6f265SBram Moolenaar \ nextgroup=typescriptTypeAnnotation,typescriptBlock 57509c6f265SBram Moolenaar \ contained skipwhite skipnl 57609c6f265SBram Moolenaar 57709c6f265SBram Moolenaarsyntax match typescriptTypeAnnotation /:/ 57809c6f265SBram Moolenaar \ nextgroup=@typescriptType 57909c6f265SBram Moolenaar \ contained skipwhite skipnl 58009c6f265SBram Moolenaar 58109c6f265SBram Moolenaarsyntax cluster typescriptParameterList contains= 58209c6f265SBram Moolenaar \ typescriptTypeAnnotation, 58309c6f265SBram Moolenaar \ typescriptAccessibilityModifier, 5843132cdddSBram Moolenaar \ typescriptReadonlyModifier, 58509c6f265SBram Moolenaar \ typescriptOptionalMark, 58609c6f265SBram Moolenaar \ typescriptRestOrSpread, 58709c6f265SBram Moolenaar \ typescriptFuncComma, 58809c6f265SBram Moolenaar \ typescriptDefaultParam 58909c6f265SBram Moolenaar 59009c6f265SBram Moolenaarsyntax match typescriptFuncComma /,/ contained 59109c6f265SBram Moolenaar 59209c6f265SBram Moolenaarsyntax match typescriptDefaultParam /=/ 59309c6f265SBram Moolenaar \ nextgroup=@typescriptValue 59409c6f265SBram Moolenaar \ contained skipwhite 59509c6f265SBram Moolenaar 59609c6f265SBram Moolenaarsyntax keyword typescriptConstructSignature new 59709c6f265SBram Moolenaar \ nextgroup=@typescriptCallSignature 59809c6f265SBram Moolenaar \ contained skipwhite 59909c6f265SBram Moolenaar 60009c6f265SBram Moolenaarsyntax region typescriptIndexSignature matchgroup=typescriptBraces 60109c6f265SBram Moolenaar \ start=/\[/ end=/\]/ 60209c6f265SBram Moolenaar \ contains=typescriptPredefinedType,typescriptMappedIn,typescriptString 60309c6f265SBram Moolenaar \ nextgroup=typescriptTypeAnnotation 60409c6f265SBram Moolenaar \ contained skipwhite oneline 60509c6f265SBram Moolenaar 60609c6f265SBram Moolenaarsyntax keyword typescriptMappedIn in 60709c6f265SBram Moolenaar \ nextgroup=@typescriptType 60809c6f265SBram Moolenaar \ contained skipwhite skipnl skipempty 60909c6f265SBram Moolenaar 61009c6f265SBram Moolenaarsyntax keyword typescriptAliasKeyword type 61109c6f265SBram Moolenaar \ nextgroup=typescriptAliasDeclaration 61209c6f265SBram Moolenaar \ skipwhite skipnl skipempty 61309c6f265SBram Moolenaar 61409c6f265SBram Moolenaarsyntax region typescriptAliasDeclaration matchgroup=typescriptUnion 61509c6f265SBram Moolenaar \ start=/ / end=/=/ 61609c6f265SBram Moolenaar \ nextgroup=@typescriptType 61709c6f265SBram Moolenaar \ contains=typescriptConstraint,typescriptTypeParameters 61809c6f265SBram Moolenaar \ contained skipwhite skipempty 61909c6f265SBram Moolenaar 62009c6f265SBram Moolenaarsyntax keyword typescriptReadonlyArrayKeyword readonly 62109c6f265SBram Moolenaar \ nextgroup=@typescriptPrimaryType 62209c6f265SBram Moolenaar \ skipwhite 62309c6f265SBram Moolenaar 6243132cdddSBram Moolenaar 62509c6f265SBram Moolenaar" extension 62609c6f265SBram Moolenaarif get(g:, 'yats_host_keyword', 1) 62709c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Function Boolean 628*6e649224SBram Moolenaar " use of nextgroup Suggested by Doug Kearns 629*6e649224SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Error EvalError nextgroup=typescriptFuncCallArg 63009c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName InternalError 63109c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName RangeError ReferenceError 63209c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName StopIteration 63309c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName SyntaxError TypeError 63409c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName URIError Date 63509c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Float32Array 63609c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Float64Array 63709c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Int16Array Int32Array 63809c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Int8Array Uint16Array 63909c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Uint32Array Uint8Array 64009c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Uint8ClampedArray 64109c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName ParallelArray 64209c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName ArrayBuffer DataView 64309c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Iterator Generator 64409c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Reflect Proxy 64509c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName arguments 64609c6f265SBram Moolenaar hi def link typescriptGlobal Structure 64709c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName eval uneval nextgroup=typescriptFuncCallArg 64809c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName isFinite nextgroup=typescriptFuncCallArg 64909c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName isNaN parseFloat nextgroup=typescriptFuncCallArg 65009c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName parseInt nextgroup=typescriptFuncCallArg 65109c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName decodeURI nextgroup=typescriptFuncCallArg 65209c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName decodeURIComponent nextgroup=typescriptFuncCallArg 65309c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName encodeURI nextgroup=typescriptFuncCallArg 65409c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName encodeURIComponent nextgroup=typescriptFuncCallArg 65509c6f265SBram Moolenaar syntax cluster props add=typescriptGlobalMethod 65609c6f265SBram Moolenaar hi def link typescriptGlobalMethod Structure 65709c6f265SBram Moolenaar 65809c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Number nextgroup=typescriptGlobalNumberDot,typescriptFuncCallArg 65909c6f265SBram Moolenaar syntax match typescriptGlobalNumberDot /\./ contained nextgroup=typescriptNumberStaticProp,typescriptNumberStaticMethod,typescriptProp 66009c6f265SBram Moolenaar syntax keyword typescriptNumberStaticProp contained EPSILON MAX_SAFE_INTEGER MAX_VALUE 66109c6f265SBram Moolenaar syntax keyword typescriptNumberStaticProp contained MIN_SAFE_INTEGER MIN_VALUE NEGATIVE_INFINITY 66209c6f265SBram Moolenaar syntax keyword typescriptNumberStaticProp contained NaN POSITIVE_INFINITY 66309c6f265SBram Moolenaar hi def link typescriptNumberStaticProp Keyword 66409c6f265SBram Moolenaar syntax keyword typescriptNumberStaticMethod contained isFinite isInteger isNaN isSafeInteger nextgroup=typescriptFuncCallArg 66509c6f265SBram Moolenaar syntax keyword typescriptNumberStaticMethod contained parseFloat parseInt nextgroup=typescriptFuncCallArg 66609c6f265SBram Moolenaar hi def link typescriptNumberStaticMethod Keyword 66709c6f265SBram Moolenaar syntax keyword typescriptNumberMethod contained toExponential toFixed toLocaleString nextgroup=typescriptFuncCallArg 66809c6f265SBram Moolenaar syntax keyword typescriptNumberMethod contained toPrecision toSource toString valueOf nextgroup=typescriptFuncCallArg 66909c6f265SBram Moolenaar syntax cluster props add=typescriptNumberMethod 67009c6f265SBram Moolenaar hi def link typescriptNumberMethod Keyword 67109c6f265SBram Moolenaar 67209c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName String nextgroup=typescriptGlobalStringDot,typescriptFuncCallArg 67309c6f265SBram Moolenaar syntax match typescriptGlobalStringDot /\./ contained nextgroup=typescriptStringStaticMethod,typescriptProp 67409c6f265SBram Moolenaar syntax keyword typescriptStringStaticMethod contained fromCharCode fromCodePoint raw nextgroup=typescriptFuncCallArg 67509c6f265SBram Moolenaar hi def link typescriptStringStaticMethod Keyword 67609c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained anchor charAt charCodeAt codePointAt nextgroup=typescriptFuncCallArg 67709c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained concat endsWith includes indexOf lastIndexOf nextgroup=typescriptFuncCallArg 67809c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained link localeCompare match normalize nextgroup=typescriptFuncCallArg 67909c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained padStart padEnd repeat replace search nextgroup=typescriptFuncCallArg 68009c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained slice split startsWith substr substring nextgroup=typescriptFuncCallArg 68109c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained toLocaleLowerCase toLocaleUpperCase nextgroup=typescriptFuncCallArg 68209c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained toLowerCase toString toUpperCase trim nextgroup=typescriptFuncCallArg 68309c6f265SBram Moolenaar syntax keyword typescriptStringMethod contained valueOf nextgroup=typescriptFuncCallArg 68409c6f265SBram Moolenaar syntax cluster props add=typescriptStringMethod 68509c6f265SBram Moolenaar hi def link typescriptStringMethod Keyword 68609c6f265SBram Moolenaar 68709c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Array nextgroup=typescriptGlobalArrayDot,typescriptFuncCallArg 68809c6f265SBram Moolenaar syntax match typescriptGlobalArrayDot /\./ contained nextgroup=typescriptArrayStaticMethod,typescriptProp 68909c6f265SBram Moolenaar syntax keyword typescriptArrayStaticMethod contained from isArray of nextgroup=typescriptFuncCallArg 69009c6f265SBram Moolenaar hi def link typescriptArrayStaticMethod Keyword 69109c6f265SBram Moolenaar syntax keyword typescriptArrayMethod contained concat copyWithin entries every fill nextgroup=typescriptFuncCallArg 69209c6f265SBram Moolenaar syntax keyword typescriptArrayMethod contained filter find findIndex forEach indexOf nextgroup=typescriptFuncCallArg 69309c6f265SBram Moolenaar syntax keyword typescriptArrayMethod contained includes join keys lastIndexOf map nextgroup=typescriptFuncCallArg 69409c6f265SBram Moolenaar syntax keyword typescriptArrayMethod contained pop push reduce reduceRight reverse nextgroup=typescriptFuncCallArg 69509c6f265SBram Moolenaar syntax keyword typescriptArrayMethod contained shift slice some sort splice toLocaleString nextgroup=typescriptFuncCallArg 69609c6f265SBram Moolenaar syntax keyword typescriptArrayMethod contained toSource toString unshift nextgroup=typescriptFuncCallArg 69709c6f265SBram Moolenaar syntax cluster props add=typescriptArrayMethod 69809c6f265SBram Moolenaar hi def link typescriptArrayMethod Keyword 69909c6f265SBram Moolenaar 70009c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Object nextgroup=typescriptGlobalObjectDot,typescriptFuncCallArg 70109c6f265SBram Moolenaar syntax match typescriptGlobalObjectDot /\./ contained nextgroup=typescriptObjectStaticMethod,typescriptProp 70209c6f265SBram Moolenaar syntax keyword typescriptObjectStaticMethod contained create defineProperties defineProperty nextgroup=typescriptFuncCallArg 70309c6f265SBram Moolenaar syntax keyword typescriptObjectStaticMethod contained entries freeze getOwnPropertyDescriptors nextgroup=typescriptFuncCallArg 70409c6f265SBram Moolenaar syntax keyword typescriptObjectStaticMethod contained getOwnPropertyDescriptor getOwnPropertyNames nextgroup=typescriptFuncCallArg 70509c6f265SBram Moolenaar syntax keyword typescriptObjectStaticMethod contained getOwnPropertySymbols getPrototypeOf nextgroup=typescriptFuncCallArg 70609c6f265SBram Moolenaar syntax keyword typescriptObjectStaticMethod contained is isExtensible isFrozen isSealed nextgroup=typescriptFuncCallArg 70709c6f265SBram Moolenaar syntax keyword typescriptObjectStaticMethod contained keys preventExtensions values nextgroup=typescriptFuncCallArg 70809c6f265SBram Moolenaar hi def link typescriptObjectStaticMethod Keyword 70909c6f265SBram Moolenaar syntax keyword typescriptObjectMethod contained getOwnPropertyDescriptors hasOwnProperty nextgroup=typescriptFuncCallArg 71009c6f265SBram Moolenaar syntax keyword typescriptObjectMethod contained isPrototypeOf propertyIsEnumerable nextgroup=typescriptFuncCallArg 71109c6f265SBram Moolenaar syntax keyword typescriptObjectMethod contained toLocaleString toString valueOf seal nextgroup=typescriptFuncCallArg 71209c6f265SBram Moolenaar syntax keyword typescriptObjectMethod contained setPrototypeOf nextgroup=typescriptFuncCallArg 71309c6f265SBram Moolenaar syntax cluster props add=typescriptObjectMethod 71409c6f265SBram Moolenaar hi def link typescriptObjectMethod Keyword 71509c6f265SBram Moolenaar 71609c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Symbol nextgroup=typescriptGlobalSymbolDot,typescriptFuncCallArg 71709c6f265SBram Moolenaar syntax match typescriptGlobalSymbolDot /\./ contained nextgroup=typescriptSymbolStaticProp,typescriptSymbolStaticMethod,typescriptProp 71809c6f265SBram Moolenaar syntax keyword typescriptSymbolStaticProp contained length iterator match replace 71909c6f265SBram Moolenaar syntax keyword typescriptSymbolStaticProp contained search split hasInstance isConcatSpreadable 72009c6f265SBram Moolenaar syntax keyword typescriptSymbolStaticProp contained unscopables species toPrimitive 72109c6f265SBram Moolenaar syntax keyword typescriptSymbolStaticProp contained toStringTag 72209c6f265SBram Moolenaar hi def link typescriptSymbolStaticProp Keyword 72309c6f265SBram Moolenaar syntax keyword typescriptSymbolStaticMethod contained for keyFor nextgroup=typescriptFuncCallArg 72409c6f265SBram Moolenaar hi def link typescriptSymbolStaticMethod Keyword 72509c6f265SBram Moolenaar 72609c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Function 72709c6f265SBram Moolenaar syntax keyword typescriptFunctionMethod contained apply bind call nextgroup=typescriptFuncCallArg 72809c6f265SBram Moolenaar syntax cluster props add=typescriptFunctionMethod 72909c6f265SBram Moolenaar hi def link typescriptFunctionMethod Keyword 73009c6f265SBram Moolenaar 73109c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Math nextgroup=typescriptGlobalMathDot,typescriptFuncCallArg 73209c6f265SBram Moolenaar syntax match typescriptGlobalMathDot /\./ contained nextgroup=typescriptMathStaticProp,typescriptMathStaticMethod,typescriptProp 73309c6f265SBram Moolenaar syntax keyword typescriptMathStaticProp contained E LN10 LN2 LOG10E LOG2E PI SQRT1_2 73409c6f265SBram Moolenaar syntax keyword typescriptMathStaticProp contained SQRT2 73509c6f265SBram Moolenaar hi def link typescriptMathStaticProp Keyword 73609c6f265SBram Moolenaar syntax keyword typescriptMathStaticMethod contained abs acos acosh asin asinh atan nextgroup=typescriptFuncCallArg 73709c6f265SBram Moolenaar syntax keyword typescriptMathStaticMethod contained atan2 atanh cbrt ceil clz32 cos nextgroup=typescriptFuncCallArg 73809c6f265SBram Moolenaar syntax keyword typescriptMathStaticMethod contained cosh exp expm1 floor fround hypot nextgroup=typescriptFuncCallArg 73909c6f265SBram Moolenaar syntax keyword typescriptMathStaticMethod contained imul log log10 log1p log2 max nextgroup=typescriptFuncCallArg 74009c6f265SBram Moolenaar syntax keyword typescriptMathStaticMethod contained min pow random round sign sin nextgroup=typescriptFuncCallArg 74109c6f265SBram Moolenaar syntax keyword typescriptMathStaticMethod contained sinh sqrt tan tanh trunc nextgroup=typescriptFuncCallArg 74209c6f265SBram Moolenaar hi def link typescriptMathStaticMethod Keyword 74309c6f265SBram Moolenaar 74409c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Date nextgroup=typescriptGlobalDateDot,typescriptFuncCallArg 74509c6f265SBram Moolenaar syntax match typescriptGlobalDateDot /\./ contained nextgroup=typescriptDateStaticMethod,typescriptProp 74609c6f265SBram Moolenaar syntax keyword typescriptDateStaticMethod contained UTC now parse nextgroup=typescriptFuncCallArg 74709c6f265SBram Moolenaar hi def link typescriptDateStaticMethod Keyword 74809c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained getDate getDay getFullYear getHours nextgroup=typescriptFuncCallArg 74909c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained getMilliseconds getMinutes getMonth nextgroup=typescriptFuncCallArg 75009c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained getSeconds getTime getTimezoneOffset nextgroup=typescriptFuncCallArg 75109c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained getUTCDate getUTCDay getUTCFullYear nextgroup=typescriptFuncCallArg 75209c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained getUTCHours getUTCMilliseconds getUTCMinutes nextgroup=typescriptFuncCallArg 75309c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained getUTCMonth getUTCSeconds setDate setFullYear nextgroup=typescriptFuncCallArg 75409c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained setHours setMilliseconds setMinutes nextgroup=typescriptFuncCallArg 75509c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained setMonth setSeconds setTime setUTCDate nextgroup=typescriptFuncCallArg 75609c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained setUTCFullYear setUTCHours setUTCMilliseconds nextgroup=typescriptFuncCallArg 75709c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained setUTCMinutes setUTCMonth setUTCSeconds nextgroup=typescriptFuncCallArg 75809c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained toDateString toISOString toJSON toLocaleDateString nextgroup=typescriptFuncCallArg 75909c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained toLocaleFormat toLocaleString toLocaleTimeString nextgroup=typescriptFuncCallArg 76009c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained toSource toString toTimeString toUTCString nextgroup=typescriptFuncCallArg 76109c6f265SBram Moolenaar syntax keyword typescriptDateMethod contained valueOf nextgroup=typescriptFuncCallArg 76209c6f265SBram Moolenaar syntax cluster props add=typescriptDateMethod 76309c6f265SBram Moolenaar hi def link typescriptDateMethod Keyword 76409c6f265SBram Moolenaar 76509c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName JSON nextgroup=typescriptGlobalJSONDot,typescriptFuncCallArg 76609c6f265SBram Moolenaar syntax match typescriptGlobalJSONDot /\./ contained nextgroup=typescriptJSONStaticMethod,typescriptProp 76709c6f265SBram Moolenaar syntax keyword typescriptJSONStaticMethod contained parse stringify nextgroup=typescriptFuncCallArg 76809c6f265SBram Moolenaar hi def link typescriptJSONStaticMethod Keyword 76909c6f265SBram Moolenaar 77009c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName RegExp nextgroup=typescriptGlobalRegExpDot,typescriptFuncCallArg 77109c6f265SBram Moolenaar syntax match typescriptGlobalRegExpDot /\./ contained nextgroup=typescriptRegExpStaticProp,typescriptProp 77209c6f265SBram Moolenaar syntax keyword typescriptRegExpStaticProp contained lastIndex 77309c6f265SBram Moolenaar hi def link typescriptRegExpStaticProp Keyword 77409c6f265SBram Moolenaar syntax keyword typescriptRegExpProp contained global ignoreCase multiline source sticky 77509c6f265SBram Moolenaar syntax cluster props add=typescriptRegExpProp 77609c6f265SBram Moolenaar hi def link typescriptRegExpProp Keyword 77709c6f265SBram Moolenaar syntax keyword typescriptRegExpMethod contained exec test nextgroup=typescriptFuncCallArg 77809c6f265SBram Moolenaar syntax cluster props add=typescriptRegExpMethod 77909c6f265SBram Moolenaar hi def link typescriptRegExpMethod Keyword 78009c6f265SBram Moolenaar 78109c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Map WeakMap 78209c6f265SBram Moolenaar syntax keyword typescriptES6MapProp contained size 78309c6f265SBram Moolenaar syntax cluster props add=typescriptES6MapProp 78409c6f265SBram Moolenaar hi def link typescriptES6MapProp Keyword 78509c6f265SBram Moolenaar syntax keyword typescriptES6MapMethod contained clear delete entries forEach get has nextgroup=typescriptFuncCallArg 78609c6f265SBram Moolenaar syntax keyword typescriptES6MapMethod contained keys set values nextgroup=typescriptFuncCallArg 78709c6f265SBram Moolenaar syntax cluster props add=typescriptES6MapMethod 78809c6f265SBram Moolenaar hi def link typescriptES6MapMethod Keyword 78909c6f265SBram Moolenaar 79009c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Set WeakSet 79109c6f265SBram Moolenaar syntax keyword typescriptES6SetProp contained size 79209c6f265SBram Moolenaar syntax cluster props add=typescriptES6SetProp 79309c6f265SBram Moolenaar hi def link typescriptES6SetProp Keyword 79409c6f265SBram Moolenaar syntax keyword typescriptES6SetMethod contained add clear delete entries forEach has nextgroup=typescriptFuncCallArg 79509c6f265SBram Moolenaar syntax keyword typescriptES6SetMethod contained values nextgroup=typescriptFuncCallArg 79609c6f265SBram Moolenaar syntax cluster props add=typescriptES6SetMethod 79709c6f265SBram Moolenaar hi def link typescriptES6SetMethod Keyword 79809c6f265SBram Moolenaar 79909c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Proxy 80009c6f265SBram Moolenaar syntax keyword typescriptProxyAPI contained getOwnPropertyDescriptor getOwnPropertyNames 80109c6f265SBram Moolenaar syntax keyword typescriptProxyAPI contained defineProperty deleteProperty freeze seal 80209c6f265SBram Moolenaar syntax keyword typescriptProxyAPI contained preventExtensions has hasOwn get set enumerate 80309c6f265SBram Moolenaar syntax keyword typescriptProxyAPI contained iterate ownKeys apply construct 80409c6f265SBram Moolenaar hi def link typescriptProxyAPI Keyword 80509c6f265SBram Moolenaar 80609c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Promise nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg 80709c6f265SBram Moolenaar syntax match typescriptGlobalPromiseDot /\./ contained nextgroup=typescriptPromiseStaticMethod,typescriptProp 80809c6f265SBram Moolenaar syntax keyword typescriptPromiseStaticMethod contained resolve reject all race nextgroup=typescriptFuncCallArg 80909c6f265SBram Moolenaar hi def link typescriptPromiseStaticMethod Keyword 81009c6f265SBram Moolenaar syntax keyword typescriptPromiseMethod contained then catch finally nextgroup=typescriptFuncCallArg 81109c6f265SBram Moolenaar syntax cluster props add=typescriptPromiseMethod 81209c6f265SBram Moolenaar hi def link typescriptPromiseMethod Keyword 81309c6f265SBram Moolenaar 81409c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Reflect 81509c6f265SBram Moolenaar syntax keyword typescriptReflectMethod contained apply construct defineProperty deleteProperty nextgroup=typescriptFuncCallArg 81609c6f265SBram Moolenaar syntax keyword typescriptReflectMethod contained enumerate get getOwnPropertyDescriptor nextgroup=typescriptFuncCallArg 81709c6f265SBram Moolenaar syntax keyword typescriptReflectMethod contained getPrototypeOf has isExtensible ownKeys nextgroup=typescriptFuncCallArg 81809c6f265SBram Moolenaar syntax keyword typescriptReflectMethod contained preventExtensions set setPrototypeOf nextgroup=typescriptFuncCallArg 81909c6f265SBram Moolenaar syntax cluster props add=typescriptReflectMethod 82009c6f265SBram Moolenaar hi def link typescriptReflectMethod Keyword 82109c6f265SBram Moolenaar 82209c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Intl 82309c6f265SBram Moolenaar syntax keyword typescriptIntlMethod contained Collator DateTimeFormat NumberFormat nextgroup=typescriptFuncCallArg 82409c6f265SBram Moolenaar syntax keyword typescriptIntlMethod contained PluralRules nextgroup=typescriptFuncCallArg 82509c6f265SBram Moolenaar syntax cluster props add=typescriptIntlMethod 82609c6f265SBram Moolenaar hi def link typescriptIntlMethod Keyword 82709c6f265SBram Moolenaar 82809c6f265SBram Moolenaar syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName global process 82909c6f265SBram Moolenaar syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName console Buffer 83009c6f265SBram Moolenaar syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName module exports 83109c6f265SBram Moolenaar syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName setTimeout 83209c6f265SBram Moolenaar syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName clearTimeout 83309c6f265SBram Moolenaar syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName setInterval 83409c6f265SBram Moolenaar syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName clearInterval 83509c6f265SBram Moolenaar hi def link typescriptNodeGlobal Structure 83609c6f265SBram Moolenaar 83791359014SBram Moolenaar syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName describe 83891359014SBram Moolenaar syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName it test before 83991359014SBram Moolenaar syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName after beforeEach 84091359014SBram Moolenaar syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName afterEach 84191359014SBram Moolenaar syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName beforeAll 84291359014SBram Moolenaar syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName afterAll 84391359014SBram Moolenaar syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName expect assert 84409c6f265SBram Moolenaar 84509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName AbortController 84609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName AbstractWorker AnalyserNode 84709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName App Apps ArrayBuffer 84809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ArrayBufferView 84909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Attr AudioBuffer 85009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioBufferSourceNode 85109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioContext AudioDestinationNode 85209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioListener AudioNode 85309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioParam BatteryManager 85409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName BiquadFilterNode 85509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName BlobEvent BluetoothAdapter 85609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName BluetoothDevice 85709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName BluetoothManager 85809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CameraCapabilities 85909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CameraControl CameraManager 86009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CanvasGradient CanvasImageSource 86109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CanvasPattern CanvasRenderingContext2D 86209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CaretPosition CDATASection 86309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ChannelMergerNode 86409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ChannelSplitterNode 86509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CharacterData ChildNode 86609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ChromeWorker Comment 86709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Connection Console 86809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ContactManager Contacts 86909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ConvolverNode Coordinates 87009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSS CSSConditionRule 87109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSGroupingRule 87209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSKeyframeRule 87309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSKeyframesRule 87409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSMediaRule CSSNamespaceRule 87509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSPageRule CSSRule 87609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSRuleList CSSStyleDeclaration 87709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSStyleRule CSSStyleSheet 87809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSSupportsRule 87909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DataTransfer DataView 88009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DedicatedWorkerGlobalScope 88109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DelayNode DeviceAcceleration 88209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DeviceRotationRate 88309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DeviceStorage DirectoryEntry 88409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryEntrySync 88509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryReader 88609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryReaderSync 88709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Document DocumentFragment 88809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DocumentTouch DocumentType 88909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMCursor DOMError 89009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMException DOMHighResTimeStamp 89109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMImplementation 89209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMImplementationRegistry 89309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMParser DOMRequest 89409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMString DOMStringList 89509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMStringMap DOMTimeStamp 89609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMTokenList DynamicsCompressorNode 89709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Element Entry EntrySync 89809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Extensions FileException 89909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Float32Array Float64Array 90009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName FMRadio FormData 90109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName GainNode Gamepad 90209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName GamepadButton Geolocation 90309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName History HTMLAnchorElement 90409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLAreaElement 90509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLAudioElement 90609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBaseElement 90709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBodyElement 90809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBRElement HTMLButtonElement 90909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLCanvasElement 91009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLCollection HTMLDataElement 91109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDataListElement 91209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDivElement HTMLDListElement 91309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDocument HTMLElement 91409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLEmbedElement 91509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFieldSetElement 91609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFormControlsCollection 91709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFormElement 91809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHeadElement 91909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHeadingElement 92009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHRElement HTMLHtmlElement 92109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLIFrameElement 92209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLImageElement 92309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLInputElement 92409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLKeygenElement 92509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLabelElement 92609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLegendElement 92709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLIElement HTMLLinkElement 92809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMapElement HTMLMediaElement 92909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMetaElement 93009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMeterElement 93109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLModElement HTMLObjectElement 93209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOListElement 93309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptGroupElement 93409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptionElement 93509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptionsCollection 93609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOutputElement 93709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLParagraphElement 93809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLParamElement 93909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLPreElement HTMLProgressElement 94009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLQuoteElement 94109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLScriptElement 94209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSelectElement 94309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSourceElement 94409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSpanElement 94509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLStyleElement 94609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableCaptionElement 94709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableCellElement 94809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableColElement 94909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableDataCellElement 95009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableElement 95109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableHeaderCellElement 95209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableRowElement 95309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableSectionElement 95409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTextAreaElement 95509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTimeElement 95609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTitleElement 95709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTrackElement 95809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLUListElement 95909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLUnknownElement 96009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLVideoElement 96109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBCursor IDBCursorSync 96209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBCursorWithValue 96309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBDatabase IDBDatabaseSync 96409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBEnvironment IDBEnvironmentSync 96509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBFactory IDBFactorySync 96609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBIndex IDBIndexSync 96709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBKeyRange IDBObjectStore 96809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBObjectStoreSync 96909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBOpenDBRequest 97009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBRequest IDBTransaction 97109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBTransactionSync 97209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBVersionChangeEvent 97309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ImageData IndexedDB 97409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Int16Array Int32Array 97509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Int8Array L10n LinkStyle 97609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName LocalFileSystem 97709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName LocalFileSystemSync 97809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Location LockedFile 97909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaQueryList MediaQueryListListener 98009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaRecorder MediaSource 98109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaStream MediaStreamTrack 98209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName MutationObserver 98309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Navigator NavigatorGeolocation 98409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorID NavigatorLanguage 98509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorOnLine 98609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorPlugins 98709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Node NodeFilter 98809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName NodeIterator NodeList 98909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Notification OfflineAudioContext 99009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName OscillatorNode PannerNode 99109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ParentNode Performance 99209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName PerformanceNavigation 99309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName PerformanceTiming 99409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Permissions PermissionSettings 99509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Plugin PluginArray 99609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Position PositionError 99709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName PositionOptions 99809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName PowerManager ProcessingInstruction 99909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName PromiseResolver 100009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName PushManager Range 100109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCConfiguration 100209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCPeerConnection 100309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCPeerConnectionErrorCallback 100409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCSessionDescription 100509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCSessionDescriptionCallback 100609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ScriptProcessorNode 100709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Selection SettingsLock 100809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SettingsManager 100909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SharedWorker StyleSheet 101009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName StyleSheetList SVGAElement 101109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAngle SVGAnimateColorElement 101209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedAngle 101309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedBoolean 101409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedEnumeration 101509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedInteger 101609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedLength 101709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedLengthList 101809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedNumber 101909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedNumberList 102009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedPoints 102109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedPreserveAspectRatio 102209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedRect 102309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedString 102409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedTransformList 102509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateElement 102609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateMotionElement 102709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateTransformElement 102809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimationElement 102909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGCircleElement 103009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGClipPathElement 103109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGCursorElement 103209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGDefsElement SVGDescElement 103309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGElement SVGEllipseElement 103409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFilterElement 103509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontElement SVGFontFaceElement 103609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceFormatElement 103709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceNameElement 103809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceSrcElement 103909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceUriElement 104009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGForeignObjectElement 104109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGGElement SVGGlyphElement 104209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGGradientElement 104309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGHKernElement 104409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGImageElement 104509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLength SVGLengthList 104609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLinearGradientElement 104709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLineElement SVGMaskElement 104809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGMatrix SVGMissingGlyphElement 104909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGMPathElement 105009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGNumber SVGNumberList 105109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPathElement SVGPatternElement 105209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPoint SVGPolygonElement 105309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPolylineElement 105409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPreserveAspectRatio 105509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGRadialGradientElement 105609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGRect SVGRectElement 105709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGScriptElement 105809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSetElement SVGStopElement 105909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGStringList SVGStylable 106009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGStyleElement 106109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSVGElement SVGSwitchElement 106209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSymbolElement 106309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTests SVGTextElement 106409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTextPositioningElement 106509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTitleElement 106609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTransform SVGTransformable 106709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTransformList 106809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTRefElement SVGTSpanElement 106909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGUseElement SVGViewElement 107009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGVKernElement 107109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName TCPServerSocket 107209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName TCPSocket Telephony 107309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName TelephonyCall Text 107409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName TextDecoder TextEncoder 107509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName TextMetrics TimeRanges 107609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Touch TouchList 107709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Transferable TreeWalker 107809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Uint16Array Uint32Array 107909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Uint8Array Uint8ClampedArray 108009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName URLSearchParams 108109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName URLUtilsReadOnly 108209c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName UserProximityEvent 108309c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName ValidityState VideoPlaybackQuality 108409c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName WaveShaperNode WebBluetooth 108509c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName WebGLRenderingContext 108609c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName WebSMS WebSocket 108709c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName WebVTT WifiManager 108809c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName Window Worker WorkerConsole 108909c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName WorkerLocation WorkerNavigator 109009c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName XDomainRequest XMLDocument 109109c6f265SBram Moolenaar syntax keyword typescriptBOM containedin=typescriptIdentifierName XMLHttpRequestEventTarget 109209c6f265SBram Moolenaar hi def link typescriptBOM Structure 109309c6f265SBram Moolenaar 109409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName applicationCache 109509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName closed 109609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName Components 109709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName controllers 109809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName dialogArguments 109909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName document 110009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName frameElement 110109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName frames 110209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName fullScreen 110309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName history 110409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName innerHeight 110509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName innerWidth 110609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName length 110709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName location 110809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName locationbar 110909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName menubar 111009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName messageManager 111109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName name navigator 111209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName opener 111309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName outerHeight 111409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName outerWidth 111509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName pageXOffset 111609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName pageYOffset 111709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName parent 111809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName performance 111909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName personalbar 112009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName returnValue 112109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screen 112209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screenX 112309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screenY 112409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollbars 112509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollMaxX 112609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollMaxY 112709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollX 112809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollY 112909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName self sidebar 113009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName status 113109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName statusbar 113209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName toolbar 113309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName top visualViewport 113409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName window 113509c6f265SBram Moolenaar syntax cluster props add=typescriptBOMWindowProp 113609c6f265SBram Moolenaar hi def link typescriptBOMWindowProp Structure 113709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName alert nextgroup=typescriptFuncCallArg 113809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName atob nextgroup=typescriptFuncCallArg 113909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName blur nextgroup=typescriptFuncCallArg 114009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName btoa nextgroup=typescriptFuncCallArg 114109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearImmediate nextgroup=typescriptFuncCallArg 114209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearInterval nextgroup=typescriptFuncCallArg 114309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearTimeout nextgroup=typescriptFuncCallArg 114409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName close nextgroup=typescriptFuncCallArg 114509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName confirm nextgroup=typescriptFuncCallArg 114609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName dispatchEvent nextgroup=typescriptFuncCallArg 114709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName find nextgroup=typescriptFuncCallArg 114809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName focus nextgroup=typescriptFuncCallArg 114909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getAttention nextgroup=typescriptFuncCallArg 115009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getAttentionWithCycleCount nextgroup=typescriptFuncCallArg 115109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getComputedStyle nextgroup=typescriptFuncCallArg 115209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getDefaulComputedStyle nextgroup=typescriptFuncCallArg 115309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getSelection nextgroup=typescriptFuncCallArg 115409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName matchMedia nextgroup=typescriptFuncCallArg 115509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName maximize nextgroup=typescriptFuncCallArg 115609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName moveBy nextgroup=typescriptFuncCallArg 115709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName moveTo nextgroup=typescriptFuncCallArg 115809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName open nextgroup=typescriptFuncCallArg 115909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName openDialog nextgroup=typescriptFuncCallArg 116009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName postMessage nextgroup=typescriptFuncCallArg 116109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName print nextgroup=typescriptFuncCallArg 116209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName prompt nextgroup=typescriptFuncCallArg 116309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName removeEventListener nextgroup=typescriptFuncCallArg 116409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName resizeBy nextgroup=typescriptFuncCallArg 116509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName resizeTo nextgroup=typescriptFuncCallArg 116609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName restore nextgroup=typescriptFuncCallArg 116709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scroll nextgroup=typescriptFuncCallArg 116809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollBy nextgroup=typescriptFuncCallArg 116909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollByLines nextgroup=typescriptFuncCallArg 117009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollByPages nextgroup=typescriptFuncCallArg 117109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollTo nextgroup=typescriptFuncCallArg 117209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setCursor nextgroup=typescriptFuncCallArg 117309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setImmediate nextgroup=typescriptFuncCallArg 117409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setInterval nextgroup=typescriptFuncCallArg 117509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setResizable nextgroup=typescriptFuncCallArg 117609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setTimeout nextgroup=typescriptFuncCallArg 117709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName showModalDialog nextgroup=typescriptFuncCallArg 117809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName sizeToContent nextgroup=typescriptFuncCallArg 117909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName stop nextgroup=typescriptFuncCallArg 118009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName updateCommands nextgroup=typescriptFuncCallArg 118109c6f265SBram Moolenaar syntax cluster props add=typescriptBOMWindowMethod 118209c6f265SBram Moolenaar hi def link typescriptBOMWindowMethod Structure 118309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onabort onbeforeunload onblur onchange 118409c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onclick onclose oncontextmenu ondevicelight 118509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained ondevicemotion ondeviceorientation 118609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained ondeviceproximity ondragdrop onerror 118709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onfocus onhashchange onkeydown onkeypress 118809c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onkeyup onload onmousedown onmousemove 118909c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onmouseout onmouseover onmouseup 119009c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onmozbeforepaint onpaint onpopstate 119109c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onreset onresize onscroll onselect 119209c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onsubmit onunload onuserproximity 119309c6f265SBram Moolenaar syntax keyword typescriptBOMWindowEvent contained onpageshow onpagehide 119409c6f265SBram Moolenaar hi def link typescriptBOMWindowEvent Keyword 119509c6f265SBram Moolenaar syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName DOMParser 119609c6f265SBram Moolenaar syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName QueryInterface 119709c6f265SBram Moolenaar syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName XMLSerializer 119809c6f265SBram Moolenaar hi def link typescriptBOMWindowCons Structure 119909c6f265SBram Moolenaar 120009c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorProp contained battery buildID connection cookieEnabled 120109c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorProp contained doNotTrack maxTouchPoints oscpu 120209c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorProp contained productSub push serviceWorker 120309c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorProp contained vendor vendorSub 120409c6f265SBram Moolenaar syntax cluster props add=typescriptBOMNavigatorProp 120509c6f265SBram Moolenaar hi def link typescriptBOMNavigatorProp Keyword 120609c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorMethod contained addIdleObserver geolocation nextgroup=typescriptFuncCallArg 120709c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorMethod contained getDeviceStorage getDeviceStorages nextgroup=typescriptFuncCallArg 120809c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorMethod contained getGamepads getUserMedia registerContentHandler nextgroup=typescriptFuncCallArg 120909c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorMethod contained removeIdleObserver requestWakeLock nextgroup=typescriptFuncCallArg 121009c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorMethod contained share vibrate watch registerProtocolHandler nextgroup=typescriptFuncCallArg 121109c6f265SBram Moolenaar syntax keyword typescriptBOMNavigatorMethod contained sendBeacon nextgroup=typescriptFuncCallArg 121209c6f265SBram Moolenaar syntax cluster props add=typescriptBOMNavigatorMethod 121309c6f265SBram Moolenaar hi def link typescriptBOMNavigatorMethod Keyword 121409c6f265SBram Moolenaar syntax keyword typescriptServiceWorkerMethod contained register nextgroup=typescriptFuncCallArg 121509c6f265SBram Moolenaar syntax cluster props add=typescriptServiceWorkerMethod 121609c6f265SBram Moolenaar hi def link typescriptServiceWorkerMethod Keyword 121709c6f265SBram Moolenaar 121809c6f265SBram Moolenaar syntax keyword typescriptBOMLocationProp contained href protocol host hostname port 121909c6f265SBram Moolenaar syntax keyword typescriptBOMLocationProp contained pathname search hash username password 122009c6f265SBram Moolenaar syntax keyword typescriptBOMLocationProp contained origin 122109c6f265SBram Moolenaar syntax cluster props add=typescriptBOMLocationProp 122209c6f265SBram Moolenaar hi def link typescriptBOMLocationProp Keyword 122309c6f265SBram Moolenaar syntax keyword typescriptBOMLocationMethod contained assign reload replace toString nextgroup=typescriptFuncCallArg 122409c6f265SBram Moolenaar syntax cluster props add=typescriptBOMLocationMethod 122509c6f265SBram Moolenaar hi def link typescriptBOMLocationMethod Keyword 122609c6f265SBram Moolenaar 122709c6f265SBram Moolenaar syntax keyword typescriptBOMHistoryProp contained length current next previous state 122809c6f265SBram Moolenaar syntax keyword typescriptBOMHistoryProp contained scrollRestoration 122909c6f265SBram Moolenaar syntax cluster props add=typescriptBOMHistoryProp 123009c6f265SBram Moolenaar hi def link typescriptBOMHistoryProp Keyword 123109c6f265SBram Moolenaar syntax keyword typescriptBOMHistoryMethod contained back forward go pushState replaceState nextgroup=typescriptFuncCallArg 123209c6f265SBram Moolenaar syntax cluster props add=typescriptBOMHistoryMethod 123309c6f265SBram Moolenaar hi def link typescriptBOMHistoryMethod Keyword 123409c6f265SBram Moolenaar 123509c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName console 123609c6f265SBram Moolenaar syntax keyword typescriptConsoleMethod contained count dir error group groupCollapsed nextgroup=typescriptFuncCallArg 123709c6f265SBram Moolenaar syntax keyword typescriptConsoleMethod contained groupEnd info log time timeEnd trace nextgroup=typescriptFuncCallArg 123809c6f265SBram Moolenaar syntax keyword typescriptConsoleMethod contained warn nextgroup=typescriptFuncCallArg 123909c6f265SBram Moolenaar syntax cluster props add=typescriptConsoleMethod 124009c6f265SBram Moolenaar hi def link typescriptConsoleMethod Keyword 124109c6f265SBram Moolenaar 124209c6f265SBram Moolenaar syntax keyword typescriptXHRGlobal containedin=typescriptIdentifierName XMLHttpRequest 124309c6f265SBram Moolenaar hi def link typescriptXHRGlobal Structure 124409c6f265SBram Moolenaar syntax keyword typescriptXHRProp contained onreadystatechange readyState response 124509c6f265SBram Moolenaar syntax keyword typescriptXHRProp contained responseText responseType responseXML status 124609c6f265SBram Moolenaar syntax keyword typescriptXHRProp contained statusText timeout ontimeout upload withCredentials 124709c6f265SBram Moolenaar syntax cluster props add=typescriptXHRProp 124809c6f265SBram Moolenaar hi def link typescriptXHRProp Keyword 124909c6f265SBram Moolenaar syntax keyword typescriptXHRMethod contained abort getAllResponseHeaders getResponseHeader nextgroup=typescriptFuncCallArg 125009c6f265SBram Moolenaar syntax keyword typescriptXHRMethod contained open overrideMimeType send setRequestHeader nextgroup=typescriptFuncCallArg 125109c6f265SBram Moolenaar syntax cluster props add=typescriptXHRMethod 125209c6f265SBram Moolenaar hi def link typescriptXHRMethod Keyword 125309c6f265SBram Moolenaar 125409c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Blob BlobBuilder 125509c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName File FileReader 125609c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName FileReaderSync 125709c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName URL nextgroup=typescriptGlobalURLDot,typescriptFuncCallArg 125809c6f265SBram Moolenaar syntax match typescriptGlobalURLDot /\./ contained nextgroup=typescriptURLStaticMethod,typescriptProp 125909c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName URLUtils 126009c6f265SBram Moolenaar syntax keyword typescriptFileMethod contained readAsArrayBuffer readAsBinaryString nextgroup=typescriptFuncCallArg 126109c6f265SBram Moolenaar syntax keyword typescriptFileMethod contained readAsDataURL readAsText nextgroup=typescriptFuncCallArg 126209c6f265SBram Moolenaar syntax cluster props add=typescriptFileMethod 126309c6f265SBram Moolenaar hi def link typescriptFileMethod Keyword 126409c6f265SBram Moolenaar syntax keyword typescriptFileReaderProp contained error readyState result 126509c6f265SBram Moolenaar syntax cluster props add=typescriptFileReaderProp 126609c6f265SBram Moolenaar hi def link typescriptFileReaderProp Keyword 126709c6f265SBram Moolenaar syntax keyword typescriptFileReaderMethod contained abort readAsArrayBuffer readAsBinaryString nextgroup=typescriptFuncCallArg 126809c6f265SBram Moolenaar syntax keyword typescriptFileReaderMethod contained readAsDataURL readAsText nextgroup=typescriptFuncCallArg 126909c6f265SBram Moolenaar syntax cluster props add=typescriptFileReaderMethod 127009c6f265SBram Moolenaar hi def link typescriptFileReaderMethod Keyword 127109c6f265SBram Moolenaar syntax keyword typescriptFileListMethod contained item nextgroup=typescriptFuncCallArg 127209c6f265SBram Moolenaar syntax cluster props add=typescriptFileListMethod 127309c6f265SBram Moolenaar hi def link typescriptFileListMethod Keyword 127409c6f265SBram Moolenaar syntax keyword typescriptBlobMethod contained append getBlob getFile nextgroup=typescriptFuncCallArg 127509c6f265SBram Moolenaar syntax cluster props add=typescriptBlobMethod 127609c6f265SBram Moolenaar hi def link typescriptBlobMethod Keyword 127709c6f265SBram Moolenaar syntax keyword typescriptURLUtilsProp contained hash host hostname href origin password 127809c6f265SBram Moolenaar syntax keyword typescriptURLUtilsProp contained pathname port protocol search searchParams 127909c6f265SBram Moolenaar syntax keyword typescriptURLUtilsProp contained username 128009c6f265SBram Moolenaar syntax cluster props add=typescriptURLUtilsProp 128109c6f265SBram Moolenaar hi def link typescriptURLUtilsProp Keyword 128209c6f265SBram Moolenaar syntax keyword typescriptURLStaticMethod contained createObjectURL revokeObjectURL nextgroup=typescriptFuncCallArg 128309c6f265SBram Moolenaar hi def link typescriptURLStaticMethod Keyword 128409c6f265SBram Moolenaar 128509c6f265SBram Moolenaar syntax keyword typescriptCryptoGlobal containedin=typescriptIdentifierName crypto 128609c6f265SBram Moolenaar hi def link typescriptCryptoGlobal Structure 128709c6f265SBram Moolenaar syntax keyword typescriptSubtleCryptoMethod contained encrypt decrypt sign verify nextgroup=typescriptFuncCallArg 128809c6f265SBram Moolenaar syntax keyword typescriptSubtleCryptoMethod contained digest nextgroup=typescriptFuncCallArg 128909c6f265SBram Moolenaar syntax cluster props add=typescriptSubtleCryptoMethod 129009c6f265SBram Moolenaar hi def link typescriptSubtleCryptoMethod Keyword 129109c6f265SBram Moolenaar syntax keyword typescriptCryptoProp contained subtle 129209c6f265SBram Moolenaar syntax cluster props add=typescriptCryptoProp 129309c6f265SBram Moolenaar hi def link typescriptCryptoProp Keyword 129409c6f265SBram Moolenaar syntax keyword typescriptCryptoMethod contained getRandomValues nextgroup=typescriptFuncCallArg 129509c6f265SBram Moolenaar syntax cluster props add=typescriptCryptoMethod 129609c6f265SBram Moolenaar hi def link typescriptCryptoMethod Keyword 129709c6f265SBram Moolenaar 129809c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Headers Request 129909c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Response 130009c6f265SBram Moolenaar syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName fetch nextgroup=typescriptFuncCallArg 130109c6f265SBram Moolenaar syntax cluster props add=typescriptGlobalMethod 130209c6f265SBram Moolenaar hi def link typescriptGlobalMethod Structure 130309c6f265SBram Moolenaar syntax keyword typescriptHeadersMethod contained append delete get getAll has set nextgroup=typescriptFuncCallArg 130409c6f265SBram Moolenaar syntax cluster props add=typescriptHeadersMethod 130509c6f265SBram Moolenaar hi def link typescriptHeadersMethod Keyword 130609c6f265SBram Moolenaar syntax keyword typescriptRequestProp contained method url headers context referrer 130709c6f265SBram Moolenaar syntax keyword typescriptRequestProp contained mode credentials cache 130809c6f265SBram Moolenaar syntax cluster props add=typescriptRequestProp 130909c6f265SBram Moolenaar hi def link typescriptRequestProp Keyword 131009c6f265SBram Moolenaar syntax keyword typescriptRequestMethod contained clone nextgroup=typescriptFuncCallArg 131109c6f265SBram Moolenaar syntax cluster props add=typescriptRequestMethod 131209c6f265SBram Moolenaar hi def link typescriptRequestMethod Keyword 131309c6f265SBram Moolenaar syntax keyword typescriptResponseProp contained type url status statusText headers 131409c6f265SBram Moolenaar syntax keyword typescriptResponseProp contained redirected 131509c6f265SBram Moolenaar syntax cluster props add=typescriptResponseProp 131609c6f265SBram Moolenaar hi def link typescriptResponseProp Keyword 131709c6f265SBram Moolenaar syntax keyword typescriptResponseMethod contained clone nextgroup=typescriptFuncCallArg 131809c6f265SBram Moolenaar syntax cluster props add=typescriptResponseMethod 131909c6f265SBram Moolenaar hi def link typescriptResponseMethod Keyword 132009c6f265SBram Moolenaar 132109c6f265SBram Moolenaar syntax keyword typescriptServiceWorkerProp contained controller ready 132209c6f265SBram Moolenaar syntax cluster props add=typescriptServiceWorkerProp 132309c6f265SBram Moolenaar hi def link typescriptServiceWorkerProp Keyword 132409c6f265SBram Moolenaar syntax keyword typescriptServiceWorkerMethod contained register getRegistration nextgroup=typescriptFuncCallArg 132509c6f265SBram Moolenaar syntax cluster props add=typescriptServiceWorkerMethod 132609c6f265SBram Moolenaar hi def link typescriptServiceWorkerMethod Keyword 132709c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Cache 132809c6f265SBram Moolenaar syntax keyword typescriptCacheMethod contained match matchAll add addAll put delete nextgroup=typescriptFuncCallArg 132909c6f265SBram Moolenaar syntax keyword typescriptCacheMethod contained keys nextgroup=typescriptFuncCallArg 133009c6f265SBram Moolenaar syntax cluster props add=typescriptCacheMethod 133109c6f265SBram Moolenaar hi def link typescriptCacheMethod Keyword 133209c6f265SBram Moolenaar 133309c6f265SBram Moolenaar syntax keyword typescriptEncodingGlobal containedin=typescriptIdentifierName TextEncoder 133409c6f265SBram Moolenaar syntax keyword typescriptEncodingGlobal containedin=typescriptIdentifierName TextDecoder 133509c6f265SBram Moolenaar hi def link typescriptEncodingGlobal Structure 133609c6f265SBram Moolenaar syntax keyword typescriptEncodingProp contained encoding fatal ignoreBOM 133709c6f265SBram Moolenaar syntax cluster props add=typescriptEncodingProp 133809c6f265SBram Moolenaar hi def link typescriptEncodingProp Keyword 133909c6f265SBram Moolenaar syntax keyword typescriptEncodingMethod contained encode decode nextgroup=typescriptFuncCallArg 134009c6f265SBram Moolenaar syntax cluster props add=typescriptEncodingMethod 134109c6f265SBram Moolenaar hi def link typescriptEncodingMethod Keyword 134209c6f265SBram Moolenaar 134309c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName Geolocation 134409c6f265SBram Moolenaar syntax keyword typescriptGeolocationMethod contained getCurrentPosition watchPosition nextgroup=typescriptFuncCallArg 134509c6f265SBram Moolenaar syntax keyword typescriptGeolocationMethod contained clearWatch nextgroup=typescriptFuncCallArg 134609c6f265SBram Moolenaar syntax cluster props add=typescriptGeolocationMethod 134709c6f265SBram Moolenaar hi def link typescriptGeolocationMethod Keyword 134809c6f265SBram Moolenaar 134909c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName NetworkInformation 135009c6f265SBram Moolenaar syntax keyword typescriptBOMNetworkProp contained downlink downlinkMax effectiveType 135109c6f265SBram Moolenaar syntax keyword typescriptBOMNetworkProp contained rtt type 135209c6f265SBram Moolenaar syntax cluster props add=typescriptBOMNetworkProp 135309c6f265SBram Moolenaar hi def link typescriptBOMNetworkProp Keyword 135409c6f265SBram Moolenaar 135509c6f265SBram Moolenaar syntax keyword typescriptGlobal containedin=typescriptIdentifierName PaymentRequest 135609c6f265SBram Moolenaar syntax keyword typescriptPaymentMethod contained show abort canMakePayment nextgroup=typescriptFuncCallArg 135709c6f265SBram Moolenaar syntax cluster props add=typescriptPaymentMethod 135809c6f265SBram Moolenaar hi def link typescriptPaymentMethod Keyword 135909c6f265SBram Moolenaar syntax keyword typescriptPaymentProp contained shippingAddress shippingOption result 136009c6f265SBram Moolenaar syntax cluster props add=typescriptPaymentProp 136109c6f265SBram Moolenaar hi def link typescriptPaymentProp Keyword 136209c6f265SBram Moolenaar syntax keyword typescriptPaymentEvent contained onshippingaddresschange onshippingoptionchange 136309c6f265SBram Moolenaar hi def link typescriptPaymentEvent Keyword 136409c6f265SBram Moolenaar syntax keyword typescriptPaymentResponseMethod contained complete nextgroup=typescriptFuncCallArg 136509c6f265SBram Moolenaar syntax cluster props add=typescriptPaymentResponseMethod 136609c6f265SBram Moolenaar hi def link typescriptPaymentResponseMethod Keyword 136709c6f265SBram Moolenaar syntax keyword typescriptPaymentResponseProp contained details methodName payerEmail 136809c6f265SBram Moolenaar syntax keyword typescriptPaymentResponseProp contained payerPhone shippingAddress 136909c6f265SBram Moolenaar syntax keyword typescriptPaymentResponseProp contained shippingOption 137009c6f265SBram Moolenaar syntax cluster props add=typescriptPaymentResponseProp 137109c6f265SBram Moolenaar hi def link typescriptPaymentResponseProp Keyword 137209c6f265SBram Moolenaar syntax keyword typescriptPaymentAddressProp contained addressLine careOf city country 137309c6f265SBram Moolenaar syntax keyword typescriptPaymentAddressProp contained country dependentLocality languageCode 137409c6f265SBram Moolenaar syntax keyword typescriptPaymentAddressProp contained organization phone postalCode 137509c6f265SBram Moolenaar syntax keyword typescriptPaymentAddressProp contained recipient region sortingCode 137609c6f265SBram Moolenaar syntax cluster props add=typescriptPaymentAddressProp 137709c6f265SBram Moolenaar hi def link typescriptPaymentAddressProp Keyword 137809c6f265SBram Moolenaar syntax keyword typescriptPaymentShippingOptionProp contained id label amount selected 137909c6f265SBram Moolenaar syntax cluster props add=typescriptPaymentShippingOptionProp 138009c6f265SBram Moolenaar hi def link typescriptPaymentShippingOptionProp Keyword 138109c6f265SBram Moolenaar 138209c6f265SBram Moolenaar syntax keyword typescriptDOMNodeProp contained attributes baseURI baseURIObject childNodes 138309c6f265SBram Moolenaar syntax keyword typescriptDOMNodeProp contained firstChild lastChild localName namespaceURI 138409c6f265SBram Moolenaar syntax keyword typescriptDOMNodeProp contained nextSibling nodeName nodePrincipal 138509c6f265SBram Moolenaar syntax keyword typescriptDOMNodeProp contained nodeType nodeValue ownerDocument parentElement 138609c6f265SBram Moolenaar syntax keyword typescriptDOMNodeProp contained parentNode prefix previousSibling textContent 138709c6f265SBram Moolenaar syntax cluster props add=typescriptDOMNodeProp 138809c6f265SBram Moolenaar hi def link typescriptDOMNodeProp Keyword 138909c6f265SBram Moolenaar syntax keyword typescriptDOMNodeMethod contained appendChild cloneNode compareDocumentPosition nextgroup=typescriptFuncCallArg 139009c6f265SBram Moolenaar syntax keyword typescriptDOMNodeMethod contained getUserData hasAttributes hasChildNodes nextgroup=typescriptFuncCallArg 139109c6f265SBram Moolenaar syntax keyword typescriptDOMNodeMethod contained insertBefore isDefaultNamespace isEqualNode nextgroup=typescriptFuncCallArg 139209c6f265SBram Moolenaar syntax keyword typescriptDOMNodeMethod contained isSameNode isSupported lookupNamespaceURI nextgroup=typescriptFuncCallArg 139309c6f265SBram Moolenaar syntax keyword typescriptDOMNodeMethod contained lookupPrefix normalize removeChild nextgroup=typescriptFuncCallArg 139409c6f265SBram Moolenaar syntax keyword typescriptDOMNodeMethod contained replaceChild setUserData nextgroup=typescriptFuncCallArg 139509c6f265SBram Moolenaar syntax match typescriptDOMNodeMethod contained /contains/ 139609c6f265SBram Moolenaar syntax cluster props add=typescriptDOMNodeMethod 139709c6f265SBram Moolenaar hi def link typescriptDOMNodeMethod Keyword 139809c6f265SBram Moolenaar syntax keyword typescriptDOMNodeType contained ELEMENT_NODE ATTRIBUTE_NODE TEXT_NODE 139909c6f265SBram Moolenaar syntax keyword typescriptDOMNodeType contained CDATA_SECTION_NODEN_NODE ENTITY_REFERENCE_NODE 140009c6f265SBram Moolenaar syntax keyword typescriptDOMNodeType contained ENTITY_NODE PROCESSING_INSTRUCTION_NODEN_NODE 140109c6f265SBram Moolenaar syntax keyword typescriptDOMNodeType contained COMMENT_NODE DOCUMENT_NODE DOCUMENT_TYPE_NODE 140209c6f265SBram Moolenaar syntax keyword typescriptDOMNodeType contained DOCUMENT_FRAGMENT_NODE NOTATION_NODE 140309c6f265SBram Moolenaar hi def link typescriptDOMNodeType Keyword 140409c6f265SBram Moolenaar 140509c6f265SBram Moolenaar syntax keyword typescriptDOMElemAttrs contained accessKey clientHeight clientLeft 140609c6f265SBram Moolenaar syntax keyword typescriptDOMElemAttrs contained clientTop clientWidth id innerHTML 140709c6f265SBram Moolenaar syntax keyword typescriptDOMElemAttrs contained length onafterscriptexecute onbeforescriptexecute 140809c6f265SBram Moolenaar syntax keyword typescriptDOMElemAttrs contained oncopy oncut onpaste onwheel scrollHeight 140909c6f265SBram Moolenaar syntax keyword typescriptDOMElemAttrs contained scrollLeft scrollTop scrollWidth tagName 141009c6f265SBram Moolenaar syntax keyword typescriptDOMElemAttrs contained classList className name outerHTML 141109c6f265SBram Moolenaar syntax keyword typescriptDOMElemAttrs contained style 141209c6f265SBram Moolenaar hi def link typescriptDOMElemAttrs Keyword 141309c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained getAttributeNS getAttributeNode getAttributeNodeNS 141409c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained getBoundingClientRect getClientRects 141509c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained getElementsByClassName getElementsByTagName 141609c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained getElementsByTagNameNS hasAttribute 141709c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained hasAttributeNS insertAdjacentHTML 141809c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained matches querySelector querySelectorAll 141909c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained removeAttribute removeAttributeNS 142009c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained removeAttributeNode requestFullscreen 142109c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained requestPointerLock scrollIntoView 142209c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained setAttribute setAttributeNS setAttributeNode 142309c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained setAttributeNodeNS setCapture supports 142409c6f265SBram Moolenaar syntax keyword typescriptDOMElemFuncs contained getAttribute 142509c6f265SBram Moolenaar hi def link typescriptDOMElemFuncs Keyword 142609c6f265SBram Moolenaar 142709c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained activeElement body cookie defaultView 142809c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained designMode dir domain embeds forms head 142909c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained images lastModified links location plugins 143009c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained postMessage readyState referrer registerElement 143109c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained scripts styleSheets title vlinkColor 143209c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained xmlEncoding characterSet compatMode 143309c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained contentType currentScript doctype documentElement 143409c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained documentURI documentURIObject firstChild 143509c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained implementation lastStyleSheetSet namespaceURI 143609c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained nodePrincipal ononline pointerLockElement 143709c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained popupNode preferredStyleSheetSet selectedStyleSheetSet 143809c6f265SBram Moolenaar syntax keyword typescriptDOMDocProp contained styleSheetSets textContent tooltipNode 143909c6f265SBram Moolenaar syntax cluster props add=typescriptDOMDocProp 144009c6f265SBram Moolenaar hi def link typescriptDOMDocProp Keyword 144109c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained caretPositionFromPoint close createNodeIterator nextgroup=typescriptFuncCallArg 144209c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained createRange createTreeWalker elementFromPoint nextgroup=typescriptFuncCallArg 144309c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained getElementsByName adoptNode createAttribute nextgroup=typescriptFuncCallArg 144409c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained createCDATASection createComment createDocumentFragment nextgroup=typescriptFuncCallArg 144509c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained createElement createElementNS createEvent nextgroup=typescriptFuncCallArg 144609c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained createExpression createNSResolver nextgroup=typescriptFuncCallArg 144709c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained createProcessingInstruction createTextNode nextgroup=typescriptFuncCallArg 144809c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained enableStyleSheetsForSet evaluate execCommand nextgroup=typescriptFuncCallArg 144909c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained exitPointerLock getBoxObjectFor getElementById nextgroup=typescriptFuncCallArg 145009c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained getElementsByClassName getElementsByTagName nextgroup=typescriptFuncCallArg 145109c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained getElementsByTagNameNS getSelection nextgroup=typescriptFuncCallArg 145209c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained hasFocus importNode loadOverlay open nextgroup=typescriptFuncCallArg 145309c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained queryCommandSupported querySelector nextgroup=typescriptFuncCallArg 145409c6f265SBram Moolenaar syntax keyword typescriptDOMDocMethod contained querySelectorAll write writeln nextgroup=typescriptFuncCallArg 145509c6f265SBram Moolenaar syntax cluster props add=typescriptDOMDocMethod 145609c6f265SBram Moolenaar hi def link typescriptDOMDocMethod Keyword 145709c6f265SBram Moolenaar 145809c6f265SBram Moolenaar syntax keyword typescriptDOMEventTargetMethod contained addEventListener removeEventListener nextgroup=typescriptEventFuncCallArg 145909c6f265SBram Moolenaar syntax keyword typescriptDOMEventTargetMethod contained dispatchEvent waitUntil nextgroup=typescriptEventFuncCallArg 146009c6f265SBram Moolenaar syntax cluster props add=typescriptDOMEventTargetMethod 146109c6f265SBram Moolenaar hi def link typescriptDOMEventTargetMethod Keyword 146209c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName AnimationEvent 146309c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName AudioProcessingEvent 146409c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BeforeInputEvent 146509c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BeforeUnloadEvent 146609c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BlobEvent 146709c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ClipboardEvent 146809c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CloseEvent 146909c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CompositionEvent 147009c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CSSFontFaceLoadEvent 147109c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CustomEvent 147209c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceLightEvent 147309c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceMotionEvent 147409c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceOrientationEvent 147509c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceProximityEvent 147609c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DOMTransactionEvent 147709c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DragEvent 147809c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName EditingBeforeInputEvent 147909c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ErrorEvent 148009c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName FocusEvent 148109c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName GamepadEvent 148209c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName HashChangeEvent 148309c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName IDBVersionChangeEvent 148409c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName KeyboardEvent 148509c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MediaStreamEvent 148609c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MessageEvent 148709c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MouseEvent 148809c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MutationEvent 148909c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName OfflineAudioCompletionEvent 149009c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PageTransitionEvent 149109c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PointerEvent 149209c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PopStateEvent 149309c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ProgressEvent 149409c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName RelatedEvent 149509c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName RTCPeerConnectionIceEvent 149609c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SensorEvent 149709c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName StorageEvent 149809c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SVGEvent 149909c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SVGZoomEvent 150009c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TimeEvent 150109c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TouchEvent 150209c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TrackEvent 150309c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TransitionEvent 150409c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName UIEvent 150509c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName UserProximityEvent 150609c6f265SBram Moolenaar syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName WheelEvent 150709c6f265SBram Moolenaar hi def link typescriptDOMEventCons Structure 150809c6f265SBram Moolenaar syntax keyword typescriptDOMEventProp contained bubbles cancelable currentTarget defaultPrevented 150909c6f265SBram Moolenaar syntax keyword typescriptDOMEventProp contained eventPhase target timeStamp type isTrusted 151009c6f265SBram Moolenaar syntax keyword typescriptDOMEventProp contained isReload 151109c6f265SBram Moolenaar syntax cluster props add=typescriptDOMEventProp 151209c6f265SBram Moolenaar hi def link typescriptDOMEventProp Keyword 151309c6f265SBram Moolenaar syntax keyword typescriptDOMEventMethod contained initEvent preventDefault stopImmediatePropagation nextgroup=typescriptEventFuncCallArg 151409c6f265SBram Moolenaar syntax keyword typescriptDOMEventMethod contained stopPropagation respondWith default nextgroup=typescriptEventFuncCallArg 151509c6f265SBram Moolenaar syntax cluster props add=typescriptDOMEventMethod 151609c6f265SBram Moolenaar hi def link typescriptDOMEventMethod Keyword 151709c6f265SBram Moolenaar 151809c6f265SBram Moolenaar syntax keyword typescriptDOMStorage contained sessionStorage localStorage 151909c6f265SBram Moolenaar hi def link typescriptDOMStorage Keyword 152009c6f265SBram Moolenaar syntax keyword typescriptDOMStorageProp contained length 152109c6f265SBram Moolenaar syntax cluster props add=typescriptDOMStorageProp 152209c6f265SBram Moolenaar hi def link typescriptDOMStorageProp Keyword 152309c6f265SBram Moolenaar syntax keyword typescriptDOMStorageMethod contained getItem key setItem removeItem nextgroup=typescriptFuncCallArg 152409c6f265SBram Moolenaar syntax keyword typescriptDOMStorageMethod contained clear nextgroup=typescriptFuncCallArg 152509c6f265SBram Moolenaar syntax cluster props add=typescriptDOMStorageMethod 152609c6f265SBram Moolenaar hi def link typescriptDOMStorageMethod Keyword 152709c6f265SBram Moolenaar 152809c6f265SBram Moolenaar syntax keyword typescriptDOMFormProp contained acceptCharset action elements encoding 152909c6f265SBram Moolenaar syntax keyword typescriptDOMFormProp contained enctype length method name target 153009c6f265SBram Moolenaar syntax cluster props add=typescriptDOMFormProp 153109c6f265SBram Moolenaar hi def link typescriptDOMFormProp Keyword 153209c6f265SBram Moolenaar syntax keyword typescriptDOMFormMethod contained reportValidity reset submit nextgroup=typescriptFuncCallArg 153309c6f265SBram Moolenaar syntax cluster props add=typescriptDOMFormMethod 153409c6f265SBram Moolenaar hi def link typescriptDOMFormMethod Keyword 153509c6f265SBram Moolenaar 153609c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained alignContent alignItems alignSelf animation 153709c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained animationDelay animationDirection animationDuration 153809c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained animationFillMode animationIterationCount 153909c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained animationName animationPlayState animationTimingFunction 154009c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained appearance backfaceVisibility background 154109c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained backgroundAttachment backgroundBlendMode 154209c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained backgroundClip backgroundColor backgroundImage 154309c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained backgroundOrigin backgroundPosition backgroundRepeat 154409c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained backgroundSize border borderBottom borderBottomColor 154509c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderBottomLeftRadius borderBottomRightRadius 154609c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderBottomStyle borderBottomWidth borderCollapse 154709c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderColor borderImage borderImageOutset 154809c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderImageRepeat borderImageSlice borderImageSource 154909c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderImageWidth borderLeft borderLeftColor 155009c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderLeftStyle borderLeftWidth borderRadius 155109c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderRight borderRightColor borderRightStyle 155209c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderRightWidth borderSpacing borderStyle 155309c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderTop borderTopColor borderTopLeftRadius 155409c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderTopRightRadius borderTopStyle borderTopWidth 155509c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained borderWidth bottom boxDecorationBreak 155609c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained boxShadow boxSizing breakAfter breakBefore 155709c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained breakInside captionSide caretColor caretShape 155809c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained caret clear clip clipPath color columns 155909c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained columnCount columnFill columnGap columnRule 156009c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained columnRuleColor columnRuleStyle columnRuleWidth 156109c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained columnSpan columnWidth content counterIncrement 156209c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained counterReset cursor direction display 156309c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained emptyCells flex flexBasis flexDirection 156409c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained flexFlow flexGrow flexShrink flexWrap 156509c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained float font fontFamily fontFeatureSettings 156609c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained fontKerning fontLanguageOverride fontSize 156709c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained fontSizeAdjust fontStretch fontStyle fontSynthesis 156809c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained fontVariant fontVariantAlternates fontVariantCaps 156909c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained fontVariantEastAsian fontVariantLigatures 157009c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained fontVariantNumeric fontVariantPosition 157109c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained fontWeight grad grid gridArea gridAutoColumns 157209c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained gridAutoFlow gridAutoPosition gridAutoRows 157309c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained gridColumn gridColumnStart gridColumnEnd 157409c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained gridRow gridRowStart gridRowEnd gridTemplate 157509c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained gridTemplateAreas gridTemplateRows gridTemplateColumns 157609c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained height hyphens imageRendering imageResolution 157709c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained imageOrientation imeMode inherit justifyContent 157809c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained left letterSpacing lineBreak lineHeight 157909c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained listStyle listStyleImage listStylePosition 158009c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained listStyleType margin marginBottom marginLeft 158109c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained marginRight marginTop marks mask maskType 158209c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained maxHeight maxWidth minHeight minWidth 158309c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained mixBlendMode objectFit objectPosition 158409c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained opacity order orphans outline outlineColor 158509c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained outlineOffset outlineStyle outlineWidth 158609c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained overflow overflowWrap overflowX overflowY 158709c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained overflowClipBox padding paddingBottom 158809c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained paddingLeft paddingRight paddingTop pageBreakAfter 158909c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained pageBreakBefore pageBreakInside perspective 159009c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained perspectiveOrigin pointerEvents position 159109c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained quotes resize right shapeImageThreshold 159209c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained shapeMargin shapeOutside tableLayout tabSize 159309c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained textAlign textAlignLast textCombineHorizontal 159409c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained textDecoration textDecorationColor textDecorationLine 159509c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained textDecorationStyle textIndent textOrientation 159609c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained textOverflow textRendering textShadow 159709c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained textTransform textUnderlinePosition top 159809c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained touchAction transform transformOrigin 159909c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained transformStyle transition transitionDelay 160009c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained transitionDuration transitionProperty 160109c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained transitionTimingFunction unicodeBidi unicodeRange 160209c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained userSelect userZoom verticalAlign visibility 160309c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained whiteSpace width willChange wordBreak 160409c6f265SBram Moolenaar syntax keyword typescriptDOMStyle contained wordSpacing wordWrap writingMode zIndex 160509c6f265SBram Moolenaar hi def link typescriptDOMStyle Keyword 160609c6f265SBram Moolenaar 160709c6f265SBram Moolenaar 160809c6f265SBram Moolenaar 160909c6f265SBram Moolenaar let typescript_props = 1 161009c6f265SBram Moolenaar syntax keyword typescriptAnimationEvent contained animationend animationiteration 161109c6f265SBram Moolenaar syntax keyword typescriptAnimationEvent contained animationstart beginEvent endEvent 161209c6f265SBram Moolenaar syntax keyword typescriptAnimationEvent contained repeatEvent 161309c6f265SBram Moolenaar syntax cluster events add=typescriptAnimationEvent 161409c6f265SBram Moolenaar hi def link typescriptAnimationEvent Title 161509c6f265SBram Moolenaar syntax keyword typescriptCSSEvent contained CssRuleViewRefreshed CssRuleViewChanged 161609c6f265SBram Moolenaar syntax keyword typescriptCSSEvent contained CssRuleViewCSSLinkClicked transitionend 161709c6f265SBram Moolenaar syntax cluster events add=typescriptCSSEvent 161809c6f265SBram Moolenaar hi def link typescriptCSSEvent Title 161909c6f265SBram Moolenaar syntax keyword typescriptDatabaseEvent contained blocked complete error success upgradeneeded 162009c6f265SBram Moolenaar syntax keyword typescriptDatabaseEvent contained versionchange 162109c6f265SBram Moolenaar syntax cluster events add=typescriptDatabaseEvent 162209c6f265SBram Moolenaar hi def link typescriptDatabaseEvent Title 162309c6f265SBram Moolenaar syntax keyword typescriptDocumentEvent contained DOMLinkAdded DOMLinkRemoved DOMMetaAdded 162409c6f265SBram Moolenaar syntax keyword typescriptDocumentEvent contained DOMMetaRemoved DOMWillOpenModalDialog 162509c6f265SBram Moolenaar syntax keyword typescriptDocumentEvent contained DOMModalDialogClosed unload 162609c6f265SBram Moolenaar syntax cluster events add=typescriptDocumentEvent 162709c6f265SBram Moolenaar hi def link typescriptDocumentEvent Title 162809c6f265SBram Moolenaar syntax keyword typescriptDOMMutationEvent contained DOMAttributeNameChanged DOMAttrModified 162909c6f265SBram Moolenaar syntax keyword typescriptDOMMutationEvent contained DOMCharacterDataModified DOMContentLoaded 163009c6f265SBram Moolenaar syntax keyword typescriptDOMMutationEvent contained DOMElementNameChanged DOMNodeInserted 163109c6f265SBram Moolenaar syntax keyword typescriptDOMMutationEvent contained DOMNodeInsertedIntoDocument DOMNodeRemoved 163209c6f265SBram Moolenaar syntax keyword typescriptDOMMutationEvent contained DOMNodeRemovedFromDocument DOMSubtreeModified 163309c6f265SBram Moolenaar syntax cluster events add=typescriptDOMMutationEvent 163409c6f265SBram Moolenaar hi def link typescriptDOMMutationEvent Title 163509c6f265SBram Moolenaar syntax keyword typescriptDragEvent contained drag dragdrop dragend dragenter dragexit 163609c6f265SBram Moolenaar syntax keyword typescriptDragEvent contained draggesture dragleave dragover dragstart 163709c6f265SBram Moolenaar syntax keyword typescriptDragEvent contained drop 163809c6f265SBram Moolenaar syntax cluster events add=typescriptDragEvent 163909c6f265SBram Moolenaar hi def link typescriptDragEvent Title 164009c6f265SBram Moolenaar syntax keyword typescriptElementEvent contained invalid overflow underflow DOMAutoComplete 164109c6f265SBram Moolenaar syntax keyword typescriptElementEvent contained command commandupdate 164209c6f265SBram Moolenaar syntax cluster events add=typescriptElementEvent 164309c6f265SBram Moolenaar hi def link typescriptElementEvent Title 164409c6f265SBram Moolenaar syntax keyword typescriptFocusEvent contained blur change DOMFocusIn DOMFocusOut focus 164509c6f265SBram Moolenaar syntax keyword typescriptFocusEvent contained focusin focusout 164609c6f265SBram Moolenaar syntax cluster events add=typescriptFocusEvent 164709c6f265SBram Moolenaar hi def link typescriptFocusEvent Title 164809c6f265SBram Moolenaar syntax keyword typescriptFormEvent contained reset submit 164909c6f265SBram Moolenaar syntax cluster events add=typescriptFormEvent 165009c6f265SBram Moolenaar hi def link typescriptFormEvent Title 165109c6f265SBram Moolenaar syntax keyword typescriptFrameEvent contained DOMFrameContentLoaded 165209c6f265SBram Moolenaar syntax cluster events add=typescriptFrameEvent 165309c6f265SBram Moolenaar hi def link typescriptFrameEvent Title 165409c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained click contextmenu DOMMouseScroll 165509c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained dblclick gamepadconnected gamepaddisconnected 165609c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained keydown keypress keyup MozGamepadButtonDown 165709c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained MozGamepadButtonUp mousedown mouseenter 165809c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained mouseleave mousemove mouseout 165909c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained mouseover mouseup mousewheel MozMousePixelScroll 166009c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained pointerlockchange pointerlockerror 166109c6f265SBram Moolenaar syntax keyword typescriptInputDeviceEvent contained wheel 166209c6f265SBram Moolenaar syntax cluster events add=typescriptInputDeviceEvent 166309c6f265SBram Moolenaar hi def link typescriptInputDeviceEvent Title 166409c6f265SBram Moolenaar syntax keyword typescriptMediaEvent contained audioprocess canplay canplaythrough 166509c6f265SBram Moolenaar syntax keyword typescriptMediaEvent contained durationchange emptied ended ended loadeddata 166609c6f265SBram Moolenaar syntax keyword typescriptMediaEvent contained loadedmetadata MozAudioAvailable pause 166709c6f265SBram Moolenaar syntax keyword typescriptMediaEvent contained play playing ratechange seeked seeking 166809c6f265SBram Moolenaar syntax keyword typescriptMediaEvent contained stalled suspend timeupdate volumechange 166909c6f265SBram Moolenaar syntax keyword typescriptMediaEvent contained waiting complete 167009c6f265SBram Moolenaar syntax cluster events add=typescriptMediaEvent 167109c6f265SBram Moolenaar hi def link typescriptMediaEvent Title 167209c6f265SBram Moolenaar syntax keyword typescriptMenuEvent contained DOMMenuItemActive DOMMenuItemInactive 167309c6f265SBram Moolenaar syntax cluster events add=typescriptMenuEvent 167409c6f265SBram Moolenaar hi def link typescriptMenuEvent Title 167509c6f265SBram Moolenaar syntax keyword typescriptNetworkEvent contained datachange dataerror disabled enabled 167609c6f265SBram Moolenaar syntax keyword typescriptNetworkEvent contained offline online statuschange connectionInfoUpdate 167709c6f265SBram Moolenaar syntax cluster events add=typescriptNetworkEvent 167809c6f265SBram Moolenaar hi def link typescriptNetworkEvent Title 167909c6f265SBram Moolenaar syntax keyword typescriptProgressEvent contained abort error load loadend loadstart 168009c6f265SBram Moolenaar syntax keyword typescriptProgressEvent contained progress timeout uploadprogress 168109c6f265SBram Moolenaar syntax cluster events add=typescriptProgressEvent 168209c6f265SBram Moolenaar hi def link typescriptProgressEvent Title 168309c6f265SBram Moolenaar syntax keyword typescriptResourceEvent contained cached error load 168409c6f265SBram Moolenaar syntax cluster events add=typescriptResourceEvent 168509c6f265SBram Moolenaar hi def link typescriptResourceEvent Title 168609c6f265SBram Moolenaar syntax keyword typescriptScriptEvent contained afterscriptexecute beforescriptexecute 168709c6f265SBram Moolenaar syntax cluster events add=typescriptScriptEvent 168809c6f265SBram Moolenaar hi def link typescriptScriptEvent Title 168909c6f265SBram Moolenaar syntax keyword typescriptSensorEvent contained compassneedscalibration devicelight 169009c6f265SBram Moolenaar syntax keyword typescriptSensorEvent contained devicemotion deviceorientation deviceproximity 169109c6f265SBram Moolenaar syntax keyword typescriptSensorEvent contained orientationchange userproximity 169209c6f265SBram Moolenaar syntax cluster events add=typescriptSensorEvent 169309c6f265SBram Moolenaar hi def link typescriptSensorEvent Title 169409c6f265SBram Moolenaar syntax keyword typescriptSessionHistoryEvent contained pagehide pageshow popstate 169509c6f265SBram Moolenaar syntax cluster events add=typescriptSessionHistoryEvent 169609c6f265SBram Moolenaar hi def link typescriptSessionHistoryEvent Title 169709c6f265SBram Moolenaar syntax keyword typescriptStorageEvent contained change storage 169809c6f265SBram Moolenaar syntax cluster events add=typescriptStorageEvent 169909c6f265SBram Moolenaar hi def link typescriptStorageEvent Title 170009c6f265SBram Moolenaar syntax keyword typescriptSVGEvent contained SVGAbort SVGError SVGLoad SVGResize SVGScroll 170109c6f265SBram Moolenaar syntax keyword typescriptSVGEvent contained SVGUnload SVGZoom 170209c6f265SBram Moolenaar syntax cluster events add=typescriptSVGEvent 170309c6f265SBram Moolenaar hi def link typescriptSVGEvent Title 170409c6f265SBram Moolenaar syntax keyword typescriptTabEvent contained visibilitychange 170509c6f265SBram Moolenaar syntax cluster events add=typescriptTabEvent 170609c6f265SBram Moolenaar hi def link typescriptTabEvent Title 170709c6f265SBram Moolenaar syntax keyword typescriptTextEvent contained compositionend compositionstart compositionupdate 170809c6f265SBram Moolenaar syntax keyword typescriptTextEvent contained copy cut paste select text 170909c6f265SBram Moolenaar syntax cluster events add=typescriptTextEvent 171009c6f265SBram Moolenaar hi def link typescriptTextEvent Title 171109c6f265SBram Moolenaar syntax keyword typescriptTouchEvent contained touchcancel touchend touchenter touchleave 171209c6f265SBram Moolenaar syntax keyword typescriptTouchEvent contained touchmove touchstart 171309c6f265SBram Moolenaar syntax cluster events add=typescriptTouchEvent 171409c6f265SBram Moolenaar hi def link typescriptTouchEvent Title 171509c6f265SBram Moolenaar syntax keyword typescriptUpdateEvent contained checking downloading error noupdate 171609c6f265SBram Moolenaar syntax keyword typescriptUpdateEvent contained obsolete updateready 171709c6f265SBram Moolenaar syntax cluster events add=typescriptUpdateEvent 171809c6f265SBram Moolenaar hi def link typescriptUpdateEvent Title 171909c6f265SBram Moolenaar syntax keyword typescriptValueChangeEvent contained hashchange input readystatechange 172009c6f265SBram Moolenaar syntax cluster events add=typescriptValueChangeEvent 172109c6f265SBram Moolenaar hi def link typescriptValueChangeEvent Title 172209c6f265SBram Moolenaar syntax keyword typescriptViewEvent contained fullscreen fullscreenchange fullscreenerror 172309c6f265SBram Moolenaar syntax keyword typescriptViewEvent contained resize scroll 172409c6f265SBram Moolenaar syntax cluster events add=typescriptViewEvent 172509c6f265SBram Moolenaar hi def link typescriptViewEvent Title 172609c6f265SBram Moolenaar syntax keyword typescriptWebsocketEvent contained close error message open 172709c6f265SBram Moolenaar syntax cluster events add=typescriptWebsocketEvent 172809c6f265SBram Moolenaar hi def link typescriptWebsocketEvent Title 172909c6f265SBram Moolenaar syntax keyword typescriptWindowEvent contained DOMWindowCreated DOMWindowClose DOMTitleChanged 173009c6f265SBram Moolenaar syntax cluster events add=typescriptWindowEvent 173109c6f265SBram Moolenaar hi def link typescriptWindowEvent Title 173209c6f265SBram Moolenaar syntax keyword typescriptUncategorizedEvent contained beforeunload message open show 173309c6f265SBram Moolenaar syntax cluster events add=typescriptUncategorizedEvent 173409c6f265SBram Moolenaar hi def link typescriptUncategorizedEvent Title 173509c6f265SBram Moolenaar syntax keyword typescriptServiceWorkerEvent contained install activate fetch 173609c6f265SBram Moolenaar syntax cluster events add=typescriptServiceWorkerEvent 173709c6f265SBram Moolenaar hi def link typescriptServiceWorkerEvent Title 173809c6f265SBram Moolenaar 173909c6f265SBram Moolenaar 174009c6f265SBram Moolenaarendif 174109c6f265SBram Moolenaar 174209c6f265SBram Moolenaar" patch 174309c6f265SBram Moolenaar" patch for generated code 174409c6f265SBram Moolenaarsyntax keyword typescriptGlobal Promise 174509c6f265SBram Moolenaar \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline 174609c6f265SBram Moolenaarsyntax keyword typescriptGlobal Map WeakMap 174709c6f265SBram Moolenaar \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline 174809c6f265SBram Moolenaar 174909c6f265SBram Moolenaarsyntax keyword typescriptConstructor contained constructor 175009c6f265SBram Moolenaar \ nextgroup=@typescriptCallSignature 175109c6f265SBram Moolenaar \ skipwhite skipempty 175209c6f265SBram Moolenaar 175309c6f265SBram Moolenaar 175409c6f265SBram Moolenaarsyntax cluster memberNextGroup contains=typescriptMemberOptionality,typescriptTypeAnnotation,@typescriptCallSignature 175509c6f265SBram Moolenaar 17563132cdddSBram Moolenaarsyntax match typescriptMember /#\?\K\k*/ 175709c6f265SBram Moolenaar \ nextgroup=@memberNextGroup 175809c6f265SBram Moolenaar \ contained skipwhite 175909c6f265SBram Moolenaar 176009c6f265SBram Moolenaarsyntax match typescriptMethodAccessor contained /\v(get|set)\s\K/me=e-1 176109c6f265SBram Moolenaar \ nextgroup=@typescriptMembers 176209c6f265SBram Moolenaar 176309c6f265SBram Moolenaarsyntax cluster typescriptPropertyMemberDeclaration contains= 176409c6f265SBram Moolenaar \ typescriptClassStatic, 176509c6f265SBram Moolenaar \ typescriptAccessibilityModifier, 176609c6f265SBram Moolenaar \ typescriptReadonlyModifier, 176709c6f265SBram Moolenaar \ typescriptMethodAccessor, 176809c6f265SBram Moolenaar \ @typescriptMembers 176909c6f265SBram Moolenaar " \ typescriptMemberVariableDeclaration 177009c6f265SBram Moolenaar 177109c6f265SBram Moolenaarsyntax match typescriptMemberOptionality /?\|!/ contained 177209c6f265SBram Moolenaar \ nextgroup=typescriptTypeAnnotation,@typescriptCallSignature 177309c6f265SBram Moolenaar \ skipwhite skipempty 177409c6f265SBram Moolenaar 177509c6f265SBram Moolenaarsyntax cluster typescriptMembers contains=typescriptMember,typescriptStringMember,typescriptComputedMember 177609c6f265SBram Moolenaar 177709c6f265SBram Moolenaarsyntax keyword typescriptClassStatic static 177809c6f265SBram Moolenaar \ nextgroup=@typescriptMembers,typescriptAsyncFuncKeyword,typescriptReadonlyModifier 177909c6f265SBram Moolenaar \ skipwhite contained 178009c6f265SBram Moolenaar 178109c6f265SBram Moolenaarsyntax keyword typescriptAccessibilityModifier public private protected contained 178209c6f265SBram Moolenaar 178309c6f265SBram Moolenaarsyntax keyword typescriptReadonlyModifier readonly contained 178409c6f265SBram Moolenaar 178509c6f265SBram Moolenaarsyntax region typescriptStringMember contained 178609c6f265SBram Moolenaar \ start=/\z(["']\)/ skip=/\\\\\|\\\z1\|\\\n/ end=/\z1/ 178709c6f265SBram Moolenaar \ nextgroup=@memberNextGroup 178809c6f265SBram Moolenaar \ skipwhite skipempty 178909c6f265SBram Moolenaar 179009c6f265SBram Moolenaarsyntax region typescriptComputedMember contained matchgroup=typescriptProperty 179109c6f265SBram Moolenaar \ start=/\[/rs=s+1 end=/]/ 179209c6f265SBram Moolenaar \ contains=@typescriptValue,typescriptMember,typescriptMappedIn 179309c6f265SBram Moolenaar \ nextgroup=@memberNextGroup 179409c6f265SBram Moolenaar \ skipwhite skipempty 179509c6f265SBram Moolenaar 179609c6f265SBram Moolenaar"don't add typescriptMembers to nextgroup, let outer scope match it 179709c6f265SBram Moolenaar" so we won't match abstract method outside abstract class 179809c6f265SBram Moolenaarsyntax keyword typescriptAbstract abstract 179909c6f265SBram Moolenaar \ nextgroup=typescriptClassKeyword 180009c6f265SBram Moolenaar \ skipwhite skipnl 180109c6f265SBram Moolenaarsyntax keyword typescriptClassKeyword class 180209c6f265SBram Moolenaar \ nextgroup=typescriptClassName,typescriptClassExtends,typescriptClassBlock 180309c6f265SBram Moolenaar \ skipwhite 180409c6f265SBram Moolenaar 180509c6f265SBram Moolenaarsyntax match typescriptClassName contained /\K\k*/ 180609c6f265SBram Moolenaar \ nextgroup=typescriptClassBlock,typescriptClassExtends,typescriptClassTypeParameter 180709c6f265SBram Moolenaar \ skipwhite skipnl 180809c6f265SBram Moolenaar 180909c6f265SBram Moolenaarsyntax region typescriptClassTypeParameter 181009c6f265SBram Moolenaar \ start=/</ end=/>/ 18113132cdddSBram Moolenaar \ contains=@typescriptTypeParameterCluster 181209c6f265SBram Moolenaar \ nextgroup=typescriptClassBlock,typescriptClassExtends 181309c6f265SBram Moolenaar \ contained skipwhite skipnl 181409c6f265SBram Moolenaar 181509c6f265SBram Moolenaarsyntax keyword typescriptClassExtends contained extends implements nextgroup=typescriptClassHeritage skipwhite skipnl 181609c6f265SBram Moolenaar 181709c6f265SBram Moolenaarsyntax match typescriptClassHeritage contained /\v(\k|\.|\(|\))+/ 181809c6f265SBram Moolenaar \ nextgroup=typescriptClassBlock,typescriptClassExtends,typescriptMixinComma,typescriptClassTypeArguments 181909c6f265SBram Moolenaar \ contains=@typescriptValue 182009c6f265SBram Moolenaar \ skipwhite skipnl 182109c6f265SBram Moolenaar \ contained 182209c6f265SBram Moolenaar 182309c6f265SBram Moolenaarsyntax region typescriptClassTypeArguments matchgroup=typescriptTypeBrackets 182409c6f265SBram Moolenaar \ start=/</ end=/>/ 182509c6f265SBram Moolenaar \ contains=@typescriptType 182609c6f265SBram Moolenaar \ nextgroup=typescriptClassExtends,typescriptClassBlock,typescriptMixinComma 182709c6f265SBram Moolenaar \ contained skipwhite skipnl 182809c6f265SBram Moolenaar 182909c6f265SBram Moolenaarsyntax match typescriptMixinComma /,/ contained nextgroup=typescriptClassHeritage skipwhite skipnl 183009c6f265SBram Moolenaar 183109c6f265SBram Moolenaar" we need add arrowFunc to class block for high order arrow func 183209c6f265SBram Moolenaar" see test case 183309c6f265SBram Moolenaarsyntax region typescriptClassBlock matchgroup=typescriptBraces start=/{/ end=/}/ 183409c6f265SBram Moolenaar \ contains=@typescriptPropertyMemberDeclaration,typescriptAbstract,@typescriptComments,typescriptBlock,typescriptAssign,typescriptDecorator,typescriptAsyncFuncKeyword,typescriptArrowFunc 183509c6f265SBram Moolenaar \ contained fold 183609c6f265SBram Moolenaar 183709c6f265SBram Moolenaarsyntax keyword typescriptInterfaceKeyword interface nextgroup=typescriptInterfaceName skipwhite 183809c6f265SBram Moolenaarsyntax match typescriptInterfaceName contained /\k\+/ 183909c6f265SBram Moolenaar \ nextgroup=typescriptObjectType,typescriptInterfaceExtends,typescriptInterfaceTypeParameter 184009c6f265SBram Moolenaar \ skipwhite skipnl 184109c6f265SBram Moolenaarsyntax region typescriptInterfaceTypeParameter 184209c6f265SBram Moolenaar \ start=/</ end=/>/ 18433132cdddSBram Moolenaar \ contains=@typescriptTypeParameterCluster 184409c6f265SBram Moolenaar \ nextgroup=typescriptObjectType,typescriptInterfaceExtends 184509c6f265SBram Moolenaar \ contained 184609c6f265SBram Moolenaar \ skipwhite skipnl 184709c6f265SBram Moolenaar 184809c6f265SBram Moolenaarsyntax keyword typescriptInterfaceExtends contained extends nextgroup=typescriptInterfaceHeritage skipwhite skipnl 184909c6f265SBram Moolenaar 185009c6f265SBram Moolenaarsyntax match typescriptInterfaceHeritage contained /\v(\k|\.)+/ 185109c6f265SBram Moolenaar \ nextgroup=typescriptObjectType,typescriptInterfaceComma,typescriptInterfaceTypeArguments 185209c6f265SBram Moolenaar \ skipwhite 185309c6f265SBram Moolenaar 185409c6f265SBram Moolenaarsyntax region typescriptInterfaceTypeArguments matchgroup=typescriptTypeBrackets 185509c6f265SBram Moolenaar \ start=/</ end=/>/ skip=/\s*,\s*/ 185609c6f265SBram Moolenaar \ contains=@typescriptType 185709c6f265SBram Moolenaar \ nextgroup=typescriptObjectType,typescriptInterfaceComma 185809c6f265SBram Moolenaar \ contained skipwhite 185909c6f265SBram Moolenaar 186009c6f265SBram Moolenaarsyntax match typescriptInterfaceComma /,/ contained nextgroup=typescriptInterfaceHeritage skipwhite skipnl 186109c6f265SBram Moolenaar 186209c6f265SBram Moolenaar"Block VariableStatement EmptyStatement ExpressionStatement IfStatement IterationStatement ContinueStatement BreakStatement ReturnStatement WithStatement LabelledStatement SwitchStatement ThrowStatement TryStatement DebuggerStatement 186309c6f265SBram Moolenaarsyntax cluster typescriptStatement 186409c6f265SBram Moolenaar \ contains=typescriptBlock,typescriptVariable, 186509c6f265SBram Moolenaar \ @typescriptTopExpression,typescriptAssign, 186609c6f265SBram Moolenaar \ typescriptConditional,typescriptRepeat,typescriptBranch, 186709c6f265SBram Moolenaar \ typescriptLabel,typescriptStatementKeyword, 186809c6f265SBram Moolenaar \ typescriptFuncKeyword, 186909c6f265SBram Moolenaar \ typescriptTry,typescriptExceptions,typescriptDebugger, 187009c6f265SBram Moolenaar \ typescriptExport,typescriptInterfaceKeyword,typescriptEnum, 187109c6f265SBram Moolenaar \ typescriptModule,typescriptAliasKeyword,typescriptImport 187209c6f265SBram Moolenaar 187309c6f265SBram Moolenaarsyntax cluster typescriptPrimitive contains=typescriptString,typescriptTemplate,typescriptRegexpString,typescriptNumber,typescriptBoolean,typescriptNull,typescriptArray 187409c6f265SBram Moolenaar 187509c6f265SBram Moolenaarsyntax cluster typescriptEventTypes contains=typescriptEventString,typescriptTemplate,typescriptNumber,typescriptBoolean,typescriptNull 187609c6f265SBram Moolenaar 187709c6f265SBram Moolenaar" top level expression: no arrow func 187809c6f265SBram Moolenaar" also no func keyword. funcKeyword is contained in statement 187909c6f265SBram Moolenaar" funcKeyword allows overloading (func without body) 188009c6f265SBram Moolenaar" funcImpl requires body 188109c6f265SBram Moolenaarsyntax cluster typescriptTopExpression 188209c6f265SBram Moolenaar \ contains=@typescriptPrimitive, 188309c6f265SBram Moolenaar \ typescriptIdentifier,typescriptIdentifierName, 188409c6f265SBram Moolenaar \ typescriptOperator,typescriptUnaryOp, 188509c6f265SBram Moolenaar \ typescriptParenExp,typescriptRegexpString, 188609c6f265SBram Moolenaar \ typescriptGlobal,typescriptAsyncFuncKeyword, 188709c6f265SBram Moolenaar \ typescriptClassKeyword,typescriptTypeCast 188809c6f265SBram Moolenaar 188909c6f265SBram Moolenaar" no object literal, used in type cast and arrow func 189009c6f265SBram Moolenaar" TODO: change func keyword to funcImpl 189109c6f265SBram Moolenaarsyntax cluster typescriptExpression 189209c6f265SBram Moolenaar \ contains=@typescriptTopExpression, 189309c6f265SBram Moolenaar \ typescriptArrowFuncDef, 189409c6f265SBram Moolenaar \ typescriptFuncImpl 189509c6f265SBram Moolenaar 189609c6f265SBram Moolenaarsyntax cluster typescriptValue 189709c6f265SBram Moolenaar \ contains=@typescriptExpression,typescriptObjectLiteral 189809c6f265SBram Moolenaar 189909c6f265SBram Moolenaarsyntax cluster typescriptEventExpression contains=typescriptArrowFuncDef,typescriptParenExp,@typescriptValue,typescriptRegexpString,@typescriptEventTypes,typescriptOperator,typescriptGlobal,jsxRegion 190009c6f265SBram Moolenaar 190109c6f265SBram Moolenaarsyntax keyword typescriptAsyncFuncKeyword async 190209c6f265SBram Moolenaar \ nextgroup=typescriptFuncKeyword,typescriptArrowFuncDef 190309c6f265SBram Moolenaar \ skipwhite 190409c6f265SBram Moolenaar 190509c6f265SBram Moolenaarsyntax keyword typescriptAsyncFuncKeyword await 190609c6f265SBram Moolenaar \ nextgroup=@typescriptValue 190709c6f265SBram Moolenaar \ skipwhite 190809c6f265SBram Moolenaar 190909c6f265SBram Moolenaarsyntax keyword typescriptFuncKeyword function 191009c6f265SBram Moolenaar \ nextgroup=typescriptAsyncFunc,typescriptFuncName,@typescriptCallSignature 191109c6f265SBram Moolenaar \ skipwhite skipempty 191209c6f265SBram Moolenaar 191309c6f265SBram Moolenaarsyntax match typescriptAsyncFunc contained /*/ 191409c6f265SBram Moolenaar \ nextgroup=typescriptFuncName,@typescriptCallSignature 191509c6f265SBram Moolenaar \ skipwhite skipempty 191609c6f265SBram Moolenaar 191709c6f265SBram Moolenaarsyntax match typescriptFuncName contained /\K\k*/ 191809c6f265SBram Moolenaar \ nextgroup=@typescriptCallSignature 191909c6f265SBram Moolenaar \ skipwhite 192009c6f265SBram Moolenaar 192109c6f265SBram Moolenaar" destructuring ({ a: ee }) => 19223132cdddSBram Moolenaarsyntax match typescriptArrowFuncDef contained /(\(\s*\({\_[^}]*}\|\k\+\)\(:\_[^)]\)\?,\?\)\+)\s*=>/ 192309c6f265SBram Moolenaar \ contains=typescriptArrowFuncArg,typescriptArrowFunc 192409c6f265SBram Moolenaar \ nextgroup=@typescriptExpression,typescriptBlock 192509c6f265SBram Moolenaar \ skipwhite skipempty 192609c6f265SBram Moolenaar 192709c6f265SBram Moolenaar" matches `(a) =>` or `([a]) =>` or 192809c6f265SBram Moolenaar" `( 192909c6f265SBram Moolenaar" a) =>` 193091359014SBram Moolenaarsyntax match typescriptArrowFuncDef contained /(\(\_s*[a-zA-Z\$_\[.]\_[^)]*\)*)\s*=>/ 193109c6f265SBram Moolenaar \ contains=typescriptArrowFuncArg,typescriptArrowFunc 193209c6f265SBram Moolenaar \ nextgroup=@typescriptExpression,typescriptBlock 193309c6f265SBram Moolenaar \ skipwhite skipempty 193409c6f265SBram Moolenaar 193509c6f265SBram Moolenaarsyntax match typescriptArrowFuncDef contained /\K\k*\s*=>/ 193609c6f265SBram Moolenaar \ contains=typescriptArrowFuncArg,typescriptArrowFunc 193709c6f265SBram Moolenaar \ nextgroup=@typescriptExpression,typescriptBlock 193809c6f265SBram Moolenaar \ skipwhite skipempty 193909c6f265SBram Moolenaar 194009c6f265SBram Moolenaar" TODO: optimize this pattern 19413132cdddSBram Moolenaarsyntax region typescriptArrowFuncDef contained start=/(\_[^(^)]*):/ end=/=>/ 194209c6f265SBram Moolenaar \ contains=typescriptArrowFuncArg,typescriptArrowFunc,typescriptTypeAnnotation 194309c6f265SBram Moolenaar \ nextgroup=@typescriptExpression,typescriptBlock 194409c6f265SBram Moolenaar \ skipwhite skipempty keepend 194509c6f265SBram Moolenaar 194609c6f265SBram Moolenaarsyntax match typescriptArrowFunc /=>/ 194709c6f265SBram Moolenaarsyntax match typescriptArrowFuncArg contained /\K\k*/ 194809c6f265SBram Moolenaarsyntax region typescriptArrowFuncArg contained start=/<\|(/ end=/\ze=>/ contains=@typescriptCallSignature 194909c6f265SBram Moolenaar 195009c6f265SBram Moolenaarsyntax region typescriptReturnAnnotation contained start=/:/ end=/{/me=e-1 contains=@typescriptType nextgroup=typescriptBlock 195109c6f265SBram Moolenaar 195209c6f265SBram Moolenaar 19533132cdddSBram Moolenaarsyntax region typescriptFuncImpl contained start=/function\>/ end=/{/me=e-1 195409c6f265SBram Moolenaar \ contains=typescriptFuncKeyword 195509c6f265SBram Moolenaar \ nextgroup=typescriptBlock 195609c6f265SBram Moolenaar 195709c6f265SBram Moolenaarsyntax cluster typescriptCallImpl contains=typescriptGenericImpl,typescriptParamImpl 195809c6f265SBram Moolenaarsyntax region typescriptGenericImpl matchgroup=typescriptTypeBrackets 195909c6f265SBram Moolenaar \ start=/</ end=/>/ skip=/\s*,\s*/ 196009c6f265SBram Moolenaar \ contains=typescriptTypeParameter 196109c6f265SBram Moolenaar \ nextgroup=typescriptParamImpl 196209c6f265SBram Moolenaar \ contained skipwhite 196309c6f265SBram Moolenaarsyntax region typescriptParamImpl matchgroup=typescriptParens 196409c6f265SBram Moolenaar \ start=/(/ end=/)/ 196509c6f265SBram Moolenaar \ contains=typescriptDecorator,@typescriptParameterList,@typescriptComments 196609c6f265SBram Moolenaar \ nextgroup=typescriptReturnAnnotation,typescriptBlock 196709c6f265SBram Moolenaar \ contained skipwhite skipnl 196809c6f265SBram Moolenaar 196909c6f265SBram Moolenaarsyntax match typescriptDecorator /@\([_$a-zA-Z][_$a-zA-Z0-9]*\.\)*[_$a-zA-Z][_$a-zA-Z0-9]*\>/ 19703132cdddSBram Moolenaar \ nextgroup=typescriptFuncCallArg,typescriptTypeArguments 197109c6f265SBram Moolenaar \ contains=@_semantic,typescriptDotNotation 197209c6f265SBram Moolenaar 197309c6f265SBram Moolenaar" Define the default highlighting. 197409c6f265SBram Moolenaarhi def link typescriptReserved Error 197509c6f265SBram Moolenaar 197609c6f265SBram Moolenaarhi def link typescriptEndColons Exception 197709c6f265SBram Moolenaarhi def link typescriptSymbols Normal 197809c6f265SBram Moolenaarhi def link typescriptBraces Function 197909c6f265SBram Moolenaarhi def link typescriptParens Normal 198009c6f265SBram Moolenaarhi def link typescriptComment Comment 198109c6f265SBram Moolenaarhi def link typescriptLineComment Comment 198209c6f265SBram Moolenaarhi def link typescriptDocComment Comment 198309c6f265SBram Moolenaarhi def link typescriptCommentTodo Todo 19843132cdddSBram Moolenaarhi def link typescriptMagicComment SpecialComment 198509c6f265SBram Moolenaarhi def link typescriptRef Include 198609c6f265SBram Moolenaarhi def link typescriptDocNotation SpecialComment 198709c6f265SBram Moolenaarhi def link typescriptDocTags SpecialComment 198809c6f265SBram Moolenaarhi def link typescriptDocNGParam typescriptDocParam 198909c6f265SBram Moolenaarhi def link typescriptDocParam Function 199009c6f265SBram Moolenaarhi def link typescriptDocNumParam Function 199109c6f265SBram Moolenaarhi def link typescriptDocEventRef Function 199209c6f265SBram Moolenaarhi def link typescriptDocNamedParamType Type 199309c6f265SBram Moolenaarhi def link typescriptDocParamName Type 199409c6f265SBram Moolenaarhi def link typescriptDocParamType Type 199509c6f265SBram Moolenaarhi def link typescriptString String 199609c6f265SBram Moolenaarhi def link typescriptSpecial Special 199709c6f265SBram Moolenaarhi def link typescriptStringLiteralType String 19983132cdddSBram Moolenaarhi def link typescriptTemplateLiteralType String 199909c6f265SBram Moolenaarhi def link typescriptStringMember String 200009c6f265SBram Moolenaarhi def link typescriptTemplate String 200109c6f265SBram Moolenaarhi def link typescriptEventString String 20023132cdddSBram Moolenaarhi def link typescriptDestructureString String 200309c6f265SBram Moolenaarhi def link typescriptASCII Special 200409c6f265SBram Moolenaarhi def link typescriptTemplateSB Label 200509c6f265SBram Moolenaarhi def link typescriptRegexpString String 200609c6f265SBram Moolenaarhi def link typescriptGlobal Constant 200791359014SBram Moolenaarhi def link typescriptTestGlobal Function 200809c6f265SBram Moolenaarhi def link typescriptPrototype Type 200909c6f265SBram Moolenaarhi def link typescriptConditional Conditional 201009c6f265SBram Moolenaarhi def link typescriptConditionalElse Conditional 201109c6f265SBram Moolenaarhi def link typescriptCase Conditional 201209c6f265SBram Moolenaarhi def link typescriptDefault typescriptCase 201309c6f265SBram Moolenaarhi def link typescriptBranch Conditional 201409c6f265SBram Moolenaarhi def link typescriptIdentifier Structure 201509c6f265SBram Moolenaarhi def link typescriptVariable Identifier 20163132cdddSBram Moolenaarhi def link typescriptDestructureVariable PreProc 201709c6f265SBram Moolenaarhi def link typescriptEnumKeyword Identifier 201809c6f265SBram Moolenaarhi def link typescriptRepeat Repeat 201909c6f265SBram Moolenaarhi def link typescriptForOperator Repeat 202009c6f265SBram Moolenaarhi def link typescriptStatementKeyword Statement 202109c6f265SBram Moolenaarhi def link typescriptMessage Keyword 202209c6f265SBram Moolenaarhi def link typescriptOperator Identifier 202309c6f265SBram Moolenaarhi def link typescriptKeywordOp Identifier 202409c6f265SBram Moolenaarhi def link typescriptCastKeyword Special 202509c6f265SBram Moolenaarhi def link typescriptType Type 202609c6f265SBram Moolenaarhi def link typescriptNull Boolean 202709c6f265SBram Moolenaarhi def link typescriptNumber Number 202809c6f265SBram Moolenaarhi def link typescriptBoolean Boolean 202909c6f265SBram Moolenaarhi def link typescriptObjectLabel typescriptLabel 20303132cdddSBram Moolenaarhi def link typescriptDestructureLabel Function 203109c6f265SBram Moolenaarhi def link typescriptLabel Label 20323132cdddSBram Moolenaarhi def link typescriptTupleLable Label 203309c6f265SBram Moolenaarhi def link typescriptStringProperty String 203409c6f265SBram Moolenaarhi def link typescriptImport Special 20353132cdddSBram Moolenaarhi def link typescriptImportType Special 203609c6f265SBram Moolenaarhi def link typescriptAmbientDeclaration Special 203709c6f265SBram Moolenaarhi def link typescriptExport Special 20383132cdddSBram Moolenaarhi def link typescriptExportType Special 203909c6f265SBram Moolenaarhi def link typescriptModule Special 204009c6f265SBram Moolenaarhi def link typescriptTry Special 204109c6f265SBram Moolenaarhi def link typescriptExceptions Special 204209c6f265SBram Moolenaar 204309c6f265SBram Moolenaarhi def link typescriptMember Function 204409c6f265SBram Moolenaarhi def link typescriptMethodAccessor Operator 204509c6f265SBram Moolenaar 204609c6f265SBram Moolenaarhi def link typescriptAsyncFuncKeyword Keyword 20473132cdddSBram Moolenaarhi def link typescriptObjectAsyncKeyword Keyword 204809c6f265SBram Moolenaarhi def link typescriptAsyncFor Keyword 204909c6f265SBram Moolenaarhi def link typescriptFuncKeyword Keyword 205009c6f265SBram Moolenaarhi def link typescriptAsyncFunc Keyword 205109c6f265SBram Moolenaarhi def link typescriptArrowFunc Type 205209c6f265SBram Moolenaarhi def link typescriptFuncName Function 205309c6f265SBram Moolenaarhi def link typescriptFuncArg PreProc 205409c6f265SBram Moolenaarhi def link typescriptArrowFuncArg PreProc 205509c6f265SBram Moolenaarhi def link typescriptFuncComma Operator 205609c6f265SBram Moolenaar 205709c6f265SBram Moolenaarhi def link typescriptClassKeyword Keyword 205809c6f265SBram Moolenaarhi def link typescriptClassExtends Keyword 205909c6f265SBram Moolenaar" hi def link typescriptClassName Function 206009c6f265SBram Moolenaarhi def link typescriptAbstract Special 206109c6f265SBram Moolenaar" hi def link typescriptClassHeritage Function 206209c6f265SBram Moolenaar" hi def link typescriptInterfaceHeritage Function 206309c6f265SBram Moolenaarhi def link typescriptClassStatic StorageClass 206409c6f265SBram Moolenaarhi def link typescriptReadonlyModifier Keyword 206509c6f265SBram Moolenaarhi def link typescriptInterfaceKeyword Keyword 206609c6f265SBram Moolenaarhi def link typescriptInterfaceExtends Keyword 206709c6f265SBram Moolenaarhi def link typescriptInterfaceName Function 206809c6f265SBram Moolenaar 206909c6f265SBram Moolenaarhi def link shellbang Comment 207009c6f265SBram Moolenaar 207109c6f265SBram Moolenaarhi def link typescriptTypeParameter Identifier 207209c6f265SBram Moolenaarhi def link typescriptConstraint Keyword 207309c6f265SBram Moolenaarhi def link typescriptPredefinedType Type 207409c6f265SBram Moolenaarhi def link typescriptReadonlyArrayKeyword Keyword 207509c6f265SBram Moolenaarhi def link typescriptUnion Operator 207609c6f265SBram Moolenaarhi def link typescriptFuncTypeArrow Function 207709c6f265SBram Moolenaarhi def link typescriptConstructorType Function 207809c6f265SBram Moolenaarhi def link typescriptTypeQuery Keyword 207909c6f265SBram Moolenaarhi def link typescriptAccessibilityModifier Keyword 208009c6f265SBram Moolenaarhi def link typescriptOptionalMark PreProc 208109c6f265SBram Moolenaarhi def link typescriptFuncType Special 208209c6f265SBram Moolenaarhi def link typescriptMappedIn Special 208309c6f265SBram Moolenaarhi def link typescriptCall PreProc 208409c6f265SBram Moolenaarhi def link typescriptParamImpl PreProc 208509c6f265SBram Moolenaarhi def link typescriptConstructSignature Identifier 208609c6f265SBram Moolenaarhi def link typescriptAliasDeclaration Identifier 208709c6f265SBram Moolenaarhi def link typescriptAliasKeyword Keyword 208809c6f265SBram Moolenaarhi def link typescriptUserDefinedType Keyword 208909c6f265SBram Moolenaarhi def link typescriptTypeReference Identifier 209009c6f265SBram Moolenaarhi def link typescriptConstructor Keyword 209109c6f265SBram Moolenaarhi def link typescriptDecorator Special 209291359014SBram Moolenaarhi def link typescriptAssertType Keyword 209309c6f265SBram Moolenaar 209409c6f265SBram Moolenaarhi link typeScript NONE 209509c6f265SBram Moolenaar 209609c6f265SBram Moolenaarif exists('s:cpo_save') 209709c6f265SBram Moolenaar let &cpo = s:cpo_save 209809c6f265SBram Moolenaar unlet s:cpo_save 209909c6f265SBram Moolenaarendif 2100