import { EventEmitter, ChangeDetectorRef } from '@angular/core';
import { TimelineItem } from './ai-agent-run-timeline.component';
import * as i0 from "@angular/core";
interface ScratchpadSnapshotView {
    notes: string;
    tasks: Array<{
        id: string;
        title: string;
        status: string;
        notes?: string;
    }>;
}
export declare class AIAgentRunStepDetailComponent {
    private cdr;
    selectedTimelineItem: TimelineItem | null;
    closePanel: EventEmitter<void>;
    navigateToActionLog: EventEmitter<string>;
    copyToClipboard: EventEmitter<string>;
    selectedItemJsonString: string;
    detailPaneTab: 'json' | 'diff' | 'scratchpad';
    scratchpadSubTab: 'input' | 'output' | 'diff';
    constructor(cdr: ChangeDetectorRef);
    ngOnChanges(): void;
    getSelectedItemJson(): string;
    /**
     * Check if selected timeline item is a step with payload changes
     */
    get showStepPayloadDiff(): boolean;
    /**
     * Get parsed PayloadAtStart for the selected step
     */
    get stepPayloadAtStartObject(): any;
    /**
     * Get parsed PayloadAtEnd for the selected step
     */
    get stepPayloadAtEndObject(): any;
    onClosePanel(): void;
    onNavigateToActionLog(logId: string): void;
    onCopyToClipboard(): void;
    /**
     * Whether the scratchpad tab should be shown (step has scratchpad data in InputData or OutputData)
     */
    get showScratchpadTab(): boolean;
    /**
     * Parse scratchpad snapshot from InputData JSON
     */
    get stepScratchpadInput(): ScratchpadSnapshotView | null;
    /**
     * Parse scratchpad snapshot from OutputData JSON
     */
    get stepScratchpadOutput(): ScratchpadSnapshotView | null;
    /**
     * Number of tasks that changed between input and output scratchpad snapshots
     */
    get scratchpadTaskChangeCount(): number;
    private extractScratchpadFromField;
    static ɵfac: i0.ɵɵFactoryDeclaration<AIAgentRunStepDetailComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AIAgentRunStepDetailComponent, "mj-ai-agent-run-step-detail", never, { "selectedTimelineItem": { "alias": "selectedTimelineItem"; "required": false; }; }, { "closePanel": "closePanel"; "navigateToActionLog": "navigateToActionLog"; "copyToClipboard": "copyToClipboard"; }, never, never, false, never>;
}
export {};
//# sourceMappingURL=ai-agent-run-step-detail.component.d.ts.map