import { ReactNode, SyntheticEvent } from 'react';
import { ButtonProps } from '../button';
import { ModalProps } from '../modal';
import './filtering-panel.less';
export type FilteringPanelModalProps = ModalProps & {
    show: boolean;
    contentClassName: string;
    onConfirmModal: (event?: SyntheticEvent) => void;
};
export type FilteringPanelProps = {
    buttonText?: ReactNode;
    children: ReactNode;
    /** Passed to the filtering modal. */
    modalProps: FilteringPanelModalProps;
    /** Indicates no changes in selection. */
    isInitial: boolean;
    /** In case you want to block clear button. */
    isValid?: boolean;
    /** If the panel should close on clear. */
    closeOnClear?: boolean;
    onApply: () => void;
    onClear: () => void;
    buttonTestId?: string;
    titleText?: string;
    clearFiltersText?: string;
    applyFiltersText?: string;
    /** Passed to the filtering button. For example: isDisabled, tooltipText, etc. */
    buttonProps: ButtonProps & {
        onClick: () => void;
    };
};
/** Button which slides in a modal from the left for filtering selection. */
export declare function FilteringPanel({ buttonTestId, buttonText, titleText, clearFiltersText, applyFiltersText, closeOnClear, isValid, modalProps, isInitial, children, onApply, onClear, buttonProps, }: FilteringPanelProps): import("react/jsx-runtime").JSX.Element;
