/**
 * @license chowa v1.1.3
 *
 * Copyright (c) Chowa Techonlogies Co.,Ltd.(http://www.chowa.cn).
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */
import * as React from 'react';
import * as PropTypes from 'prop-types';
import $nprogress from './$nprogress';
export interface NprogressProps {
    className?: string;
    style?: React.CSSProperties;
    trickleSpeed?: number;
    trickleEffect?: 'ease-in' | 'ease-in-out' | 'linear' | 'ease' | 'ease-out';
    minimum?: number;
    showSpinner?: boolean;
    onHide?: () => void;
}
export interface NprogressState {
    visible?: boolean;
    percentage: number;
}
declare class Nprogress extends React.PureComponent<NprogressProps, NprogressState> {
    static propTypes: {
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        trickleSpeed: PropTypes.Requireable<number>;
        trickleEffect: PropTypes.Requireable<string>;
        minimum: PropTypes.Requireable<number>;
        showSpinner: PropTypes.Requireable<boolean>;
        onHide: PropTypes.Requireable<(...args: any[]) => any>;
    };
    static defaultProps: {
        trickleSpeed: number;
        trickleEffect: string;
        minimum: number;
        showSpinner: boolean;
    };
    static $nprogress: typeof $nprogress;
    private timer;
    constructor(props: NprogressProps);
    start(): void;
    done(): void;
    set(percent: number): void;
    inc(): void;
    private onTransitionEndHandler;
    render(): JSX.Element;
}
export default Nprogress;
