import { PluginObject } from 'vue';
import { ModulVue } from '../../utils/vue/vue';
export declare enum MRadioPosition {
    Left = "left",
    Right = "right"
}
export declare enum MRadioVerticalAlignement {
    Center = "center",
    Top = "top"
}
export interface RadioGroup {
    name: string;
    stateIsDisabled: boolean;
    stateIsError: boolean;
    stateIsValid: boolean;
    radiosPosition: MRadioPosition;
    inline: boolean;
    radiosVerticalAlign: MRadioVerticalAlignement;
    radiosMarginTop: string;
    getValue(): string;
    updateValue(value: string): void;
}
export declare abstract class BaseRadioGroup extends ModulVue {
}
export declare class MRadio extends ModulVue {
    readonly modelValue: string;
    readonly value: string;
    readonly name: string;
    readonly radioPosition: MRadioPosition;
    readonly disabled: boolean;
    readonly radioVerticalAlign: MRadioVerticalAlignement;
    readonly radioMarginTop: string;
    readonly id: string;
    readonly focus: boolean;
    readonly inputAriaDescribedby: string;
    $refs: {
        radioInput: HTMLInputElement;
    };
    hasFocus: boolean;
    hasParentGroup: boolean | undefined;
    parentGroup: RadioGroup;
    internalDisabled: boolean;
    onChange(value: any): void;
    onFocus(event: Event): void;
    onBlur(event: Event): void;
    focusChanged(focus: boolean): void;
    protected mounted(): void;
    protected get model(): string;
    protected set model(value: string);
    get propPosition(): MRadioPosition;
    get propVerticalAlign(): MRadioVerticalAlignement;
    get propRadioMarginTop(): string;
    get propDisabled(): boolean;
    get propError(): boolean;
    get propValid(): boolean;
    get propName(): string;
    get propInline(): boolean;
    get propReadonly(): boolean;
    get isChecked(): boolean;
    get isReadonlyUnchecked(): boolean;
    private isGroup;
}
declare const RadioPlugin: PluginObject<any>;
export default RadioPlugin;
//# sourceMappingURL=radio.d.ts.map