///
import * as React from "react";
import * as PropTypes from "prop-types";
import { BaseFieldState } from "simplr-forms";
import { FieldProps, FieldChildContext } from "simplr-forms/contracts";
import { HTMLElementProps, DomFieldTemplateCallback } from "../contracts/field";
import { BaseDomField } from "../abstractions";
export declare type RadioValue = string | number;
export interface RadioGroupProps extends FieldProps, HTMLElementProps {
name: string;
radioTemplate?: DomFieldTemplateCallback;
defaultValue?: RadioValue;
initialValue?: RadioValue;
value?: RadioValue;
}
export interface RadioGroupChildContext extends FieldChildContext {
RadioGroupOnChangeHandler: RadioOnChangeHandler;
RadioGroupOnFocus: React.FocusEventHandler;
RadioGroupOnBlur: React.FocusEventHandler;
}
export declare type RadioOnChangeHandler = (event: React.ChangeEvent, value: string) => void;
export declare class RadioGroup extends BaseDomField {
static childContextTypes: PropTypes.ValidationMap;
getChildContext(): RadioGroupChildContext;
protected readonly RawDefaultValue: string | number;
protected OnChangeHandler: RadioOnChangeHandler;
protected GetHTMLProps(props: RadioGroupProps): {};
renderField(): JSX.Element | null;
}