import { EventEmitter } from '../../stencil-public-runtime';
import { ModusSize } from '../types';
export interface ITab {
    /** Custom CSS class to apply to the inner button. */
    customClass?: string;
    /** Whether the tab is disabled. */
    disabled?: boolean;
    /** A Modus Icon to display in the tab. */
    icon?: string;
    /** The position of the icon. */
    iconPosition?: 'left' | 'right';
    /** The content to display in the tab. */
    label?: string;
    /** The slot name for custom tab content. */
    slotName?: string;
}
/**
 * A customizable tabs component used to create groups of tabs.
 *
 * The component supports a `<slot>` for injecting custom tab content.
 */
export declare class ModusWcTabs {
    private inheritedAttributes;
    /** Reference to the host element */
    el: HTMLElement;
    /** The current active tab */
    activeTabIndex: number;
    /** Custom CSS class to apply to the inner div. */
    customClass?: string;
    /** The size of the tabs. */
    size?: ModusSize;
    /** The tabs to display. */
    tabs: ITab[];
    /** Additional styling for the tabs. */
    tabStyle?: 'boxed' | 'bordered' | 'lifted' | 'none';
    /** When a tab is switched to, this event outputs the relevant indices */
    tabChange: EventEmitter<{
        previousTab: number;
        newTab: number;
    }>;
    componentWillLoad(): void;
    private handleClick;
    private getClasses;
    private getTabClasses;
    render(): any;
}
