import { ChangeDetectorRef, ElementRef, EventEmitter, TemplateRef } from '@angular/core';
import { BadgeComponent } from '../badge/badge.component';
import * as i0 from "@angular/core";
type TBadgeOptions = Omit<BadgeComponent, 'size' | 'iconName'>;
export declare class TabComponent {
    private cdr;
    /**
     * Whether tab is disabled or not
     */
    isDisabled: boolean;
    /**
     * Aria controls, for accessibility reasons
     */
    ariaControls: string;
    /**
     * Id of the tab
     */
    id: string;
    /**
     * Id of the content
     */
    tabContentId: string;
    /**
     * Aria labelled by which will be set on the content, for accessibility reasons
     */
    tabContentAriaLabelledBy: string;
    /**
     * Whether tab is active or not
     */
    isActive: boolean;
    /**
     * Options for the badge inside the tab
     */
    badgeOptions?: TBadgeOptions;
    /**
     * @ignore
     */
    contentTemplateRef: TemplateRef<any>;
    /**
     * @ignore
     */
    tab: ElementRef<HTMLButtonElement>;
    /**
     * Output that emits if tab is selected
     */
    tabSelect: EventEmitter<void>;
    /**
     * Output that emits keyboard event
     */
    tabMove: EventEmitter<KeyboardEvent>;
    constructor(cdr: ChangeDetectorRef);
    /**
     * @ignore
     */
    setIsActive(isActive: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TabComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TabComponent, "nj-tab", never, { "isDisabled": { "alias": "isDisabled"; "required": false; }; "ariaControls": { "alias": "ariaControls"; "required": false; }; "id": { "alias": "id"; "required": false; }; "tabContentId": { "alias": "tabContentId"; "required": false; }; "tabContentAriaLabelledBy": { "alias": "tabContentAriaLabelledBy"; "required": false; }; "isActive": { "alias": "isActive"; "required": false; }; "badgeOptions": { "alias": "badgeOptions"; "required": false; }; }, { "tabSelect": "tabSelect"; "tabMove": "tabMove"; }, never, ["*", "[tab-content]"], true, never>;
}
export {};
