import { FileTree } from '@principal-ai/repository-abstraction'; import { PackageLayer } from '../types/layer-types'; import { WorkspaceBoundary } from '../types/workspace-boundaries'; export declare class PackageLayerModule { private parsers; /** * Extract package information from the file tree * @param fileTree - The file tree to analyze * @param fileReader - Optional function to read file contents. If not provided, manifest detection only. */ discoverPackages(fileTree: FileTree, fileReader?: (path: string) => Promise): Promise; /** * Create package layers from workspace boundaries (backwards compatibility) */ createPackageLayersFromBoundaries(boundaries: WorkspaceBoundary[]): PackageLayer[]; private isLockFile; private resolveWorkspaceRelationships; /** * Create a minimal manifest for when file content isn't available */ private createMinimalManifest; /** * Detect monorepo orchestrator from file tree */ private detectMonorepoOrchestrator; /** * Parse turbo.json to extract task definitions */ private parseTurboConfig; /** * Parse nx.json to extract task definitions */ private parseNxConfig; /** * Infer the tool from a task name */ private inferToolFromTaskName; /** * Build monorepo metadata for a root package */ private buildMonorepoMetadata; /** * Detect whether the root package is an orchestrator, application, or hybrid */ private detectRootRole; /** * Propagate root configs to workspace packages that don't have their own */ private propagateRootConfigs; /** * Recalculate lens readiness for workspace packages after config inheritance * This updates lensReadiness to reflect inherited configs from root */ private recalculateLensReadinessWithInheritance; /** * Detect Expo configuration and expo.extra as environment variables source * Falls back to this only if no traditional env files (.env.example, env.json, etc.) are found */ private detectExpoEnvvars; } //# sourceMappingURL=PackageLayerModule.d.ts.map