code-auditor-mcp 1.20.0 → 2.0.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 (180) hide show
  1. package/dist/adapters/GoAdapter.d.ts +53 -0
  2. package/dist/adapters/GoAdapter.d.ts.map +1 -0
  3. package/dist/adapters/GoAdapter.js +602 -0
  4. package/dist/adapters/GoAdapter.js.map +1 -0
  5. package/dist/adapters/GoConfig.d.ts +35 -0
  6. package/dist/adapters/GoConfig.d.ts.map +1 -0
  7. package/dist/adapters/GoConfig.js +155 -0
  8. package/dist/adapters/GoConfig.js.map +1 -0
  9. package/dist/adapters/LanguageAdapter.d.ts +135 -0
  10. package/dist/adapters/LanguageAdapter.d.ts.map +1 -0
  11. package/dist/adapters/LanguageAdapter.js +47 -0
  12. package/dist/adapters/LanguageAdapter.js.map +1 -0
  13. package/dist/adapters/TypeScriptAdapter.d.ts +43 -0
  14. package/dist/adapters/TypeScriptAdapter.d.ts.map +1 -0
  15. package/dist/adapters/TypeScriptAdapter.js +386 -0
  16. package/dist/adapters/TypeScriptAdapter.js.map +1 -0
  17. package/dist/adapters/UniversalAnalyzer.d.ts +42 -0
  18. package/dist/adapters/UniversalAnalyzer.d.ts.map +1 -0
  19. package/dist/adapters/UniversalAnalyzer.js +103 -0
  20. package/dist/adapters/UniversalAnalyzer.js.map +1 -0
  21. package/dist/adapters/UniversalSOLIDAnalyzer.d.ts +48 -0
  22. package/dist/adapters/UniversalSOLIDAnalyzer.d.ts.map +1 -0
  23. package/dist/adapters/UniversalSOLIDAnalyzer.js +178 -0
  24. package/dist/adapters/UniversalSOLIDAnalyzer.js.map +1 -0
  25. package/dist/adapters/solidAnalyzerCompat.d.ts +21 -0
  26. package/dist/adapters/solidAnalyzerCompat.d.ts.map +1 -0
  27. package/dist/adapters/solidAnalyzerCompat.js +78 -0
  28. package/dist/adapters/solidAnalyzerCompat.js.map +1 -0
  29. package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts +103 -0
  30. package/dist/analyzers/cross-language/APIContractAnalyzer.d.ts.map +1 -0
  31. package/dist/analyzers/cross-language/APIContractAnalyzer.js +425 -0
  32. package/dist/analyzers/cross-language/APIContractAnalyzer.js.map +1 -0
  33. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.d.ts +117 -0
  34. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.d.ts.map +1 -0
  35. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.js +618 -0
  36. package/dist/analyzers/cross-language/CrossLanguageSOLIDAnalyzer.js.map +1 -0
  37. package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts +129 -0
  38. package/dist/analyzers/cross-language/DependencyGraphBuilder.d.ts.map +1 -0
  39. package/dist/analyzers/cross-language/DependencyGraphBuilder.js +473 -0
  40. package/dist/analyzers/cross-language/DependencyGraphBuilder.js.map +1 -0
  41. package/dist/analyzers/cross-language/SchemaValidator.d.ts +126 -0
  42. package/dist/analyzers/cross-language/SchemaValidator.d.ts.map +1 -0
  43. package/dist/analyzers/cross-language/SchemaValidator.js +522 -0
  44. package/dist/analyzers/cross-language/SchemaValidator.js.map +1 -0
  45. package/dist/analyzers/dataAccessAnalyzerCompat.d.ts +20 -0
  46. package/dist/analyzers/dataAccessAnalyzerCompat.d.ts.map +1 -0
  47. package/dist/analyzers/dataAccessAnalyzerCompat.js +59 -0
  48. package/dist/analyzers/dataAccessAnalyzerCompat.js.map +1 -0
  49. package/dist/analyzers/documentationAnalyzerCompat.d.ts +20 -0
  50. package/dist/analyzers/documentationAnalyzerCompat.d.ts.map +1 -0
  51. package/dist/analyzers/documentationAnalyzerCompat.js +52 -0
  52. package/dist/analyzers/documentationAnalyzerCompat.js.map +1 -0
  53. package/dist/analyzers/dryAnalyzerCompat.d.ts +20 -0
  54. package/dist/analyzers/dryAnalyzerCompat.d.ts.map +1 -0
  55. package/dist/analyzers/dryAnalyzerCompat.js +44 -0
  56. package/dist/analyzers/dryAnalyzerCompat.js.map +1 -0
  57. package/dist/analyzers/schemaAnalyzer.d.ts +21 -0
  58. package/dist/analyzers/schemaAnalyzer.d.ts.map +1 -0
  59. package/dist/analyzers/schemaAnalyzer.js +405 -0
  60. package/dist/analyzers/schemaAnalyzer.js.map +1 -0
  61. package/dist/analyzers/schemaAnalyzerCompat.d.ts +20 -0
  62. package/dist/analyzers/schemaAnalyzerCompat.d.ts.map +1 -0
  63. package/dist/analyzers/schemaAnalyzerCompat.js +69 -0
  64. package/dist/analyzers/schemaAnalyzerCompat.js.map +1 -0
  65. package/dist/analyzers/solidAnalyzerCompat.d.ts +20 -0
  66. package/dist/analyzers/solidAnalyzerCompat.d.ts.map +1 -0
  67. package/dist/analyzers/solidAnalyzerCompat.js +78 -0
  68. package/dist/analyzers/solidAnalyzerCompat.js.map +1 -0
  69. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts +71 -0
  70. package/dist/analyzers/universal/UniversalDRYAnalyzer.d.ts.map +1 -0
  71. package/dist/analyzers/universal/UniversalDRYAnalyzer.js +276 -0
  72. package/dist/analyzers/universal/UniversalDRYAnalyzer.js.map +1 -0
  73. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts +82 -0
  74. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.d.ts.map +1 -0
  75. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js +489 -0
  76. package/dist/analyzers/universal/UniversalDataAccessAnalyzer.js.map +1 -0
  77. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts +48 -0
  78. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.d.ts.map +1 -0
  79. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js +175 -0
  80. package/dist/analyzers/universal/UniversalDocumentationAnalyzer.js.map +1 -0
  81. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts +64 -0
  82. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.d.ts.map +1 -0
  83. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js +286 -0
  84. package/dist/analyzers/universal/UniversalSOLIDAnalyzer.js.map +1 -0
  85. package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts +119 -0
  86. package/dist/analyzers/universal/UniversalSchemaAnalyzer.d.ts.map +1 -0
  87. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js +812 -0
  88. package/dist/analyzers/universal/UniversalSchemaAnalyzer.js.map +1 -0
  89. package/dist/auditRunner.d.ts.map +1 -1
  90. package/dist/auditRunner.js +23 -7
  91. package/dist/auditRunner.js.map +1 -1
  92. package/dist/codeIndexDB-enhanced.d.ts +80 -0
  93. package/dist/codeIndexDB-enhanced.d.ts.map +1 -0
  94. package/dist/codeIndexDB-enhanced.js +488 -0
  95. package/dist/codeIndexDB-enhanced.js.map +1 -0
  96. package/dist/codeIndexDb.d.ts +70 -1
  97. package/dist/codeIndexDb.d.ts.map +1 -1
  98. package/dist/codeIndexDb.js +199 -2
  99. package/dist/codeIndexDb.js.map +1 -1
  100. package/dist/config/defaults.js +1 -1
  101. package/dist/config/defaults.js.map +1 -1
  102. package/dist/languages/LanguageOrchestrator.d.ts +181 -0
  103. package/dist/languages/LanguageOrchestrator.d.ts.map +1 -0
  104. package/dist/languages/LanguageOrchestrator.js +365 -0
  105. package/dist/languages/LanguageOrchestrator.js.map +1 -0
  106. package/dist/languages/LanguageRegistry.d.ts +43 -0
  107. package/dist/languages/LanguageRegistry.d.ts.map +1 -0
  108. package/dist/languages/LanguageRegistry.js +86 -0
  109. package/dist/languages/LanguageRegistry.js.map +1 -0
  110. package/dist/languages/RuntimeManager.d.ts +181 -0
  111. package/dist/languages/RuntimeManager.d.ts.map +1 -0
  112. package/dist/languages/RuntimeManager.js +841 -0
  113. package/dist/languages/RuntimeManager.js.map +1 -0
  114. package/dist/languages/UniversalAnalyzer.d.ts +37 -0
  115. package/dist/languages/UniversalAnalyzer.d.ts.map +1 -0
  116. package/dist/languages/UniversalAnalyzer.js +101 -0
  117. package/dist/languages/UniversalAnalyzer.js.map +1 -0
  118. package/dist/languages/go/GoAdapter.d.ts +57 -0
  119. package/dist/languages/go/GoAdapter.d.ts.map +1 -0
  120. package/dist/languages/go/GoAdapter.js +360 -0
  121. package/dist/languages/go/GoAdapter.js.map +1 -0
  122. package/dist/languages/index.d.ts +13 -0
  123. package/dist/languages/index.d.ts.map +1 -0
  124. package/dist/languages/index.js +23 -0
  125. package/dist/languages/index.js.map +1 -0
  126. package/dist/languages/types.d.ts +182 -0
  127. package/dist/languages/types.d.ts.map +1 -0
  128. package/dist/languages/types.js +5 -0
  129. package/dist/languages/types.js.map +1 -0
  130. package/dist/languages/typescript/TypeScriptAdapter.d.ts +108 -0
  131. package/dist/languages/typescript/TypeScriptAdapter.d.ts.map +1 -0
  132. package/dist/languages/typescript/TypeScriptAdapter.js +567 -0
  133. package/dist/languages/typescript/TypeScriptAdapter.js.map +1 -0
  134. package/dist/languages/typescript/test-extraction.d.ts +2 -0
  135. package/dist/languages/typescript/test-extraction.d.ts.map +1 -0
  136. package/dist/languages/typescript/test-extraction.js +36 -0
  137. package/dist/languages/typescript/test-extraction.js.map +1 -0
  138. package/dist/mcp-hybrid.d.ts +10 -0
  139. package/dist/mcp-hybrid.d.ts.map +1 -0
  140. package/dist/mcp-hybrid.js +41 -0
  141. package/dist/mcp-hybrid.js.map +1 -0
  142. package/dist/mcp-index.d.ts +11 -0
  143. package/dist/mcp-index.d.ts.map +1 -0
  144. package/dist/mcp-index.js +101 -0
  145. package/dist/mcp-index.js.map +1 -0
  146. package/dist/mcp-tools/workflowGuide.d.ts.map +1 -1
  147. package/dist/mcp-tools/workflowGuide.js +67 -10
  148. package/dist/mcp-tools/workflowGuide.js.map +1 -1
  149. package/dist/mcp-tools-shared.d.ts +49 -0
  150. package/dist/mcp-tools-shared.d.ts.map +1 -0
  151. package/dist/mcp-tools-shared.js +1282 -0
  152. package/dist/mcp-tools-shared.js.map +1 -0
  153. package/dist/mcp-ui-server.d.ts +27 -0
  154. package/dist/mcp-ui-server.d.ts.map +1 -0
  155. package/dist/mcp-ui-server.js +484 -0
  156. package/dist/mcp-ui-server.js.map +1 -0
  157. package/dist/mcp-ui-simple.d.ts +27 -0
  158. package/dist/mcp-ui-simple.d.ts.map +1 -0
  159. package/dist/mcp-ui-simple.js +425 -0
  160. package/dist/mcp-ui-simple.js.map +1 -0
  161. package/dist/mcp.js +7 -4
  162. package/dist/mcp.js.map +1 -1
  163. package/dist/services/SchemaParser.d.ts +89 -0
  164. package/dist/services/SchemaParser.d.ts.map +1 -0
  165. package/dist/services/SchemaParser.js +434 -0
  166. package/dist/services/SchemaParser.js.map +1 -0
  167. package/dist/types/crossLanguage.d.ts +267 -0
  168. package/dist/types/crossLanguage.d.ts.map +1 -0
  169. package/dist/types/crossLanguage.js +6 -0
  170. package/dist/types/crossLanguage.js.map +1 -0
  171. package/dist/types.d.ts +128 -0
  172. package/dist/types.d.ts.map +1 -1
  173. package/dist/types.js.map +1 -1
  174. package/dist/utils/fileDiscovery.d.ts +6 -0
  175. package/dist/utils/fileDiscovery.d.ts.map +1 -1
  176. package/dist/utils/fileDiscovery.js +12 -1
  177. package/dist/utils/fileDiscovery.js.map +1 -1
  178. package/examples/schema-example.json +364 -0
  179. package/examples/schema-example.yaml +137 -0
  180. package/package.json +10 -3
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Multi-language support exports
3
+ */
4
+ export * from './types.js';
5
+ export * from './LanguageRegistry.js';
6
+ export * from './UniversalAnalyzer.js';
7
+ export * from './typescript/TypeScriptAdapter.js';
8
+ export * from './go/GoAdapter.js';
9
+ /**
10
+ * Initialize the language system with default adapters
11
+ */
12
+ export declare function initializeLanguages(): void;
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/languages/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mCAAmC,CAAC;AAClD,cAAc,mBAAmB,CAAC;AAMlC;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAS1C"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Multi-language support exports
3
+ */
4
+ export * from './types.js';
5
+ export * from './LanguageRegistry.js';
6
+ export * from './UniversalAnalyzer.js';
7
+ export * from './typescript/TypeScriptAdapter.js';
8
+ export * from './go/GoAdapter.js';
9
+ import { LanguageRegistry } from './LanguageRegistry.js';
10
+ import { TypeScriptAdapter } from './typescript/TypeScriptAdapter.js';
11
+ import { GoAdapter } from './go/GoAdapter.js';
12
+ /**
13
+ * Initialize the language system with default adapters
14
+ */
15
+ export function initializeLanguages() {
16
+ const registry = LanguageRegistry.getInstance();
17
+ // Register language adapters
18
+ registry.registerAdapter(new TypeScriptAdapter());
19
+ registry.registerAdapter(new GoAdapter());
20
+ // Future: Add more language adapters here
21
+ // registry.registerAdapter(new PythonAdapter());
22
+ }
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/languages/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,mCAAmC,CAAC;AAClD,cAAc,mBAAmB,CAAC;AAElC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C;;GAEG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,WAAW,EAAE,CAAC;IAEhD,6BAA6B;IAC7B,QAAQ,CAAC,eAAe,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;IAClD,QAAQ,CAAC,eAAe,CAAC,IAAI,SAAS,EAAE,CAAC,CAAC;IAE1C,0CAA0C;IAC1C,iDAAiD;AACnD,CAAC"}
@@ -0,0 +1,182 @@
1
+ /**
2
+ * Core types for multi-language support
3
+ */
4
+ /**
5
+ * Represents a parsed Abstract Syntax Tree
6
+ */
7
+ export interface AST {
8
+ root: ASTNode;
9
+ language: string;
10
+ filePath: string;
11
+ errors: ParseError[];
12
+ }
13
+ /**
14
+ * Generic AST node that can represent nodes from any language
15
+ */
16
+ export interface ASTNode {
17
+ type: string;
18
+ range: [number, number];
19
+ location: SourceLocation;
20
+ children?: ASTNode[];
21
+ parent?: ASTNode;
22
+ raw: any;
23
+ }
24
+ /**
25
+ * Location information for source mapping
26
+ */
27
+ export interface SourceLocation {
28
+ start: {
29
+ line: number;
30
+ column: number;
31
+ };
32
+ end: {
33
+ line: number;
34
+ column: number;
35
+ };
36
+ }
37
+ /**
38
+ * Parse error information
39
+ */
40
+ export interface ParseError {
41
+ message: string;
42
+ location: SourceLocation;
43
+ severity: 'error' | 'warning';
44
+ }
45
+ /**
46
+ * Pattern for matching AST nodes
47
+ */
48
+ export interface NodePattern {
49
+ type?: string | string[];
50
+ name?: string | RegExp;
51
+ hasChild?: NodePattern;
52
+ hasParent?: NodePattern;
53
+ custom?: (node: ASTNode) => boolean;
54
+ }
55
+ /**
56
+ * Function information extracted from AST
57
+ */
58
+ export interface FunctionInfo {
59
+ name: string;
60
+ location: SourceLocation;
61
+ parameters: ParameterInfo[];
62
+ returnType?: string;
63
+ isAsync: boolean;
64
+ isExported: boolean;
65
+ isMethod: boolean;
66
+ className?: string;
67
+ jsDoc?: string;
68
+ }
69
+ /**
70
+ * Parameter information
71
+ */
72
+ export interface ParameterInfo {
73
+ name: string;
74
+ type?: string;
75
+ optional: boolean;
76
+ defaultValue?: string;
77
+ }
78
+ /**
79
+ * Class information extracted from AST
80
+ */
81
+ export interface ClassInfo {
82
+ name: string;
83
+ location: SourceLocation;
84
+ methods: FunctionInfo[];
85
+ properties: PropertyInfo[];
86
+ extends?: string;
87
+ implements?: string[];
88
+ isAbstract: boolean;
89
+ isExported: boolean;
90
+ jsDoc?: string;
91
+ }
92
+ /**
93
+ * Property information
94
+ */
95
+ export interface PropertyInfo {
96
+ name: string;
97
+ type?: string;
98
+ visibility?: 'public' | 'private' | 'protected';
99
+ isStatic: boolean;
100
+ isReadonly: boolean;
101
+ }
102
+ /**
103
+ * Import information extracted from AST
104
+ */
105
+ export interface ImportInfo {
106
+ source: string;
107
+ specifiers: ImportSpecifier[];
108
+ location: SourceLocation;
109
+ }
110
+ /**
111
+ * Import specifier details
112
+ */
113
+ export interface ImportSpecifier {
114
+ name: string;
115
+ alias?: string;
116
+ isDefault: boolean;
117
+ isNamespace: boolean;
118
+ }
119
+ /**
120
+ * Export information extracted from AST
121
+ */
122
+ export interface ExportInfo {
123
+ name: string;
124
+ location: SourceLocation;
125
+ isDefault: boolean;
126
+ source?: string;
127
+ }
128
+ /**
129
+ * Language adapter interface - must be implemented for each language
130
+ */
131
+ export interface LanguageAdapter {
132
+ readonly name: string;
133
+ readonly fileExtensions: string[];
134
+ /**
135
+ * Parse a file into an AST
136
+ */
137
+ parse(filePath: string, content: string): Promise<AST>;
138
+ /**
139
+ * Check if this adapter supports a file
140
+ */
141
+ supportsFile(filePath: string): boolean;
142
+ findNodes(ast: AST, pattern: NodePattern): ASTNode[];
143
+ getParent(node: ASTNode): ASTNode | null;
144
+ getChildren(node: ASTNode): ASTNode[];
145
+ getSiblings(node: ASTNode): ASTNode[];
146
+ getNodeType(node: ASTNode): string;
147
+ getNodeText(node: ASTNode, sourceCode: string): string;
148
+ getNodeName(node: ASTNode): string | null;
149
+ getNodeLocation(node: ASTNode): SourceLocation;
150
+ extractFunctions(ast: AST): FunctionInfo[];
151
+ extractClasses(ast: AST): ClassInfo[];
152
+ extractImports(ast: AST): ImportInfo[];
153
+ extractExports(ast: AST): ExportInfo[];
154
+ isClass(node: ASTNode): boolean;
155
+ isFunction(node: ASTNode): boolean;
156
+ isMethod(node: ASTNode): boolean;
157
+ isInterface(node: ASTNode): boolean;
158
+ isImport(node: ASTNode): boolean;
159
+ isExport(node: ASTNode): boolean;
160
+ isLoop(node: ASTNode): boolean;
161
+ isConditional(node: ASTNode): boolean;
162
+ isVariableDeclaration(node: ASTNode): boolean;
163
+ getTypeInfo(node: ASTNode): string | null;
164
+ getDocumentation(node: ASTNode): string | null;
165
+ getComplexity(node: ASTNode): number;
166
+ extractInterfaces?(ast: AST): InterfaceInfo[];
167
+ }
168
+ /**
169
+ * Interface information extracted from AST
170
+ */
171
+ export interface InterfaceInfo {
172
+ name: string;
173
+ location: SourceLocation;
174
+ members: Array<{
175
+ name: string;
176
+ type: 'method' | 'property';
177
+ location: SourceLocation;
178
+ }>;
179
+ extends?: string[];
180
+ isExported: boolean;
181
+ }
182
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/languages/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Core types for multi-language support
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/languages/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * TypeScript language adapter implementation
3
+ */
4
+ import type { LanguageAdapter, AST, ASTNode, NodePattern, FunctionInfo, ClassInfo, InterfaceInfo, ImportInfo, ExportInfo, SourceLocation } from '../types.js';
5
+ export declare class TypeScriptAdapter implements LanguageAdapter {
6
+ readonly name = "typescript";
7
+ readonly fileExtensions: string[];
8
+ private sourceFiles;
9
+ /**
10
+ * Parse a file into an AST
11
+ */
12
+ parse(filePath: string, content: string): Promise<AST>;
13
+ /**
14
+ * Check if this adapter supports a file
15
+ */
16
+ supportsFile(filePath: string): boolean;
17
+ /**
18
+ * Find nodes matching a pattern
19
+ */
20
+ findNodes(ast: AST, pattern: NodePattern): ASTNode[];
21
+ /**
22
+ * Get parent node
23
+ */
24
+ getParent(node: ASTNode): ASTNode | null;
25
+ /**
26
+ * Get child nodes
27
+ */
28
+ getChildren(node: ASTNode): ASTNode[];
29
+ /**
30
+ * Get sibling nodes
31
+ */
32
+ getSiblings(node: ASTNode): ASTNode[];
33
+ /**
34
+ * Get node type
35
+ */
36
+ getNodeType(node: ASTNode): string;
37
+ /**
38
+ * Get node text from source
39
+ */
40
+ getNodeText(node: ASTNode, sourceCode: string): string;
41
+ /**
42
+ * Get node name if applicable
43
+ */
44
+ getNodeName(node: ASTNode): string | null;
45
+ /**
46
+ * Get node location
47
+ */
48
+ getNodeLocation(node: ASTNode): SourceLocation;
49
+ /**
50
+ * Extract all functions from AST
51
+ */
52
+ extractFunctions(ast: AST): FunctionInfo[];
53
+ /**
54
+ * Extract all classes from AST
55
+ */
56
+ extractClasses(ast: AST): ClassInfo[];
57
+ /**
58
+ * Extract all imports from AST
59
+ */
60
+ extractImports(ast: AST): ImportInfo[];
61
+ /**
62
+ * Extract all exports from AST
63
+ */
64
+ extractExports(ast: AST): ExportInfo[];
65
+ isClass(node: ASTNode): boolean;
66
+ isFunction(node: ASTNode): boolean;
67
+ isMethod(node: ASTNode): boolean;
68
+ isInterface(node: ASTNode): boolean;
69
+ isImport(node: ASTNode): boolean;
70
+ isExport(node: ASTNode): boolean;
71
+ isLoop(node: ASTNode): boolean;
72
+ isConditional(node: ASTNode): boolean;
73
+ isVariableDeclaration(node: ASTNode): boolean;
74
+ /**
75
+ * Get type information for a node
76
+ */
77
+ getTypeInfo(node: ASTNode): string | null;
78
+ /**
79
+ * Get documentation comment for a node
80
+ */
81
+ getDocumentation(node: ASTNode): string | null;
82
+ /**
83
+ * Calculate cyclomatic complexity for a node
84
+ */
85
+ getComplexity(node: ASTNode): number;
86
+ private convertNode;
87
+ private walkAST;
88
+ private matchesPattern;
89
+ private extractFunctionInfo;
90
+ private extractClassInfo;
91
+ private extractImportInfo;
92
+ private extractExportInfo;
93
+ private extractParameters;
94
+ private extractPropertyInfo;
95
+ private getVisibility;
96
+ private hasExportModifier;
97
+ private typeToString;
98
+ private getExtendsClause;
99
+ private getImplementsClause;
100
+ private findNodeByRaw;
101
+ private getSourceFileForNode;
102
+ /**
103
+ * Extract all interfaces from AST
104
+ */
105
+ extractInterfaces?(ast: AST): InterfaceInfo[];
106
+ private extractInterfaceInfo;
107
+ }
108
+ //# sourceMappingURL=TypeScriptAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TypeScriptAdapter.d.ts","sourceRoot":"","sources":["../../../src/languages/typescript/TypeScriptAdapter.ts"],"names":[],"mappings":"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"}