import type { NetworkRequest } from '../../types.js';
export interface LLMCall {
    provider: string;
    model: string;
    timestamp: Date;
    duration?: number;
    tokens?: {
        prompt?: number;
        completion?: number;
        total: number;
    };
    cost?: number;
    request: any;
    response: any;
    error?: string;
}
export interface VectorSearch {
    database: string;
    operation: string;
    timestamp: Date;
    duration?: number;
    query?: any;
    results?: any;
    metadata?: {
        index?: string;
        namespace?: string;
        topK?: number;
        resultCount?: number;
        bestScore?: number;
    };
}
export interface RetrievalResult {
    database: string;
    results: Array<{
        id: string;
        score: number;
        metadata?: any;
    }>;
    metadata: any;
    timestamp: Date;
}
export declare class AIExtractionUtils {
    static extractLLMCalls(requests: NetworkRequest[]): LLMCall[];
    static extractVectorSearches(requests: NetworkRequest[]): VectorSearch[];
    static extractRetrievalResults(requests: NetworkRequest[]): RetrievalResult[];
    static extractDocumentProcessing(requests: NetworkRequest[]): any[];
    static analyzePipelineFlow(requests: NetworkRequest[]): any[];
    private static calculateOpenAICost;
    private static calculateAnthropicCost;
}
//# sourceMappingURL=ai-utils.d.ts.map