import type { ChangeEventHandler, PropsWithChildren } from "react";
import React from "react";
interface SegmentedControlProviderContext<T = unknown> {
    handleChange: ChangeEventHandler<HTMLInputElement>;
    selectedValue: T;
    segmentedControlName?: string;
}
export declare const SegmentedControlContext: React.Context<SegmentedControlProviderContext<unknown>>;
interface SegmentedControlProviderProps<T> extends PropsWithChildren {
    readonly selectedValue?: T;
    readonly onSelectValue?: (value: T) => void;
    readonly defaultValue?: T;
    readonly name?: string;
}
export declare const useSegmentedControl: <T>() => SegmentedControlProviderContext<T>;
export declare function SegmentedControlProvider<T>({ children, selectedValue, onSelectValue, defaultValue, name, }: SegmentedControlProviderProps<T>): React.JSX.Element;
export {};
