treesitter - Hur använder jag node-tree-sitter-modulen från TypeScript?
Genom att titta på pull requests & problem ser jag att det finns TypeScript-definitioner (möjligen för närvarande föråldrade) i node-tree-sitter-modulen; hur får jag åtkomst till dessa definitioner från TypeScript, och vad skulle motsvarigheten till följande node-tree-sitter-exempel på JavaScript-kod vara i TypeScript?
const Parser = require('tree-sitter');
const JavaScript = require('tree-sitter-javascript');
const parser = new Parser();
parser.setLanguage(JavaScript);
const sourceCode = 'let x = 1; console.log(x);';
const tree = parser.parse(sourceCode);
console.log(tree.rootNode.toString());
Svar #1
Modulen tree-sitter har ingen separat @types/tree-sitter-modul (som vissa andra moduler) utan levererar istället en typdefinitionsfil tree-sitter.d.ts tillsammans med själva tree-sitter-modulen. Du kan hitta denna fil i din node_modules/tree-sitter-katalog. TypeScript hittar denna fil automatiskt när du importerar tree-sitter. Därför kan du skriva om exempel JavaScript-koden i TypeScript på följande sätt:
import Parser = require('tree-sitter');
import JavaScript = require('tree-sitter-javascript');
const parser: Parser = new Parser();
parser.setLanguage(JavaScript);
const sourceCode: string = 'let x = 1; console.log(x);';
const tree: Parser.Tree = parser.parse(sourceCode);
console.log(tree.rootNode.toString());
