/**
 * Agent handoff packets — offline summaries of goal/project state, tasks,
 * blockers, comments, verification, and next actions. Portable local export.
 */
import type { Database } from "bun:sqlite";
import { type Handoff } from "../db/handoffs.js";
export declare const HANDOFF_PACKET_SCHEMA = "todos.handoff_packet.v1";
export interface HandoffPacketContext {
    project: {
        id: string;
        name: string;
        path: string;
    } | null;
    plan: {
        id: string;
        name: string;
        status: string;
        percent_complete?: number;
    } | null;
    goal_summary: string | null;
}
export interface HandoffTaskSummary {
    id: string;
    short_id: string | null;
    title: string;
    status: string;
    priority: string;
    assigned_to: string | null;
}
export interface HandoffCommentSummary {
    task_id: string;
    content: string;
    created_at: string;
    agent_id: string | null;
}
export interface HandoffVerificationSummary {
    task_id: string | null;
    status: string;
    summary: string;
    confidence: number | null;
}
export interface HandoffPacket {
    schema_version: typeof HANDOFF_PACKET_SCHEMA;
    id: string | null;
    agent_id: string | null;
    created_at: string;
    context: HandoffPacketContext;
    active_tasks: HandoffTaskSummary[];
    blocked_tasks: HandoffTaskSummary[];
    dependencies_note: string | null;
    recent_comments: HandoffCommentSummary[];
    changed_files: string[];
    verification: HandoffVerificationSummary[];
    next_suggested_action: string | null;
    completed: string[];
    in_progress: string[];
    blockers: string[];
    next_steps: string[];
    summary: string;
}
export interface BuildHandoffPacketInput {
    agent_id?: string;
    project_id?: string;
    plan_id?: string;
    task_id?: string;
    include_files?: boolean;
}
export declare function buildHandoffPacket(input?: BuildHandoffPacketInput, db?: Database): HandoffPacket;
export declare function createHandoffPacket(input?: BuildHandoffPacketInput, db?: Database): HandoffPacket;
export declare function formatHandoffPacket(packet: HandoffPacket, format?: "json" | "markdown"): string;
export declare function exportHandoffPacket(input?: BuildHandoffPacketInput, path?: string, db?: Database): HandoffPacket;
export declare function getStoredHandoffAsPacket(handoff: Handoff, db?: Database): HandoffPacket;
export declare function getLatestHandoffPacket(agentId?: string, projectId?: string, db?: Database): HandoffPacket | null;
//# sourceMappingURL=handoff-packets.d.ts.map