$arguments */ public function __construct( public string $runId, public string $parentRunId, public string $toolCallId, public string $name, public array $arguments, public string $rawArguments = '', ) { } /** * @param array $payload */ public static function fromArray(array $payload): self { return new self( (string) $payload['run_id'], (string) $payload['parent_run_id'], (string) $payload['tool_call_id'], (string) $payload['name'], (array) ($payload['arguments'] ?? []), (string) ($payload['raw_arguments'] ?? '') ); } /** * @return array */ public function toArray(): array { return [ 'run_id' => $this->runId, 'parent_run_id' => $this->parentRunId, 'tool_call_id' => $this->toolCallId, 'name' => $this->name, 'arguments' => $this->arguments, 'raw_arguments' => $this->rawArguments, ]; } }