import { EventEmitter } from '../../stencil-public-runtime';
import { ISelectedTabIndicatorConfig, ITabNavigationConfig, ITabNavigationEvents, ITabNavigationItem } from './tab-navigation.types';
import { ETabItemType } from '../tab-item/tab-item.types';
export declare class KvTabNavigation implements ITabNavigationConfig, ITabNavigationEvents {
    /** @inheritdoc */
    tabs: ITabNavigationItem[];
    /** @inheritdoc */
    selectedTabKey?: number | string;
    /** @inheritdoc */
    type?: ETabItemType;
    /** @inheritdoc */
    tabChange: EventEmitter<string>;
    private tabsIndicatorConfig;
    /** Listen to custom DOM event of tab selection */
    tabSelectionHandler(event: CustomEvent<string>): void;
    /** Watch for tabs change to calculate elements width */
    tabsChangeHandler(): Promise<void>;
    /** Watch for tab selection change and react accordingly by updating the internal states */
    tabSelectionChangeHandler(): Promise<void>;
    /** The left offset and width of the tab indicator, recalculated when the selected tab changes */
    selectedTabIndicatorConfig: ISelectedTabIndicatorConfig;
    componentDidLoad(): Promise<void>;
    private applySelectedTabStyling;
    render(): any;
}
