CasperSecurity

Current Path : /var/www/orientalss.com/vendor/meilisearch/meilisearch-php/src/Contracts/
Upload File :
Current File : /var/www/orientalss.com/vendor/meilisearch/meilisearch-php/src/Contracts/ChatWorkspaceSettings.php

<?php

declare(strict_types=1);

namespace Meilisearch\Contracts;

/**
 * @phpstan-type ChatWorkspaceSource 'openAi'|'azureOpenAi'|'mistral'|'gemini'|'vLlm'
 */
class ChatWorkspaceSettings extends Data
{
    /**
     * @var ChatWorkspaceSource
     */
    private string $source;
    /**
     * @var non-empty-string|null
     */
    private ?string $orgId;
    /**
     * @var non-empty-string|null
     */
    private ?string $projectId;
    /**
     * @var non-empty-string|null
     */
    private ?string $apiVersion;
    /**
     * @var non-empty-string|null
     */
    private ?string $deploymentId;
    /**
     * @var non-empty-string|null
     */
    private ?string $baseUrl;
    private ?string $apiKey;
    private ChatWorkspacePromptsSettings $prompts;

    /**
     * @param array{
     *     source: ChatWorkspaceSource,
     *     orgId?: non-empty-string,
     *     projectId?: non-empty-string,
     *     apiVersion?: non-empty-string,
     *     deploymentId?: non-empty-string,
     *     baseUrl?: non-empty-string,
     *     apiKey?: string,
     *     prompts: array{
     *         system: string,
     *         searchDescription: string,
     *         searchQParam: non-empty-string,
     *         searchIndexUidParam: non-empty-string
     *     }
     * } $params
     */
    public function __construct(array $params)
    {
        parent::__construct($params);

        $this->source = $params['source'];
        $this->orgId = $params['orgId'] ?? null;
        $this->projectId = $params['projectId'] ?? null;
        $this->apiVersion = $params['apiVersion'] ?? null;
        $this->deploymentId = $params['deploymentId'] ?? null;
        $this->baseUrl = $params['baseUrl'] ?? null;
        $this->apiKey = $params['apiKey'] ?? null;
        $this->prompts = new ChatWorkspacePromptsSettings($params['prompts']);
    }

    /**
     * @return ChatWorkspaceSource
     */
    public function getSource(): string
    {
        return $this->source;
    }

    /**
     * @return non-empty-string|null
     */
    public function getOrgId(): ?string
    {
        return $this->orgId;
    }

    /**
     * @return non-empty-string|null
     */
    public function getProjectId(): ?string
    {
        return $this->projectId;
    }

    /**
     * @return non-empty-string|null
     */
    public function getApiVersion(): ?string
    {
        return $this->apiVersion;
    }

    /**
     * @return non-empty-string|null
     */
    public function getDeploymentId(): ?string
    {
        return $this->deploymentId;
    }

    /**
     * @return non-empty-string|null
     */
    public function getBaseUrl(): ?string
    {
        return $this->baseUrl;
    }

    /**
     * @return non-empty-string|null
     */
    public function getApiKey(): ?string
    {
        return $this->apiKey;
    }

    public function getPrompts(): ChatWorkspacePromptsSettings
    {
        return $this->prompts;
    }

    /**
     * @return array{
     *     source: ChatWorkspaceSource,
     *     orgId?: non-empty-string,
     *     projectId?: non-empty-string,
     *     apiVersion?: non-empty-string,
     *     deploymentId?: non-empty-string,
     *     baseUrl?: non-empty-string,
     *     apiKey?: string,
     *     prompts: array{
     *         system: string,
     *         searchDescription: string,
     *         searchQParam: non-empty-string,
     *         searchIndexUidParam: non-empty-string
     *     }
     * }
     */
    public function toArray(): array
    {
        return [
            'source' => $this->source,
            'orgId' => $this->orgId,
            'projectId' => $this->projectId,
            'apiVersion' => $this->apiVersion,
            'deploymentId' => $this->deploymentId,
            'baseUrl' => $this->baseUrl,
            'apiKey' => $this->apiKey,
            'prompts' => $this->prompts->toArray(),
        ];
    }
}
Hacker Blog, Shell İndir, Sql İnjection, XSS Attacks, LFI Attacks, Social Hacking, Exploit Bot, Proxy Tools, Web Shell, PHP Shell, Alfa Shell İndir, Hacking Training Set, DDoS Script, Denial Of Service, Botnet, RFI Attacks, Encryption
Telegram @BIBIL_0DAY