<?php
namespace Claromentis\Core\Ai;

$GLOBALS["__65da1b1ec2d6653e8a0ab7848e5362" . "15"] = (@$GLOBALS["__65da1b1ec2d66" . "53e8a0ab7848e53" . "6215"] ?: array()) + array();
use Claromentis\Core\Ai\Parts\PartInterface;






interface AiAdapterInterface
{
    
    
    
    
    
    
    
    
    
    
    
    
    
    public function generateText($parts, ?AiTextGenerationConfiguration $aiTextGenerationConfiguration = null) : AiResponseInterface;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    public function generateChat(array $parts, ?AiTextGenerationConfiguration $aiTextGenerationConfiguration = null) : AiResponseInterface;
    
    
    
    
    
    
    
    
    
    
    
    
    
    public function generateTextStream(callable $callback, $parts) : void;
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    public function generateImages(string $text, ?AiImageConfiguration $aiImageConfiguration = null) : array;
    
    
    
    
    
    
    
    
    public function generateTextEmbedding($parts) : array;
    
    
    
    
    
    
    
    public function isLanguageSupported(string $language) : bool;
    
    
    
    
    
    
    
    
    public function getInformation() : AiInformation;
}