/**
 * @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 * as moment from 'moment';
import { DisabledDate } from '../calendar';
export interface RangePickerProps {
    className?: string;
    style?: React.CSSProperties;
    visible?: boolean;
    defaultVisible?: boolean;
    externalWheelHide?: boolean;
    tabIndex?: number;
    onChange?: (result?: [moment.Moment, moment.Moment]) => void;
    placeholder?: string;
    defaultValue?: [moment.Moment, moment.Moment];
    value?: [moment.Moment, moment.Moment];
    timeable?: boolean;
    disabledDate?: DisabledDate;
    formatter?: (begin: moment.Moment, end: moment.Moment) => string;
    secondable?: boolean;
    disabled?: boolean;
    clearable?: boolean;
    determinable?: boolean;
}
export interface RangePickerState {
    result: [moment.Moment, moment.Moment];
    showClear: boolean;
    selectorVisible: boolean;
}
declare class RangePicker extends React.PureComponent<RangePickerProps, RangePickerState> {
    static propTypes: {
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        visible: PropTypes.Requireable<boolean>;
        defaultVisible: PropTypes.Requireable<boolean>;
        externalWheelHide: PropTypes.Requireable<boolean>;
        tabIndex: PropTypes.Requireable<number>;
        onChange: PropTypes.Requireable<(...args: any[]) => any>;
        placeholder: PropTypes.Requireable<string>;
        defaultValue: PropTypes.Requireable<any[]>;
        value: PropTypes.Requireable<any[]>;
        timeable: PropTypes.Requireable<boolean>;
        disabledDate: PropTypes.Requireable<object>;
        formatter: PropTypes.Requireable<(...args: any[]) => any>;
        secondable: PropTypes.Requireable<boolean>;
        disabled: PropTypes.Requireable<boolean>;
        clearable: PropTypes.Requireable<boolean>;
        determinable: PropTypes.Requireable<boolean>;
    };
    static defaultProps: {
        visible: boolean;
        defaultVisible: boolean;
        externalWheelHide: boolean;
        tabIndex: number;
        timeable: boolean;
        secondable: boolean;
        disabled: boolean;
        clearable: boolean;
        determinable: boolean;
    };
    constructor(props: RangePickerProps);
    componentDidUpdate(preProps: RangePickerProps): void;
    private onTriggerMouseEnterHandler;
    private onTriggerMouseLeaveHandler;
    private onVisibleChangeHandler;
    private onChangeHandler;
    private clearResult;
    private renderContent;
    render(): JSX.Element;
}
export default RangePicker;
