import { PropType } from 'vue';
declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<{
    modelValue: {
        type: NumberConstructor;
        default: number;
    };
    numbers: {
        type: BooleanConstructor;
        default: boolean;
    };
    halves: {
        type: BooleanConstructor;
        default: boolean;
    };
    max: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    texts: {
        type: PropType<string[]>;
        default: () => never[];
    };
    ariaLabel: {
        type: PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaItemLabel: {
        type: PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    preset: {
        type: PropType<import("../../composables").PresetPropValue>;
        default: undefined;
    };
    onClick: {
        type: PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    size: {
        type: PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    "onUpdate:modelValue": {
        type: PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    color: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    icon: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    disabled: {
        type: PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    hover: {
        type: PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    readonly: {
        type: PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    tabindex: {
        type: PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    unselectedColor: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    onHover: {
        type: PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    halfIcon: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    emptyIcon: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    clearable: {
        type: BooleanConstructor;
        default: boolean;
    };
    stateful: {
        type: PropType<boolean>;
        default: boolean;
    };
    sizesConfig: {
        type: PropType<Record<string, any>>;
        required: true;
        default: Record<string, any> | undefined;
    };
    fontSizesConfig: {
        type: PropType<Record<string, any>>;
        required: true;
        default: Record<string, any> | undefined;
    };
}, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (...args: any[]) => void;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    modelValue: {
        type: NumberConstructor;
        default: number;
    };
    numbers: {
        type: BooleanConstructor;
        default: boolean;
    };
    halves: {
        type: BooleanConstructor;
        default: boolean;
    };
    max: {
        type: (StringConstructor | NumberConstructor)[];
        default: number;
    };
    texts: {
        type: PropType<string[]>;
        default: () => never[];
    };
    ariaLabel: {
        type: PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    ariaItemLabel: {
        type: PropType<import("../../composables").TranslationProp>;
        default: import("../../composables").TranslationProp;
    };
    preset: {
        type: PropType<import("../../composables").PresetPropValue>;
        default: undefined;
    };
    onClick: {
        type: PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    size: {
        type: PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    "onUpdate:modelValue": {
        type: PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    color: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    icon: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    disabled: {
        type: PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    hover: {
        type: PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    readonly: {
        type: PropType<NonNullable<boolean | undefined>>;
        required: true;
        default: boolean | undefined;
    };
    tabindex: {
        type: PropType<NonNullable<string | number | undefined>>;
        required: true;
        default: string | number | undefined;
    };
    unselectedColor: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    onHover: {
        type: PropType<(...args: any[]) => any>;
        required: true;
        default: ((...args: any[]) => any) | undefined;
    };
    halfIcon: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    emptyIcon: {
        type: PropType<string>;
        required: true;
        default: string | undefined;
    };
    clearable: {
        type: BooleanConstructor;
        default: boolean;
    };
    stateful: {
        type: PropType<boolean>;
        default: boolean;
    };
    sizesConfig: {
        type: PropType<Record<string, any>>;
        required: true;
        default: Record<string, any> | undefined;
    };
    fontSizesConfig: {
        type: PropType<Record<string, any>>;
        required: true;
        default: Record<string, any> | undefined;
    };
}>> & {
    "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
}, {
    onClick: (...args: any[]) => any;
    size: NonNullable<string | number | undefined>;
    "onUpdate:modelValue": (...args: any[]) => any;
    modelValue: number;
    stateful: boolean;
    preset: import("../../composables").PresetPropValue;
    color: string;
    icon: string;
    sizesConfig: Record<string, any>;
    fontSizesConfig: Record<string, any>;
    disabled: NonNullable<boolean | undefined>;
    max: string | number;
    ariaLabel: import("../../composables").TranslationProp;
    hover: NonNullable<boolean | undefined>;
    readonly: NonNullable<boolean | undefined>;
    tabindex: NonNullable<string | number | undefined>;
    clearable: boolean;
    unselectedColor: string;
    onHover: (...args: any[]) => any;
    halfIcon: string;
    emptyIcon: string;
    halves: boolean;
    numbers: boolean;
    texts: string[];
    ariaItemLabel: import("../../composables").TranslationProp;
}, {}>, {
    item?(_: {
        value: number;
        onClick: () => void;
        index: number;
    }): any;
}>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
