/**
 * Copyright IBM Corp. 2021, 2025
 * SPDX-License-Identifier: MPL-2.0
 */
import Component from '@glimmer/component';
import type { IconName } from '@hashicorp/flight-icons/svg';
import type { HdsTabsTabIds, HdsTabsPanelIds } from './types.ts';
export interface HdsTabsTabSignature {
    Args: {
        tabIds?: HdsTabsTabIds;
        panelIds?: HdsTabsPanelIds;
        selectedTabIndex?: number;
        icon?: IconName;
        count?: string;
        isSelected?: boolean;
        didInsertNode?: (element: HTMLButtonElement, isSelected?: boolean) => void;
        didUpdateNode?: (nodeIndex: number, isSelected?: boolean) => void;
        willDestroyNode?: (element: HTMLButtonElement) => void;
        onClick?: (event: MouseEvent, tabIndex: number) => void;
        onKeyUp?: (nodeIndex: number, event: KeyboardEvent) => void;
    };
    Blocks: {
        default: [];
    };
    Element: HTMLLIElement;
}
export default class HdsTabsTab extends Component<HdsTabsTabSignature> {
    private _tabId;
    get nodeIndex(): number | undefined;
    get isSelected(): boolean;
    get coupledPanelId(): string | undefined;
    didInsertNode: (element: HTMLButtonElement, positional: [boolean?]) => void;
    didUpdateNode: () => void;
    willDestroyNode: (element: HTMLButtonElement) => void;
    onClick: (event: MouseEvent) => false | undefined;
    onKeyUp: (event: KeyboardEvent) => void;
    get classNames(): string;
}
