export type HistoryEntryType = "task_registered" | "task_completed" | "task_stopped" | "task_error" | "key_decision";
export interface HistoryEntry {
    timestamp: number;
    type: HistoryEntryType;
    sessionId: string;
    label: string;
    agentType: string;
    repo?: string;
    workdir: string;
    originalTask?: string;
    completionSummary?: string;
    reasoning?: string;
}
export declare class SwarmHistory {
    private filePath;
    /** In-memory counter to avoid reading the file on every append. */
    private appendCount;
    /** Serializes all file mutations. */
    private mutex;
    constructor(stateDir?: string);
    append(entry: HistoryEntry): Promise<void>;
    readAll(): Promise<HistoryEntry[]>;
    getLastUsedRepo(): Promise<string | undefined>;
    /** Called while holding the mutex — no external callers. */
    private truncateInner;
}
//# sourceMappingURL=swarm-history.d.ts.map