import { PropType } from 'vue';
import type { ExtractPublicPropTypes, MaybeArray } from '../../_utils';
declare const rateProps: {
    readonly count: {
        readonly type: NumberConstructor;
        readonly default: 5;
    };
    readonly value: {
        readonly type: NumberConstructor;
        readonly default: undefined;
    };
    readonly defaultValue: {
        readonly type: NumberConstructor;
        readonly default: 0;
    };
    readonly size: {
        readonly type: PropType<"small" | "medium" | "large">;
        readonly default: "medium";
    };
    readonly 'onUpdate:value': PropType<MaybeArray<(value: number) => void>>;
    readonly onUpdateValue: PropType<MaybeArray<(value: number) => void>>;
    readonly theme: PropType<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>>;
    readonly themeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>>>;
    readonly builtinThemeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>>>;
};
export declare type RateProps = ExtractPublicPropTypes<typeof rateProps>;
declare const _default: import("vue").DefineComponent<{
    readonly count: {
        readonly type: NumberConstructor;
        readonly default: 5;
    };
    readonly value: {
        readonly type: NumberConstructor;
        readonly default: undefined;
    };
    readonly defaultValue: {
        readonly type: NumberConstructor;
        readonly default: 0;
    };
    readonly size: {
        readonly type: PropType<"small" | "medium" | "large">;
        readonly default: "medium";
    };
    readonly 'onUpdate:value': PropType<MaybeArray<(value: number) => void>>;
    readonly onUpdateValue: PropType<MaybeArray<(value: number) => void>>;
    readonly theme: PropType<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>>;
    readonly themeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>>>;
    readonly builtinThemeOverrides: PropType<import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>>>;
}, {
    mergedClsPrefix: import("vue").ComputedRef<string>;
    mergedValue: import("vue").ComputedRef<number>;
    hoverIndex: import("vue").Ref<number | null>;
    handleMouseEnter: (index: number) => void;
    handleClick: (index: number) => void;
    handleMouseLeave: () => void;
    cssVars: import("vue").ComputedRef<{
        '--bezier': string;
        '--item-color': string;
        '--item-color-active': string;
        '--item-size': string;
    }>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    size: "small" | "medium" | "large";
    defaultValue: number;
    count: number;
} & {
    value?: number | undefined;
    theme?: import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any> | undefined;
    themeOverrides?: import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>> | undefined;
    builtinThemeOverrides?: import("../../_mixins/use-theme").ExtractThemeOverrides<import("../../_mixins").Theme<"Rate", {
        itemColor: string;
        itemColorActive: string;
        itemSize: string;
    }, any>> | undefined;
    "onUpdate:value"?: MaybeArray<(value: number) => void> | undefined;
    onUpdateValue?: MaybeArray<(value: number) => void> | undefined;
}>, {
    value: number;
    size: "small" | "medium" | "large";
    defaultValue: number;
    count: number;
}>;
export default _default;
