import { ComponentPropsWithoutRef, AriaAttributes, ReactElement } from 'react'; import { LabelProps } from '../Label'; import { LayoutUtilProps } from '../../types'; import { HelperProps } from '../../internal'; /** * Props for the ProgressBar component * @extends Omit, "value"> * @extends LayoutUtilProps */ export type ProgressBarProps = Omit, "value"> & LayoutUtilProps & { /** * Error state or error message to display * @default false */ error?: ReactElement | string | boolean; /** * ARIA live region setting for error announcements */ errorAriaLive?: HelperProps["errorAriaLive"]; /** * Description text to display below the progress bar */ description?: HelperProps["description"]; } & ({ /** * Label text for the progress bar */ label: LabelProps["children"]; /** * Additional props for the label component */ labelProps?: Omit; } | { label?: never; labelProps?: never; /** * Accessible label for the progress bar (alternative to label) */ ["aria-label"]: Exclude; } | { label?: never; labelProps?: never; /** * ID of element that labels the progress bar (alternative to label) */ ["aria-labelledby"]: Exclude; }) & ({ /** * Current progress value (0-100 or 0-max) */ value: `${number}` | number; /** * Whether the progress bar is in indeterminate state * @default false */ indeterminate?: false; } | { value?: never; /** * Whether the progress bar is in indeterminate state */ indeterminate: true; }); /** * ProgressBar component for displaying progress indicators. * * Features: * - Supports both determinate and indeterminate progress states * - Optional label with customizable label props * - Error state with error message display * - Success state with check icon when value equals max * - Description text support * - Accessibility support with proper ARIA attributes * - Layout utility props for positioning and spacing * - Flexible labeling options (label, aria-label, aria-labelledby) * - Error and success visual indicators * * @example * * * @example * * * @example * */ export declare const ProgressBar: import('react').ForwardRefExoticComponent>;