import React from "react";
import { Condition } from "../../Domain/Api/DataTypes/Condition";
import { CountResult } from "../../Domain/Api/DataTypes/CountResult";
import { PropertyMetaInformation } from "../../Domain/Api/DataTypes/PropertyMetaInformation";
import { ObjectSearchQuery } from "../../Domain/Objects/ObjectSearchQuery";
interface ObjectTableLayoutHeaderProps {
    query: ObjectSearchQuery;
    allowReadAll: boolean;
    properties: PropertyMetaInformation[];
    onChange: (x0: null | Partial<ObjectSearchQuery>) => void;
    onDownloadClick: () => void;
    onDownloadAbort: () => void;
    downloading: boolean;
    showModalFilter: boolean;
    showDownloadModal: boolean;
    downloadCount?: CountResult;
}
interface ObjectTableLayoutHeaderState {
    showFilterModal: boolean;
    modalEditingConditions: Condition[];
}
export declare class ObjectTableLayoutHeader extends React.Component<ObjectTableLayoutHeaderProps, ObjectTableLayoutHeaderState> {
    state: ObjectTableLayoutHeaderState;
    componentDidMount(): void;
    componentDidUpdate(prevProps: ObjectTableLayoutHeaderProps): void;
    render(): React.ReactElement;
    private renderFieldSelectorTooltipContent;
    private readonly handleOpenFilterModal;
    private readonly handleCloseFilterModal;
    private readonly handleApplyFilter;
}
export {};
