import { EventEmitter } from '../../../stencil-public-runtime';
import { HTMLStencilElement } from '../../../stencil-public-runtime';
import { Attributes } from '../../../utils/attributes';
import { BalTabOption } from '../bal-tab.type';
export declare class TabItem {
    private inheritAttributes;
    private tabPanelID;
    el: HTMLStencilElement;
    isActive: boolean;
    tabsId?: string;
    /**
     * Tells if this route is active and overrides the bal-tabs value property.
     */
    active: boolean;
    /**
     * This is the key of the tab.
     */
    value: string;
    /**
     * Label for the tab.
     */
    label: string;
    /**
     * Specifies the relationship of the target object to the link object.
     * The value is a space-separated list of [link types](https://developer.mozilla.org/en-US/docs/Web/HTML/Link_types).
     */
    rel: string | undefined;
    /**
     * Link to path.
     */
    href?: string;
    /**
     * Specifies where to display the linked URL.
     * Only applies when an `href` is provided.
     */
    target: BalProps.BalButtonTarget;
    /**
     * If `true` a small red bubble is added to the tab.
     */
    bubble: boolean | string;
    /**
     * If `true` the tab is disabled.
     */
    disabled: boolean;
    /**
     * If `true` the step is hidden.
     */
    invisible: boolean;
    /**
     * Tell's if the linking is done by a router.
     */
    prevent: boolean;
    /**
     * Tab icon not available for the steps.
     */
    icon?: string;
    /**
     * If `true` the tab does not have a panel
     */
    noPanel: boolean;
    /**
     * A11y attributes for the native button element.
     */
    a11yControls?: string;
    /**
     * Sub label for the tab.
     */
    subLabel: string;
    /**
     * source for the svg icon
     */
    svg: string;
    /**
     * Emitted when the link element has clicked
     */
    balNavigate: EventEmitter<BalEvents.BalTabItemNavigateDetail>;
    /**
     * Emitted when the link element has clicked
     */
    balKeyDown: EventEmitter<BalEvents.BalTabItemKeyDownDetail>;
    componentWillLoad(): void;
    /**
     * @internal
     */
    setTabId(tabsId: string): Promise<void>;
    /**
     * Options of the tab like label, value etc.
     */
    getOptions(): Promise<BalTabOption>;
    /**
     * Sets the tab active.
     */
    setActive(active: boolean): Promise<void>;
    get options(): {
        tabPanelID: string;
        value: string;
        icon: string;
        label: string;
        href: string;
        rel: string;
        target: BalProps.BalButtonTarget;
        active: boolean;
        disabled: boolean;
        invisible: boolean;
        bubble: string | boolean;
        passed: boolean;
        prevent: boolean;
        navigate: EventEmitter<MouseEvent>;
        keyDown: EventEmitter<KeyboardEvent>;
        trackingData: Attributes;
        noPanel: boolean;
        a11yControls: string;
        subLabel: string;
        svg: string;
    };
    render(): any;
}
