import RootStore from "../RootStore";
import type { SearchButtonConfig, SearchButtonTypeConfig, SearchShortcutState, SearchSubButtonConfig } from "../types";
export default class SearchButtonsStore {
    private readonly rootStore;
    private _subButtonRegistry?;
    private readonly state;
    private readonly filters;
    private readonly actions;
    private readonly factory;
    private poiTypeCountsCache;
    private lastPoiTypeCountUpdate;
    constructor(rootStore: RootStore);
    private setupReactions;
    private get subButtonRegistry();
    private registerSubButtonProviders;
    private invalidatePoiTypeCounts;
    get isVisible(): boolean;
    get shouldShow(): boolean;
    get activePoiFilterId(): string | null;
    get activeSubButtonsParentId(): string | null;
    get activeSubButtonId(): string | null;
    get subButtonsEnabled(): boolean;
    get searchShortcutState(): SearchShortcutState;
    get searchButtons(): SearchButtonConfig[];
    get hasAnySearchButtons(): boolean;
    get hasActiveSearchButton(): boolean;
    get activeSearchButtonLabel(): string | null;
    get activeSubButtons(): SearchSubButtonConfig[];
    get shouldShowSubButtons(): boolean;
    get hasActiveParentWithChildren(): boolean;
    get areAllSelected(): boolean;
    get activeChildrenCount(): number;
    get totalChildrenCount(): number;
    get poiTypeCounts(): Map<number, number>;
    get totalPoiTypeCount(): number;
    get activePoiTypeId(): number | null;
    handleSearchButtonClick(searchButtonId: string): void;
    handleExtendedSearchButtonClick(buttonId: string): void;
    handleMainButtonClick(buttonId: string): void;
    handleSessionsClick(): void;
    togglePoiType(poiTypeId: number): void;
    clearAllFilters(): void;
    showSubButtons(parentButtonId: string): void;
    hideSubButtons(): void;
    handleSubButtonClick(subButtonId: string): void;
    toggleChildFilter(childId: string): void;
    clearPoiTypeFilters(): void;
    clearAllChildFilters(): void;
    setActiveParentId(parentId: string | null): void;
    showShortcuts(visible: boolean): void;
    clearChildren(): void;
    setSubButtonId(buttonId: string | null): void;
    setPoiFilterId(filterId: string | null): void;
    getPoiTypeTotalCount(poiTypeId: number): number;
    isChildActive(childId: string): boolean;
    getActiveParent(): SearchButtonTypeConfig | null;
}
//# sourceMappingURL=SearchButtonsStore.d.ts.map