One conversational turn: an optional user message, the assistant messages that answered it, and the activities and errors that arrived in between.
API
export type Turn<M> = {
user?: Extract <
M,
{
role: "user";
}
>;
assistants: readonly Extract <
M,
{
role: "assistant";
}
>[];
activitiesByAssistant: ReadonlyMap <
string,
readonly ActivityMessage []
>;
activitiesByToolCall: ReadonlyMap <
string,
readonly ActivityMessage []
>;
unlinkedActivities: readonly ActivityMessage [];
errors: readonly Extract <
M,
{
role: "error";
}
>[];
};Turn
@typeM