import type { ExtractPropTypes, PropType, InjectionKey } from 'vue';
import type { RadioLabelType, RadioGroupSizeType, RadioChangeInterface } from './interface';
export declare const Props: {
    readonly disabled: {
        readonly type: BooleanConstructor;
        readonly default: () => boolean;
    };
    readonly modelValue: {
        readonly type: PropType<RadioLabelType>;
        readonly default: () => string;
    };
    readonly vertical: {
        readonly type: BooleanConstructor;
        readonly default: () => boolean;
    };
    readonly columnGap: {
        readonly type: PropType<string | number>;
        readonly default: () => string;
    };
    readonly rowGap: {
        readonly type: PropType<string | number>;
        readonly default: () => string;
    };
    readonly border: {
        readonly type: BooleanConstructor;
        readonly default: () => boolean;
    };
    readonly size: {
        readonly type: PropType<RadioGroupSizeType>;
        readonly default: () => RadioGroupSizeType;
        readonly validator: (val: RadioGroupSizeType) => boolean;
    };
    readonly change: {
        readonly type: PropType<RadioChangeInterface>;
        readonly default: () => null;
    };
};
export declare const Emits: {
    readonly 'update:modelValue': (val: RadioLabelType) => boolean;
};
export declare type RadioGroundPropsType = ExtractPropTypes<typeof Props>;
export declare const RadioGroupPropsKey: InjectionKey<{
    readonly disabled?: unknown;
    readonly modelValue?: unknown;
    readonly vertical?: unknown;
    readonly columnGap?: unknown;
    readonly rowGap?: unknown;
    readonly border?: unknown;
    readonly size?: unknown;
    readonly change?: unknown;
} & {
    size: RadioGroupSizeType;
    disabled: boolean;
    vertical: boolean;
    border: boolean;
    modelValue: RadioLabelType;
    columnGap: string | number;
    rowGap: string | number;
    change: RadioChangeInterface;
} & {}>;
