import { AfterContentInit, AfterViewInit, ChangeDetectorRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChange, TemplateRef } from '@angular/core';
import { TabToggleDirective } from './tabs.directive';
export declare class TabHeaderComponent {
    templateRef: TemplateRef<any>;
}
export declare class TabContentComponent {
    templateRef: TemplateRef<any>;
}
export declare class TabComponent implements OnInit {
    index: number;
    isActive: boolean;
    private contentTemplateRef;
    header: string;
    isDisabled: boolean;
    tabColor: string;
    templateRef: TemplateRef<any>;
    tabHeaderComponent: TabHeaderComponent;
    tabContentComponent: TabContentComponent;
    /**
     * @method ngOnInit
     */
    ngOnInit(): void;
}
export declare class TabsHeaderComponent {
    templateRef: TemplateRef<any>;
}
export declare class TabsComponent implements AfterContentInit, AfterViewInit, OnChanges, OnDestroy {
    private changeDetectorRef;
    private ngZone;
    private renderer2;
    private activatedTabIndex;
    private listeners;
    private subscriptions;
    activeTabIndex: number;
    header: string;
    headerStyleClass: string;
    navStyleClass: string;
    contentStyleClass: string;
    styleClass: string;
    tabsColor: string;
    onClose: EventEmitter<{}>;
    onOpen: EventEmitter<{}>;
    tabsHeaderComponent: TabsHeaderComponent;
    tabs: QueryList<TabComponent>;
    tabToggleDirectives: QueryList<TabToggleDirective>;
    /**
     * @method constructor
     * @param changeDetectorRef [description]
     * @param ngZone            [description]
     * @param renderer2         [description]
     */
    constructor(changeDetectorRef: ChangeDetectorRef, ngZone: NgZone, renderer2: Renderer2);
    /**
     * @method ngAfterViewInit
     */
    ngAfterContentInit(): void;
    /**
     * @method ngAfterViewInit
     */
    ngAfterViewInit(): void;
    /**
     * @method ngOnChanges
     * @param changes [description]
     */
    ngOnChanges(changes: {
        [propKey: string]: SimpleChange;
    }): void;
    /**
     * @method ngOnDestroy
     */
    ngOnDestroy(): void;
    /**
     * [toggleTab description]
     * @method toggleTab
     */
    openTabIndex(): void;
    /**
     * [openTab description]
     * @method openTab
     * @param event     [description]
     * @param tabToOpen [description]
     */
    openTab(event: Event, tabToOpen: TabComponent): void;
    /**
     * [setTabIndex description]
     * @method setTabIndex
     */
    private setTabIndex();
    /**
     * [setTabsToggle description]
     * @method setTabsToggle
     */
    private setTabsToggle();
}
