import { type ComponentProps, type ReactNode } from 'react';
import type { GDSComponentProps } from '@graphprotocol/gds-css';
import { type CheckableLabelProps } from './base/Checkable.tsx';
import type { RadioMeta } from './Radio.meta.ts';
export interface RadioProps extends Omit<ComponentProps<'input'>, 'checked' | 'defaultChecked' | 'onChange' | 'size' | 'type'>, GDSComponentProps<typeof RadioMeta> {
    name?: string | undefined;
    value?: string | undefined;
    checked?: boolean | undefined;
    defaultChecked?: boolean | undefined;
    onChange?: ((checked: true) => void) | undefined;
    /** @default false */
    disabled?: boolean | undefined;
    children?: ReactNode | undefined;
}
export declare function RadioRoot({ size, children: label, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, name: passedName, value, checked: controlledChecked, defaultChecked, onChange, disabled, className, ...props }: RadioProps): import("react/jsx-runtime").JSX.Element;
export declare namespace RadioRoot {
    var displayName: string;
}
export interface RadioGroupProps extends ComponentProps<'div'> {
    name?: string | undefined;
}
export declare function RadioGroup({ name: passedName, children, ...props }: RadioGroupProps): import("react/jsx-runtime").JSX.Element;
export declare namespace RadioGroup {
    var displayName: string;
}
export interface RadioAreaProps extends CheckableLabelProps {
}
export declare function RadioArea(props: RadioAreaProps): import("react/jsx-runtime").JSX.Element;
export declare namespace RadioArea {
    var displayName: string;
}
//# sourceMappingURL=Radio.parts.d.ts.map