import { LitElement } from 'lit'; import type { Constructor } from '../../common/mixins/constructor.js'; import type { TabHeadersPosition } from '../dockmanager/backfill-types-dockmanager.js'; import { type IgcDockManagerResourceStrings } from '../dockmanager/dockmanager.interfaces.js'; export interface IgcTabsEventMap { igcRendered: CustomEvent; igcHiddenTabSelected: CustomEvent; igcMaximize: CustomEvent; igcMaximizeMinimizeFocus: CustomEvent; igcSelectedIndexChanged: CustomEvent; igcSelectedTabOutOfView: CustomEvent; } declare const IgcTabsComponent_base: Constructor> & Constructor; /** * @hidden * The tabs component manages tab navigation, allowing selection and display of the content associated with a given tab. * * @element igc-tabs-component * * @fires igcRendered - Fired when the component is rendered. * @fires igcHiddenTabSelected - Fired when a hidden tab is selected. * @fires igcMaximize - Fired when the maximize button is clicked. * @fires igcMaximizeMinimizeFocus - Fired when focus is on the minimize/maximize button. * @fires igcSelectedIndexChanged - Fired when new tab is selected. * @fires igcSelectedTabOutOfView - Fired when the newly selected tab is not currently in view. * * @slot - Renders the tab content. * @slot tabHeader - Renders the tab header. * * @csspart tabs-container-contentIds - The tabs container. * */ export default class IgcTabsComponent extends IgcTabsComponent_base { static readonly tagName = "igc-tabs-component"; static styles: import("lit").CSSResult[]; static register(): void; private _parentUseFixedSize; private _size; private _tabHeadersPosition; private _forcedUpdate; private _selectionOrder; private _resizeObserver; private _tabHeadersDiv; private _minResizeWidth?; private _minResizeHeight?; private _hasHiddenTabs; private _hiddenTabsMenuMeta; /** * The default size of the tabs. * * @default 100 */ set size(value: number); get size(): number; /** * Whether the component is maximized. * * @default false */ maximized: boolean; /** * Determines whether maximization is allowed. * * @default true */ allowMaximize: boolean; /** * Determines the header position. * * @default top */ set tabHeadersPosition(value: TabHeadersPosition); get tabHeadersPosition(): TabHeadersPosition; /** * Determines the index of the selected tab. * * @default 0 */ selectedIndex: number; /** * Whether the headers are displayed. * * @default true */ hasHeaders: boolean; /** * Whether to display a button for the hidden headers. * * @default true */ showHiddenTabsMenu: boolean; /** The resource strings of the tabs. */ resourceStrings?: IgcDockManagerResourceStrings; /** An array of identifiers. */ contentIds: string[]; /** * Whether parent pane is sized in pixels (instead of relatively to their siblings) * and can be resized beyond the viewport, allowing scrollable overflow within the container. * * @hidden * @internal */ set parentUseFixedSize(value: boolean); get parentUseFixedSize(): boolean; /** * The minimum width of the tab group in pixels during resizing. */ set minResizeWidth(value: number | undefined); get minResizeWidth(): number | undefined; /** * The minimum height of the tab group in pixels during resizing. */ set minResizeHeight(value: number | undefined); get minResizeHeight(): number | undefined; protected selectedIndexChanged(oldValue: number, newValue: number): void; connectedCallback(): void; protected firstUpdated(): void; protected updated(): void; disconnectedCallback(): void; private handleSlotChange; private forceUpdate; private get _tabHeaders(); private get _tabPanels(); private get _hiddenTabHeaders(); private updateParts; private _setTabsAttributes; private _maximizeButtonClick; private _handleTabPointerDown; private _handleSelectedIndexChanged; private _updateSelection; private _checkForActivePane; private _setHasHiddenTabs; private _onTabHeadersDivResized; private _onKeyDown; private _handleHiddenTabsMenuClick; private _handleMaximizeMinimizeFocus; private _handleContextMenuClosed; private _renderMoreTabsButton; private _renderMinimizeButton; private _renderMaximizeButton; private _renderTabHeaders; private _renderHiddenTabsMenu; protected render(): import("lit-html").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'igc-tabs-component': IgcTabsComponent; } } export {};