table-grid.d.ts 9.4 KB

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