TanStack

StructuredOutputCompleteEvent

Interface: StructuredOutputCompleteEvent<T>

Defined in: packages/ai/src/types.ts:1360

Final event of a streaming structured-output run. Carries the validated object (typed as T after the orchestrator runs Standard Schema parsing), the raw JSON text that produced it, and — for thinking/reasoning models — the accumulated reasoning text. Adapters emit this with T = unknown; the chat orchestrator narrows to the schema's inferred type after validation.

reasoning is undefined when the model produced none (most non-thinking models) and when the underlying adapter doesn't expose reasoning streams.

name is a string literal so consumers can narrow directly:

ts
if (chunk.type === 'CUSTOM' && chunk.name === 'structured-output.complete') {
  chunk.value.object // typed as T
}

Extends

Type Parameters

T

T = unknown

Indexable

ts
[k: string]: unknown

Properties

model?

ts
optional model: string;

Defined in: packages/ai/src/types.ts:1339

Model identifier for multi-model support

Inherited from

CustomEvent.model


name

ts
name: "structured-output.complete";

Defined in: packages/ai/src/types.ts:1363

Overrides

ts
CustomEvent.name

value

ts
value: object;

Defined in: packages/ai/src/types.ts:1364

object

ts
object: T;

raw

ts
raw: string;

reasoning?

ts
optional reasoning: string;

Overrides

ts
CustomEvent.value