import type {ResponseMetadata} from "./conversation-types"; export function responseMetadata(providerId: string, model: string, startedAt: number, outputTokens: number | undefined | null): ResponseMetadata { const durationMs = Math.max(1, Math.round(performance.now() - startedAt)); const normalizedTokens = typeof outputTokens === "number" && Number.isFinite(outputTokens) && outputTokens >= 0 ? Math.round(outputTokens) : null; const tokensPerSecond = normalizedTokens === null ? null : Math.round((normalizedTokens / (durationMs / 1000)) * 10) / 10; return {providerId, model, durationMs, outputTokens: normalizedTokens, tokensPerSecond}; }