Public declaration syntax from forge-py/src/forge/core/message.py Original source SHA-256: 03402bf69ba4770958bd6c70169b00e8b4ed5b9b7db0cc5f2ff38cdc8224351e Function bodies and constant values are omitted. This is not the complete implementation. Source line 18 class Role(Enum) Source line 36 def as_str(self) -> str Source line 50 class TextPart() Source line 62 class ImagePart() Source line 76 class ToolCallPart() Source line 92 class ToolResultPart() Source line 176 class ModelMessage() Source line 193 def new(role: Role, parts: list[MessagePart]) -> ModelMessage Source line 206 def text(role: Role, text: str) -> ModelMessage Source line 223 def tool_calls(self) -> list[ToolCallPart] Source line 231 def text_content(self) -> str Source line 239 def to_dict(self) -> dict[str, Any] Source line 251 def from_dict(data: dict[str, Any]) -> ModelMessage Source line 264 def to_json(self) -> str Source line 273 def from_json(data: str) -> ModelMessage