import { ICtrlActionResult, IMDCtrlAbility, IMDCtrlStore, IParam, } from '@/core'; import { IDECtrlController } from './i-de-ctrl-controller'; /** * 多数据部件控制器接口 * * @export * @interface IMDCtrlController * @extends {ICtrlController} */ export interface IMDCtrlController< S extends IMDCtrlStore, A extends IMDCtrlAbility > extends IDECtrlController { /** * 多数据部件数据加载 * * @param {IParam} [opts] * @return {*} {Promise} * @memberof IListController */ load(opts?: IParam): Promise; /** * 排序变化 * * @param {string} sortField 排序字段 * @param {('asc' | 'desc' | '')} sortDir 排序方向 * @memberof IMDCtrlController */ handleSortChange(sortField: string, sortDir: 'asc' | 'desc' | ''): void; /** * 页码变化 * * @param {number} currentPage 当前页码 * @memberof IMDCtrlController */ handlePageChange(currentPage: number): void; /** * 分页大小变化 * * @param {number} pageSize 分页大小 * @memberof IMDCtrlController */ handlePageSizeChange(pageSize: number): void; /** * 处理选中数据改变 * * @param {IParam[]} selections * @memberof IMDCtrlController */ handleSelectionChange(selections: IParam[]): void; /** * 选择全部 * * @memberof IMDCtrlController */ selectAll(): void; /** * 选中数据 * * @param {IParam[]} items 需要选中的数据 * @param {boolean} [reverse] 是否反选 * @memberof IMDCtrlController */ selectItems(items: IParam[], reverse?: boolean): void; /** * 导出Excel * * @param {IParam} [opt] * @memberof IMDCtrlController */ exportExcel(opt?: IParam): void; }