import React from 'react'; import type { EitherInclusive } from '../../util/utility-types'; export type ProgressBarProps = { /** * CSS class names that can be appended to the component. */ className?: string; /** * Determines the usage context of the progress bar. * * Labels and value strings are only valid for `context`=`standalone`. * * Never use `context`=`embedded` unless as a child of a container. * * **Default is `"standalone"`**. */ context?: 'embedded' | 'standalone'; /** * Determine whether the labels sit above or to the left of the progress bar * * **Default is `"vertical"`**. */ labelLayout?: 'horizontal' | 'vertical'; /** * The maximum numeric value allowed for the progress bar. * * ** Default is `1`**. */ max?: number; /** * The “filled” portion of the progressBar is determined by the relationship between the minValue, maxValue, and Value. The var fills to a percentage = (value)/(maxValue–minValue). * * Value used by component is a number between 0 and 1. */ value: number; /** * Human-readable representation of the progress shown in the bar. */ valueLabel?: string; } & EitherInclusive<{ /** * Visible text label for the component. */ descriptionLabel: string; }, { /** * Aria-label to provide an accesible name for the text input if no visible label is provided. */ 'aria-label': string; }>; /** * BETA: This component is still a work in progress and is subject to change. * * `import {ProgressBar} from "@chanzuckerberg/eds";` * * Components used to visually represent user progress through a series of steps. Not to be confused with the `LoadingIndicator`. * * `ProgressBar` can be the child of a container like `Modal` or `Card`. When used in such a container, `context`=`embedded` should be used to ensure the left and right edges of the progressBar sit flush within the edges of the container. */ export declare const ProgressBar: ({ className, context, descriptionLabel, labelLayout, max, value, valueLabel, ...other }: ProgressBarProps) => React.JSX.Element;