/**
 * @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';
export declare type Value = React.ReactText | boolean;
export interface Option {
    label: React.ReactNode;
    value: Value;
    disabled?: boolean;
}
export interface CheckboxGroupProps {
    className?: string;
    style?: React.CSSProperties;
    tabIndex?: number;
    options?: Option[];
    onChange?: (checkedValues: Value[]) => void;
    defaultValue?: Value[];
    value?: Value[];
    mode?: 'horizontal' | 'vertical';
    disabled: boolean;
}
export interface CheckboxGroupState {
    checkedValues: Value[];
}
declare class CheckboxGroup extends React.PureComponent<CheckboxGroupProps, CheckboxGroupState> {
    static propTypes: {
        className: PropTypes.Requireable<string>;
        style: PropTypes.Requireable<object>;
        tabIndex: PropTypes.Requireable<number>;
        options: PropTypes.Requireable<any[]>;
        onChange: PropTypes.Requireable<(...args: any[]) => any>;
        defaultValue: PropTypes.Requireable<any[]>;
        value: PropTypes.Requireable<any[]>;
        mode: PropTypes.Requireable<string>;
        disabled: PropTypes.Requireable<boolean>;
    };
    static defaultProps: {
        tabIndex: number;
        options: any[];
        mode: string;
        disabled: boolean;
    };
    constructor(props: CheckboxGroupProps);
    componentDidUpdate(preProps: CheckboxGroupProps): void;
    private onChangeHandler;
    private compileOptions;
    render(): JSX.Element;
}
export default CheckboxGroup;
