MCPcopy Create free account
hub / github.com/TanStack/ai / readStructuredOutputCompleteValue

Function readStructuredOutputCompleteValue

packages/ai/src/activities/chat/index.ts:2937–2952  ·  view source on GitHub ↗

* Parse the `value` payload of a `structured-output.complete` CUSTOM event * into a typed shape, returning `null` if the runtime payload doesn't match. * * Uses an `unknown`-input runtime check rather than `as` casts so the engine * stays cast-free in its hot path.

(
  value: unknown,
)

Source from the content-addressed store, hash-verified

2935 * stays cast-free in its hot path.
2936 */
2937function readStructuredOutputCompleteValue(
2938 value: unknown,
2939): { object: unknown; raw: string; reasoning?: string } | null {
2940 if (typeof value !== 'object' || value === null) return null
2941 if (!('object' in value) || !('raw' in value)) return null
2942 const raw = (value as { raw: unknown }).raw
2943 if (typeof raw !== 'string') return null
2944 const reasoningField = (value as { reasoning?: unknown }).reasoning
2945 const reasoning =
2946 typeof reasoningField === 'string' ? reasoningField : undefined
2947 return {
2948 object: (value as { object: unknown }).object,
2949 raw,
2950 ...(reasoning !== undefined ? { reasoning } : {}),
2951 }
2952}
2953
2954/**
2955 * Synthesize a streaming structured-output stream by wrapping a non-streaming

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected