<?php

declare(strict_types=1);

namespace ContextPaging;

use Psr\Http\Message\ResponseInterface;

/**
 * Interface for OpenAI-compatible chat completions API.
 */
interface CompletionsClientInterface
{
    /**
     * Create a chat completion.
     *
     * @param array $messages OpenAI-format messages array
     * @param array $options Additional options (model, temperature, stream, etc.)
     * @return ResponseInterface PSR-7 response (streaming or regular)
     */
    public function chat(array $messages, array $options = []): ResponseInterface;

    /**
     * List available models.
     *
     * @return ResponseInterface
     */
    public function listModels(): ResponseInterface;
}
