carbon-components-angular
Version:
Next generation components
84 lines (80 loc) • 3.3 kB
TypeScript
/**
*
* carbon-angular v0.0.0 | tab-headers-vertical.component.d.ts
*
* Copyright 2014, 2026 IBM
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { QueryList, AfterContentInit, ElementRef, OnChanges, SimpleChanges, OnDestroy, OnInit, ChangeDetectorRef, Renderer2 } from "@angular/core";
import { EventService } from "carbon-components-angular/utils";
import { I18n } from "carbon-components-angular/i18n";
import { BaseTabHeader } from "./base-tab-header.component";
import { Tab } from "./tab.component";
import * as i0 from "@angular/core";
/**
* The `TabHeadersVertical` component renders tab headers in a vertical
* orientation. It contains the `Tab` items and supports keyboard navigation
* via ArrowUp/ArrowDown/Home/End.
*/
export declare class TabHeadersVertical extends BaseTabHeader implements AfterContentInit, OnChanges, OnDestroy, OnInit {
protected elementRef: ElementRef;
protected changeDetectorRef: ChangeDetectorRef;
protected eventService: EventService;
protected renderer: Renderer2;
protected i18n: I18n;
/**
* List of `Tab` components.
*/
tabInput: QueryList<Tab>;
/**
* i18n strings for the tab list `aria-label` fallback.
*/
translations: any;
verticalClass: boolean;
headerContainer: ElementRef<HTMLElement>;
/**
* ContentChild of all the tabs
*/
tabQuery: QueryList<Tab>;
tabs: QueryList<Tab>;
allTabHeaders: QueryList<ElementRef>;
/**
* Focused tab index when `followFocus` is false (manual activation)
*/
activeIndex: number | null;
/**
* Whether the tab list is overflowing at the top (some tabs are clipped).
*/
isOverflowingTop: boolean;
/**
* Whether the tab list is overflowing at the bottom (some tabs are clipped).
*/
isOverflowingBottom: boolean;
private resizeObserver;
constructor(elementRef: ElementRef, changeDetectorRef: ChangeDetectorRef, eventService: EventService, renderer: Renderer2, i18n: I18n);
keyboardInput(event: KeyboardEvent): void;
handleBlur(event: FocusEvent): void;
ngOnInit(): void;
ngOnDestroy(): void;
ngAfterContentInit(): void;
ngOnChanges(changes: SimpleChanges): void;
onTabFocus(index: number): void;
selectTab(tab: Tab, tabIndex: number): void;
getSelectedTab(): any;
protected updateOverflowState(): void;
protected scrollSelectedTabIntoView(): void;
protected setFirstTab(): void;
private listScrollHandler;
static ɵfac: i0.ɵɵFactoryDeclaration<TabHeadersVertical, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<TabHeadersVertical, "cds-tab-headers-vertical, ibm-tab-headers-vertical", never, { "tabInput": "tabs"; "translations": "translations"; }, {}, ["tabQuery"], never, false>;
}