import { TColor } from "../../../types"; export type ProgressCircleSize = "xs" | "sm" | "md" | "lg"; export type ProgressCircleProps = { /** * Current progress value. The expected value should be in the range 0 - 100. Values outside of it will default to the minimum or maximum value. To define a different range, use `minValue` and `maxValue` props. */ value: number; /** * Minimum expected value * @default 0 */ minValue?: number; /** * Maxmimum expected value * @default 100 */ maxValue?: number; /** * Define what the size of `ProgressCircle` should be. * @default "xs" */ size?: ProgressCircleSize; /** * Define how label should be displayed. You can directly define the text or take the provided prop values and use them to to customize the label. * * Warning: label that is too long will be clipped under the Progress Circle. Please use shorter text that will fit within it. * * @default `${normalizeProgressValue(value, minValue, maxValue).toFixed()}%` */ label?: string | ((value: number, minValue: number, maxValue: number) => string); /** * Define an optional sublabel. * * Warning: sublabel that is too long will be clipped under the Progress Circle. Please use shorter text that will fit within it. */ sublabel?: string; /** * Define the progress color in case you need a different styling. * @default "primary-800" */ progressColor?: TColor; /** * Define the progress background color in case you need a different styling. * @default "primary-50" */ progressBackgroundColor?: TColor; /** * Define the label color in case you need a different styling. * @default "primary-1200" */ labelColor?: TColor; /** * Define the sublabel color in case you need a different styling. * @default "primary-700" */ sublabelColor?: TColor; };