A tool result content block in a user message.
@type t() :: %AmpSdk.Types.ToolResultContent{ content: String.t(), extra: map(), is_error: boolean(), tool_use_id: String.t(), type: String.t() }
@spec from_map(map()) :: t()
@spec parse(map() | t()) :: {:ok, t()} | {:error, {:invalid_tool_result_content, CliSubprocessCore.Schema.error_detail()}}
@spec parse!(map() | t()) :: t()