export type TestLevel = "unit" | "integration" | "e2e"; export type FeatureScenarioRecord = { scenarioId: string; id: string; tag: string; featurePath: string; feature: string; rule: string | null; ruleTags: string[]; name: string; scenario: string; line: number; tags: string[]; }; export type CoverageCommentRecord = { scenarioId: string; scenarioTag: string; testPath: string; testName: string; name: string; line: number; level: TestLevel; link: string; sources: string[]; }; export type SpecMapStatusRecord = FeatureScenarioRecord & { coverage: "covered" | "missing"; preferredTestLevel: TestLevel; tests: Array<{ path: string; name: string; line: number; level: TestLevel; sources: string[]; }>; }; export type SpecMapTrace = { scenarios: FeatureScenarioRecord[]; coverage: CoverageCommentRecord[]; status: SpecMapStatusRecord[]; }; export type BuildSpecMapTraceOptions = { featurePath?: string; testPath?: string; }; export declare function parseFeatureScenarios(featurePath: string, source: string): FeatureScenarioRecord[]; export declare function parseTestCoverageComments(testPath: string, source: string): CoverageCommentRecord[]; export declare function assembleSpecMapTrace(scenarios: FeatureScenarioRecord[], coverage: CoverageCommentRecord[]): SpecMapTrace; export declare function buildSpecMapTrace(repoRoot: string, options?: BuildSpecMapTraceOptions): Promise; export declare function findTraceEntriesForSource(trace: SpecMapTrace, sourcePath: string): SpecMapStatusRecord[]; export declare function serializeJsonl(records: readonly unknown[]): string;