import { HTMLWidget } from "@hpcc-js/common";
import "./table.css";
export type ColumnType = "boolean" | "number" | "string" | "time";
export declare class Table extends HTMLWidget {
    protected _div: any;
    protected _root: any;
    protected _component: any;
    constructor();
    columnType(column: string): ColumnType;
    columnType(column: string, type: ColumnType): this;
    columnPattern(column: string): string;
    columnPattern(column: string, pattern: string): this;
    columnFormat(column: string): string;
    columnFormat(column: string, format: string): this;
    private _prevRow;
    private _prevColumn;
    onRowClickCallback(row: any, column: any): void;
    enter(domNode: any, element: any): void;
    update(domNode: any, element: any): void;
    exit(domNode: any, element: any): void;
    click(row: any, col: any, sel: any): void;
}
export interface Table {
    noDataMessage(): string;
    noDataMessage(_: string): this;
    darkMode(): boolean;
    darkMode(_: boolean): this;
    multiSelect(): boolean;
    multiSelect(_: boolean): this;
    columnTypes(): {
        [column: string]: ColumnType;
    };
    columnTypes(_: {
        [column: string]: ColumnType;
    }): this;
    columnPatterns(): {
        [column: string]: string;
    };
    columnPatterns(_: {
        [column: string]: string;
    }): this;
    columnFormats(): {
        [column: string]: string;
    };
    columnFormats(_: {
        [column: string]: string;
    }): this;
}
