/**
 * Session briefing computation.
 *
 * Aggregates session-start context from multiple sources for quick agent
 * orientation. This is the READ side of the handoff/briefing pair.
 *
 * Data sources:
 * - Last session handoff (session.handoff)
 * - Current focus (tasks.current)
 * - Top-N next tasks (tasks.next leverage-scored)
 * - Open bugs (tasks with origin:bug-report or label:bug)
 * - Blocked tasks (tasks.blockers)
 * - Active epics status (tasks.tree filtered)
 * - Pipeline stage data (from T4912)
 *
 * @task T4916
 * @epic T4914
 */
import type { SessionMemoryContext } from '../memory/session-memory.js';
import { type HandoffData } from './handoff.js';
/**
 * Task summary for briefing output.
 */
export interface BriefingTask {
    id: string;
    title: string;
    leverage: number;
    score: number;
}
/**
 * Bug summary for briefing output.
 */
export interface BriefingBug {
    id: string;
    title: string;
    priority: string;
}
/**
 * Blocked task summary for briefing output.
 */
export interface BriefingBlockedTask {
    id: string;
    title: string;
    blockedBy: string[];
}
/**
 * Active epic summary for briefing output.
 */
export interface BriefingEpic {
    id: string;
    title: string;
    completionPercent: number;
}
/**
 * Pipeline stage data for briefing output.
 */
export interface PipelineStageInfo {
    currentStage: string;
    stageStatus: string;
}
/**
 * Last session info with handoff data.
 */
export interface LastSessionInfo {
    endedAt: string;
    duration: number;
    handoff: HandoffData;
}
/**
 * Currently active task info.
 */
export interface CurrentTaskInfo {
    id: string;
    title: string;
    status: string;
    blockedBy?: string[];
}
/**
 * Session briefing result.
 */
export interface SessionBriefing {
    lastSession: LastSessionInfo | null;
    currentTask: CurrentTaskInfo | null;
    nextTasks: BriefingTask[];
    openBugs: BriefingBug[];
    blockedTasks: BriefingBlockedTask[];
    activeEpics: BriefingEpic[];
    pipelineStage?: PipelineStageInfo;
    warnings?: string[];
    /** Brain memory context -- decisions/patterns/observations relevant to this scope. */
    memoryContext?: SessionMemoryContext;
}
/**
 * Options for computing session briefing.
 */
export interface BriefingOptions {
    /** Maximum number of next tasks to include (default: 5) */
    maxNextTasks?: number;
    /** Maximum number of bugs to include (default: 10) */
    maxBugs?: number;
    /** Maximum number of blocked tasks to include (default: 10) */
    maxBlocked?: number;
    /** Maximum number of active epics to include (default: 5) */
    maxEpics?: number;
    /** Scope filter: 'global' or 'epic:T###' */
    scope?: string;
}
/**
 * Compute the complete session briefing.
 * Aggregates data from all 6+ sources.
 */
export declare function computeBriefing(projectRoot: string, options?: BriefingOptions): Promise<SessionBriefing>;
//# sourceMappingURL=briefing.d.ts.map