import { DSLNodeType, DSLQuery } from '@lingxiteam/dsl'; import BaseCmd from './Base/BaseCmd'; interface TableCmdProps { } export interface IPublicGenerateTableColumnsOptions { /** * 表格节点 */ tableDSLNode: DSLNodeType; /** * 待绑定的数据源 */ dataSource: any; /** * 过滤条件 可以配置某些内容不生成 * @returns */ predicate?: (item: any, index: number) => boolean; /** * 分页的默认数据配置 * @returns */ defaultPaginationKeyOpt?: { pageSize: string; pageNum: string; total: string; }; /** * 全局数据源 */ globalDataSource?: any[]; selectedRowKeys?: string[]; onlyBindColumns?: boolean; onlyBindDataSource?: boolean; } interface TableInitialConfigType { DSLCore: DSLQuery; compCreators?: () => Record; objectService?: any[]; changeDataSoureColumns?: (e: any, ctx: any) => void; } declare class DynamicTableCmd extends BaseCmd { tableConfig?: any; initialConfig(config: TableInitialConfigType): void; private setConfig; private getRealResults; private getDataSourcePrefix; private handleDataSourceHasPagination; private handleOnPageChange; generateColumns(opts: IPublicGenerateTableColumnsOptions): { bindAssociatedDatas: any; name: string; value: string; otherParams: any[]; oldValue: string | import("@lingxiteam/dsl/lib/core/PropType.data").DataSourceItemType[]; isQuery: boolean; columns: any; }; /** * 用于层级对象中 父ID 的翻译(子节点的 父ID 通常需要翻译成 父节点对应属性的名称) * @param options */ generateParentIdColTranslationCfg: (options: any) => void; generateBindDataSourceProps: (options: any) => void; } export default DynamicTableCmd;