import * as i0 from '@angular/core'; import { AfterContentInit, ElementRef, OnInit, OnDestroy, QueryList } from '@angular/core'; declare class TabDirective implements AfterContentInit { readonly elRef: ElementRef; private _tabsService; private _idGenerator; isActive: i0.InputSignal; /** * The element that is the tab as far as assistive technology is concerned, and that takes focus: the * `nwTabLabel` where there is one, otherwise the host itself. * * With a label, the host `li` is only presentational and the label is the `role="tab"`. That is what lets an * action button sit beside the label rather than inside the tab, as axe fails any focusable descendant of a * `role="tab"` whatever its tabindex */ get tabElement(): HTMLElement; /** Whether the tab is a `nwTabLabel` inside this host, as opposed to the host itself */ get hasLabelTab(): boolean; /** An id for the tab element, generated if it has none, so that the tablist can own it with `aria-owns` */ get tabId(): string; constructor(); ngAfterContentInit(): void; activate(): void; focus(): void; setTabindex(value: string): void; restoreTabindex(): void; private _applyRoles; private _applyTabindex; private _actionButton; private _label; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class TabsComponent implements OnInit, AfterContentInit, OnDestroy { private _cdRef; private _tabsService; size: 'sm' | 'md' | 'lg'; maskColor: string; scrollContainer: ElementRef; activeBar: ElementRef; tabs: QueryList; /** Whether the tabs are `nwTabLabel` elements, which a tablist has to own by id rather than contain */ usesLabelTabs: boolean; /** The ids of the tab elements, for the tablist's `aria-owns` */ ownedTabIds: string; private _scrollAndResizeSub; private _activeChangeSub; private _transitionEndSub; private _tabsChangeSub; private _paginationTolerance; ngOnInit(): void; ngAfterContentInit(): void; getActiveStyles(): Record; prev(): void; next(): void; onKeydown(event: KeyboardEvent): void; onFocusOut(): void; get tabSizeClass(): string; get background(): { background: string; }; get clientWidth(): number; get shouldShowPagination(): boolean; get shouldShowPrev(): boolean; get shouldShowNext(): boolean; private _subscribeToActiveChange; private _subscribeToTabsChange; private _updateOwnedTabs; private _subscribeToActiveBarTransitionEnd; private _getActiveTab; private _getScrollEl; private _scrollToTabIfRequired; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } /** * Export cooperating directives * https://v17.angular.io/guide/standalone-components#standalone-components-for-library-authors */ declare const TABS_DIRECTIVES: readonly [typeof TabDirective, typeof TabsComponent]; export { TABS_DIRECTIVES, TabDirective, TabsComponent };