import { IEventEmitter } from '@breadstone/mosaik-elements'; import { type IInvalidable } from '../../../Behaviors/Invalidable'; import { ISlottable } from '../../../Behaviors/Slottable'; import type { IGroupChangedEventDetail } from '../../../events'; import { CustomElement } from '../../Abstracts/CustomElement'; import type { IRadioGroupElementProps } from './IRadioGroupElementProps'; declare const RadioGroupElement_base: (abstract new (...args: Array) => import("../../../Behaviors/Themeable").IThemeableProps) & (abstract new (...args: Array) => IInvalidable & import("../../../Behaviors/Invalidable").IInvalidableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Disableable").IDisableableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Orientable").IOrientableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Valueable").IValueableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Appearanceable").IAppearanceableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Variantable").IVariantableProps) & (abstract new (...args: Array) => import("../../../Behaviors/Slottable").ISlottableProps & ISlottable) & typeof CustomElement & import("../../../Behaviors/Themeable").IThemeableCtor; /** * Radio Group - A container for grouping multiple radio buttons. * * @element mosaik-radio-group * * @description * The Radio Group component is used to organize and manage a set of radio buttons, allowing users to select only one option from the group. * It typically contains multiple Radio components, each representing an individual option. * Radio Groups are commonly used when users need to choose one option from a list or set of choices. * * @category Forms * @fires radioChanged {GroupChangedEvent} - Called when the selection in the group changes. * * @example * ```html * * * * * * ``` * * @public */ export declare class RadioGroupElement extends RadioGroupElement_base implements IRadioGroupElementProps, IInvalidable, ISlottable { private readonly _provider; private readonly _radioChanged; private _name; private _required; private _eventSubscriptions; /** * @public */ constructor(); /** * Returns the `is` property. * The `is` property represents natural name of this element. * * @public * @static * @readonly */ static get is(): string; /** * Gets or sets the `name` property. * * @public * @attr */ get name(): string; set name(value: string); /** * Gets or sets the `required` property. * * @public * @attr */ get required(): boolean; set required(value: boolean); /** * Called when the selection in the group changes. * Provides reference to `IGroupChangedEventDetail` as event detail. * * @public * @readonly * @eventProperty */ get radioChanged(): IEventEmitter; /** * @public * @override */ onSlotChanges(): void; /** * Returns whether a form will validate when it is submitted, without having to submit it. * * @public * @override */ checkValidity(): boolean; /** * Resets the element to its initial state. * * @public */ reset(): void; /** * Emits the `radioChanged` event. * * @protected */ protected onRadioChanged(args: IGroupChangedEventDetail): void; /** * @protected */ protected onValuePropertyChange(_prev?: Array, next?: Array): void; /** * @private */ private onRadioCheckChanged; /** * @private */ private clearEvents; } /** * @public */ export declare namespace RadioGroupElement { type Props = IRadioGroupElementProps; } /** * @public */ declare global { interface HTMLElementTagNameMap { 'mosaik-radio-group': RadioGroupElement; } } export {}; //# sourceMappingURL=RadioGroupElement.d.ts.map