import { ResourceMeta } from "../core/resource-meta";
import { UiResourceMeta } from "../ui-resource-meta";
import { type TableDisplayMode } from "../../../fd-toolbox/enums/enums";
import { SetStateFunc, VoidFunc } from "../../../fd-toolbox/functions/internal-getter-setter-functions";
import { DataInfo, Paging, TableConfig, TableRow, TableSort, InternalTableColumn } from "./table-models";
export declare function onTableSort(column: InternalTableColumn, internalTableColumns: InternalTableColumn[], tableRows: TableRow[], setTableRows: VoidFunc<TableRow[]>, sort?: VoidFunc<TableSort>, externalSorting?: boolean): void;
export declare function getHeight(pageSize: number): string;
export declare function onPagingChange(paging: Paging, setPageSize: VoidFunc<number>, onPaging?: VoidFunc<Paging>): void;
export declare function setTableConfig(setInternalTableColumns: VoidFunc<InternalTableColumn[]>, setColumnWidths: VoidFunc<number[]>): void;
export declare function initializeTable(setInternalTableColumns: SetStateFunc<InternalTableColumn[]>, tableConfig: TableConfig, readonly: boolean, excludeProperties: string[], possibleColumnValues: Map<string, Map<unknown, unknown>>, displayMode: TableDisplayMode, instanceNumber: number, setTableId: SetStateFunc<string>, tableId: string, setTableRows: SetStateFunc<TableRow[]>, tableRows: TableRow[], internalTableColumns: InternalTableColumn[], setPageNumber: VoidFunc<number>, tableRef?: HTMLDivElement, tableSort?: TableSort, sort?: VoidFunc<TableSort>, externalSorting?: boolean, uiResourceMeta?: UiResourceMeta, dataInfo?: DataInfo): Promise<void>;
export declare function onInitTable(tableConfig: TableConfig, readonly: boolean, displayMode: TableDisplayMode, possibleColumnValues: Map<string, Map<unknown, unknown>>, excludeProperties: string[], setInternalTableColumns: VoidFunc<InternalTableColumn[]>, setTableRows: VoidFunc<TableRow[]>, tableRows: TableRow[], internalTableColumns: InternalTableColumn[], fdTableRef?: HTMLDivElement, uiResourceMeta?: UiResourceMeta, tableSort?: TableSort, sort?: VoidFunc<TableSort>, externalSorting?: boolean, dataInfo?: DataInfo): Promise<void>;
export declare function createInternalTableColumns(setInternalTableColumns: VoidFunc<InternalTableColumn[]>, tableConfig: TableConfig, readonly: boolean, excludeProperties: string[], possibleColumnValues: Map<string, Map<unknown, unknown>>, displayMode: TableDisplayMode, uiResourceMeta?: UiResourceMeta, tableWidth?: number, resourceMetasArg?: ResourceMeta[], dataInfo?: DataInfo): InternalTableColumn[];
export declare function onMouseEnter(effectiveDisplayMode: TableDisplayMode, setIsHovered: VoidFunc<boolean>): void;
export declare function onMouseLeave(effectiveDisplayMode: TableDisplayMode, setIsHovered: VoidFunc<boolean>): void;
