table-grid.d.ts 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235
  1. import type { UnwrapRef } from 'vue';
  2. import type { GridDefaultSlotParams, GridScrollOptions, ResetAfterIndex, Alignment as ScrollStrategy } from 'element-plus/es/components/virtual-list';
  3. import type { TableV2GridProps } from './grid';
  4. declare const TableGrid: import("vue").DefineComponent<{
  5. readonly columns: {
  6. readonly type: import("vue").PropType<import("./common").AnyColumn[]>;
  7. readonly required: true;
  8. readonly validator: ((val: unknown) => boolean) | undefined;
  9. __epPropKey: true;
  10. };
  11. readonly data: {
  12. readonly type: import("vue").PropType<any[]>;
  13. readonly required: true;
  14. readonly validator: ((val: unknown) => boolean) | undefined;
  15. __epPropKey: true;
  16. };
  17. readonly fixedData: {
  18. readonly type: import("vue").PropType<any[]>;
  19. readonly required: false;
  20. readonly validator: ((val: unknown) => boolean) | undefined;
  21. __epPropKey: true;
  22. };
  23. readonly estimatedRowHeight: {
  24. readonly default: undefined;
  25. readonly type: import("vue").PropType<number>;
  26. readonly required: false;
  27. readonly validator: ((val: unknown) => boolean) | undefined;
  28. readonly __epPropKey: true;
  29. };
  30. readonly width: {
  31. readonly type: import("vue").PropType<number>;
  32. readonly required: true;
  33. readonly validator: ((val: unknown) => boolean) | undefined;
  34. __epPropKey: true;
  35. };
  36. readonly height: {
  37. readonly type: import("vue").PropType<number>;
  38. readonly required: true;
  39. readonly validator: ((val: unknown) => boolean) | undefined;
  40. __epPropKey: true;
  41. };
  42. readonly headerWidth: {
  43. readonly type: import("vue").PropType<number>;
  44. readonly required: true;
  45. readonly validator: ((val: unknown) => boolean) | undefined;
  46. __epPropKey: true;
  47. };
  48. readonly headerHeight: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (number | number[]) & {}) | (() => number | number[]) | ((new (...args: any[]) => (number | number[]) & {}) | (() => number | number[]))[], unknown, unknown, 50, boolean>;
  49. readonly bodyWidth: {
  50. readonly type: import("vue").PropType<number>;
  51. readonly required: true;
  52. readonly validator: ((val: unknown) => boolean) | undefined;
  53. __epPropKey: true;
  54. };
  55. readonly rowHeight: {
  56. readonly type: import("vue").PropType<number>;
  57. readonly required: true;
  58. readonly validator: ((val: unknown) => boolean) | undefined;
  59. __epPropKey: true;
  60. };
  61. readonly cache: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, never, never, 2, false>;
  62. readonly useIsScrolling: BooleanConstructor;
  63. readonly scrollbarAlwaysOn: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
  64. readonly scrollbarStartGap: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
  65. readonly scrollbarEndGap: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 2, boolean>;
  66. readonly class: StringConstructor;
  67. readonly style: {
  68. readonly type: import("vue").PropType<import("vue").CSSProperties>;
  69. readonly required: false;
  70. readonly validator: ((val: unknown) => boolean) | undefined;
  71. __epPropKey: true;
  72. };
  73. readonly containerStyle: {
  74. readonly type: import("vue").PropType<import("vue").CSSProperties>;
  75. readonly required: false;
  76. readonly validator: ((val: unknown) => boolean) | undefined;
  77. __epPropKey: true;
  78. };
  79. readonly getRowHeight: {
  80. readonly type: import("vue").PropType<import("element-plus/es/components/virtual-list").ItemSize>;
  81. readonly required: true;
  82. readonly validator: ((val: unknown) => boolean) | undefined;
  83. __epPropKey: true;
  84. };
  85. readonly rowKey: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./types").KeyType & {}) | (() => import("./types").KeyType) | ((new (...args: any[]) => import("./types").KeyType & {}) | (() => import("./types").KeyType))[], unknown, unknown, "id", boolean>;
  86. readonly onRowsRendered: {
  87. readonly type: import("vue").PropType<(params: import("./grid").onRowRenderedParams) => void>;
  88. readonly required: false;
  89. readonly validator: ((val: unknown) => boolean) | undefined;
  90. __epPropKey: true;
  91. };
  92. readonly onScroll: {
  93. readonly type: import("vue").PropType<(...args: any[]) => void>;
  94. readonly required: false;
  95. readonly validator: ((val: unknown) => boolean) | undefined;
  96. __epPropKey: true;
  97. };
  98. }, () => JSX.Element, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
  99. readonly columns: {
  100. readonly type: import("vue").PropType<import("./common").AnyColumn[]>;
  101. readonly required: true;
  102. readonly validator: ((val: unknown) => boolean) | undefined;
  103. __epPropKey: true;
  104. };
  105. readonly data: {
  106. readonly type: import("vue").PropType<any[]>;
  107. readonly required: true;
  108. readonly validator: ((val: unknown) => boolean) | undefined;
  109. __epPropKey: true;
  110. };
  111. readonly fixedData: {
  112. readonly type: import("vue").PropType<any[]>;
  113. readonly required: false;
  114. readonly validator: ((val: unknown) => boolean) | undefined;
  115. __epPropKey: true;
  116. };
  117. readonly estimatedRowHeight: {
  118. readonly default: undefined;
  119. readonly type: import("vue").PropType<number>;
  120. readonly required: false;
  121. readonly validator: ((val: unknown) => boolean) | undefined;
  122. readonly __epPropKey: true;
  123. };
  124. readonly width: {
  125. readonly type: import("vue").PropType<number>;
  126. readonly required: true;
  127. readonly validator: ((val: unknown) => boolean) | undefined;
  128. __epPropKey: true;
  129. };
  130. readonly height: {
  131. readonly type: import("vue").PropType<number>;
  132. readonly required: true;
  133. readonly validator: ((val: unknown) => boolean) | undefined;
  134. __epPropKey: true;
  135. };
  136. readonly headerWidth: {
  137. readonly type: import("vue").PropType<number>;
  138. readonly required: true;
  139. readonly validator: ((val: unknown) => boolean) | undefined;
  140. __epPropKey: true;
  141. };
  142. readonly headerHeight: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => (number | number[]) & {}) | (() => number | number[]) | ((new (...args: any[]) => (number | number[]) & {}) | (() => number | number[]))[], unknown, unknown, 50, boolean>;
  143. readonly bodyWidth: {
  144. readonly type: import("vue").PropType<number>;
  145. readonly required: true;
  146. readonly validator: ((val: unknown) => boolean) | undefined;
  147. __epPropKey: true;
  148. };
  149. readonly rowHeight: {
  150. readonly type: import("vue").PropType<number>;
  151. readonly required: true;
  152. readonly validator: ((val: unknown) => boolean) | undefined;
  153. __epPropKey: true;
  154. };
  155. readonly cache: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, never, never, 2, false>;
  156. readonly useIsScrolling: BooleanConstructor;
  157. readonly scrollbarAlwaysOn: import("element-plus/es/utils").EpPropFinalized<BooleanConstructor, unknown, unknown, false, boolean>;
  158. readonly scrollbarStartGap: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 0, boolean>;
  159. readonly scrollbarEndGap: import("element-plus/es/utils").EpPropFinalized<NumberConstructor, unknown, unknown, 2, boolean>;
  160. readonly class: StringConstructor;
  161. readonly style: {
  162. readonly type: import("vue").PropType<import("vue").CSSProperties>;
  163. readonly required: false;
  164. readonly validator: ((val: unknown) => boolean) | undefined;
  165. __epPropKey: true;
  166. };
  167. readonly containerStyle: {
  168. readonly type: import("vue").PropType<import("vue").CSSProperties>;
  169. readonly required: false;
  170. readonly validator: ((val: unknown) => boolean) | undefined;
  171. __epPropKey: true;
  172. };
  173. readonly getRowHeight: {
  174. readonly type: import("vue").PropType<import("element-plus/es/components/virtual-list").ItemSize>;
  175. readonly required: true;
  176. readonly validator: ((val: unknown) => boolean) | undefined;
  177. __epPropKey: true;
  178. };
  179. readonly rowKey: import("element-plus/es/utils").EpPropFinalized<(new (...args: any[]) => import("./types").KeyType & {}) | (() => import("./types").KeyType) | ((new (...args: any[]) => import("./types").KeyType & {}) | (() => import("./types").KeyType))[], unknown, unknown, "id", boolean>;
  180. readonly onRowsRendered: {
  181. readonly type: import("vue").PropType<(params: import("./grid").onRowRenderedParams) => void>;
  182. readonly required: false;
  183. readonly validator: ((val: unknown) => boolean) | undefined;
  184. __epPropKey: true;
  185. };
  186. readonly onScroll: {
  187. readonly type: import("vue").PropType<(...args: any[]) => void>;
  188. readonly required: false;
  189. readonly validator: ((val: unknown) => boolean) | undefined;
  190. __epPropKey: true;
  191. };
  192. }>>, {
  193. readonly scrollbarAlwaysOn: import("element-plus/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>;
  194. readonly rowKey: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => import("./types").KeyType & {}) | (() => import("./types").KeyType) | ((new (...args: any[]) => import("./types").KeyType & {}) | (() => import("./types").KeyType))[], unknown, unknown>;
  195. readonly headerHeight: import("element-plus/es/utils").EpPropMergeType<(new (...args: any[]) => (number | number[]) & {}) | (() => number | number[]) | ((new (...args: any[]) => (number | number[]) & {}) | (() => number | number[]))[], unknown, unknown>;
  196. readonly estimatedRowHeight: number;
  197. readonly useIsScrolling: boolean;
  198. readonly scrollbarStartGap: number;
  199. readonly scrollbarEndGap: number;
  200. readonly cache: number;
  201. }>;
  202. export default TableGrid;
  203. export declare type TableGridRowSlotParams = {
  204. columns: TableV2GridProps['columns'];
  205. rowData: any;
  206. } & GridDefaultSlotParams;
  207. export declare type TableGridInstance = InstanceType<typeof TableGrid> & UnwrapRef<{
  208. forceUpdate: () => void;
  209. /**
  210. * @description fetch total height
  211. */
  212. totalHeight: number;
  213. /**
  214. * @description scrollTo a position
  215. * @param { number | ScrollToOptions } arg1
  216. * @param { number } arg2
  217. */
  218. scrollTo(leftOrOptions: number | GridScrollOptions, top?: number): void;
  219. /**
  220. * @description scroll vertically to position y
  221. */
  222. scrollToTop(scrollTop: number): void;
  223. /**
  224. * @description scroll to a given row
  225. * @params row {Number} which row to scroll to
  226. * @params @optional strategy {ScrollStrategy} use what strategy to scroll to
  227. */
  228. scrollToRow(row: number, strategy: ScrollStrategy): void;
  229. /**
  230. * @description reset rendered state after row index
  231. * @param { number } rowIndex
  232. * @param { boolean } forceUpdate
  233. */
  234. resetAfterRowIndex: ResetAfterIndex;
  235. }>;