import type { Ref } from 'vue';
import type { MenuGroupProps } from "./MenuGroup";
interface MenuRadioGroupContext {
    modelValue: Ref<string>;
    onValueChange: (payload: string) => void;
}
export interface MenuRadioGroupProps extends MenuGroupProps {
    modelValue?: string;
}
export type MenuRadioGroupEmits = {
    'update:modelValue': [payload: boolean];
};
export declare const injectMenuRadioGroupContext: <T extends MenuRadioGroupContext | null | undefined = MenuRadioGroupContext>(fallback?: T | undefined) => T extends null ? MenuRadioGroupContext | null : MenuRadioGroupContext, provideMenuRadioGroupContext: (contextValue: MenuRadioGroupContext) => MenuRadioGroupContext;
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
    asChild: {
        type: import("vue").PropType<boolean>;
    };
    as: {
        type: import("vue").PropType<import("../Primitive").AsTag | import("vue").Component>;
    };
    modelValue: {
        type: import("vue").PropType<string>;
        default: string;
    };
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (payload: boolean) => void;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    asChild: {
        type: import("vue").PropType<boolean>;
    };
    as: {
        type: import("vue").PropType<import("../Primitive").AsTag | import("vue").Component>;
    };
    modelValue: {
        type: import("vue").PropType<string>;
        default: string;
    };
}>> & {
    "onUpdate:modelValue"?: ((payload: boolean) => any) | undefined;
}, {
    modelValue: string;
}, {}>, {
    default?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
