@tanstack/vue-table
Version:
Headless UI for building powerful tables & datagrids for Vue.
62 lines • 1.9 kB
TypeScript
//#region src/FlexRender.d.ts
interface FlexRenderCell {
column: {
columnDef: {
aggregatedCell?: any;
cell?: any;
};
};
getContext: () => any;
getIsAggregated?: () => boolean;
getIsPlaceholder?: () => boolean;
}
interface FlexRenderHeader {
column: {
columnDef: {
footer?: any;
header?: any;
};
};
getContext: () => any;
}
/**
* If rendering headers, cells, or footers with custom markup, use flexRender instead of `cell.getValue()` or `cell.renderValue()`.
* @example flexRender(cell.column.columnDef.cell, cell.getContext())
*/
declare function flexRender(render: any, props: any): any;
/**
* Simplified component for rendering headers, cells, or footers.
*
* Supports both the new shorthand pattern and the legacy `:render`/`:props` pattern:
* @example
* ```vue
* <!-- New shorthand pattern -->
* <FlexRender :cell="cell" />
* <FlexRender :header="header" />
* <FlexRender :footer="header" />
*
* <!-- Legacy pattern (still supported) -->
* <FlexRender :render="cell.column.columnDef.cell" :props="cell.getContext()" />
* ```
*/
declare const FlexRender: import("vue").DefineComponent<{
render?: any;
props?: any;
cell?: FlexRenderCell | undefined;
header?: FlexRenderHeader | undefined;
footer?: FlexRenderHeader | undefined;
}, () => any, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{
render?: any;
props?: any;
cell?: FlexRenderCell | undefined;
header?: FlexRenderHeader | undefined;
footer?: FlexRenderHeader | undefined;
}> & Readonly<{}>, {
props: any;
render: any;
cell: FlexRenderCell;
header: FlexRenderHeader;
footer: FlexRenderHeader;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
//#endregion
export { FlexRender, FlexRenderCell, FlexRenderHeader, flexRender };