import type { StreamFn } from "@mariozechner/pi-agent-core"; export function streamWithPayloadPatch( underlying: StreamFn, model: Parameters[0], context: Parameters[1], options: Parameters[2], patchPayload: (payload: Record) => void, ) { const originalOnPayload = options?.onPayload; return underlying(model, context, { ...options, onPayload: (payload) => { if (payload && typeof payload === "object") { patchPayload(payload as Record); } return originalOnPayload?.(payload, model); }, }); }