import type { IThemeSpec } from './../vrender';
import type { BaseTable } from '../core';
import { DataSource } from '../data';
import { Rect } from '../tools/Rect';
import type { ColumnsDefine, FullExtendStyle, ListTableAPI } from '../ts-types';
import type { BaseTableAPI } from '../ts-types/base-table';
import type { ListTable } from '../ListTable';
export declare function createRootElement(padding: any, className?: string): HTMLElement;
export declare function updateRootElementPadding(element: HTMLElement, padding: any): void;
export declare function _dealWithUpdateDataSource(table: BaseTableAPI, fn: (table: BaseTableAPI) => void): void;
export declare function _setRecords(table: ListTableAPI, records?: any[]): void;
export declare function _setDataSource(table: BaseTableAPI, dataSource: DataSource): void;
export declare function _getTargetFrozenRowAt(table: BaseTableAPI, absoluteY: number): {
    top: number;
    row: number;
    bottom: number;
    height: number;
} | null;
export declare function _getTargetFrozenColAt(table: BaseTableAPI, absoluteX: number): {
    left: number;
    col: number;
    right: number;
    width: number;
} | null;
export declare function _toPxWidth(table: BaseTable, width: string | number): number;
export declare function _applyColWidthLimits(limits: {
    min?: number;
    max?: number;
} | void | null, orgWidth: number): number;
export declare function isAutoDefine(width: string | number): width is 'auto';
export declare function _getScrollableVisibleRect(table: BaseTableAPI): Rect;
export declare function getStyleTheme(headerStyle: FullExtendStyle, table: BaseTableAPI, col: number, row: number, getProp: any, needGetTheme?: boolean): {
    hasFunctionPros: boolean;
    theme?: undefined;
} | {
    theme: IThemeSpec & {
        _vtable: any;
    };
    hasFunctionPros: boolean;
};
export declare function getCellCornerRadius(col: number, row: number, table: BaseTableAPI): number[] | 0;
export declare function parseMarkLineGetExtendRange(markLine: any): number | 'sum' | 'max';
export declare function generateAggregationForColumn(table: ListTable): void;
export declare function checkHasAggregationOnColumnDefine(colDefs: ColumnsDefine): boolean;
export declare function checkHasColumnAutoWidth(table: BaseTableAPI): boolean;
