import { ElementRef, ChangeDetectorRef, AfterViewInit, ViewContainerRef, OnDestroy } from '@angular/core';
import { AIPromptRunEntityExtended, AIPromptEntityExtended, AIModelEntity } from '@memberjunction/core-entities';
import { AIPromptRunFormComponent } from '../../generated/Entities/AIPromptRun/aipromptrun.form.component';
import { SharedService } from '@memberjunction/ng-shared';
import { Router, ActivatedRoute } from '@angular/router';
import { ChatMessage } from '@memberjunction/ai';
import { TestHarnessWindowService } from '@memberjunction/ng-ai-test-harness';
import * as i0 from "@angular/core";
export declare class AIPromptRunFormComponentExtended extends AIPromptRunFormComponent implements AfterViewInit, OnDestroy {
    sharedService: SharedService;
    private testHarnessWindowService;
    private viewContainerRef;
    record: AIPromptRunEntityExtended;
    prompt: AIPromptEntityExtended | null;
    model: AIModelEntity | null;
    parentRun: AIPromptRunEntityExtended | null;
    childRuns: AIPromptRunEntityExtended[];
    isLoadingRelatedData: boolean;
    isParsingMessages: boolean;
    inputExpanded: boolean;
    messagesExpanded: boolean;
    dataExpanded: boolean;
    rawExpanded: boolean;
    resultExpanded: boolean;
    metricsExpanded: boolean;
    hierarchyExpanded: boolean;
    validationExpanded: boolean;
    modelSpecificExpanded: boolean;
    private hasLoadedInput;
    private hasLoadedResult;
    private hasLoadedValidation;
    private hasLoadedMetrics;
    private hasLoadedModelSpecific;
    formattedMessages: string;
    formattedResult: string;
    formattedValidationSummary: string;
    formattedValidationAttempts: string;
    formattedData: string;
    formattedModelSelection: string;
    formattedErrorDetails: string;
    formattedModelSpecificResponseDetails: string;
    chatMessages: ChatMessage[];
    inputData: any;
    validationAttempts: any[];
    validationSummary: any;
    constructor(elementRef: ElementRef, sharedService: SharedService, router: Router, route: ActivatedRoute, cdr: ChangeDetectorRef, testHarnessWindowService: TestHarnessWindowService, viewContainerRef: ViewContainerRef);
    ngOnInit(): Promise<void>;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    onInputPanelToggle(event: any): void;
    onResultPanelToggle(event: any): void;
    onValidationPanelToggle(event: any): void;
    onMetricsPanelToggle(event: any): void;
    onModelSpecificPanelToggle(event: any): void;
    onModelSelectionPanelToggle(event: any): void;
    private loadRelatedData;
    private loadChildRuns;
    private formatAllJsonFields;
    private formatMetricsData;
    private formatErrorDetails;
    private formatModelSpecificResponseDetails;
    getStatusColor(): string;
    getStatusIcon(): string;
    getStatusText(): string;
    formatDuration(ms: number | null): string;
    formatCost(cost: number | null): string;
    formatTokens(tokens: number | null): string;
    getRunTypeIcon(runType: string | null): string;
    getRunTypeColor(runType: string | null): string;
    navigateToEntity(entityName: string, recordId: string | null): void;
    navigateToOriginalRun(): void;
    reRunPrompt(): void;
    copyToClipboard(text: string, fieldName: string): void;
    refreshData(): Promise<void>;
    private loadValidationData;
    static ɵfac: i0.ɵɵFactoryDeclaration<AIPromptRunFormComponentExtended, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AIPromptRunFormComponentExtended, "mj-ai-prompt-run-form", never, {}, {}, never, never, false, never>;
}
//# sourceMappingURL=ai-prompt-run-form.component.d.ts.map