import DivaSet from '../Set/DivaSet';
import DivaCatalogData from '../../model/Catalog/CatalogData';
import { TabGroupTypes } from '../../interface/ConfiguratorStructureDataType';
import { ArticleOptionValueView } from '../../interface/OptionTypes/ArticleOptionValueView';
import { TabGroup, OptionStep, ConfigStep } from '../../interface/ConfiguratorStructureDataType';
import { ItemPaletteType } from '../../interface/ViewTypes';
export default class DivaConfigTreeData {
    private tabGroupsData;
    private tabGroupCountData;
    private configStepsCountData;
    constructor();
    addPlannerTab(catalogData: DivaCatalogData): void;
    addProductsTab(): void;
    addPromotedTab(): void;
    addAccessoireStep(articlesWithAccessoires: {
        [articleCodex: string]: string[];
    }, catalogData: DivaCatalogData): void;
    addStyleConsultantTab(targetArticles: string[]): void;
    addSummaryTab(targetArticles: string[]): void;
    addStaticRoomlistTab(): void;
    addTabGroup(tabCodex: string, tabGroup: TabGroup): void;
    addOptionStep(tabCodex: string, optionStepCodex: string, optionStep: OptionStep): void;
    addConfigStep(tabCodex: string, optionStepCodex: string, configStepCodex: string, configStep: ConfigStep): void;
    getTabGroupByCodex(codex: string): TabGroup | undefined;
    getTabGroupByOptionCodex(optionCodex: string): TabGroup | undefined;
    getTabGroupByConfigStepKey(configStepKey: string): TabGroupTypes | undefined;
    getHasTabgroupType(tabGroupType: TabGroupTypes): boolean;
    getOptionStepByCodex(codex: string, tabGroupCodex?: string): OptionStep | undefined;
    getTabgroupKeyByOptionCodex(codex: string): string | undefined;
    getConfigStepByCodex(codex: string): ConfigStep | undefined;
    getConfigStepBasketIdAndOptionCodex(basketId: string, optionCodex: string): ConfigStep | undefined;
    clearConfigTree(): void;
    get tabGroups(): Map<string, TabGroup>;
    get tabGroupCount(): number;
    addOneTabGroupCount(): void;
    get configStepsCount(): number;
    addOneConfigStepsCount(): void;
    getConfigStepByKey(key: string): false | ConfigStep;
    getOptionStepByKey(key: string): false | OptionStep;
    getAllByKey(key: string): {
        tabGroup: TabGroup;
        optionStep: OptionStep;
        configStep: ConfigStep;
    } | null;
    getTargetArticles(configStepKey: string): string[];
    getOptionStuff(configStepKey: string, set: DivaSet): {
        optionCodex: string;
        partOfGroup: {
            groupName: string;
            position: "l" | "r" | undefined;
        } | undefined;
        isMultiselect: boolean;
        actStepName: string;
        groupsDefaultClosed: boolean;
    };
    doShowConfigSingle(configStepKey: string): boolean;
    getCurPaletteType(set: DivaSet, configStepKey: string): ItemPaletteType;
    getStepInfo(configStepKey: string): string | undefined;
    getVisibility(configStepKey: string, visible: boolean, catalogData: DivaCatalogData): boolean;
    getCurOptionArticleCount(configStepKey: string): number;
    getCurFilterType(configStepKey: string, confgiItems: ArticleOptionValueView[]): string;
    getNewConfigStepKeyInOption(configStepKey: string, optionCodex: string, tabGroupKey: string): string | undefined;
    mergeSameOptions(optionsToMerge: string[][]): void;
    mergeIDMToOPG(set: DivaSet): void;
    private getOptionWhereIDMVariantIs;
    sortConfigStepsInConfigTree(targetArticlesSorted: string[]): void;
    private getChildsOfShelfStep;
    setAlternateImages(catalogData: DivaCatalogData): void;
    private getTargetArticlesInTabGroup;
    getConfigStepKeyOfAccessoire(articleCodex: string, targetArticle: string): string[];
    isRenderedInAccessorieStep(configStepKey: string): boolean;
    isRenderedNotInSettingPalette(configStepKey: string): boolean;
    getFirstConfigStepKey(): string | undefined;
    getOptionTitleAndConfigStepKeyByCodex(optionCodex: string, targetArticle: string): {
        title: string;
        configStepKey: string;
    } | undefined;
    getNewConfigStepKeyByBasketId(curConfigStepKey: string, basketId: string): any;
}
//# sourceMappingURL=DivaConfigTree.d.ts.map