import * as React from 'react'; declare type Filter = { label: string; key: string; values: any; }; interface FilterContextProps { appliedFilters: Record; searchTerm?: string; selectedSection: string; hideBackButton?: boolean; renderDropdownContent: React.ReactNode | (() => null); applyFilter: (filterKey: string, label: string, values: any) => void; applyFilters: (filters: ({ key: string; } & Filter)[]) => void; applySearchTerm: (searchTerm: string) => void; goToFilter: (filterName: string, hideLink?: boolean) => void; goBack: () => void; deleteFilter: (filterKey: string) => void; deleteAllFilters: () => void; getValues: (filterKey: string) => any; getFilters: () => any; getFiltersCount: () => number; isBackButtonHidden: () => boolean; getSearchTerm: () => string; deleteAllFiltersAndSearchTerm: () => void; } export declare const FilterContext: React.Context; export declare const FilterContextConsumer: React.ExoticComponent>; declare type RenderDropdownContentCb = { closeDropdown: () => void; }; interface FilterPanelProviderProps { initialFilters?: Filter[]; initialSearchTerm?: string; onFilterChange?: (filters: Filter[], searchTerm: string) => void; renderDropdownContent?: React.ReactNode | ((props: RenderDropdownContentCb) => React.ReactNode); } export declare const FilterPanelProvider: React.FC; export declare function useFilteringActions(filterKey: string): { initialValues: any; applyFilter: (label: string, values: any) => void; deleteFilter: () => void; }; export declare function useDropdownRouting(): { goBack: () => void; goToFilter: (filterName: string, hideLink?: boolean) => void; isBackButtonHidden: () => boolean; selectedSection: string; }; export {};