/**
 * Опции для инициализации SDK
 */
export interface CodeSolverSDKOptions {
    /**
     * Базовый URL API
     */
    baseURL: string;
    /**
     * URL для WebSocket соединений (если отличается от baseURL)
     * Если не указан, будет сформирован из baseURL
     */
    wsURL?: string;
    /**
     * API ключ (если требуется)
     */
    apiKey?: string;
    /**
     * Таймаут для HTTP запросов в миллисекундах (по умолчанию 30000)
     */
    timeout?: number;
    /**
     * Пользовательские HTTP заголовки
     */
    headers?: Record<string, string>;
    /**
     * Опции для HTTPS агента (для Node.js)
     * В браузере не используется
     */
    httpsAgent?: any;
    /**
     * Настройки WebSocket соединения
     */
    websocket?: {
        /**
         * Автоматически переподключаться при потере соединения
         */
        reconnect?: boolean;
        /**
         * Максимальное количество попыток переподключения
         */
        reconnectAttempts?: number;
        /**
         * Задержка перед попыткой переподключения в миллисекундах
         */
        reconnectDelay?: number;
        /**
         * Проверять SSL-сертификаты при подключении
         * Установите false для работы с самоподписанными сертификатами
         */
        rejectUnauthorized?: boolean;
        /**
         * Базовая задержка для переподключения в миллисекундах
         */
        retryDelay?: number;
        /**
         * Максимальная задержка для переподключения в миллисекундах
         */
        maxRetryDelay?: number;
        /**
         * Стратегия задержки между попытками переподключения
         */
        reconnectStrategy?: 'linear' | 'exponential';
        /**
         * Включение автоматического ping/pong
         */
        enableAutoPing?: boolean;
        /**
         * Интервал между ping-сообщениями в миллисекундах
         */
        pingInterval?: number;
        /**
         * Количество пропущенных pong-ответов до признания соединения потерянным
         */
        pingTimeoutThreshold?: number;
        /**
         * Включение сохранения и восстановления сессии
         */
        enableSessionPersistence?: boolean;
    };
    /**
     * Режим работы SDK
     * 'browser' - оптимизирован для браузера
     * 'node' - оптимизирован для Node.js
     * 'auto' - автоматическое определение (по умолчанию)
     */
    mode?: 'browser' | 'node' | 'auto';
    /**
     * Режим отладки SDK
     * true - включает базовое логирование
     * 'verbose' - включает подробное логирование
     * false/undefined - отключает логирование (по умолчанию)
     */
    debug?: boolean | 'verbose';
    /**
     * Опции для провайдеров моделей
     */
    providers?: {
        /**
         * Опции для Anthropic
         */
        anthropic?: {
            /**
             * Регион API (default: us-east-1)
             */
            region?: 'us-east-1' | 'eu-west-1' | 'ap-southeast-2';
            /**
             * API ключ для Anthropic
             */
            apiKey?: string;
            /**
             * Время ожидания ответа в миллисекундах
             */
            timeout?: number;
        };
        /**
         * Опции для других провайдеров
         */
        [key: string]: any;
    };
}
//# sourceMappingURL=sdk-options.d.ts.map