import type { StateFromReducersMapObject } from '@reduxjs/toolkit'; import type { RecommendationAppState } from '../../state/recommendation-app-state.js'; import { type CoreEngine, type ExternalEngineOptions } from '../engine.js'; import type { SearchThunkExtraArguments } from '../search-thunk-extra-arguments.js'; import { getSampleRecommendationEngineConfiguration, type RecommendationEngineConfiguration } from './recommendation-engine-configuration.js'; export type { RecommendationEngineConfiguration }; export { getSampleRecommendationEngineConfiguration }; declare const recommendationEngineReducers: { debug: import("@reduxjs/toolkit").Reducer & { getInitialState: () => boolean; }; pipeline: import("@reduxjs/toolkit").Reducer & { getInitialState: () => string; }; searchHub: import("@reduxjs/toolkit").Reducer & { getInitialState: () => string; }; recommendation: import("@reduxjs/toolkit").Reducer & { getInitialState: () => import("../../features/recommendation/recommendation-state.js").RecommendationState; }; }; type RecommendationEngineReducers = typeof recommendationEngineReducers; type RecommendationEngineState = StateFromReducersMapObject & Partial; /** * The engine for powering recommendation experiences. * * @group Engine */ export interface RecommendationEngine extends CoreEngine { } /** * The recommendation engine options. * * @group Engine */ export interface RecommendationEngineOptions extends ExternalEngineOptions { /** * The recommendation engine configuration options. */ configuration: RecommendationEngineConfiguration; } /** * Creates a recommendation engine instance. * * @param options - The recommendation engine options. * @returns A recommendation engine instance. * * @group Engine */ export declare function buildRecommendationEngine(options: RecommendationEngineOptions): RecommendationEngine;