import Actions from '../../actions'; import Store from '../../store'; export declare type Action = Actions.ResetRefinements | Actions.AddRefinement | Actions.ReceiveNavigations | Actions.SelectRefinement | Actions.SelectMultipleRefinements | Actions.DeselectRefinement | Actions.ReceiveMoreRefinements | Actions.ReceiveNavigationSort; export declare type State = Store.AvailableNavigations; export declare const DEFAULTS: State; export default function updateNavigations(state: State, action: Action): Store.AvailableNavigations; export declare const resetRefinements: (state: Store.AvailableNavigations, navigationId: string | boolean) => { byId: { [x: string]: Store.Navigation; }; allIds: string[]; sort: Store.Recommendations.Navigation[]; }; export declare const receiveNavigations: (state: Store.AvailableNavigations, navigations: Store.Navigation[]) => { allIds: string[]; byId: {}; sort: Store.Recommendations.Navigation[]; }; export declare const selectMultipleRefinements: (state: Store.AvailableNavigations, { navigationId, indices }: Actions.Payload.Navigation.MultipleRefinements) => { byId: { [x: string]: Store.Navigation | { selected: number[]; field: string; label: string; boolean?: boolean; more?: boolean; range?: boolean; max?: number; min?: number; or?: boolean; show?: number[]; refinements: Store.Refinement[]; sort?: Store.Sort; metadata: { [key: string]: string; }; }; }; allIds: string[]; sort: Store.Recommendations.Navigation[]; }; export declare const selectRefinement: (state: Store.AvailableNavigations, { navigationId, index: refinementIndex }: Actions.Payload.Navigation.Refinement) => { byId: { [x: string]: Store.Navigation | { selected: number[]; field: string; label: string; boolean?: boolean; more?: boolean; range?: boolean; max?: number; min?: number; or?: boolean; show?: number[]; refinements: Store.Refinement[]; sort?: Store.Sort; metadata: { [key: string]: string; }; }; }; allIds: string[]; sort: Store.Recommendations.Navigation[]; }; export declare const deselectRefinement: (state: Store.AvailableNavigations, { navigationId, index: refinementIndex }: Actions.Payload.Navigation.Refinement) => Store.AvailableNavigations; export declare const addRefinement: (state: Store.AvailableNavigations, { navigationId, value, low, high, range }: Actions.Payload.Navigation.AddRefinement) => { byId: { [x: string]: Store.Navigation | { refinements: any[]; selected: number[]; field: string; label: string; boolean?: boolean; more?: boolean; range?: boolean; max?: number; min?: number; or?: boolean; show?: number[]; sort?: Store.Sort; metadata: { [key: string]: string; }; } | { selected: number[]; field: string; label: string; boolean?: boolean; more?: boolean; range?: boolean; max?: number; min?: number; or?: boolean; show?: number[]; refinements: Store.Refinement[]; sort?: Store.Sort; metadata: { [key: string]: string; }; }; }; allIds: string[]; sort: Store.Recommendations.Navigation[]; }; export declare const receiveMoreRefinements: (state: Store.AvailableNavigations, { navigationId, refinements, selected }: Actions.Payload.Navigation.MoreRefinements) => Store.AvailableNavigations; export declare const receiveNavigationSort: (state: Store.AvailableNavigations, sort: Store.Recommendations.Navigation[]) => { sort: Store.Recommendations.Navigation[]; byId: { [key: string]: Store.Navigation; }; allIds: string[]; };