/// <reference types="react" />
import { RoleHTMLProps, RoleOptions } from "reakit";
import { ProgressStateReturn } from "./ProgressState";
export declare type ProgressOptions = RoleOptions & Pick<Partial<ProgressStateReturn>, "isIndeterminate" | "value" | "max" | "min">;
export declare type ProgressHTMLProps = RoleHTMLProps;
export declare type ProgressProps = ProgressOptions & ProgressHTMLProps;
export declare const useProgress: {
    (options?: ProgressOptions | undefined, htmlProps?: RoleHTMLProps | undefined, unstable_ignoreUseOptions?: boolean | undefined): RoleHTMLProps;
    unstable_propsAreEqual: (prev: RoleOptions & Pick<Partial<import("./ProgressState").ProgressState>, "value" | "max" | "min" | "isIndeterminate"> & import("react").HTMLAttributes<any> & import("react").RefAttributes<any> & {
        wrapElement?: ((element: import("react").ReactNode) => import("react").ReactNode) | undefined;
    }, next: RoleOptions & Pick<Partial<import("./ProgressState").ProgressState>, "value" | "max" | "min" | "isIndeterminate"> & import("react").HTMLAttributes<any> & import("react").RefAttributes<any> & {
        wrapElement?: ((element: import("react").ReactNode) => import("react").ReactNode) | undefined;
    }) => boolean;
    __keys: readonly any[];
    __useOptions: (options: ProgressOptions, htmlProps: RoleHTMLProps) => ProgressOptions;
};
export declare const Progress: import("reakit-system").Component<"div", RoleOptions & Pick<Partial<import("./ProgressState").ProgressState>, "value" | "max" | "min" | "isIndeterminate"> & import("react").HTMLAttributes<any> & import("react").RefAttributes<any> & {
    wrapElement?: ((element: import("react").ReactNode) => import("react").ReactNode) | undefined;
}>;
