import { ComponentProps, ReactNode } from 'react';
import { OptionValue } from './shared';
import { ComponentCSSPropType } from './tailwind';
export interface ExperimentalSegmentedControlProps<T extends OptionValue = OptionValue> extends Omit<ComponentProps<'div'>, 'defaultValue' | 'onChange'> {
    /** @default "medium" */
    size?: ComponentCSSPropType<'segmented-control', 'size', 'medium'>;
    value?: T;
    defaultValue?: T;
    onChange?: (value: T) => void;
}
export declare const ExperimentalSegmentedControlRoot: <T extends OptionValue>(props: ExperimentalSegmentedControlProps<T> & import('react').RefAttributes<HTMLDivElement>) => ReactNode | null;
export interface ExperimentalSegmentedControlOptionProps extends ComponentProps<'div'> {
    value?: OptionValue;
    icon?: ReactNode;
}
export declare const ExperimentalSegmentedControlOption: import('react').ForwardRefExoticComponent<Omit<ExperimentalSegmentedControlOptionProps, "ref"> & import('react').RefAttributes<HTMLButtonElement>>;
//# sourceMappingURL=SegmentedControl.parts.d.ts.map