import { AfterContentInit, ElementRef, OnDestroy } from '@angular/core';
import { IfActiveService } from '../../utils/conditional/if-active.service';
import { ClrKeyFocus } from '../../utils/focus/key-focus/key-focus';
import { ClrCommonStringsService } from '../../utils/i18n/common-strings.service';
import { ClrPopoverToggleService } from '../../utils/popover/providers/popover-toggle.service';
import { TabsLayout } from './enums/tabs-layout.enum';
import { TabsService } from './providers/tabs.service';
import { ClrTabLink } from './tab-link.directive';
import * as i0 from "@angular/core";
import * as i1 from "../../utils/popover/popover-host.directive";
export declare class ClrTabs implements AfterContentInit, OnDestroy {
    ifActiveService: IfActiveService;
    toggleService: ClrPopoverToggleService;
    tabsService: TabsService;
    tabsId: number;
    commonStrings: ClrCommonStringsService;
    tabLinkElements: HTMLElement[];
    _mousedown: boolean;
    keyFocus: ClrKeyFocus;
    private tabs;
    private subscriptions;
    private _tabOverflowEl;
    private _tabLinkDirectives;
    constructor(ifActiveService: IfActiveService, toggleService: ClrPopoverToggleService, tabsService: TabsService, tabsId: number, commonStrings: ClrCommonStringsService);
    get layout(): TabsLayout | string;
    set layout(layout: TabsLayout | string);
    get tabLinkDirectives(): ClrTabLink[];
    get activeTabInOverflow(): boolean;
    get activeTabPosition(): number;
    get isCurrentInOverflow(): boolean;
    get isVertical(): boolean;
    set tabOverflowEl(value: ElementRef);
    private get overflowPosition();
    private set tabContentViewContainer(value);
    ngAfterContentInit(): void;
    ngOnDestroy(): void;
    toggleOverflowOnPosition(position: number): void;
    resetKeyFocusCurrentToActive(event: FocusEvent): void;
    toggleOverflowOnClick(): void;
    openOverflowOnFocus(): void;
    closeOnFocusOut(event: FocusEvent): void;
    closeOnEscapeKey(): void;
    closeOnOutsideClick(event: Event, tabOverflowTrigger: HTMLElement): void;
    private listenForTabLinkChanges;
    static ɵfac: i0.ɵɵFactoryDeclaration<ClrTabs, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ClrTabs, "clr-tabs", never, { "layout": "clrLayout"; }, {}, ["tabs"], never, false, [{ directive: typeof i1.ClrPopoverHostDirective; inputs: {}; outputs: {}; }]>;
}
