/** * MonorepoInfo Value Object * Represents information about a detected monorepo structure */ /** * Supported monorepo types */ export declare const MonorepoType: { readonly LERNA: "lerna"; readonly NX: "nx"; readonly TURBOREPO: "turborepo"; readonly PNPM: "pnpm"; readonly GENERIC: "generic"; }; export type MonorepoTypeValue = (typeof MonorepoType)[keyof typeof MonorepoType]; /** * Project type classification */ export declare const ProjectType: { readonly PACKAGE: "package"; readonly APP: "app"; readonly LIB: "lib"; readonly SERVICE: "service"; readonly TOOL: "tool"; readonly UNKNOWN: "unknown"; }; export type ProjectTypeValue = (typeof ProjectType)[keyof typeof ProjectType]; /** * Detailed information about a project in a monorepo */ export interface ProjectInfo { /** Project name (e.g., 'my-app') */ name: string; /** Relative path from monorepo root (e.g., 'packages/my-app') */ path: string; /** Absolute path to project directory */ fullPath: string; /** Project type classification */ type: ProjectTypeValue; } /** * Properties for creating MonorepoInfo */ export interface MonorepoInfoProps { /** Whether this is a monorepo */ isMonorepo: boolean; /** Detected monorepo type (if applicable) */ type?: MonorepoTypeValue; /** Number of projects detected */ projectCount?: number; /** Detailed project information */ projectDetails?: ProjectInfo[]; } export declare class MonorepoInfo { private readonly isMonorepo; private readonly type?; private readonly projectCount?; private readonly projectDetails?; private constructor(); static notMonorepo(): MonorepoInfo; static create(props: MonorepoInfoProps): MonorepoInfo; getIsMonorepo(): boolean; getType(): MonorepoTypeValue | undefined; getProjectCount(): number; getProjectDetails(): ProjectInfo[]; /** * Get project paths (convenience method) * Returns just the path strings from projectDetails */ getProjectPaths(): string[]; hasProjects(): boolean; hasProjectDetails(): boolean; } //# sourceMappingURL=MonorepoInfo.d.ts.map