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