import { Section, SectionItem, TabbedSectionItemSettings } from "../../../../models";
import { LayoutCanvasStore } from "../../";
import { MultilingualStore } from "../../../../stores";
import { VueComponentBase } from "../../../VueComponentBase";
import { SubscriptionHandler } from "@omnia/fx";
import { DynamicStateStore } from "../../";
import { AnchorLink } from "../../../AnchorLink";
import { OmniaContext } from "../../../../contexts";
export interface SectionTabRendererProps {
    section: Section;
    layoutId: string;
    useScrollMargingFix: boolean;
    themeTargetId?: string;
}
export declare class LayoutSectionTabRenderer extends VueComponentBase<SectionTabRendererProps> {
    layoutCanvasStore: LayoutCanvasStore;
    multilingualStore: MultilingualStore;
    tabStateStore: DynamicStateStore;
    subscriptionHandler: SubscriptionHandler;
    omniaContext: OmniaContext;
    anchorLink: AnchorLink;
    private selectedTabIndex;
    private selectedAccordionIndex;
    private currentSectionId;
    private isEditMode;
    private initialAnchorLinkResolved;
    private VK_ENTER;
    private isAccordionManualClicked;
    section: Section;
    layoutId: string;
    useScrollMargingFix: boolean;
    created(): void;
    beforeDestroy(): void;
    private handleAnchorLink;
    updated(): void;
    private getDefaultLabel;
    private getPreferredLabel;
    private getCustomAnchorName;
    get selectedTab(): SectionItem<TabbedSectionItemSettings>;
    onSelectTab(index: number): void;
    onSelectAccordion(val: any): void;
    private silentNavigateIfNeeded;
    hasTabIcon(tab: SectionItem<TabbedSectionItemSettings>): boolean;
    private hasAnyTabIcon;
    private showIconAndTextMode;
    renderLabelAndIcon(tab: SectionItem<TabbedSectionItemSettings>, itemId: string, ariaExpandedStatus: string): VueTsxSupport.JSX.Element;
    private isSelectedAccordionIndex;
    private ensureValueAccordion;
    private renderAnchorElements;
    renderAccordion(): VueTsxSupport.JSX.Element;
    renderTabTitle(tab: SectionItem<TabbedSectionItemSettings>): VueTsxSupport.JSX.Element;
    renderIcon(tab: SectionItem<TabbedSectionItemSettings>): VueTsxSupport.JSX.Element;
    renderTab(tab: SectionItem<TabbedSectionItemSettings>, tabIndex: number): VueTsxSupport.JSX.Element;
    renderTabs(): VueTsxSupport.JSX.Element;
    render(): VueTsxSupport.JSX.Element;
}
