import { HTMLAttributes, ReactElement } from "react";
import { InfoRendererProps } from "../LinearProgress/LinearProgress";
import "./CircularProgress.css";
export declare const SIZE_OPTIONS: {
small: {
container: number;
};
medium: {
container: number;
};
large: {
container: number;
};
};
export interface CircularProgressProps extends HTMLAttributes {
/**
* A label for accessibility
*/
"aria-label"?: string;
/**
* The className(s) of the component
*/
className?: string;
/**
* Disabled flag, true when the component is disabled.
*/
disabled?: boolean;
/**
* Render props callback to render info panel.
* @param function({ value, unit, getValueProps })
*/
renderInfo?: (props: Pick, "value" | "unit" | "getValueProps">) => ReactElement>;
/**
* If `true`, the info panel will be displayed.
*/
showInfo?: boolean;
/**
* The size of the circle
* (small, medium, large)
*/
size?: "small" | "medium" | "large";
/**
* Default unit is`%`
*/
unit?: string;
/**
* The value of the progress indicator for the determinate and static variants.
* Value between 0 and 100.
*/
value?: number;
/**
* The variant to use.
* Use indeterminate or query when there is no progress value.
*/
variant?: "determinate" | "indeterminate" | "static";
}
/**
* Circular progress bar with an optional Info element, showing the current value
* The default Info element can be rendered by setting `unit` and `value` props.
* A custom Info element can be rendered using the `renderInfo` callback.
* The render props callback is of the form
* @param {string} unit the unit of the progress info
* @param {number} value the value of the progress info
* @param {string} variant the variant to use.
* @param {function} getValueProps function callback that returns the value props
*/
export declare const CircularProgress: import("react").ForwardRefExoticComponent>;