1" Vim syntax file
2" Language:     TypeScript and TypeScriptReact
3" Maintainer:   Bram Moolenaar, Herrington Darkholme
4" Last Change:	2019 Nov 30
5" Based On:     Herrington Darkholme's yats.vim
6" Changes:      See https:github.com/HerringtonDarkholme/yats.vim
7" Credits:      See yats.vim on github
8
9if &cpo =~ 'C'
10  let s:cpo_save = &cpo
11  set cpo&vim
12endif
13
14
15" NOTE: this results in accurate highlighting, but can be slow.
16syntax sync fromstart
17
18"Dollar sign is permitted anywhere in an identifier
19setlocal iskeyword-=$
20if main_syntax == 'typescript' || main_syntax == 'typescriptreact'
21  setlocal iskeyword+=$
22  " syntax cluster htmlJavaScript                 contains=TOP
23endif
24
25" lowest priority on least used feature
26syntax match   typescriptLabel                /[a-zA-Z_$]\k*:/he=e-1 contains=typescriptReserved nextgroup=@typescriptStatement skipwhite skipempty
27
28" other keywords like return,case,yield uses containedin
29syntax region  typescriptBlock                 matchgroup=typescriptBraces start=/{/ end=/}/ contains=@typescriptStatement,@typescriptComments fold
30
31
32"runtime syntax/basic/identifiers.vim
33syntax cluster afterIdentifier contains=
34  \ typescriptDotNotation,
35  \ typescriptFuncCallArg,
36  \ typescriptTemplate,
37  \ typescriptIndexExpr,
38  \ @typescriptSymbols,
39  \ typescriptTypeArguments
40
41syntax match   typescriptIdentifierName        /\<\K\k*/
42  \ nextgroup=@afterIdentifier
43  \ transparent
44  \ contains=@_semantic
45  \ skipnl skipwhite
46
47syntax match   typescriptProp contained /\K\k*!\?/
48  \ transparent
49  \ contains=@props
50  \ nextgroup=@afterIdentifier
51  \ skipwhite skipempty
52
53syntax region  typescriptIndexExpr      contained matchgroup=typescriptProperty start=/\[/rs=s+1 end=/]/he=e-1 contains=@typescriptValue nextgroup=@typescriptSymbols,typescriptDotNotation,typescriptFuncCallArg skipwhite skipempty
54
55syntax match   typescriptDotNotation           /\.\|?\.\|!\./ nextgroup=typescriptProp skipnl
56syntax match   typescriptDotStyleNotation      /\.style\./ nextgroup=typescriptDOMStyle transparent
57" syntax match   typescriptFuncCall              contained /[a-zA-Z]\k*\ze(/ nextgroup=typescriptFuncCallArg
58syntax region  typescriptParenExp              matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptComments,@typescriptValue,typescriptCastKeyword nextgroup=@typescriptSymbols skipwhite skipempty
59syntax region  typescriptFuncCallArg           contained matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptValue,@typescriptComments nextgroup=@typescriptSymbols,typescriptDotNotation skipwhite skipempty skipnl
60syntax region  typescriptEventFuncCallArg      contained matchgroup=typescriptParens start=/(/ end=/)/ contains=@typescriptEventExpression
61syntax region  typescriptEventString           contained start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1\|$/ contains=typescriptASCII,@events
62
63"runtime syntax/basic/literal.vim
64"Syntax in the JavaScript code
65
66" String
67syntax match   typescriptASCII                 contained /\\\d\d\d/
68
69syntax region  typescriptTemplateSubstitution matchgroup=typescriptTemplateSB
70  \ start=/\${/ end=/}/
71  \ contains=@typescriptValue
72  \ contained
73
74
75syntax region  typescriptString
76  \ start=+\z(["']\)+  skip=+\\\%(\z1\|$\)+  end=+\z1+ end=+$+
77  \ contains=typescriptSpecial,@Spell
78  \ extend
79
80syntax match   typescriptSpecial            contained "\v\\%(x\x\x|u%(\x{4}|\{\x{4,5}})|c\u|.)"
81
82" From vim runtime
83" <https://github.com/vim/vim/blob/master/runtime/syntax/javascript.vim#L48>
84syntax region  typescriptRegexpString          start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gimuy]\{0,5\}\s*$+ end=+/[gimuy]\{0,5\}\s*[;.,)\]}]+me=e-1 nextgroup=typescriptDotNotation oneline
85
86syntax region  typescriptTemplate
87  \ start=/`/  skip=/\\\\\|\\`\|\n/  end=/`\|$/
88  \ contains=typescriptTemplateSubstitution
89  \ nextgroup=@typescriptSymbols
90  \ skipwhite skipempty
91
92"Array
93syntax region  typescriptArray matchgroup=typescriptBraces
94  \ start=/\[/ end=/]/
95  \ contains=@typescriptValue,@typescriptComments
96  \ nextgroup=@typescriptSymbols,typescriptDotNotation
97  \ skipwhite skipempty fold
98
99" Number
100syntax match typescriptNumber /\<0[bB][01][01_]*\>/        nextgroup=@typescriptSymbols skipwhite skipempty
101syntax match typescriptNumber /\<0[oO][0-7][0-7_]*\>/       nextgroup=@typescriptSymbols skipwhite skipempty
102syntax match typescriptNumber /\<0[xX][0-9a-fA-F][0-9a-fA-F_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty
103syntax match typescriptNumber /\d[0-9_]*\.\d[0-9_]*\|\d[0-9_]*\|\.\d[0-9]*/
104  \ nextgroup=typescriptExponent,@typescriptSymbols skipwhite skipempty
105syntax match typescriptExponent /[eE][+-]\=\d[0-9]*\>/
106  \ nextgroup=@typescriptSymbols skipwhite skipempty contained
107
108
109" runtime syntax/basic/object.vim
110syntax region  typescriptObjectLiteral         matchgroup=typescriptBraces
111  \ start=/{/ end=/}/
112  \ contains=@typescriptComments,typescriptObjectLabel,typescriptStringProperty,typescriptComputedPropertyName
113  \ fold contained
114
115syntax match   typescriptObjectLabel  contained /\k\+\_s*/
116  \ nextgroup=typescriptObjectColon,@typescriptCallImpl
117  \ skipwhite skipempty
118
119syntax region  typescriptStringProperty   contained
120  \ start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1/
121  \ nextgroup=typescriptObjectColon,@typescriptCallImpl
122  \ skipwhite skipempty
123
124" syntax region  typescriptPropertyName    contained start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1(/me=e-1 nextgroup=@typescriptCallSignature skipwhite skipempty oneline
125syntax region  typescriptComputedPropertyName  contained matchgroup=typescriptBraces
126  \ start=/\[/rs=s+1 end=/]/
127  \ contains=@typescriptValue
128  \ nextgroup=typescriptObjectColon,@typescriptCallImpl
129  \ skipwhite skipempty
130
131" syntax region  typescriptComputedPropertyName  contained matchgroup=typescriptPropertyName start=/\[/rs=s+1 end=/]\_s*:/he=e-1 contains=@typescriptValue nextgroup=@typescriptValue skipwhite skipempty
132" syntax region  typescriptComputedPropertyName  contained matchgroup=typescriptPropertyName start=/\[/rs=s+1 end=/]\_s*(/me=e-1 contains=@typescriptValue nextgroup=@typescriptCallSignature skipwhite skipempty
133" Value for object, statement for label statement
134syntax match typescriptRestOrSpread /\.\.\./ contained
135syntax match typescriptObjectSpread /\.\.\./ contained containedin=typescriptObjectLiteral,typescriptArray nextgroup=@typescriptValue
136
137syntax match typescriptObjectColon contained /:/ nextgroup=@typescriptValue skipwhite skipempty
138
139"runtime syntax/basic/symbols.vim
140" + - ^ ~
141syntax match typescriptUnaryOp /[+\-~!]/
142 \ nextgroup=@typescriptValue
143 \ skipwhite
144
145syntax region typescriptTernary matchgroup=typescriptTernaryOp start=/?[.?]\@!/ end=/:/ contained contains=@typescriptValue,@typescriptComments nextgroup=@typescriptValue skipwhite skipempty
146
147syntax match   typescriptAssign  /=/ nextgroup=@typescriptValue
148  \ skipwhite skipempty
149
150" 2: ==, ===
151syntax match   typescriptBinaryOp contained /===\?/ nextgroup=@typescriptValue skipwhite skipempty
152" 6: >>>=, >>>, >>=, >>, >=, >
153syntax match   typescriptBinaryOp contained />\(>>=\|>>\|>=\|>\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
154" 4: <<=, <<, <=, <
155syntax match   typescriptBinaryOp contained /<\(<=\|<\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
156" 3: ||, |=, |
157syntax match   typescriptBinaryOp contained /|\(|\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
158" 3: &&, &=, &
159syntax match   typescriptBinaryOp contained /&\(&\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
160" 2: *=, *
161syntax match   typescriptBinaryOp contained /\*=\?/ nextgroup=@typescriptValue skipwhite skipempty
162" 2: %=, %
163syntax match   typescriptBinaryOp contained /%=\?/ nextgroup=@typescriptValue skipwhite skipempty
164" 2: /=, /
165syntax match   typescriptBinaryOp contained +/\(=\|[^\*/]\@=\)+ nextgroup=@typescriptValue skipwhite skipempty
166syntax match   typescriptBinaryOp contained /!==\?/ nextgroup=@typescriptValue skipwhite skipempty
167" 2: !=, !==
168syntax match   typescriptBinaryOp contained /+\(+\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
169" 3: +, ++, +=
170syntax match   typescriptBinaryOp contained /-\(-\|=\)\?/ nextgroup=@typescriptValue skipwhite skipempty
171" 3: -, --, -=
172
173" exponentiation operator
174" 2: **, **=
175syntax match typescriptBinaryOp contained /\*\*=\?/ nextgroup=@typescriptValue
176
177syntax cluster typescriptSymbols               contains=typescriptBinaryOp,typescriptKeywordOp,typescriptTernary,typescriptAssign,typescriptCastKeyword
178
179" runtime syntax/basic/reserved.vim
180
181"runtime syntax/basic/keyword.vim
182"Import
183syntax keyword typescriptImport                from as import
184syntax keyword typescriptExport                export
185syntax keyword typescriptModule                namespace module
186
187"this
188
189"JavaScript Prototype
190syntax keyword typescriptPrototype             prototype
191  \ nextgroup=@afterIdentifier
192
193syntax keyword typescriptCastKeyword           as
194  \ nextgroup=@typescriptType
195  \ skipwhite
196
197"Program Keywords
198syntax keyword typescriptIdentifier            arguments this super
199  \ nextgroup=@afterIdentifier
200
201syntax keyword typescriptVariable              let var
202  \ nextgroup=typescriptVariableDeclaration
203  \ skipwhite skipempty skipnl
204
205syntax keyword typescriptVariable const
206  \ nextgroup=typescriptEnum,typescriptVariableDeclaration
207  \ skipwhite
208
209syntax match typescriptVariableDeclaration /[A-Za-z_$]\k*/
210  \ nextgroup=typescriptTypeAnnotation,typescriptAssign
211  \ contained skipwhite skipempty skipnl
212
213syntax region typescriptEnum matchgroup=typescriptEnumKeyword start=/enum / end=/\ze{/
214  \ nextgroup=typescriptBlock
215  \ skipwhite
216
217syntax keyword typescriptKeywordOp
218  \ contained in instanceof nextgroup=@typescriptValue
219syntax keyword typescriptOperator              delete new typeof void
220  \ nextgroup=@typescriptValue
221  \ skipwhite skipempty
222
223syntax keyword typescriptForOperator           contained in of
224syntax keyword typescriptBoolean               true false nextgroup=@typescriptSymbols skipwhite skipempty
225syntax keyword typescriptNull                  null undefined nextgroup=@typescriptSymbols skipwhite skipempty
226syntax keyword typescriptMessage               alert confirm prompt status
227  \ nextgroup=typescriptDotNotation,typescriptFuncCallArg
228syntax keyword typescriptGlobal                self top parent
229  \ nextgroup=@afterIdentifier
230
231"Statement Keywords
232syntax keyword typescriptConditional           if else switch
233  \ nextgroup=typescriptConditionalParen
234  \ skipwhite skipempty skipnl
235syntax keyword typescriptConditionalElse       else
236syntax keyword typescriptRepeat                do while for nextgroup=typescriptLoopParen skipwhite skipempty
237syntax keyword typescriptRepeat                for nextgroup=typescriptLoopParen,typescriptAsyncFor skipwhite skipempty
238syntax keyword typescriptBranch                break continue containedin=typescriptBlock
239syntax keyword typescriptCase                  case nextgroup=@typescriptPrimitive skipwhite containedin=typescriptBlock
240syntax keyword typescriptDefault               default containedin=typescriptBlock nextgroup=@typescriptValue,typescriptClassKeyword,typescriptInterfaceKeyword skipwhite oneline
241syntax keyword typescriptStatementKeyword      with
242syntax keyword typescriptStatementKeyword      yield skipwhite nextgroup=@typescriptValue containedin=typescriptBlock
243syntax keyword typescriptStatementKeyword      return skipwhite contained nextgroup=@typescriptValue containedin=typescriptBlock
244
245syntax keyword typescriptTry                   try
246syntax keyword typescriptExceptions            catch throw finally
247syntax keyword typescriptDebugger              debugger
248
249syntax keyword typescriptAsyncFor              await nextgroup=typescriptLoopParen skipwhite skipempty contained
250
251syntax region  typescriptLoopParen             contained matchgroup=typescriptParens
252  \ start=/(/ end=/)/
253  \ contains=typescriptVariable,typescriptForOperator,typescriptEndColons,@typescriptValue,@typescriptComments
254  \ nextgroup=typescriptBlock
255  \ skipwhite skipempty
256syntax region  typescriptConditionalParen             contained matchgroup=typescriptParens
257  \ start=/(/ end=/)/
258  \ contains=@typescriptValue,@typescriptComments
259  \ nextgroup=typescriptBlock
260  \ skipwhite skipempty
261syntax match   typescriptEndColons             /[;,]/ contained
262
263syntax keyword typescriptAmbientDeclaration declare nextgroup=@typescriptAmbients
264  \ skipwhite skipempty
265
266syntax cluster typescriptAmbients contains=
267  \ typescriptVariable,
268  \ typescriptFuncKeyword,
269  \ typescriptClassKeyword,
270  \ typescriptAbstract,
271  \ typescriptEnumKeyword,typescriptEnum,
272  \ typescriptModule
273
274"runtime syntax/basic/doc.vim
275"Syntax coloring for Node.js shebang line
276syntax match   shellbang "^#!.*node\>"
277syntax match   shellbang "^#!.*iojs\>"
278
279
280"JavaScript comments
281syntax keyword typescriptCommentTodo TODO FIXME XXX TBD
282syntax match   typescriptLineComment "//.*"
283  \ contains=@Spell,typescriptCommentTodo,typescriptRef
284syntax region  typescriptComment
285  \ start="/\*"  end="\*/"
286  \ contains=@Spell,typescriptCommentTodo extend
287syntax cluster typescriptComments
288  \ contains=typescriptDocComment,typescriptComment,typescriptLineComment
289
290syntax match   typescriptRef  +///\s*<reference\s\+.*\/>$+
291  \ contains=typescriptString
292syntax match   typescriptRef  +///\s*<amd-dependency\s\+.*\/>$+
293  \ contains=typescriptString
294syntax match   typescriptRef  +///\s*<amd-module\s\+.*\/>$+
295  \ contains=typescriptString
296
297"JSDoc
298syntax case ignore
299
300syntax region  typescriptDocComment            matchgroup=typescriptComment
301  \ start="/\*\*"  end="\*/"
302  \ contains=typescriptDocNotation,typescriptCommentTodo,@Spell
303  \ fold keepend
304syntax match   typescriptDocNotation           contained /@/ nextgroup=typescriptDocTags
305
306syntax keyword typescriptDocTags               contained constant constructor constructs function ignore inner private public readonly static
307syntax keyword typescriptDocTags               contained const dict expose inheritDoc interface nosideeffects override protected struct internal
308syntax keyword typescriptDocTags               contained example global
309syntax keyword typescriptDocTags               contained alpha beta defaultValue eventProperty experimental label
310syntax keyword typescriptDocTags               contained packageDocumentation privateRemarks remarks sealed typeParam
311
312" syntax keyword typescriptDocTags               contained ngdoc nextgroup=typescriptDocNGDirective
313syntax keyword typescriptDocTags               contained ngdoc scope priority animations
314syntax keyword typescriptDocTags               contained ngdoc restrict methodOf propertyOf eventOf eventType nextgroup=typescriptDocParam skipwhite
315syntax keyword typescriptDocNGDirective        contained overview service object function method property event directive filter inputType error
316
317syntax keyword typescriptDocTags               contained abstract virtual access augments
318
319syntax keyword typescriptDocTags               contained arguments callback lends memberOf name type kind link mixes mixin tutorial nextgroup=typescriptDocParam skipwhite
320syntax keyword typescriptDocTags               contained variation nextgroup=typescriptDocNumParam skipwhite
321
322syntax keyword typescriptDocTags               contained author class classdesc copyright default defaultvalue nextgroup=typescriptDocDesc skipwhite
323syntax keyword typescriptDocTags               contained deprecated description external host nextgroup=typescriptDocDesc skipwhite
324syntax keyword typescriptDocTags               contained file fileOverview overview namespace requires since version nextgroup=typescriptDocDesc skipwhite
325syntax keyword typescriptDocTags               contained summary todo license preserve nextgroup=typescriptDocDesc skipwhite
326
327syntax keyword typescriptDocTags               contained borrows exports nextgroup=typescriptDocA skipwhite
328syntax keyword typescriptDocTags               contained param arg argument property prop module nextgroup=typescriptDocNamedParamType,typescriptDocParamName skipwhite
329syntax keyword typescriptDocTags               contained define enum extends implements this typedef nextgroup=typescriptDocParamType skipwhite
330syntax keyword typescriptDocTags               contained return returns throws exception nextgroup=typescriptDocParamType,typescriptDocParamName skipwhite
331syntax keyword typescriptDocTags               contained see nextgroup=typescriptDocRef skipwhite
332
333syntax keyword typescriptDocTags               contained function func method nextgroup=typescriptDocName skipwhite
334syntax match   typescriptDocName               contained /\h\w*/
335
336syntax keyword typescriptDocTags               contained fires event nextgroup=typescriptDocEventRef skipwhite
337syntax match   typescriptDocEventRef           contained /\h\w*#\(\h\w*\:\)\?\h\w*/
338
339syntax match   typescriptDocNamedParamType     contained /{.\+}/ nextgroup=typescriptDocParamName skipwhite
340syntax match   typescriptDocParamName          contained /\[\?0-9a-zA-Z_\.]\+\]\?/ nextgroup=typescriptDocDesc skipwhite
341syntax match   typescriptDocParamType          contained /{.\+}/ nextgroup=typescriptDocDesc skipwhite
342syntax match   typescriptDocA                  contained /\%(#\|\w\|\.\|:\|\/\)\+/ nextgroup=typescriptDocAs skipwhite
343syntax match   typescriptDocAs                 contained /\s*as\s*/ nextgroup=typescriptDocB skipwhite
344syntax match   typescriptDocB                  contained /\%(#\|\w\|\.\|:\|\/\)\+/
345syntax match   typescriptDocParam              contained /\%(#\|\w\|\.\|:\|\/\|-\)\+/
346syntax match   typescriptDocNumParam           contained /\d\+/
347syntax match   typescriptDocRef                contained /\%(#\|\w\|\.\|:\|\/\)\+/
348syntax region  typescriptDocLinkTag            contained matchgroup=typescriptDocLinkTag start=/{/ end=/}/ contains=typescriptDocTags
349
350syntax cluster typescriptDocs                  contains=typescriptDocParamType,typescriptDocNamedParamType,typescriptDocParam
351
352if main_syntax == "typescript"
353  syntax sync clear
354  syntax sync ccomment typescriptComment minlines=200
355endif
356
357syntax case match
358
359"runtime syntax/basic/type.vim
360" Types
361syntax match typescriptOptionalMark /?/ contained
362
363syntax region typescriptTypeParameters matchgroup=typescriptTypeBrackets
364  \ start=/</ end=/>/
365  \ contains=typescriptTypeParameter
366  \ contained
367
368syntax match typescriptTypeParameter /\K\k*/
369  \ nextgroup=typescriptConstraint,typescriptGenericDefault
370  \ contained skipwhite skipnl
371
372syntax keyword typescriptConstraint extends
373  \ nextgroup=@typescriptType
374  \ contained skipwhite skipnl
375
376syntax match typescriptGenericDefault /=/
377  \ nextgroup=@typescriptType
378  \ contained skipwhite
379
380"><
381" class A extend B<T> {} // ClassBlock
382" func<T>() // FuncCallArg
383syntax region typescriptTypeArguments matchgroup=typescriptTypeBrackets
384  \ start=/\></ end=/>/
385  \ contains=@typescriptType
386  \ nextgroup=typescriptFuncCallArg,@typescriptTypeOperator
387  \ contained skipwhite
388
389
390syntax cluster typescriptType contains=
391  \ @typescriptPrimaryType,
392  \ typescriptUnion,
393  \ @typescriptFunctionType,
394  \ typescriptConstructorType
395
396" array type: A[]
397" type indexing A['key']
398syntax region typescriptTypeBracket contained
399  \ start=/\[/ end=/\]/
400  \ contains=typescriptString,typescriptNumber
401  \ nextgroup=@typescriptTypeOperator
402  \ skipwhite skipempty
403
404syntax cluster typescriptPrimaryType contains=
405  \ typescriptParenthesizedType,
406  \ typescriptPredefinedType,
407  \ typescriptTypeReference,
408  \ typescriptObjectType,
409  \ typescriptTupleType,
410  \ typescriptTypeQuery,
411  \ typescriptStringLiteralType,
412  \ typescriptReadonlyArrayKeyword,
413  \ typescriptAssertType
414
415syntax region  typescriptStringLiteralType contained
416  \ start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1\|$/
417  \ nextgroup=typescriptUnion
418  \ skipwhite skipempty
419
420syntax region typescriptParenthesizedType matchgroup=typescriptParens
421  \ start=/(/ end=/)/
422  \ contains=@typescriptType
423  \ nextgroup=@typescriptTypeOperator
424  \ contained skipwhite skipempty fold
425
426syntax match typescriptTypeReference /\K\k*\(\.\K\k*\)*/
427  \ nextgroup=typescriptTypeArguments,@typescriptTypeOperator,typescriptUserDefinedType
428  \ skipwhite contained skipempty
429
430syntax keyword typescriptPredefinedType any number boolean string void never undefined null object unknown
431  \ nextgroup=@typescriptTypeOperator
432  \ contained skipwhite skipempty
433
434syntax match typescriptPredefinedType /unique symbol/
435  \ nextgroup=@typescriptTypeOperator
436  \ contained skipwhite skipempty
437
438syntax region typescriptObjectType matchgroup=typescriptBraces
439  \ start=/{/ end=/}/
440  \ contains=@typescriptTypeMember,typescriptEndColons,@typescriptComments,typescriptAccessibilityModifier,typescriptReadonlyModifier
441  \ nextgroup=@typescriptTypeOperator
442  \ contained skipwhite fold
443
444syntax cluster typescriptTypeMember contains=
445  \ @typescriptCallSignature,
446  \ typescriptConstructSignature,
447  \ typescriptIndexSignature,
448  \ @typescriptMembers
449
450syntax region typescriptTupleType matchgroup=typescriptBraces
451  \ start=/\[/ end=/\]/
452  \ contains=@typescriptType,@typescriptComments
453  \ contained skipwhite
454
455syntax cluster typescriptTypeOperator
456  \ contains=typescriptUnion,typescriptTypeBracket
457
458syntax match typescriptUnion /|\|&/ contained nextgroup=@typescriptPrimaryType skipwhite skipempty
459
460syntax cluster typescriptFunctionType contains=typescriptGenericFunc,typescriptFuncType
461syntax region typescriptGenericFunc matchgroup=typescriptTypeBrackets
462  \ start=/</ end=/>/
463  \ contains=typescriptTypeParameter
464  \ nextgroup=typescriptFuncType
465  \ containedin=typescriptFunctionType
466  \ contained skipwhite skipnl
467
468syntax region typescriptFuncType matchgroup=typescriptParens
469  \ start=/(/ end=/)\s*=>/me=e-2
470  \ contains=@typescriptParameterList
471  \ nextgroup=typescriptFuncTypeArrow
472  \ contained skipwhite skipnl oneline
473
474syntax match typescriptFuncTypeArrow /=>/
475  \ nextgroup=@typescriptType
476  \ containedin=typescriptFuncType
477  \ contained skipwhite skipnl
478
479
480syntax keyword typescriptConstructorType new
481  \ nextgroup=@typescriptFunctionType
482  \ contained skipwhite skipnl
483
484syntax keyword typescriptUserDefinedType is
485  \ contained nextgroup=@typescriptType skipwhite skipempty
486
487syntax keyword typescriptTypeQuery typeof keyof
488  \ nextgroup=typescriptTypeReference
489  \ contained skipwhite skipnl
490
491syntax keyword typescriptAssertType asserts
492  \ nextgroup=typescriptTypeReference
493  \ contained skipwhite skipnl
494
495syntax cluster typescriptCallSignature contains=typescriptGenericCall,typescriptCall
496syntax region typescriptGenericCall matchgroup=typescriptTypeBrackets
497  \ start=/</ end=/>/
498  \ contains=typescriptTypeParameter
499  \ nextgroup=typescriptCall
500  \ contained skipwhite skipnl
501syntax region typescriptCall matchgroup=typescriptParens
502  \ start=/(/ end=/)/
503  \ contains=typescriptDecorator,@typescriptParameterList,@typescriptComments
504  \ nextgroup=typescriptTypeAnnotation,typescriptBlock
505  \ contained skipwhite skipnl
506
507syntax match typescriptTypeAnnotation /:/
508  \ nextgroup=@typescriptType
509  \ contained skipwhite skipnl
510
511syntax cluster typescriptParameterList contains=
512  \ typescriptTypeAnnotation,
513  \ typescriptAccessibilityModifier,
514  \ typescriptOptionalMark,
515  \ typescriptRestOrSpread,
516  \ typescriptFuncComma,
517  \ typescriptDefaultParam
518
519syntax match typescriptFuncComma /,/ contained
520
521syntax match typescriptDefaultParam /=/
522  \ nextgroup=@typescriptValue
523  \ contained skipwhite
524
525syntax keyword typescriptConstructSignature new
526  \ nextgroup=@typescriptCallSignature
527  \ contained skipwhite
528
529syntax region typescriptIndexSignature matchgroup=typescriptBraces
530  \ start=/\[/ end=/\]/
531  \ contains=typescriptPredefinedType,typescriptMappedIn,typescriptString
532  \ nextgroup=typescriptTypeAnnotation
533  \ contained skipwhite oneline
534
535syntax keyword typescriptMappedIn in
536  \ nextgroup=@typescriptType
537  \ contained skipwhite skipnl skipempty
538
539syntax keyword typescriptAliasKeyword type
540  \ nextgroup=typescriptAliasDeclaration
541  \ skipwhite skipnl skipempty
542
543syntax region typescriptAliasDeclaration matchgroup=typescriptUnion
544  \ start=/ / end=/=/
545  \ nextgroup=@typescriptType
546  \ contains=typescriptConstraint,typescriptTypeParameters
547  \ contained skipwhite skipempty
548
549syntax keyword typescriptReadonlyArrayKeyword readonly
550  \ nextgroup=@typescriptPrimaryType
551  \ skipwhite
552
553" extension
554if get(g:, 'yats_host_keyword', 1)
555  "runtime syntax/yats.vim
556  "runtime syntax/yats/typescript.vim
557  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Function Boolean
558  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Error EvalError
559  syntax keyword typescriptGlobal containedin=typescriptIdentifierName InternalError
560  syntax keyword typescriptGlobal containedin=typescriptIdentifierName RangeError ReferenceError
561  syntax keyword typescriptGlobal containedin=typescriptIdentifierName StopIteration
562  syntax keyword typescriptGlobal containedin=typescriptIdentifierName SyntaxError TypeError
563  syntax keyword typescriptGlobal containedin=typescriptIdentifierName URIError Date
564  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Float32Array
565  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Float64Array
566  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Int16Array Int32Array
567  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Int8Array Uint16Array
568  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Uint32Array Uint8Array
569  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Uint8ClampedArray
570  syntax keyword typescriptGlobal containedin=typescriptIdentifierName ParallelArray
571  syntax keyword typescriptGlobal containedin=typescriptIdentifierName ArrayBuffer DataView
572  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Iterator Generator
573  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Reflect Proxy
574  syntax keyword typescriptGlobal containedin=typescriptIdentifierName arguments
575  hi def link typescriptGlobal Structure
576  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName eval uneval nextgroup=typescriptFuncCallArg
577  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName isFinite nextgroup=typescriptFuncCallArg
578  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName isNaN parseFloat nextgroup=typescriptFuncCallArg
579  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName parseInt nextgroup=typescriptFuncCallArg
580  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName decodeURI nextgroup=typescriptFuncCallArg
581  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName decodeURIComponent nextgroup=typescriptFuncCallArg
582  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName encodeURI nextgroup=typescriptFuncCallArg
583  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName encodeURIComponent nextgroup=typescriptFuncCallArg
584  syntax cluster props add=typescriptGlobalMethod
585  hi def link typescriptGlobalMethod Structure
586
587  "runtime syntax/yats/es6-number.vim
588  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Number nextgroup=typescriptGlobalNumberDot,typescriptFuncCallArg
589  syntax match   typescriptGlobalNumberDot /\./ contained nextgroup=typescriptNumberStaticProp,typescriptNumberStaticMethod,typescriptProp
590  syntax keyword typescriptNumberStaticProp contained EPSILON MAX_SAFE_INTEGER MAX_VALUE
591  syntax keyword typescriptNumberStaticProp contained MIN_SAFE_INTEGER MIN_VALUE NEGATIVE_INFINITY
592  syntax keyword typescriptNumberStaticProp contained NaN POSITIVE_INFINITY
593  hi def link typescriptNumberStaticProp Keyword
594  syntax keyword typescriptNumberStaticMethod contained isFinite isInteger isNaN isSafeInteger nextgroup=typescriptFuncCallArg
595  syntax keyword typescriptNumberStaticMethod contained parseFloat parseInt nextgroup=typescriptFuncCallArg
596  hi def link typescriptNumberStaticMethod Keyword
597  syntax keyword typescriptNumberMethod contained toExponential toFixed toLocaleString nextgroup=typescriptFuncCallArg
598  syntax keyword typescriptNumberMethod contained toPrecision toSource toString valueOf nextgroup=typescriptFuncCallArg
599  syntax cluster props add=typescriptNumberMethod
600  hi def link typescriptNumberMethod Keyword
601
602  "runtime syntax/yats/es6-string.vim
603  syntax keyword typescriptGlobal containedin=typescriptIdentifierName String nextgroup=typescriptGlobalStringDot,typescriptFuncCallArg
604  syntax match   typescriptGlobalStringDot /\./ contained nextgroup=typescriptStringStaticMethod,typescriptProp
605  syntax keyword typescriptStringStaticMethod contained fromCharCode fromCodePoint raw nextgroup=typescriptFuncCallArg
606  hi def link typescriptStringStaticMethod Keyword
607  syntax keyword typescriptStringMethod contained anchor charAt charCodeAt codePointAt nextgroup=typescriptFuncCallArg
608  syntax keyword typescriptStringMethod contained concat endsWith includes indexOf lastIndexOf nextgroup=typescriptFuncCallArg
609  syntax keyword typescriptStringMethod contained link localeCompare match normalize nextgroup=typescriptFuncCallArg
610  syntax keyword typescriptStringMethod contained padStart padEnd repeat replace search nextgroup=typescriptFuncCallArg
611  syntax keyword typescriptStringMethod contained slice split startsWith substr substring nextgroup=typescriptFuncCallArg
612  syntax keyword typescriptStringMethod contained toLocaleLowerCase toLocaleUpperCase nextgroup=typescriptFuncCallArg
613  syntax keyword typescriptStringMethod contained toLowerCase toString toUpperCase trim nextgroup=typescriptFuncCallArg
614  syntax keyword typescriptStringMethod contained valueOf nextgroup=typescriptFuncCallArg
615  syntax cluster props add=typescriptStringMethod
616  hi def link typescriptStringMethod Keyword
617
618  "runtime syntax/yats/es6-array.vim
619  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Array nextgroup=typescriptGlobalArrayDot,typescriptFuncCallArg
620  syntax match   typescriptGlobalArrayDot /\./ contained nextgroup=typescriptArrayStaticMethod,typescriptProp
621  syntax keyword typescriptArrayStaticMethod contained from isArray of nextgroup=typescriptFuncCallArg
622  hi def link typescriptArrayStaticMethod Keyword
623  syntax keyword typescriptArrayMethod contained concat copyWithin entries every fill nextgroup=typescriptFuncCallArg
624  syntax keyword typescriptArrayMethod contained filter find findIndex forEach indexOf nextgroup=typescriptFuncCallArg
625  syntax keyword typescriptArrayMethod contained includes join keys lastIndexOf map nextgroup=typescriptFuncCallArg
626  syntax keyword typescriptArrayMethod contained pop push reduce reduceRight reverse nextgroup=typescriptFuncCallArg
627  syntax keyword typescriptArrayMethod contained shift slice some sort splice toLocaleString nextgroup=typescriptFuncCallArg
628  syntax keyword typescriptArrayMethod contained toSource toString unshift nextgroup=typescriptFuncCallArg
629  syntax cluster props add=typescriptArrayMethod
630  hi def link typescriptArrayMethod Keyword
631
632  "runtime syntax/yats/es6-object.vim
633  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Object nextgroup=typescriptGlobalObjectDot,typescriptFuncCallArg
634  syntax match   typescriptGlobalObjectDot /\./ contained nextgroup=typescriptObjectStaticMethod,typescriptProp
635  syntax keyword typescriptObjectStaticMethod contained create defineProperties defineProperty nextgroup=typescriptFuncCallArg
636  syntax keyword typescriptObjectStaticMethod contained entries freeze getOwnPropertyDescriptors nextgroup=typescriptFuncCallArg
637  syntax keyword typescriptObjectStaticMethod contained getOwnPropertyDescriptor getOwnPropertyNames nextgroup=typescriptFuncCallArg
638  syntax keyword typescriptObjectStaticMethod contained getOwnPropertySymbols getPrototypeOf nextgroup=typescriptFuncCallArg
639  syntax keyword typescriptObjectStaticMethod contained is isExtensible isFrozen isSealed nextgroup=typescriptFuncCallArg
640  syntax keyword typescriptObjectStaticMethod contained keys preventExtensions values nextgroup=typescriptFuncCallArg
641  hi def link typescriptObjectStaticMethod Keyword
642  syntax keyword typescriptObjectMethod contained getOwnPropertyDescriptors hasOwnProperty nextgroup=typescriptFuncCallArg
643  syntax keyword typescriptObjectMethod contained isPrototypeOf propertyIsEnumerable nextgroup=typescriptFuncCallArg
644  syntax keyword typescriptObjectMethod contained toLocaleString toString valueOf seal nextgroup=typescriptFuncCallArg
645  syntax keyword typescriptObjectMethod contained setPrototypeOf nextgroup=typescriptFuncCallArg
646  syntax cluster props add=typescriptObjectMethod
647  hi def link typescriptObjectMethod Keyword
648
649  "runtime syntax/yats/es6-symbol.vim
650  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Symbol nextgroup=typescriptGlobalSymbolDot,typescriptFuncCallArg
651  syntax match   typescriptGlobalSymbolDot /\./ contained nextgroup=typescriptSymbolStaticProp,typescriptSymbolStaticMethod,typescriptProp
652  syntax keyword typescriptSymbolStaticProp contained length iterator match replace
653  syntax keyword typescriptSymbolStaticProp contained search split hasInstance isConcatSpreadable
654  syntax keyword typescriptSymbolStaticProp contained unscopables species toPrimitive
655  syntax keyword typescriptSymbolStaticProp contained toStringTag
656  hi def link typescriptSymbolStaticProp Keyword
657  syntax keyword typescriptSymbolStaticMethod contained for keyFor nextgroup=typescriptFuncCallArg
658  hi def link typescriptSymbolStaticMethod Keyword
659
660  "runtime syntax/yats/es6-function.vim
661  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Function
662  syntax keyword typescriptFunctionMethod contained apply bind call nextgroup=typescriptFuncCallArg
663  syntax cluster props add=typescriptFunctionMethod
664  hi def link typescriptFunctionMethod Keyword
665
666  "runtime syntax/yats/es6-math.vim
667  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Math nextgroup=typescriptGlobalMathDot,typescriptFuncCallArg
668  syntax match   typescriptGlobalMathDot /\./ contained nextgroup=typescriptMathStaticProp,typescriptMathStaticMethod,typescriptProp
669  syntax keyword typescriptMathStaticProp contained E LN10 LN2 LOG10E LOG2E PI SQRT1_2
670  syntax keyword typescriptMathStaticProp contained SQRT2
671  hi def link typescriptMathStaticProp Keyword
672  syntax keyword typescriptMathStaticMethod contained abs acos acosh asin asinh atan nextgroup=typescriptFuncCallArg
673  syntax keyword typescriptMathStaticMethod contained atan2 atanh cbrt ceil clz32 cos nextgroup=typescriptFuncCallArg
674  syntax keyword typescriptMathStaticMethod contained cosh exp expm1 floor fround hypot nextgroup=typescriptFuncCallArg
675  syntax keyword typescriptMathStaticMethod contained imul log log10 log1p log2 max nextgroup=typescriptFuncCallArg
676  syntax keyword typescriptMathStaticMethod contained min pow random round sign sin nextgroup=typescriptFuncCallArg
677  syntax keyword typescriptMathStaticMethod contained sinh sqrt tan tanh trunc nextgroup=typescriptFuncCallArg
678  hi def link typescriptMathStaticMethod Keyword
679
680  "runtime syntax/yats/es6-date.vim
681  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Date nextgroup=typescriptGlobalDateDot,typescriptFuncCallArg
682  syntax match   typescriptGlobalDateDot /\./ contained nextgroup=typescriptDateStaticMethod,typescriptProp
683  syntax keyword typescriptDateStaticMethod contained UTC now parse nextgroup=typescriptFuncCallArg
684  hi def link typescriptDateStaticMethod Keyword
685  syntax keyword typescriptDateMethod contained getDate getDay getFullYear getHours nextgroup=typescriptFuncCallArg
686  syntax keyword typescriptDateMethod contained getMilliseconds getMinutes getMonth nextgroup=typescriptFuncCallArg
687  syntax keyword typescriptDateMethod contained getSeconds getTime getTimezoneOffset nextgroup=typescriptFuncCallArg
688  syntax keyword typescriptDateMethod contained getUTCDate getUTCDay getUTCFullYear nextgroup=typescriptFuncCallArg
689  syntax keyword typescriptDateMethod contained getUTCHours getUTCMilliseconds getUTCMinutes nextgroup=typescriptFuncCallArg
690  syntax keyword typescriptDateMethod contained getUTCMonth getUTCSeconds setDate setFullYear nextgroup=typescriptFuncCallArg
691  syntax keyword typescriptDateMethod contained setHours setMilliseconds setMinutes nextgroup=typescriptFuncCallArg
692  syntax keyword typescriptDateMethod contained setMonth setSeconds setTime setUTCDate nextgroup=typescriptFuncCallArg
693  syntax keyword typescriptDateMethod contained setUTCFullYear setUTCHours setUTCMilliseconds nextgroup=typescriptFuncCallArg
694  syntax keyword typescriptDateMethod contained setUTCMinutes setUTCMonth setUTCSeconds nextgroup=typescriptFuncCallArg
695  syntax keyword typescriptDateMethod contained toDateString toISOString toJSON toLocaleDateString nextgroup=typescriptFuncCallArg
696  syntax keyword typescriptDateMethod contained toLocaleFormat toLocaleString toLocaleTimeString nextgroup=typescriptFuncCallArg
697  syntax keyword typescriptDateMethod contained toSource toString toTimeString toUTCString nextgroup=typescriptFuncCallArg
698  syntax keyword typescriptDateMethod contained valueOf nextgroup=typescriptFuncCallArg
699  syntax cluster props add=typescriptDateMethod
700  hi def link typescriptDateMethod Keyword
701
702  "runtime syntax/yats/es6-json.vim
703  syntax keyword typescriptGlobal containedin=typescriptIdentifierName JSON nextgroup=typescriptGlobalJSONDot,typescriptFuncCallArg
704  syntax match   typescriptGlobalJSONDot /\./ contained nextgroup=typescriptJSONStaticMethod,typescriptProp
705  syntax keyword typescriptJSONStaticMethod contained parse stringify nextgroup=typescriptFuncCallArg
706  hi def link typescriptJSONStaticMethod Keyword
707
708  "runtime syntax/yats/es6-regexp.vim
709  syntax keyword typescriptGlobal containedin=typescriptIdentifierName RegExp nextgroup=typescriptGlobalRegExpDot,typescriptFuncCallArg
710  syntax match   typescriptGlobalRegExpDot /\./ contained nextgroup=typescriptRegExpStaticProp,typescriptProp
711  syntax keyword typescriptRegExpStaticProp contained lastIndex
712  hi def link typescriptRegExpStaticProp Keyword
713  syntax keyword typescriptRegExpProp contained global ignoreCase multiline source sticky
714  syntax cluster props add=typescriptRegExpProp
715  hi def link typescriptRegExpProp Keyword
716  syntax keyword typescriptRegExpMethod contained exec test nextgroup=typescriptFuncCallArg
717  syntax cluster props add=typescriptRegExpMethod
718  hi def link typescriptRegExpMethod Keyword
719
720  "runtime syntax/yats/es6-map.vim
721  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Map WeakMap
722  syntax keyword typescriptES6MapProp contained size
723  syntax cluster props add=typescriptES6MapProp
724  hi def link typescriptES6MapProp Keyword
725  syntax keyword typescriptES6MapMethod contained clear delete entries forEach get has nextgroup=typescriptFuncCallArg
726  syntax keyword typescriptES6MapMethod contained keys set values nextgroup=typescriptFuncCallArg
727  syntax cluster props add=typescriptES6MapMethod
728  hi def link typescriptES6MapMethod Keyword
729
730  "runtime syntax/yats/es6-set.vim
731  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Set WeakSet
732  syntax keyword typescriptES6SetProp contained size
733  syntax cluster props add=typescriptES6SetProp
734  hi def link typescriptES6SetProp Keyword
735  syntax keyword typescriptES6SetMethod contained add clear delete entries forEach has nextgroup=typescriptFuncCallArg
736  syntax keyword typescriptES6SetMethod contained values nextgroup=typescriptFuncCallArg
737  syntax cluster props add=typescriptES6SetMethod
738  hi def link typescriptES6SetMethod Keyword
739
740  "runtime syntax/yats/es6-proxy.vim
741  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Proxy
742  syntax keyword typescriptProxyAPI contained getOwnPropertyDescriptor getOwnPropertyNames
743  syntax keyword typescriptProxyAPI contained defineProperty deleteProperty freeze seal
744  syntax keyword typescriptProxyAPI contained preventExtensions has hasOwn get set enumerate
745  syntax keyword typescriptProxyAPI contained iterate ownKeys apply construct
746  hi def link typescriptProxyAPI Keyword
747
748  "runtime syntax/yats/es6-promise.vim
749  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Promise nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg
750  syntax match   typescriptGlobalPromiseDot /\./ contained nextgroup=typescriptPromiseStaticMethod,typescriptProp
751  syntax keyword typescriptPromiseStaticMethod contained resolve reject all race nextgroup=typescriptFuncCallArg
752  hi def link typescriptPromiseStaticMethod Keyword
753  syntax keyword typescriptPromiseMethod contained then catch finally nextgroup=typescriptFuncCallArg
754  syntax cluster props add=typescriptPromiseMethod
755  hi def link typescriptPromiseMethod Keyword
756
757  "runtime syntax/yats/es6-reflect.vim
758  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Reflect
759  syntax keyword typescriptReflectMethod contained apply construct defineProperty deleteProperty nextgroup=typescriptFuncCallArg
760  syntax keyword typescriptReflectMethod contained enumerate get getOwnPropertyDescriptor nextgroup=typescriptFuncCallArg
761  syntax keyword typescriptReflectMethod contained getPrototypeOf has isExtensible ownKeys nextgroup=typescriptFuncCallArg
762  syntax keyword typescriptReflectMethod contained preventExtensions set setPrototypeOf nextgroup=typescriptFuncCallArg
763  syntax cluster props add=typescriptReflectMethod
764  hi def link typescriptReflectMethod Keyword
765
766  "runtime syntax/yats/ecma-402.vim
767  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Intl
768  syntax keyword typescriptIntlMethod contained Collator DateTimeFormat NumberFormat nextgroup=typescriptFuncCallArg
769  syntax keyword typescriptIntlMethod contained PluralRules nextgroup=typescriptFuncCallArg
770  syntax cluster props add=typescriptIntlMethod
771  hi def link typescriptIntlMethod Keyword
772
773  "runtime syntax/yats/node.vim
774  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName global process
775  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName console Buffer
776  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName module exports
777  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName setTimeout
778  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName clearTimeout
779  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName setInterval
780  syntax keyword typescriptNodeGlobal containedin=typescriptIdentifierName clearInterval
781  hi def link typescriptNodeGlobal Structure
782
783  syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName describe
784  syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName it test before
785  syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName after beforeEach
786  syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName afterEach
787  syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName beforeAll
788  syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName afterAll
789  syntax keyword typescriptTestGlobal containedin=typescriptIdentifierName expect assert
790
791  "runtime syntax/yats/web.vim
792  syntax keyword typescriptBOM containedin=typescriptIdentifierName AbortController
793  syntax keyword typescriptBOM containedin=typescriptIdentifierName AbstractWorker AnalyserNode
794  syntax keyword typescriptBOM containedin=typescriptIdentifierName App Apps ArrayBuffer
795  syntax keyword typescriptBOM containedin=typescriptIdentifierName ArrayBufferView
796  syntax keyword typescriptBOM containedin=typescriptIdentifierName Attr AudioBuffer
797  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioBufferSourceNode
798  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioContext AudioDestinationNode
799  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioListener AudioNode
800  syntax keyword typescriptBOM containedin=typescriptIdentifierName AudioParam BatteryManager
801  syntax keyword typescriptBOM containedin=typescriptIdentifierName BiquadFilterNode
802  syntax keyword typescriptBOM containedin=typescriptIdentifierName BlobEvent BluetoothAdapter
803  syntax keyword typescriptBOM containedin=typescriptIdentifierName BluetoothDevice
804  syntax keyword typescriptBOM containedin=typescriptIdentifierName BluetoothManager
805  syntax keyword typescriptBOM containedin=typescriptIdentifierName CameraCapabilities
806  syntax keyword typescriptBOM containedin=typescriptIdentifierName CameraControl CameraManager
807  syntax keyword typescriptBOM containedin=typescriptIdentifierName CanvasGradient CanvasImageSource
808  syntax keyword typescriptBOM containedin=typescriptIdentifierName CanvasPattern CanvasRenderingContext2D
809  syntax keyword typescriptBOM containedin=typescriptIdentifierName CaretPosition CDATASection
810  syntax keyword typescriptBOM containedin=typescriptIdentifierName ChannelMergerNode
811  syntax keyword typescriptBOM containedin=typescriptIdentifierName ChannelSplitterNode
812  syntax keyword typescriptBOM containedin=typescriptIdentifierName CharacterData ChildNode
813  syntax keyword typescriptBOM containedin=typescriptIdentifierName ChromeWorker Comment
814  syntax keyword typescriptBOM containedin=typescriptIdentifierName Connection Console
815  syntax keyword typescriptBOM containedin=typescriptIdentifierName ContactManager Contacts
816  syntax keyword typescriptBOM containedin=typescriptIdentifierName ConvolverNode Coordinates
817  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSS CSSConditionRule
818  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSGroupingRule
819  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSKeyframeRule
820  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSKeyframesRule
821  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSMediaRule CSSNamespaceRule
822  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSPageRule CSSRule
823  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSRuleList CSSStyleDeclaration
824  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSStyleRule CSSStyleSheet
825  syntax keyword typescriptBOM containedin=typescriptIdentifierName CSSSupportsRule
826  syntax keyword typescriptBOM containedin=typescriptIdentifierName DataTransfer DataView
827  syntax keyword typescriptBOM containedin=typescriptIdentifierName DedicatedWorkerGlobalScope
828  syntax keyword typescriptBOM containedin=typescriptIdentifierName DelayNode DeviceAcceleration
829  syntax keyword typescriptBOM containedin=typescriptIdentifierName DeviceRotationRate
830  syntax keyword typescriptBOM containedin=typescriptIdentifierName DeviceStorage DirectoryEntry
831  syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryEntrySync
832  syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryReader
833  syntax keyword typescriptBOM containedin=typescriptIdentifierName DirectoryReaderSync
834  syntax keyword typescriptBOM containedin=typescriptIdentifierName Document DocumentFragment
835  syntax keyword typescriptBOM containedin=typescriptIdentifierName DocumentTouch DocumentType
836  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMCursor DOMError
837  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMException DOMHighResTimeStamp
838  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMImplementation
839  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMImplementationRegistry
840  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMParser DOMRequest
841  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMString DOMStringList
842  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMStringMap DOMTimeStamp
843  syntax keyword typescriptBOM containedin=typescriptIdentifierName DOMTokenList DynamicsCompressorNode
844  syntax keyword typescriptBOM containedin=typescriptIdentifierName Element Entry EntrySync
845  syntax keyword typescriptBOM containedin=typescriptIdentifierName Extensions FileException
846  syntax keyword typescriptBOM containedin=typescriptIdentifierName Float32Array Float64Array
847  syntax keyword typescriptBOM containedin=typescriptIdentifierName FMRadio FormData
848  syntax keyword typescriptBOM containedin=typescriptIdentifierName GainNode Gamepad
849  syntax keyword typescriptBOM containedin=typescriptIdentifierName GamepadButton Geolocation
850  syntax keyword typescriptBOM containedin=typescriptIdentifierName History HTMLAnchorElement
851  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLAreaElement
852  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLAudioElement
853  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBaseElement
854  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBodyElement
855  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLBRElement HTMLButtonElement
856  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLCanvasElement
857  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLCollection HTMLDataElement
858  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDataListElement
859  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDivElement HTMLDListElement
860  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLDocument HTMLElement
861  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLEmbedElement
862  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFieldSetElement
863  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFormControlsCollection
864  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLFormElement
865  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHeadElement
866  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHeadingElement
867  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLHRElement HTMLHtmlElement
868  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLIFrameElement
869  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLImageElement
870  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLInputElement
871  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLKeygenElement
872  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLabelElement
873  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLegendElement
874  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLLIElement HTMLLinkElement
875  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMapElement HTMLMediaElement
876  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMetaElement
877  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLMeterElement
878  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLModElement HTMLObjectElement
879  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOListElement
880  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptGroupElement
881  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptionElement
882  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOptionsCollection
883  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLOutputElement
884  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLParagraphElement
885  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLParamElement
886  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLPreElement HTMLProgressElement
887  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLQuoteElement
888  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLScriptElement
889  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSelectElement
890  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSourceElement
891  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLSpanElement
892  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLStyleElement
893  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableCaptionElement
894  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableCellElement
895  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableColElement
896  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableDataCellElement
897  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableElement
898  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableHeaderCellElement
899  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableRowElement
900  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTableSectionElement
901  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTextAreaElement
902  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTimeElement
903  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTitleElement
904  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLTrackElement
905  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLUListElement
906  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLUnknownElement
907  syntax keyword typescriptBOM containedin=typescriptIdentifierName HTMLVideoElement
908  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBCursor IDBCursorSync
909  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBCursorWithValue
910  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBDatabase IDBDatabaseSync
911  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBEnvironment IDBEnvironmentSync
912  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBFactory IDBFactorySync
913  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBIndex IDBIndexSync
914  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBKeyRange IDBObjectStore
915  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBObjectStoreSync
916  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBOpenDBRequest
917  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBRequest IDBTransaction
918  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBTransactionSync
919  syntax keyword typescriptBOM containedin=typescriptIdentifierName IDBVersionChangeEvent
920  syntax keyword typescriptBOM containedin=typescriptIdentifierName ImageData IndexedDB
921  syntax keyword typescriptBOM containedin=typescriptIdentifierName Int16Array Int32Array
922  syntax keyword typescriptBOM containedin=typescriptIdentifierName Int8Array L10n LinkStyle
923  syntax keyword typescriptBOM containedin=typescriptIdentifierName LocalFileSystem
924  syntax keyword typescriptBOM containedin=typescriptIdentifierName LocalFileSystemSync
925  syntax keyword typescriptBOM containedin=typescriptIdentifierName Location LockedFile
926  syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaQueryList MediaQueryListListener
927  syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaRecorder MediaSource
928  syntax keyword typescriptBOM containedin=typescriptIdentifierName MediaStream MediaStreamTrack
929  syntax keyword typescriptBOM containedin=typescriptIdentifierName MutationObserver
930  syntax keyword typescriptBOM containedin=typescriptIdentifierName Navigator NavigatorGeolocation
931  syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorID NavigatorLanguage
932  syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorOnLine
933  syntax keyword typescriptBOM containedin=typescriptIdentifierName NavigatorPlugins
934  syntax keyword typescriptBOM containedin=typescriptIdentifierName Node NodeFilter
935  syntax keyword typescriptBOM containedin=typescriptIdentifierName NodeIterator NodeList
936  syntax keyword typescriptBOM containedin=typescriptIdentifierName Notification OfflineAudioContext
937  syntax keyword typescriptBOM containedin=typescriptIdentifierName OscillatorNode PannerNode
938  syntax keyword typescriptBOM containedin=typescriptIdentifierName ParentNode Performance
939  syntax keyword typescriptBOM containedin=typescriptIdentifierName PerformanceNavigation
940  syntax keyword typescriptBOM containedin=typescriptIdentifierName PerformanceTiming
941  syntax keyword typescriptBOM containedin=typescriptIdentifierName Permissions PermissionSettings
942  syntax keyword typescriptBOM containedin=typescriptIdentifierName Plugin PluginArray
943  syntax keyword typescriptBOM containedin=typescriptIdentifierName Position PositionError
944  syntax keyword typescriptBOM containedin=typescriptIdentifierName PositionOptions
945  syntax keyword typescriptBOM containedin=typescriptIdentifierName PowerManager ProcessingInstruction
946  syntax keyword typescriptBOM containedin=typescriptIdentifierName PromiseResolver
947  syntax keyword typescriptBOM containedin=typescriptIdentifierName PushManager Range
948  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCConfiguration
949  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCPeerConnection
950  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCPeerConnectionErrorCallback
951  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCSessionDescription
952  syntax keyword typescriptBOM containedin=typescriptIdentifierName RTCSessionDescriptionCallback
953  syntax keyword typescriptBOM containedin=typescriptIdentifierName ScriptProcessorNode
954  syntax keyword typescriptBOM containedin=typescriptIdentifierName Selection SettingsLock
955  syntax keyword typescriptBOM containedin=typescriptIdentifierName SettingsManager
956  syntax keyword typescriptBOM containedin=typescriptIdentifierName SharedWorker StyleSheet
957  syntax keyword typescriptBOM containedin=typescriptIdentifierName StyleSheetList SVGAElement
958  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAngle SVGAnimateColorElement
959  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedAngle
960  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedBoolean
961  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedEnumeration
962  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedInteger
963  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedLength
964  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedLengthList
965  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedNumber
966  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedNumberList
967  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedPoints
968  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedPreserveAspectRatio
969  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedRect
970  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedString
971  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimatedTransformList
972  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateElement
973  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateMotionElement
974  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimateTransformElement
975  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGAnimationElement
976  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGCircleElement
977  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGClipPathElement
978  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGCursorElement
979  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGDefsElement SVGDescElement
980  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGElement SVGEllipseElement
981  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFilterElement
982  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontElement SVGFontFaceElement
983  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceFormatElement
984  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceNameElement
985  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceSrcElement
986  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGFontFaceUriElement
987  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGForeignObjectElement
988  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGGElement SVGGlyphElement
989  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGGradientElement
990  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGHKernElement
991  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGImageElement
992  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLength SVGLengthList
993  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLinearGradientElement
994  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGLineElement SVGMaskElement
995  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGMatrix SVGMissingGlyphElement
996  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGMPathElement
997  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGNumber SVGNumberList
998  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPathElement SVGPatternElement
999  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPoint SVGPolygonElement
1000  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPolylineElement
1001  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGPreserveAspectRatio
1002  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGRadialGradientElement
1003  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGRect SVGRectElement
1004  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGScriptElement
1005  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSetElement SVGStopElement
1006  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGStringList SVGStylable
1007  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGStyleElement
1008  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSVGElement SVGSwitchElement
1009  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGSymbolElement
1010  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTests SVGTextElement
1011  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTextPositioningElement
1012  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTitleElement
1013  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTransform SVGTransformable
1014  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTransformList
1015  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGTRefElement SVGTSpanElement
1016  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGUseElement SVGViewElement
1017  syntax keyword typescriptBOM containedin=typescriptIdentifierName SVGVKernElement
1018  syntax keyword typescriptBOM containedin=typescriptIdentifierName TCPServerSocket
1019  syntax keyword typescriptBOM containedin=typescriptIdentifierName TCPSocket Telephony
1020  syntax keyword typescriptBOM containedin=typescriptIdentifierName TelephonyCall Text
1021  syntax keyword typescriptBOM containedin=typescriptIdentifierName TextDecoder TextEncoder
1022  syntax keyword typescriptBOM containedin=typescriptIdentifierName TextMetrics TimeRanges
1023  syntax keyword typescriptBOM containedin=typescriptIdentifierName Touch TouchList
1024  syntax keyword typescriptBOM containedin=typescriptIdentifierName Transferable TreeWalker
1025  syntax keyword typescriptBOM containedin=typescriptIdentifierName Uint16Array Uint32Array
1026  syntax keyword typescriptBOM containedin=typescriptIdentifierName Uint8Array Uint8ClampedArray
1027  syntax keyword typescriptBOM containedin=typescriptIdentifierName URLSearchParams
1028  syntax keyword typescriptBOM containedin=typescriptIdentifierName URLUtilsReadOnly
1029  syntax keyword typescriptBOM containedin=typescriptIdentifierName UserProximityEvent
1030  syntax keyword typescriptBOM containedin=typescriptIdentifierName ValidityState VideoPlaybackQuality
1031  syntax keyword typescriptBOM containedin=typescriptIdentifierName WaveShaperNode WebBluetooth
1032  syntax keyword typescriptBOM containedin=typescriptIdentifierName WebGLRenderingContext
1033  syntax keyword typescriptBOM containedin=typescriptIdentifierName WebSMS WebSocket
1034  syntax keyword typescriptBOM containedin=typescriptIdentifierName WebVTT WifiManager
1035  syntax keyword typescriptBOM containedin=typescriptIdentifierName Window Worker WorkerConsole
1036  syntax keyword typescriptBOM containedin=typescriptIdentifierName WorkerLocation WorkerNavigator
1037  syntax keyword typescriptBOM containedin=typescriptIdentifierName XDomainRequest XMLDocument
1038  syntax keyword typescriptBOM containedin=typescriptIdentifierName XMLHttpRequestEventTarget
1039  hi def link typescriptBOM Structure
1040
1041  "runtime syntax/yats/web-window.vim
1042  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName applicationCache
1043  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName closed
1044  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName Components
1045  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName controllers
1046  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName dialogArguments
1047  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName document
1048  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName frameElement
1049  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName frames
1050  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName fullScreen
1051  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName history
1052  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName innerHeight
1053  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName innerWidth
1054  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName length
1055  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName location
1056  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName locationbar
1057  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName menubar
1058  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName messageManager
1059  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName name navigator
1060  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName opener
1061  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName outerHeight
1062  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName outerWidth
1063  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName pageXOffset
1064  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName pageYOffset
1065  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName parent
1066  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName performance
1067  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName personalbar
1068  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName returnValue
1069  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screen
1070  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screenX
1071  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName screenY
1072  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollbars
1073  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollMaxX
1074  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollMaxY
1075  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollX
1076  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName scrollY
1077  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName self sidebar
1078  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName status
1079  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName statusbar
1080  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName toolbar
1081  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName top visualViewport
1082  syntax keyword typescriptBOMWindowProp containedin=typescriptIdentifierName window
1083  syntax cluster props add=typescriptBOMWindowProp
1084  hi def link typescriptBOMWindowProp Structure
1085  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName alert nextgroup=typescriptFuncCallArg
1086  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName atob nextgroup=typescriptFuncCallArg
1087  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName blur nextgroup=typescriptFuncCallArg
1088  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName btoa nextgroup=typescriptFuncCallArg
1089  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearImmediate nextgroup=typescriptFuncCallArg
1090  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearInterval nextgroup=typescriptFuncCallArg
1091  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName clearTimeout nextgroup=typescriptFuncCallArg
1092  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName close nextgroup=typescriptFuncCallArg
1093  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName confirm nextgroup=typescriptFuncCallArg
1094  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName dispatchEvent nextgroup=typescriptFuncCallArg
1095  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName find nextgroup=typescriptFuncCallArg
1096  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName focus nextgroup=typescriptFuncCallArg
1097  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getAttention nextgroup=typescriptFuncCallArg
1098  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getAttentionWithCycleCount nextgroup=typescriptFuncCallArg
1099  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getComputedStyle nextgroup=typescriptFuncCallArg
1100  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getDefaulComputedStyle nextgroup=typescriptFuncCallArg
1101  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName getSelection nextgroup=typescriptFuncCallArg
1102  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName matchMedia nextgroup=typescriptFuncCallArg
1103  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName maximize nextgroup=typescriptFuncCallArg
1104  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName moveBy nextgroup=typescriptFuncCallArg
1105  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName moveTo nextgroup=typescriptFuncCallArg
1106  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName open nextgroup=typescriptFuncCallArg
1107  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName openDialog nextgroup=typescriptFuncCallArg
1108  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName postMessage nextgroup=typescriptFuncCallArg
1109  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName print nextgroup=typescriptFuncCallArg
1110  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName prompt nextgroup=typescriptFuncCallArg
1111  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName removeEventListener nextgroup=typescriptFuncCallArg
1112  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName resizeBy nextgroup=typescriptFuncCallArg
1113  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName resizeTo nextgroup=typescriptFuncCallArg
1114  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName restore nextgroup=typescriptFuncCallArg
1115  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scroll nextgroup=typescriptFuncCallArg
1116  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollBy nextgroup=typescriptFuncCallArg
1117  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollByLines nextgroup=typescriptFuncCallArg
1118  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollByPages nextgroup=typescriptFuncCallArg
1119  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName scrollTo nextgroup=typescriptFuncCallArg
1120  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setCursor nextgroup=typescriptFuncCallArg
1121  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setImmediate nextgroup=typescriptFuncCallArg
1122  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setInterval nextgroup=typescriptFuncCallArg
1123  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setResizable nextgroup=typescriptFuncCallArg
1124  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName setTimeout nextgroup=typescriptFuncCallArg
1125  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName showModalDialog nextgroup=typescriptFuncCallArg
1126  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName sizeToContent nextgroup=typescriptFuncCallArg
1127  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName stop nextgroup=typescriptFuncCallArg
1128  syntax keyword typescriptBOMWindowMethod containedin=typescriptIdentifierName updateCommands nextgroup=typescriptFuncCallArg
1129  syntax cluster props add=typescriptBOMWindowMethod
1130  hi def link typescriptBOMWindowMethod Structure
1131  syntax keyword typescriptBOMWindowEvent contained onabort onbeforeunload onblur onchange
1132  syntax keyword typescriptBOMWindowEvent contained onclick onclose oncontextmenu ondevicelight
1133  syntax keyword typescriptBOMWindowEvent contained ondevicemotion ondeviceorientation
1134  syntax keyword typescriptBOMWindowEvent contained ondeviceproximity ondragdrop onerror
1135  syntax keyword typescriptBOMWindowEvent contained onfocus onhashchange onkeydown onkeypress
1136  syntax keyword typescriptBOMWindowEvent contained onkeyup onload onmousedown onmousemove
1137  syntax keyword typescriptBOMWindowEvent contained onmouseout onmouseover onmouseup
1138  syntax keyword typescriptBOMWindowEvent contained onmozbeforepaint onpaint onpopstate
1139  syntax keyword typescriptBOMWindowEvent contained onreset onresize onscroll onselect
1140  syntax keyword typescriptBOMWindowEvent contained onsubmit onunload onuserproximity
1141  syntax keyword typescriptBOMWindowEvent contained onpageshow onpagehide
1142  hi def link typescriptBOMWindowEvent Keyword
1143  syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName DOMParser
1144  syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName QueryInterface
1145  syntax keyword typescriptBOMWindowCons containedin=typescriptIdentifierName XMLSerializer
1146  hi def link typescriptBOMWindowCons Structure
1147
1148  "runtime syntax/yats/web-navigator.vim
1149  syntax keyword typescriptBOMNavigatorProp contained battery buildID connection cookieEnabled
1150  syntax keyword typescriptBOMNavigatorProp contained doNotTrack maxTouchPoints oscpu
1151  syntax keyword typescriptBOMNavigatorProp contained productSub push serviceWorker
1152  syntax keyword typescriptBOMNavigatorProp contained vendor vendorSub
1153  syntax cluster props add=typescriptBOMNavigatorProp
1154  hi def link typescriptBOMNavigatorProp Keyword
1155  syntax keyword typescriptBOMNavigatorMethod contained addIdleObserver geolocation nextgroup=typescriptFuncCallArg
1156  syntax keyword typescriptBOMNavigatorMethod contained getDeviceStorage getDeviceStorages nextgroup=typescriptFuncCallArg
1157  syntax keyword typescriptBOMNavigatorMethod contained getGamepads getUserMedia registerContentHandler nextgroup=typescriptFuncCallArg
1158  syntax keyword typescriptBOMNavigatorMethod contained removeIdleObserver requestWakeLock nextgroup=typescriptFuncCallArg
1159  syntax keyword typescriptBOMNavigatorMethod contained share vibrate watch registerProtocolHandler nextgroup=typescriptFuncCallArg
1160  syntax keyword typescriptBOMNavigatorMethod contained sendBeacon nextgroup=typescriptFuncCallArg
1161  syntax cluster props add=typescriptBOMNavigatorMethod
1162  hi def link typescriptBOMNavigatorMethod Keyword
1163  syntax keyword typescriptServiceWorkerMethod contained register nextgroup=typescriptFuncCallArg
1164  syntax cluster props add=typescriptServiceWorkerMethod
1165  hi def link typescriptServiceWorkerMethod Keyword
1166
1167  "runtime syntax/yats/web-location.vim
1168  syntax keyword typescriptBOMLocationProp contained href protocol host hostname port
1169  syntax keyword typescriptBOMLocationProp contained pathname search hash username password
1170  syntax keyword typescriptBOMLocationProp contained origin
1171  syntax cluster props add=typescriptBOMLocationProp
1172  hi def link typescriptBOMLocationProp Keyword
1173  syntax keyword typescriptBOMLocationMethod contained assign reload replace toString nextgroup=typescriptFuncCallArg
1174  syntax cluster props add=typescriptBOMLocationMethod
1175  hi def link typescriptBOMLocationMethod Keyword
1176
1177  "runtime syntax/yats/web-history.vim
1178  syntax keyword typescriptBOMHistoryProp contained length current next previous state
1179  syntax keyword typescriptBOMHistoryProp contained scrollRestoration
1180  syntax cluster props add=typescriptBOMHistoryProp
1181  hi def link typescriptBOMHistoryProp Keyword
1182  syntax keyword typescriptBOMHistoryMethod contained back forward go pushState replaceState nextgroup=typescriptFuncCallArg
1183  syntax cluster props add=typescriptBOMHistoryMethod
1184  hi def link typescriptBOMHistoryMethod Keyword
1185
1186  "runtime syntax/yats/web-console.vim
1187  syntax keyword typescriptGlobal containedin=typescriptIdentifierName console
1188  syntax keyword typescriptConsoleMethod contained count dir error group groupCollapsed nextgroup=typescriptFuncCallArg
1189  syntax keyword typescriptConsoleMethod contained groupEnd info log time timeEnd trace nextgroup=typescriptFuncCallArg
1190  syntax keyword typescriptConsoleMethod contained warn nextgroup=typescriptFuncCallArg
1191  syntax cluster props add=typescriptConsoleMethod
1192  hi def link typescriptConsoleMethod Keyword
1193
1194  "runtime syntax/yats/web-xhr.vim
1195  syntax keyword typescriptXHRGlobal containedin=typescriptIdentifierName XMLHttpRequest
1196  hi def link typescriptXHRGlobal Structure
1197  syntax keyword typescriptXHRProp contained onreadystatechange readyState response
1198  syntax keyword typescriptXHRProp contained responseText responseType responseXML status
1199  syntax keyword typescriptXHRProp contained statusText timeout ontimeout upload withCredentials
1200  syntax cluster props add=typescriptXHRProp
1201  hi def link typescriptXHRProp Keyword
1202  syntax keyword typescriptXHRMethod contained abort getAllResponseHeaders getResponseHeader nextgroup=typescriptFuncCallArg
1203  syntax keyword typescriptXHRMethod contained open overrideMimeType send setRequestHeader nextgroup=typescriptFuncCallArg
1204  syntax cluster props add=typescriptXHRMethod
1205  hi def link typescriptXHRMethod Keyword
1206
1207  "runtime syntax/yats/web-blob.vim
1208  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Blob BlobBuilder
1209  syntax keyword typescriptGlobal containedin=typescriptIdentifierName File FileReader
1210  syntax keyword typescriptGlobal containedin=typescriptIdentifierName FileReaderSync
1211  syntax keyword typescriptGlobal containedin=typescriptIdentifierName URL nextgroup=typescriptGlobalURLDot,typescriptFuncCallArg
1212  syntax match   typescriptGlobalURLDot /\./ contained nextgroup=typescriptURLStaticMethod,typescriptProp
1213  syntax keyword typescriptGlobal containedin=typescriptIdentifierName URLUtils
1214  syntax keyword typescriptFileMethod contained readAsArrayBuffer readAsBinaryString nextgroup=typescriptFuncCallArg
1215  syntax keyword typescriptFileMethod contained readAsDataURL readAsText nextgroup=typescriptFuncCallArg
1216  syntax cluster props add=typescriptFileMethod
1217  hi def link typescriptFileMethod Keyword
1218  syntax keyword typescriptFileReaderProp contained error readyState result
1219  syntax cluster props add=typescriptFileReaderProp
1220  hi def link typescriptFileReaderProp Keyword
1221  syntax keyword typescriptFileReaderMethod contained abort readAsArrayBuffer readAsBinaryString nextgroup=typescriptFuncCallArg
1222  syntax keyword typescriptFileReaderMethod contained readAsDataURL readAsText nextgroup=typescriptFuncCallArg
1223  syntax cluster props add=typescriptFileReaderMethod
1224  hi def link typescriptFileReaderMethod Keyword
1225  syntax keyword typescriptFileListMethod contained item nextgroup=typescriptFuncCallArg
1226  syntax cluster props add=typescriptFileListMethod
1227  hi def link typescriptFileListMethod Keyword
1228  syntax keyword typescriptBlobMethod contained append getBlob getFile nextgroup=typescriptFuncCallArg
1229  syntax cluster props add=typescriptBlobMethod
1230  hi def link typescriptBlobMethod Keyword
1231  syntax keyword typescriptURLUtilsProp contained hash host hostname href origin password
1232  syntax keyword typescriptURLUtilsProp contained pathname port protocol search searchParams
1233  syntax keyword typescriptURLUtilsProp contained username
1234  syntax cluster props add=typescriptURLUtilsProp
1235  hi def link typescriptURLUtilsProp Keyword
1236  syntax keyword typescriptURLStaticMethod contained createObjectURL revokeObjectURL nextgroup=typescriptFuncCallArg
1237  hi def link typescriptURLStaticMethod Keyword
1238
1239  "runtime syntax/yats/web-crypto.vim
1240  syntax keyword typescriptCryptoGlobal containedin=typescriptIdentifierName crypto
1241  hi def link typescriptCryptoGlobal Structure
1242  syntax keyword typescriptSubtleCryptoMethod contained encrypt decrypt sign verify nextgroup=typescriptFuncCallArg
1243  syntax keyword typescriptSubtleCryptoMethod contained digest nextgroup=typescriptFuncCallArg
1244  syntax cluster props add=typescriptSubtleCryptoMethod
1245  hi def link typescriptSubtleCryptoMethod Keyword
1246  syntax keyword typescriptCryptoProp contained subtle
1247  syntax cluster props add=typescriptCryptoProp
1248  hi def link typescriptCryptoProp Keyword
1249  syntax keyword typescriptCryptoMethod contained getRandomValues nextgroup=typescriptFuncCallArg
1250  syntax cluster props add=typescriptCryptoMethod
1251  hi def link typescriptCryptoMethod Keyword
1252
1253  "runtime syntax/yats/web-fetch.vim
1254  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Headers Request
1255  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Response
1256  syntax keyword typescriptGlobalMethod containedin=typescriptIdentifierName fetch nextgroup=typescriptFuncCallArg
1257  syntax cluster props add=typescriptGlobalMethod
1258  hi def link typescriptGlobalMethod Structure
1259  syntax keyword typescriptHeadersMethod contained append delete get getAll has set nextgroup=typescriptFuncCallArg
1260  syntax cluster props add=typescriptHeadersMethod
1261  hi def link typescriptHeadersMethod Keyword
1262  syntax keyword typescriptRequestProp contained method url headers context referrer
1263  syntax keyword typescriptRequestProp contained mode credentials cache
1264  syntax cluster props add=typescriptRequestProp
1265  hi def link typescriptRequestProp Keyword
1266  syntax keyword typescriptRequestMethod contained clone nextgroup=typescriptFuncCallArg
1267  syntax cluster props add=typescriptRequestMethod
1268  hi def link typescriptRequestMethod Keyword
1269  syntax keyword typescriptResponseProp contained type url status statusText headers
1270  syntax keyword typescriptResponseProp contained redirected
1271  syntax cluster props add=typescriptResponseProp
1272  hi def link typescriptResponseProp Keyword
1273  syntax keyword typescriptResponseMethod contained clone nextgroup=typescriptFuncCallArg
1274  syntax cluster props add=typescriptResponseMethod
1275  hi def link typescriptResponseMethod Keyword
1276
1277  "runtime syntax/yats/web-service-worker.vim
1278  syntax keyword typescriptServiceWorkerProp contained controller ready
1279  syntax cluster props add=typescriptServiceWorkerProp
1280  hi def link typescriptServiceWorkerProp Keyword
1281  syntax keyword typescriptServiceWorkerMethod contained register getRegistration nextgroup=typescriptFuncCallArg
1282  syntax cluster props add=typescriptServiceWorkerMethod
1283  hi def link typescriptServiceWorkerMethod Keyword
1284  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Cache
1285  syntax keyword typescriptCacheMethod contained match matchAll add addAll put delete nextgroup=typescriptFuncCallArg
1286  syntax keyword typescriptCacheMethod contained keys nextgroup=typescriptFuncCallArg
1287  syntax cluster props add=typescriptCacheMethod
1288  hi def link typescriptCacheMethod Keyword
1289
1290  "runtime syntax/yats/web-encoding.vim
1291  syntax keyword typescriptEncodingGlobal containedin=typescriptIdentifierName TextEncoder
1292  syntax keyword typescriptEncodingGlobal containedin=typescriptIdentifierName TextDecoder
1293  hi def link typescriptEncodingGlobal Structure
1294  syntax keyword typescriptEncodingProp contained encoding fatal ignoreBOM
1295  syntax cluster props add=typescriptEncodingProp
1296  hi def link typescriptEncodingProp Keyword
1297  syntax keyword typescriptEncodingMethod contained encode decode nextgroup=typescriptFuncCallArg
1298  syntax cluster props add=typescriptEncodingMethod
1299  hi def link typescriptEncodingMethod Keyword
1300
1301  "runtime syntax/yats/web-geo.vim
1302  syntax keyword typescriptGlobal containedin=typescriptIdentifierName Geolocation
1303  syntax keyword typescriptGeolocationMethod contained getCurrentPosition watchPosition nextgroup=typescriptFuncCallArg
1304  syntax keyword typescriptGeolocationMethod contained clearWatch nextgroup=typescriptFuncCallArg
1305  syntax cluster props add=typescriptGeolocationMethod
1306  hi def link typescriptGeolocationMethod Keyword
1307
1308  "runtime syntax/yats/web-network.vim
1309  syntax keyword typescriptGlobal containedin=typescriptIdentifierName NetworkInformation
1310  syntax keyword typescriptBOMNetworkProp contained downlink downlinkMax effectiveType
1311  syntax keyword typescriptBOMNetworkProp contained rtt type
1312  syntax cluster props add=typescriptBOMNetworkProp
1313  hi def link typescriptBOMNetworkProp Keyword
1314
1315  "runtime syntax/yats/web-payment.vim
1316  syntax keyword typescriptGlobal containedin=typescriptIdentifierName PaymentRequest
1317  syntax keyword typescriptPaymentMethod contained show abort canMakePayment nextgroup=typescriptFuncCallArg
1318  syntax cluster props add=typescriptPaymentMethod
1319  hi def link typescriptPaymentMethod Keyword
1320  syntax keyword typescriptPaymentProp contained shippingAddress shippingOption result
1321  syntax cluster props add=typescriptPaymentProp
1322  hi def link typescriptPaymentProp Keyword
1323  syntax keyword typescriptPaymentEvent contained onshippingaddresschange onshippingoptionchange
1324  hi def link typescriptPaymentEvent Keyword
1325  syntax keyword typescriptPaymentResponseMethod contained complete nextgroup=typescriptFuncCallArg
1326  syntax cluster props add=typescriptPaymentResponseMethod
1327  hi def link typescriptPaymentResponseMethod Keyword
1328  syntax keyword typescriptPaymentResponseProp contained details methodName payerEmail
1329  syntax keyword typescriptPaymentResponseProp contained payerPhone shippingAddress
1330  syntax keyword typescriptPaymentResponseProp contained shippingOption
1331  syntax cluster props add=typescriptPaymentResponseProp
1332  hi def link typescriptPaymentResponseProp Keyword
1333  syntax keyword typescriptPaymentAddressProp contained addressLine careOf city country
1334  syntax keyword typescriptPaymentAddressProp contained country dependentLocality languageCode
1335  syntax keyword typescriptPaymentAddressProp contained organization phone postalCode
1336  syntax keyword typescriptPaymentAddressProp contained recipient region sortingCode
1337  syntax cluster props add=typescriptPaymentAddressProp
1338  hi def link typescriptPaymentAddressProp Keyword
1339  syntax keyword typescriptPaymentShippingOptionProp contained id label amount selected
1340  syntax cluster props add=typescriptPaymentShippingOptionProp
1341  hi def link typescriptPaymentShippingOptionProp Keyword
1342
1343  "runtime syntax/yats/dom-node.vim
1344  syntax keyword typescriptDOMNodeProp contained attributes baseURI baseURIObject childNodes
1345  syntax keyword typescriptDOMNodeProp contained firstChild lastChild localName namespaceURI
1346  syntax keyword typescriptDOMNodeProp contained nextSibling nodeName nodePrincipal
1347  syntax keyword typescriptDOMNodeProp contained nodeType nodeValue ownerDocument parentElement
1348  syntax keyword typescriptDOMNodeProp contained parentNode prefix previousSibling textContent
1349  syntax cluster props add=typescriptDOMNodeProp
1350  hi def link typescriptDOMNodeProp Keyword
1351  syntax keyword typescriptDOMNodeMethod contained appendChild cloneNode compareDocumentPosition nextgroup=typescriptFuncCallArg
1352  syntax keyword typescriptDOMNodeMethod contained getUserData hasAttributes hasChildNodes nextgroup=typescriptFuncCallArg
1353  syntax keyword typescriptDOMNodeMethod contained insertBefore isDefaultNamespace isEqualNode nextgroup=typescriptFuncCallArg
1354  syntax keyword typescriptDOMNodeMethod contained isSameNode isSupported lookupNamespaceURI nextgroup=typescriptFuncCallArg
1355  syntax keyword typescriptDOMNodeMethod contained lookupPrefix normalize removeChild nextgroup=typescriptFuncCallArg
1356  syntax keyword typescriptDOMNodeMethod contained replaceChild setUserData nextgroup=typescriptFuncCallArg
1357  syntax match typescriptDOMNodeMethod contained /contains/
1358  syntax cluster props add=typescriptDOMNodeMethod
1359  hi def link typescriptDOMNodeMethod Keyword
1360  syntax keyword typescriptDOMNodeType contained ELEMENT_NODE ATTRIBUTE_NODE TEXT_NODE
1361  syntax keyword typescriptDOMNodeType contained CDATA_SECTION_NODEN_NODE ENTITY_REFERENCE_NODE
1362  syntax keyword typescriptDOMNodeType contained ENTITY_NODE PROCESSING_INSTRUCTION_NODEN_NODE
1363  syntax keyword typescriptDOMNodeType contained COMMENT_NODE DOCUMENT_NODE DOCUMENT_TYPE_NODE
1364  syntax keyword typescriptDOMNodeType contained DOCUMENT_FRAGMENT_NODE NOTATION_NODE
1365  hi def link typescriptDOMNodeType Keyword
1366
1367  "runtime syntax/yats/dom-elem.vim
1368  syntax keyword typescriptDOMElemAttrs contained accessKey clientHeight clientLeft
1369  syntax keyword typescriptDOMElemAttrs contained clientTop clientWidth id innerHTML
1370  syntax keyword typescriptDOMElemAttrs contained length onafterscriptexecute onbeforescriptexecute
1371  syntax keyword typescriptDOMElemAttrs contained oncopy oncut onpaste onwheel scrollHeight
1372  syntax keyword typescriptDOMElemAttrs contained scrollLeft scrollTop scrollWidth tagName
1373  syntax keyword typescriptDOMElemAttrs contained classList className name outerHTML
1374  syntax keyword typescriptDOMElemAttrs contained style
1375  hi def link typescriptDOMElemAttrs Keyword
1376  syntax keyword typescriptDOMElemFuncs contained getAttributeNS getAttributeNode getAttributeNodeNS
1377  syntax keyword typescriptDOMElemFuncs contained getBoundingClientRect getClientRects
1378  syntax keyword typescriptDOMElemFuncs contained getElementsByClassName getElementsByTagName
1379  syntax keyword typescriptDOMElemFuncs contained getElementsByTagNameNS hasAttribute
1380  syntax keyword typescriptDOMElemFuncs contained hasAttributeNS insertAdjacentHTML
1381  syntax keyword typescriptDOMElemFuncs contained matches querySelector querySelectorAll
1382  syntax keyword typescriptDOMElemFuncs contained removeAttribute removeAttributeNS
1383  syntax keyword typescriptDOMElemFuncs contained removeAttributeNode requestFullscreen
1384  syntax keyword typescriptDOMElemFuncs contained requestPointerLock scrollIntoView
1385  syntax keyword typescriptDOMElemFuncs contained setAttribute setAttributeNS setAttributeNode
1386  syntax keyword typescriptDOMElemFuncs contained setAttributeNodeNS setCapture supports
1387  syntax keyword typescriptDOMElemFuncs contained getAttribute
1388  hi def link typescriptDOMElemFuncs Keyword
1389
1390  "runtime syntax/yats/dom-document.vim
1391  syntax keyword typescriptDOMDocProp contained activeElement body cookie defaultView
1392  syntax keyword typescriptDOMDocProp contained designMode dir domain embeds forms head
1393  syntax keyword typescriptDOMDocProp contained images lastModified links location plugins
1394  syntax keyword typescriptDOMDocProp contained postMessage readyState referrer registerElement
1395  syntax keyword typescriptDOMDocProp contained scripts styleSheets title vlinkColor
1396  syntax keyword typescriptDOMDocProp contained xmlEncoding characterSet compatMode
1397  syntax keyword typescriptDOMDocProp contained contentType currentScript doctype documentElement
1398  syntax keyword typescriptDOMDocProp contained documentURI documentURIObject firstChild
1399  syntax keyword typescriptDOMDocProp contained implementation lastStyleSheetSet namespaceURI
1400  syntax keyword typescriptDOMDocProp contained nodePrincipal ononline pointerLockElement
1401  syntax keyword typescriptDOMDocProp contained popupNode preferredStyleSheetSet selectedStyleSheetSet
1402  syntax keyword typescriptDOMDocProp contained styleSheetSets textContent tooltipNode
1403  syntax cluster props add=typescriptDOMDocProp
1404  hi def link typescriptDOMDocProp Keyword
1405  syntax keyword typescriptDOMDocMethod contained caretPositionFromPoint close createNodeIterator nextgroup=typescriptFuncCallArg
1406  syntax keyword typescriptDOMDocMethod contained createRange createTreeWalker elementFromPoint nextgroup=typescriptFuncCallArg
1407  syntax keyword typescriptDOMDocMethod contained getElementsByName adoptNode createAttribute nextgroup=typescriptFuncCallArg
1408  syntax keyword typescriptDOMDocMethod contained createCDATASection createComment createDocumentFragment nextgroup=typescriptFuncCallArg
1409  syntax keyword typescriptDOMDocMethod contained createElement createElementNS createEvent nextgroup=typescriptFuncCallArg
1410  syntax keyword typescriptDOMDocMethod contained createExpression createNSResolver nextgroup=typescriptFuncCallArg
1411  syntax keyword typescriptDOMDocMethod contained createProcessingInstruction createTextNode nextgroup=typescriptFuncCallArg
1412  syntax keyword typescriptDOMDocMethod contained enableStyleSheetsForSet evaluate execCommand nextgroup=typescriptFuncCallArg
1413  syntax keyword typescriptDOMDocMethod contained exitPointerLock getBoxObjectFor getElementById nextgroup=typescriptFuncCallArg
1414  syntax keyword typescriptDOMDocMethod contained getElementsByClassName getElementsByTagName nextgroup=typescriptFuncCallArg
1415  syntax keyword typescriptDOMDocMethod contained getElementsByTagNameNS getSelection nextgroup=typescriptFuncCallArg
1416  syntax keyword typescriptDOMDocMethod contained hasFocus importNode loadOverlay open nextgroup=typescriptFuncCallArg
1417  syntax keyword typescriptDOMDocMethod contained queryCommandSupported querySelector nextgroup=typescriptFuncCallArg
1418  syntax keyword typescriptDOMDocMethod contained querySelectorAll write writeln nextgroup=typescriptFuncCallArg
1419  syntax cluster props add=typescriptDOMDocMethod
1420  hi def link typescriptDOMDocMethod Keyword
1421
1422  "runtime syntax/yats/dom-event.vim
1423  syntax keyword typescriptDOMEventTargetMethod contained addEventListener removeEventListener nextgroup=typescriptEventFuncCallArg
1424  syntax keyword typescriptDOMEventTargetMethod contained dispatchEvent waitUntil nextgroup=typescriptEventFuncCallArg
1425  syntax cluster props add=typescriptDOMEventTargetMethod
1426  hi def link typescriptDOMEventTargetMethod Keyword
1427  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName AnimationEvent
1428  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName AudioProcessingEvent
1429  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BeforeInputEvent
1430  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BeforeUnloadEvent
1431  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName BlobEvent
1432  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ClipboardEvent
1433  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CloseEvent
1434  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CompositionEvent
1435  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CSSFontFaceLoadEvent
1436  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName CustomEvent
1437  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceLightEvent
1438  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceMotionEvent
1439  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceOrientationEvent
1440  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DeviceProximityEvent
1441  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DOMTransactionEvent
1442  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName DragEvent
1443  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName EditingBeforeInputEvent
1444  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ErrorEvent
1445  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName FocusEvent
1446  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName GamepadEvent
1447  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName HashChangeEvent
1448  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName IDBVersionChangeEvent
1449  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName KeyboardEvent
1450  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MediaStreamEvent
1451  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MessageEvent
1452  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MouseEvent
1453  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName MutationEvent
1454  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName OfflineAudioCompletionEvent
1455  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PageTransitionEvent
1456  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PointerEvent
1457  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName PopStateEvent
1458  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName ProgressEvent
1459  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName RelatedEvent
1460  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName RTCPeerConnectionIceEvent
1461  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SensorEvent
1462  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName StorageEvent
1463  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SVGEvent
1464  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName SVGZoomEvent
1465  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TimeEvent
1466  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TouchEvent
1467  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TrackEvent
1468  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName TransitionEvent
1469  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName UIEvent
1470  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName UserProximityEvent
1471  syntax keyword typescriptDOMEventCons containedin=typescriptIdentifierName WheelEvent
1472  hi def link typescriptDOMEventCons Structure
1473  syntax keyword typescriptDOMEventProp contained bubbles cancelable currentTarget defaultPrevented
1474  syntax keyword typescriptDOMEventProp contained eventPhase target timeStamp type isTrusted
1475  syntax keyword typescriptDOMEventProp contained isReload
1476  syntax cluster props add=typescriptDOMEventProp
1477  hi def link typescriptDOMEventProp Keyword
1478  syntax keyword typescriptDOMEventMethod contained initEvent preventDefault stopImmediatePropagation nextgroup=typescriptEventFuncCallArg
1479  syntax keyword typescriptDOMEventMethod contained stopPropagation respondWith default nextgroup=typescriptEventFuncCallArg
1480  syntax cluster props add=typescriptDOMEventMethod
1481  hi def link typescriptDOMEventMethod Keyword
1482
1483  "runtime syntax/yats/dom-storage.vim
1484  syntax keyword typescriptDOMStorage contained sessionStorage localStorage
1485  hi def link typescriptDOMStorage Keyword
1486  syntax keyword typescriptDOMStorageProp contained length
1487  syntax cluster props add=typescriptDOMStorageProp
1488  hi def link typescriptDOMStorageProp Keyword
1489  syntax keyword typescriptDOMStorageMethod contained getItem key setItem removeItem nextgroup=typescriptFuncCallArg
1490  syntax keyword typescriptDOMStorageMethod contained clear nextgroup=typescriptFuncCallArg
1491  syntax cluster props add=typescriptDOMStorageMethod
1492  hi def link typescriptDOMStorageMethod Keyword
1493
1494  "runtime syntax/yats/dom-form.vim
1495  syntax keyword typescriptDOMFormProp contained acceptCharset action elements encoding
1496  syntax keyword typescriptDOMFormProp contained enctype length method name target
1497  syntax cluster props add=typescriptDOMFormProp
1498  hi def link typescriptDOMFormProp Keyword
1499  syntax keyword typescriptDOMFormMethod contained reportValidity reset submit nextgroup=typescriptFuncCallArg
1500  syntax cluster props add=typescriptDOMFormMethod
1501  hi def link typescriptDOMFormMethod Keyword
1502
1503  "runtime syntax/yats/css.vim
1504  syntax keyword typescriptDOMStyle contained alignContent alignItems alignSelf animation
1505  syntax keyword typescriptDOMStyle contained animationDelay animationDirection animationDuration
1506  syntax keyword typescriptDOMStyle contained animationFillMode animationIterationCount
1507  syntax keyword typescriptDOMStyle contained animationName animationPlayState animationTimingFunction
1508  syntax keyword typescriptDOMStyle contained appearance backfaceVisibility background
1509  syntax keyword typescriptDOMStyle contained backgroundAttachment backgroundBlendMode
1510  syntax keyword typescriptDOMStyle contained backgroundClip backgroundColor backgroundImage
1511  syntax keyword typescriptDOMStyle contained backgroundOrigin backgroundPosition backgroundRepeat
1512  syntax keyword typescriptDOMStyle contained backgroundSize border borderBottom borderBottomColor
1513  syntax keyword typescriptDOMStyle contained borderBottomLeftRadius borderBottomRightRadius
1514  syntax keyword typescriptDOMStyle contained borderBottomStyle borderBottomWidth borderCollapse
1515  syntax keyword typescriptDOMStyle contained borderColor borderImage borderImageOutset
1516  syntax keyword typescriptDOMStyle contained borderImageRepeat borderImageSlice borderImageSource
1517  syntax keyword typescriptDOMStyle contained borderImageWidth borderLeft borderLeftColor
1518  syntax keyword typescriptDOMStyle contained borderLeftStyle borderLeftWidth borderRadius
1519  syntax keyword typescriptDOMStyle contained borderRight borderRightColor borderRightStyle
1520  syntax keyword typescriptDOMStyle contained borderRightWidth borderSpacing borderStyle
1521  syntax keyword typescriptDOMStyle contained borderTop borderTopColor borderTopLeftRadius
1522  syntax keyword typescriptDOMStyle contained borderTopRightRadius borderTopStyle borderTopWidth
1523  syntax keyword typescriptDOMStyle contained borderWidth bottom boxDecorationBreak
1524  syntax keyword typescriptDOMStyle contained boxShadow boxSizing breakAfter breakBefore
1525  syntax keyword typescriptDOMStyle contained breakInside captionSide caretColor caretShape
1526  syntax keyword typescriptDOMStyle contained caret clear clip clipPath color columns
1527  syntax keyword typescriptDOMStyle contained columnCount columnFill columnGap columnRule
1528  syntax keyword typescriptDOMStyle contained columnRuleColor columnRuleStyle columnRuleWidth
1529  syntax keyword typescriptDOMStyle contained columnSpan columnWidth content counterIncrement
1530  syntax keyword typescriptDOMStyle contained counterReset cursor direction display
1531  syntax keyword typescriptDOMStyle contained emptyCells flex flexBasis flexDirection
1532  syntax keyword typescriptDOMStyle contained flexFlow flexGrow flexShrink flexWrap
1533  syntax keyword typescriptDOMStyle contained float font fontFamily fontFeatureSettings
1534  syntax keyword typescriptDOMStyle contained fontKerning fontLanguageOverride fontSize
1535  syntax keyword typescriptDOMStyle contained fontSizeAdjust fontStretch fontStyle fontSynthesis
1536  syntax keyword typescriptDOMStyle contained fontVariant fontVariantAlternates fontVariantCaps
1537  syntax keyword typescriptDOMStyle contained fontVariantEastAsian fontVariantLigatures
1538  syntax keyword typescriptDOMStyle contained fontVariantNumeric fontVariantPosition
1539  syntax keyword typescriptDOMStyle contained fontWeight grad grid gridArea gridAutoColumns
1540  syntax keyword typescriptDOMStyle contained gridAutoFlow gridAutoPosition gridAutoRows
1541  syntax keyword typescriptDOMStyle contained gridColumn gridColumnStart gridColumnEnd
1542  syntax keyword typescriptDOMStyle contained gridRow gridRowStart gridRowEnd gridTemplate
1543  syntax keyword typescriptDOMStyle contained gridTemplateAreas gridTemplateRows gridTemplateColumns
1544  syntax keyword typescriptDOMStyle contained height hyphens imageRendering imageResolution
1545  syntax keyword typescriptDOMStyle contained imageOrientation imeMode inherit justifyContent
1546  syntax keyword typescriptDOMStyle contained left letterSpacing lineBreak lineHeight
1547  syntax keyword typescriptDOMStyle contained listStyle listStyleImage listStylePosition
1548  syntax keyword typescriptDOMStyle contained listStyleType margin marginBottom marginLeft
1549  syntax keyword typescriptDOMStyle contained marginRight marginTop marks mask maskType
1550  syntax keyword typescriptDOMStyle contained maxHeight maxWidth minHeight minWidth
1551  syntax keyword typescriptDOMStyle contained mixBlendMode objectFit objectPosition
1552  syntax keyword typescriptDOMStyle contained opacity order orphans outline outlineColor
1553  syntax keyword typescriptDOMStyle contained outlineOffset outlineStyle outlineWidth
1554  syntax keyword typescriptDOMStyle contained overflow overflowWrap overflowX overflowY
1555  syntax keyword typescriptDOMStyle contained overflowClipBox padding paddingBottom
1556  syntax keyword typescriptDOMStyle contained paddingLeft paddingRight paddingTop pageBreakAfter
1557  syntax keyword typescriptDOMStyle contained pageBreakBefore pageBreakInside perspective
1558  syntax keyword typescriptDOMStyle contained perspectiveOrigin pointerEvents position
1559  syntax keyword typescriptDOMStyle contained quotes resize right shapeImageThreshold
1560  syntax keyword typescriptDOMStyle contained shapeMargin shapeOutside tableLayout tabSize
1561  syntax keyword typescriptDOMStyle contained textAlign textAlignLast textCombineHorizontal
1562  syntax keyword typescriptDOMStyle contained textDecoration textDecorationColor textDecorationLine
1563  syntax keyword typescriptDOMStyle contained textDecorationStyle textIndent textOrientation
1564  syntax keyword typescriptDOMStyle contained textOverflow textRendering textShadow
1565  syntax keyword typescriptDOMStyle contained textTransform textUnderlinePosition top
1566  syntax keyword typescriptDOMStyle contained touchAction transform transformOrigin
1567  syntax keyword typescriptDOMStyle contained transformStyle transition transitionDelay
1568  syntax keyword typescriptDOMStyle contained transitionDuration transitionProperty
1569  syntax keyword typescriptDOMStyle contained transitionTimingFunction unicodeBidi unicodeRange
1570  syntax keyword typescriptDOMStyle contained userSelect userZoom verticalAlign visibility
1571  syntax keyword typescriptDOMStyle contained whiteSpace width willChange wordBreak
1572  syntax keyword typescriptDOMStyle contained wordSpacing wordWrap writingMode zIndex
1573  hi def link typescriptDOMStyle Keyword
1574
1575
1576
1577  let typescript_props = 1
1578
1579  "runtime syntax/yats/event.vim
1580  syntax keyword typescriptAnimationEvent contained animationend animationiteration
1581  syntax keyword typescriptAnimationEvent contained animationstart beginEvent endEvent
1582  syntax keyword typescriptAnimationEvent contained repeatEvent
1583  syntax cluster events add=typescriptAnimationEvent
1584  hi def link typescriptAnimationEvent Title
1585  syntax keyword typescriptCSSEvent contained CssRuleViewRefreshed CssRuleViewChanged
1586  syntax keyword typescriptCSSEvent contained CssRuleViewCSSLinkClicked transitionend
1587  syntax cluster events add=typescriptCSSEvent
1588  hi def link typescriptCSSEvent Title
1589  syntax keyword typescriptDatabaseEvent contained blocked complete error success upgradeneeded
1590  syntax keyword typescriptDatabaseEvent contained versionchange
1591  syntax cluster events add=typescriptDatabaseEvent
1592  hi def link typescriptDatabaseEvent Title
1593  syntax keyword typescriptDocumentEvent contained DOMLinkAdded DOMLinkRemoved DOMMetaAdded
1594  syntax keyword typescriptDocumentEvent contained DOMMetaRemoved DOMWillOpenModalDialog
1595  syntax keyword typescriptDocumentEvent contained DOMModalDialogClosed unload
1596  syntax cluster events add=typescriptDocumentEvent
1597  hi def link typescriptDocumentEvent Title
1598  syntax keyword typescriptDOMMutationEvent contained DOMAttributeNameChanged DOMAttrModified
1599  syntax keyword typescriptDOMMutationEvent contained DOMCharacterDataModified DOMContentLoaded
1600  syntax keyword typescriptDOMMutationEvent contained DOMElementNameChanged DOMNodeInserted
1601  syntax keyword typescriptDOMMutationEvent contained DOMNodeInsertedIntoDocument DOMNodeRemoved
1602  syntax keyword typescriptDOMMutationEvent contained DOMNodeRemovedFromDocument DOMSubtreeModified
1603  syntax cluster events add=typescriptDOMMutationEvent
1604  hi def link typescriptDOMMutationEvent Title
1605  syntax keyword typescriptDragEvent contained drag dragdrop dragend dragenter dragexit
1606  syntax keyword typescriptDragEvent contained draggesture dragleave dragover dragstart
1607  syntax keyword typescriptDragEvent contained drop
1608  syntax cluster events add=typescriptDragEvent
1609  hi def link typescriptDragEvent Title
1610  syntax keyword typescriptElementEvent contained invalid overflow underflow DOMAutoComplete
1611  syntax keyword typescriptElementEvent contained command commandupdate
1612  syntax cluster events add=typescriptElementEvent
1613  hi def link typescriptElementEvent Title
1614  syntax keyword typescriptFocusEvent contained blur change DOMFocusIn DOMFocusOut focus
1615  syntax keyword typescriptFocusEvent contained focusin focusout
1616  syntax cluster events add=typescriptFocusEvent
1617  hi def link typescriptFocusEvent Title
1618  syntax keyword typescriptFormEvent contained reset submit
1619  syntax cluster events add=typescriptFormEvent
1620  hi def link typescriptFormEvent Title
1621  syntax keyword typescriptFrameEvent contained DOMFrameContentLoaded
1622  syntax cluster events add=typescriptFrameEvent
1623  hi def link typescriptFrameEvent Title
1624  syntax keyword typescriptInputDeviceEvent contained click contextmenu DOMMouseScroll
1625  syntax keyword typescriptInputDeviceEvent contained dblclick gamepadconnected gamepaddisconnected
1626  syntax keyword typescriptInputDeviceEvent contained keydown keypress keyup MozGamepadButtonDown
1627  syntax keyword typescriptInputDeviceEvent contained MozGamepadButtonUp mousedown mouseenter
1628  syntax keyword typescriptInputDeviceEvent contained mouseleave mousemove mouseout
1629  syntax keyword typescriptInputDeviceEvent contained mouseover mouseup mousewheel MozMousePixelScroll
1630  syntax keyword typescriptInputDeviceEvent contained pointerlockchange pointerlockerror
1631  syntax keyword typescriptInputDeviceEvent contained wheel
1632  syntax cluster events add=typescriptInputDeviceEvent
1633  hi def link typescriptInputDeviceEvent Title
1634  syntax keyword typescriptMediaEvent contained audioprocess canplay canplaythrough
1635  syntax keyword typescriptMediaEvent contained durationchange emptied ended ended loadeddata
1636  syntax keyword typescriptMediaEvent contained loadedmetadata MozAudioAvailable pause
1637  syntax keyword typescriptMediaEvent contained play playing ratechange seeked seeking
1638  syntax keyword typescriptMediaEvent contained stalled suspend timeupdate volumechange
1639  syntax keyword typescriptMediaEvent contained waiting complete
1640  syntax cluster events add=typescriptMediaEvent
1641  hi def link typescriptMediaEvent Title
1642  syntax keyword typescriptMenuEvent contained DOMMenuItemActive DOMMenuItemInactive
1643  syntax cluster events add=typescriptMenuEvent
1644  hi def link typescriptMenuEvent Title
1645  syntax keyword typescriptNetworkEvent contained datachange dataerror disabled enabled
1646  syntax keyword typescriptNetworkEvent contained offline online statuschange connectionInfoUpdate
1647  syntax cluster events add=typescriptNetworkEvent
1648  hi def link typescriptNetworkEvent Title
1649  syntax keyword typescriptProgressEvent contained abort error load loadend loadstart
1650  syntax keyword typescriptProgressEvent contained progress timeout uploadprogress
1651  syntax cluster events add=typescriptProgressEvent
1652  hi def link typescriptProgressEvent Title
1653  syntax keyword typescriptResourceEvent contained cached error load
1654  syntax cluster events add=typescriptResourceEvent
1655  hi def link typescriptResourceEvent Title
1656  syntax keyword typescriptScriptEvent contained afterscriptexecute beforescriptexecute
1657  syntax cluster events add=typescriptScriptEvent
1658  hi def link typescriptScriptEvent Title
1659  syntax keyword typescriptSensorEvent contained compassneedscalibration devicelight
1660  syntax keyword typescriptSensorEvent contained devicemotion deviceorientation deviceproximity
1661  syntax keyword typescriptSensorEvent contained orientationchange userproximity
1662  syntax cluster events add=typescriptSensorEvent
1663  hi def link typescriptSensorEvent Title
1664  syntax keyword typescriptSessionHistoryEvent contained pagehide pageshow popstate
1665  syntax cluster events add=typescriptSessionHistoryEvent
1666  hi def link typescriptSessionHistoryEvent Title
1667  syntax keyword typescriptStorageEvent contained change storage
1668  syntax cluster events add=typescriptStorageEvent
1669  hi def link typescriptStorageEvent Title
1670  syntax keyword typescriptSVGEvent contained SVGAbort SVGError SVGLoad SVGResize SVGScroll
1671  syntax keyword typescriptSVGEvent contained SVGUnload SVGZoom
1672  syntax cluster events add=typescriptSVGEvent
1673  hi def link typescriptSVGEvent Title
1674  syntax keyword typescriptTabEvent contained visibilitychange
1675  syntax cluster events add=typescriptTabEvent
1676  hi def link typescriptTabEvent Title
1677  syntax keyword typescriptTextEvent contained compositionend compositionstart compositionupdate
1678  syntax keyword typescriptTextEvent contained copy cut paste select text
1679  syntax cluster events add=typescriptTextEvent
1680  hi def link typescriptTextEvent Title
1681  syntax keyword typescriptTouchEvent contained touchcancel touchend touchenter touchleave
1682  syntax keyword typescriptTouchEvent contained touchmove touchstart
1683  syntax cluster events add=typescriptTouchEvent
1684  hi def link typescriptTouchEvent Title
1685  syntax keyword typescriptUpdateEvent contained checking downloading error noupdate
1686  syntax keyword typescriptUpdateEvent contained obsolete updateready
1687  syntax cluster events add=typescriptUpdateEvent
1688  hi def link typescriptUpdateEvent Title
1689  syntax keyword typescriptValueChangeEvent contained hashchange input readystatechange
1690  syntax cluster events add=typescriptValueChangeEvent
1691  hi def link typescriptValueChangeEvent Title
1692  syntax keyword typescriptViewEvent contained fullscreen fullscreenchange fullscreenerror
1693  syntax keyword typescriptViewEvent contained resize scroll
1694  syntax cluster events add=typescriptViewEvent
1695  hi def link typescriptViewEvent Title
1696  syntax keyword typescriptWebsocketEvent contained close error message open
1697  syntax cluster events add=typescriptWebsocketEvent
1698  hi def link typescriptWebsocketEvent Title
1699  syntax keyword typescriptWindowEvent contained DOMWindowCreated DOMWindowClose DOMTitleChanged
1700  syntax cluster events add=typescriptWindowEvent
1701  hi def link typescriptWindowEvent Title
1702  syntax keyword typescriptUncategorizedEvent contained beforeunload message open show
1703  syntax cluster events add=typescriptUncategorizedEvent
1704  hi def link typescriptUncategorizedEvent Title
1705  syntax keyword typescriptServiceWorkerEvent contained install activate fetch
1706  syntax cluster events add=typescriptServiceWorkerEvent
1707  hi def link typescriptServiceWorkerEvent Title
1708
1709
1710endif
1711
1712" patch
1713"runtime syntax/basic/patch.vim
1714" patch for generated code
1715syntax keyword typescriptGlobal Promise
1716  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline
1717syntax keyword typescriptGlobal Map WeakMap
1718  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline
1719
1720"runtime syntax/basic/members.vim
1721syntax keyword typescriptConstructor           contained constructor
1722  \ nextgroup=@typescriptCallSignature
1723  \ skipwhite skipempty
1724
1725
1726syntax cluster memberNextGroup contains=typescriptMemberOptionality,typescriptTypeAnnotation,@typescriptCallSignature
1727
1728syntax match typescriptMember /\K\k*/
1729  \ nextgroup=@memberNextGroup
1730  \ contained skipwhite
1731
1732syntax match typescriptMethodAccessor contained /\v(get|set)\s\K/me=e-1
1733  \ nextgroup=@typescriptMembers
1734
1735syntax cluster typescriptPropertyMemberDeclaration contains=
1736  \ typescriptClassStatic,
1737  \ typescriptAccessibilityModifier,
1738  \ typescriptReadonlyModifier,
1739  \ typescriptMethodAccessor,
1740  \ @typescriptMembers
1741  " \ typescriptMemberVariableDeclaration
1742
1743syntax match typescriptMemberOptionality /?\|!/ contained
1744  \ nextgroup=typescriptTypeAnnotation,@typescriptCallSignature
1745  \ skipwhite skipempty
1746
1747syntax cluster typescriptMembers contains=typescriptMember,typescriptStringMember,typescriptComputedMember
1748
1749syntax keyword typescriptClassStatic static
1750  \ nextgroup=@typescriptMembers,typescriptAsyncFuncKeyword,typescriptReadonlyModifier
1751  \ skipwhite contained
1752
1753syntax keyword typescriptAccessibilityModifier public private protected contained
1754
1755syntax keyword typescriptReadonlyModifier readonly contained
1756
1757syntax region  typescriptStringMember   contained
1758  \ start=/\z(["']\)/  skip=/\\\\\|\\\z1\|\\\n/  end=/\z1/
1759  \ nextgroup=@memberNextGroup
1760  \ skipwhite skipempty
1761
1762syntax region  typescriptComputedMember   contained matchgroup=typescriptProperty
1763  \ start=/\[/rs=s+1 end=/]/
1764  \ contains=@typescriptValue,typescriptMember,typescriptMappedIn
1765  \ nextgroup=@memberNextGroup
1766  \ skipwhite skipempty
1767
1768"runtime syntax/basic/class.vim
1769"don't add typescriptMembers to nextgroup, let outer scope match it
1770" so we won't match abstract method outside abstract class
1771syntax keyword typescriptAbstract              abstract
1772  \ nextgroup=typescriptClassKeyword
1773  \ skipwhite skipnl
1774syntax keyword typescriptClassKeyword          class
1775  \ nextgroup=typescriptClassName,typescriptClassExtends,typescriptClassBlock
1776  \ skipwhite
1777
1778syntax match   typescriptClassName             contained /\K\k*/
1779  \ nextgroup=typescriptClassBlock,typescriptClassExtends,typescriptClassTypeParameter
1780  \ skipwhite skipnl
1781
1782syntax region typescriptClassTypeParameter
1783  \ start=/</ end=/>/
1784  \ contains=typescriptTypeParameter
1785  \ nextgroup=typescriptClassBlock,typescriptClassExtends
1786  \ contained skipwhite skipnl
1787
1788syntax keyword typescriptClassExtends          contained extends implements nextgroup=typescriptClassHeritage skipwhite skipnl
1789
1790syntax match   typescriptClassHeritage         contained /\v(\k|\.|\(|\))+/
1791  \ nextgroup=typescriptClassBlock,typescriptClassExtends,typescriptMixinComma,typescriptClassTypeArguments
1792  \ contains=@typescriptValue
1793  \ skipwhite skipnl
1794  \ contained
1795
1796syntax region typescriptClassTypeArguments matchgroup=typescriptTypeBrackets
1797  \ start=/</ end=/>/
1798  \ contains=@typescriptType
1799  \ nextgroup=typescriptClassExtends,typescriptClassBlock,typescriptMixinComma
1800  \ contained skipwhite skipnl
1801
1802syntax match typescriptMixinComma /,/ contained nextgroup=typescriptClassHeritage skipwhite skipnl
1803
1804" we need add arrowFunc to class block for high order arrow func
1805" see test case
1806syntax region  typescriptClassBlock matchgroup=typescriptBraces start=/{/ end=/}/
1807  \ contains=@typescriptPropertyMemberDeclaration,typescriptAbstract,@typescriptComments,typescriptBlock,typescriptAssign,typescriptDecorator,typescriptAsyncFuncKeyword,typescriptArrowFunc
1808  \ contained fold
1809
1810syntax keyword typescriptInterfaceKeyword          interface nextgroup=typescriptInterfaceName skipwhite
1811syntax match   typescriptInterfaceName             contained /\k\+/
1812  \ nextgroup=typescriptObjectType,typescriptInterfaceExtends,typescriptInterfaceTypeParameter
1813  \ skipwhite skipnl
1814syntax region typescriptInterfaceTypeParameter
1815  \ start=/</ end=/>/
1816  \ contains=typescriptTypeParameter
1817  \ nextgroup=typescriptObjectType,typescriptInterfaceExtends
1818  \ contained
1819  \ skipwhite skipnl
1820
1821syntax keyword typescriptInterfaceExtends          contained extends nextgroup=typescriptInterfaceHeritage skipwhite skipnl
1822
1823syntax match typescriptInterfaceHeritage contained /\v(\k|\.)+/
1824  \ nextgroup=typescriptObjectType,typescriptInterfaceComma,typescriptInterfaceTypeArguments
1825  \ skipwhite
1826
1827syntax region typescriptInterfaceTypeArguments matchgroup=typescriptTypeBrackets
1828  \ start=/</ end=/>/ skip=/\s*,\s*/
1829  \ contains=@typescriptType
1830  \ nextgroup=typescriptObjectType,typescriptInterfaceComma
1831  \ contained skipwhite
1832
1833syntax match typescriptInterfaceComma /,/ contained nextgroup=typescriptInterfaceHeritage skipwhite skipnl
1834
1835"runtime syntax/basic/cluster.vim
1836"Block VariableStatement EmptyStatement ExpressionStatement IfStatement IterationStatement ContinueStatement BreakStatement ReturnStatement WithStatement LabelledStatement SwitchStatement ThrowStatement TryStatement DebuggerStatement
1837syntax cluster typescriptStatement
1838  \ contains=typescriptBlock,typescriptVariable,
1839  \ @typescriptTopExpression,typescriptAssign,
1840  \ typescriptConditional,typescriptRepeat,typescriptBranch,
1841  \ typescriptLabel,typescriptStatementKeyword,
1842  \ typescriptFuncKeyword,
1843  \ typescriptTry,typescriptExceptions,typescriptDebugger,
1844  \ typescriptExport,typescriptInterfaceKeyword,typescriptEnum,
1845  \ typescriptModule,typescriptAliasKeyword,typescriptImport
1846
1847syntax cluster typescriptPrimitive  contains=typescriptString,typescriptTemplate,typescriptRegexpString,typescriptNumber,typescriptBoolean,typescriptNull,typescriptArray
1848
1849syntax cluster typescriptEventTypes            contains=typescriptEventString,typescriptTemplate,typescriptNumber,typescriptBoolean,typescriptNull
1850
1851" top level expression: no arrow func
1852" also no func keyword. funcKeyword is contained in statement
1853" funcKeyword allows overloading (func without body)
1854" funcImpl requires body
1855syntax cluster typescriptTopExpression
1856  \ contains=@typescriptPrimitive,
1857  \ typescriptIdentifier,typescriptIdentifierName,
1858  \ typescriptOperator,typescriptUnaryOp,
1859  \ typescriptParenExp,typescriptRegexpString,
1860  \ typescriptGlobal,typescriptAsyncFuncKeyword,
1861  \ typescriptClassKeyword,typescriptTypeCast
1862
1863" no object literal, used in type cast and arrow func
1864" TODO: change func keyword to funcImpl
1865syntax cluster typescriptExpression
1866  \ contains=@typescriptTopExpression,
1867  \ typescriptArrowFuncDef,
1868  \ typescriptFuncImpl
1869
1870syntax cluster typescriptValue
1871  \ contains=@typescriptExpression,typescriptObjectLiteral
1872
1873syntax cluster typescriptEventExpression       contains=typescriptArrowFuncDef,typescriptParenExp,@typescriptValue,typescriptRegexpString,@typescriptEventTypes,typescriptOperator,typescriptGlobal,jsxRegion
1874
1875"runtime syntax/basic/function.vim
1876syntax keyword typescriptAsyncFuncKeyword      async
1877  \ nextgroup=typescriptFuncKeyword,typescriptArrowFuncDef
1878  \ skipwhite
1879
1880syntax keyword typescriptAsyncFuncKeyword      await
1881  \ nextgroup=@typescriptValue
1882  \ skipwhite
1883
1884syntax keyword typescriptFuncKeyword           function
1885  \ nextgroup=typescriptAsyncFunc,typescriptFuncName,@typescriptCallSignature
1886  \ skipwhite skipempty
1887
1888syntax match   typescriptAsyncFunc             contained /*/
1889  \ nextgroup=typescriptFuncName,@typescriptCallSignature
1890  \ skipwhite skipempty
1891
1892syntax match   typescriptFuncName              contained /\K\k*/
1893  \ nextgroup=@typescriptCallSignature
1894  \ skipwhite
1895
1896" destructuring ({ a: ee }) =>
1897syntax match   typescriptArrowFuncDef          contained /({\_[^}]*}\(:\_[^)]\)\?)\s*=>/
1898  \ contains=typescriptArrowFuncArg,typescriptArrowFunc
1899  \ nextgroup=@typescriptExpression,typescriptBlock
1900  \ skipwhite skipempty
1901
1902" matches `(a) =>` or `([a]) =>` or
1903" `(
1904"  a) =>`
1905syntax match   typescriptArrowFuncDef          contained /(\(\_s*[a-zA-Z\$_\[.]\_[^)]*\)*)\s*=>/
1906  \ contains=typescriptArrowFuncArg,typescriptArrowFunc
1907  \ nextgroup=@typescriptExpression,typescriptBlock
1908  \ skipwhite skipempty
1909
1910syntax match   typescriptArrowFuncDef          contained /\K\k*\s*=>/
1911  \ contains=typescriptArrowFuncArg,typescriptArrowFunc
1912  \ nextgroup=@typescriptExpression,typescriptBlock
1913  \ skipwhite skipempty
1914
1915" TODO: optimize this pattern
1916syntax region   typescriptArrowFuncDef          contained start=/(\_[^)]*):/ end=/=>/
1917  \ contains=typescriptArrowFuncArg,typescriptArrowFunc,typescriptTypeAnnotation
1918  \ nextgroup=@typescriptExpression,typescriptBlock
1919  \ skipwhite skipempty keepend
1920
1921syntax match   typescriptArrowFunc             /=>/
1922syntax match   typescriptArrowFuncArg          contained /\K\k*/
1923syntax region  typescriptArrowFuncArg          contained start=/<\|(/ end=/\ze=>/ contains=@typescriptCallSignature
1924
1925syntax region typescriptReturnAnnotation contained start=/:/ end=/{/me=e-1 contains=@typescriptType nextgroup=typescriptBlock
1926
1927
1928syntax region typescriptFuncImpl contained start=/function/ end=/{/me=e-1
1929  \ contains=typescriptFuncKeyword
1930  \ nextgroup=typescriptBlock
1931
1932syntax cluster typescriptCallImpl contains=typescriptGenericImpl,typescriptParamImpl
1933syntax region typescriptGenericImpl matchgroup=typescriptTypeBrackets
1934  \ start=/</ end=/>/ skip=/\s*,\s*/
1935  \ contains=typescriptTypeParameter
1936  \ nextgroup=typescriptParamImpl
1937  \ contained skipwhite
1938syntax region typescriptParamImpl matchgroup=typescriptParens
1939  \ start=/(/ end=/)/
1940  \ contains=typescriptDecorator,@typescriptParameterList,@typescriptComments
1941  \ nextgroup=typescriptReturnAnnotation,typescriptBlock
1942  \ contained skipwhite skipnl
1943
1944"runtime syntax/basic/decorator.vim
1945syntax match typescriptDecorator /@\([_$a-zA-Z][_$a-zA-Z0-9]*\.\)*[_$a-zA-Z][_$a-zA-Z0-9]*\>/
1946  \ nextgroup=typescriptArgumentList,typescriptTypeArguments
1947  \ contains=@_semantic,typescriptDotNotation
1948
1949" Define the default highlighting.
1950hi def link typescriptReserved             Error
1951
1952hi def link typescriptEndColons            Exception
1953hi def link typescriptSymbols              Normal
1954hi def link typescriptBraces               Function
1955hi def link typescriptParens               Normal
1956hi def link typescriptComment              Comment
1957hi def link typescriptLineComment          Comment
1958hi def link typescriptDocComment           Comment
1959hi def link typescriptCommentTodo          Todo
1960hi def link typescriptRef                  Include
1961hi def link typescriptDocNotation          SpecialComment
1962hi def link typescriptDocTags              SpecialComment
1963hi def link typescriptDocNGParam           typescriptDocParam
1964hi def link typescriptDocParam             Function
1965hi def link typescriptDocNumParam          Function
1966hi def link typescriptDocEventRef          Function
1967hi def link typescriptDocNamedParamType    Type
1968hi def link typescriptDocParamName         Type
1969hi def link typescriptDocParamType         Type
1970hi def link typescriptString               String
1971hi def link typescriptSpecial              Special
1972hi def link typescriptStringLiteralType    String
1973hi def link typescriptStringMember         String
1974hi def link typescriptTemplate             String
1975hi def link typescriptEventString          String
1976hi def link typescriptASCII                Special
1977hi def link typescriptTemplateSB           Label
1978hi def link typescriptRegexpString         String
1979hi def link typescriptGlobal               Constant
1980hi def link typescriptTestGlobal           Function
1981hi def link typescriptPrototype            Type
1982hi def link typescriptConditional          Conditional
1983hi def link typescriptConditionalElse      Conditional
1984hi def link typescriptCase                 Conditional
1985hi def link typescriptDefault              typescriptCase
1986hi def link typescriptBranch               Conditional
1987hi def link typescriptIdentifier           Structure
1988hi def link typescriptVariable             Identifier
1989hi def link typescriptEnumKeyword          Identifier
1990hi def link typescriptRepeat               Repeat
1991hi def link typescriptForOperator          Repeat
1992hi def link typescriptStatementKeyword     Statement
1993hi def link typescriptMessage              Keyword
1994hi def link typescriptOperator             Identifier
1995hi def link typescriptKeywordOp            Identifier
1996hi def link typescriptCastKeyword          Special
1997hi def link typescriptType                 Type
1998hi def link typescriptNull                 Boolean
1999hi def link typescriptNumber               Number
2000hi def link typescriptExponent             Number
2001hi def link typescriptBoolean              Boolean
2002hi def link typescriptObjectLabel          typescriptLabel
2003hi def link typescriptLabel                Label
2004hi def link typescriptStringProperty       String
2005hi def link typescriptImport               Special
2006hi def link typescriptAmbientDeclaration   Special
2007hi def link typescriptExport               Special
2008hi def link typescriptModule               Special
2009hi def link typescriptTry                  Special
2010hi def link typescriptExceptions           Special
2011
2012hi def link typescriptMember              Function
2013hi def link typescriptMethodAccessor       Operator
2014
2015hi def link typescriptAsyncFuncKeyword     Keyword
2016hi def link typescriptAsyncFor             Keyword
2017hi def link typescriptFuncKeyword          Keyword
2018hi def link typescriptAsyncFunc            Keyword
2019hi def link typescriptArrowFunc            Type
2020hi def link typescriptFuncName             Function
2021hi def link typescriptFuncArg              PreProc
2022hi def link typescriptArrowFuncArg         PreProc
2023hi def link typescriptFuncComma            Operator
2024
2025hi def link typescriptClassKeyword         Keyword
2026hi def link typescriptClassExtends         Keyword
2027" hi def link typescriptClassName            Function
2028hi def link typescriptAbstract             Special
2029" hi def link typescriptClassHeritage        Function
2030" hi def link typescriptInterfaceHeritage    Function
2031hi def link typescriptClassStatic          StorageClass
2032hi def link typescriptReadonlyModifier     Keyword
2033hi def link typescriptInterfaceKeyword     Keyword
2034hi def link typescriptInterfaceExtends     Keyword
2035hi def link typescriptInterfaceName        Function
2036
2037hi def link shellbang                      Comment
2038
2039hi def link typescriptTypeParameter         Identifier
2040hi def link typescriptConstraint            Keyword
2041hi def link typescriptPredefinedType        Type
2042hi def link typescriptReadonlyArrayKeyword  Keyword
2043hi def link typescriptUnion                 Operator
2044hi def link typescriptFuncTypeArrow         Function
2045hi def link typescriptConstructorType       Function
2046hi def link typescriptTypeQuery             Keyword
2047hi def link typescriptAccessibilityModifier Keyword
2048hi def link typescriptOptionalMark          PreProc
2049hi def link typescriptFuncType              Special
2050hi def link typescriptMappedIn              Special
2051hi def link typescriptCall                  PreProc
2052hi def link typescriptParamImpl             PreProc
2053hi def link typescriptConstructSignature    Identifier
2054hi def link typescriptAliasDeclaration      Identifier
2055hi def link typescriptAliasKeyword          Keyword
2056hi def link typescriptUserDefinedType       Keyword
2057hi def link typescriptTypeReference         Identifier
2058hi def link typescriptConstructor           Keyword
2059hi def link typescriptDecorator             Special
2060hi def link typescriptAssertType            Keyword
2061
2062hi link typeScript             NONE
2063
2064if exists('s:cpo_save')
2065  let &cpo = s:cpo_save
2066  unlet s:cpo_save
2067endif
2068