es-grid-template
Version:
es-grid-template
62 lines (61 loc) • 2.21 kB
TypeScript
import type { TablePipeline } from '../pipeline';
import type { ColumnResizeMode } from '../../base-table/table';
import type { ArtColumn, SortOrder } from '../../interfaces';
import type { FilterItem, IFormat, IWrapSettings, Sorter, SourceFilter } from '../../../grid-component/type';
type FilterState = {
field: any;
key: any;
column: ArtColumn;
filteredKeys: any[];
operator: string | undefined;
};
export interface ColumnFeatureOptions {
id: any;
columns: any[];
isDataTree?: boolean;
dataSource: any[];
/** Uncontrolled usage: default column widths array */
defaultSizes?: number[];
columnResizeMode?: ColumnResizeMode;
/** Controlled usage: column widths array */
sizes?: number[];
/** Controlled usage: callback invoked when sizes change */
onChangeSizes?: (nextSizes: number[]) => void;
/** Minimum column width, default 60 */
minSize?: number;
/** If sizes array doesn't provide a valid width, fallbackSize will be used; default 150 */
fallbackSize?: number;
/** Maximum column width, default 1000 */
maxSize?: number;
/** Disable user-select while resizing, default true */
disableUserSelectWhenResizing?: boolean;
/** Handle background color */
handleBackground?: string;
/** Handle background color on hover */
handleHoverBackground?: string;
/** Handle background color when active */
handleActiveBackground?: string;
stopClickEventPropagation?: boolean;
allowFiltering?: boolean;
allowSortering?: boolean;
allowResizing?: boolean;
locale?: any;
tableLocal?: any;
t?: any;
prefix?: string;
format?: IFormat;
dataSourceFilter?: SourceFilter[];
ignoreAccents?: boolean;
onFilter?: (filterState: FilterItem[]) => void;
defaultFilter?: FilterState[];
defaultSorter?: Sorter[];
mode?: 'single' | 'multiple';
keepDataSource?: boolean;
orders?: SortOrder[];
onSorter?: (sorterStates: Sorter[]) => void;
wrapSettings?: IWrapSettings;
currentPage?: number;
pageSize?: number;
}
export declare function columnCustom(opts: ColumnFeatureOptions): (pipeline: TablePipeline) => TablePipeline;
export {};