import { default as React } from 'react';
type EventUpdateHandler = (_value: string | undefined) => void;
export interface RadioGroupContextProps {
    selectedValue?: string;
    onChange?: EventUpdateHandler;
    name?: string;
    updateSelectedValue?: EventUpdateHandler;
    disabled?: boolean;
}
export declare const RadioGroupContext: React.Context<RadioGroupContextProps>;
/**
A component to wrap and group individual Radio components: All contained child Radio elements will share the same `name`-attribute passed as a prop to the group, and thus make the Radios work with each other as expected.
*/
export declare const RadioGroup: React.FC<RadioGroupProps>;
export interface RadioGroupProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange"> {
    /** The children of the RadioGroup. Typically, these will be `Radio` components. */
    children?: React.ReactNode;
    /** Pass a custom className */
    className?: string;
    /** Whether all Radios in the group are disabled */
    disabled?: boolean;
    /** Text to display in case validation failed or there is an error. Will set the whole group to invalid when passed. */
    errortext?: string;
    /** A text to render to further explain meaning and significance of the group */
    helptext?: string;
    /** The id of the group. If not passed, RadioGroup will create and use a unique id for the group */
    id?: string;
    /** Whether the group not be validated. */
    invalid?: boolean;
    /** Label for the group of radios as a whole. Passing a label is mandatory in order to denote a selection in the set is required by passing the `required` prop. */
    label?: string;
    /** The name of all radios in a group. If not passed, RadioGroup will create and use a unique name identifier for its child Radios */
    name?: string;
    /** An onChange handler to execute when the selected option changes */
    onChange?: EventUpdateHandler;
    /** Whether a selection on the RadioGroup is required */
    required?: boolean;
    /** The value of the initially selected radio. This will override 'checked' set on any of the child radio elements. */
    selected?: string;
    /** Text to display in case validation is successful. When passed, will set the whole group to valid. */
    successtext?: string;
    /** Whether the RadioGroup was successfully validated */
    valid?: boolean;
}
export {};
//# sourceMappingURL=RadioGroup.component.d.ts.map