import { LitElement } from "lit"; import type { PropertyValues, TemplateResult } from "lit"; import { XmField } from "../field/index.js"; import "../primitives/index.js"; /** * @fires change - Fired on commit with the new value in `detail`. */ export declare class XmRadio extends LitElement { static styles: CSSStyleSheet[]; /** The primitive value this radio contributes to the group when selected. */ value: string; /** Own disabled — OR'd with the group's disabled by the group. */ disabled: boolean; /** Driven by the group; never set directly by authors. */ checked: boolean; /** Effective disabled the group computes (group OR own). */ groupDisabled: boolean; get effectiveDisabled(): boolean; render(): TemplateResult; } export declare class XmRadioGroup extends XmField { static styles: CSSStyleSheet[]; private get _radios(); private get _enabledRadios(); connectedCallback(): void; disconnectedCallback(): void; protected updated(changed: PropertyValues): void; /** Reflect the group's selected value + disabled onto each child, and set the roving tabindex (selected, else first enabled, is the only tab stop). */ private _syncRadios; private _select; private _onClick; private _onKeydown; render(): TemplateResult; } declare global { interface HTMLElementTagNameMap { "xm-radio": XmRadio; "xm-radio-group": XmRadioGroup; } }