import { Span } from "@opentelemetry/api"; type VectorDBCallConfig = { vendor: string; type: "query" | "upsert" | "delete"; }; type LLMCallConfig = { vendor: string; type: "chat" | "completion"; }; export declare class VectorSpan { private span; constructor(span: Span); reportQuery({ queryVector }: { queryVector: number[]; }): void; reportResults({ results, }: { results: { ids?: string; scores?: number; distances?: number; metadata?: Record; vectors?: number[]; documents?: string; }[]; }): void; } export declare class LLMSpan { private span; constructor(span: Span); reportRequest({ model, messages, }: { model: string; messages: { role: string; content?: string | unknown; }[]; }): void; reportResponse({ model, usage, completions, }: { model: string; usage?: { prompt_tokens: number; completion_tokens: number; total_tokens: number; }; completions?: { finish_reason: string; message: { role: "system" | "user" | "assistant"; content: string | null; }; }[]; }): void; } export declare function withVectorDBCall ReturnType>({ vendor, type }: VectorDBCallConfig, fn: F, thisArg?: ThisParameterType): Promise | ReturnType; export declare function withLLMCall ReturnType>({ vendor, type }: LLMCallConfig, fn: F, thisArg?: ThisParameterType): Promise | ReturnType; export {}; //# sourceMappingURL=manual.d.ts.map