/**
 * @attr {String} validity - Specifies the `validityState` this element is in.
 * @attr {String} setCustomValidity - Sets a custom help text message to display for all validityStates.
 * @attr {String} setCustomValidityCustomError - Custom help text message to display when validity = `customError`.
 * @attr {String} setCustomValidityValueMissing - Custom help text message to display when validity = `valueMissing`.
 * @attr {String} error - When defined, sets persistent validity to `customError` and sets `setCustomValidity` = attribute value.
 * @attr {Boolean} noValidate - If set, disables auto-validation on blur.
 * @attr {Boolean} onDark - DEPRECATED - use `appearance` instead.
 * @attr {Boolean} required - Populates the `required` attribute on the element. Used for client-side validation.
 * @attr {Object} optionSelected - Specifies the current selected radio button.
 * @csspart radio-group - Apply css to the fieldset element in the shadow DOM
 * @slot {HTMLSlotElement} legend - Allows for the legend to be overridden.
 * @slot {HTMLSlotElement} optionalLabel - Allows overriding the optional display text "(optional)", which appears next to the label.
 * @slot {HTMLSlotElement} helpText - Allows for the helper text to be overridden.
 * @event auroFormElement-validated - Notifies that the element has been validated.
 * @event input - Notifies every time the value prop of the element is changed.
 */
export class AuroRadioGroup extends LitElement {
    static get styles(): import("lit").CSSResult[];
    static get properties(): {
        /**
         * Defines whether the component will be on lighter or darker backgrounds.
         * @property {'default', 'inverse'}
         * @default 'default'
         */
        appearance: {
            type: StringConstructor;
            reflect: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        horizontal: {
            type: BooleanConstructor;
        };
        error: {
            type: StringConstructor;
            reflect: boolean;
        };
        value: {
            type: StringConstructor;
        };
        noValidate: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        onDark: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        required: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        setCustomValidity: {
            type: StringConstructor;
        };
        setCustomValidityCustomError: {
            type: StringConstructor;
        };
        setCustomValidityValueMissing: {
            type: StringConstructor;
        };
        validity: {
            type: StringConstructor;
            reflect: boolean;
        };
        optionSelected: {
            type: ObjectConstructor;
        };
        /**
         * Indicates whether the radio group is in a dirty state (has been interacted with).
         * @type {boolean}
         * @default false
         * @private
         */
        touched: boolean;
        /**
         * Indicates whether the legend slot is set or not.
         * @type {boolean}
         * @default false
         * @private
         */
        hasLegend: boolean;
    };
    /**
     * This will register this element with the browser.
     * @param {string} [name="auro-radio-group"] - The name of element that you want to register to.
     *
     * @example
     * AuroRadioGroup.register("custom-radio-group") // This will register this element to <custom-radio-group/>
     *
     */
    static register(name?: string): void;
    appearance: string;
    disabled: boolean;
    horizontal: boolean;
    required: boolean;
    validity: any;
    value: any;
    optionSelected: EventTarget;
    onDark: boolean;
    touched: boolean;
    hasLegend: boolean;
    /**
     * @private
     */
    private validation;
    /**
     * @private
     */
    private index;
    /**
     * @private
     */
    private max;
    /**
     * @private
     */
    private runtimeUtils;
    /**
     * @private
     */
    private helpTextTag;
    firstUpdated(): void;
    /**
     * Method for handling of selection of a radio element.
     * @private
     * @param {Event} event - The trigger event tied to this function.
     * @returns {void}
     */
    private handleSelection;
    /**
     * Method handles radio element blur.
     * @private
     * @returns {void}
     */
    private handleRadioBlur;
    /**
     * LitElement lifecycle method. Called after the DOM has been updated.
     * @param {Map<string, any>} changedProperties - Keys are the names of changed properties, values are the corresponding previous values.
     * @returns {void}
     */
    updated(changedProperties: Map<string, any>): void;
    /**
     * Resets component to initial state.
     * @returns {void}
     */
    reset(): void;
    /**
     * Validates value.
     * @param {boolean} [force=false] - Whether to force validation.
     */
    validate(force?: boolean): void;
    /**
     * Method handles the reset event from a radio element.
     * @private
     * @returns {void}
     */
    private resetRadio;
    /**
     * Method for handling the attributes of each radio input.
     * @private
     * @returns {void}
     */
    private handleItems;
    items: Element[];
    /**
     * Method for handling slot content changes.
     * @private
     * @returns {void}
     */
    private handleSlotChange;
    /**
     * Method for handling legend slot changes.
     * @private
     * @returns {void}
     */
    private handleLegendSlotChange;
    /**
     * Method for initializing the tab index of the checked radio input.
     * @private
     * @returns {void}
     */
    private initializeIndex;
    /**
     * Method for handling a newly selected radio input.
     * @private
     * @param {Event} event - The trigger event tied to this function.
     * @returns {void}
     */
    private handleToggleSelected;
    /**
     * Method for selecting a radio input.
     * @private
     * @param {Number} index - The value of the element's index attribute.
     * @returns {void}
     */
    private selectItem;
    /**
     * Method for selecting the next radio input.
     * @private
     * @param {Number} index - The value of the element's index attribute.
     * @param {String} moveDirection - Arrow key pressed by user.
     * @returns {void}
     */
    private selectNextItem;
    /**
     * Method for handling a keydown event.
     * @private
     * @param {Event} event - The trigger event tied to this function.
     * @returns {void}
     */
    private handleKeyDown;
    render(): import("lit-html").TemplateResult;
}
import { LitElement } from "lit";
