import type { Ref } from 'react';
import type { BaseProps, NoChildrenProp } from '../../types';
import type { BackdropProps } from '../Backdrop/Backdrop';
export interface ProgressProps extends BaseProps, NoChildrenProp {
    /**
     * Determines which variant should be rendered.
     * @default 'ring'
     */
    variant?: 'ring' | 'bar' | 'ellipsis';
    /**
     * Minimum possible value.
     * @default 0
     */
    minValue?: number;
    /**
     * Maximum possible value.
     * @default 100
     */
    maxValue?: number;
    /** Current progress value within the range specified, or the default range of 0-100. */
    value?: number;
    /** Provides a message to the user along with the component. */
    message?: string;
    /**
     * Determines the placement of the component.
     * @default 'global'
     */
    placement?: 'global' | 'local' | 'block' | 'inline';
    /**
     * When true, fade in occurs when component mounts.
     * When false, mounted component fades out then re-renders self and returns null, removing itself from the DOM.
     * This is technically not the same as unmounting via parent.
     * Applicable for all placements but the fade effect is only applicable to 'global' | 'local' placement.
     * @default true
     */
    visible?: boolean;
    /**
     * If true, upon visible render the indicator element will take focus.
     * @default false
     */
    focusOnVisible?: boolean;
    /**
     * If true, the indicator will not render as visible until 1sec after the visible prop is set to true.
     * This is a best estimate to avoid visual flicker where progress is resolved within 1sec.
     * @default false
     */
    delay?: boolean;
    /** Called when the css transition starts on the way in. */
    onTransitionStartIn?: BackdropProps['onBeforeTransitionIn'];
    /** Called when the css transition starts on the way out. */
    onTransitionStartOut?: BackdropProps['onBeforeTransitionOut'];
    /** Called when the css transition ends on the way in. */
    onTransitionEndIn?: BackdropProps['onAfterTransitionIn'];
    /** Called when the css transition ends on the way out...A good time to unmount! */
    onTransitionEndOut?: BackdropProps['onAfterTransitionOut'];
    /** Triggers live announcement on show and value or message change. */
    liveConfig?: {
        /** Distinguishes the source of the update on the page. */
        contextualLabel: string;
    };
    /** Ref to the visual indicator element, currently a role of progressbar. */
    ref?: Ref<HTMLDivElement>;
}
//# sourceMappingURL=Progress.types.d.ts.map