export type CriteriaSource = 'declared' | 'section' | 'both'; export type AcceptanceItem = { id: string; text: string; line: number; source: CriteriaSource; }; export type TestCase = { title: string; acceptanceIds: string[]; line: number; }; export type CoverageEntry = { acceptanceId: string; acceptanceText: string; testCases: string[]; }; export type AcceptanceCoverageOptions = { projectRoot: string; requestId: string; sessionId?: string; }; export type AcceptanceCoverageError = { kind: 'prd-not-found'; message: string; } | { kind: 'test-cases-not-found'; expectedPath: string; }; export type AcceptanceCoverageReport = { ok: boolean; prdPath: string; testCasesPath: string; acceptanceItems: AcceptanceItem[]; testCases: TestCase[]; coverage: CoverageEntry[]; uncovered: AcceptanceItem[]; unlinkedTestCases: TestCase[]; invalidReferences: Array<{ testCaseTitle: string; reference: string; }>; }; export declare function getAcceptanceCoverage(options: AcceptanceCoverageOptions): Promise; export declare function isAcceptanceCoverageError(value: AcceptanceCoverageReport | AcceptanceCoverageError): value is AcceptanceCoverageError;