Skip to content

@sqlrooms/ai-core / ChatTurnModel

Type Alias: ChatTurnModel ​

ChatTurnModel = object

Presentation-neutral semantic model for one chat turn.

Owns classification, nesting signals, status, chronological activity, interleaved grouping, hoist eligibility, counts, and timing inputs. Visual order and labels are left to presentation recipes.

Properties ​

activity ​

activity: ChatTurnActivityItem[]

Reasoning + tool/agent activity in source order.


textItems ​

textItems: ChatTurnTextItem[]

Non-suppressed text parts in source order.


answerTextIndex ​

answerTextIndex: number | null

Source index of the answer text when the final message part is text.


segments ​

segments: ChatTurnSegment[]

Interleaved segments for the default SQLRooms recipe.


hoisted ​

hoisted: HoistableToolCall[]

Hoisted tool renderers in execution order (deduped by toolCallId).


firstHoistPartIndex ​

firstHoistPartIndex: number | null

Index of the first part that produced a hoisted renderer, if any.


leafToolCount ​

leafToolCount: number

Leaf tool count for summary labels.


isActivityRunning ​

isActivityRunning: boolean

True when any activity tool is still pending.


timingToolCallIds ​

timingToolCallIds: string[]

Tool call ids contributing to turn-level timing aggregation.


suppressedIndices ​

suppressedIndices: ReadonlySet<number>