import { type LinkProps, type SwitchProps, type TableColumnCtx } from 'element-plus'; import { type TableColumnProps } from './table-column.api'; import { type LongTextProps } from '../../long-text'; import { type MediaCardProps } from '../../media-card'; import { type MediaCardGroupProps } from '../../media-card-group'; import { type Translator } from '../../../hooks'; interface RendererOptions { cellValue: any; row: any; column: TableColumnCtx; index: number; } export type RendererType = 'text' | 'date' | 'datetime' | 'media' | { type: 'media'; props?: MediaCardProps; } | 'mediagroup' | { type: 'mediagroup'; props?: MediaCardGroupProps; } | 'tag' | { type: 'tag'; path?: string | string[]; props?: LongTextProps; } | 'longtext' | { type: 'longtext'; props?: LongTextProps; } | 'switch' | { type: 'switch'; props?: Partial; api?: (value: any, row: any) => Promise; } | { type: 'click'; props?: Partial; format?: TableColumnProps['format']; onClick?: (params: { row: any; value: any; index: number; column: TableColumnCtx; }) => void; }; export declare const mapRendererColumnProps: Record; /** * 可组合其他组件进行渲染 */ export declare function renderer({ cellValue, row, index, column }: RendererOptions, type: RendererType | undefined, t: Translator): any; /** * 导出表格数据时使用的渲染器,只需要获取文本数据 */ export declare function exportRenderer(row: any, column: TableColumnProps, cellValue: any, index: number): any; export {};