UNPKG

@styleless-ui/react

Version:

Completely unstyled, headless and accessible React UI components.

35 lines (34 loc) 1.14 kB
import * as React from "react"; import type { MergeElementProps } from "../../typings"; interface OwnProps { /** * The content of the component. */ children?: React.ReactNode | ((ctx: { /** The `selected` state of the tab. */ selected: boolean; /** The `disabled` state of the tab. */ disabled: boolean; /** The `:focus-visible` state of the tab. */ focusedVisible: boolean; }) => React.ReactNode); /** * The className applied to the component. */ className?: string | ((ctx: { /** The `selected` state of the tab. */ selected: boolean; /** The `disabled` state of the tab. */ disabled: boolean; /** The `:focus-visible` state of the tab. */ focusedVisible: boolean; }) => string); /** * If `true`, the tab will be disabled. * @default false */ disabled?: boolean; } export type Props = Omit<MergeElementProps<"button", OwnProps>, "defaultChecked" | "defaultValue">; declare const Tab: (props: Props, ref: React.Ref<HTMLButtonElement>) => JSX.Element; export default Tab;