import * as React from 'react';
import { AdaptableColumnDataType, AdaptableModule, BooleanFunctionName } from '../../../types';
interface QueryBuilderProps {
    query: string;
    getColumns: (type?: AdaptableColumnDataType) => {
        label?: string;
        value: string;
        type: AdaptableColumnDataType;
    }[];
    getFields: (type?: AdaptableColumnDataType) => {
        label?: string;
        value: string;
        type: AdaptableColumnDataType;
    }[];
    onChange: (query: string) => void;
    module: AdaptableModule;
}
export declare function useQueryBuilderContext(): {
    getColumns: (type?: AdaptableColumnDataType) => {
        label?: string;
        value: string;
        type: AdaptableColumnDataType;
    }[];
    getFields: (type?: AdaptableColumnDataType) => {
        label?: string;
        value: string;
        type: AdaptableColumnDataType;
    }[];
    getExpressions: (columnType: AdaptableColumnDataType) => BooleanFunctionName[];
};
export declare const QueryBuilder: React.FunctionComponent<QueryBuilderProps>;
export {};
