<?php
namespace Claromentis\Core\Ai;

$GLOBALS["__65da1b1ec2d6653e8a0ab7" . "848e536215"] = (@$GLOBALS["__65da1b1ec2d6653e8a0" . "ab7848e536215"] ?: array()) + array();




interface AiPluginInterface
{
    const TYPE_TEXT_GENERATION = 'text_generation';
    const TYPE_IMAGE_GENERATION = 'image_generation';
    const TYPE_CHAT_GENERATION = 'chat_generation';
    const TYPES = [self::TYPE_TEXT_GENERATION, self::TYPE_IMAGE_GENERATION, self::TYPE_CHAT_GENERATION];
    
    
    
    
    
    
    public function getModule() : string;
    
    
    
    
    
    
    
    
    
    
    
    public function getType() : string;
    
    
    
    
    
    
    public function getConfiguration() : ?AiConfigurationInterface;
    
    
    
    
    
    
    
    
    
    
    
    public function transformResponse($response);
    
    
    
    
    
    
    
    
    
    
    public function getSystemPromptParts(?string $languageCode = null, ?array $metadata = null) : array;
}