<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>name</key>
	<string>Find Refs</string>
	<key>patterns</key>
	<array>
		<dict>
			<key>include</key>
			<string>#filename</string>
		</dict>
		<dict>
			<key>include</key>
			<string>#header</string>
		</dict>
		<dict>
			<key>include</key>
			<string>#footer</string>
		</dict>
		<dict>
			<key>include</key>
			<string>#reference</string>
		</dict>
		<dict>
			<key>include</key>
			<string>#line-with-match</string>
		</dict>
	</array>
	<key>repository</key>
	<dict>
		<key>access-modifier</key>
		<dict>
			<key>match</key>
			<string>\b(public|protected|private)\b</string>
			<key>name</key>
			<string>storage.modifier.ts</string>
		</dict>
		<key>arithmetic-operator</key>
		<dict>
			<key>match</key>
			<string>\*|/|\-\-|\-|\+\+|\+|%</string>
			<key>name</key>
			<string>keyword.operator.ts</string>
		</dict>
		<key>array-literal</key>
		<dict>
			<key>begin</key>
			<string>\[</string>
			<key>beginCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>brace.square.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|\]</string>
			<key>endCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>brace.square.ts</string>
				</dict>
			</dict>
			<key>name</key>
			<string>meta.array.literal.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>assignment-operator</key>
		<dict>
			<key>match</key>
			<string>&lt;&lt;=|&gt;&gt;=|&gt;&gt;&gt;=|\*=|(?&lt;!\()/=|%=|\+=|\-=|&amp;=|\^=</string>
			<key>name</key>
			<string>keyword.operator.ts</string>
		</dict>
		<key>block</key>
		<dict>
			<key>begin</key>
			<string>\{</string>
			<key>end</key>
			<string>$|\}</string>
			<key>name</key>
			<string>meta.block.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#object-member</string>
				</dict>
			</array>
		</dict>
		<key>boolean-literal</key>
		<dict>
			<key>match</key>
			<string>\b(false|true)\b</string>
			<key>name</key>
			<string>constant.language.boolean.ts</string>
		</dict>
		<key>cast</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>&lt;\s*([a-zA-Z_$][.\w$]*)\s*(?:&lt;([a-zA-Z_$][.\w$]*)&gt;)?\s*(\[\])*\s*&gt;</string>
			<key>name</key>
			<string>cast.expr.ts</string>
		</dict>
		<key>comment</key>
		<dict>
			<key>name</key>
			<string>comment.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment-block-doc</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#comment-block</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#comment-line</string>
				</dict>
			</array>
		</dict>
		<key>comment-block</key>
		<dict>
			<key>begin</key>
			<string>/\*</string>
			<key>end</key>
			<string>$|\*/</string>
			<key>name</key>
			<string>comment.block.ts</string>
		</dict>
		<key>comment-block-doc</key>
		<dict>
			<key>begin</key>
			<string>/\*\*(?!/)</string>
			<key>end</key>
			<string>$|\*/</string>
			<key>name</key>
			<string>comment.block.documentation.ts</string>
		</dict>
		<key>comment-line</key>
		<dict>
			<key>match</key>
			<string>(//).*$\n?</string>
			<key>name</key>
			<string>comment.line.ts</string>
		</dict>
		<key>control-statement</key>
		<dict>
			<key>match</key>
			<string>\b(break|catch|continue|declare|do|else|finally|for|if|return|switch|throw|try|while)\b</string>
			<key>name</key>
			<string>keyword.control.ts</string>
		</dict>
		<key>decl-block</key>
		<dict>
			<key>begin</key>
			<string>\{</string>
			<key>end</key>
			<string>$|(?=\})</string>
			<key>name</key>
			<string>meta.decl.block.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>declaration</key>
		<dict>
			<key>name</key>
			<string>meta.declaration.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#function-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#object-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#enum-declaration</string>
				</dict>
			</array>
		</dict>
		<key>enum-declaration</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.modifier.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
				<key>3</key>
				<dict>
					<key>name</key>
					<string>entity.name.class.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>(?:\b(const)\s+)?\b(enum)\s+([a-zA-Z_$][\w$]*)</string>
			<key>name</key>
			<string>meta.enum.declaration.ts</string>
		</dict>
		<key>expression</key>
		<dict>
			<key>name</key>
			<string>meta.expression.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#string</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#regex</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#template</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#literal</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#paren-expression</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#var-expr</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#cast</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#new-expr</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#block</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#expression-operator</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#relational-operator</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#arithmetic-operator</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#logic-operator</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#assignment-operator</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#storage-keyword</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#control-statement</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#switch-case</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#for-in-simple</string>
				</dict>
			</array>
		</dict>
		<key>expression-operator</key>
		<dict>
			<key>match</key>
			<string>=&gt;|\b(delete|export|import|in|instanceof|module|new|typeof|void)\b</string>
			<key>name</key>
			<string>keyword.operator.ts</string>
		</dict>
		<key>field-declaration</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>variable.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>\b([a-zA-Z_$][\w$]*)\s*(\?\s*)?(?=(=|:))</string>
			<key>name</key>
			<string>meta.field.declaration.ts</string>
		</dict>
		<key>filename</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>entity.name.filename.find-refs</string>
				</dict>
			</dict>
			<key>match</key>
			<string>^([^ ].*:)$</string>
		</dict>
		<key>footer</key>
		<dict>
			<key>match</key>
			<string>^[0-9]+ matches in [0-9+] files\s*$</string>
			<key>name</key>
			<string>text.find-refs</string>
		</dict>
		<key>for-in-simple</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
				<key>3</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>(?&lt;=\()\s*\b(var|let)\s+([a-zA-Z_$][\w$]*)\s+(in)\b</string>
			<key>name</key>
			<string>forin.expr.ts</string>
		</dict>
		<key>function-declaration</key>
		<dict>
			<key>begin</key>
			<string>\b(function)\b(?:\s+([a-zA-Z_$][\w$]*))?\s*</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.function.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>entity.name.function.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|(?=\}|;)</string>
			<key>name</key>
			<string>meta.function.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-parameters</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#function-parameters</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#return-type</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#decl-block</string>
				</dict>
			</array>
		</dict>
		<key>function-parameters</key>
		<dict>
			<key>begin</key>
			<string>\(</string>
			<key>end</key>
			<string>$|\)</string>
			<key>name</key>
			<string>meta.function-parameters.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#parameter-name</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#variable-initializer</string>
				</dict>
			</array>
		</dict>
		<key>function-type-parameters</key>
		<dict>
			<key>begin</key>
			<string>\(</string>
			<key>end</key>
			<string>$|\)</string>
			<key>name</key>
			<string>meta.function.type.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#parameter-name</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#variable-initializer</string>
				</dict>
			</array>
		</dict>
		<key>function-type-return-type</key>
		<dict>
			<key>begin</key>
			<string>=&gt;</string>
			<key>end</key>
			<string>$|(?=[,\){]|//)</string>
			<key>name</key>
			<string>meta.function.type.return.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type</string>
				</dict>
			</array>
		</dict>
		<key>header</key>
		<dict>
			<key>match</key>
			<string>^References to .*$</string>
			<key>name</key>
			<string>text.find-refs</string>
		</dict>
		<key>indexer-declaration</key>
		<dict>
			<key>begin</key>
			<string>\[</string>
			<key>end</key>
			<string>\]\s*(\?\s*)?|$</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>name</key>
			<string>meta.indexer.declaration.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#indexer-parameter</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>indexer-parameter</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>variable.parameter.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>([a-zA-Z_$][\w$]*)(?=\:)</string>
			<key>name</key>
			<string>meta.indexer.parameter.ts</string>
		</dict>
		<key>line-with-match</key>
		<dict>
			<key>begin</key>
			<string>^ +([0-9]+):</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>constant.numeric.line-number.match.find-refs</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#single-line-ts</string>
				</dict>
			</array>
		</dict>
		<key>literal</key>
		<dict>
			<key>name</key>
			<string>literal.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#numeric-literal</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#boolean-literal</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#null-literal</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#undefined-literal</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#array-literal</string>
				</dict>
			</array>
		</dict>
		<key>logic-operator</key>
		<dict>
			<key>match</key>
			<string>\!|&amp;|~|\||&amp;&amp;|\|\|</string>
			<key>name</key>
			<string>keyword.operator.ts</string>
		</dict>
		<key>method-declaration</key>
		<dict>
			<key>begin</key>
			<string>\b(?:(get|set)\s+)?\[?([a-zA-Z_$][\.\w$]*)\s*\]?\s*(\??)\s*(?=\()</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.property.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>entity.name.function.ts</string>
				</dict>
				<key>3</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|\}|[;,]</string>
			<key>name</key>
			<string>meta.method.declaration.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#function-parameters</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#decl-block</string>
				</dict>
			</array>
		</dict>
		<key>method-declaration-no-body</key>
		<dict>
			<key>begin</key>
			<string>\b(?:(get|set)\s+)?\[?([a-zA-Z_$][\.\w$]*)\s*\]?\s*(\??)\s*(?=\()</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.property.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>entity.name.function.ts</string>
				</dict>
				<key>3</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|(?=\})|[;,]</string>
			<key>name</key>
			<string>meta.method.declaration.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#function-parameters</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#decl-block</string>
				</dict>
			</array>
		</dict>
		<key>new-expr</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>\b(new)\b\s*([a-zA-Z_$][.\w$]*)</string>
			<key>name</key>
			<string>new.expr.ts</string>
		</dict>
		<key>null-literal</key>
		<dict>
			<key>match</key>
			<string>\b(null)\b</string>
			<key>name</key>
			<string>constant.language.null.ts</string>
		</dict>
		<key>numeric-literal</key>
		<dict>
			<key>match</key>
			<string>\b((0(x|X)[0-9a-fA-F]+)|([0-9]+(\.[0-9]+)?))\b</string>
			<key>name</key>
			<string>constant.numeric.ts</string>
		</dict>
		<key>object-body</key>
		<dict>
			<key>begin</key>
			<string>\{</string>
			<key>end</key>
			<string>$|(?=\})</string>
			<key>name</key>
			<string>meta.object.body.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#field-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#method-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#indexer-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#variable-initializer</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#access-modifier</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#static-modifier</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#property-accessor</string>
				</dict>
			</array>
		</dict>
		<key>object-declaration</key>
		<dict>
			<key>begin</key>
			<string>\b(?:(export)\s+)?\b(class|interface)\b(?:\s+([a-zA-Z_$][\w$]*))</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.modifier.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
				<key>3</key>
				<dict>
					<key>name</key>
					<string>entity.name.class.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|(?=\})</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>brace.curly.ts</string>
				</dict>
			</dict>
			<key>name</key>
			<string>meta.declaration.object.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type-parameters</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#object-heritage</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#object-body</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
			</array>
		</dict>
		<key>object-heritage</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.modifier.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>(?:\b(extends|implements)\b|,)(?:\s+([a-zA-Z_$][.\w$]*))</string>
			<key>name</key>
			<string>meta.object.heritage.ts</string>
		</dict>
		<key>object-member</key>
		<dict>
			<key>begin</key>
			<string>[a-zA-Z_$][\w$]*\s*:</string>
			<key>end</key>
			<string>$|(?=,|\})</string>
			<key>name</key>
			<string>meta.object.member.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>object-type</key>
		<dict>
			<key>begin</key>
			<string>\{</string>
			<key>end</key>
			<string>$|\}</string>
			<key>name</key>
			<string>meta.object.type.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#field-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#method-declaration-no-body</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#indexer-declaration</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
			</array>
		</dict>
		<key>parameter-name</key>
		<dict>
			<key>captures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.modifier.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
				<key>3</key>
				<dict>
					<key>name</key>
					<string>variable.parameter.ts</string>
				</dict>
				<key>4</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>match</key>
			<string>(?:\s*\b(public|private)\b\s+)?(\.\.\.)?\s*([a-zA-Z_$][\w$]*)\s*(\??)</string>
			<key>name</key>
			<string>parameter.name.ts</string>
		</dict>
		<key>paren-expression</key>
		<dict>
			<key>begin</key>
			<string>\(</string>
			<key>beginCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>brace.paren.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|\)</string>
			<key>endCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>brace.paren.ts</string>
				</dict>
			</dict>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>property-accessor</key>
		<dict>
			<key>match</key>
			<string>\b(get|set)\b</string>
			<key>name</key>
			<string>storage.type.property.ts</string>
		</dict>
		<key>qstring-double</key>
		<dict>
			<key>begin</key>
			<string>"</string>
			<key>end</key>
			<string>"|(?=$)</string>
			<key>name</key>
			<string>string.double.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#string-character-escape</string>
				</dict>
			</array>
		</dict>
		<key>qstring-single</key>
		<dict>
			<key>begin</key>
			<string>'</string>
			<key>end</key>
			<string>'|(?=$)</string>
			<key>name</key>
			<string>string.single.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#string-character-escape</string>
				</dict>
			</array>
		</dict>
		<key>regex</key>
		<dict>
			<key>begin</key>
			<string>(?&lt;=[=(:,\[]|^|return|&amp;&amp;|\|\||!)\s*(/)(?![/*+{}?])</string>
			<key>end</key>
			<string>$|(/)[igm]*</string>
			<key>name</key>
			<string>string.regex.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>match</key>
					<string>\\.</string>
					<key>name</key>
					<string>constant.character.escape.ts</string>
				</dict>
				<dict>
					<key>match</key>
					<string>\[(\\\]|[^\]])*\]</string>
					<key>name</key>
					<string>constant.character.class.ts</string>
				</dict>
			</array>
		</dict>
		<key>relational-operator</key>
		<dict>
			<key>match</key>
			<string>===|==|=|!=|!==|&lt;=|&gt;=|&lt;&gt;|&lt;|&gt;</string>
			<key>name</key>
			<string>keyword.operator.ts</string>
		</dict>
		<key>return-type</key>
		<dict>
			<key>begin</key>
			<string>(?&lt;=\)):</string>
			<key>end</key>
			<string>$|(?=\{|;|//)</string>
			<key>name</key>
			<string>meta.return.type.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type</string>
				</dict>
			</array>
		</dict>
		<key>single-line-ts</key>
		<dict>
			<key>name</key>
			<string>meta.ts.find-refs</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>static-modifier</key>
		<dict>
			<key>match</key>
			<string>\b(static)\b</string>
			<key>name</key>
			<string>keyword.other.ts</string>
		</dict>
		<key>storage-keyword</key>
		<dict>
			<key>match</key>
			<string>\b(number|boolean|string)\b</string>
			<key>name</key>
			<string>storage.type.ts</string>
		</dict>
		<key>string</key>
		<dict>
			<key>name</key>
			<string>string.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#qstring-single</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#qstring-double</string>
				</dict>
			</array>
		</dict>
		<key>string-character-escape</key>
		<dict>
			<key>match</key>
			<string>\\(x\h{2}|[0-2][0-7]{,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)</string>
			<key>name</key>
			<string>constant.character.escape</string>
		</dict>
		<key>switch-case</key>
		<dict>
			<key>begin</key>
			<string>\b(case|default)\b</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.control.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>:</string>
			<key>name</key>
			<string>case.expr.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>template</key>
		<dict>
			<key>begin</key>
			<string>`</string>
			<key>beginCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>string.template.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|`</string>
			<key>endCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>string.template.ts</string>
				</dict>
			</dict>
			<key>name</key>
			<string>meta.template.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#template-substitution-element</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#template-string-contents</string>
				</dict>
			</array>
		</dict>
		<key>template-string-contents</key>
		<dict>
			<key>begin</key>
			<string>.*?</string>
			<key>end</key>
			<string>$|(?=(\$\{|`))</string>
			<key>name</key>
			<string>string.template.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#string-character-escape</string>
				</dict>
			</array>
		</dict>
		<key>template-substitution-element</key>
		<dict>
			<key>begin</key>
			<string>\$\{</string>
			<key>beginCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|\}</string>
			<key>endCaptures</key>
			<dict>
				<key>0</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>name</key>
			<string>template.element.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
		<key>type</key>
		<dict>
			<key>name</key>
			<string>meta.type.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type-name</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-parameters</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type-union</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#object-type</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#function-type-parameters</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#function-type-return-type</string>
				</dict>
			</array>
		</dict>
		<key>type-annotation</key>
		<dict>
			<key>begin</key>
			<string>:</string>
			<key>end</key>
			<string>(?=[,);}\[\]])|(?==[^&gt;])|(?&lt;=[a-z]|&gt;)\s*(?=\{|$|//)</string>
			<key>name</key>
			<string>meta.type.annotation.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
			</array>
		</dict>
		<key>type-declaration</key>
		<dict>
			<key>begin</key>
			<string>\b(type)\b\s+([a-zA-Z_$][\w$]*)\s*=\s*</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.other.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|(?=[,);&gt;]|var|type|function|class|interface)</string>
			<key>name</key>
			<string>meta.type.declaration.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type</string>
				</dict>
			</array>
		</dict>
		<key>type-name</key>
		<dict>
			<key>match</key>
			<string>[a-zA-Z_$][.\w$]*</string>
			<key>name</key>
			<string>storage.type.ts</string>
		</dict>
		<key>type-parameters</key>
		<dict>
			<key>begin</key>
			<string>&lt;</string>
			<key>end</key>
			<string>$|(?=var|type|function|class|interface)|&gt;</string>
			<key>name</key>
			<string>meta.type.parameters.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>match</key>
					<string>\b(extends)\b</string>
					<key>name</key>
					<string>keyword.other.ts</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
				<dict>
					<key>include</key>
					<string>#type</string>
				</dict>
			</array>
		</dict>
		<key>type-union</key>
		<dict>
			<key>begin</key>
			<string>(\|)</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|([a-zA-Z_$][.\w$]*)</string>
			<key>endCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
			</dict>
			<key>name</key>
			<string>meta.type.union.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#comment</string>
				</dict>
			</array>
		</dict>
		<key>undefined-literal</key>
		<dict>
			<key>match</key>
			<string>\b(undefined)\b</string>
			<key>name</key>
			<string>constant.language.ts</string>
		</dict>
		<key>var-expr</key>
		<dict>
			<key>begin</key>
			<string>(?&lt;!\()\s*\b(var|let|const(?!\s+enum))\s+([a-zA-Z_$][\w$]*)</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>storage.type.ts</string>
				</dict>
				<key>2</key>
				<dict>
					<key>name</key>
					<string>variable.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|(?=[;=\}\{])|(?&lt;=\})</string>
			<key>name</key>
			<string>meta.var.expr.ts</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#type-annotation</string>
				</dict>
			</array>
		</dict>
		<key>variable-initializer</key>
		<dict>
			<key>begin</key>
			<string>(=)</string>
			<key>beginCaptures</key>
			<dict>
				<key>1</key>
				<dict>
					<key>name</key>
					<string>keyword.operator.ts</string>
				</dict>
			</dict>
			<key>end</key>
			<string>$|(?=[,);=])</string>
			<key>patterns</key>
			<array>
				<dict>
					<key>include</key>
					<string>#expression</string>
				</dict>
			</array>
		</dict>
	</dict>
	<key>scopeName</key>
	<string>text.find-refs</string>
	<key>uuid</key>
	<string>de594c8b-2688-48c1-bc73-b5c935e408b8</string>
</dict>
</plist>
