import { StandardBehaviorOptions } from '../../node_modules/scroll-into-view-if-needed';
import { VNode, RendererNode, RendererElement } from 'vue';
import { EditableAgGridColumnType } from '../ag-grid/editable/interface';
import { EditableGridColumnType } from '../ap-grid/editable/interface';
import { ValueTypeRenderConfig } from '../config-provider';
import { EditableColumnType } from './interface';
/**
 * 获取编辑模式下默认映射的组件
 * @param valueType
 * @returns
 */
export declare function getEditableComponent(valueType: EditableColumnType['valueType']): any;
/**
 * 获取可编辑表格的某列字段是否是required
 * @description 请注意，此方法只根据`fieldProps.required`和`fieldProps.rules`来判断，并不会关注当前列是否可以渲染编辑节点
 * @param column
 * @returns
 */
export declare function getColumnIsRequired(column: EditableColumnType<any, 'text', 'text'>): NonNullable<boolean | undefined>;
/**
 * 获取ellipsis模式下最终需要渲染的字符串
 * @param column
 * @param value
 * @returns
 */
export declare function getRawDisplayValue(column: EditableColumnType, value: any): any;
/**
 * 滚动到表格的某行
 * @param index
 * @param container
 * @param options
 */
export declare function scrollToRowIndex(index: number, container?: HTMLElement, options?: StandardBehaviorOptions): void;
/**
 * 获取最终需要渲染到单元格的节点
 * @param column 表格列配置
 * @param editable 是否可编辑
 * @param innerProps props
 * @param value 当前表格映射的值
 * @param record 当前行数据
 * @param extraValueTypes 自定义valueType映射
 * @returns
 */
export declare function getFinalNode(column: EditableColumnType, editable: boolean, innerProps: Record<string, any>, value: any, record: any, extraRenderMap?: Record<string, ValueTypeRenderConfig>): any;
export declare function getEditableTableTitle(column: EditableColumnType<any> | EditableGridColumnType | EditableAgGridColumnType, titleNodeClassName: string, requiredNodeClassName: string, slot?: (props: {
    title: any;
    column: EditableColumnType<any> | EditableGridColumnType | EditableAgGridColumnType;
}) => any, tooltipColor?: string): VNode< RendererNode, RendererElement, {
    [key: string]: any;
}>[] | import("vue/jsx-runtime").JSX.Element;
