///
import { SlickEditorText } from "./SlickWrap";
import Column = Slick.Column;
declare type QTableColSchemaT = {
idx: number;
key: string;
name: string;
width: number;
editor?: typeof SlickEditorText;
getFilterValue?: GetFilterValueFn;
formatter?: any;
};
interface ColByKeyT {
[key: string]: QTableColSchemaT;
}
export declare class QTableSchema {
colsByIdx: QTableColSchemaT[];
colsByKey: ColByKeyT;
constructor(cols: any);
getByIndex(idx: number): QTableColSchemaT;
getByKey(key: string): QTableColSchemaT;
}
export declare type GetFilterValueFn = (item: T) => {} | null;
export declare type FormatterFnInT = {
row: number;
cell: number;
value: any;
columnDef: Column;
dataContext: any;
};
export declare type FormatterFnOutT = (row: number, cell: number, value: any, columnDef: Column, dataContext: any) => string;
export declare function formatterFn(f: (ps: FormatterFnInT) => string): FormatterFnOutT;
export declare function QTableColSchemaBuilder(): {
w: (width: number) => {
width: number;
};
w5: {
width: number;
};
w10: {
width: number;
};
w20: {
width: number;
};
w40: {
width: number;
};
w60: {
width: number;
};
w80: {
width: number;
};
w100: {
width: number;
};
w140: {
width: number;
};
c: (...props: Partial[]) => QTableColSchemaT;
editorText: {
editor: any;
};
editorLongText: {
editor: any;
};
setKeys: (ret: T) => QTableSchema;
getFilterValue: (fn: GetFilterValueFn) => {
getFilterValue: GetFilterValueFn;
};
setFormatter: (f: FormatterFnOutT) => {
formatter: FormatterFnOutT;
};
};
export {};
//# sourceMappingURL=QTableHelp.d.ts.map