application/typescript;application/x-typescript;text/x-typescript;text/typescript
*.ts
//
/*
*/
.ts
(?!\N{U+2E2F})[\p{L}\p{Nl}\N{U+1885}-\N{U+1886}\N{U+2118}\N{U+212E}\N{U+309B}-\N{U+309C}\p{Mn}\p{Mc}\p{Nd}\p{Pc}\N{U+00B7}\N{U+0387}\N{U+1369}-\N{U+1371}\N{U+19DA}$\N{U+200C}\N{U+200D}]
(\.[\s\n\r]*[\w]+)[\s\n\r]*(?=\(.*\))
\%{js:keyword-start} abstract \%{js:keyword-end}
\%{js:keyword-start} any \%{js:keyword-end}
\%{js:keyword-start} asserts \%{js:keyword-end}
\%{js:keyword-start} bigint \%{js:keyword-end}
\%{js:keyword-start} boolean \%{js:keyword-end}
\%{js:keyword-start} declare \%{js:keyword-end}
\%{js:keyword-start} enum \%{js:keyword-end}
\%{js:keyword-start} global \%{js:keyword-end}
\%{js:keyword-start} implements \%{js:keyword-end}
\%{js:keyword-start} infer \%{js:keyword-end}
\%{js:keyword-start} interface \%{js:keyword-end}
\%{js:keyword-start} is \%{js:keyword-end}
\%{js:keyword-start} keyof \%{js:keyword-end}
\%{js:keyword-start} module \%{js:keyword-end}
\%{js:keyword-start} namespace \%{js:keyword-end}
\%{js:keyword-start} never \%{js:keyword-end}
\%{js:keyword-start} number \%{js:keyword-end}
\%{js:keyword-start} object \%{js:keyword-end}
\%{js:keyword-start} private \%{js:keyword-end}
\%{js:keyword-start} protected \%{js:keyword-end}
\%{js:keyword-start} public \%{js:keyword-end}
\%{js:keyword-start} readonly \%{js:keyword-end}
\%{js:keyword-start} require \%{js:keyword-end}
\%{js:keyword-start} string \%{js:keyword-end}
\%{js:keyword-start} symbol \%{js:keyword-end}
\%{js:keyword-start} type \%{js:keyword-end}
\%{js:keyword-start} undefined \%{js:keyword-end}
\%{js:keyword-start} unique \%{js:keyword-end}
\%{js:keyword-start} unknown \%{js:keyword-end}
(?: \%{abstract-keyword} \%{js:optional-whitespace-or-comments} )?
\%{js:class-keyword}
\%{js:before-next-token}
\%{js:before-next-token}
<
(?: amd-module | amd-dependency | reference )
(?>
(?:
\s+ |
(?<= \s ) [\w-]+ \s* = \s* (?: '[^']*' | "[^"]*" )
)*
)
/>
\%{js:identifier-container-start}
\%{def:always-match}
\.(?=\%{js:identifier-start})
\%{js:before-next-token}
(?=\.)
\.
\%{js:before-next-token}
\%{js:before-next-token}
#(?=\%{js:identifier-start})
\%{def:always-match}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:new-keyword}
\%{js:before-next-token}
\%{js:before-next-token}
\?
\%{js:before-next-token}
\%{js:before-next-token}
!
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:this-keyword}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\(
\)
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\.
\%{js:before-next-token}
@
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:keyword-start}
\%{js:keyword-end}
Exclude
Extract
InstanceType
NonNullable
Omit
Partial
Pick
ReadonlyArray
Readonly
Record
Required
ReturnType
ThisType
(?<! \%{js:identifier-char} )
(?= (?> \%{js:identifier} ) (?! \. ) )
\%{def:always-match}
\%{js:identifier-container-start}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\(
\)
\%{js:before-next-token}
\%{js:before-next-token}
\.
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:import-keyword}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:identifier-container-start}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}
,
\%{js:before-next-token}
:
\%{js:before-next-token}
\%{js:before-next-token}
\%{js:before-next-token}