import { VNodeChild, VNode, RendererNode, RendererElement, VNodeArrayChildren } from 'vue';
import { SelectOptionGroup } from '../select/index.js';
import { SelectOption } from '../../xiaoye-primitives/index.js';
type DisplayContext<TRow, TColumn> = {
    row: TRow;
    column: TColumn;
    rowIndex: number;
};
type DisplayColumnLike<TRow, TColumn> = {
    valueType?: string;
    options?: Array<SelectOption | SelectOptionGroup> | ((row: TRow) => Array<SelectOption | SelectOptionGroup>);
    formatter?: (row: TRow, column: any, value: unknown, rowIndex: number) => unknown;
    render?: (value: unknown, context: DisplayContext<TRow, TColumn>) => VNodeChild;
    renderHTML?: (value: unknown, context: DisplayContext<TRow, TColumn>) => string;
    emptyValue?: string;
};
export declare function renderDisplayValue<TRow, TColumn extends DisplayColumnLike<TRow, TColumn>>({ value, row, rowIndex, column }: {
    value: unknown;
    row: TRow;
    rowIndex: number;
    column: TColumn;
}): string | number | boolean | void | VNode<RendererNode, RendererElement, {
    [key: string]: any;
}> | VNodeArrayChildren | null;
export {};
