/** * Project type detected by analyzing project files */ export type ProjectType = "frontend" | "backend" | "fullstack" | "unknown"; /** * Detect project type by analyzing project files * * @param cwd - Current working directory to analyze * @returns Detected project type */ export declare function detectProjectType(cwd: string): ProjectType; /** * Get human-readable description of project type */ export declare function getProjectTypeDescription(type: ProjectType): string; /** * Detected package in a monorepo workspace */ export interface DetectedPackage { /** Package name (from package.json, Cargo.toml, go.mod, etc.) */ name: string; /** Relative path from cwd, normalized (no ./ prefix or trailing /) */ path: string; /** Project type detected via detectProjectType() */ type: ProjectType; /** Whether this package is a git submodule */ isSubmodule: boolean; /** Whether this package has its own .git (independent repo, e.g. polyrepo sibling) */ isGitRepo: boolean; } /** * Sanitize a package name for use as a directory name. * Strips npm scope prefix (@scope/) so "@zhubao/desktop" becomes "desktop". */ export declare function sanitizePkgName(name: string): string; /** * Detect monorepo workspace configuration and enumerate packages. * * Checks workspace managers in priority order (pnpm → npm/yarn/bun → Cargo → Go → uv), * merges results, and marks git submodules. Returns null if no monorepo detected. * * @param cwd - Repository root to analyze * @returns Array of detected packages, null if not a monorepo, empty array if config exists but no packages found */ export declare function detectMonorepo(cwd: string): DetectedPackage[] | null; //# sourceMappingURL=project-detector.d.ts.map