import type { Ref } from 'vue';
import type { PrimitiveProps } from '../Primitive';
import type { CheckedState } from './utils';
interface MenuItemIndicatorContext {
    checked: Ref<CheckedState>;
}
export interface MenuItemIndicatorProps extends PrimitiveProps {
    /**
     * Used to force mounting when more control is needed. Useful when
     * controlling animation with Vue animation libraries.
     */
    forceMount?: boolean;
}
export declare const injectMenuItemIndicatorContext: <T extends MenuItemIndicatorContext | null | undefined = MenuItemIndicatorContext>(fallback?: T | undefined) => T extends null ? MenuItemIndicatorContext | null : MenuItemIndicatorContext, provideMenuItemIndicatorContext: (contextValue: MenuItemIndicatorContext) => MenuItemIndicatorContext;
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>;
        default: string;
    };
    forceMount: {
        type: import("vue").PropType<boolean>;
    };
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, 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>;
        default: string;
    };
    forceMount: {
        type: import("vue").PropType<boolean>;
    };
}>>, {
    as: import('../Primitive').AsTag | import("vue").Component;
}, {}>, {
    default?(_: {}): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
