| Server IP : 37.27.51.148 / Your IP : 37.27.51.148 Web Server : nginx/1.14.1 System : Linux libra 4.18.0-553.51.1.el8_10.x86_64 #1 SMP Wed Apr 30 20:24:04 UTC 2025 x86_64 User : root ( 0) PHP Version : 8.3.31 Disable Function : exec,passthru,shell_exec,system,proc_open,popen,parse_ini_file,show_source MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-includes/php-ai-client/src/Providers/Contracts/ |
Upload File : |
<?php
declare (strict_types=1);
namespace WordPress\AiClient\Providers\Contracts;
use WordPress\AiClient\Common\Exception\InvalidArgumentException;
use WordPress\AiClient\Providers\Models\DTO\ModelMetadata;
/**
* Interface for accessing model metadata within a provider.
*
* Provides methods to list, check, and retrieve model metadata
* for all models supported by a provider.
*
* @since 0.1.0
*/
interface ModelMetadataDirectoryInterface
{
/**
* Lists all available model metadata.
*
* @since 0.1.0
*
* @return list<ModelMetadata> Array of model metadata.
*/
public function listModelMetadata(): array;
/**
* Checks if metadata exists for a specific model.
*
* @since 0.1.0
*
* @param string $modelId Model identifier.
* @return bool True if metadata exists, false otherwise.
*/
public function hasModelMetadata(string $modelId): bool;
/**
* Gets metadata for a specific model.
*
* @since 0.1.0
*
* @param string $modelId Model identifier.
* @return ModelMetadata Model metadata.
* @throws InvalidArgumentException If model metadata not found.
*/
public function getModelMetadata(string $modelId): ModelMetadata;
}