import React from "react";
import { BaseDataControl } from "./BaseDataControl";
import { DropResult } from "react-beautiful-dnd";
import { GridColDef } from "@mui/x-data-grid";
export interface ColumnDef extends GridColDef {
    customHeader?: boolean;
    fontSize?: number;
    fontColor?: string;
}
export declare abstract class BaseDataGridControl extends BaseDataControl {
    columnValues: ColumnDef[];
    selectedColumnSet?: number;
    dataGridMode: string;
    selectedValueName?: string;
    fontSize?: number;
    fontColor?: string;
    isEditing?: number;
    getDataDefinition: () => import("../../Common/Data/XDataDefinition").XDataDefinition | null;
    getDataSetFields: () => import("../../Common/Data/Definitions/IDataDefinition").IDataDefinition[];
    getDataColumns: () => {
        field: string;
        type: string;
    }[];
    onColumnDragEnd: (result: DropResult) => void;
    onSelectColumnSet: (e: any) => void;
    changeColumnConfig: (value: any, columnIndex: number, configField: string) => void;
    toggleCollapse: (e: any, index: number) => void;
    changeWidth: (event: React.ChangeEvent<HTMLTextAreaElement | HTMLInputElement>, columnInex: number) => void;
    renderDataGridColumnControlEditor(): JSX.Element;
}
