/**
 * Copyright IBM Corp. 2024
 *
 * This source code is licensed under the Apache-2.0 license found in the
 * LICENSE file in the root directory of this source tree.
 */
import React from 'react';
import PropTypes from 'prop-types';
import { ConditionGroup } from '../ConditionBuilder.types';
/**
 *
 *  state - this is the current group that is being rendered . This can be a inner group or outer group
 * All the inner components of group are called from here.
 * @returns
 */
interface ConditionGroupBuilderProps {
    group: ConditionGroup;
    onRemove: (e: Event) => void;
    onChange: (group: ConditionGroup) => void;
    className?: string;
    aria: {
        level: number;
        posinset: number;
        setsize: number;
    };
}
declare const ConditionGroupBuilder: {
    ({ group, aria, onRemove, onChange, className, }: ConditionGroupBuilderProps): React.JSX.Element;
    propTypes: {
        /**
         * object contains the aria attributes
         */
        aria: PropTypes.Requireable<object>;
        /**
         * state defines the current group
         */
        /**
         * Provide an optional class to be applied to the containing node.
         */
        className: PropTypes.Requireable<string>;
        group: PropTypes.Requireable<object>;
        /**
         * callback to update the current condition of the state tree
         */
        onChange: PropTypes.Requireable<(...args: any[]) => any>;
        /**
         * call back to remove the particular group from the state tree
         */
        onRemove: PropTypes.Requireable<(...args: any[]) => any>;
    };
};
export default ConditionGroupBuilder;
//# sourceMappingURL=ConditionGroupBuilder.d.ts.map