import { ProTableEditFieldType, ProTableQueryFieldType, ProTableColumnType } from '../types' export type DefinedProTableColumns< T extends Record ProTableColumnType)> = Record< string, ProTableColumnType | ((...args: any[]) => ProTableColumnType) >, > = T & { getConfigs: () => ProTableColumnType[] getRawConfig: () => T getViewFieldKeys: () => string[] getQueryFieldKeys: () => string[] getAddFieldKeys: () => string[] getEditFieldKeys: () => string[] getExpandViewFieldKeys: () => string[] getViewFields: () => Record getQueryFields: () => Record getAddFields: () => Record getEditFields: () => Record getExpandViewFields: () => Record __isProTableColumns: true } export type DefinedProTableFields< T extends Record ProTableEditFieldType)> = Record< string, ProTableEditFieldType | ((...args: any[]) => ProTableEditFieldType) >, > = T & { getConfigs: () => ProTableEditFieldType[] getRawConfig: () => T __isProTableFields: true }