classDiagram ChatHistory AgentChatState --> ChatHistory AgentChannelState --* AgentChatState ChatParticipant --* AgentChatState class AgentChatState { ChatHistory History Iterable~ChatParticipant~ Participants Iterable~AgentChannelState~ Channels } class AgentChannelState { +text ChannelKey +text ChannelState } class ChatParticipant { +text Id +text? Name +text Type }