import Component from '@glimmer/component';
import type { CommonArgs } from './common';
import type { EuiTabsSignature } from './eui-tabs';
import type { ComponentLike } from '@glint/template';
export interface EuiTabbedContentTab {
    id: string;
    name: string;
    content?: ComponentLike;
    disabled?: boolean;
}
export type EuiTabbedContentArgs = CommonArgs & {
    /**
     * When tabbing into the tabs, set the focus on `initial` for the first tab,
     * or `selected` for the currently selected tab. Best use case is for inside of
     * overlay content like popovers or flyouts.
     */
    autoFocus?: 'initial' | 'selected';
    /**
     * Choose `default` or alternative `condensed` display styles
     */
    display?: EuiTabsSignature['Args']['display'];
    /**
     * Evenly stretches each tab to fill the horizontal space
     */
    expand?: boolean;
    /**
     * Use this prop to set the initially selected tab while letting the tabbed content component
     * control selection state internally
     */
    initialSelectedTab?: EuiTabbedContentTab;
    onTabClick?: (selectedTab: EuiTabbedContentTab) => void;
    /**
     * Use this prop if you want to control selection state within the owner component
     */
    selectedTab?: EuiTabbedContentTab;
    size?: EuiTabsSignature['Args']['size'];
    /**
     * Each tab needs id and content properties, so we can associate it with its panel for accessibility.
     * The name property (a node) is also required to display to the user.
     */
    tabs: EuiTabbedContentTab[];
};
export interface EuiTabbedContentSignature {
    Element: HTMLDivElement;
    Args: EuiTabbedContentArgs;
    Blocks: {
        default: [EuiTabbedContentTab];
        selectedTabContent: [EuiTabbedContentTab];
    };
}
export default class EuiTabbedContentComponent extends Component<EuiTabbedContentSignature> {
    selectedTabId: string | undefined;
    inFocus: boolean;
    tabsRef?: Element;
    get autoFocus(): "selected" | "initial";
    constructor(owner: unknown, args: EuiTabbedContentArgs);
    get selectedTab(): EuiTabbedContentTab | undefined;
    setTabsRef: (element: Element) => void;
    willDestroy(): void;
    removeFocus: (blurEvent: FocusEvent) => void;
    onTabClick: (selectedTab: EuiTabbedContentTab) => void;
    focusTab: () => void;
    initializeFocus: () => void;
}
//# sourceMappingURL=eui-tabbed-content.d.ts.map