import type { FC, HTMLAttributes, Ref } from 'react'; import type { VariantProps } from 'class-variance-authority'; import { type TestableProps } from '../../utils/testId'; import { segmentedControlVariants } from './classes'; type SegmentedControlVariantProps = VariantProps; type SegmentedControlNativeProps = Omit, 'onChange' | 'defaultValue'>; /** * SegmentedControl component for switching between different views or options. * * Built on Ark UI's SegmentGroup with radio input behavior and accessibility. * This is a controlled component - selection state is managed by the parent. */ export interface SegmentedControlBaseProps { /** The currently selected value */ value?: string; /** The default selected value */ defaultValue?: string; /** Callback function called when the selection changes */ onChange?: (value: string) => void; /** Whether the segmented control should take full width and stretch items equally */ fullWidth?: boolean; ref?: Ref; } export type SegmentedControlProps = SegmentedControlNativeProps & SegmentedControlVariantProps & SegmentedControlBaseProps & TestableProps; /** * SegmentedControl component for switching between different views or options. * * Built on Ark UI's SegmentGroup with radio input behavior and accessibility. * This is a controlled component - selection state is managed by the parent. */ export declare const SegmentedControl: FC; export {};