import type { JsxCustomElementAttributes, JsxElementProps } from '@ecopages/jsx'; import type { RuiTabs as RuiTabsElement, RuiTabsProps } from './tabs.script'; import './tabs.script'; export type RuiTabListProps = JsxElementProps; export type RuiTabProps = Omit, 'id'> & { id: string; disabled?: boolean; /** Whether this tab is selected in the initial document. */ selected?: boolean; }; export type RuiTabPanelsProps = JsxElementProps; export type RuiTabPanelProps = Omit, 'id' | 'hidden'> & { id: string; /** Whether this panel is selected in the initial document. */ selected?: boolean; /** Whether the panel is initially hidden when no selection is provided. */ hidden?: boolean; }; /** * Tab strip container. Set `aria-label` (or `label` on `RuiTabs`) for the tab list name. * * @cssclass rui-tabs__list - `role="tablist"` strip. */ export declare function RuiTabList({ children, class: className, ...props }: RuiTabListProps): import("@ecopages/jsx").JsxRenderable; /** * Tab control. `id` pairs with the matching `RuiTabPanel` id. * * @cssclass rui-tabs__tab - `role="tab"` button; underline/border per `variant`. */ export declare function RuiTab({ id, children, class: className, disabled, selected, ...props }: RuiTabProps): import("@ecopages/jsx").JsxRenderable; /** * Groups tab panels below the tab list. * * @cssclass rui-tabs__panels - Panel group. */ export declare function RuiTabPanels({ children, class: className, ...props }: RuiTabPanelsProps): import("@ecopages/jsx").JsxRenderable; /** * Tab panel paired with a `RuiTab` by `id`. * * @cssclass rui-tabs__panel - `role="tabpanel"`; hidden when not selected. */ export declare function RuiTabPanel({ id, children, class: className, selected, hidden, ...props }: RuiTabPanelProps): import("@ecopages/jsx").JsxRenderable; export declare function RuiTabs({ children, ...props }: JsxCustomElementAttributes): import("@ecopages/jsx").JsxRenderable;