type RadioGroupValue = string | undefined; type RadioGroupValueChangeReason = "imperative-action" | "keyboard-action" | "radio-change"; type RadioGroupValueChangeDetails = { readonly event?: Event; readonly isCanceled: boolean; readonly previousValue: RadioGroupValue; readonly radioValue: string; readonly reason: RadioGroupValueChangeReason; readonly trigger?: Element; readonly value: string; cancel(): void; onAccepted(callback: () => void): void; }; type RadioGroupOrientation = "horizontal" | "vertical"; type RadioGroupOptions = { defaultValue?: RadioGroupValue; disabled?: boolean; form?: string; name?: string; onValueChange?: (value: string, details: RadioGroupValueChangeDetails) => void; orientation?: RadioGroupOrientation; readOnly?: boolean; required?: boolean; value?: RadioGroupValue; }; type RadioGroupSetValueOptions = { emit?: boolean; }; type RadioGroupInstance = { readonly root: HTMLElement; destroy(): void; getValue(): RadioGroupValue; refresh(): void; setDisabled(disabled: boolean): void; setFormOptions(options: Pick): void; setName(name?: string): void; setOrientation(orientation: RadioGroupOrientation): void; setReadOnly(readOnly: boolean): void; setRequired(required: boolean): void; setValue(value: RadioGroupValue, options?: RadioGroupSetValueOptions): void; subscribe(event: "stateSync", callback: () => void): () => void; subscribe(event: "valueChange", callback: (details: RadioGroupValueChangeDetails) => void): () => void; }; declare function createRadioGroup(root: HTMLElement, options?: RadioGroupOptions): RadioGroupInstance; export { type RadioGroupInstance, type RadioGroupOptions, type RadioGroupOrientation, type RadioGroupSetValueOptions, type RadioGroupValue, type RadioGroupValueChangeDetails, type RadioGroupValueChangeReason, createRadioGroup };