UNPKG

solver-sdk

Version:

SDK for WorkAI API - AI-powered code analysis with WorkCoins billing system

122 lines 6.42 kB
/** * API для работы с чатом с поддержкой Anthropic Extended Thinking */ import { IHttpClient } from '../../interfaces/http-client'; import { ChatService } from './interfaces'; import { ChatMessage, ChatOptions, ChatResponse, ChatStreamChunk, ChatStreamOptions } from './models'; import { ChatCancelMethods } from './cancel-methods'; /** * Опции для ChatApi */ interface ChatApiOptions { debug?: boolean | 'verbose' | 'silent' | 'error' | 'warn' | 'info' | 'debug'; streamLogging?: { sseEvents?: boolean; streamChunks?: boolean; eventCallbacks?: boolean; importantOnly?: boolean; }; } export * from './models'; export * from './interfaces'; /** * API для работы с чатом с поддержкой Anthropic Extended Thinking */ export declare class ChatApi extends ChatCancelMethods implements ChatService { private options; /** Logger для ChatApi с настраиваемыми уровнями */ private readonly logger; /** * Создает новый экземпляр API для работы с чатом * @param {IHttpClient} httpClient HTTP клиент * @param {ChatApiOptions} options Опции логирования (опционально) */ constructor(httpClient: IHttpClient, options?: ChatApiOptions); /** * Отправляет сообщение в чат и получает ответ от модели * @param {ChatMessage[]} messages Массив сообщений для отправки * @param {ChatOptions} [options] Дополнительные параметры * @returns {Promise<ChatResponse>} Ответ модели */ chat(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>; /** * Алиас для метода chat для совместимости с другими SDK * @param {ChatMessage[]} messages Массив сообщений для отправки * @param {ChatOptions} [options] Дополнительные параметры * @returns {Promise<ChatResponse>} Ответ модели */ chatCompletion(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>; /** * Проверяет доступность API чата * @returns {Promise<boolean>} Результат проверки */ checkAvailability(): Promise<boolean>; /** * Отправляет сообщение в чат и получает ответ от модели * с автоматическим переключением между регионами при ошибках перегрузки * @param {ChatMessage[]} messages Массив сообщений для отправки * @param {ChatOptions} [options] Дополнительные параметры * @returns {Promise<ChatResponse>} Ответ модели */ chatWithRegionFailover(messages: ChatMessage[], options?: ChatOptions): Promise<ChatResponse>; /** * Отправляет одиночный запрос к модели с автоматическим переключением регионов * @param {string} prompt Запрос к модели * @param {ChatOptions} [options] Дополнительные параметры * @returns {Promise<string>} Текстовый ответ модели */ sendPromptWithRegionFailover(prompt: string, options?: ChatOptions): Promise<string>; /** * Потоковый чат с поддержкой thinking * @param {ChatMessage[]} messages Массив сообщений для отправки * @param {ChatStreamOptions} [options] Дополнительные параметры * @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков ответа */ streamChat(messages: ChatMessage[], options?: ChatStreamOptions & { onEvent?: (eventType: string, data: any) => void; socketId?: string; }): AsyncGenerator<ChatStreamChunk>; /** * Отправляет одиночный запрос в потоковом режиме * @param {string} prompt Запрос к модели * @param {ChatStreamOptions} [options] Дополнительные параметры * @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков ответа */ streamPrompt(prompt: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>; /** * Отправляет continuation запрос для interleaved thinking */ sendContinuation(messages: ChatMessage[], options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>; /** * 🔄 Продолжает прерванный ответ (resume после timeout) * @param {string} originalRequestId ID оригинального запроса * @param {ChatMessage[]} messages История сообщений * @param {string} partialText Частично полученный текст * @param {ChatStreamOptions} [options] Дополнительные параметры * @returns {AsyncGenerator<ChatStreamChunk>} Асинхронный генератор чанков */ resumeChat(originalRequestId: string, messages: ChatMessage[], partialText: string, options?: ChatStreamOptions): AsyncGenerator<ChatStreamChunk>; /** * Валидирует опции чата согласно документации Anthropic * @private */ private validateChatOptions; /** * Подготавливает параметры запроса для отправки на сервер * @param {ChatMessage[]} messages Сообщения * @param {ChatOptions} options Опции * @returns {Record<string, any>} Параметры запроса */ private buildRequestParams; /** * Конвертирует ответ API в ChatStreamChunk (только официальные поля Anthropic API) * @private */ private convertToStreamChunk; /** * Обрабатывает автоматическое выполнение инструментов * @private */ private handleAutoToolExecution; } //# sourceMappingURL=index.d.ts.map