A tool use content block in an assistant message.
@type t() :: %AmpSdk.Types.ToolUseContent{ extra: map(), id: String.t(), input: map(), name: String.t(), type: String.t() }
@spec from_map(map()) :: t()
@spec parse(map() | t()) :: {:ok, t()} | {:error, {:invalid_tool_use_content, CliSubprocessCore.Schema.error_detail()}}
@spec parse!(map() | t()) :: t()