import { ElFormAutoField } from "./form-auto"; import { ElTable } from "element-ui/types/table"; export declare class ElTablePage extends ElTable { /** 表头配置 */ columns: ElTablePageColumn[]; /** 筛选项配置 */ searchForm?: Record; /** el-row 属性 gutter 栅格间格 */ request: (page: number, search: Record, pageSize: number) => Promise | Record[]>; pageSize: number; pageLayout: string; pageSizes: number[]; layoutType: "default" | "card"; buttonStyle: Record<"plain" | "round" | "size" | "style" | "class", string | boolean>; selectable: (row: Record, index: number) => boolean; selection: any[]; customColumns: string; /** 所有表单项标签是否隐藏 */ labelHidden: boolean; search(): void; resetSearch(): void; openCustomColumnDialog(): void; clearSelection(): void; getParams(name?: string): Record | any; setParams(modelOrName: string | Record, value?: any): Record; } export declare type ElTablePageDataMap = "page" | "pageSize" | "total" | "record"; // declare interface ElTablePageSearchField extends ElFormAutoField{ // search: boolean // } export declare interface ElTablePageColumn { prop: string; label: string; labelTooltip?: string; fixed?: boolean | "left" | "right"; slot?: boolean | string; hide?: boolean; filters?: string | Array; children?: ElTablePageColumn[]; filtersFunc?: (value: string) => any; enum?: ElAutoMixinOptions | ((query?: string) => Promise); splitChar?: string; search?: ElFormAutoField; addSearch?: Record; copy?: boolean | ((row: Record) => string); [name: string]: any; }