///
import { RecommendClient } from '@algolia/recommend';
import { BatchQuery } from '@algolia/recommend-core';
import { GetParametersResult, RecommendWidget } from '../RecommendContext';
type StateType = {
isDirty: number | null;
cache: Record;
widgets: Array>;
recommendClient: RecommendClient | null;
};
type Action = {
type: 'register';
widget: Omit, 'param'>;
} | {
type: 'unregister';
key: string;
} | {
type: 'request_success';
};
export declare function getCacheKey(queries: Array>): string;
export declare function getCachedPrams(widgets: Array>, cache: StateType['cache']): GetParametersResult[];
export declare function getQueryKeys(params: Array>): {
queries: BatchQuery[];
keys: import("@algolia/recommend-core").BatchKeyPair[];
};
export declare const reducer: React.Reducer, Action>;
export {};