/** * EpicUtils — Utilities for epic name parsing and pattern matching. * * Bug fixes from CLI: * - extractEpicNumber: priority hierarchy [Epic #NNN] > #NNN > Epic NNN * (was greedy \#?(\d+) that matches any number) * - hasEpicTitlePattern: uses /\[epic[^\]]*\]/i * (was includes('[epic') which matches '[epicurean') * - epicTasks typed as ReadonlyArray (was any[]) */ export declare class EpicUtils { /** * Extract the issue number from an epic name or its task titles. * * Priority hierarchy: * 1. [Epic #NNN] pattern in epicName * 2. #NNN pattern in epicName * 3. Epic NNN pattern in epicName * 4. [Epic #NNN] in any task title (fallback) */ static extractEpicNumber(epicName: string, epicTasks?: ReadonlyArray<{ readonly title?: string; }>): number | undefined; /** * Check if a title contains an epic marker pattern. * Matches [epic ...] but NOT [epicurean] or similar false positives. */ static hasEpicTitlePattern(title: string): boolean; /** Normalize an epic name for comparison. */ static normalizeEpicName(epicName: string): string; } //# sourceMappingURL=epic-utils.d.ts.map