import { Base } from '@studiometa/js-toolkit'; import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit'; type TabItem = { btn: HTMLElement; content: HTMLElement; isEnabled: boolean; }; type TabsStates = Partial>>; type TabsStylesOption = Partial>; export interface TabsProps extends BaseProps { $options: { styles: TabsStylesOption; }; $refs: { btn: HTMLElement[]; content: HTMLElement[]; }; } /** * Tabs class. * @link https://ui.studiometa.dev/components/Tabs/ */ export declare class Tabs extends Base { /** * Config. */ static config: BaseConfig; items: TabItem[]; /** * Initialize the component's behaviours. * @returns {void} */ mounted(): void; /** * Switch tab on button click. */ onBtnClick({ index }: { index: number; }): void; /** * Enable the given tab and its associated content. */ enableItem(item: TabItem): Promise; /** * Disable the given tab and its associated content. */ disableItem(item: TabItem): Promise; } export {};