hashbrown

Turn

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