codebaxing 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +402 -0
  3. package/README.vi.md +402 -0
  4. package/dist/core/exceptions.d.ts +25 -0
  5. package/dist/core/exceptions.d.ts.map +1 -0
  6. package/dist/core/exceptions.js +46 -0
  7. package/dist/core/exceptions.js.map +1 -0
  8. package/dist/core/interfaces.d.ts +13 -0
  9. package/dist/core/interfaces.d.ts.map +1 -0
  10. package/dist/core/interfaces.js +5 -0
  11. package/dist/core/interfaces.js.map +1 -0
  12. package/dist/core/models.d.ts +132 -0
  13. package/dist/core/models.d.ts.map +1 -0
  14. package/dist/core/models.js +303 -0
  15. package/dist/core/models.js.map +1 -0
  16. package/dist/index.d.ts +17 -0
  17. package/dist/index.d.ts.map +1 -0
  18. package/dist/index.js +20 -0
  19. package/dist/index.js.map +1 -0
  20. package/dist/indexing/embedding-service.d.ts +66 -0
  21. package/dist/indexing/embedding-service.d.ts.map +1 -0
  22. package/dist/indexing/embedding-service.js +271 -0
  23. package/dist/indexing/embedding-service.js.map +1 -0
  24. package/dist/indexing/memory-retriever.d.ts +58 -0
  25. package/dist/indexing/memory-retriever.d.ts.map +1 -0
  26. package/dist/indexing/memory-retriever.js +327 -0
  27. package/dist/indexing/memory-retriever.js.map +1 -0
  28. package/dist/indexing/parallel-indexer.d.ts +36 -0
  29. package/dist/indexing/parallel-indexer.d.ts.map +1 -0
  30. package/dist/indexing/parallel-indexer.js +67 -0
  31. package/dist/indexing/parallel-indexer.js.map +1 -0
  32. package/dist/indexing/source-retriever.d.ts +66 -0
  33. package/dist/indexing/source-retriever.d.ts.map +1 -0
  34. package/dist/indexing/source-retriever.js +420 -0
  35. package/dist/indexing/source-retriever.js.map +1 -0
  36. package/dist/mcp/server.d.ts +16 -0
  37. package/dist/mcp/server.d.ts.map +1 -0
  38. package/dist/mcp/server.js +370 -0
  39. package/dist/mcp/server.js.map +1 -0
  40. package/dist/mcp/state.d.ts +26 -0
  41. package/dist/mcp/state.d.ts.map +1 -0
  42. package/dist/mcp/state.js +154 -0
  43. package/dist/mcp/state.js.map +1 -0
  44. package/dist/parsers/language-configs.d.ts +26 -0
  45. package/dist/parsers/language-configs.d.ts.map +1 -0
  46. package/dist/parsers/language-configs.js +422 -0
  47. package/dist/parsers/language-configs.js.map +1 -0
  48. package/dist/parsers/treesitter-parser.d.ts +37 -0
  49. package/dist/parsers/treesitter-parser.d.ts.map +1 -0
  50. package/dist/parsers/treesitter-parser.js +602 -0
  51. package/dist/parsers/treesitter-parser.js.map +1 -0
  52. package/package.json +91 -0
