namespace AIStudio.Chat; /// /// A block of content in a chat thread. Might be any type of content, e.g., text, image, voice, etc. /// /// Time when the content block was created. /// Type of the content block, e.g., text, image, voice, etc. /// The content of the block. public class ContentBlock(DateTimeOffset time, ContentType type, IContent content) { /// /// Time when the content block was created. /// public DateTimeOffset Time => time; /// /// Type of the content block, e.g., text, image, voice, etc. /// public ContentType ContentType => type; /// /// The content of the block. /// public IContent Content => content; /// /// The role of the content block in the chat thread, e.g., user, AI, etc. /// public ChatRole Role { get; init; } = ChatRole.NONE; }