/** * @fileoverview Extractors barrel export * @module @nahisaho/musubix-security/extractors * @trace TSK-004, REQ-SEC-LANG-001, REQ-SEC-LANG-005, REQ-SEC-LANG-006, REQ-SEC-GO-001 */ export { BaseExtractor, type SupportedLanguage, type ASTNode, type ASTEdge, type DFGNode, type DFGEdge, type DataFlowGraph, type BasicBlock, type CFGEdge, type ControlFlowGraph, type SymbolTable, type Symbol, type FunctionSymbol, type ClassSymbol, type ScopeInfo, type FrameworkModel, type FrameworkSource, type FrameworkSink, type FrameworkSanitizer, type ExtractionResult, type ExtractionOptions, EXTENSION_TO_LANGUAGE, } from './base-extractor.js'; export { RubyExtractor, createRubyExtractor } from './ruby-extractor.js'; export { RustExtractor, createRustExtractor } from './rust-extractor.js'; export { GoExtractor, createGoExtractor } from './go-extractor.js'; import type { SupportedLanguage } from './base-extractor.js'; import { RubyExtractor } from './ruby-extractor.js'; import { RustExtractor } from './rust-extractor.js'; import { GoExtractor } from './go-extractor.js'; /** * Get supported languages * @trace REQ-SEC-LANG-001 */ export declare function getSupportedLanguages(): SupportedLanguage[]; /** * Create extractor for a language * @trace REQ-SEC-LANG-001, REQ-SEC-GO-001 */ export declare function createExtractor(language: SupportedLanguage): RubyExtractor | RustExtractor | GoExtractor | null; /** * Detect language from file extension */ export declare function detectLanguage(filePath: string): SupportedLanguage | undefined; //# sourceMappingURL=index.d.ts.map