; TypeScript call extraction queries
; Captures: @node (full call/new expression), @callee (function/method name)

; === Direct function calls ===

; foo(args)
(call_expression
  function: (identifier) @callee) @node

; === Method calls ===

; obj.method(args)
(call_expression
  function: (member_expression
    property: (property_identifier) @callee)) @node

; === Constructor calls ===

; new Foo(args)
(new_expression
  constructor: (identifier) @callee) @node
