import { type RoadmapDefinition, type RoadmapTicket } from './roadmap.js'; export declare const ROADMAP_FOCUS_LIMITS: Readonly<{ previous: 2; successors: 3; hazards: 8; evidence: 12; }>; export type RoadmapFocusRelation = 'dependency' | 'previous' | 'successor'; export interface RoadmapFocusSprintSummary { id: number; label: string; theme: string; par: number; slope: number; type: string; status: string; readiness: 'complete' | 'ready' | 'blocked'; blocked_by: Array<{ id: number; label: string; }>; note?: string; } export interface RoadmapFocusSprint extends RoadmapFocusSprintSummary { tickets: RoadmapTicket[]; } export interface RoadmapFocusPhase { name: string; status?: string; note?: string; contract?: string; sprint_index: number; sprint_count: number; } export interface RoadmapFocusNeighbor { relation: RoadmapFocusRelation; direct: boolean; sprint: RoadmapFocusSprintSummary; } export interface RoadmapFocusHazard { sprint: number; sprint_label: string; ticket?: string; type: string; severity?: string; description: string; } export interface RoadmapFocusEvidence { kind: 'roadmap' | 'scorecard' | 'review' | 'issue' | 'design' | 'other'; label: string; ref: string; sprint?: number; } export interface RoadmapFocusResult { version: 1; roadmap: { name: string; }; sprint: RoadmapFocusSprint; phase: RoadmapFocusPhase | null; dependencies: RoadmapFocusNeighbor[]; previous: RoadmapFocusNeighbor[]; successors: RoadmapFocusNeighbor[]; hazards: RoadmapFocusHazard[]; evidence: RoadmapFocusEvidence[]; bounds: { previous_limit: number; successor_limit: number; hazard_limit: number; evidence_limit: number; }; omitted: { previous: number; successors: number; hazards: number; evidence: number; }; } export interface RoadmapFocusOptions { completedSprintIds?: Iterable; hazards?: RoadmapFocusHazard[]; scorecards?: Array<{ sprint_number: number; shots?: Array<{ ticket_key?: string; hazards?: Array<{ type?: string; severity?: string; description?: string; }>; }>; bunker_locations?: Array; }>; evidence?: RoadmapFocusEvidence[]; } /** Build a deterministic, bounded sprint context from any roadmap definition. */ export declare function buildRoadmapFocus(roadmap: RoadmapDefinition, sprintId: number, options?: RoadmapFocusOptions): RoadmapFocusResult | null; export declare function formatRoadmapFocus(focus: RoadmapFocusResult): string; //# sourceMappingURL=roadmap-focus.d.ts.map