summaryrefslogtreecommitdiff
path: root/queries/typescript/locals.scm
diff options
context:
space:
mode:
Diffstat (limited to 'queries/typescript/locals.scm')
-rw-r--r--queries/typescript/locals.scm63
1 files changed, 63 insertions, 0 deletions
diff --git a/queries/typescript/locals.scm b/queries/typescript/locals.scm
index 405f5c02..9127ac11 100644
--- a/queries/typescript/locals.scm
+++ b/queries/typescript/locals.scm
@@ -1,4 +1,67 @@
; inherits: ecma
+; inherits: (jsx)
+
+; Scopes
+;-------
+
+(statement_block) @scope
+(function) @scope
+(arrow_function) @scope
+(function_declaration) @scope
+(method_definition) @scope
+(for_statement) @scope
+(for_in_statement) @scope
+(catch_clause) @scope
+
+; Definitions
+;------------
+
+;(formal_parameters
+ ;(identifier) @definition.parameter)
+
+;(formal_parameters
+ ;(object_pattern
+ ;(identifier) @definition.parameter))
+
+;; function(arg = []) {
+;(formal_parameters
+ ;(assignment_pattern
+ ;(shorthand_property_identifier) @definition.parameter))
+
+;; x => x
+;(arrow_function
+ ;parameter: (identifier) @definition.parameter)
+
+;(formal_parameters
+ ;(object_pattern
+ ;(shorthand_property_identifier) @definition.parameter))
+
+;(formal_parameters
+ ;(array_pattern
+ ;(identifier) @definition.parameter))
+
+;(formal_parameters
+ ;(rest_parameter
+ ;(identifier) @definition.parameter))
+
+(variable_declarator
+ name: (identifier) @definition.var)
+
+(import_specifier
+ (identifier) @definition.import)
+
+(namespace_import
+ (identifier) @definition.import)
+
+(function_declaration
+ ((identifier) @definition.var)
+ (#set! definition.var.scope parent))
+
+; References
+;------------
+
+(identifier) @reference
+(shorthand_property_identifier) @reference
(required_parameter (identifier) @definition)
(optional_parameter (identifier) @definition)