/** * Language Support Module * * Detects the project's programming language(s) and captures language-specific * context needed for cross-platform bug reproduction: * * - Node.js/TypeScript: package.json, node_modules state, npm/yarn/pnpm lockfiles * - Python: requirements.txt, pyproject.toml, virtual env detection * - Java/Kotlin: pom.xml, build.gradle, JDK version, classpath * - C/C++: Makefile, CMakeLists.txt, compiler version (gcc/clang/msvc) * - Go: go.mod, go.sum * - Rust: Cargo.toml, Cargo.lock, rustc version * - Ruby: Gemfile, Gemfile.lock * - .NET/C#: *.csproj, *.sln, dotnet version * * This information is stored in the artifact so replay can: * 1. Warn about missing build tools * 2. Suggest dependency installation commands * 3. Detect build system differences across platforms */ interface LanguageInfo { /** Primary language identifier */ id: string; /** Human-readable name */ name: string; /** Detected version of the primary runtime/compiler */ version: string | null; /** Build system used */ buildSystem: string | null; /** Package manager */ packageManager: string | null; /** Lockfile path (relative) if present */ lockfile: string | null; /** Whether a build step is likely needed before running */ needsBuild: boolean; /** Cross-platform compatibility rating */ crossPlatform: 'native' | 'high' | 'medium' | 'low'; /** Platform-specific notes */ notes: string[]; } export interface ProjectLanguageContext { /** Detected languages (sorted by confidence) */ languages: LanguageInfo[]; /** Primary language (highest confidence) */ primary: LanguageInfo | null; /** Build commands needed for reproduction */ buildCommands: string[]; /** Files critical for reproduction (lockfiles, configs) */ criticalFiles: string[]; /** Cross-platform warnings specific to this project */ warnings: string[]; } /** Detect project languages and capture context */ export declare function detectProjectLanguages(workingDir: string): ProjectLanguageContext; export {}; //# sourceMappingURL=language-support.d.ts.map