/** * EntryPointDetector - LLM-based entry point module classification. * Identifies modules and their members that serve as entry points for user flows. */ import type { Command } from '@oclif/core'; import type { IndexDatabase } from '../../../db/database.js'; import type { EntryPointModuleInfo, LlmOptions, MemberClassification, ModuleCandidate } from './types.js'; export declare class EntryPointDetector { private readonly db; private readonly command; private readonly isJson; private readonly verbose; private memberClassifications; constructor(db: IndexDatabase, command: Command, isJson: boolean, verbose: boolean); /** * Detect entry point modules using LLM classification. */ detectEntryPointModules(model: string, llmOptions: LlmOptions): Promise; /** * Get stored member classifications (available after detectEntryPointModules is called). */ getMemberClassifications(): MemberClassification[]; /** * Use LLM to classify modules and their member functions for user journey detection. */ private classifyModulesAsEntryPoints; /** * Use LLM to classify module members with action types and target entities. */ private classifyModuleMembers; /** * Structural backfill: if a module has mutation entry points (create/update/delete) * but NO view entry point, add a view entry for the first mutation entry point. * This ensures every page with CRUD actions also gets a view flow traced. */ backfillMissingViewActions(classifications: MemberClassification[], _candidates: ModuleCandidate[]): MemberClassification[]; private buildClassificationSystemPrompt; private buildModuleContext; private buildInteractionContext; private buildRelationshipContext; private parseMemberClassificationCSV; private inferMemberActionType; private isLikelyEntryPointMemberHeuristic; private isLikelyEntryPointModuleHeuristic; private buildEntryPointModules; } //# sourceMappingURL=entry-point-detector.d.ts.map