type SegmentBase = { id: string; label: string; value: string; }; type Segment = SegmentBase & { controls?: never; }; type SegmentWithControls = SegmentBase & { controls: string; }; export type Segments = readonly Segment[] | readonly SegmentWithControls[]; type SegmentedControlPropsBase = { name: string; value: string; mode: 'input' | 'view'; onChange: (value: string) => void; }; type SegmentedControlViewProps = { mode: 'view'; segments: readonly SegmentWithControls[]; }; type SegmentedControlInputProps = { mode: 'input'; segments: readonly Segment[]; }; export type SegmentedControlProps = SegmentedControlPropsBase & (SegmentedControlViewProps | SegmentedControlInputProps); declare const SegmentedControl: ({ name, value, mode, segments, onChange, }: SegmentedControlProps) => import("react").JSX.Element; export default SegmentedControl; //# sourceMappingURL=SegmentedControl.d.ts.map