/** * **Сервис советника Barneo Search Widget** * * _Предоставляет методы для взаимодействия с API рекомендаций Ensi Cloud Adviser._ * * @module AdviserService */ import type { RecommendationProductsRequest, RecommendationQueryProductsRequest, CrossSellProductsRequest, UpSellProductsRequest, RecentlyWatchedProductsRequest, PopularProductsSearchRequest, SimilarProductsSearchRequest } from "../types/requests"; import type { RecommendationResponse, PopularProductsResponse, SimilarProductsResponse } from "../types/responses"; /** * **Конфигурация сервиса советника** */ export interface AdviserServiceConfig { /** Базовый URL для API */ baseUrl: string; /** Токен аутентификации */ token: string; /** ID клиента */ customerId: string; /** ID локации */ locationId: string; /** Версия API */ apiVersion?: string; /** Лимит записей для API запросов */ apiLimit?: number; } /** * **Сервис для работы с API рекомендаций Ensi Cloud Adviser** */ export declare class AdviserService { private readonly baseUrl; private readonly token; private readonly customerId; private readonly locationId; private readonly apiVersion; private readonly apiLimit; private readonly defaultHeaders; constructor(config: AdviserServiceConfig); /** * Формирует полный URL для API запроса */ private buildApiUrl; /** * Выполнить HTTP запрос к API */ private makeRequest; /** * Обработка ошибок HTTP ответа */ private handleErrorResponse; /** * Обработка ошибок сети */ private handleRequestError; /** * Получить рекомендации "People also search for this product" */ getRecommendationProducts(productId: string, request?: Partial>): Promise; /** * Получить рекомендации "Searchers also viewed" */ getRecommendationQueryProducts(query: string, request?: Partial>): Promise; /** * Получить рекомендации "Cross Sell" (С этим товаром покупают) */ getCrossSellProducts(productId: string, request?: Partial>): Promise; /** * Получить рекомендации "Up Sell" (более дорогие альтернативы) */ getUpSellProducts(productId: string, request?: Partial>): Promise; /** * Получить рекомендации "Up Sell" (новая версия) */ getUpSellProductsNew(productId: string, request?: Partial>): Promise; /** * Получить недавно просмотренные товары */ getRecentlyWatchedProducts(customerId: string, request?: Partial>): Promise; /** * Получить популярные товары */ getPopularProducts(request?: Partial): Promise; /** * Получить похожие товары */ getSimilarProducts(request?: Partial): Promise; /** * Получить информацию о конфигурации (без чувствительных данных) */ getConfigInfo(): { baseUrl: string; customerId: string; locationId: string; apiVersion: string | undefined; apiLimit: number; }; /** * Создать новый экземпляр сервиса с обновленной конфигурацией */ withConfig(updates: Partial): AdviserService; } //# sourceMappingURL=AdviserService.d.ts.map