<?php
namespace App\AI\Api\Gemini\Interactions; class InputSchema implements \JsonSerializable { public $type = "object"; public $properties; public $required = []; public $additionalProperties = false; public function __construct() { $this->properties = new \App\AI\Api\Gemini\Interactions\Properties(); } public function addProperty(string $propertyName, \App\AI\Api\Gemini\Interactions\Property $propertyStdObj): void { $this->properties->{$propertyName} = $propertyStdObj; } public function setRequired(array $required): void { $this->required = $required; } public function jsonSerialize(): mixed { if (is_null($this->type)) { unset($this->type); } if (is_null($this->properties) || empty(get_object_vars($this->properties))) { unset($this->properties); } if (is_null($this->required) || empty($this->required)) { unset($this->required); } if (is_null($this->additionalProperties)) { unset($this->additionalProperties); } return $this; } } 