@@ -0,0 +1,26 @@
1
+ /**
2
+ * Language-specific configurations for tree-sitter parsing.
3
+ *
4
+ * Supported Languages (24):
5
+ * Python, JavaScript, TypeScript, C, C++, Bash, Go, Java, Kotlin,
6
+ * Rust, Ruby, C#, PHP, Scala, Swift, Lua, Dart, Elixir, Haskell,
7
+ * OCaml, Zig, Perl, CSS, HTML
8
+ */
9
+ export declare const EXTENSION_MAP: Record<string, string>;
10
+ export interface LanguageConfig {
11
+ functionTypes: string[];
12
+ classTypes: string[];
13
+ methodTypes: string[];
14
+ constantTypes?: string[];
15
+ importTypes: string[];
16
+ callTypes: string[];
17
+ docstringField: string;
18
+ identifierField: string;
19
+ bodyField: string;
20
+ [key: string]: unknown;
21
+ }
22
+ export declare const LANGUAGE_CONFIGS: Record<string, LanguageConfig>;
23
+ export declare function getLanguageForFile(filepath: string): string | undefined;
24
+ export declare function getConfigForLanguage(language: string): LanguageConfig;
25
+ export declare function getSupportedExtensions(): Set<string>;
26
+ //# sourceMappingURL=language-configs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-configs.d.ts","sourceRoot":"","sources":["../../src/parsers/language-configs.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA6GhD,CAAC;AAIF,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAkV3D,CAAC;AAIF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAGvE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,CAQrE;AAED,wBAAgB,sBAAsB,IAAI,GAAG,CAAC,MAAM,CAAC,CAEpD"}
@@ -0,0 +1,422 @@
1
+ /**
2
+ * Language-specific configurations for tree-sitter parsing.
3
+ *
4
+ * Supported Languages (24):
5
+ * Python, JavaScript, TypeScript, C, C++, Bash, Go, Java, Kotlin,
6
+ * Rust, Ruby, C#, PHP, Scala, Swift, Lua, Dart, Elixir, Haskell,
7
+ * OCaml, Zig, Perl, CSS, HTML
8
+ */
9
+ import path from 'node:path';
10
+ // ─── Extension to Language Mapping ───────────────────────────────────────────
11
+ export const EXTENSION_MAP = {
12
+ // Python
13
+ '.py': 'python',
14
+ '.pyi': 'python',
15
+ '.pyw': 'python',
16
+ // JavaScript/TypeScript
17
+ '.js': 'javascript',
18
+ '.jsx': 'javascript',
19
+ '.mjs': 'javascript',
20
+ '.cjs': 'javascript',
21
+ '.ts': 'typescript',
22
+ '.tsx': 'typescript',
23
+ '.mts': 'typescript',
24
+ '.cts': 'typescript',
25
+ // C/C++
26
+ '.c': 'c',
27
+ '.h': 'c',
28
+ '.cpp': 'cpp',
29
+ '.cc': 'cpp',
30
+ '.cxx': 'cpp',
31
+ '.c++': 'cpp',
32
+ '.hpp': 'cpp',
33
+ '.hh': 'cpp',
34
+ '.hxx': 'cpp',
35
+ '.h++': 'cpp',
36
+ // Bash
37
+ '.sh': 'bash',
38
+ '.bash': 'bash',
39
+ '.zsh': 'bash',
40
+ // Go
41
+ '.go': 'go',
42
+ // Java
43
+ '.java': 'java',
44
+ // Kotlin
45
+ '.kt': 'kotlin',
46
+ '.kts': 'kotlin',
47
+ // Rust
48
+ '.rs': 'rust',
49
+ // Ruby
50
+ '.rb': 'ruby',
51
+ '.rake': 'ruby',
52
+ '.gemspec': 'ruby',
53
+ // C#
54
+ '.cs': 'csharp',
55
+ // PHP
56
+ '.php': 'php',
57
+ '.phtml': 'php',
58
+ // Scala
59
+ '.scala': 'scala',
60
+ '.sc': 'scala',
61
+ // Swift
62
+ '.swift': 'swift',
63
+ // Lua
64
+ '.lua': 'lua',
65
+ // Dart
66
+ '.dart': 'dart',
67
+ // Elixir
68
+ '.ex': 'elixir',
69
+ '.exs': 'elixir',
70
+ // Haskell
71
+ '.hs': 'haskell',
72
+ '.lhs': 'haskell',
73
+ // OCaml
74
+ '.ml': 'ocaml',
75
+ '.mli': 'ocaml',
76
+ // Zig
77
+ '.zig': 'zig',
78
+ // Perl
79
+ '.pl': 'perl',
80
+ '.pm': 'perl',
81
+ // CSS/SCSS
82
+ '.css': 'css',
83
+ '.scss': 'css',
84
+ // HTML
85
+ '.html': 'html',
86
+ '.htm': 'html',
87
+ // Vue (SFC)
88
+ '.vue': 'vue',
89
+ // Config/Data (indexable for search but fewer symbols)
90
+ '.json': 'json',
91
+ '.yaml': 'yaml',
92
+ '.yml': 'yaml',
93
+ '.toml': 'toml',
94
+ // Makefile
95
+ '.mk': 'make',
96
+ };
97
+ export const LANGUAGE_CONFIGS = {
98
+ python: {
99
+ functionTypes: ['function_definition'],
100
+ classTypes: ['class_definition'],
101
+ methodTypes: ['function_definition'],
102
+ constantTypes: ['expression_statement'],
103
+ importTypes: ['import_statement', 'import_from_statement'],
104
+ callTypes: ['call'],
105
+ docstringField: 'string',
106
+ identifierField: 'name',
107
+ bodyField: 'body',
108
+ },
109
+ javascript: {
110
+ functionTypes: ['function_declaration', 'function', 'generator_function_declaration'],
111
+ classTypes: ['class_declaration'],
112
+ methodTypes: ['method_definition', 'function_expression', 'arrow_function'],
113
+ constantTypes: ['lexical_declaration'],
114
+ importTypes: ['import_statement', 'import_clause'],
115
+ callTypes: ['call_expression', 'new_expression'],
116
+ docstringField: 'comment',
117
+ identifierField: 'name',
118
+ bodyField: 'body',
119
+ },
120
+ typescript: {
121
+ functionTypes: ['function_declaration', 'function_signature', 'generator_function_declaration'],
122
+ classTypes: ['class_declaration', 'interface_declaration', 'type_alias_declaration'],
123
+ methodTypes: ['method_definition', 'method_signature', 'arrow_function', 'function_expression'],
124
+ importTypes: ['import_statement', 'import_clause'],
125
+ callTypes: ['call_expression', 'new_expression'],
126
+ docstringField: 'comment',
127
+ identifierField: 'name',
128
+ bodyField: 'body',
129
+ },
130
+ c: {
131
+ functionTypes: ['function_definition', 'function_declarator'],
132
+ classTypes: ['struct_specifier', 'union_specifier'],
133
+ methodTypes: ['function_definition'],
134
+ importTypes: ['preproc_include'],
135
+ callTypes: ['call_expression'],
136
+ docstringField: 'comment',
137
+ identifierField: 'declarator',
138
+ bodyField: 'body',
139
+ },
140
+ cpp: {
141
+ functionTypes: ['function_definition'],
142
+ classTypes: ['class_specifier', 'struct_specifier', 'union_specifier'],
143
+ methodTypes: ['function_definition'],
144
+ importTypes: ['preproc_include'],
145
+ callTypes: ['call_expression'],
146
+ docstringField: 'comment',
147
+ identifierField: 'declarator',
148
+ bodyField: 'body',
149
+ },
150
+ bash: {
151
+ functionTypes: ['function_definition'],
152
+ classTypes: [],
153
+ methodTypes: [],
154
+ constantTypes: ['declaration_command'],
155
+ importTypes: ['command'],
156
+ callTypes: ['command', 'command_substitution'],
157
+ docstringField: 'comment',
158
+ identifierField: 'name',
159
+ bodyField: 'body',
160
+ },
161
+ go: {
162
+ functionTypes: ['function_declaration'],
163
+ classTypes: ['type_declaration'],
164
+ methodTypes: ['method_declaration'],
165
+ constantTypes: ['const_declaration'],
166
+ importTypes: ['import_declaration', 'import_spec'],
167
+ callTypes: ['call_expression'],
168
+ docstringField: 'comment',
169
+ identifierField: 'name',
170
+ bodyField: 'body',
171
+ },
172
+ java: {
173
+ functionTypes: ['method_declaration'],
174
+ classTypes: ['class_declaration', 'interface_declaration', 'enum_declaration'],
175
+ methodTypes: ['method_declaration', 'constructor_declaration'],
176
+ constantTypes: ['field_declaration'],
177
+ importTypes: ['import_declaration'],
178
+ callTypes: ['method_invocation', 'object_creation_expression'],
179
+ docstringField: 'comment',
180
+ identifierField: 'name',
181
+ bodyField: 'body',
182
+ },
183
+ kotlin: {
184
+ functionTypes: ['function_declaration'],
185
+ classTypes: ['class_declaration', 'object_declaration'],
186
+ methodTypes: ['function_declaration'],
187
+ constantTypes: ['property_declaration'],
188
+ importTypes: ['import_header'],
189
+ callTypes: ['call_expression'],
190
+ docstringField: 'comment',
191
+ identifierField: 'simple_identifier',
192
+ bodyField: 'class_body',
193
+ },
194
+ // ─── New Languages ───────────────────────────────────────────────────────
195
+ rust: {
196
+ functionTypes: ['function_item'],
197
+ classTypes: ['struct_item', 'enum_item', 'trait_item', 'impl_item', 'type_item'],
198
+ methodTypes: ['function_item'],
199
+ constantTypes: ['const_item', 'static_item'],
200
+ importTypes: ['use_declaration'],
201
+ callTypes: ['call_expression'],
202
+ docstringField: 'line_comment',
203
+ identifierField: 'name',
204
+ bodyField: 'body',
205
+ },
206
+ ruby: {
207
+ functionTypes: ['method', 'singleton_method'],
208
+ classTypes: ['class', 'module'],
209
+ methodTypes: ['method', 'singleton_method'],
210
+ constantTypes: ['assignment'],
211
+ importTypes: ['call'], // require / require_relative
212
+ callTypes: ['call', 'method_call'],
213
+ docstringField: 'comment',
214
+ identifierField: 'name',
215
+ bodyField: 'body',
216
+ },
217
+ csharp: {
218
+ functionTypes: ['method_declaration'],
219
+ classTypes: ['class_declaration', 'interface_declaration', 'struct_declaration', 'enum_declaration', 'record_declaration'],
220
+ methodTypes: ['method_declaration', 'constructor_declaration'],
221
+ constantTypes: ['field_declaration'],
222
+ importTypes: ['using_directive'],
223
+ callTypes: ['invocation_expression', 'object_creation_expression'],
224
+ docstringField: 'comment',
225
+ identifierField: 'name',
226
+ bodyField: 'body',
227
+ },
228
+ php: {
229
+ functionTypes: ['function_definition'],
230
+ classTypes: ['class_declaration', 'interface_declaration', 'trait_declaration', 'enum_declaration'],
231
+ methodTypes: ['method_declaration'],
232
+ constantTypes: ['const_declaration'],
233
+ importTypes: ['namespace_use_declaration'],
234
+ callTypes: ['function_call_expression', 'member_call_expression', 'scoped_call_expression'],
235
+ docstringField: 'comment',
236
+ identifierField: 'name',
237
+ bodyField: 'body',
238
+ },
239
+ scala: {
240
+ functionTypes: ['function_definition', 'val_definition'],
241
+ classTypes: ['class_definition', 'object_definition', 'trait_definition'],
242
+ methodTypes: ['function_definition'],
243
+ constantTypes: ['val_definition'],
244
+ importTypes: ['import_declaration'],
245
+ callTypes: ['call_expression'],
246
+ docstringField: 'comment',
247
+ identifierField: 'name',
248
+ bodyField: 'body',
249
+ },
250
+ swift: {
251
+ functionTypes: ['function_declaration'],
252
+ classTypes: ['class_declaration', 'struct_declaration', 'protocol_declaration', 'enum_declaration'],
253
+ methodTypes: ['function_declaration'],
254
+ constantTypes: ['property_declaration'],
255
+ importTypes: ['import_declaration'],
256
+ callTypes: ['call_expression'],
257
+ docstringField: 'comment',
258
+ identifierField: 'name',
259
+ bodyField: 'body',
260
+ },
261
+ lua: {
262
+ functionTypes: ['function_declaration', 'function_definition_statement'],
263
+ classTypes: [],
264
+ methodTypes: ['function_declaration'],
265
+ constantTypes: ['variable_declaration'],
266
+ importTypes: ['function_call'], // require()
267
+ callTypes: ['function_call'],
268
+ docstringField: 'comment',
269
+ identifierField: 'name',
270
+ bodyField: 'body',
271
+ },
272
+ dart: {
273
+ functionTypes: ['function_signature'],
274
+ classTypes: ['class_definition', 'enum_declaration', 'mixin_declaration'],
275
+ methodTypes: ['function_signature'],
276
+ constantTypes: ['initialized_variable_definition'],
277
+ importTypes: ['import_or_export'],
278
+ callTypes: ['invocation_expression'],
279
+ docstringField: 'comment',
280
+ identifierField: 'name',
281
+ bodyField: 'body',
282
+ },
283
+ elixir: {
284
+ functionTypes: ['call'], // def/defp
285
+ classTypes: ['call'], // defmodule
286
+ methodTypes: ['call'],
287
+ importTypes: ['call'], // import/use/require/alias
288
+ callTypes: ['call'],
289
+ docstringField: 'string',
290
+ identifierField: 'name',
291
+ bodyField: 'body',
292
+ },
293
+ haskell: {
294
+ functionTypes: ['function', 'signature'],
295
+ classTypes: ['type_class', 'datatype', 'newtype'],
296
+ methodTypes: ['function'],
297
+ constantTypes: ['signature'],
298
+ importTypes: ['import'],
299
+ callTypes: ['function_application'],
300
+ docstringField: 'comment',
301
+ identifierField: 'name',
302
+ bodyField: 'body',
303
+ },
304
+ ocaml: {
305
+ functionTypes: ['value_definition'],
306
+ classTypes: ['type_definition', 'module_definition', 'class_definition'],
307
+ methodTypes: ['method_definition'],
308
+ importTypes: ['open_statement'],
309
+ callTypes: ['application'],
310
+ docstringField: 'comment',
311
+ identifierField: 'name',
312
+ bodyField: 'body',
313
+ },
314
+ zig: {
315
+ functionTypes: ['FnProto'],
316
+ classTypes: ['ContainerDecl'],
317
+ methodTypes: ['FnProto'],
318
+ constantTypes: ['VarDecl'],
319
+ importTypes: [], // @import is a builtin call
320
+ callTypes: ['FnCallExpr', 'BuiltinCallExpr'],
321
+ docstringField: 'line_comment',
322
+ identifierField: 'name',
323
+ bodyField: 'body',
324
+ },
325
+ perl: {
326
+ functionTypes: ['subroutine_declaration_statement'],
327
+ classTypes: ['package_statement'],
328
+ methodTypes: ['subroutine_declaration_statement'],
329
+ importTypes: ['use_no_statement', 'require_expression'],
330
+ callTypes: ['call_expression', 'method_call_expression'],
331
+ docstringField: 'comment',
332
+ identifierField: 'name',
333
+ bodyField: 'body',
334
+ },
335
+ css: {
336
+ functionTypes: [],
337
+ classTypes: ['rule_set'],
338
+ methodTypes: [],
339
+ importTypes: ['import_statement'],
340
+ callTypes: ['call_expression'],
341
+ docstringField: 'comment',
342
+ identifierField: 'name',
343
+ bodyField: 'block',
344
+ },
345
+ html: {
346
+ functionTypes: [],
347
+ classTypes: ['element'],
348
+ methodTypes: [],
349
+ importTypes: [],
350
+ callTypes: [],
351
+ docstringField: 'comment',
352
+ identifierField: 'tag_name',
353
+ bodyField: 'body',
354
+ },
355
+ vue: {
356
+ functionTypes: [],
357
+ classTypes: ['element'],
358
+ methodTypes: [],
359
+ importTypes: [],
360
+ callTypes: [],
361
+ docstringField: 'comment',
362
+ identifierField: 'tag_name',
363
+ bodyField: 'body',
364
+ },
365
+ json: {
366
+ functionTypes: [],
367
+ classTypes: ['object'],
368
+ methodTypes: [],
369
+ importTypes: [],
370
+ callTypes: [],
371
+ docstringField: '',
372
+ identifierField: 'key',
373
+ bodyField: 'body',
374
+ },
375
+ yaml: {
376
+ functionTypes: [],
377
+ classTypes: ['block_mapping'],
378
+ methodTypes: [],
379
+ importTypes: [],
380
+ callTypes: [],
381
+ docstringField: 'comment',
382
+ identifierField: 'key',
383
+ bodyField: 'body',
384
+ },
385
+ toml: {
386
+ functionTypes: [],
387
+ classTypes: ['table'],
388
+ methodTypes: [],
389
+ importTypes: [],
390
+ callTypes: [],
391
+ docstringField: 'comment',
392
+ identifierField: 'key',
393
+ bodyField: 'body',
394
+ },
395
+ make: {
396
+ functionTypes: ['rule'],
397
+ classTypes: [],
398
+ methodTypes: [],
399
+ constantTypes: ['variable_assignment'],
400
+ importTypes: ['include_directive'],
401
+ callTypes: ['function_call'],
402
+ docstringField: 'comment',
403
+ identifierField: 'name',
404
+ bodyField: 'recipe',
405
+ },
406
+ };
407
+ // ─── Helper Functions ────────────────────────────────────────────────────────
408
+ export function getLanguageForFile(filepath) {
409
+ const ext = path.extname(filepath).toLowerCase();
410
+ return EXTENSION_MAP[ext];
411
+ }
412
+ export function getConfigForLanguage(language) {
413
+ const config = LANGUAGE_CONFIGS[language];
414
+ if (!config) {
415
+ throw new Error(`Unsupported language: ${language}. Supported: ${Object.keys(LANGUAGE_CONFIGS).join(', ')}`);
416
+ }
417
+ return config;
418
+ }
419
+ export function getSupportedExtensions() {
420
+ return new Set(Object.keys(EXTENSION_MAP));
421
+ }
422
+ //# sourceMappingURL=language-configs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"language-configs.js","sourceRoot":"","sources":["../../src/parsers/language-configs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * TreeSitterParser - Multi-language code parser using tree-sitter.
3
+ *
4
+ * Supported Languages: Python, JavaScript, TypeScript, C, C++, Bash, Go, Java, Kotlin
5
+ */
6
+ import type { IParser } from '../core/interfaces.js';
7
+ import { ParsedFile } from '../core/models.js';
8
+ export declare class TreeSitterParser implements IParser {
9
+ private parsers;
10
+ private failedLanguages;
11
+ canParse(filepath: string): boolean;
12
+ parseFile(filepath: string): ParsedFile;
13
+ getSupportedExtensions(): string[];
14
+ private getParser;
15
+ /**
16
+ * Pre-load all grammar packages (handles both CJS and ESM-only packages).
17
+ * Call once at startup before parsing files.
18
+ */
19
+ initLanguages(): Promise<{
20
+ loaded: string[];
21
+ failed: string[];
22
+ }>;
23
+ private extractSymbols;
24
+ private extractClassSymbol;
25
+ private extractFunctionSymbol;
26
+ private extractConstantSymbol;
27
+ private extractImports;
28
+ private extractImportsFromNode;
29
+ private extractCallsFromNode;
30
+ private getCallName;
31
+ private extractDocstring;
32
+ private getBodyNode;
33
+ private getNodeName;
34
+ private getNodeText;
35
+ private getCodeSnippet;
36
+ }
37
+ //# sourceMappingURL=treesitter-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"treesitter-parser.d.ts","sourceRoot":"","sources":["../../src/parsers/treesitter-parser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAU,UAAU,EAAc,MAAM,mBAAmB,CAAC;AAwDnE,qBAAa,gBAAiB,YAAW,OAAO;IAC9C,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,eAAe,CAA0B;IAEjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAInC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU;IAkGvC,sBAAsB,IAAI,MAAM,EAAE;IAIlC,OAAO,CAAC,SAAS;IA0CjB;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAsCtE,OAAO,CAAC,cAAc;IAqDtB,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,qBAAqB;IAoC7B,OAAO,CAAC,qBAAqB;IAuF7B,OAAO,CAAC,cAAc;IAwBtB,OAAO,CAAC,sBAAsB;IAwB9B,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,CAAC,WAAW;IAqCnB,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,WAAW;IA2BnB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,cAAc;CAOvB"}