import { Component, ReactNode } from 'react';
import { ProgressStepProps } from '../ProgressStep';
import './DrawerProgress.less';
export declare type DrawerProgressProps = {
    baseClassName?: string;
    title?: ReactNode;
    steps: ProgressStepProps[];
    buttons?: ReactNode;
    autoCloseTimeout?: number;
    onStart?: () => void;
    onClose?: () => void;
    onCancel?: () => void;
    onFinish?: () => void;
    onFail?: () => void;
    cancelable?: boolean;
    onClosableChange?: (closable: boolean) => void;
    onStatusChange?: (status: ProgressStepProps['status']) => void;
};
declare type DrawerProgressState = {
    status: ProgressStepProps['status'] | null;
};
declare class DrawerProgress extends Component<DrawerProgressProps, DrawerProgressState> {
    static defaultProps: {
        baseClassName: string;
        autoCloseTimeout: number;
        cancelable: boolean;
        steps: never[];
    };
    state: {
        status: null;
    };
    componentDidUpdate(_prevProps: DrawerProgressProps, prevState: DrawerProgressState): void;
    componentWillUnmount(): void;
    closeTimeout?: number;
    handleStatusChange: (status: "error" | "running" | "done" | "canceled" | "not_started" | undefined) => void;
    handleClose: () => void;
    handleCancel: () => void;
    render(): JSX.Element;
}
export default DrawerProgress;
