import { type PropType } from 'vue';
export interface RingProgressSection extends Record<string, any> {
    value: number;
    color: string;
    tooltip?: any;
}
export type RingProgressStylesNames = 'root' | 'svg' | 'label' | 'curve';
export type RingProgressCssVariables = {
    root: '--rp-size' | '--rp-label-offset' | '--rp-transition-duration';
    svg: '--rp-start-angle';
};
export interface RingProgressProps {
    label?: any;
    thickness?: number;
    size?: number;
    roundCaps?: boolean;
    sections: RingProgressSection[];
    rootColor?: string;
    transitionDuration?: number;
    sectionGap?: number;
    startAngle?: number;
    classNames?: Record<string, string> | ((theme: any, props: any) => Record<string, string>);
    styles?: Record<string, any> | ((theme: any, props: any) => Record<string, any>);
    vars?: Record<string, Record<string, string | undefined>> | ((theme: any, props: any) => Record<string, Record<string, string | undefined>>);
    unstyled?: boolean;
}
export declare const RingProgress: import("../..").WithBoxProps<import("vue").DefineComponent<import("vue").ExtractPropTypes<{
    label: {
        type: PropType<any>;
        default: undefined;
    };
    thickness: {
        type: NumberConstructor;
        default: undefined;
    };
    size: {
        type: NumberConstructor;
        default: undefined;
    };
    roundCaps: {
        type: BooleanConstructor;
        default: boolean;
    };
    sections: {
        type: PropType<RingProgressSection[]>;
        required: true;
    };
    rootColor: {
        type: StringConstructor;
        default: undefined;
    };
    transitionDuration: {
        type: NumberConstructor;
        default: undefined;
    };
    sectionGap: {
        type: NumberConstructor;
        default: undefined;
    };
    startAngle: {
        type: NumberConstructor;
        default: undefined;
    };
    classNames: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    styles: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    vars: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    unstyled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
    [key: string]: any;
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
    label: {
        type: PropType<any>;
        default: undefined;
    };
    thickness: {
        type: NumberConstructor;
        default: undefined;
    };
    size: {
        type: NumberConstructor;
        default: undefined;
    };
    roundCaps: {
        type: BooleanConstructor;
        default: boolean;
    };
    sections: {
        type: PropType<RingProgressSection[]>;
        required: true;
    };
    rootColor: {
        type: StringConstructor;
        default: undefined;
    };
    transitionDuration: {
        type: NumberConstructor;
        default: undefined;
    };
    sectionGap: {
        type: NumberConstructor;
        default: undefined;
    };
    startAngle: {
        type: NumberConstructor;
        default: undefined;
    };
    classNames: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    styles: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    vars: {
        type: (ObjectConstructor | FunctionConstructor)[];
        default: undefined;
    };
    unstyled: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{}>, {
    size: number;
    label: any;
    classNames: Function | Record<string, any>;
    styles: Function | Record<string, any>;
    transitionDuration: number;
    vars: Function | Record<string, any>;
    unstyled: boolean;
    thickness: number;
    rootColor: string;
    sectionGap: number;
    startAngle: number;
    roundCaps: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>>;
