import { ProgressBarProps as AriaProgressBarProps } from 'react-aria-components/ProgressBar';
import { ContextValue } from 'react-aria-components/slots';
import { ReactNode } from 'react';
import { DOMRefValue, GlobalDOMAttributes, LabelPosition } from '@react-types/shared';
import { StyleProps } from './style-utils';
interface ProgressBarStyleProps {
    /**
     * The size of the ProgressBar.
     *
     * @default 'M'
     */
    size?: 'S' | 'M' | 'L' | 'XL';
    /**
     * Whether presentation is indeterminate when progress isn't known.
     */
    isIndeterminate?: boolean;
    /**
     * The static color style to apply. Useful when the button appears over a color background.
     */
    staticColor?: 'white' | 'black' | 'auto';
    /**
     * The label's overall position relative to the element it is labeling.
     * @default 'top'
     */
    labelPosition?: LabelPosition;
}
export interface ProgressBarProps extends Omit<AriaProgressBarProps, 'children' | 'className' | 'style' | 'render' | keyof GlobalDOMAttributes>, ProgressBarStyleProps, StyleProps {
    /** The content to display as the label. */
    label?: ReactNode;
}
export declare const ProgressBarContext: import("react").Context<ContextValue<Partial<ProgressBarProps>, DOMRefValue<HTMLDivElement>>>;
/**
 * ProgressBars show the progression of a system operation: downloading, uploading, processing, etc., in a visual way.
 * They can represent either determinate or indeterminate progress.
 */
export declare const ProgressBar: import("react").ForwardRefExoticComponent<ProgressBarProps & import("react").RefAttributes<DOMRefValue<HTMLDivElement>>>;
export {};
