/** * Epic Document Parser * * Parses epic documents (.md) and extracts user stories * for conversion to execution plans. */ import { NormalizedInput, InputNormalizationResult } from '../../../shared/types/index.js'; import { EpicMetadata, EpicNormalizationResult, SharedContext } from '../../../shared/types/epic.js'; import { InputParser, NormalizerOptions } from '../input-normalizer.js'; /** * Extended result for epic parsing (includes multiple stories) */ export interface EpicInputNormalizationResult extends InputNormalizationResult { /** Array of normalized inputs (one per story) */ multiple?: NormalizedInput[]; /** Epic metadata */ epicContext?: EpicMetadata; /** Shared context across all stories */ sharedContext?: SharedContext; } /** * Epic Document Parser * * Implements InputParser to integrate with the normalizer pipeline. * Extracts user stories from epic documents and converts them to NormalizedInput. */ export declare class EpicDocumentParser implements InputParser { private metadataExtractor; private storyExtractor; private criteriaParser; private endpointExtractor; private schemaExtractor; /** * Checks if content appears to be an epic document */ canParse(content: string, extension: string): boolean; /** * Parses epic document and returns normalized inputs */ parse(content: string, options?: NormalizerOptions): EpicInputNormalizationResult; /** * Parses epic and returns full EpicNormalizationResult */ parseEpic(content: string, options?: NormalizerOptions): EpicNormalizationResult | null; /** * Normalizes a single story to NormalizedInput format */ private normalizeStory; /** * Builds success criteria from story acceptance criteria + global DoD */ private buildSuccessCriteria; /** * Builds description from user story format */ private buildDescription; /** * Extracts Definition of Done from epic document */ private extractDefinitionOfDone; /** * Infers tech context from extracted stories */ private inferTechContext; /** * Infers layer from endpoints */ private inferLayer; /** * Estimates complexity based on story characteristics */ private estimateComplexity; /** * Builds a simple pattern from criterion description */ private buildPatternFromCriterion; } /** * Factory function */ export declare function createEpicDocumentParser(): EpicDocumentParser; //# sourceMappingURL=epic-parser.d.ts.map