///
import { TableProps as BaseTableProps, TablePipeline as TP, ArtColumnStaticPart } from '@kdcloudjs/table';
import { SortFeatureOptions, RowDetailFeatureOptions, FilterFeatureOptions, TreeModeFeatureOptions, ColumnDragOptions, ColumnResizeOptions, ContextMenuFeatureOptions, RangeSelectionFeatureOptions, colGroupExtendOption, RowDragFeatureOptions } from '@kdcloudjs/table/es/table/pipeline/features';
declare type TablePropsOfComponents = Pick & {
components?: {
/** 复选框 */
Checkbox?: React.ComponentType;
/** 单选框 */
Radio?: React.ComponentType;
};
};
declare type TablePropsOfExtend = Omit;
export declare type TableApi = {
getColumns: () => any[];
getDataSource: () => any[];
getFooterDataSource: () => any[];
clearRangeSelection: () => void;
getHeightCache: () => number[];
ensureRowIndexVisible: (rowIndex: number, position?: string | undefined) => void;
ensureColumnVisible: (code: string) => void;
getFeatureApi: (featureName: string) => any;
};
export declare type TableInstance = {
api: TableApi;
};
export interface TableProps extends TablePropsOfExtend, TablePropsOfComponents {
rowSelection?: TableRowSelection;
prefixCls?: string;
rowDetail?: TableRowDetail;
filter?: TableFilter;
sort?: TableSort;
treeMode?: TableTreeMode;
autoRowSpan?: boolean;
columnDrag?: boolean | ColumnDragOptions;
columnResize?: boolean | ColumnResizeOptions;
contextMenu?: IContextMenu;
rangeSelection?: TableRangeSelection;
columnGroupExtend?: colGroupExtendOption;
rowDrag?: TableRowDrag;
}
export declare type RowSelectionType = 'checkbox' | 'radio';
export declare type RowSelectionFixed = 'start' | 'end';
export declare type RowSelectionClickArea = 'self' | 'cell' | 'row';
export interface TableRowSelection {
defaultValue?: string[];
value?: string[];
type?: RowSelectionType;
clickArea?: RowSelectionClickArea;
stopClickEventPropagation?: boolean;
fixed?: RowSelectionFixed;
column?: Partial;
onChange?: (selectedRowKeys: string[], actionRowkey?: string, actionRowskeys?: string[], action?: string) => void;
isDisabled?(row: any, rowIndex: number): boolean;
highlightRowWhenSelected?: boolean;
}
export declare type TableRowDetail = RowDetailFeatureOptions;
export declare type TableFilter = FilterFeatureOptions;
export declare type TableSort = SortFeatureOptions;
export declare type TableTreeMode = TreeModeFeatureOptions;
export declare type TablePipeline = TP;
export declare type IContextMenu = boolean | ContextMenuFeatureOptions;
export declare type TableRangeSelection = RangeSelectionFeatureOptions;
export declare type TableRowDrag = RowDragFeatureOptions;
export {};