import * as React from 'react';
export type ProgressStatus = 'indeterminate' | 'progressing' | 'complete';
declare function useProgressRoot(parameters: useProgressRoot.Parameters): useProgressRoot.ReturnValue;
declare namespace useProgressRoot {
    interface Parameters {
        /**
         * The label for the Indicator component.
         */
        'aria-label'?: string;
        /**
         * An id or space-separated list of ids of elements that label the Indicator component.
         */
        'aria-labelledby'?: string;
        /**
         * A string value that provides a human-readable text alternative for the current value of the progress indicator.
         */
        'aria-valuetext'?: string;
        /**
         * Options to format the value.
         */
        format?: Intl.NumberFormatOptions;
        /**
         * Accepts a function which returns a string value that provides an accessible name for the Indicator component.
         * @param {number | null} value The component's value.
         * @returns {string}
         */
        getAriaLabel?: (index: number | null) => string;
        /**
         * Accepts a function which returns a string value that provides a human-readable text alternative for the current value of the progress indicator.
         * @param {string} formattedValue The component's formatted value.
         * @param {number | null} value The component's numerical value.
         * @returns {string}
         */
        getAriaValueText?: (formattedValue: string | null, value: number | null) => string;
        /**
         * The maximum value.
         * @default 100
         */
        max?: number;
        /**
         * The minimum value.
         * @default 0
         */
        min?: number;
        /**
         * The current value. The component is indeterminate when value is `null`.
         * @default null
         */
        value: number | null;
    }
    interface ReturnValue {
        getRootProps: (externalProps?: React.ComponentPropsWithRef<'div'>) => React.ComponentPropsWithRef<'div'>;
        /**
         * The maximum value.
         */
        max: number;
        /**
         * The minimum value.
         */
        min: number;
        /**
         * Value of the component.
         */
        value: number | null;
        /**
         * Formatted value of the component.
         */
        formattedValue: string;
        status: ProgressStatus;
    }
}
export { useProgressRoot };
