import { ProjectProfile, InventoryData, DuplicateData, DependencyData, ModuleMapData, RegistryData, CapabilityIndexData, CapabilityIndexSummary, HooksMode } from '../types'; export interface AnalysisPipelineResult { profile: ProjectProfile; inventory: InventoryData; duplicates: DuplicateData; dependencies: DependencyData; modules: ModuleMapData; registry: RegistryData; } /** * Runs the full analysis pipeline: detect → inventory → duplicates → dependencies → modules → registry. * Used by both init and update commands. */ export declare function runAnalysisPipeline(targetDir: string, excludeDirs: string[], projectType?: string): AnalysisPipelineResult; /** * Reads and parses a JSON file, returning undefined if it doesn't exist or is invalid. */ export declare function readExistingJson(filePath: string): T | undefined; /** * Writes a dual artifact: name.json + name.md in the given directory. * If toMarkdown is omitted, only writes JSON. * If toJson is provided, uses it instead of default pretty-print serialization. */ export declare function writeDualArtifact(dir: string, name: string, data: unknown, toMarkdown?: (data: any) => string, toJson?: (data: any) => string): string[]; /** * Serializes CapabilityIndexData with one entry per line to keep total line count * under 200 lines. This ensures Claude's Read tool (2000-line default) can read the * entire file in a single pass, preventing silent truncation during anti-duplication checks. */ export declare function serializeCapabilityIndex(data: CapabilityIndexData): string; /** * Serializes RegistryData with one export per line within each module. * Keeps total line count low so Claude's Read tool can load it in a single pass. */ export declare function serializeRegistry(data: RegistryData): string; export interface CapabilityIndexResult { capabilityIndex: CapabilityIndexData; capabilitySummary: CapabilityIndexSummary; files: string[]; } /** * Generates capability index, merging with existing enriched/declared data, and writes JSON + MD. */ export declare function generateAndWriteCapabilityIndex(claudeDir: string, registry: RegistryData, targetDir: string): CapabilityIndexResult; /** * Sets up guard pipeline + memory hooks + settings.json + aicodesight-settings.json. * Returns list of generated file paths. */ export declare function setupHookPipeline(targetDir: string, mode: HooksMode, language: ProjectProfile['language']): string[]; /** * Generates the enrichment prompt markdown that guides AI assistants through * the capability-index enrichment process with format and execution constraints. */ export declare function generateEnrichmentPrompt(): string;