import { ElementRef, OnChanges, OnInit } from '@angular/core';
import { CssClassBuilder, Nullable } from '@fundamental-ngx/cdk/utils';
import { TabLinkDirective } from '../tab-link/tab-link.directive';
import * as i0 from "@angular/core";
export type TabItemState = 'success' | 'error' | 'warning' | 'information' | 'neutral';
/**
 * Tab Item is optional wrapper for Tab link
 *
 * ```html
 * <div fd-tab-item>
 *    <a fd-tab-link>
 *        link
 *    </a>
 * </div>
 * ```
 */
export declare class TabItemDirective implements CssClassBuilder, OnChanges, OnInit {
    readonly elementRef: ElementRef;
    /** Apply user custom styles */
    class: string;
    /** Semantic type of the tab item */
    tabItemState: Nullable<TabItemState>;
    /** This should be used only on `filterMode`. Flag should be enable for first item */
    header: boolean;
    /** Disabled state for tab item */
    disabled: boolean;
    /** Defines if there will be added fd-tabs__item class. Enabled by default. */
    fdTabItemClass: boolean;
    /** @hidden */
    linkItem: TabLinkDirective;
    /** @hidden */
    constructor(elementRef: ElementRef);
    /** @hidden */
    buildComponentCssClass(): string[];
    /** @hidden */
    ngOnChanges(): void;
    /** @hidden */
    ngOnInit(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TabItemDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<TabItemDirective, "[fd-tab-item]", never, { "class": { "alias": "class"; "required": false; }; "tabItemState": { "alias": "tabItemState"; "required": false; }; "header": { "alias": "header"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "fdTabItemClass": { "alias": "fdTabItemClass"; "required": false; }; }, {}, ["linkItem"], never, true, never>;
}
