import type { LangfuseObservation } from "@langfuse/tracing";
import type { TranscriptEntry, UsageSummary } from "@rudderhq/agent-runtime-utils";
import type { ExecutionObservabilityContext } from "@rudderhq/shared";
interface TranscriptFallbackResult {
    ts?: string | null;
    model?: string | null;
    output?: string | null;
    usage?: UsageSummary | null;
    costUsd?: number | null;
    subtype?: string | null;
    isError?: boolean;
    errors?: string[];
}
interface EmitExecutionTranscriptTreeInput {
    context: ExecutionObservabilityContext;
    parentObservation: LangfuseObservation | null;
    transcript: TranscriptEntry[];
    initialTurnInput?: unknown;
    fallbackResult?: TranscriptFallbackResult | null;
}
export interface ExecutionTranscriptTreeStats {
    turnCount: number;
    toolCount: number;
    eventCount: number;
    finalOutput: string | null;
    finalModel: string | null;
    finalUsage: UsageSummary | null;
    finalSessionId: string | null;
    hasError: boolean;
}
export declare function emitExecutionTranscriptTree(input: EmitExecutionTranscriptTreeInput): ExecutionTranscriptTreeStats;
export {};
//# sourceMappingURL=langfuse-transcript.d.ts.map