pub trait BaseMessage {
// Required methods
fn content(&self) -> &str;
fn message_type(&self) -> &MessageType;
fn role(&self) -> &str;
fn name(&self) -> Option<&str>;
fn is_example(&self) -> bool;
fn additional_kwargs(&self) -> &HashMap<String, String>;
fn response_metadata(&self) -> &HashMap<String, String>;
fn id(&self) -> Option<&str>;
}