/**
 * GatheredData — Read-side aggregation over agent execution state.
 *
 * Provides structured views of agent execution data by querying existing
 * decision history and goal state. This is NOT a new write pipeline —
 * it aggregates data that's already captured by the agent state system
 * and decision recording.
 *
 * Part of the Agentic Loop Completion (Epic #380, Issue #68).
 *
 * @since v2.0.0
 */
import type { AgentState } from './types.js';
/**
 * A single entry in the gathered data timeline.
 * Represents a discrete event during agent execution.
 */
export interface GatheredDataEntry {
    /** Entry type for filtering and presentation */
    type: 'decision' | 'goal_created' | 'goal_completed' | 'goal_failed' | 'finding' | 'metric';
    /** ISO 8601 timestamp of when this entry occurred */
    timestamp: string;
    /** Component or subsystem that generated this entry */
    source: string;
    /** Goal ID this entry relates to */
    goalId: string;
    /** Structured content */
    content: {
        /** Human-readable summary of the entry */
        summary: string;
        /** Additional structured details */
        details?: Record<string, unknown>;
    };
}
/**
 * Aggregated gathered data for a specific goal execution.
 */
export interface GatheredData {
    /** Goal ID the data was gathered for */
    goalId: string;
    /** Agent name */
    agentName: string;
    /** ISO 8601 timestamp when this data was gathered */
    gatheredAt: string;
    /** Timeline of events in chronological order */
    entries: GatheredDataEntry[];
    /** Summary statistics */
    summary: {
        totalSteps: number;
        successfulSteps: number;
        failedSteps: number;
        partialSteps: number;
        averageConfidence: number;
        /** Duration from goal creation to last decision (or now) */
        durationMs: number;
    };
    /** Goal metadata snapshot */
    goal: {
        description: string;
        status: string;
        createdAt: string;
        completedAt?: string;
    };
}
/**
 * Build gathered data for a specific goalId from agent state.
 *
 * Queries the agent's decision history and goal state to produce
 * a chronological timeline of events. This is a read-side view —
 * the underlying data was already recorded by recordDecision() and
 * goal lifecycle methods.
 *
 * @param agentName - Name of the agent
 * @param goalId - Goal ID to gather data for
 * @param state - Agent's current state (from Agent.getState())
 * @returns GatheredData aggregation, or null if goal not found
 */
export declare function getGatheredData(agentName: string, goalId: string, state: Readonly<AgentState>): GatheredData | null;
//# sourceMappingURL=gatheredData.d.ts.map